/*
Theme Name:	  Newspaper Child theme
Theme URI: 		http://themeforest.net/user/tagDiv/portfolio
Description:	Child theme made by IProduction
Author:		    iProduction
Author URI: 	https:www.iproduction.com
Template:	    Newspaper
Version:	9.11.1
*/


/*  ----------------------------------------------------------------------------
	This file will load automatically when the child theme is active. You can use it
	for custom CSS.
*/
.facetwp-template #story-paywall-subscribe {display:none;}
.member-logged-in .menu-item-611817 {display:none;}
.menu-item-442787 {display:none;}
.member-logged-in .menu-item-442787 {display:block;}
.td-sub-footer-container {margin-bottom: 100px;}
@media only screen and (max-width: 767px){
.td-sub-footer-container {
    text-align: center;
    padding: 6px 0;
    margin-bottom: 50px;
}
}

li.menu-item .dashicons { line-height: 40px; }
.td-header-gradient:before {background:none;}
.td-main-page-wrap {padding-top: 13px;}
#td-header-menu .sf-menu > li > a {padding:0 13px;}
#td-header-menu .sf-menu a.sf-with-ul {padding-right:30px;}
.menu-item-51617 { background-color: #ee6600; padding: 0 10px; }
.td-container-wrap { background-color: #fff; margin-left: auto; margin-right: auto; background-image: url(/wp-content/uploads/2019/04/ad-bg.png); }
.td-header-style-1 .td-header-sp-logo {margin-left:0;width:370px; margin: 28px 12px 9px 28px;}
.td-header-style-1 .td-header-sp-logo img {max-height:145px;}
.td-header-style-1 .td-header-sp-recs {float: none;margin: 15px auto 0 !important;}

.logoheader-section-wrap {float: right;margin-top: 6px;margin-right: 0;margin-bottom: 6px !important;}
#logoheader-section {height: 90px;display: table;margin: 22px 12px 3px 12px;}
#logoheader-section .logoheader-container {display: table-row;}
#logoheader-section .logoheader-container #logoheader {display: table-cell;vertical-align: bottom;}
#logoheader li a {font-size: 20px;color:#ee6600;text-transform: capitalize;}
@media (max-width: 767px) {
	body.category-full-issue .td_module_16 .td-excerpt {display: block;}
}
@media only screen and (min-width: 40.063em) {
	body.category-full-issue .td_module_16 .td-module-thumb {width: 135px;}
	body.category-full-issue .td_module_16 .item-details {min-height: 175px;margin-left: 160px;}
}

@media only screen and (min-width: 40.063em) {
	.td-post-content figure.left {margin: 0 0.675em 0.675em 0;float:left;}
	.td-post-content figure.right {margin: 0 0 0.675em 0.675em;float:right}
	.td-post-content figure.figure-width-140 {width:140px;}
	.td-post-content figure.center, .td-post-content figure.null {width: auto;}
	.td-post-content figure.figure-width-100 {width: 100px;}
	.td-post-content figure.figure-width-127 {width: 127px;}
	.td-post-content figure.figure-width-132 {width: 132px;}
	.td-post-content figure.figure-width-140 {width: 140px;}
	.td-post-content figure.figure-width-160 {width: 160px;}
	.td-post-content figure.figure-width-170 {width: 170px;}
	.td-post-content figure.figure-width-175 {width: 175px;}
	.td-post-content figure.figure-width-200 {width: 200px;}
	.td-post-content figure.figure-width-234 {width: 234px;}
	.td-post-content figure.figure-width-235 {width: 235px;}
	.td-post-content figure.figure-width-288 {width: 288px;}
	.td-post-content figure.figure-width-299 {width: 299px;}
	.td-post-content figure.figure-width-300 {width: 300px;}
	.td-post-content figure.figure-width-340 {width: 340px;}
	.td-post-content figure.figure-width-437 {width: 437px;margin-right:0;float:none !important;}
	.td-post-content figure.figure-width-643 {width: 100%;float: none !important;clear: both;}
}
.td-post-content figure figcaption {margin: 1em 0 0 0;font-size: 0.7em;line-height: 1.4;color: #000;}
.td-post-date-label {font-weight:bold;}
.td-post-sub-title {color:#111;}

#story-paywall-subscribe {clear:both;background-color:#f5f5f5;padding:30px 0;font-family: 'Open Sans', arial, sans-serif;margin:40px 0 24px;}
#story-paywall-subscribe h4 {font-family: 'Open Sans', arial, sans-serif;font-weight: bold;margin-top:0;}
#story-paywall-subscribe .paywall-text {font-size: 14px;margin-bottom:5px;line-height: 22px;}
#story-paywall-subscribe .paywall-red-text {color: red; font-size: 16px; margin-bottom: 10px; font-weight: bold }
#story-paywall-subscribe .small-text {font-size: 12px;margin-top: 10px;}
#story-paywall-subscribe .small-text strong {margin-right: 15px;}
#story-paywall-subscribe .td-pb-span8 h4 {font-size:24px;}
#story-paywall-subscribe .td-pb-span4 img {margin: 0 auto 10px;}
#story-paywall-subscribe .td-pb-span4 button.radius {margin: 0 auto;display:block;}
#story-paywall-subscribe button.radius {background-color:#2490e2;color:#FFF;border-radius:18px;border:none;font-weight: bold;padding:5px 20px;}

#logoheader li.menu-item { line-height: 40px;font-size: 20px !important;font-weight: 900 !important; text-transform: }
#logoheader li.menu-item-125 {border-radius: 24px;background-color:#2490e2}
/* #logoheader li.menu-item-11794:hover {background-color: #008080;opacity: 0.5;} */
.sf-menu > li > a {padding: 0px 14px 0px 14px;}
#logoheader li.menu-item-125 a {color:#FFF !important;opacity: 1.0;padding: 0px 14px 0px 14px;}
#logoheader li.menu-item-125:hover a {opacity: 1.0;}
#logoheader li.menu-item-125 a:after {opacity: 1.0;background-color: unset !important;}

/* Current Issue Widget */
.widget.ipro-current-issue h3 {margin-top: 0;}
.widget.ipro-current-issue .td-pb-span7 {padding-right: 0;}
.widget.ipro-current-issue li {line-height:20px;font-size:12px;list-style: disc;margin-left: 15px;}
.widget.ipro-current-issue .subscribe-button {padding: 5px 10px; background-color:#EE6600;color:#FFFFFF;font-weight:bold;text-transform:uppercase;margin-bottom: 10px;display: block;text-align:center;}
.widget.ipro-current-issue .digital-issues-button {padding: 5px 10px; background-color:#2490e2;color:#FFFFFF;font-weight:bold;text-transform:uppercase;margin-bottom: 10px;display: block;text-align:center;}

/* Archive Page */
body.post-type-archive-issue .td-block-row, body.tax-editorial_category.term-fullissue .td-block-row {width: 50%;display: inline-block;margin-right: 0;}
body.post-type-archive-issue .td-block-row .td_module_wrap .entry-title, body.tax-editorial_category.term-fullissue .td-block-row .td_module_wrap .entry-title {font-size:16px;text-align: center;}
body.post-type-archive-issue .td-block-row .td-module-meta-info, body.tax-editorial_category.term-fullissue .td-block-row .td-module-meta-info {display:none;}

/* Woocommerce */
/* stop display of recurring totals on checkout page */
.recurring-totals, .recurring-total { display: none; }
.woocommerce ul.products li.product a img {height:140px; width: auto;margin: 0 auto 8px !important;}
.woocommerce ul.products li.product .woocommerce-loop-product__title, .woocommerce ul.products li.product .price {text-align:center;}
.woocommerce ul.products li.product .woocommerce-loop-product__title {min-height:57px;}
.woocommerce ul.products li.product .button {text-align: center;display: block;}
section.upsells {background-color:#eee;padding:0 25px;}
section.upsells .post {background:none;}
.single-product .product .upsells h2.woocommerce-loop-product__title {background:none;color:#111;display:block;}
@media only screen and (min-width:769px) {
	body.archive.tax-product_cat.woocommerce ul.products li.product {width:22.35%;}
	body.archive.tax-product_cat.woocommerce ul.products li.product:not(.last) {margin-right:3.5%;}
}
.woocommerce div.product form.cart .woocommerce-variation-description p { font-size: 14px; font-weight:700; }
.woocommerce div.product form.cart .variations td.label {display: none;}
.woocommerce .opc-single-product .post-192159 table.variations td.label, .woocommerce form.checkout div.product .attribute-subscription input[type=radio] {display: none !important;}
.woocommerce form.checkout div.product .attribute-subscription label {padding-left:20px;}
.woocommerce form.checkout .optional { display: none }

/* Fancy radio buttons */
input[type=checkbox]:not(old),
input[type=radio   ]:not(old){
  width     : 2em;
  margin    : 0;
  padding   : 0;
  font-size : 1em;
  opacity   : 1;
}
input[type=checkbox]:not(old) + label,
input[type=radio   ]:not(old) + label{
  display      : inline-block;
  margin-left  : -2em;
  line-height  : 1.5em;
}
input[type=checkbox]:not(old) + label > span,
input[type=radio   ]:not(old) + label > span{
  display          : inline-block;
  width            : 0.875em;
  height           : 0.875em;
  margin           : 0.25em 0.5em 0.25em 0.25em;
  border           : 0.0625em solid rgb(192,192,192);
  border-radius    : 0.25em;
  background       : rgb(224,224,224);
  background-image :    -moz-linear-gradient(rgb(240,240,240),rgb(224,224,224));
  background-image :     -ms-linear-gradient(rgb(240,240,240),rgb(224,224,224));
  background-image :      -o-linear-gradient(rgb(240,240,240),rgb(224,224,224));
  background-image : -webkit-linear-gradient(rgb(240,240,240),rgb(224,224,224));
  background-image :         linear-gradient(rgb(240,240,240),rgb(224,224,224));
  vertical-align   : bottom;
}
input[type=checkbox]:not(old):checked + label > span,
input[type=radio   ]:not(old):checked + label > span{
  background-image :    -moz-linear-gradient(rgb(224,224,224),rgb(240,240,240));
  background-image :     -ms-linear-gradient(rgb(224,224,224),rgb(240,240,240));
  background-image :      -o-linear-gradient(rgb(224,224,224),rgb(240,240,240));
  background-image : -webkit-linear-gradient(rgb(224,224,224),rgb(240,240,240));
  background-image :         linear-gradient(rgb(224,224,224),rgb(240,240,240));
}
input[type=checkbox]:not(old):checked + label > span:before{
  content     : '?';
  display     : block;
  width       : 1em;
  color       : rgb(36,144,226);
  font-size   : 0.875em;
  line-height : 1em;
  text-align  : center;
  text-shadow : 0 0 0.0714em rgb(115,153,77);
  font-weight : bold;
}
input[type=radio]:not(old):checked + label > span > span{
  display          : block;
  width            : 0.5em;
  height           : 0.5em;
  margin           : 0.125em;
  border           : 0.0625em solid rgb(115,153,77);
  border-radius    : 0.125em;
  background       : rgb(36,144,226);
  background-image :    -moz-linear-gradient(rgb(179,217,140),rgb(36,144,226));
  background-image :     -ms-linear-gradient(rgb(179,217,140),rgb(36,144,226));
  background-image :      -o-linear-gradient(rgb(179,217,140),rgb(36,144,226));
  background-image : -webkit-linear-gradient(rgb(179,217,140),rgb(36,144,226));
  background-image :         linear-gradient(rgb(179,217,140),rgb(36,144,226));
}

/* Pagebuilder + Empty Page */
.page-template-page-pagebuilder-empty .entry-crumbs { display: none; }
.page-template-page-pagebuilder-empty .td-page-header { display: none; }

/* Pagebuilder + Title */
.page-template-page-pagebuilder-title .entry-crumbs { display: none; }
@media (min-width: 500px) {
.woocommerce .col2-set .col-1, .woocommerce-page .col2-set .col-1 {
    /* float: none; */
    width: 60%;
    margin: 0 auto;
}
.woocommerce .col2-set .col-2, .woocommerce-page .col2-set .col-2 {
    /* float: none; */
    width: 38%;
    margin: 0 auto;
}
.woocommerce div.product div.images img {
    max-width: none !important;
    width: auto !important;
}
}
span.posted_in (display:none;)

body.single-product #wc-stripe-payment-request-wrapper, .single-product #wc-stripe-payment-request-button-separator, .single-product .single_add_to_cart_button {
    width: 50% !important;
}

.page-id-6095 #ship-to-different-address-checkbox {height:0px;}

				.tdi_72.td_top_authors .item-details {
    			height: auto !important;
    			min-height: 150px !important;
				}
				.tdi_72.td_top_authors .td_mod_wrap {
    				min-height: auto !important;
				}		
				.td_top_authors .td-authors-url a {
    			color: #333 !important;
    			font-family: Verdana, Geneva, sans-serif;
    			font-size: 12px !important;
    			font-style: normal !important;
    			font-weight: 600 !important;s
    		}
    		.td_top_authors .td-authors-url { margin: 10px 0 0 0px !important;}	
    		
/* Dog Food Styles Start */
/* Dog Food Styles Start */
/* Dog Food Styles Start */
body #cookie-notice {
  position: fixed;
  width: 350px;
  height: auto;
  z-index: 100000;
  letter-spacing: 0;
  line-height: 20px;
  right: 0;
  bottom: 200px;
  border-radius: 10px;
  left:unset;
  min-width:350px;
}

/* dog food */
.dogfood-page h1 {margin-top:50px !important;}	
.dogfood-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
}
.dogfood-table th,
.dogfood-table td {
  border: 1px solid #ccc;
  padding: 8px;
}
.dogfood-table th {
  background: #f5f5f5;
  font-weight: bold;
}
.dogfood-layout {
  display: flex;
  gap: 20px;
}

.dogfood-results {
  flex: 1;
  overflow-x: auto;
}

/* Responsive stacking on smaller screens */
@media (max-width: 768px) {
  .dogfood-layout {
    flex-direction: column;
  }
}
.dogfood-sort {
  margin-bottom: 20px;
}

.dogfood-sort select {
  padding: 6px;
  font-size: 16px;
}
/* FacetWP Pagination Container */
.facetwp-pager {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin: 20px 0;
  justify-content: center;
  align-items: center;
  font-size: 16px;
}

/* Pagination Links */
.facetwp-page {
  display: inline-block;
  padding: 6px 12px !important;
  border: 1px solid #2490e2;
  border-radius: 4px;
  color: #2490e2;
  text-decoration: none;
  transition: all 0.2s ease-in-out;
}

/* Hover State */
.facetwp-page:hover {
  background-color: #2490e2;
  color: #fff;
}

/* Active Page */
.facetwp-page.active {
  background-color: #2490e2;
  color: #fff;
  cursor: default;
}

/* Disabled Buttons (if any) */
.facetwp-page.disabled {
  opacity: 0.5;
  pointer-events: none;
}

/* First, Prev, Next, Last Buttons Styling */
.facetwp-page.first,
.facetwp-page.prev,
.facetwp-page.next,
.facetwp-page.last {
  font-weight: 600;
}

/* Optional: Adjust spacing on small screens */
@media (max-width: 480px) {
  .facetwp-pager {
    font-size: 14px;
  }

  .facetwp-page {
    padding: 5px 10px;
  }
}

#facetwp-loading {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(255,255,255,0.7);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 9999;
}

/* Spinner style */
#facetwp-loading .spinner {
  border: 4px solid #f3f3f3;
  border-top: 4px solid #2490e2; /* your accent color */
  border-radius: 50%;
  width: 50px;
  height: 50px;
  animation: spin 1s linear infinite;
}

/* Spin animation */
@keyframes spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}
.facetwp-submit {
  display: inline-block;
  background-color: #2490e2; /* your accent color */
  color: #fff;
  border: none;
  padding: 10px 20px;
  font-size: 16px;
  border-radius: 4px;
  cursor: pointer;
  margin-top: 10px;
  transition: background-color 0.3s ease;
}

.facetwp-submit:hover {
  background-color: #1874b8;
}

.facetwp-counts {display:inline-block;}
.dogfood-results-count {padding: 0px 0px 10px 0px;}
.dogfood-card-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 20px;
  margin-top: 20px;
}

.dogfood-card {
  border: 1px solid #ddd;
  border-radius: 8px;
  padding: 16px;
  margin-bottom: 24px;
  box-shadow: 0 2px 6px rgba(0,0,0,0.05);
  background: #fff;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.dogfood-card.is-wdj-favorite {
		box-shadow: 0 10px 24px rgba(238, 102, 0, 0.20);
    border: 1px solid rgba(238, 102, 0, 0.75);
}

.dogfood-card:hover {
  box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}

.dogfood-title {
  font-size: 1.1rem;
  margin: 0 0 5px;
  color: #2490e2;
  flex: 1 1 auto;
}

.dogfood-title a {
  text-decoration: none;
  color: inherit;
}

.dogfood-company a {
  color: #ee6600;
  font-weight: 500;
  text-decoration: none;
}

.dogfood-price,
.dogfood-ingredients {
  margin-top: 8px;
  font-size: 0.95rem;
}

.compare-bar {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  background: #fff;
  box-shadow: 0 -2px 8px rgba(0,0,0,0.15);
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 20px;
  z-index: 9999;
  border-top: 2px solid #2490e2;
}
.compare-bar.hidden {
  display: none;
}
.compare-items {
  display: flex;
  gap: 10px;
  flex: 1;
  overflow-x: auto;
}
.compare-item {
  display: flex;
  align-items: center;
  gap: 5px;
  background: #f9f9f9;
  padding: 5px 10px;
  border-radius: 4px;
}
.compare-item img {
  height: 40px;
  width: auto;
}
.compare-button {
  background-color: #2490e2;
  color: white;
  padding: 6px 14px;
  border: none;
  border-radius: 4px;
  text-decoration: none;
}
.clear-compare {
  background: none;
  color: #ee6600;
  border: none;
  margin-right: 10px;
  font-weight: bold;
  cursor: pointer;
}

.dogfood-card .dogfood-image-wrapper {
  height: 200px;
  padding: 20px 20px 0;
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: hidden;
  position: relative; /* Needed for absolute positioning */
}

.dogfood-card .dogfood-image-wrapper img {
  max-height: 100%;
  max-width: 100%;
  object-fit: contain;
}

/* Compare checkbox styling */
.dog-food-compare-checkbox {
  position: absolute;
  top: 10px;
  right: 10px;
  width: 24px !important;
  height: 24px !important;
  appearance: none;
  border: 2px solid rgba(36, 144, 226, 0.7);
  border-radius: 4px;
  background-color: #fff; /* Light blue with opacity */
  cursor: pointer;
  transition: background-color 0.2s ease;
  z-index: 2;
}

/* Checked state */
.dog-food-compare-checkbox:checked {
  background-color: #ee6600;
  border-color: #ee6600;
}

/* Optional checkmark */
.dog-food-compare-checkbox:checked::before {
  content: "\2713";
  color: #fff;
  font-size: 16px;
  position: absolute;
  top: 0px;
  left: 5px;
}
.remove-compare {padding: 2px 4px 2px 3px;font-size: 14px;line-height: 14px;}
/* dog food end */

.dogfood-search-top {
  max-width: 500px;
  margin: 0;
  padding: 1.2rem 0 0 0;
  text-align: left;
}
.facetwp-search {
  width: 100%;
  padding: 10px 12px;
  border: 1.5px solid #2490e2;
  border-radius: 6px;
  font-size: 1.05rem;
  box-sizing: border-box;
}
.favorite-btn {
  background: transparent;
  border: none;
  cursor: pointer;
  font-size: 30px;
  color: #ee6600;
  padding: 4px;
  line-height: 1;
  flex: 0 0 auto;
  margin-left: auto;
}

.favorite-btn::before {
  content: '\2661'; /* ? outline heart */
}

.favorite-btn.favorited::before {
  content: '\2665'; /* ? filled heart */
  color: red;
}
.advanced-facet-accordion {
  border-top: 1px solid #ddd;
  margin-top: 20px;
}
.accordion-toggle {
  width: 100%;
  background: none;
  border: none;
  font-size: 1rem;
  text-align: left;
  padding: 10px 0;
  position: relative;
}
.accordion-toggle .arrow {
  content: "";
  display: inline-block;
  width: 0.6em;
  height: 0.6em;
  border-right: 2px solid #555;
  border-bottom: 2px solid #555;
  transform: rotate(45deg);
  position: absolute;
  right: 0;
  top: 50%;
  margin-top: -0.4em;
  transition: transform 0.2s;
}
.accordion-toggle[aria-expanded="true"] .arrow {
  transform: rotate(-135deg);
}
.accordion-panel {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.25s ease-out;
}
.accordion-panel.open {
  max-height: 240px; /* enough to show both filters */
}
.facet-group {
  margin-bottom: 12px;
}
.facet-group label {
  font-weight: bold;
}
/* Hero section */
.dogfood-hero {
  /* Brand orange background */
  background: #ee6600;
  color: #fff;
  padding: 30px 0px 0px 0px;
}

.dogfood-hero__inner {
  max-width: 1100px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
}

/* Headings */
.dogfood-hero__title {
  margin: 0;
  font-weight: 800;
  line-height: 1.15;
  font-size: clamp(24px, 4.2vw, 40px);
  letter-spacing: 0.2px;
  color:#FFF;
}

.dogfood-hero__subtitle {
  margin: 6px 0 0;
  font-size: clamp(14px, 1.6vw, 18px);
  opacity: 0.95;
}

/* Search box wrapper */
.dogfood-hero__search {
  margin-top: 14px;
  text-align:center;
}

/* FacetWP search input styling */
.dogfood-hero .facetwp-search {
  width: 100%;
  max-width: 720px;
  display: block;
  background: #fff;
  color: #222;
  border: none;
  border-radius: 10px;
  padding: 14px 48px 14px 16px; /* room for icon */
  font-size: 16px;
  line-height: 1.2;
  box-shadow: 0 6px 18px rgba(0,0,0,0.15);
}

/* Optional placeholder style */
.dogfood-hero .facetwp-search::placeholder {
  color: #6b7280;
}

/* Little search icon (pure CSS) */
.dogfood-hero__search {
  position: relative;
}

.dogfood-hero__copy {text-align:center;}
/* Responsive layout tweak: put search under title on small screens (default) and inline on wider screens if you want */

/* Optional: tighten page content that follows the hero */
.dogfood-hero + * {
  margin-top: clamp(12px, 2vw, 20px);
}

@media (min-width: 800px) {
/* Ensure full-width FacetWP search input */
.facetwp-search[type="text"] {
  width: 600px;
  height: 45px;
  box-sizing: border-box;
}
}
.results-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin: 10px 0 16px;
}

.share-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: #ee6600;
  color: #fff;
  border: 0;
  border-radius: 8px;
  padding: 8px 12px;
  cursor: pointer;
  font-weight: 600;
  transition: transform .06s ease, box-shadow .2s ease, background .2s ease;
  box-shadow: 0 2px 8px rgba(0,0,0,.12);
}
.share-btn:hover { background: #d55a00; }
.share-btn:active { transform: translateY(1px); }

.share-icon {
  width: 18px;
  height: 18px;
  fill: currentColor;
}
@media (max-width: 600px) {
  .results-bar {
    flex-direction: column;
    align-items: stretch;
  }
  .share-btn { align-self: flex-end; }
}

/* Dog food filters and aside */

/* Base variables */
:root {
  --wdj-blue: #2490e2;
  --wdj-orange: #ee6600;
  --card-bg: #fff;
  --sidebar-bg: #fff;
  --sidebar-border: #e7e7e7;
  --shadow: 0 10px 24px rgba(0,0,0,0.08);
  --radius: 14px;
  --input-h: 42px;
}

/* Sidebar container */
.dogfood-filters {
  flex: 0 0 280px;
  background: var(--sidebar-bg);
  border: 1px solid var(--sidebar-border);
  border-left: none;
  border-radius: var(--radius) 0 0 var(--radius); /* rounded top/bottom LEFT */
  padding: 20px 16px;
  box-shadow: var(--shadow);
  position: relative;
}

.dogfood-filters label {
  display: block;
  font-weight: 600;
  font-size: 15px;
  margin: 10px 0 6px;
  color: #2b2b2b;
}

.dogfood-filters .facetwp-facet {
  margin-bottom: 14px;
}

/* Consistent inputs: FacetWP search/select/etc. */
.dogfood-filters .facetwp-search,
.dogfood-filters select,
.dogfood-filters input[type="text"],
.dogfood-filters input[type="number"],
.dogfood-filters .facetwp-type-dropdown .fs-wrap .fs-label { /* if using FacetWP dropdown UI */
  width: 100%;
  min-height: var(--input-h);
  line-height: calc(var(--input-h) - 2px);
  padding: 8px 12px;
  border: 1px solid #d8d8d8;
  border-radius: 8px;
  font-size: 15px;
  box-sizing: border-box;
  background: #fff;
}

/* Fix sort box height to match */
.dogfood-sort select {
  min-height: var(--input-h);
  line-height: calc(var(--input-h) - 2px);
  padding: 8px 12px;
  font-size: 15px;
}

/* Checkbox list spacing (FacetWP checkboxes) */
/* FacetWP checkbox list items */
.dogfood-filters .facetwp-type-checkboxes .facetwp-checkbox {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 5px 5px 5px 21px;
  border-radius: 6px;
  cursor: pointer;
}

/* Checkbox input itself */
.dogfood-filters .facetwp-type-checkboxes input[type="checkbox"] {
  appearance: checkbox;
  -webkit-appearance: checkbox;
  -moz-appearance: checkbox;
  background-color: #fff;
  border: 2px solid #ccc;
  border-radius: 3px;
  width: 16px;
  height: 16px;
  flex-shrink: 0;
  transition: all 0.2s ease;
}

/* Checked state - WDJ orange */
.dogfood-filters .facetwp-type-checkboxes input[type="checkbox"]:checked {
  background-color: #ee6600;
  border-color: #ee6600;
}

/* Checked state checkmark color */
.dogfood-filters .facetwp-type-checkboxes input[type="checkbox"]:checked::before {
  content: "?";
  color: #fff;
  display: block;
  text-align: center;
  font-size: 12px;
  line-height: 14px;
}


/* Apply + Reset */
.dogfood-filters .facetwp-submit {
  width: 100%;
  background: var(--wdj-blue);
  color: #fff;
  border: 0;
  border-radius: 10px;
  padding: 10px 14px;
  font-weight: 700;
  margin-top: 6px;
  cursor: pointer;
  transition: filter .2s, transform .04s;
}
.dogfood-filters .facetwp-submit:hover { filter: brightness(0.95); }
.dogfood-filters .facetwp-submit:active { transform: translateY(1px); }

.dogfood-filters .facetwp-reset {
  margin-top: 8px;
}

/* Advanced accordion (from earlier) */
.advanced-facet-accordion {
  border-top: 1px solid #e8e8e8;
  margin-top: 10px;
  padding-top: 10px;
}
.accordion-toggle {
  width: 100%;
  background: none;
  border: none;
  font-size: 1rem;
  text-align: left;
  padding: 10px 0;
  cursor: pointer;
  position: relative;
  font-weight: 700;
}
.accordion-toggle .arrow {
  content: "";
  display: inline-block;
  width: 0.6em;
  height: 0.6em;
  border-right: 2px solid #666;
  border-bottom: 2px solid #666;
  transform: rotate(45deg);
  position: absolute;
  right: 0;
  top: 50%;
  margin-top: -0.4em;
  transition: transform 0.2s ease;
}
.accordion-toggle[aria-expanded="true"] .arrow {
  transform: rotate(-135deg);
}
.accordion-panel {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.25s ease-out;
}
.accordion-panel.open {
  max-height: 500px; /* large enough for contents */
}
.facet-group { margin-bottom: 12px; }

/* Mobile toggle button */
.filters-toggle {
  display: none; /* hidden on desktop */
  align-items: center;
  gap: 10px;
  background: var(--wdj-orange);
  color: #fff;
  border: none;
  border-radius: 10px;
  padding: 10px 14px;
  font-weight: 700;
  box-shadow: 0 6px 16px rgba(238,102,0,0.22);
  cursor: pointer;
}
.filters-toggle__icon {
  width: 18px; height: 2px; background: currentColor; position: relative; display: inline-block;
}
.filters-toggle__icon::before,
.filters-toggle__icon::after {
  content: ""; position: absolute; left: 0; width: 18px; height: 2px; background: currentColor;
}
.filters-toggle__icon::before { top: -6px; }
.filters-toggle__icon::after  { top: 6px; }

/* Close button inside drawer */
.filters-close {
  display: none; /* hidden on desktop */
  position: absolute;
  top: 8px; left: 10px;
  background: #f1f1f1;
  border: 1px solid #ddd;
  color: #333;
  width: 30px; height: 30px; border-radius: 50%;
  cursor: pointer;
}

/* Overlay for mobile */
.filters-overlay {
  position: fixed; inset: 0;
  background: rgba(0,0,0,0.35);
  z-index: 999; /* below drawer */
}

/* Mobile drawer behavior */
@media (max-width: 992px) {
  .filters-toggle { display: inline-flex; margin-bottom: 10px; }

  .dogfood-filters {
    position: fixed;
    top: 0; left: 0;
    height: 100vh;
    width: 86vw; max-width: 360px;
    padding: 60px 16px 50px 16px;
    border-radius: 0; /* drawer look */
    border-right: 1px solid var(--sidebar-border);
    border-left: none;
    transform: translateX(-100%);
    transition: transform .25s ease;
    z-index: 20000;
    overflow-y: auto;
    box-shadow: 8px 0 24px rgba(0,0,0,0.2);
    background: #fff;
  }
  .dogfood-filters.is-open {
    transform: translateX(0);
  }
  .filters-close { display: inline-block; }

  /* Hide rounded-left desktop look on mobile */
  .dogfood-filters {
    border-radius: 0;
    box-shadow: 8px 0 24px rgba(0,0,0,0.2);
  }

  /* Hide overlay by default with [hidden] attribute, CSS above handles visuals */
  .filters-overlay[hidden] { display: none; }
}

/* Optional: prevent body scroll when drawer open */
.body-no-scroll { overflow: hidden; }
.dogfood-hero-l {margin: 0 auto;padding: 15px 0 0 0;}
.dogfood-hero-l a {font-weight:600;font-size:18px;color:#000;text-decoration:underline;}

/* WDJ Favorite */
.dogfood-image-wrapper {
  position: relative; /* ensure absolute badge positions against this */
}

.dogfood-badge-favorite {
  position: absolute;
  top: 8px;
  left: 8px;
  z-index: 2;
  background: #f0bc42;          
  color: #000;
  font-weight: 700;
  font-size: 12px;
  line-height: 1;
  padding: 4px 10px 6px 10px;
  border-radius: 999px;          /* pill */
  /* box-shadow: 0 4px 10px rgba(0,0,0,0.12); */
  letter-spacing: 0.2px;
  pointer-events: none;          /* don�t block clicks on the image link */
  font-family: Inter, sans-serif;
}
.dogfood-badge-favorite .w-3 {
    width: .75rem;
}
.dogfood-badge-favorite .h-3 {
    height: .75rem;
}
.btn-my-favorites {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: #ee6600;
  color: #fff;
  text-decoration: none;
  border-radius: 10px;
  padding: 10px 14px;
  font-weight: 700;
  box-shadow: 0 6px 16px rgba(238,102,0,0.22);
}
.btn-my-favorites:hover { filter: brightness(0.95); }
.btn-my-favorites .heart::before { content: "\2764"; font-size: 16px; line-height: 1; }

/* View toggle buttons */
.view-toggle {
  display: inline-flex;
  gap: 8px;
  margin-left: 12px;
}
.view-btn {
  border: 1px solid #e6e6e6;
  background: #fff;
  border-radius: 8px;
  padding: 6px 8px;
  line-height: 1;
  cursor: pointer;
}
.view-btn svg { display:block; }
.view-btn.is-active,
.view-btn:hover {
  border-color: #ee6600;
  box-shadow: 0 0 0 2px rgba(238,102,0,0.12);
}

/* Default: card layout */
.dogfood-results.card-layout .dogfood-card-grid {
  display: grid;
  gap: 24px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
@media (max-width: 992px){
  .dogfood-results.card-layout .dogfood-card-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 600px){
  .dogfood-results.card-layout .dogfood-card-grid { grid-template-columns: 1fr; }
}

/* List layout */
.dogfood-results.list-layout .dogfood-card-grid {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.dogfood-results.list-layout .dogfood-card {
  display: grid;
  grid-template-columns: 110px 1fr; /* left rail + body (we suppress the image, but keep structure neat) */
  align-items: start;
  gap: 16px;
  padding: 12px 14px;
  border: 1px solid #eaeaea;
  border-radius: 12px;
  background: #fff;
}

/* In list view, hide the image block entirely */
.dogfood-results.list-layout .dogfood-thumb,
.dogfood-results.list-layout .dogfood-image-wrapper {
  display: none !important;
}

/* Compare first, on the left rail */
.dogfood-results.list-layout .compare-inline {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-weight: 600;
  color: #333;
}
.list-only { display: none; }
.dogfood-results.list-layout .list-only { display: inline-flex; }

.dogfood-results.list-layout .dogfood-card-content {
  grid-column: 2 / span 1;
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 8px 16px;
}
.dogfood-results.list-layout .dogfood-title { grid-column: 1 / -1; margin: 0 0 4px; }
.dogfood-results.list-layout .favorite-btn { justify-self: end; }
.dogfood-results.list-layout .dogfood-company,
.dogfood-results.list-layout .dogfood-price,
.dogfood-results.list-layout .dogfood-ingredients {
  grid-column: 1 / -1;
}

/* Hide overlay compare checkbox when in list view */
.dogfood-results.list-layout .dogfood-image-wrapper .dog-food-compare-checkbox {
  display: none !important;
}
.dogfood-results.list-layout .dog-food-compare-checkbox {
  position: static;
}
/* Optional checkmark */
.dogfood-results.list-layout .dog-food-compare-checkbox:checked::before {
  content: "\2713";
  color: #fff;
  font-size: 16px;
  position: relative;
  top: 0px;
  left: 5px;
}
.inline-compare {    
	display: grid;
  align-items: center;
  vertical-align: middle;
  height: 100%;
}
.dogfood-card-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

/* Blurred area wrapper (covers the block visually) */
.guest-blur-wrap {
  position: relative;
  margin-top: 18px;
}

/* Grid inside the blurred area should match your card grid spacing */
.guest-blur-grid {
  display: grid;
  gap: 24px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  filter: blur(5px);
  pointer-events: none; /* block interactions under blur */
  user-select: none;
}
@media (max-width: 992px){
  .guest-blur-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 600px){
  .guest-blur-grid { grid-template-columns: 1fr; }
}

/* Centered CTA card overlay */
.guest-cta {
  position: absolute;
  inset: 0;                /* stretch to the blurred block */
  display: grid;
  place-items: center;
  pointer-events: none;    /* only buttons are clickable */
}
.guest-cta > * {
  pointer-events: auto;    /* enable clicks inside the CTA box */
}
.guest-cta h3 {
  margin: 0 0 8px;
  font-weight: 800;
  text-align: center;
}
.guest-cta p {
  margin: 0 0 14px;
  text-align: center;
  color: #333;
}
.guest-cta__actions {
  display: flex;
  gap: 10px;
  justify-content: center;
}

.guest-cta > div {
  background: #fff;
  border: 1px solid #ccc;
  box-shadow: 0 10px 30px rgba(0,0,0,0.08);
  border-radius: 12px;
  padding: 22px 24px;
  max-width: 520px;
  width: min(92vw, 520px);
}

/* Buttons */
.btn {
  display: inline-block;
  border-radius: 10px;
  padding: 10px 14px;
  text-decoration: none;
  font-weight: 700;
}
.btn-primary {
  background: #ee6600;
  color: #fff;
  box-shadow: 0 6px 16px rgba(238,102,0,0.22);
}
.btn-primary:hover { filter: brightness(0.95); }
.btn-secondary {
  background: #fff;
  color: #333;
  border: 1px solid #e6e6e6;
}

/* Disable state for facets (visible, but inert) */
.guest-mode .facetwp-facet,
.guest-mode .facetwp-facet * {
  pointer-events: none !important;
}
.guest-mode .facetwp-facet {
  opacity: 0.55;
  filter: grayscale(0.1);
}

/* Disable compare bar button for guests */
.compare-bar.guest .compare-button {
  opacity: 0.55;
  pointer-events: none;
  position: relative;
}
.compare-bar.guest .compare-button::after {
  content: "Subscribe or Login to compare";
  position: absolute;
  bottom: calc(100% + 6px);
  left: 50%;
  transform: translateX(-50%);
  background: #222;
  color: #fff;
  padding: 6px 8px;
  border-radius: 6px;
  font-size: 12px;
  white-space: nowrap;
  opacity: 0;
  pointer-events: none;
  transition: opacity .15s;
}
.compare-bar.guest .compare-button:hover::after { opacity: 1; }
body.dog-food-search {background-color:#DDD;}
body.dog-food-search .td-main-content-wrap {background-color:#EEE;}

/* dog food post card insert */
/* dog food post card insert */
/* --- Post-body dog food card (NOT the search card) --- */
.dogfood-card.post-card {
  display: grid;
  grid-template-columns: 150px 1fr;
  gap: 18px;
  align-items: start;
  border: 1px solid #e8e8ee;
  border-radius: 10px;
  padding: 18px;
  background: #fff;
  box-shadow: 0 1px 3px rgba(0,0,0,.04);
  margin: 20px 0;
}

/* Left column (image + badge) */
.dogfood-card.post-card .dogfood-thumb {
  position: relative;
  display: block;
}

.dogfood-card.post-card .dogfood-image-wrapper {
  width: 100%;
  height:unset;
  aspect-ratio: 1 / 1;                 /* keeps a square image area */
  border-radius: 8px;
  overflow: hidden;
  background: #f8f8fb;
  border: 1px solid #eef0f5;
  padding: 0px;
}
.dogfood-card.post-card .dogfood-image-wrapper img {
  width: 100%;
  height: 100%;
  object-fit: contain;                  /* keep can/bag proportions */
  display: block;
  margin:0px;
  padding: 10px 0px 10px 0px;
}

/* WDJ Favorite badge */
.dogfood-card.post-card .dogfood-badge-favorite {
  position: absolute;
  top: 8px;
  left: 8px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  font-weight: 600;
  line-height: 1;
  padding: 6px 10px;
  color: #6b4c00;
  background: #ffe8a3;
  border: 1px solid #ffd66b;
  border-radius: 999px;
  box-shadow: 0 1px 2px rgba(0,0,0,.06);
}

/* Right column (content) */
.dogfood-card.post-card .dogfood-card-content {
  display: flex;
  flex-direction: column;
  gap: 0px;
}

.dogfood-card.post-card .dogfood-title {
  margin: 0;
  font-size: 20px;
  line-height: 1.2;
  color:#2490e2;
}

.dogfood-card.post-card .dogfood-title a {
  text-decoration: none;
  color:#2490e2;
  font-weight:500;
}

.dogfood-card.post-card .dogfood-title a:hover {
  text-decoration: underline;
}

.dogfood-card.post-card .dogfood-company a {
  font-size: 14px;
  letter-spacing: .03em;
  text-transform: uppercase;
  color: #ff6a00;                       /* brand-ish accent */
  text-decoration: none;
}

.dogfood-card.post-card .dogfood-price {
  font-size: 14px;
  font-weight: 600;
  color: #2a2a2a;
}

.dogfood-card.post-card .dogfood-ingredients {
  font-size: 14px;
  color: #444;
}

/* optional: clamp ingredients to 2 lines */
.dogfood-card.post-card .dogfood-ingredients {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* Hover affordance for whole card */
.dogfood-card.post-card:hover {
  box-shadow: 0 4px 16px rgba(0,0,0,.06);
  border-color: #e1e4ef;
}

/* Responsive: stack on small screens */
@media (max-width: 640px) {
  .dogfood-card.post-card {
    grid-template-columns: 1fr;
  }
  .dogfood-card.post-card .dogfood-image-wrapper {
    max-width: 240px;
  }
}
.dogfood-price-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .75rem;
  margin: .5rem 0 0; /* slight breathing room above ingredients */
}

.dogfood-buy-button {
  display: inline-block;
  padding: .5rem .9rem;
  border-radius: 9999px;
  font-weight: 600;
  text-decoration: none;
  border: 1px solid currentColor;
  /* inherits theme color; adjust if you have a button palette */
}

.dogfood-price { white-space: nowrap; }
@media (max-width: 480px) {
  .dogfood-price-row { flex-wrap: wrap; }
  .dogfood-buy-button { margin-left: auto; }
}
/* Shared card button styles */
.dogfood-card .dogfood-buy-button {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0.25rem 0.5rem;
  border-radius: 9999px; /* pill style */
  font-weight: 600;
  font-size: 0.775rem;
  text-decoration: none;
  background-color: #ff6a00; 
  color: #fff;
  transition: background-color 0.2s ease, transform 0.2s ease;
}

.dogfood-card .dogfood-buy-button:hover,
.dogfood-card .dogfood-buy-button:focus {
  background-color: #2490e2; /* darker hover */
  transform: translateY(-2px);
  color: #fff;
  text-decoration: none;
}

.dogfood-card .dogfood-buy-button svg {
  width: 16px;
  height: 16px;
  stroke: currentColor;
}
.dogfood-card h2 {margin: 0 auto;
    padding: 0px 0px 5px 0px;
    font-size: 22px;
    color:#000;
    font-weight: 600;}
.df-disclaim {font-size: 11px;
    margin: 10px 0px 0px 0px;
    line-height: 16px;}
/* END dog food post card insert */
/* END dog food post card insert */

/* Dog Food Styles End */
/* Dog Food Styles End */
/* Dog Food Styles End */