:root {
	--display-font-family: Suez One;
	--body-font-family: Lexend;

	--font-size: 19px

	--logo-padding: 2px;
	--logo-height: 100px;

	--header-width: 1366px;
	--header-border-position: top;
	--header-border-size: 0;
	--header-bg-color: 255 255 255;
	--header-border-color: 255 255 255;

	--brand-color: 74 124 89;
	--brand-color-inverted: 45 74 62;

	--background-color: 255 15 ;
	--text-color: 61 61 61;
	--link-color: 45 74 62;

	--action-color: 193 127 78;
	--action-color-inverted: 166 104 62;

	--announcement-bar-bg-color: 45 74 62;
	--announcement-bar-text-color: 255 255 255;
	--announcement-bar-link-color: 255 255 255;

	--main-navigation-bg-color: 255 253 250;
	--main-navigation-link-color: 45 74 62;
	--main-navigation-link-color-hover: 74 124 89;
	--main-navigation-link-bg-color: 66 54 38;
	--main-navigation-link-font-size: 18px;
	--main-navigation-link-alignment: center;

	--auxiliary-bg-color: 255 253 250;
	--auxiliary-border-color: 239 232 221;
	--auxiliary-link-color: 45 74 62;

	--order-status-bg-color: 74 124 89;
	--order-status-color: 255 255 255;

	--store-menu-bg_color: 248 248 248;
	--store-menu-color: 119 7 ;

	--footer-bg-color: 45 74 62;
	--footer-color: 255 15 ;
	--footer-link-color: 255 15 ;
}

/*Custom Styles*/
/* ── Pure Pasture Farms — Category Landing Page Styles ── */

:root {
  --pp-green-dark: #2d4a3e;
  --pp-green: #4a7c59;
  --pp-green-light: #6b9f7a;
  --pp-cream: #f7f4ef;
  --pp-cream-dark: #efe8dd;
  --pp-charcoal: #2c2c2c;
  --pp-text: #3d3d3d;
  --pp-text-light: #6b6b6b;
  --pp-white: #ffffff;
  --pp-accent: #c17f4e;
  --pp-accent-hover: #a6683e;
}

/* Main wrapper */
.pp-page {
  font-family: Lexend, Arial, sans-serif;
  color: var(--pp-text);
  line-height: 1.7;
  background: var(--pp-white);
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
}

.pp-page h1,
.pp-page h2,
.pp-page h3,
.pp-page h4 {
  font-family: "Suez One", Georgia, serif;
  font-weight: 400;
  color: var(--pp-charcoal);
  line-height: 1.3;
}

.pp-page h1 {
  font-size: 2.4rem;
}

.pp-page h2 {
  font-size: 1.8rem;
}

.pp-page h3 {
  font-size: 1.35rem;
}

.pp-page h4 {
  font-size: 1.15rem;
}

.pp-page p {
  font-size: 1rem;
  line-height: 1.7;
  color: var(--pp-text);
}

.pp-page a {
  color: var(--pp-green);
  text-decoration: none;
  transition: color 0.2s ease;
}

.pp-page a:hover,
.pp-page a:focus {
  color: var(--pp-green-dark);
  text-decoration: underline;
}

/* Landing-page buttons */
.pp-btn {
  display: inline-block !important;
  font-family: Lexend, Arial, sans-serif !important;
  font-weight: 700 !important;
  font-size: 0.95rem !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  padding: 14px 36px !important;
  border-radius: 4px !important;
  cursor: pointer !important;
  text-decoration: none !important;
  border: none;
  transition:
    background-color 0.25s ease,
    border-color 0.25s ease,
    color 0.25s ease,
    box-shadow 0.25s ease,
    transform 0.25s ease !important;
}

.pp-btn-primary {
  background: var(--pp-green) !important;
  color: var(--pp-white) !important;
  box-shadow: 0 2px 8px rgba(74, 124, 89, 0.25);
}

.pp-btn-primary:hover,
.pp-btn-primary:focus {
  background: var(--pp-green-dark) !important;
  color: var(--pp-white) !important;
  box-shadow: 0 4px 14px rgba(74, 124, 89, 0.35);
  transform: translateY(-1px);
}

.pp-btn-secondary {
  background: rgba(255, 255, 255, 0.72) !important;
  color: var(--pp-charcoal) !important;
  border: 2px solid rgba(45, 74, 62, 0.45) !important;
}

.pp-btn-secondary:hover,
.pp-btn-secondary:focus {
  background: var(--pp-green) !important;
  color: var(--pp-white) !important;
  border-color: var(--pp-green) !important;
}

.pp-btn-accent {
  background: var(--pp-accent) !important;
  color: var(--pp-white) !important;
  box-shadow: 0 2px 8px rgba(193, 127, 78, 0.25);
}

.pp-btn-accent:hover,
.pp-btn-accent:focus {
  background: var(--pp-accent-hover) !important;
  color: var(--pp-white) !important;
  transform: translateY(-1px);
}

/* Divider */
.pp-divider {
  width: 60px;
  height: 2px;
  background: var(--pp-green-light);
  margin: 20px 0 24px;
}

/* Hero */
.pp-hero {
  text-align: center;
  padding: 70px 24px 60px;
  background:
    linear-gradient(
      rgba(247, 244, 239, 0.68),
      rgba(247, 244, 239, 0.76)
    ),
    url("https://storage.googleapis.com/grazecart-images-prod/traviscole/images/1777915622_69f8d6e6a1c83.webp");
  background-size: cover;
  background-position: center;
  border-radius: 8px;
  margin: 30px 0;
  position: relative;
  overflow: hidden;
}

.pp-hero h1 {
  font-size: 2.6rem;
  color: var(--pp-green-dark);
  margin: 0 0 16px;
  line-height: 1.2;
}

.pp-hero .pp-subhead {
  font-size: 1.1rem;
  color: var(--pp-charcoal);
  max-width: 700px;
  margin: 0 auto 32px;
  line-height: 1.7;
}

.pp-hero-actions {
  display: flex;
  gap: 16px;
  justify-content: center;
  flex-wrap: wrap;
}

/* Category navigation */
.pp-category-nav {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
  justify-content: center !important;
  padding: 26px 0 18px !important;
  margin-bottom: 28px !important;
}

.pp-category-nav .pp-cat-btn {
  display: inline-block !important;
  font-family: Lexend, Arial, sans-serif !important;
  font-size: 0.84rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;
  padding: 12px 22px !important;
  background: var(--pp-cream) !important;
  color: var(--pp-green-dark) !important;
  border: 2px solid #d8cfc1 !important;
  border-radius: 999px !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  box-shadow: 0 2px 8px rgba(45, 74, 62, 0.08) !important;
  transition:
    background-color 0.2s ease,
    border-color 0.2s ease,
    color 0.2s ease,
    box-shadow 0.2s ease !important;
}

.pp-category-nav .pp-cat-btn:hover,
.pp-category-nav .pp-cat-btn:focus {
  background: var(--pp-green) !important;
  color: var(--pp-white) !important;
  border-color: var(--pp-green) !important;
  box-shadow: 0 4px 12px rgba(74, 124, 89, 0.22) !important;
}

.pp-category-nav .pp-cat-sale {
  background: var(--pp-accent) !important;
  color: var(--pp-white) !important;
  border-color: var(--pp-accent) !important;
}

.pp-category-nav .pp-cat-sale:hover,
.pp-category-nav .pp-cat-sale:focus {
  background: var(--pp-accent-hover) !important;
  border-color: var(--pp-accent-hover) !important;
}

/* Product sections */
.pp-section {
  padding: 50px 0 30px;
}

.pp-section-header {
  text-align: center;
  margin-bottom: 32px;
}

.pp-section-header h2 {
  margin: 0 0 8px;
  color: var(--pp-green-dark);
}

.pp-section-header .pp-section-intro {
  color: var(--pp-text-light);
  font-size: 1rem;
  max-width: 650px;
  margin: 0 auto;
  line-height: 1.7;
}

.pp-section-header .pp-divider {
  margin: 14px auto 16px;
}

/* Trust section */
.pp-trust {
  background: var(--pp-green-dark);
  color: var(--pp-white);
  padding: 60px 30px;
  border-radius: 8px;
  margin: 40px 0;
  text-align: center;
}

.pp-trust h2 {
  color: var(--pp-white);
  margin: 0 0 8px;
  font-size: 1.8rem;
}

.pp-trust .pp-divider {
  background: var(--pp-accent);
  margin: 14px auto 36px;
}

.pp-trust-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
  max-width: 960px;
  margin: 0 auto;
}

.pp-trust-item {
  text-align: center;
  padding: 10px;
}

.pp-trust-icon {
  font-size: 2rem;
  margin-bottom: 12px;
  display: block;
  opacity: 0.95;
}

.pp-trust-item h4 {
  color: var(--pp-white);
  margin: 0 0 6px;
  font-size: 1.05rem;
  font-weight: 400;
}

.pp-trust-item p {
  color: rgba(255, 255, 255, 0.86);
  font-size: 0.88rem;
  line-height: 1.5;
  margin: 0;
}

/* Subscribe section */
.pp-subscribe {
  background: var(--pp-cream);
  padding: 50px 30px;
  border-radius: 8px;
  margin: 40px 0;
  text-align: center;
  border: 1px solid var(--pp-cream-dark);
}

.pp-subscribe h2 {
  color: var(--pp-green-dark);
  margin: 0 0 8px;
}

.pp-subscribe .pp-divider {
  margin: 14px auto 18px;
}

.pp-subscribe p {
  max-width: 600px;
  margin: 0 auto 8px;
  color: var(--pp-text-light);
}

.pp-sub-benefits {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 30px;
  margin: 28px 0 24px;
}

.pp-sub-benefit {
  display: flex;
  align-items: center;
  gap: 8px;
  font-family: Lexend, Arial, sans-serif;
  font-size: 0.95rem;
  font-weight: 600;
  color: var(--pp-green-dark);
}

.pp-sub-benefit span {
  font-size: 1.2rem;
}

/* SEO content */
.pp-seo-content {
  padding: 40px 0;
  max-width: 860px;
  margin: 0 auto;
}

.pp-seo-content h3 {
  color: var(--pp-green-dark);
  margin: 36px 0 12px;
  font-size: 1.3rem;
}

.pp-seo-content h3:first-child {
  margin-top: 0;
}

.pp-seo-content p {
  margin: 0 0 16px;
  line-height: 1.8;
  color: var(--pp-text);
}

/* FAQ */
.pp-faq {
  padding: 40px 0 20px;
  max-width: 860px;
  margin: 0 auto;
}

.pp-faq h2 {
  text-align: center;
  color: var(--pp-green-dark);
  margin: 0 0 8px;
}

.pp-faq .pp-divider {
  margin: 14px auto 32px;
}

.pp-faq-item {
  border-bottom: 1px solid var(--pp-cream-dark);
  padding: 18px 0;
}

.pp-faq-q {
  font-family: "Suez One", Georgia, serif;
  font-weight: 400;
  font-size: 1.05rem;
  color: var(--pp-charcoal);
  margin-bottom: 6px;
}

.pp-faq-a {
  color: var(--pp-text-light);
  line-height: 1.7;
  font-size: 0.95rem;
}

/* ── Store Product Buttons ── */

/* Target product-card buttons without affecting header checkout */
a.btn-brand[href*="/store/product/"],
a.btn[href*="/store/product/"].btn-brand {
  background: var(--pp-accent) !important;
  border: 2px solid var(--pp-accent-hover) !important;
  color: var(--pp-white) !important;
  -webkit-text-fill-color: var(--pp-white) !important;
  font-family: Lexend, Arial, sans-serif !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  padding: 13px 18px !important;
  border-radius: 6px !important;
  text-decoration: none !important;
  opacity: 1 !important;
  box-shadow: 0 3px 8px rgba(44, 44, 44, 0.22) !important;
  transition:
    background-color 0.2s ease,
    border-color 0.2s ease,
    box-shadow 0.2s ease,
    transform 0.2s ease !important;
}

/* Force nested product-button content white */
a.btn-brand[href*="/store/product/"] *,
a.btn[href*="/store/product/"].btn-brand * {
  color: var(--pp-white) !important;
  -webkit-text-fill-color: var(--pp-white) !important;
}

/* Product-button hover and focus */
a.btn-brand[href*="/store/product/"]:hover,
a.btn-brand[href*="/store/product/"]:focus,
a.btn[href*="/store/product/"].btn-brand:hover,
a.btn[href*="/store/product/"].btn-brand:focus {
  background: var(--pp-accent-hover) !important;
  border-color: #8f5732 !important;
  color: var(--pp-white) !important;
  -webkit-text-fill-color: var(--pp-white) !important;
  box-shadow: 0 5px 12px rgba(44, 44, 44, 0.30) !important;
  transform: translateY(-1px);
}

/* Prevent visited-link color changes */
a.btn-brand[href*="/store/product/"]:visited,
a.btn[href*="/store/product/"].btn-brand:visited {
  color: var(--pp-white) !important;
  -webkit-text-fill-color: var(--pp-white) !important;
}

/* ── Header Checkout Button ── */

/* Active checkout button */
.auxiliaryMenu .btn-action:not([disabled]):not(.disabled),
.siteHeader .btn-action:not([disabled]):not(.disabled),
.auxiliaryMenu a[href*="/checkout"]:not(.disabled),
.siteHeader a[href*="/checkout"]:not(.disabled) {
  background: var(--pp-accent) !important;
  border: 1px solid var(--pp-accent-hover) !important;
  color: var(--pp-white) !important;
  -webkit-text-fill-color: var(--pp-white) !important;
  font-family: Lexend, Arial, sans-serif !important;
  font-weight: 700 !important;
  border-radius: 5px !important;
  padding: 8px 14px !important;
  opacity: 1 !important;
  box-shadow: 0 2px 5px rgba(44, 44, 44, 0.18) !important;
  text-decoration: none !important;
}

/* Active checkout hover */
.auxiliaryMenu .btn-action:not([disabled]):not(.disabled):hover,
.siteHeader .btn-action:not([disabled]):not(.disabled):hover,
.auxiliaryMenu a[href*="/checkout"]:not(.disabled):hover,
.siteHeader a[href*="/checkout"]:not(.disabled):hover {
  background: var(--pp-accent-hover) !important;
  border-color: #8f5732 !important;
  color: var(--pp-white) !important;
  -webkit-text-fill-color: var(--pp-white) !important;
}

/* Unavailable checkout button */
.auxiliaryMenu .btn-action[disabled],
.auxiliaryMenu .btn-action.disabled,
.siteHeader .btn-action[disabled],
.siteHeader .btn-action.disabled,
.auxiliaryMenu a[href*="/checkout"].disabled,
.siteHeader a[href*="/checkout"].disabled {
  background: #e6ded4 !important;
  border: 1px solid #d5c9bb !important;
  color: #6b6259 !important;
  -webkit-text-fill-color: #6b6259 !important;
  box-shadow: none !important;
  cursor: not-allowed !important;
  opacity: 1 !important;
  text-decoration: none !important;
}

/* Responsive */
@media (max-width: 768px) {
  .pp-page {
    padding: 0 14px;
  }

  .pp-hero {
    padding: 50px 16px 40px;
    margin: 20px 0;
  }

  .pp-hero h1,
  .pp-page h1 {
    font-size: 1.8rem;
  }

  .pp-hero .pp-subhead {
    font-size: 1rem;
  }

  .pp-page h2 {
    font-size: 1.45rem;
  }

  .pp-btn {
    padding: 12px 28px !important;
    font-size: 0.85rem !important;
  }

  .pp-hero-actions {
    flex-direction: column;
    align-items: center;
  }

  .pp-category-nav {
    gap: 8px !important;
  }

  .pp-category-nav .pp-cat-btn {
    font-size: 0.78rem !important;
    padding: 10px 16px !important;
  }

  .pp-trust {
    padding: 44px 20px;
  }

  .pp-trust-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
  }

  .pp-subscribe {
    padding: 40px 20px;
  }

  .pp-sub-benefits {
    flex-direction: column;
    align-items: center;
    gap: 14px;
  }

  .pp-section {
    padding: 30px 0 20px;
  }
}

@media (max-width: 480px) {
  .pp-trust-grid {
    grid-template-columns: 1fr;
  }

  .pp-category-nav {
    overflow-x: auto !important;
    flex-wrap: nowrap !important;
    justify-content: flex-start !important;
    padding-bottom: 14px !important;
    scrollbar-width: thin;
  }

  .pp-category-nav .pp-cat-btn {
    flex: 0 0 auto;
  }

  a.btn-brand[href*="/store/product/"],
  a.btn[href*="/store/product/"].btn-brand {
    font-size: 16px !important;
    padding: 12px 14px !important;
  }
}
/* ── Homepage Product Card Buttons — Final Override ── */

.pp-page .brand,
.pp-page a.brand,
.pp-page button.brand {
  background: #c17f4e !important;
  border-color: #a6683e !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  font-family: Lexend, Arial, sans-serif !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  opacity: 1 !important;
  border-radius: 6px !important;
  box-shadow: 0 3px 8px rgba(44, 44, 44, 0.22) !important;
  text-decoration: none !important;
}

.pp-page .brand *,
.pp-page a.brand *,
.pp-page button.brand * {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

.pp-page .brand:hover,
.pp-page .brand:focus,
.pp-page a.brand:hover,
.pp-page a.brand:focus,
.pp-page button.brand:hover,
.pp-page button.brand:focus {
  background: #a6683e !important;
  border-color: #8f5732 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  transform: translateY(-1px);
  box-shadow: 0 5px 12px rgba(44, 44, 44, 0.30) !important;
}
/* Featured product card CTA buttons */
.featuredProductsWidget .productListing__addToCartButton--grid {
  background: #c17f4e !important;
  border: 2px solid #a6683e !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  font-family: Lexend, Arial, sans-serif !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  padding: 13px 18px !important;
  border-radius: 6px !important;
  opacity: 1 !important;
  box-shadow: 0 3px 8px rgba(44, 44, 44, 0.22) !important;
  transition:
    background-color 0.2s ease,
    border-color 0.2s ease,
    box-shadow 0.2s ease,
    transform 0.2s ease !important;
}

.featuredProductsWidget .productListing__addToCartButton--grid:hover,
.featuredProductsWidget .productListing__addToCartButton--grid:focus {
  background: #a6683e !important;
  border-color: #8f5732 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  box-shadow: 0 5px 12px rgba(44, 44, 44, 0.30) !important;
  transform: translateY(-1px);
}

.featuredProductsWidget
  .productListing__addToCartContainer--grid
  > a {
  text-decoration: none !important;
}
/* Pure Pasture Farms — consistent primary button color */
.btn-brand,
a.btn-brand,
button.btn-brand,
.productListing__addToCartButton--grid,
.store__button {
    background-color: #3f5f46 !important;
    border-color: #3f5f46 !important;
    color: #ffffff !important;
    box-shadow: none !important;
}

/* Hover and focus */
.btn-brand:hover,
.btn-brand:focus,
.btn-brand:active,
a.btn-brand:hover,
a.btn-brand:focus,
button.btn-brand:hover,
button.btn-brand:focus,
.productListing__addToCartButton--grid:hover,
.productListing__addToCartButton--grid:focus,
.store__button:hover,
.store__button:focus {
    background-color: #304c37 !important;
    border-color: #304c37 !important;
    color: #ffffff !important;
}

/* Disabled/loading state */
.btn-brand:disabled,
.btn-brand[disabled],
.productListing__addToCartButton--grid:disabled {
    background-color: #78907e !important;
    border-color: #78907e !important;
    color: #ffffff !important;
    opacity: 1 !important;
}
