/* RC7.9.60 — Product Experience Intro Authority
 * Single source for the Product overview stages. Loaded after Website Polish.
 */
body.woocommerce-shop .tcc-product-overview{
  position:relative!important;
  isolation:isolate!important;
  width:min(calc(100% - 40px),var(--tcc-ds-container-width,1200px))!important;
  max-width:var(--tcc-ds-container-width,1200px)!important;
  margin:0 auto!important;
  padding:0!important;
  overflow:visible!important;
  box-sizing:border-box!important;
}
body.woocommerce-shop .tcc-product-overview::before,
body.woocommerce-shop .tcc-product-overview::after{
  content:"";
  position:absolute;
  z-index:-2;
  pointer-events:none;
  background-repeat:no-repeat;
  background-size:contain;
  opacity:.34;
}
body.woocommerce-shop .tcc-product-overview::before{
  top:42px;
  left:calc((100dvw - 100%) / -2);
  width:390px;
  height:560px;
  background-position:left center;
  background-image:url("images/product-pattern-left.webp");
}
body.woocommerce-shop .tcc-product-overview::after{
  top:54px;
  right:calc((100dvw - 100%) / -2);
  width:390px;
  height:620px;
  background-position:right center;
  background-image:url("images/product-pattern-right.webp");
}
body.woocommerce-shop .tcc-product-overview>section{
  width:100%!important;
  margin:0!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  box-sizing:border-box!important;
}
body.woocommerce-shop .tcc-product-overview__banner{
  height:360px!important;
  border-radius:var(--tcc-ds-radius-large,24px)!important;
  background-image:linear-gradient(rgba(0,0,0,var(--tcc-overview-overlay)),rgba(0,0,0,var(--tcc-overview-overlay))),var(--tcc-overview-desktop)!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
  background-size:var(--tcc-overview-desktop-fit,cover)!important;
  overflow:hidden!important;
}
body.woocommerce-shop .tcc-product-overview__hero{
  text-align:center!important;
}
body.woocommerce-shop .tcc-product-overview__hero .tcc-eyebrow{
  display:block!important;
  margin:0 0 12px!important;
  color:var(--tcc-accent,#b98232)!important;
  font-family:var(--tcc-body-font,inherit)!important;
  font-size:.72rem!important;
  font-weight:800!important;
  line-height:1.2!important;
  letter-spacing:var(--tcc-eyebrow-tracking,.18em)!important;
  text-transform:uppercase!important;
}
body.woocommerce-shop .tcc-product-overview__hero h1{
  margin:0!important;
  color:var(--tcc-ui-green,#07523d)!important;
  font-family:var(--tcc-font-heading,Georgia,"Times New Roman",serif)!important;
  font-size:var(--tcc-ds-page-title-desktop,36px)!important;
  font-weight:700!important;
  line-height:var(--tcc-h1-line,1.12)!important;
  letter-spacing:var(--tcc-heading-tracking,-.01em)!important;
}
body.woocommerce-shop .tcc-product-overview__hero p{
  max-width:820px!important;
  margin:var(--tcc-space-md,18px) auto 0!important;
  color:var(--tcc-color-text-muted,#606660)!important;
  font-size:16px!important;
  line-height:var(--tcc-ds-body-line-height,1.7)!important;
  text-align:justify!important;
  text-align-last:center!important;
  hyphens:auto;
}
body.woocommerce-shop .tcc-product-overview__hero .tcc-product-overview__hero-cta{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:48px!important;
  margin-top:24px!important;
  padding:0 24px!important;
  border:1px solid transparent!important;
  border-radius:999px!important;
  background:var(--tcc-primary,#0b573f)!important;
  color:#fff!important;
  font-size:var(--tcc-ds-button-size,15px)!important;
  font-weight:var(--tcc-ds-button-weight,700)!important;
  line-height:1.2!important;
  text-decoration:none!important;
  box-shadow:0 10px 24px rgba(11,87,63,.16)!important;
  transition:transform .22s ease,box-shadow .22s ease,background-color .22s ease,border-color .22s ease!important;
}
body.woocommerce-shop .tcc-product-overview__hero .tcc-product-overview__hero-cta:hover{
  transform:translateY(-2px)!important;
  background:var(--tcc-primary-dark,#073b2b)!important;
  box-shadow:0 15px 32px rgba(11,87,63,.24)!important;
}
body.woocommerce-shop .tcc-product-overview__hero .tcc-product-overview__hero-cta:active{
  transform:translateY(0)!important;
  box-shadow:0 8px 18px rgba(11,87,63,.16)!important;
}
body.woocommerce-shop .tcc-product-overview__hero .tcc-product-overview__hero-cta:focus-visible{
  outline:3px solid color-mix(in srgb,var(--tcc-accent,#b98232) 68%,#fff)!important;
  outline-offset:4px!important;
}
body.woocommerce-shop .tcc-product-overview__intro{
  display:grid!important;
  grid-template-columns:minmax(0,560px) minmax(0,1fr)!important;
  gap:clamp(34px,6vw,86px)!important;
  align-items:center!important;
}
body.woocommerce-shop .tcc-product-overview__intro--no-image{
  grid-template-columns:minmax(0,600px) 1fr!important;
}
body.woocommerce-shop .tcc-product-overview__intro>div{
  position:relative!important;
  z-index:2!important;
  min-width:0!important;
}
body.woocommerce-shop .tcc-product-overview__intro h2{
  max-width:560px!important;
  margin:0 0 18px!important;
  color:var(--home-green,var(--tcc-ui-green,#0b2f25))!important;
  font-family:var(--tcc-heading-font,var(--tcc-font-heading,Georgia,"Times New Roman",serif))!important;
  font-size:var(--tcc-ds-section-title-desktop,36px)!important;
  font-weight:var(--tcc-heading-weight,700)!important;
  line-height:var(--tcc-subheading-line,1.12)!important;
  letter-spacing:var(--tcc-heading-tracking,-.01em)!important;
  text-shadow:none!important;
  filter:none!important;
  opacity:1!important;
}
body.woocommerce-shop .tcc-product-overview__intro p{
  max-width:540px!important;
  margin:0!important;
  color:var(--tcc-color-text-muted,#606660)!important;
  font-size:16px!important;
  line-height:1.68!important;
}
body.woocommerce-shop .tcc-product-overview__intro img{
  display:block!important;
  width:100%!important;
  max-width:520px!important;
  height:auto!important;
  max-height:390px!important;
  margin-left:auto!important;
  object-fit:var(--tcc-overview-intro-fit,contain)!important;
  border:0!important;
  border-radius:20px!important;
  box-shadow:none!important;
  transform:none!important;
}
body.woocommerce-shop .tcc-product-overview__categories{
  position:relative!important;
  overflow:visible!important;
  background:transparent!important;
}
body.woocommerce-shop .tcc-product-overview__categories>h2{
  margin:0 0 34px!important;
  color:var(--tcc-ui-green,#07523d)!important;
  font-family:var(--tcc-font-heading,Georgia,"Times New Roman",serif)!important;
  font-size:var(--tcc-ds-section-title-desktop,30px)!important;
  font-weight:700!important;
  line-height:1.08!important;
  letter-spacing:-.025em!important;
  text-align:center!important;
}
body.woocommerce-shop .tcc-product-overview__categories>h2::after{
  content:""!important;
  display:block!important;
  width:74px!important;
  height:3px!important;
  margin:16px auto 0!important;
  border-radius:999px!important;
  background:linear-gradient(90deg,transparent,var(--tcc-ui-gold,#b77a24),transparent)!important;
}
body.woocommerce-shop .tcc-product-overview__grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:24px!important;
  align-items:stretch!important;
}
body.woocommerce-shop .tcc-product-overview__grid article.tcc-product-overview__card{
  position:relative!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  min-height:366px!important;
  padding:24px 22px 26px!important;
  overflow:hidden!important;
  border:0!important;
  border-radius:20px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.995) 0%,rgba(255,254,251,.985) 68%,rgba(249,247,241,.965) 100%)!important;
  box-shadow:0 26px 58px rgba(22,49,40,.115),0 9px 22px rgba(22,49,40,.06),inset 0 1px 0 rgba(255,255,255,.98),inset 0 -1px 0 rgba(183,122,36,.055)!important;
  transform:none!important;
  transition:transform .28s cubic-bezier(.2,.75,.25,1),box-shadow .28s ease!important;
}
body.woocommerce-shop .tcc-product-overview__grid article.tcc-product-overview__card::before{
  content:""!important;
  position:absolute!important;
  inset:0 0 auto!important;
  height:4px!important;
  border-radius:20px 20px 0 0!important;
  background:linear-gradient(90deg,var(--tcc-ui-gold,#b77a24) 0%,#e3c77e 48%,var(--tcc-ui-green,#07523d) 100%)!important;
  box-shadow:0 1px 7px rgba(183,122,36,.18)!important;
}
body.woocommerce-shop .tcc-product-overview__grid article.tcc-product-overview__card::after{
  content:""!important;
  position:absolute!important;
  left:18%!important;right:18%!important;bottom:-16px!important;
  height:34px!important;
  border-radius:50%!important;
  background:radial-gradient(ellipse at center,rgba(190,132,35,.24),rgba(190,132,35,0) 72%)!important;
  filter:blur(6px)!important;
  opacity:.72!important;
}
body.woocommerce-shop .tcc-product-overview__grid article.tcc-product-overview__card--specialty::after{background:radial-gradient(ellipse at center,rgba(99,145,65,.22),rgba(99,145,65,0) 72%)!important;}
body.woocommerce-shop .tcc-product-overview__grid article.tcc-product-overview__card--instant::after{background:radial-gradient(ellipse at center,rgba(39,132,102,.2),rgba(39,132,102,0) 72%)!important;}
body.woocommerce-shop .tcc-product-overview__grid article.tcc-product-overview__card:hover{
  transform:translateY(-6px)!important;
  box-shadow:0 34px 72px rgba(22,49,40,.155),0 13px 28px rgba(22,49,40,.075),inset 0 1px 0 rgba(255,255,255,1),inset 0 -1px 0 rgba(183,122,36,.08)!important;
}
body.woocommerce-shop .tcc-product-overview__grid article.tcc-product-overview__card:hover::before{filter:saturate(1.08) brightness(1.06)!important;}
body.woocommerce-shop .tcc-product-overview__grid article.tcc-product-overview__card:hover .tcc-product-overview__icon{transform:translateY(-2px) scale(1.025)!important;}
body.woocommerce-shop .tcc-product-overview__icon{
  display:grid!important;
  place-items:center!important;
  width:96px!important;height:96px!important;
  margin:0 auto 10px!important;
  border-radius:50%!important;
  color:#b97818!important;
  background:radial-gradient(circle at 50% 42%,rgba(255,255,255,.98) 0 28%,rgba(246,220,168,.5) 57%,rgba(246,220,168,0) 76%)!important;
  box-shadow:0 12px 28px rgba(187,125,26,.12),inset 0 1px 0 rgba(255,255,255,.92)!important;
  transform:translateZ(0)!important;
  transition:transform .28s cubic-bezier(.2,.75,.25,1),box-shadow .28s ease!important;
}
body.woocommerce-shop .tcc-product-overview__card--specialty .tcc-product-overview__icon{background:radial-gradient(circle at 50% 42%,rgba(255,255,255,.98) 0 28%,rgba(207,225,169,.52) 57%,rgba(207,225,169,0) 76%)!important;}
body.woocommerce-shop .tcc-product-overview__card--instant .tcc-product-overview__icon{background:radial-gradient(circle at 50% 42%,rgba(255,255,255,.98) 0 28%,rgba(196,224,214,.52) 57%,rgba(196,224,214,0) 76%)!important;}
body.woocommerce-shop .tcc-product-overview__icon img{width:58px!important;height:58px!important;object-fit:var(--tcc-overview-category-fit,contain)!important;border-radius:0!important;}
body.woocommerce-shop .tcc-product-overview__icon-svg{display:block!important;width:60px!important;height:60px!important;color:var(--tcc-ui-gold,#b77a24)!important;overflow:visible!important;}
body.woocommerce-shop .tcc-product-overview__icon-svg--instant{width:62px!important;height:62px!important;}
body.woocommerce-shop .tcc-product-overview__icon .dashicons{width:auto!important;height:auto!important;font-size:48px!important;line-height:1!important;color:var(--tcc-ui-gold,#b77a24)!important;}
body.woocommerce-shop .tcc-product-overview__grid article h3{
  margin:0!important;
  color:var(--tcc-ui-green,#07523d)!important;
  font-family:var(--tcc-font-heading,Georgia,"Times New Roman",serif)!important;
  font-size:clamp(25px,2vw,34px)!important;
  font-weight:700!important;
  line-height:1.08!important;
  text-align:center!important;
}
body.woocommerce-shop .tcc-product-overview__divider{width:52px!important;height:2px!important;margin:10px auto 14px!important;border-radius:999px!important;background:linear-gradient(90deg,transparent,var(--tcc-ui-gold,#b77a24),transparent)!important;}
body.woocommerce-shop .tcc-product-overview__grid article p{margin:0!important;color:var(--tcc-color-text-muted,#606660)!important;font-size:16px!important;line-height:1.68!important;text-align:center!important;}
@media(max-width:1024px){
  body.woocommerce-shop .tcc-product-overview__hero h1{font-size:var(--tcc-ds-page-title-tablet,30px)!important;}
  body.woocommerce-shop .tcc-product-overview__intro h2,
  body.woocommerce-shop .tcc-product-overview__categories>h2{font-size:var(--tcc-ds-section-title-tablet,26px)!important;}
}
@media(max-width:980px){
  body.woocommerce-shop .tcc-product-overview__intro{grid-template-columns:1fr!important;min-height:0!important;}
  body.woocommerce-shop .tcc-product-overview__intro img{margin:0 auto!important;}
  body.woocommerce-shop .tcc-product-overview__grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  /* RC7.9.636 — 768px source-authority cleanup.
   * The legacy -220px motif offsets created exactly 200px of document overflow
   * at tablet-768. RC7.9.634 already owns edge placement with viewport-safe
   * offsets, so this obsolete breakpoint override must not compete. */
}
@media(max-width:600px){
  body.woocommerce-shop .tcc-product-overview{width:min(calc(100% - 28px),var(--tcc-ds-container-width,1200px))!important;}
  body.woocommerce-shop .tcc-product-overview::before,
  body.woocommerce-shop .tcc-product-overview::after{display:none!important;}
  body.woocommerce-shop .tcc-product-overview__hero h1{font-size:var(--tcc-ds-page-title-mobile,24px)!important;}
  body.woocommerce-shop .tcc-product-overview__intro h2{font-size:var(--tcc-ds-section-title-mobile,26px)!important;}
  body.woocommerce-shop .tcc-product-overview__categories>h2{font-size:var(--tcc-ds-section-title-mobile,22px)!important;margin-bottom:26px!important;}
  body.woocommerce-shop .tcc-product-overview__grid{grid-template-columns:1fr!important;gap:18px!important;}
  body.woocommerce-shop .tcc-product-overview__grid article.tcc-product-overview__card{min-height:0!important;}
}
@media(prefers-reduced-motion:reduce){body.woocommerce-shop .tcc-product-overview__grid article.tcc-product-overview__card{transition:none!important;}}

/* RC7.9.73 — Product Page Luxury Polish Authority
 * Product-only visual refinement. Homepage/About remain untouched.
 */

/* Product page banner: clearly secondary to the Image CTA Card. */
body.woocommerce-shop .tcc-wc-hero{
  margin:0 0 28px!important;
  padding:34px 42px!important;
  min-height:0!important;
  border:1px solid rgba(255,255,255,.08)!important;
  border-radius:20px!important;
  background:
    radial-gradient(circle at 85% 18%,rgba(213,166,73,.12),transparent 34%),
    linear-gradient(135deg,#043d30 0%,#07523d 58%,#0a6249 100%)!important;
  box-shadow:0 18px 48px rgba(7,63,49,.12)!important;
}
body.woocommerce-shop .tcc-wc-hero p{margin:0 0 8px!important;font-size:11px!important;letter-spacing:.2em!important;color:rgba(255,255,255,.82)!important;}
body.woocommerce-shop .tcc-wc-hero h1{font-size:clamp(34px,3.3vw,46px)!important;line-height:1!important;letter-spacing:-.035em!important;}
body.woocommerce-shop .tcc-wc-hero span{max-width:620px!important;margin-top:12px!important;font-size:15px!important;line-height:1.55!important;color:rgba(255,255,255,.78)!important;}

/* Product filters: compact, clearer active and hover states. */
body.woocommerce-shop .tcc-wc-category-nav{gap:12px!important;margin:0 0 30px!important;}
body.woocommerce-shop .tcc-wc-category-nav a{
  min-height:38px!important;
  padding:8px 15px!important;
  border-color:rgba(7,82,61,.16)!important;
  background:rgba(255,255,255,.72)!important;
  box-shadow:0 5px 15px rgba(7,63,49,.035)!important;
  transition:transform .2s ease,background .2s ease,border-color .2s ease,box-shadow .2s ease!important;
}
body.woocommerce-shop .tcc-wc-category-nav a:hover{
  transform:translateY(-2px)!important;
  background:var(--tcc-ui-gold,var(--tcc-color-accent,#d6a04f))!important;
  border-color:var(--tcc-ui-gold,var(--tcc-color-accent,#d6a04f))!important;
  color:var(--tcc-ui-green,#07523d)!important;
  box-shadow:0 10px 24px rgba(183,122,36,.18)!important;
}
body.woocommerce-shop .tcc-wc-category-nav a.is-active{background:var(--tcc-ui-green,#07523d)!important;border-color:var(--tcc-ui-green,#07523d)!important;color:#fff!important;box-shadow:0 9px 22px rgba(7,82,61,.18)!important;}

/* Product cards: luxury-minimal rhythm without changing catalog logic. */
body.woocommerce-shop .woocommerce ul.products{gap:24px!important;}
body.woocommerce-shop .woocommerce ul.products li.product:not(.tcc-product-card--homepage-authority){
  padding-bottom:18px!important;
  border:1px solid rgba(7,82,61,.11)!important;
  border-radius:18px!important;
  background:linear-gradient(180deg,#fff 0%,#fffefb 100%)!important;
  box-shadow:0 13px 34px rgba(7,63,49,.07)!important;
  transition:transform .28s cubic-bezier(.2,.75,.25,1),box-shadow .28s ease,border-color .28s ease!important;
}
body.woocommerce-shop .woocommerce ul.products li.product:not(.tcc-product-card--homepage-authority):hover{transform:translateY(-4px)!important;border-color:rgba(183,122,36,.22)!important;box-shadow:0 22px 48px rgba(7,63,49,.12)!important;}
body.woocommerce-shop .woocommerce ul.products li.product:not(.tcc-product-card--homepage-authority) a img{margin-bottom:14px!important;}
body.woocommerce-shop .woocommerce ul.products li.product:not(.tcc-product-card--homepage-authority) .woocommerce-loop-product__title{padding:0 16px!important;margin-bottom:8px!important;font-size:clamp(20px,1.65vw,25px)!important;line-height:1.12!important;}
body.woocommerce-shop .woocommerce ul.products li.product:not(.tcc-product-card--homepage-authority) .price{padding:0 16px!important;margin:10px 0 8px!important;}
body.woocommerce-shop .woocommerce ul.products li.product:not(.tcc-product-card--homepage-authority) .button{width:calc(100% - 32px)!important;margin:10px 16px 0!important;min-height:46px!important;border-radius:12px!important;}
body.woocommerce-shop .tcc-wc-badge{top:10px!important;left:auto!important;right:10px!important;padding:6px 9px!important;background:var(--tcc-ui-green,#07523d)!important;color:#fff!important;box-shadow:0 8px 20px rgba(7,63,49,.15)!important;}

@media(max-width:782px){
  body.woocommerce-shop .tcc-wc-hero{padding:30px 28px!important;}
}
@media(max-width:600px){
  body.woocommerce-shop .tcc-wc-hero{padding:26px 22px!important;border-radius:18px!important;}
  body.woocommerce-shop .tcc-wc-category-nav{gap:8px!important;}
  body.woocommerce-shop .woocommerce ul.products{gap:18px!important;}
}

/* RC7.9.148 — Product Visual Rhythm Normalization
 * Audited final owner for Product page vertical geometry.
 * Consolidates CTA/catalog spacing, catalog controls, family-card height and
 * removes obsolete RC7.9.126 duplicate declarations. Homepage remains frozen.
 *
 * Historical note: based on RC7.9.105 Product Boundary Physical Parity Final
 * Final audited owner for Product page vertical rhythm.
 * Legacy Product spacing declarations were removed from earlier/shared blocks.
 * Homepage remains frozen; commerce behavior and page layout are unchanged.
 */
body.woocommerce-shop{
  --tcc-product-stage-space:clamp(20px,2vw,28px);
  --tcc-product-catalog-gap:16px;
  --tcc-product-entry-gap:24px;
  --tcc-product-cta-shift:12px;
  --tcc-product-footer-space:20px;
}

/* RC7.9.124 — Product Image CTA lower-corner root-cause fix.
 * The catalog stage previously used a negative top margin and physically
 * overlapped the lower edge of the CTA. The CTA radius was already correct;
 * the next stage covered the lower curves. This boundary now uses the same
 * Product stage-spacing token as the other stage boundaries.
 */
/* Header/menu -> overview is owned by the compact Product Hero block below. */

/* One owner per stage boundary prevents stacked margin + padding gaps. */
body.woocommerce-shop .tcc-product-overview__intro,
body.woocommerce-shop .tcc-product-overview__intro--no-image{
  display:block!important;
  min-height:0!important;
  margin:0!important;
  padding:var(--tcc-product-stage-space) 0 clamp(24px,2.5vw,32px)!important;
}
body.woocommerce-shop .tcc-product-overview__intro--no-image>div{max-width:600px!important;}
body.woocommerce-shop .tcc-product-overview__categories{
  margin:0!important;
  padding:0 0 var(--tcc-product-stage-space)!important;
}
body.woocommerce-shop .tcc-product-overview__categories>h2{margin-bottom:18px!important;}

/* RC7.9.141–143 — CTA → Product catalog spacing sync.
 * RC7.9.141 shortened the single boundary owner between the CTA and catalog.
 * RC7.9.142–143 move the existing CTA down slightly inside that boundary, without
 * changing the CTA surface, content, catalog geometry, Product Cards or Homepage.
 */
/* Product-family cards -> Image CTA -> Catalog. */
body.woocommerce-shop .tcc-product-cta-engine{margin:0!important;}
body.woocommerce-shop .tcc-product-cta-engine__content{justify-content:center!important;}
body.woocommerce-shop .tcc-product-overview{margin-bottom:0!important;}
body.woocommerce-shop .tcc-product-overview>.tcc-product-cta-engine{top:var(--tcc-product-cta-shift)!important;margin-bottom:0!important;}

/* Neutralize legacy page-level WooCommerce padding that stacked around the custom archive stages. */
body.woocommerce-shop.tcc-frontend-engine main.site-main{padding-top:0!important;padding-bottom:0!important;}
body.woocommerce-shop .tcc-product-overview + .tcc-wc-main{margin-top:var(--tcc-product-entry-gap)!important;}
body.woocommerce-shop .tcc-product-overview + .tcc-wc-main,
body.woocommerce-shop .tcc-product-overview + .tcc-wc-main > .woocommerce{padding-top:0!important;}

/* Catalog rhythm: title, filters, result/order row and grid form one compact stage. */
body.woocommerce-shop .tcc-wc-main{
  min-height:0!important;
  margin:0!important;
  padding-top:0!important;
  padding-bottom:0!important;
  margin-bottom:0!important;
}
body.woocommerce-shop .woocommerce-products-header{margin:0 0 8px!important;padding:0!important;}
body.woocommerce-shop .tcc-wc-category-nav{margin:0 0 var(--tcc-product-catalog-gap)!important;}
body.woocommerce-shop .woocommerce-result-count,
body.woocommerce-shop .woocommerce-ordering{margin-bottom:12px!important;}
body.woocommerce-shop .woocommerce-ordering{margin-top:-2px!important;}
body.woocommerce-shop .woocommerce-ordering select{
  min-height:40px!important;
  padding:8px 40px 8px 15px!important;
  border:1px solid rgba(7,82,61,.16)!important;
  border-radius:999px!important;
  background-color:rgba(255,255,255,.82)!important;
  color:var(--tcc-color-text,#263b34)!important;
  font-size:15px!important;
  line-height:1.2!important;
  box-shadow:0 5px 15px rgba(7,63,49,.035)!important;
}
body.woocommerce-shop .woocommerce-ordering select:focus{
  border-color:color-mix(in srgb,var(--tcc-ui-green,#07523d) 46%,transparent)!important;
  outline:3px solid color-mix(in srgb,var(--tcc-ui-green,#07523d) 12%,transparent)!important;
  outline-offset:2px!important;
}
body.woocommerce-shop .tcc-wc-main .woocommerce ul.products{
  margin-top:0!important;
  margin-bottom:0!important;
  padding-bottom:0!important;
}
/* RC7.9.207 — Product catalog / footer breathing balance.
 * Replaces the RC7.9.206 boundary block directly. The product catalog stage is
 * the single owner of the breathing room below the card grid; nested shop main
 * remains neutral. The footer keeps zero external margin, while its internal top
 * padding is slightly reduced on the Product archive so the footer content moves
 * upward without touching Product Card geometry or page content.
 */
body.woocommerce-shop .tcc-wc-main > .tcc-product-catalog-stage{
  min-height:0!important;
  margin-bottom:0!important;
  padding-bottom:var(--tcc-product-footer-space)!important;
}
body.woocommerce-shop .tcc-wc-main > .tcc-product-catalog-stage > main.tcc-shop{
  min-height:0!important;
  margin-bottom:0!important;
  padding-bottom:0!important;
}
body.woocommerce-shop .tcc-wc-main .woocommerce:after{display:none!important;}

/* Product grid -> footer boundary: one external owner, no footer margin stacking. */
body.woocommerce-shop :is(.tcc-platform-footer,.tcc-theme-footer,footer.site-footer){margin-top:0!important;}
body.woocommerce-shop :is(.tcc-platform-footer__inner,.tcc-theme-footer__inner){padding-top:40px!important;}
body.woocommerce-shop :is(.tcc-platform-footer__logo,.footer-logo){padding-top:8px!important;}
body.woocommerce-shop :is(.tcc-platform-footer__brand,.tcc-footer-brand,.footer-brand) :is(p,address){line-height:1.58!important;}

/* Homepage button authority, calibrated only for Product archive cards. */
body.tcc-design-sync.woocommerce ul.products li.product.tcc-product-card--homepage-authority .tcc-product-action{
  min-height:36px!important;
  padding-block:6px!important;
}

@media(max-width:1024px){
  body.woocommerce-shop{
    --tcc-product-stage-space:var(--tcc-ds-section-space-tablet,44px);
    --tcc-product-catalog-gap:14px;
    --tcc-product-entry-gap:24px;
    --tcc-product-cta-shift:14px;
    --tcc-product-footer-space:16px;
  }
}
@media(max-width:600px){
  body.woocommerce-shop{
    --tcc-product-stage-space:var(--tcc-ds-section-space-mobile,36px);
    --tcc-product-catalog-gap:12px;
    --tcc-product-entry-gap:20px;
    --tcc-product-cta-shift:10px;
    --tcc-product-footer-space:14px;
  }
  body.woocommerce-shop .tcc-product-overview__hero{padding:32px 0 28px!important;}
  body.woocommerce-shop .tcc-product-overview__categories>h2{margin-bottom:20px!important;}
}

/* RC7.9.106 — Product Decorative Continuity
 * Reuses the existing Product line-art assets. No new image asset is introduced.
 * Decorative layers remain outside the content column and do not alter layout geometry.
 */
body.woocommerce-shop .tcc-product-overview__categories,
body.woocommerce-shop .tcc-wc-main{
  position:relative!important;
  isolation:isolate!important;
}

/* Product Family stage: a restrained second motif pair continues the visual language
 * below the opening stage without covering cards or the CTA artwork.
 */
body.woocommerce-shop .tcc-product-overview__categories::before,
body.woocommerce-shop .tcc-product-overview__categories::after,
body.woocommerce-shop .tcc-wc-main::before,
body.woocommerce-shop .tcc-wc-main::after{
  content:"";
  position:absolute;
  z-index:-1;
  pointer-events:none;
  width:clamp(230px,25vw,390px);
  background-repeat:no-repeat;
  background-position:center;
  background-size:contain;
}
body.woocommerce-shop .tcc-product-overview__categories::before{
  left:calc((100dvw - 100%) / -2);
  top:24%;
  height:430px;
  opacity:.12;
  background-image:url("images/product-pattern-left.webp");
}
body.woocommerce-shop .tcc-product-overview__categories::after{
  right:calc((100dvw - 100%) / -2);
  top:38%;
  height:470px;
  opacity:.10;
  background-image:url("images/product-pattern-right.webp");
}

/* Catalog stage: motifs live at the outer page edges only, behind empty canvas.
 * Product cards, controls and text remain on an undecorated reading surface.
 */
body.woocommerce-shop .tcc-wc-main::before{
  left:calc((100dvw - 100%) / -2);
  top:4%;
  height:520px;
  opacity:.09;
  background-image:url("images/product-pattern-left.webp");
}
body.woocommerce-shop .tcc-wc-main::after{
  right:calc((100dvw - 100%) / -2);
  bottom:2%;
  height:540px;
  opacity:.085;
  background-image:url("images/product-pattern-right.webp");
}
body.woocommerce-shop .tcc-wc-main > *{
  position:relative;
  z-index:1;
}

@media(max-width:1024px){
  body.woocommerce-shop .tcc-product-overview__categories::before,
  body.woocommerce-shop .tcc-product-overview__categories::after{
    width:250px;
    opacity:.075;
  }
  body.woocommerce-shop .tcc-wc-main::before,
  body.woocommerce-shop .tcc-wc-main::after{
    width:240px;
    opacity:.06;
  }
}
@media(max-width:600px){
  body.woocommerce-shop .tcc-product-overview__categories::before,
  body.woocommerce-shop .tcc-product-overview__categories::after{
    width:170px;
    height:300px;
    opacity:.045;
  }
  body.woocommerce-shop .tcc-wc-main::before{
    width:155px;
    height:300px;
    left:calc((100dvw - 100%) / -2);
    top:2%;
    opacity:.04;
  }
  body.woocommerce-shop .tcc-wc-main::after{
    display:none;
  }
}




/* RC7.9.182 — Product Hero header dock + shared container axis authority.
 * Replaces RC7.9.181 completely. The stage surface now starts directly below
 * the Header, while the Hero content and the following Product sections share
 * the same Homepage container axis. The managed image remains editable in
 * WooCommerce Studio and uses a 16:10 presentation frame.
 */
body.woocommerce-shop .tcc-product-overview__hero.tcc-product-overview__hero--with-media{
  position:relative!important;
  left:50%!important;
  width:100vw!important;
  max-width:none!important;
  margin-left:-50vw!important;
  display:grid!important;
  grid-template-columns:minmax(0,1.08fr) minmax(430px,.92fr)!important;
  gap:clamp(40px,4.4vw,72px)!important;
  align-items:center!important;
  min-height:clamp(360px,30vw,420px)!important;
  padding-block:clamp(22px,2.6vw,38px)!important;
  padding-inline:max(20px,calc((100vw - var(--tcc-ds-container-width,1200px))/2))!important;
  background:var(--tcc-canvas,#fbf8f2)!important;
  text-align:left!important;
  overflow:hidden!important;
}
body.woocommerce-shop .tcc-product-overview__hero-content{
  min-width:0!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  align-items:flex-start!important;
}
body.woocommerce-shop .tcc-product-overview__hero--with-media .tcc-eyebrow{
  margin:0 0 8px!important;
}
body.woocommerce-shop .tcc-product-overview__hero--with-media h1{
  display:block!important;
  max-width:640px!important;
  margin:0!important;
  color:var(--tcc-ui-green,#07523d)!important;
  font-size:30px!important;
  line-height:1.12!important;
}
body.woocommerce-shop .tcc-product-overview__hero--with-media p{
  max-width:680px!important;
  margin:12px 0 0!important;
  font-size:var(--tcc-ds-body-size,16px)!important;
  line-height:var(--tcc-ds-body-line-height,1.7)!important;
  text-align:left!important;
  text-align-last:left!important;
}
body.woocommerce-shop .tcc-product-overview__hero--with-media .tcc-product-overview__hero-cta{
  margin-top:26px!important;
}
body.woocommerce-shop .tcc-product-overview__hero-media{
  position:relative!important;
  width:100%!important;
  aspect-ratio:16/10!important;
  min-height:0!important;
  margin:0!important;
  border-radius:var(--tcc-ds-radius-large,24px)!important;
  overflow:hidden!important;
  background:color-mix(in srgb,var(--tcc-canvas,#fbf8f2) 90%,#fff)!important;
  box-shadow:var(--tcc-ds-shadow-card,0 18px 44px rgba(17,54,43,.14))!important;
}
body.woocommerce-shop .tcc-product-overview__hero-media::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  border:1px solid color-mix(in srgb,var(--tcc-ui-green,#07523d) 12%,transparent);
  border-radius:inherit;
}
body.woocommerce-shop .tcc-product-overview__hero-media img{
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  display:block!important;
  object-fit:var(--tcc-overview-hero-fit,cover)!important;
  object-position:center!important;
  transition:transform .3s ease!important;
}
body.woocommerce-shop .tcc-product-overview__hero-media:hover img{
  transform:scale(1.025)!important;
}
body.woocommerce-shop .tcc-product-overview__hero-media--fallback img{
  object-fit:cover!important;
}
@media (max-width:1024px){
  body.woocommerce-shop .tcc-product-overview__hero--with-media h1{font-size:26px!important;}
  body.woocommerce-shop .tcc-product-overview__hero.tcc-product-overview__hero--with-media{
    grid-template-columns:minmax(0,1fr) minmax(340px,.88fr)!important;
    min-height:370px!important;
    gap:36px!important;
    padding-block:38px!important;
    padding-inline:max(24px,calc((100vw - var(--tcc-ds-container-width,1200px))/2))!important;
  }
}
@media (max-width:760px){
  body.woocommerce-shop .tcc-product-overview__hero--with-media h1{font-size:22px!important;}
  body.woocommerce-shop .tcc-product-overview__hero.tcc-product-overview__hero--with-media{
    grid-template-columns:1fr!important;
    min-height:0!important;
    padding:32px 20px 36px!important;
    gap:28px!important;
    text-align:center!important;
  }
  body.woocommerce-shop .tcc-product-overview__hero-content{
    align-items:center!important;
  }
  body.woocommerce-shop .tcc-product-overview__hero--with-media h1,
  body.woocommerce-shop .tcc-product-overview__hero--with-media p{
    max-width:100%!important;
    text-align:center!important;
    text-align-last:center!important;
  }
  body.woocommerce-shop .tcc-product-overview__hero-media{
    width:min(100%,620px)!important;
    margin-inline:auto!important;
  }
}
/* RC7.9.634 — Product Archive decorative-edge authority cleanup.
 * The former negative offsets placed invisible motif boxes outside the viewport and
 * enlarged document.scrollWidth on every breakpoint. Keep the same motifs at the
 * outer canvas edge without creating horizontal scroll. */
@supports not (width:100dvw){
  body.woocommerce-shop .tcc-product-overview::before,
  body.woocommerce-shop .tcc-product-overview__categories::before,
  body.woocommerce-shop .tcc-wc-main::before{left:calc((100vw - 100%) / -2)!important;}
  body.woocommerce-shop .tcc-product-overview::after,
  body.woocommerce-shop .tcc-product-overview__categories::after,
  body.woocommerce-shop .tcc-wc-main::after{right:calc((100vw - 100%) / -2)!important;}
}

@media (prefers-reduced-motion:reduce){
  body.woocommerce-shop .tcc-product-overview__hero-media img{transition:none!important;}
  body.woocommerce-shop .tcc-product-overview__hero-media:hover img{transform:none!important;}
}

/* RC7.9.635 — Product Archive final viewport containment authority.
 * Full-site audit isolated one remaining overflow at the 768px breakpoint.
 * The overflow is generated by decorative/transformed paint outside the canvas
 * (no measurable DOM element owns it), so clip only the Product Archive canvas.
 * This does not alter Product card, grid, typography, spacing or interaction. */
body.woocommerce-shop{
  max-width:100%!important;
  overflow-x:clip!important;
}
@supports not (overflow:clip){
  body.woocommerce-shop{overflow-x:hidden!important;}
}
