/* Decorative section backgrounds wait until scrolled near (main.js adds .bg-in) */
.js .lazy-bg:not(.bg-in){background-image:none !important;}

/* Self-hosted fonts: Google Fonts latin files, weight axis limited (Inter 400-700, Fraunces 500-700) and subset with fontTools */
@font-face{font-family:'Fraunces';font-style:normal;font-weight:500 700;font-display:swap;src:url(../fonts/fraunces-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02C6,U+02DA,U+02DC,U+2010-2027,U+2030-203A,U+20AC,U+2122,U+2190-2193,U+2212;}
@font-face{font-family:'Inter';font-style:normal;font-weight:400 700;font-display:swap;src:url(../fonts/inter-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02C6,U+02DA,U+02DC,U+2010-2027,U+2030-203A,U+20AC,U+2122,U+2190-2193,U+2212;}
/* ============================================================
   DOWLET — Design tokens
   ============================================================ */
:root{
  --forest-950:#081F1A;
  --forest-900:#0E2B24;
  --forest-800:#1E493B;
  --forest-700:#526F61;
  --charcoal:#1c2420;
  --charcoal-60:rgba(28,36,32,.66);
  --timber-800:#a0101a;
  --timber-700:#c8161e;
  --timber-600:#ed1c24;
  --timber-500:#f24a50;
  --timber-300:#fabea7;
  --sand-50:#fdf5f2;
  --sand-100:#fce6de;
  --sand-200:#fbd1c0;
  --sand-300:#fab89e;
  --ivory:#F6F1E7;
  --white:#ffffff;
  --line:rgba(28,36,32,.14);
  --line-soft:rgba(28,36,32,.08);
  --line-invert:rgba(250,248,242,.18);
  --line-invert-soft:rgba(250,248,242,.1);

  --font-display:'Fraunces', ui-serif, Georgia, serif;
  --font-body:'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;

  --fs-display:clamp(2.6rem, 1.9rem + 3.4vw, 5.6rem);
  --fs-h1:clamp(2.1rem, 1.7rem + 1.9vw, 3.4rem);
  --fs-h2:clamp(1.7rem, 1.45rem + 1.1vw, 2.5rem);
  --fs-h3:clamp(1.25rem, 1.1rem + .5vw, 1.55rem);
  --fs-h4:clamp(1.1rem, 1.02rem + .3vw, 1.25rem);
  --fs-lead:clamp(1.05rem, .98rem + .3vw, 1.25rem);
  --fs-body:1rem;
  --fs-small:.875rem;
  --fs-eyebrow:.78rem;
  --fs-stat:clamp(2.1rem, 1.7rem + 1.6vw, 3.2rem);

  --container-max:1320px;
  --container-pad:clamp(1rem, 4vw, 3rem);

  --space-3xs:.25rem;
  --space-2xs:.5rem;
  --space-xs:.75rem;
  --space-sm:1.25rem;
  --space-md:2rem;
  --space-lg:clamp(2rem, 1.6rem + 1.6vw, 3rem);
  --space-xl:clamp(2.75rem, 2.2rem + 2.2vw, 4.25rem);
  --space-2xl:clamp(3rem, 2.4rem + 3vw, 5.25rem);

  --radius-sm:2px;
  --radius-md:3px;

  --ease-out:cubic-bezier(.16,1,.3,1);
  --ease-in-out:cubic-bezier(.65,0,.35,1);
  --dur-sm:.25s;
  --dur-md:.6s;
  --dur-lg:1s;

  --shadow-card:0 1px 2px rgba(8,31,26,.06), 0 12px 32px -16px rgba(8,31,26,.18);
}

/* ============================================================
   Reset
   ============================================================ */
*,*::before,*::after{box-sizing:border-box;}
*{margin:0;}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;}
@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto;}
  *,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important;scroll-behavior:auto !important;}
}
html,body {
  overflow-x: hidden !important;
  padding:0 !important;
  margin: 0 !important;
}
body{
  font-family:var(--font-body);
  font-size:var(--fs-body);
  line-height:1.6;
  color:var(--charcoal);
  background:var(--ivory);
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
img,svg,video{display:block;max-width:100%;height:auto;}
a{color:inherit;text-decoration:none;}
button{font:inherit;color:inherit;background:none;border:none;cursor:pointer;}
ul,ol{list-style:none;padding:0;}
input,textarea,select{font:inherit;color:inherit;}
:focus-visible{outline:2px solid var(--timber-600);outline-offset:3px;}

h1,h2,h3,h4{font-family:var(--font-display);font-weight:600;line-height:1.12;letter-spacing:-.01em;color:var(--forest-950);}
p{max-width:38em;}

/* ============================================================
   Layout helpers
   ============================================================ */
.container{max-width:var(--container-max);margin-inline:auto;padding-inline:var(--container-pad);}
.section{padding-block:var(--space-2xl);}
.section--tight{padding-block:var(--space-xl);}
.section--dark{background:var(--forest-950);color:var(--sand-100);}
.section--dark h1,.section--dark h2,.section--dark h3,.section--dark h4{color:var(--white);}
.section--sand{background:var(--sand-100);}
.section--line-top{border-top:1px solid var(--line);}
.grid{display:grid;gap:var(--space-md);}
.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;}
.skip-link{position:absolute;left:-999px;top:1rem;z-index:200;background:var(--forest-950);color:var(--white);padding:.7rem 1.2rem;border-radius:var(--radius-md);}
.skip-link:focus{left:1rem;}

/* ============================================================
   Type utilities
   ============================================================ */
.eyebrow{
  display:inline-flex;align-items:center;gap:.6em;
  font-family:var(--font-body);font-size:var(--fs-eyebrow);font-weight:600;
  letter-spacing:.16em;text-transform:uppercase;color:var(--timber-700);
}
.eyebrow::before{content:'';width:1.4em;height:1px;background:var(--timber-600);}
.section--dark .eyebrow{color:var(--timber-300);}
.section--dark .eyebrow::before{background:var(--timber-300);}

.display{font-size:var(--fs-display);font-weight:600;}
h1,.h1{font-size:var(--fs-h1);}
h2,.h2{font-size:var(--fs-h2);}
h3,.h3{font-size:var(--fs-h3);}
h4,.h4{font-size:var(--fs-h4);}
.lead{font-size:var(--fs-lead);color:var(--charcoal-60);max-width:36em;}
.section--dark .lead{color:rgba(250,248,242,.72);}

/* ============================================================
   Buttons
   ============================================================ */
.btn{
  position:relative;display:inline-flex;align-items:center;gap:.65rem;
  padding:.95rem 1.6rem;font-size:var(--fs-small);font-weight:600;letter-spacing:.02em;
  border-radius:var(--radius-md);border:1px solid transparent;
  transition:background var(--dur-sm) var(--ease-out),color var(--dur-sm) var(--ease-out),border-color var(--dur-sm) var(--ease-out),transform var(--dur-sm) var(--ease-out);
  white-space:nowrap;
}
.btn svg{width:1em;height:1em;transition:transform var(--dur-sm) var(--ease-out);}
.btn:hover svg{transform:translateX(3px);}
.btn:active{transform:translateY(1px);}
.btn--primary{background:var(--timber-700);color:var(--white);}
.btn--primary:hover{background:var(--timber-800);}
.btn--ghost-dark{border-color:var(--line-invert);color:var(--white);}
.btn--ghost-dark:hover{background:var(--line-invert-soft);}
.btn--ghost-light{border-color:var(--line);color:var(--forest-950);}
.btn--ghost-light:hover{background:var(--line-soft);}
.btn--text{padding:0;gap:.5rem;color:var(--forest-950);font-family:var(--font-body);}
.btn--text::after{content:'';position:absolute;left:0;right:0;bottom:-4px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform var(--dur-md) var(--ease-out);}
.btn--text:hover::after{transform:scaleX(1);transform-origin:left;}

/* ============================================================
   Header
   ============================================================ */
.site-header{
  position:fixed;inset:0 0 auto 0;z-index:100;
  height:90px;display:flex;align-items:center;
  background:var(--ivory);
  border-bottom:1px solid var(--line-soft);
  transition:height var(--dur-md) var(--ease-out),box-shadow var(--dur-md) var(--ease-out),
    opacity .7s var(--ease-out) .15s,transform .7s var(--ease-out) .15s;
}
.site-header .container{
  max-width:1450px;display:flex;align-items:center;justify-content:space-between;gap:2rem;width:100%;
  padding-inline:clamp(1.5rem,5vw,4rem);
}
body.has-hero-anim .site-header{opacity:0;transform:translateY(-16px);}
body.has-hero-anim.hero-ready .site-header{opacity:1;transform:translateY(0);}
.site-header[data-solid="true"]{
  height:74px;
  box-shadow:0 10px 24px -14px rgba(8,31,26,.18);
}

/* Transparent glass header over the homepage cinematic video hero — solidifies on scroll */
body:has(.hero-v3) .site-header[data-solid="false"]{
  background:linear-gradient(180deg,rgba(8,31,26,.5) 0%,rgba(8,31,26,.18) 100%);
  border-bottom-color:transparent;
  backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);
}
body:has(.hero-v3) .site-header[data-solid="false"] .main-nav > ul > li > a{color:rgba(255,255,255,.92);}
body:has(.hero-v3) .site-header[data-solid="false"] .main-nav > ul > li > a:hover{color:var(--timber-300);}
body:has(.hero-v3) .site-header[data-solid="false"] .main-nav > ul > li > a::after{background:var(--timber-300);}
body:has(.hero-v3) .site-header[data-solid="false"] .logo-tagline{color:var(--white);}
body:has(.hero-v3) .site-header[data-solid="false"] .menu-toggle span{background:var(--white);}
body:has(.hero-v3) .site-header[data-solid="false"] .has-dropdown > a svg{color:rgba(255,255,255,.92);}

.logo-badge{position:relative;isolation:isolate;display:flex;align-items:center;gap:.75rem;}
/* Borderless cream haze keeps the navy wordmark legible while the homepage header is transparent over the dark hero */
.site-header .logo-badge::before{
  content:'';position:absolute;z-index:-1;left:calc(28px - 62px);top:50%;width:124px;height:124px;transform:translateY(-50%);
  background:radial-gradient(closest-side,rgba(246,241,231,.94) 52%,rgba(246,241,231,.55) 72%,rgba(246,241,231,0) 100%);
  opacity:0;pointer-events:none;transition:opacity var(--dur-md) var(--ease-out);
}
body:has(.hero-v3) .site-header[data-solid="false"] .logo-badge::before{opacity:1;}
.logo-badge img{height:56px;width:auto;display:block;transition:height var(--dur-md) var(--ease-out);}
.site-header[data-solid="true"] .logo-badge img{height:46px;}
.logo-tagline{display:none;flex-direction:column;justify-content:center;gap:.2rem;font-family:var(--font-body);font-size:1rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--forest-900);line-height:1.25;white-space:nowrap;padding-left:.85rem;border-left:2px solid var(--timber-600);transition:color var(--dur-sm) var(--ease-out);}
.logo-name{font-weight:700;}
.logo-since{font-size:.82em;font-weight:600;letter-spacing:.18em;opacity:.85;}
.footer-brand .logo-badge img{height:114px;}
@media (max-width:639px){.footer-brand .logo-badge img{height:94px;}}

.main-nav{display:none;}
.main-nav ul{display:flex;align-items:center;gap:2.6rem;}
.main-nav a{
  position:relative;font-size:.95rem;font-weight:500;color:var(--charcoal);padding-block:.5rem;
  transition:color var(--dur-sm) var(--ease-out);
}
.main-nav a::after{content:'';position:absolute;left:0;right:0;bottom:-1px;height:1.5px;background:var(--timber-600);transform:scaleX(0);transition:transform var(--dur-md) var(--ease-out);}
.main-nav a:hover::after,.main-nav a[aria-current="page"]::after{transform:scaleX(1);}
.main-nav a:hover{color:var(--timber-700);}

.has-dropdown{position:relative;}
.has-dropdown > a{display:flex;align-items:center;gap:.35rem;}
.has-dropdown > a svg{width:.7em;height:.7em;transition:transform var(--dur-sm) var(--ease-out);}
.dropdown{
  position:absolute;top:calc(100% + .85rem);left:50%;transform:translate(-50%,6px);
  min-width:230px;background:var(--white);border:1px solid var(--line);border-radius:var(--radius-md);
  box-shadow:var(--shadow-card);padding:.5rem;opacity:0;visibility:hidden;
  transition:opacity var(--dur-sm) var(--ease-out),transform var(--dur-sm) var(--ease-out),visibility var(--dur-sm);
}
.has-dropdown:hover .dropdown,.has-dropdown:focus-within .dropdown{opacity:1;visibility:visible;transform:translate(-50%,0);}
.has-dropdown:hover > a svg{transform:rotate(180deg);}
.dropdown a{display:flex;flex-direction:column;gap:.15rem;padding:.65rem .8rem;border-radius:var(--radius-sm);color:var(--charcoal);}
.dropdown a::after{display:none;}
.dropdown a:hover{background:var(--sand-100);}
.dropdown a span{font-size:.94rem;font-weight:600;}
.dropdown a small{font-size:.78rem;color:var(--charcoal-60);font-weight:400;}

.header-actions{display:flex;align-items:center;gap:1rem;}
.header-actions .btn{display:none;}

.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:5px;width:26px;height:20px;flex-shrink:0;}
.menu-toggle span{display:block;width:100%;height:1.5px;background:var(--forest-950);transition:transform var(--dur-sm) var(--ease-out),opacity var(--dur-sm) var(--ease-out),background var(--dur-sm) var(--ease-out);}
body.nav-open .menu-toggle span:nth-child(1){transform:translateY(6.5px) rotate(45deg);}
body.nav-open .menu-toggle span:nth-child(2){opacity:0;}
body.nav-open .menu-toggle span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg);}
body.nav-open .menu-toggle span{background:var(--forest-950) !important;}

.mobile-nav{
  position:fixed;inset:0;z-index:99;background:var(--sand-50);
  display:flex;flex-direction:column;padding:6.5rem var(--container-pad) 2.5rem;
  transform:translateY(-100%);transition:transform var(--dur-lg) var(--ease-in-out);
  overflow-y:auto;
}
body.nav-open .mobile-nav{transform:translateY(0);}
.mobile-nav ul{display:flex;flex-direction:column;}
.mobile-nav > ul > li{border-bottom:1px solid var(--line);}
.mobile-nav > ul > li > a,.mobile-nav-group-toggle{
  display:flex;align-items:center;justify-content:space-between;padding:1.15rem 0;
  font-family:var(--font-display);font-size:1.5rem;font-weight:600;color:var(--forest-950);width:100%;text-align:left;
}
.mobile-nav-group-toggle svg{width:.85rem;height:.85rem;transition:transform var(--dur-sm) var(--ease-out);}
.mobile-nav-group[data-open="true"] .mobile-nav-group-toggle svg{transform:rotate(180deg);}
.mobile-nav-sub{max-height:0;overflow:hidden;transition:max-height var(--dur-md) var(--ease-out);}
.mobile-nav-group[data-open="true"] .mobile-nav-sub{max-height:220px;}
.mobile-nav-sub a{display:block;padding:.65rem 0 .65rem 1rem;font-size:1.02rem;color:var(--charcoal-60);border-left:1px solid var(--line);}
.mobile-nav-foot{margin-top:auto;padding-top:2rem;display:flex;flex-direction:column;gap:1rem;}
.mobile-nav-foot .btn{justify-content:center;}
.mobile-nav-contact{font-size:.9rem;color:var(--charcoal-60);}
.mobile-nav-contact a{color:var(--forest-950);font-weight:600;}

@media (min-width:960px){
  .main-nav{display:block;}
  .header-actions .btn{display:inline-flex;}
  .menu-toggle,.mobile-nav{display:none;}
  .logo-tagline{display:flex;}
}

/* ============================================================
   Reveal animation utility
   ============================================================ */
[data-reveal]{opacity:.55;transform:translateY(10px);transition:opacity .35s var(--ease-out),transform .35s var(--ease-out);}
[data-reveal].is-visible{opacity:1;transform:translateY(0);}
[data-reveal="fade"]{transform:none;}
[data-reveal-group] [data-reveal]{transition-delay:calc(var(--stagger, 0) * 45ms);}
@media (prefers-reduced-motion: reduce){
  [data-reveal]{opacity:1;transform:none;transition:none;}
}


/* ============================================================
   About / editorial split
   ============================================================ */
.editorial{display:grid;gap:var(--space-lg);align-items:center;}
.editorial-media{position:relative;}
.editorial-media .frame-main{position:relative;z-index:1;}
.editorial-media .frame-main img{border-radius:var(--radius-md);}
.editorial-media .frame-detail{position:absolute;z-index:2;width:46%;border:6px solid var(--ivory);box-shadow:var(--shadow-card);}
.editorial-media .frame-detail img{border-radius:1px;}
.editorial-body{display:grid;gap:var(--space-sm);}
.editorial-body .divider{width:56px;height:2px;background:var(--timber-600);margin-block:.4rem;}
.stat-row{display:flex;gap:var(--space-lg);margin-top:var(--space-sm);flex-wrap:wrap;}
.stat-row .stat b{display:block;font-family:var(--font-display);font-size:var(--fs-h2);color:var(--forest-950);}
.stat-row .stat span{font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;color:var(--charcoal-60);}

@media (min-width:900px){
  .editorial{grid-template-columns:.85fr 1fr;gap:var(--space-2xl);}
  .editorial--reverse{grid-template-columns:1fr .85fr;}
  .editorial--reverse .editorial-media{order:2;}
  .editorial-media .frame-detail{bottom:-10%;right:-12%;}
}
@media (max-width:899px){
  .editorial-media{margin-bottom:2.5rem;padding-right:16%;padding-bottom:16%;}
  .editorial-media .frame-detail{bottom:-8%;right:0;}
}

/* ============================================================
   Products — editorial showcase
   ============================================================ */
.product-row{display:grid;border-top:1px solid var(--line);padding-block:var(--space-lg);gap:var(--space-md);align-items:center;}

.product-index{font-family:var(--font-display);font-size:.95rem;color:var(--timber-600);letter-spacing:.05em;}
.product-title{margin-top:.5rem;}
.product-title a{display:inline-flex;align-items:baseline;gap:1rem;}
.product-title h3{font-size:clamp(1.9rem,1.5rem + 2vw,3rem);transition:color var(--dur-sm) var(--ease-out);}
.product-title svg{width:1.4rem;height:1.4rem;flex-shrink:0;transform:translateY(-.15em);opacity:0;transition:opacity var(--dur-sm) var(--ease-out),transform var(--dur-sm) var(--ease-out);}
.product-row:hover .product-title h3{color:var(--timber-700);}
.product-row:hover .product-title svg{opacity:1;transform:translate(.2em,-.35em);}
.product-species{margin-top:.9rem;font-size:.92rem;color:var(--charcoal-60);max-width:40em;}
.product-media{position:relative;overflow:hidden;border-radius:var(--radius-md);aspect-ratio:4/3;}
.product-media img{width:100%;height:100%;object-fit:cover;transition:transform 1.1s var(--ease-out);}
.product-row:hover .product-media img{transform:scale(1.045);}
.product-tag{position:absolute;top:1rem;left:1rem;background:rgba(250,248,242,.92);color:var(--forest-950);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;padding:.4rem .75rem;border-radius:2px;font-weight:600;}

@media (min-width:820px){
  .product-row{grid-template-columns:1fr .95fr;gap:var(--space-2xl);}
  .product-row:nth-child(even) .product-media{order:2;}
}

/* ============================================================
   Why Dowlet — advantages
   ============================================================ */
.advantage{display:grid;border-top:1px solid var(--line-invert-soft);padding-block:var(--space-lg);gap:var(--space-md);}
.advantage:last-child{border-bottom:1px solid var(--line-invert-soft);}
.advantage-num{font-family:var(--font-display);font-size:var(--fs-h1);color:var(--timber-300);line-height:1;}
.advantage-copy h3{color:var(--white);margin-block:.6rem 1rem;}
.advantage-copy p{color:rgba(250,248,242,.72);}
.advantage-media{border-radius:var(--radius-md);overflow:hidden;aspect-ratio:16/10;}
.advantage-media img{width:100%;height:100%;object-fit:cover;}
@media (min-width:900px){
  .advantage{grid-template-columns:.5fr 1.5fr 1fr;align-items:center;}
}

/* ============================================================
   Global sourcing / map
   ============================================================ */
.map-wrap{position:relative;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--sand-50);padding:var(--space-md);overflow:hidden;}
.map-svg{width:100%;height:auto;color:var(--sand-300);}
.map-svg .land{fill:var(--sand-200);}
.map-dot{fill:var(--timber-700);}
.map-dot-pulse{fill:none;stroke:var(--timber-600);stroke-width:1;opacity:.7;transform-origin:center;animation:mappulse 2.6s var(--ease-out) infinite;}
@keyframes mappulse{0%{transform:scale(.4);opacity:.75;}100%{transform:scale(2.6);opacity:0;}}
.origin-list,.market-list{display:flex;flex-direction:column;gap:.5rem;}
.origin-list li,.market-list li{display:flex;align-items:center;gap:.65rem;font-size:.95rem;padding-block:.4rem;border-bottom:1px solid var(--line-soft);}
.origin-list li::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--timber-600);flex-shrink:0;}
.market-list li::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--forest-700);flex-shrink:0;}

/* ============================================================
   Process timeline
   ============================================================ */
.timeline{position:relative;}
.timeline-line{position:absolute;left:20px;top:0;bottom:0;width:1px;background:var(--line);}
.timeline-step{position:relative;display:grid;gap:var(--space-sm);padding-left:4rem;padding-bottom:var(--space-lg);}
.timeline-step:last-child{padding-bottom:0;}
.timeline-dot{position:absolute;left:0;top:.2rem;width:41px;height:41px;border-radius:50%;background:var(--ivory);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:600;color:var(--timber-700);}
.timeline-step h3{margin-bottom:.5rem;}
.timeline-media{border-radius:var(--radius-md);overflow:hidden;aspect-ratio:16/9;max-width:560px;}
.timeline-media img{width:100%;height:100%;object-fit:cover;}
@media (min-width:820px){
  .timeline-step{grid-template-columns:1fr 1fr;align-items:center;padding-left:5.5rem;}
  .timeline-step:nth-child(even) .timeline-media{order:-1;}
  .timeline-line{left:27px;}
  .timeline-dot{left:0;}
}

/* ============================================================
   Feature break (full-bleed image)
   ============================================================ */
.feature-break{position:relative;min-height:64vh;display:flex;align-items:center;color:var(--white);overflow:hidden;isolation:isolate;z-index:0;}
.feature-break img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;}
.feature-break::before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,31,26,.82) 0%,rgba(8,31,26,.35) 65%,rgba(8,31,26,.1) 100%);z-index:-1;}
.feature-break-inner{max-width:640px;}
.feature-break h2{color:var(--white);}
.feature-break p{color:rgba(250,248,242,.78);margin-top:1rem;}

/* ============================================================
   Footer V2 — light, reference-matched
   ============================================================ */
.site-footer{
  --ftr-cream:#F8F1EC; --ftr-green:#0E2B24; --ftr-gold:#ED1C24; --ftr-gold-soft:#EA3E44; --ftr-gray:#5f6b64; --ftr-line:#E3D9D4;
  position:relative;overflow:hidden;isolation:isolate;
  background:var(--ftr-cream);color:var(--ftr-gray);
}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}

.site-footer-bg{
  position:absolute;inset:0;z-index:0;pointer-events:none;will-change:transform;
  background-image:url('../img/footer-bg.webp');background-size:cover;background-position:center bottom;background-repeat:no-repeat;
  opacity:0;transition:opacity 1s var(--ease-out);
}
.site-footer-bg.is-visible{opacity:1;}
.site-footer-bg::after{
  content:'';position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(246,242,233,.95) 0%,rgba(246,242,233,.88) 28%,rgba(246,242,233,.58) 52%,rgba(246,242,233,.22) 74%,rgba(246,242,233,.06) 100%);
}
.site-footer .container{position:relative;z-index:2;max-width:1480px;}

.footer-top{
  padding-block:clamp(2.5rem,2rem + 2.5vw,4rem) clamp(2rem,1.6rem + 1.6vw,2.75rem);
  display:grid;gap:clamp(2.2rem,1.6rem + 2vw,3.5rem);grid-template-columns:1fr;
}
.footer-brand,.footer-col{
  opacity:0;transform:translateY(24px);transition:opacity .6s var(--ease-out),transform .6s var(--ease-out);
}
.footer-brand[data-reveal],.footer-col[data-reveal]{transition-delay:calc(.05s + var(--stagger,0) * 70ms);}
.footer-brand.is-visible,.footer-col.is-visible{opacity:1;transform:translateY(0);}

.footer-brand{max-width:340px;}
.footer-brand .logo-badge{display:inline-block;margin-bottom:1.6rem;}
.footer-brand-heading{
  font-family:var(--font-display);font-weight:700;font-size:clamp(1.5rem,1.3rem + 1vw,1.9rem);
  line-height:1.28;color:var(--ftr-green);margin:0 0 1rem;position:relative;padding-bottom:1rem;
}
.footer-brand-heading::after{
  content:'';position:absolute;left:0;bottom:0;width:34px;height:2px;background:var(--ftr-gold);
  transform:scaleX(0);transform-origin:left;transition:transform .6s var(--ease-out) .35s;
}
.footer-brand.is-visible .footer-brand-heading::after{transform:scaleX(1);}
.footer-brand-desc{margin:0 0 1.7rem;font-size:.92rem;line-height:1.75;color:var(--ftr-gray);max-width:30ch;}

.footer-social{display:flex;gap:.7rem;}
.footer-social-icon{
  width:40px;height:40px;border-radius:50%;background:rgba(14,43,36,.07);
  display:flex;align-items:center;justify-content:center;color:var(--ftr-green);
  transition:transform .3s var(--ease-out),background .3s var(--ease-out),color .3s var(--ease-out);
}
.footer-social-icon svg{width:17px;height:17px;}
.footer-social-icon:hover{transform:translateY(-3px) scale(1.05);background:rgba(237,28,36,.16);color:var(--ftr-gold);}
.footer-social-icon:focus-visible{outline:2px solid var(--ftr-gold);outline-offset:2px;}

.footer-col h4{
  margin:0;font-family:var(--font-body);font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;font-weight:700;
  color:var(--ftr-green);position:relative;padding-bottom:.9rem;
}
.footer-col h4::after{
  content:'';position:absolute;left:0;bottom:0;width:28px;height:2px;background:var(--ftr-gold);
  transform:scaleX(0);transform-origin:left;transition:transform .6s var(--ease-out) .35s;
}
.footer-col.is-visible h4::after{transform:scaleX(1);}
.footer-col ul{list-style:none;margin:1.3rem 0 0;padding:0;display:flex;flex-direction:column;gap:.85rem;font-size:.92rem;}
.footer-col ul a{display:inline-flex;align-items:center;gap:.55rem;color:var(--ftr-green);transition:color .28s var(--ease-out);}
.footer-chevron{width:11px;height:11px;color:var(--ftr-gold);flex-shrink:0;transition:transform .28s var(--ease-out);}
.footer-col ul a:hover{color:var(--ftr-gold);}
.footer-col ul a:hover .footer-chevron{transform:translateX(4px);}
.footer-col a:focus-visible{outline:2px solid var(--ftr-gold);outline-offset:2px;}

.footer-contact{list-style:none;margin:1.3rem 0 0;padding:0;display:flex;flex-direction:column;gap:1.1rem;font-size:.9rem;}
.footer-contact li{display:flex;align-items:flex-start;gap:.9rem;transition:transform .2s var(--ease-out);}
.footer-contact-icon{
  flex-shrink:0;width:36px;height:36px;border-radius:50%;margin-top:1px;
  background:rgba(14,43,36,.07);display:flex;align-items:center;justify-content:center;color:var(--ftr-gold);
  transition:transform .3s var(--ease-out);
}
.footer-contact-icon svg{width:16px;height:16px;}
.footer-contact li:hover .footer-contact-icon{transform:scale(1.05) rotate(3deg);}
.footer-contact a{color:var(--ftr-green);padding-top:.4rem;display:inline-block;}
.footer-contact a:hover{color:var(--ftr-gold);}
.footer-contact li > span:last-child{color:var(--ftr-gray);line-height:1.6;padding-top:.4rem;}

.footer-newsletter-sub{margin:1.3rem 0 1.2rem;font-size:.88rem;line-height:1.6;color:var(--ftr-gray);max-width:27ch;}
.footer-newsletter-form{display:flex;border-radius:4px;overflow:hidden;border:1px solid var(--ftr-line);background:#fff;transition:border-color .25s var(--ease-out);}
.footer-newsletter-form:focus-within{border-color:var(--ftr-gold);}
.footer-newsletter-form input{flex:1;min-width:0;border:none;background:transparent;padding:.9rem 1rem;font-size:.88rem;color:var(--ftr-green);font-family:var(--font-body);}
.footer-newsletter-form input::placeholder{color:#a19d92;}
.footer-newsletter-form input:focus{outline:none;}
.footer-newsletter-form button{
  flex-shrink:0;width:48px;border:none;background:var(--ftr-gold);color:#fff;
  display:flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden;
  transition:background .3s var(--ease-out);
}
.footer-newsletter-form button svg{transition:transform .3s var(--ease-out);}
.footer-newsletter-form button:hover{background:var(--ftr-gold-soft);}
.footer-newsletter-form button:hover svg{transform:translateX(4px);}
.footer-newsletter-form button:focus-visible{outline:2px solid var(--ftr-green);outline-offset:2px;}
.footer-newsletter-note{margin:.9rem 0 0;font-size:.78rem;color:#a19d92;}

.footer-bottom{
  position:relative;z-index:2;border-top:1px solid var(--ftr-line);padding-block:1.6rem;
  display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;
  font-size:.85rem;color:var(--ftr-gray);
  background:var(--ftr-cream);
}
.footer-legal{display:flex;align-items:center;gap:.9rem;margin:0;}
.footer-legal span[aria-hidden]{color:var(--ftr-line);}
.footer-legal a{color:var(--ftr-gray);transition:color .25s var(--ease-out);}
.footer-legal a:hover{color:var(--ftr-gold);}
.footer-legal a:focus-visible{outline:2px solid var(--ftr-gold);outline-offset:2px;}

.site-footer .back-to-top{
  border-color:var(--ftr-line);color:var(--ftr-green);background:transparent;
  transition:transform .3s var(--ease-out),border-color .3s var(--ease-out),color .3s var(--ease-out);
}
.site-footer .back-to-top:hover{transform:translateY(-3px);border-color:var(--ftr-gold);color:var(--ftr-gold);background:rgba(237,28,36,.08);}
.site-footer .back-to-top:focus-visible{outline:2px solid var(--ftr-gold);outline-offset:2px;}

@media (min-width:768px) and (max-width:1099px){
  .footer-top{grid-template-columns:repeat(3,1fr);}
}
@media (min-width:1100px){
  .footer-top{grid-template-columns:1.5fr 1fr 1fr 1.2fr 1.3fr;}
}

@media (max-width:767px){
  .site-footer-bg::after{background:rgba(246,242,233,.9);}
  .site-footer-bg{background-position:75% bottom;}
  .footer-social{justify-content:flex-start;}
}

@media (prefers-reduced-motion: reduce){
  .site-footer-bg{transition-duration:.01ms !important;}
  .footer-brand,.footer-col,.footer-brand-heading::after,.footer-col h4::after,
  .footer-social-icon,.footer-contact-icon,.footer-contact li,.site-footer .back-to-top{transition-duration:.01ms !important;}
}

/* ============================================================
   Inner page hero
   ============================================================ */
.page-hero{position:relative;min-height:56vh;display:flex;align-items:flex-end;color:var(--white);overflow:hidden;isolation:isolate;z-index:0;}
.page-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;}
.page-hero::before{content:'';position:absolute;inset:0;background:
  linear-gradient(90deg,rgba(8,31,26,.82) 0%,rgba(8,31,26,.6) 45%,rgba(8,31,26,.25) 100%),
  linear-gradient(180deg,rgba(8,31,26,.45) 0%,rgba(8,31,26,.2) 40%,rgba(8,31,26,.85) 100%);z-index:-1;}
.page-hero .eyebrow{color:var(--timber-300);}
.page-hero .eyebrow::before{background:var(--timber-300);}
.page-hero h1,.page-hero .lead,.page-hero .breadcrumb{text-shadow:0 2px 18px rgba(8,31,26,.45);}
.page-hero-inner{padding-block:clamp(6.5rem,5.5rem + 3vw,8rem) var(--space-lg);width:100%;}
.breadcrumb{display:flex;align-items:center;gap:.5rem;font-size:.85rem;font-weight:500;color:rgba(255,255,255,.85);margin-bottom:1.1rem;}
.breadcrumb a:hover{color:var(--white);}
.page-hero h1{color:var(--white);max-width:20ch;}
.page-hero .lead{color:rgba(255,255,255,.9);margin-top:1rem;}

/* ============================================================
   Content blocks (inner pages)
   ============================================================ */
.prose{display:grid;gap:1.1rem;max-width:60em;}
.prose p{color:var(--charcoal-60);}
.tag-cloud{display:flex;flex-wrap:wrap;gap:.6rem;}
.tag-cloud span{border:1px solid var(--line);border-radius:20px;padding:.5rem 1.05rem;font-size:.86rem;color:var(--forest-950);background:var(--sand-50);}
.spec-table{width:100%;border-collapse:collapse;font-size:.94rem;}
.spec-table th,.spec-table td{text-align:left;padding:.85rem 1rem;border-bottom:1px solid var(--line);}
.spec-table th{font-weight:600;color:var(--forest-950);width:32%;background:var(--sand-100);}
.checklist{display:grid;gap:.75rem;}
.checklist li{display:flex;gap:.75rem;align-items:flex-start;font-size:.96rem;color:var(--charcoal-60);}
.checklist svg{width:1.1rem;height:1.1rem;flex-shrink:0;margin-top:.15rem;color:var(--timber-600);}

/* ============================================================
   Forms
   ============================================================ */
.form-grid{display:grid;gap:1.4rem;grid-template-columns:1fr;}
.form-grid--2{}
@media (min-width:640px){.form-grid--2{grid-template-columns:1fr 1fr;}}
.field{display:grid;gap:.5rem;}
.field label{font-size:.82rem;font-weight:600;letter-spacing:.02em;color:var(--forest-950);}
.field .req{color:var(--timber-700);}
.field input,.field select,.field textarea{
  border:1px solid var(--line);background:var(--white);border-radius:var(--radius-md);
  padding:.85rem 1rem;font-size:.96rem;color:var(--charcoal);
  transition:border-color var(--dur-sm) var(--ease-out),box-shadow var(--dur-sm) var(--ease-out);
}
.field input:hover,.field select:hover,.field textarea:hover{border-color:var(--timber-500);}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--timber-700);box-shadow:0 0 0 3px rgba(237,28,36,.15);outline:none;}
.field textarea{resize:vertical;min-height:130px;}
.field.has-error input,.field.has-error select,.field.has-error textarea{border-color:#a3352c;}
.field-error{font-size:.8rem;color:#a3352c;display:none;}
.field.has-error .field-error{display:block;}
.field-hint{font-size:.78rem;color:var(--charcoal-60);}
.form-status{display:none;align-items:center;gap:.7rem;padding:1rem 1.2rem;border-radius:var(--radius-md);font-size:.92rem;margin-bottom:1.4rem;}
.form-status svg{width:1.2rem;height:1.2rem;flex-shrink:0;}
.form-status[data-state="success"]{display:flex;background:#e6eee9;color:#0E2B24;}
.form-status[data-state="error"]{display:flex;background:#f6e6e3;color:#7a2b21;}
.form-submit{display:flex;align-items:center;gap:1rem;margin-top:.5rem;flex-wrap:wrap;}
.btn[data-loading="true"]{pointer-events:none;opacity:.75;}
.spinner{width:1em;height:1em;border-radius:50%;border:2px solid rgba(255,255,255,.4);border-top-color:currentColor;animation:spin .7s linear infinite;display:none;}
.btn[data-loading="true"] .spinner{display:inline-block;}
.btn[data-loading="true"] .btn-label-idle{display:none;}
@keyframes spin{to{transform:rotate(360deg);}}

/* ============================================================
   Contact info cards
   ============================================================ */
.contact-cards{display:grid;gap:1.25rem;grid-template-columns:1fr;}
.contact-card{border:1px solid var(--line);border-radius:var(--radius-md);padding:1.6rem;background:var(--sand-50);}
.contact-card svg{width:1.4rem;height:1.4rem;color:var(--timber-700);margin-bottom:.9rem;}
.contact-card h3{font-size:1.05rem;margin-bottom:.4rem;}
.contact-card p,.contact-card a{font-size:.92rem;color:var(--charcoal-60);line-height:1.6;}
.contact-card a:hover{color:var(--timber-700);}
@media (min-width:640px){.contact-cards{grid-template-columns:repeat(3,1fr);}}

/* ============================================================
   Embeds
   ============================================================ */
.embed-frame{position:relative;width:100%;aspect-ratio:16/9;border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--line);filter:grayscale(.15) contrast(1.02);}
.embed-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0;}

/* ============================================================
   Misc utility
   ============================================================ */
.flow > * + *{margin-top:1rem;}
.text-center{text-align:center;}
.mx-auto{margin-inline:auto;}
.max-w-content{max-width:44em;}

/* ============================================================
   Additions — section heads, sourcing grid, image sizing
   ============================================================ */
.section-head{display:grid;gap:var(--space-md);margin-bottom:var(--space-lg);}
.section-head .h2{margin-top:.6rem;max-width:22ch;}
.section-head .lead{margin-top:.6rem;}
@media (min-width:900px){
  .section-head{grid-template-columns:1fr auto;align-items:end;}
  .section-head .lead{margin-top:0;max-width:32ch;text-align:right;}
}

.editorial-media .frame-main img{width:100%;aspect-ratio:4/5;object-fit:cover;}
.editorial-media .frame-detail img{width:100%;height:100%;object-fit:cover;}
.editorial-media .frame-detail{aspect-ratio:4/3;}

.sourcing-grid{display:grid;gap:var(--space-lg);align-items:center;}
.sourcing-lists{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-md);margin-top:var(--space-md);}
.sourcing-lists h3{font-size:var(--fs-h4);margin-bottom:.75rem;}
.map-legend{display:flex;gap:var(--space-md);margin-top:var(--space-sm);font-size:.85rem;color:var(--charcoal-60);}
.map-legend span{display:inline-flex;align-items:center;gap:.5rem;}
.map-legend i{width:8px;height:8px;border-radius:50%;display:inline-block;}
.map-legend .i-source{background:var(--timber-700);}
.map-legend .i-buyer{background:var(--forest-700);}
@media (min-width:900px){.sourcing-grid{grid-template-columns:.9fr 1.1fr;}}

.product-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem;}
.product-tags span{font-size:.78rem;padding:.35rem .75rem;border:1px solid var(--line);border-radius:20px;color:var(--charcoal-60);}

.badge-row{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.25rem;}
.badge-row span{font-size:.78rem;padding:.4rem .85rem;border:1px solid var(--line-invert);border-radius:20px;color:rgba(250,248,242,.85);}

.detail-figure{border-radius:var(--radius-md);overflow:hidden;aspect-ratio:16/10;}
.detail-figure img{width:100%;height:100%;object-fit:cover;}

.two-col{display:grid;gap:var(--space-lg);}
@media (min-width:900px){.two-col{grid-template-columns:1fr 1fr;}}
@media (min-width:900px){.two-col--wide-right{grid-template-columns:.85fr 1.15fr;}}

.icon-circle{width:52px;height:52px;border-radius:50%;background:var(--sand-100);display:flex;align-items:center;justify-content:center;color:var(--timber-700);flex-shrink:0;}
.icon-circle svg{width:1.35rem;height:1.35rem;}

/* ============================================================
   HOMEPAGE V2 — reference-matched rebuild
   ============================================================ */

/* -- Buttons: gold + forest variants -- */
.btn--gold{background:var(--timber-600);color:var(--white);}
.btn--gold:hover{background:var(--timber-700);color:var(--white);}
.btn--forest{background:var(--forest-900);color:var(--white);}
.btn--forest:hover{background:var(--forest-800);}

/* Header CTA always forest-green (overrides default primary on header) */
.header-actions .btn{height:53px;padding:0 1.6rem;}

/* ============================================================
   Hero V3 — cinematic full-bleed video composition (reference/hero-final)
   ============================================================ */
.hero-v3{
  position:relative;overflow:hidden;isolation:isolate;z-index:0;
  background:var(--forest-950);color:var(--white);
  min-height:760px;
  display:flex;flex-direction:column;
}
@media (min-width:901px){
  .hero-v3{min-height:max(760px,100vh);}
}
@supports (height:100svh){
  .hero-v3{min-height:max(760px,100svh);}
  @media (min-width:901px){.hero-v3{min-height:max(760px,100svh);}}
}

/* Full-bleed background video */
.hero-v3-media{
  position:absolute;inset:0;z-index:0;overflow:hidden;background:var(--forest-950);
  opacity:0;transform:scale(1.04);
  transition:opacity 1.2s var(--ease-out),transform 1.4s var(--ease-out);
}
body.hero-ready .hero-v3-media{opacity:1;transform:scale(1);}
/* Background slideshow: slides stacked, the active one fades in over the previous */
.hero-v3-slide{
  position:absolute;inset:0;width:100%;height:100%;
  object-fit:cover;object-position:center;
  pointer-events:none;
  opacity:0;transform:scale(1.06);
  transition:opacity 1s var(--ease-in-out),transform 4s linear;
}
.hero-v3-slide.is-active{opacity:1;transform:scale(1);}
@media (prefers-reduced-motion: reduce){
  .hero-v3-media{transition-duration:.01ms;transform:none !important;}
  .hero-v3-slide{transition:none;transform:none;}
}

/* Cinematic left-to-right + bottom gradient — text stays readable over any frame */
.hero-v3-overlay{
  position:absolute;inset:0;z-index:1;pointer-events:none;
  background:
    linear-gradient(90deg,rgba(8,31,26,.9) 0%,rgba(8,31,26,.76) 22%,rgba(8,31,26,.56) 45%,rgba(8,31,26,.42) 68%,rgba(8,31,26,.4) 88%,rgba(8,31,26,.46) 100%),
    linear-gradient(0deg,rgba(8,31,26,.6) 0%,rgba(8,31,26,.18) 30%);
}

.hero-v3-inner{position:relative;z-index:2;flex:1;display:flex;align-items:center;width:100%;padding-block:calc(90px + 2.5rem) 3rem;}
.hero-v3-content{max-width:600px;}
.hero-v3-eyebrow{
  color:var(--timber-300);margin-bottom:1.6rem;letter-spacing:.22em;
  opacity:.5;transform:translateY(8px);transition:opacity .35s var(--ease-out) .05s,transform .35s var(--ease-out) .05s;
}
.hero-v3-eyebrow::before{width:0;background:var(--timber-300);transition:width .35s var(--ease-out) .05s;}
body.hero-ready .hero-v3-eyebrow{opacity:1;transform:translateY(0);}
body.hero-ready .hero-v3-eyebrow::before{width:28px;}

.hero-v3-title{font-size:clamp(2.85rem,2rem + 3.6vw,5.25rem);line-height:.98;letter-spacing:-.02em;max-width:11ch;margin-bottom:1.5rem;color:var(--white);}
.hero-v3-title span{display:block;overflow:hidden;}
.hero-v3-title span i{
  display:block;font-style:normal;opacity:.5;transform:translateY(45%);
  transition:opacity .4s var(--ease-out),transform .4s var(--ease-out);
}
body.hero-ready .hero-v3-title .line-1 i{transition-delay:.1s;}
body.hero-ready .hero-v3-title .line-2 i{transition-delay:.16s;}
body.hero-ready .hero-v3-title .line-3 i{transition-delay:.22s;}
body.hero-ready .hero-v3-title span i{opacity:1;transform:translateY(0);}
.hero-v3-title .line-3 i{color:var(--timber-300);}

.hero-v3-copy{
  max-width:560px;color:rgba(250,248,242,.84);font-size:17px;line-height:1.72;margin-bottom:2.2rem;
  opacity:.5;transform:translateY(10px);transition:opacity .35s var(--ease-out) .26s,transform .35s var(--ease-out) .26s;
}
body.hero-ready .hero-v3-copy{opacity:1;transform:translateY(0);}

.hero-v3-ctas{
  display:flex;align-items:center;gap:1.4rem;flex-wrap:wrap;margin-bottom:2.8rem;
  opacity:.5;transform:translateY(8px);transition:opacity .3s var(--ease-out) .34s,transform .3s var(--ease-out) .34s;
}
body.hero-ready .hero-v3-ctas{opacity:1;transform:translateY(0);}
.hero-v3-cta-primary{height:58px;padding:0 30px;border-radius:4px;background:var(--timber-300);color:var(--forest-950);}
.hero-v3-cta-primary:hover{background:var(--timber-500);color:var(--white);transform:translateY(-2px);}
.hero-v3-cta-primary svg{transition:transform .28s var(--ease-out);}
.hero-v3-cta-primary:hover svg{transform:translateX(5px);}
.hero-v3-watch{display:flex;align-items:center;gap:.9rem;color:var(--white);}
.hero-v3-watch-circle{
  width:46px;height:46px;border-radius:50%;border:1px solid rgba(255,255,255,.55);color:var(--white);
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
  transition:transform .28s var(--ease-out),border-color .28s var(--ease-out),color .28s var(--ease-out);
}
.hero-v3-watch-circle svg{width:13px;height:13px;}
.hero-v3-watch:hover .hero-v3-watch-circle{transform:scale(1.08);border-color:var(--timber-300);color:var(--timber-300);}
.hero-v3-watch-label{font-size:.9rem;font-weight:600;position:relative;padding-bottom:.2rem;border-bottom:1px solid rgba(255,255,255,.35);}

.hero-v3-stats{display:flex;flex-wrap:wrap;gap:0;}
.hero-v3-stats .stat{
  padding-inline:1.25rem;border-left:1px solid rgba(255,255,255,.22);
  opacity:.5;transform:translateY(8px);transition:opacity .3s var(--ease-out),transform .3s var(--ease-out);
}
.hero-v3-stats .stat:first-child{padding-left:0;border-left:none;}
body.hero-ready .hero-v3-stats .stat{opacity:1;transform:translateY(0);}
body.hero-ready .hero-v3-stats .stat:nth-child(1){transition-delay:.4s;}
body.hero-ready .hero-v3-stats .stat:nth-child(2){transition-delay:.46s;}
body.hero-ready .hero-v3-stats .stat:nth-child(3){transition-delay:.52s;}
body.hero-ready .hero-v3-stats .stat:nth-child(4){transition-delay:.58s;}
.hero-v3-stats .stat b{display:block;font-family:var(--font-display);font-size:clamp(1.65rem,1.4rem + 1vw,2.15rem);color:var(--timber-300);margin-bottom:.3rem;}
.hero-v3-stats .stat span{font-size:.66rem;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.72);line-height:1.5;}

/* Floating origin/product panel */
.hero-v3-panel{
  position:relative;z-index:3;margin-top:2.2rem;width:auto;
  background:rgba(8,31,26,.82);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  border:1px solid rgba(250,190,167,.35);border-radius:20px;padding:1.3rem 1.4rem;
  box-shadow:0 20px 40px -22px rgba(0,0,0,.4);
  opacity:0;transform:translateY(20px);transition:opacity .6s var(--ease-out) 1.4s,transform .6s var(--ease-out) 1.4s;
}
body.hero-ready .hero-v3-panel{opacity:1;transform:translateY(0);}
.hero-v3-panel-grid{display:flex;align-items:stretch;gap:1.1rem;}
.hero-v3-panel-thumbs{display:flex;gap:.6rem;flex-shrink:0;}
.hero-v3-thumb{
  position:relative;display:block;width:88px;height:88px;border-radius:8px;overflow:hidden;flex-shrink:0;
  border:1px solid rgba(255,255,255,.18);
}
.hero-v3-thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.hero-v3-panel-text{color:var(--ivory);display:flex;flex-direction:column;justify-content:center;}
.hero-v3-panel-text .eyebrow{color:var(--timber-300);margin-bottom:.4rem;font-size:.66rem;}
.hero-v3-panel-text .eyebrow::before{background:var(--timber-300);}
.hero-v3-panel-text p{font-family:var(--font-display);font-size:1.3rem;line-height:1.26;color:var(--ivory);margin:0 0 .5rem;}
.hero-v3-panel-text .divider-h{display:block;width:32px;height:1px;background:var(--timber-300);}

/* Minimal scroll cue, centred at the base of the hero */
.hero-v3-scrollcue{
  position:absolute;left:50%;bottom:clamp(1.1rem,3vw,2rem);z-index:3;transform:translateX(-50%);
  display:flex;flex-direction:column;align-items:center;gap:.5rem;color:rgba(255,255,255,.72);
  opacity:0;transition:opacity .6s var(--ease-out) 1.7s;
}
body.hero-ready .hero-v3-scrollcue{opacity:1;}
.hero-v3-scrollcue-mouse{width:20px;height:32px;border:1.5px solid rgba(255,255,255,.6);border-radius:11px;display:flex;justify-content:center;padding-top:5px;flex-shrink:0;}
.hero-v3-scrollcue-mouse span{width:3px;height:6px;border-radius:2px;background:var(--timber-300);animation:heroScrollDot 2.2s ease-in-out infinite;}
.hero-v3-scrollcue-label{font-size:.6rem;letter-spacing:.16em;text-transform:uppercase;}
@media (prefers-reduced-motion: reduce){.hero-v3-scrollcue-mouse span{animation:none;}}

@media (min-width:901px){
  .hero-v3-panel{
    position:absolute;right:5%;bottom:7%;width:min(680px,45%);margin-top:0;
  }
  .hero-v3-scrollcue{display:flex;}
}
@media (min-width:901px) and (max-width:1300px){
  .hero-v3-content{max-width:520px;}
  .hero-v3-panel{width:min(560px,42%);right:4%;bottom:5.5%;}
  .hero-v3-thumb{width:74px;height:74px;}
}

@media (max-width:900px){
  .hero-v3-inner{padding-block:calc(90px + 2rem) 0;}
  .hero-v3-scrollcue{display:none;}
  .hero-v3-title{font-size:clamp(2.5rem,9vw,3.6rem);max-width:none;}
  .hero-v3-stats{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem 1rem;}
  .hero-v3-stats .stat{border-left:none;padding-left:0;}
  .hero-v3-panel{margin:2rem 0 3rem;border-radius:14px;}
}
@media (max-width:640px){
  .hero-v3-panel-grid{flex-direction:column;}
  .hero-v3-panel-thumbs{justify-content:space-between;}
  .hero-v3-thumb{width:30%;height:auto;aspect-ratio:1/1;}
}
@media (max-width:480px){
  .hero-v3-ctas{gap:1rem;flex-direction:column;align-items:flex-start;}
  .hero-v3-cta-primary{width:100%;justify-content:center;}
}

/* ============================================================
   Trust band (hero)
   ============================================================ */
.hero-v3-trust{background:var(--forest-900);position:relative;overflow:hidden;border-top-left-radius:64px;margin-top:-1px;}
.hero-v3-trust-bgart{position:absolute;inset:0;z-index:0;pointer-events:none;color:var(--timber-300);opacity:.05;}
.hero-v3-trust-bgart svg{width:100%;height:100%;}
.hero-v3-trust .container{position:relative;z-index:1;padding-block:2.7rem;}
.hero-v3-scroll{
  display:flex;align-items:center;gap:.7rem;margin-bottom:1.8rem;color:rgba(250,248,242,.55);
  font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;
}
.hero-v3-scroll .dot{width:6px;height:16px;border-radius:3px;background:var(--timber-300);animation:heroScrollDot 2.2s ease-in-out infinite;}
@keyframes heroScrollDot{0%,100%{opacity:1;transform:translateY(0);}50%{opacity:.4;transform:translateY(3px);}}
@media (prefers-reduced-motion: reduce){.hero-v3-scroll .dot{animation:none;}}
.hero-v3-scroll svg{transition:transform .25s var(--ease-out);}
.hero-v3-scroll:hover svg{transform:translateX(3px);}

.hero-v3-trust-row{display:grid;grid-template-columns:repeat(2,1fr);gap:1.6rem 1rem;}
.hero-v3-trust-item{display:flex;align-items:center;gap:1rem;padding-inline:1.2rem;border-left:1px solid rgba(255,255,255,.08);}
.hero-v3-trust-item:nth-child(odd){border-left:none;}
.hero-v3-trust-item svg{width:26px;height:26px;color:var(--timber-300);flex-shrink:0;}
.hero-v3-trust-item strong{display:block;font-size:.92rem;font-weight:700;color:var(--white);}
.hero-v3-trust-item span{display:block;font-size:.8rem;color:rgba(255,255,255,.55);}
@media (min-width:820px){
  .hero-v3-trust-row{grid-template-columns:repeat(4,1fr);}
  .hero-v3-trust-item:nth-child(odd){border-left:1px solid rgba(255,255,255,.08);}
  .hero-v3-trust-item:first-child{border-left:none;}
}

/* ============================================================
   Quality Band — light editorial transition (Hero → About)
   ============================================================ */
.quality-band{
  --qb-cream:#F7F3EA; --qb-ink:var(--forest-950); --qb-gold:var(--timber-700); --qb-gold-line:var(--timber-600);
  position:relative;overflow:hidden;isolation:isolate;z-index:0;
  background:var(--qb-cream);color:var(--qb-ink);
  padding-block:clamp(2.5rem,2rem + 2vw,3.75rem);
}
.quality-band-bg{
  position:absolute;inset:0;z-index:0;pointer-events:none;
  background-image:url('../img/below-hero.webp');
  background-size:cover;background-position:center;background-repeat:no-repeat;
  transform:scale(1.06);transition:opacity 1.2s var(--ease-out),transform 1.4s var(--ease-out);
}
.quality-band-bg.is-visible{transform:scale(1);}
@media (prefers-reduced-motion: reduce){
  .quality-band-bg{transition-duration:.01ms;transform:none !important;}
}
.quality-band-bg::after{
  content:'';position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(247,243,234,.97) 0%,rgba(247,243,234,.94) 32%,rgba(247,243,234,.82) 56%,rgba(247,243,234,.55) 80%,rgba(247,243,234,.28) 100%);
}
.quality-band-inner{position:relative;z-index:1;}

.quality-band-top{display:grid;gap:clamp(1.75rem,1.4rem + 1.8vw,3rem);align-items:center;margin-bottom:clamp(1.75rem,1.4rem + 1.8vw,3rem);}
.quality-band-copy{max-width:480px;}
.quality-band-eyebrow{color:var(--forest-800);}
.quality-band-eyebrow::before{background:var(--qb-gold-line);width:0;transition:width .6s var(--ease-out) .1s;}
.quality-band-eyebrow.is-visible::before{width:28px;}

.quality-band-heading{font-family:var(--font-display);font-weight:600;font-size:clamp(2rem,1.5rem + 2.4vw,3.1rem);line-height:1.12;letter-spacing:-.01em;margin:0 0 1.3rem;}
.quality-band-line{display:block;color:var(--qb-ink);}
.quality-band-line-gold{color:var(--qb-gold);}

.quality-band-desc{max-width:44ch;color:var(--charcoal-60);font-size:1rem;line-height:1.75;margin:0 0 2rem;}

.quality-band-actions{display:flex;align-items:center;flex-wrap:wrap;gap:1.1rem;}
.quality-band-btn{height:54px;padding:0 1.7rem;transition:background .3s var(--ease-out),color .3s var(--ease-out),transform .3s var(--ease-out),box-shadow .3s var(--ease-out);}
.quality-band-btn:hover{transform:translateY(-2px);box-shadow:0 16px 30px -14px rgba(237,28,36,.45);}
.quality-band-btn-ghost{height:54px;padding:0 1.5rem;border-color:rgba(237,28,36,.4);transition:background .3s var(--ease-out),border-color .3s var(--ease-out),transform .3s var(--ease-out);}
.quality-band-btn-ghost:hover{background:rgba(237,28,36,.08);border-color:var(--qb-gold-line);transform:translateY(-2px);}

.quality-band-features{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem 1.5rem;}
.quality-band-feature{position:relative;padding-inline:0;border-radius:10px;transition:transform .35s var(--ease-out);}
.quality-band-feature:hover,.quality-band-feature:focus-within{transform:translateY(-4px);}
.quality-band-feature-icon{
  width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:1rem;
  background:var(--white);border:1px solid rgba(237,28,36,.4);color:var(--qb-gold);
  box-shadow:0 8px 18px -12px rgba(237,28,36,.22);
  transition:transform .35s var(--ease-out),background .35s var(--ease-out),border-color .35s var(--ease-out),box-shadow .35s var(--ease-out);
}
.quality-band-feature:hover .quality-band-feature-icon,.quality-band-feature:focus-within .quality-band-feature-icon{
  transform:scale(1.08);background:rgba(237,28,36,.1);border-color:var(--qb-gold);
  box-shadow:0 12px 22px -12px rgba(237,28,36,.32);
}
.quality-band-feature-icon svg{width:22px;height:22px;transition:transform .35s var(--ease-out);}
.quality-band-feature:hover .quality-band-feature-icon svg{transform:scale(1.05);}
.quality-band-feature b{display:block;font-family:var(--font-body);font-weight:700;font-size:.98rem;color:var(--qb-ink);margin-bottom:.4rem;transition:color .3s var(--ease-out);}
.quality-band-feature:hover b{color:var(--qb-gold);}
.quality-band-feature p{margin:0;font-size:.85rem;line-height:1.55;color:var(--charcoal-60);max-width:22ch;}
@media (prefers-reduced-motion: reduce){
  .quality-band-feature,.quality-band-feature-icon,.quality-band-feature-icon svg,.quality-band-btn,.quality-band-btn-ghost{transition:none !important;}
  .quality-band-feature:hover,.quality-band-btn:hover,.quality-band-btn-ghost:hover{transform:none !important;}
}

.quality-band-bottom{
  display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1.6rem 2rem;
  padding-top:clamp(1.8rem,1.4rem + 1.5vw,2.4rem);border-top:1px solid rgba(28,36,32,.12);
}
.quality-band-stats{display:flex;flex-wrap:wrap;gap:0;}
.quality-band-stats .stat{padding-inline:1.4rem;border-left:1px solid rgba(28,36,32,.14);}
.quality-band-stats .stat:first-child{padding-left:0;border-left:none;}
.quality-band-stats .stat b{display:block;font-family:var(--font-display);font-weight:600;font-size:clamp(1.65rem,1.4rem + 1vw,2.15rem);color:var(--qb-gold);margin-bottom:.3rem;}
.quality-band-stats .stat span{font-size:.66rem;letter-spacing:.08em;text-transform:uppercase;color:var(--charcoal-60);line-height:1.5;}

.quality-band-tagline{
  position:relative;margin:0;padding-left:2.4rem;
  font-size:.76rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--forest-800);
}
.quality-band-tagline::before{
  content:'';position:absolute;left:0;top:50%;width:32px;height:1px;background:var(--qb-gold-line);
  transform:scaleX(0);transform-origin:left;transition:transform .6s var(--ease-out) .15s;
}
.quality-band-tagline.is-visible::before{transform:scaleX(1);}

@media (max-width:1099px){
  .quality-band-top{grid-template-columns:1fr;}
}
@media (min-width:1100px){
  .quality-band-top{grid-template-columns:minmax(360px,460px) 1fr;}
  .quality-band-features{grid-template-columns:repeat(4,1fr);gap:0;}
  .quality-band-feature{padding-inline:1.4rem;border-left:1px solid rgba(28,36,32,.1);}
  .quality-band-feature:first-child{padding-left:0;border-left:none;}
}
@media (max-width:640px){
  .quality-band-bg{background-position:center 30%;}
  .quality-band-bg::after{
    background:linear-gradient(180deg,rgba(247,243,234,.97) 0%,rgba(247,243,234,.95) 60%,rgba(247,243,234,.9) 100%);
  }
  .quality-band-actions{flex-direction:column;align-items:stretch;}
  .quality-band-btn,.quality-band-btn-ghost{width:100%;justify-content:center;}
  .quality-band-stats{width:100%;justify-content:space-between;}
  .quality-band-stats .stat{flex:0 0 46%;padding-left:0;border-left:none;margin-bottom:1rem;}
  .quality-band-tagline{padding-left:0;text-align:left;}
  .quality-band-tagline::before{display:none;}
  .quality-band-bottom{flex-direction:column;align-items:flex-start;}
}

/* ============================================================
   About V5 — reference-matched dark forest editorial
   ============================================================ */
.about-v5{
  --v5-deep:var(--forest-900);
  --v5-deep-2:var(--forest-800);
  --v5-panel:rgba(14,43,36,.86);
  --v5-gold:var(--timber-600);
  --v5-gold-soft:var(--timber-300);
  --v5-text:var(--sand-50);
  --v5-muted:rgba(253,245,242,.72);
  --v5-line:rgba(253,245,242,.16);
  background:var(--v5-deep);color:var(--v5-text);position:relative;overflow:hidden;
  padding-block:clamp(3rem,2.4rem + 3vw,5rem);
}
.about-v5-bg{
  position:absolute;inset:-4% 0;z-index:0;pointer-events:none;will-change:transform;
  background-image:
    linear-gradient(180deg,rgba(8,31,26,.82) 0%,rgba(8,31,26,.62) 30%,rgba(8,31,26,.66) 65%,rgba(8,31,26,.88) 100%),
    url('../img/about-bg.webp');
  background-size:cover;background-position:center;background-repeat:no-repeat;
}
.about-v5 .container{max-width:1480px;}

.about-v5-decor{position:absolute;inset:0;z-index:2;pointer-events:none;overflow:hidden;}
/* Circular seal badges (SVG textPath) — one readability treatment for every seal.
   Warm-cream lettering + ring on a soft, blurred dark disc so the curved text
   stays legible over busy photos. Text sits in one concentric band (r 51–58)
   inside the r62 ring. */
.about-v5-seal,.products-v3-seal,.network-v3-seal,.process-v3-seal,.cta-v3-seal{
  --seal-cream:#F5E7C8;
  color:var(--seal-cream);border-radius:50%;
  background:rgba(8,20,24,.42);
  -webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);
  box-shadow:0 6px 22px rgba(0,0,0,.18);
}
/* Seals on light (cream) sections need a denser disc — 0.42 reads as flat grey there */
.products-v3-seal,.process-v3-seal{background:rgba(8,20,24,.62);}
.seal-text{
  fill:var(--seal-cream,#F5E7C8);
  font-family:var(--font-body);font-size:10.5px;font-weight:700;letter-spacing:1.15px;
  text-shadow:0 1px 2px rgba(0,0,0,.9),0 2px 6px rgba(0,0,0,.65);
  paint-order:stroke fill;stroke:rgba(0,0,0,.45);stroke-width:.9px;stroke-linejoin:round;
  text-rendering:geometricPrecision;
}
.seal-ring-line{stroke-width:1.8;stroke-opacity:1;}

.about-v5-seal{position:absolute;top:5%;right:5%;width:124px;height:124px;}
.about-v5-seal-ring{position:absolute;inset:0;width:100%;height:100%;animation:v5SealSpin 60s linear infinite;}
@keyframes v5SealSpin{to{transform:rotate(360deg);}}
.about-v5-seal-leaf{position:absolute;inset:0;margin:auto;width:22px;height:22px;color:inherit;}
/* Desktop: the editorial word-stack owns the top-right corner, so the seal sits
   just beneath it, right-aligned with the container, instead of overlapping it. */
@media (min-width:960px){
  .about-v5-seal{top:344px;right:calc(max(0px,(100vw - 1480px) / 2) + 50px);}
}
@media (min-width:960px) and (max-width:1180px){
  .about-v5-seal{width:100px;height:100px;}
}

.about-v5-grid{position:relative;z-index:1;display:grid;gap:clamp(2.5rem,4vw,3.5rem);}

/* -- Copy column -- */
.about-v5-tag{
  display:inline-flex;align-items:center;gap:.7em;margin:0 0 1.4rem;
  font-size:.75rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--v5-gold-soft);
  opacity:0;transform:translateY(15px);transition:opacity .7s var(--ease-out) .05s,transform .7s var(--ease-out) .05s;
}
.about-v5-tag::before{content:'';width:28px;height:1px;background:var(--v5-gold);flex-shrink:0;transform:scaleX(0);transform-origin:left;transition:transform .6s var(--ease-out) .3s;}
.about-v5-tag.is-visible{opacity:1;transform:translateY(0);}
.about-v5-tag.is-visible::before{transform:scaleX(1);}

.about-v5-heading{
  font-family:var(--font-display);font-weight:600;font-size:clamp(2.1rem,1.5rem + 2.8vw,3.4rem);
  line-height:1.1;letter-spacing:-.01em;color:var(--v5-text);margin:0 0 1.4rem;
}
.about-v5-line{display:block;overflow:hidden;white-space:nowrap;}
.about-v5-line i{
  display:block;font-style:normal;transform:translateY(38px);opacity:0;
  transition:transform .7s var(--ease-out),opacity .7s var(--ease-out);
}
.about-v5-line[data-reveal]{transition-delay:calc(.12s + var(--stagger,0) * 100ms);}
.about-v5-line.is-visible i{transform:translateY(0);opacity:1;transition-delay:calc(.12s + var(--stagger,0) * 100ms);}
.about-v5-line-gold i{color:var(--v5-gold-soft);}

.about-v5-desc{
  color:var(--v5-muted);max-width:46ch;font-size:1.02rem;line-height:1.8;margin:0 0 2.2rem;
  opacity:0;transform:translateY(20px);transition:opacity .7s var(--ease-out) .2s,transform .7s var(--ease-out) .2s;
}
.about-v5-desc.is-visible{opacity:1;transform:translateY(0);}

.about-v5-actions{display:flex;align-items:center;flex-wrap:wrap;gap:1.6rem;}
.about-v5-btn-primary[data-reveal],.about-v5-btn-ghost[data-reveal]{
  opacity:0;transform:translateY(15px);transition:opacity .6s var(--ease-out),transform .6s var(--ease-out);
}
.about-v5-btn-primary.is-visible,.about-v5-btn-ghost.is-visible{opacity:1;transform:translateY(0);}
.about-v5-btn-primary[data-reveal]{transition-delay:.28s;}
.about-v5-btn-ghost[data-reveal]{transition-delay:.34s;}

.about-v5-btn-primary{
  display:inline-flex;align-items:center;gap:.7rem;height:54px;padding:0 1.8rem;border-radius:4px;
  background:var(--v5-gold);color:#fff;font-size:.85rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;
  transition:background .3s var(--ease-out),transform .3s var(--ease-out),box-shadow .3s var(--ease-out);
}
.about-v5-btn-primary svg{transition:transform .3s var(--ease-out);}
.about-v5-btn-primary:hover{
  transition:background .3s var(--ease-out),transform .3s var(--ease-out),box-shadow .3s var(--ease-out);
  background:var(--v5-gold-soft);transform:translateY(-2px);box-shadow:0 16px 30px -14px rgba(250,190,167,.55);
}
.about-v5-btn-primary:hover svg{transform:translateX(5px);}
.about-v5-btn-primary:focus-visible,.about-v5-btn-ghost:focus-visible{outline:2px solid var(--v5-gold-soft);outline-offset:3px;}
.about-v5-btn-ghost{
  display:inline-flex;align-items:center;gap:.9rem;background:none;border:none;cursor:pointer;padding:0;
  color:var(--v5-text);font-size:.9rem;font-weight:600;font-family:var(--font-body);
}
.about-v5-play{
  position:relative;width:46px;height:46px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;
  border:1px solid rgba(253,245,242,.35);color:var(--v5-gold-soft);
  transition:transform .3s var(--ease-out),border-color .3s var(--ease-out),background .3s var(--ease-out);
}
.about-v5-play::after{
  content:'';position:absolute;inset:-5px;border-radius:50%;border:1px solid var(--v5-gold);
  opacity:0;transform:scale(.8);transition:opacity .4s var(--ease-out),transform .4s var(--ease-out);
}
.about-v5-play svg{width:14px;height:14px;transition:transform .3s var(--ease-out);}
.about-v5-btn-ghost:hover .about-v5-play{transform:scale(1.08);border-color:var(--v5-gold);background:rgba(237,28,36,.14);}
.about-v5-btn-ghost:hover .about-v5-play::after{opacity:1;transform:scale(1.18);}
.about-v5-btn-ghost:hover .about-v5-play svg{transform:translateX(2px);}

/* -- Visual column -- */
.about-v5-visual{position:relative;opacity:0;transform:translateY(30px);transition:opacity .9s var(--ease-out),transform .9s var(--ease-out);}
.about-v5-visual.is-visible{opacity:1;transform:translateY(0);}
.about-v5-visual::before{
  content:'';position:absolute;inset:-8%;z-index:-1;pointer-events:none;
  background:radial-gradient(closest-side,rgba(237,28,36,.2),transparent 72%);filter:blur(22px);
}
.about-v5-frame{
  position:relative;aspect-ratio:4/4;overflow:hidden;
  border-radius:64px;
  border:1px solid rgba(237,28,36,.4);
  box-shadow:0 40px 80px -30px rgba(0,0,0,.65);
  clip-path:inset(0 100% 0 0);
  transition:clip-path 1.1s var(--ease-out),box-shadow .4s var(--ease-out);
}
.about-v5-visual.is-visible .about-v5-frame{clip-path:inset(0 0 0 0);}
.about-v5-frame:hover{box-shadow:0 48px 90px -28px rgba(0,0,0,.72),0 0 0 1px rgba(237,28,36,.3);}
.about-v5-frame img{width:100%;height:100%;object-fit:cover;transform:scale(1.08);transition:transform 1.1s var(--ease-out);}
.about-v5-visual.is-visible .about-v5-frame img{transform:scale(1);}
.about-v5-frame:hover img{transform:scale(1.035);}
.about-v5-frame::after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(200deg,rgba(8,31,26,0) 45%,rgba(8,31,26,.55) 100%);}

.about-v5-stats{position:absolute;right:-6%;bottom:5%;width:74%;z-index:2;display:flex;flex-direction:column;gap:.85rem;}
.about-v5-stat[data-reveal]{opacity:0;transform:translateX(35px);transition:opacity .6s var(--ease-out),transform .6s var(--ease-out);}
.about-v5-stat[data-reveal]{transition-delay:calc(1s + var(--stagger,0) * 130ms);}
.about-v5-stat.is-visible{opacity:1;transform:translateX(0);}
.about-v5-stat{
  display:flex;align-items:center;gap:.9rem;
  padding:.85rem 1.3rem;border-radius:12px;
  background:var(--v5-panel);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
  border:1px solid rgba(237,28,36,.45);
  box-shadow:0 14px 30px -16px rgba(0,0,0,.55);
  transition:transform .35s var(--ease-out),border-color .35s var(--ease-out),box-shadow .35s var(--ease-out);
}
.about-v5-stat:hover{
  transition:transform .35s var(--ease-out),border-color .35s var(--ease-out),box-shadow .35s var(--ease-out);
  transform:translateX(-5px);border-color:rgba(237,28,36,.8);box-shadow:0 18px 36px -16px rgba(0,0,0,.6);
}
.about-v5-stat b{flex-shrink:0;min-width:2.1ch;font-family:var(--font-display);font-weight:600;font-size:clamp(1.6rem,1.3rem + 1vw,2.1rem);color:var(--v5-gold-soft);}
.about-v5-stat-divider{flex-shrink:0;width:1px;align-self:stretch;background:rgba(253,245,242,.25);}
.about-v5-stat-label{flex:1;font-size:.82rem;font-weight:500;color:rgba(253,245,242,.94);line-height:1.4;min-width:0;}
.about-v5-stat-icon{
  flex-shrink:0;width:26px;height:26px;color:var(--v5-gold);display:flex;
  opacity:0;transform:scale(.8);
  transition:opacity .5s var(--ease-out) .15s,transform .35s var(--ease-out);
}
.about-v5-stat.is-visible .about-v5-stat-icon{opacity:1;transform:scale(1);}
.about-v5-stat:hover .about-v5-stat-icon{transition:transform .35s var(--ease-out);transform:scale(1.08) rotate(6deg);}
.about-v5-stat-icon svg{width:100%;height:100%;}

/* -- Editorial column -- */
.about-v5-editorial{
  align-self:start;padding-top:.4rem;text-align:left;color:var(--v5-text);
  opacity:0;transition:opacity .7s var(--ease-out) .6s;
}
.about-v5-editorial.is-visible{opacity:1;}
.about-v5-editorial p{
  margin:.9rem 0;font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;line-height:1.9;color:rgba(253,245,242,.85);
}
.about-v5-editorial-line{display:block;width:26px;height:1px;background:var(--v5-gold);transform:scaleX(0);transform-origin:left;transition:transform .6s var(--ease-out) .8s;}
.about-v5-editorial.is-visible .about-v5-editorial-line{transform:scaleX(1);}

@media (min-width:960px){
  .about-v5-grid{grid-template-columns:1fr 1.08fr .34fr;align-items:start;}
}
@media (min-width:1100px){
  .about-v5-frame{aspect-ratio:4/4.15;}
}

/* -- Bottom: values row + footer -- */
.about-v5-bottom{position:relative;z-index:1;margin-top:clamp(2rem,1.6rem + 2vw,3.25rem);}
.about-v5-values{display:flex;flex-wrap:wrap;gap:1.6rem 0;padding-bottom:clamp(2rem,1.6rem + 2vw,3rem);border-bottom:1px solid rgba(253,245,242,.14);}
.about-v5-value{
  position:relative;display:flex;align-items:center;gap:1rem;flex:1 1 240px;padding-inline:1.6rem;
  opacity:0;transform:translateY(20px);transition:opacity .6s var(--ease-out),transform .6s var(--ease-out);
}
.about-v5-value[data-reveal]{transition-delay:calc(var(--stagger,0) * 100ms);}
.about-v5-value.is-visible{opacity:1;transform:translateY(0);}
.about-v5-value:first-child{padding-left:0;}
.about-v5-value::before{
  content:'';position:absolute;left:0;top:8%;bottom:8%;width:1px;background:rgba(253,245,242,.18);
  transform:scaleY(0);transition:transform .6s var(--ease-out) .2s;
}
.about-v5-value:first-child::before{display:none;}
.about-v5-value.is-visible::before{transform:scaleY(1);}
.about-v5-value-icon{
  flex-shrink:0;width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  border:1px solid var(--v5-gold);color:var(--v5-gold);
  transform:scale(.85);transition:transform .5s var(--ease-out) .1s;
}
.about-v5-value.is-visible .about-v5-value-icon{transform:scale(1);}
.about-v5-value:hover .about-v5-value-icon{transform:scale(1.08);background:rgba(237,28,36,.1);}
.about-v5-value-icon svg{width:22px;height:22px;}
.about-v5-value-text b{display:block;font-family:var(--font-display);font-weight:600;font-size:1.05rem;color:var(--v5-gold-soft);margin-bottom:.25rem;}
.about-v5-value-text p{margin:0;font-size:.84rem;line-height:1.5;color:rgba(253,245,242,.75);max-width:22ch;}

.about-v5-footer{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:1.5rem;padding-top:clamp(1.5rem,1.2rem + 1.5vw,2.2rem);}
.about-v5-brandline{
  position:relative;margin:0;padding-left:2.2rem;
  font-size:.74rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:rgba(253,245,242,.75);
  opacity:0;transform:translateY(12px);transition:opacity .6s var(--ease-out),transform .6s var(--ease-out);
}
.about-v5-brandline::before{
  content:'';position:absolute;left:0;top:50%;width:28px;height:1px;background:var(--v5-gold);
  transform:scaleX(0);transform-origin:left;transition:transform .6s var(--ease-out) .3s;
}
.about-v5-brandline.is-visible{opacity:1;transform:translateY(0);}
.about-v5-brandline.is-visible::before{transform:scaleX(1);}

.about-v5-script{
  margin:0;text-align:right;font-family:var(--font-display);font-style:italic;font-weight:500;
  font-size:clamp(1.1rem,.9rem + 1vw,1.5rem);line-height:1.3;color:var(--v5-gold-soft);opacity:0;
  transform:translateY(14px) rotate(-2deg);transition:opacity .7s var(--ease-out) .1s,transform .7s var(--ease-out) .1s;
}
.about-v5-script.is-visible{opacity:.85;transform:translateY(0) rotate(-2deg);}

@media (max-width:959px){
  .about-v5-editorial{display:none;}
  .about-v5-seal{width:108px;height:108px;top:3%;right:4%;}
  .about-v5-frame{border-radius:44px;}
  .about-v5-stats{position:static;width:100%;margin-top:1.4rem;}
  .about-v5-stat{flex-wrap:wrap;}
}

@media (max-width:640px){
  .about-v5-seal{display:none;}
  .about-v5-frame{border-radius:32px;}
  .about-v5-line{white-space:normal;}
  .about-v5-values{flex-direction:column;gap:1.6rem;}
  .about-v5-value{padding-inline:0;}
  .about-v5-value::before{display:none;}
  .about-v5-footer{align-items:flex-start;}
  .about-v5-script{text-align:left;}
}

@media (prefers-reduced-motion: reduce){
  .about-v5-seal-ring{animation:none;}
  .about-v5-tag,.about-v5-line i,.about-v5-desc,.about-v5-btn-primary[data-reveal],.about-v5-btn-ghost[data-reveal],
  .about-v5-value,.about-v5-visual,.about-v5-frame,.about-v5-frame img,.about-v5-stat,.about-v5-stat-icon,
  .about-v5-editorial,.about-v5-editorial-line,.about-v5-brandline,.about-v5-script{transition-duration:.01ms !important;}
  .about-v5-frame{clip-path:inset(0 0 0 0) !important;}
}

/* ============================================================
   Products V3 — editorial product showcase (reference/productsection)
   ============================================================ */
.products-v3{
  --pv3-bg:#F5F1E8;
  --pv3-dark:var(--forest-900);
  --pv3-brown:var(--timber-700);
  --pv3-bronze:var(--timber-600);
  --pv3-body:#666666;
  --pv3-line:#D8CEC0;
  background:linear-gradient(180deg,rgba(245,241,232,.55) 0%,rgba(245,241,232,.4) 40%,rgba(245,241,232,.8) 100%),var(--pv3-bg) url('../img/product-bg.webp') center top / cover no-repeat;
  position:relative;overflow:hidden;
  padding-block:clamp(3rem,2.4rem + 3vw,4.75rem);
}
.products-v3-decor{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden;}
.products-v3-seal{position:absolute;top:16px;right:6%;width:112px;height:112px;}
.products-v3-seal svg{width:100%;height:100%;}
.products-v3-script{
  position:absolute;right:6%;bottom:6%;z-index:1;margin:0;text-align:right;
  font-family:var(--font-display);font-style:italic;font-weight:500;
  font-size:clamp(1.05rem,.88rem + .9vw,1.45rem);line-height:1.3;color:var(--charcoal-60);opacity:.55;
  transform:rotate(-3deg);pointer-events:none;
}

.products-v3-inner{position:relative;z-index:2;}

/* -- Head -- */
.products-v3-head{display:grid;gap:2rem;margin-bottom:clamp(2.5rem,2rem + 2.5vw,4rem);}
.products-v3-head-left .eyebrow{margin-bottom:.9rem;}
.products-v3-heading{
  font-size:clamp(2.35rem,1.85rem + 2.6vw,3.4rem);line-height:1.05;letter-spacing:-.01em;margin:0 0 .9rem;
}
.products-v3-heading .line-dark{display:block;color:var(--forest-950);}
.products-v3-heading .line-brown{display:block;color:var(--pv3-brown);}
.products-v3-tagline{margin:0;font-size:.78rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--pv3-body);}

.products-v3-head-right{position:relative;padding-left:1.6rem;max-width:520px;}
.products-v3-head-right::before{content:'';position:absolute;left:0;top:.15rem;bottom:.15rem;width:1px;background:var(--pv3-bronze);}
.products-v3-lead{margin:0 0 1.6rem;color:var(--pv3-body);font-size:1.02rem;line-height:1.75;}
.products-v3-cta{height:52px;padding:0 1.7rem;border-radius:4px;background:var(--pv3-dark);color:#faf8f2;}
.products-v3-cta:hover{background:var(--forest-800);transform:translateY(-2px);}

@media (min-width:860px){
  .products-v3-head{grid-template-columns:1.05fr 1fr;align-items:end;}
}

/* -- Product grid + cards -- */
.products-v3-grid{display:grid;gap:1.7rem;margin-bottom:clamp(3rem,2.4rem + 3vw,4.5rem);}
@media (min-width:640px) and (max-width:767px){.products-v3-grid{grid-template-columns:repeat(2,1fr);}}
@media (min-width:768px){.products-v3-grid{grid-template-columns:repeat(2,1fr);}}

.products-v3-card{height:100%;}
.products-v3-card[data-reveal]{opacity:0;transform:translateY(45px);transition:opacity .75s var(--ease-out),transform .75s var(--ease-out);}
.products-v3-card.is-visible{opacity:1;transform:translateY(0);}
.products-v3-card-link{
  position:relative;display:flex;flex-direction:column;height:100%;color:inherit;text-decoration:none;border-radius:14px;
  box-shadow:0 1px 2px rgba(14,43,36,.06);
  transition:transform .45s var(--ease-out),box-shadow .45s var(--ease-out);
}
.products-v3-card-link:hover{transform:translateY(-4px);box-shadow:0 26px 48px -22px rgba(14,43,36,.32);}
.products-v3-card-link:focus-visible{outline:2px solid var(--pv3-bronze);outline-offset:3px;border-radius:14px;}

.products-v3-card-media{position:relative;flex-shrink:0;aspect-ratio:4/3;overflow:hidden;border-radius:14px 14px 0 0;background:var(--pv3-dark);}
.products-v3-card-media img{
  width:100%;height:100%;object-fit:cover;display:block;
  transform:scale(1.06);transition:transform .9s var(--ease-out);
}
.products-v3-card.is-visible .products-v3-card-media img{transform:scale(1);}
.products-v3-card.is-visible .products-v3-card-link:hover .products-v3-card-media img{transform:scale(1.045);}
.products-v3-card-media::after{
  content:'';position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(180deg,rgba(8,31,26,.55) 0%,rgba(8,31,26,0) 32%,rgba(8,31,26,0) 68%,rgba(8,31,26,.18) 100%);
}

.products-v3-card-num{position:absolute;left:1.7rem;top:1.5rem;z-index:1;display:flex;align-items:center;gap:.65rem;}
.products-v3-card-num b{
  font-family:var(--font-display);font-weight:600;font-size:2.3rem;line-height:1;
  color:var(--timber-300);text-shadow:0 2px 10px rgba(0,0,0,.4);
}
.products-v3-card-num i{
  display:block;width:32px;height:1px;background:var(--timber-300);font-style:normal;
  transform:scaleX(0);transform-origin:left;transition:transform .6s var(--ease-out) .3s;
}
.products-v3-card.is-visible .products-v3-card-num i{transform:scaleX(1);}

.products-v3-card-tag{
  position:absolute;right:1.6rem;top:1.7rem;z-index:1;margin:0;max-width:9.5em;text-align:right;
  color:#fff;font-size:.64rem;font-weight:600;letter-spacing:.13em;text-transform:uppercase;line-height:1.6;
  text-shadow:0 1px 6px rgba(0,0,0,.5);
}

.products-v3-card-icon{
  position:absolute;right:1.7rem;bottom:20px;transform:translateY(50%);z-index:3;
  width:64px;height:64px;border-radius:50%;flex-shrink:0;
  background:var(--pv3-bronze);border:2px solid rgba(250,248,242,.85);color:#faf8f2;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 12px 26px -12px rgba(14,43,36,.55);
  transition:transform .4s var(--ease-out);
}
.products-v3-card-icon svg{width:25px;height:25px;}
.products-v3-card-link:hover .products-v3-card-icon{transform:translateY(50%) translateY(-5px) scale(1.05) rotate(4deg);}

.products-v3-card-panel{
  position:relative;flex:1;display:flex;flex-direction:column;
  background:var(--pv3-dark);color:#faf8f2;overflow:hidden;
  padding:2.6rem 1.8rem 1.8rem;border-radius:0 0 14px 14px;
}
.products-v3-card-panel::before{
  content:'';position:absolute;inset:0;opacity:.05;pointer-events:none;mix-blend-mode:overlay;
  background-image:repeating-radial-gradient(circle at 88% 8%,transparent 0 16px,rgba(255,255,255,.6) 16px 17px,transparent 17px 32px,rgba(255,255,255,.6) 32px 33px,transparent 33px 48px,rgba(255,255,255,.6) 48px 49px,transparent 49px 64px);
}
.products-v3-card-panel h3{position:relative;flex-shrink:0;font-family:var(--font-display);font-size:1.55rem;color:#faf8f2;margin:0 0 .6rem;}
.products-v3-card-panel p{position:relative;flex:1;color:rgba(250,248,242,.72);font-size:.92rem;line-height:1.65;margin:0 0 1.5rem;max-width:32ch;}
.products-v3-explore{
  position:relative;display:inline-flex;align-items:center;gap:.5rem;color:var(--pv3-bronze);
  font-size:.78rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
  transition:color .3s var(--ease-out);
}
.products-v3-explore svg{width:14px;height:14px;transition:transform .3s var(--ease-out);}
.products-v3-card-link:hover .products-v3-explore{color:var(--timber-300);}
.products-v3-card-link:hover .products-v3-explore svg{transform:translateX(6px);}

/* -- Benefits row -- */
.products-v3-benefits{
  display:flex;flex-wrap:wrap;gap:1.6rem 1rem;
  padding-top:clamp(1.8rem,1.4rem + 1.5vw,2.6rem);border-top:1px solid var(--pv3-line);
}
.products-v3-benefit{display:flex;align-items:center;gap:.9rem;padding-inline:1.4rem;border-left:1px solid var(--pv3-line);flex:1 1 200px;}
.products-v3-benefit:first-child{border-left:none;padding-left:0;}
.products-v3-benefit-icon{
  width:44px;height:44px;border-radius:50%;flex-shrink:0;
  display:flex;align-items:center;justify-content:center;
  border:1px solid var(--pv3-brown);color:var(--pv3-brown);
  transform:scale(.9);transition:transform .5s var(--ease-out);
}
.products-v3-benefit.is-visible .products-v3-benefit-icon{transform:scale(1);}
.products-v3-benefit-icon svg{width:19px;height:19px;}
.products-v3-benefit span:last-child{font-size:.76rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--forest-950);line-height:1.4;}

@media (max-width:1099px){
  .products-v3-seal{display:none;}
}
@media (max-width:900px){
  .products-v3-script{display:none;}
}
@media (max-width:639px){
  .products-v3-grid{grid-template-columns:1fr;}
  .products-v3-card-num b{font-size:1.95rem;}
  .products-v3-benefits{gap:1.4rem;}
  .products-v3-benefit{flex:1 1 42%;border-left:none;padding-left:0;}
}

@media (prefers-reduced-motion: reduce){
  .products-v3-card[data-reveal],.products-v3-card-media img,.products-v3-card-num i,.products-v3-benefit-icon{transition-duration:.01ms !important;}
}

/* ============================================================
   Global Network V3 — cinematic reference-matched network map
   ============================================================ */
.network-v3{
  --v5-deep:var(--forest-900); --v5-gold:var(--timber-600); --v5-gold-soft:var(--timber-300);
  --v5-text:var(--sand-50); --v5-muted:rgba(253,245,242,.72); --v5-line:rgba(253,245,242,.16);
  position:relative;overflow:hidden;isolation:isolate;
  background:var(--forest-950);color:var(--white);
  padding-block:clamp(3rem,2.4rem + 3vw,5rem);
}
.network-v3 h1,.network-v3 h2,.network-v3 h3,.network-v3 h4,
.cta-v3 h1,.cta-v3 h2,.cta-v3 h3,.cta-v3 h4,
.cta-v2 h1,.cta-v2 h2,.cta-v2 h3,.cta-v2 h4{color:var(--white);}

.network-v3-bg{
  position:absolute;inset:-4% 0;z-index:0;pointer-events:none;will-change:transform;
  background-image:
    linear-gradient(180deg,rgba(8,31,26,.72) 0%,rgba(8,31,26,.58) 32%,rgba(8,31,26,.64) 68%,rgba(8,31,26,.82) 100%),
    url('../img/network-bg.webp');
  background-size:cover;background-position:center;background-repeat:no-repeat;
}
.network-v3 .container{max-width:1480px;position:relative;z-index:2;}

.network-v3-decor{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden;}
.network-v3-seal{position:absolute;top:6%;right:6.5%;width:116px;height:116px;}
.network-v3-seal-ring{position:absolute;inset:0;width:100%;height:100%;animation:nwSealSpin 65s linear infinite;}
@keyframes nwSealSpin{to{transform:rotate(360deg);}}
.network-v3-seal-leaf{position:absolute;inset:0;margin:auto;width:20px;height:20px;color:inherit;}
.network-v3-log{
  position:absolute;right:-3%;bottom:-5%;width:220px;height:220px;object-fit:cover;border-radius:50%;
  opacity:.9;box-shadow:0 30px 70px -20px rgba(0,0,0,.75);
  -webkit-mask-image:linear-gradient(115deg,transparent 8%,#000 42%);mask-image:linear-gradient(115deg,transparent 8%,#000 42%);
}
.network-v3-script{
  position:absolute;right:6.5%;bottom:14%;margin:0;text-align:right;font-family:var(--font-display);font-style:italic;font-weight:500;
  font-size:clamp(1.05rem,.85rem + 1vw,1.4rem);line-height:1.3;color:var(--v5-gold-soft);opacity:0;
  transform:translateY(14px) rotate(-2deg);transition:opacity .7s var(--ease-out) .1s,transform .7s var(--ease-out) .1s;
}
.network-v3-script.is-visible{opacity:.85;transform:translateY(0) rotate(-2deg);}

/* -- Copy column -- */
.network-v3-grid{position:relative;z-index:2;display:grid;gap:var(--space-lg);align-items:center;}
.network-v3-copy p{color:var(--v5-muted);margin-block:1.3rem 1.9rem;max-width:38em;line-height:1.75;}
.network-v3-heading{
  font-family:var(--font-display);font-weight:700;font-size:clamp(2.3rem,1.6rem + 3.2vw,3.9rem);
  line-height:1.08;letter-spacing:-.01em;margin:.9rem 0 0;color:var(--v5-text);
}
.network-v3-line{display:block;overflow:hidden;white-space:nowrap;}
.network-v3-line i{
  display:block;font-style:normal;transform:translateY(38px);opacity:0;
  transition:transform .7s var(--ease-out),opacity .7s var(--ease-out);
}
.network-v3-line[data-reveal]{transition-delay:calc(.1s + var(--stagger,0) * 110ms);}
.network-v3-line.is-visible i{transform:translateY(0);opacity:1;}
.network-v3-line--gold i{color:var(--v5-gold-soft);}

.network-v3-cta{
  display:inline-flex;align-items:center;gap:.7em;height:54px;padding:0 1.8rem;border-radius:4px;
  background:var(--v5-gold);color:#fff;font-size:.85rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;
  transition:background .3s var(--ease-out),transform .3s var(--ease-out),box-shadow .3s var(--ease-out);
}
.network-v3-cta svg{transition:transform .3s var(--ease-out);}
.network-v3-cta:hover{
  transition:background .3s var(--ease-out),transform .3s var(--ease-out),box-shadow .3s var(--ease-out);
  background:var(--v5-gold-soft);transform:translateY(-2px);box-shadow:0 16px 30px -14px rgba(250,190,167,.55);
}
.network-v3-cta:hover svg{transform:translateX(5px);}
.network-v3-cta:focus-visible{outline:2px solid var(--v5-gold-soft);outline-offset:3px;}

.network-v3-brandline{
  display:flex;align-items:center;gap:.8rem;margin-top:2.2rem;
  font-size:.74rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:rgba(253,245,242,.78);
}
.network-v3-brandline svg{flex-shrink:0;width:20px;height:20px;color:var(--v5-gold);}
.network-v3-brandline span{line-height:1.6;}

/* -- Map column -- */
.network-v3-map-wrap{position:relative;transform:scale(.97);transition:transform 1.1s var(--ease-out);}
.network-v3-map-wrap.is-visible{transform:scale(1);}
.network-map-svg{width:100%;height:auto;display:block;overflow:visible;}
.network-map-svg .land{fill:rgba(196,212,200,.24);stroke:rgba(222,232,224,.3);stroke-width:.45;}
.network-map-svg .map-labels text{
  fill:rgba(253,245,242,.42);font-family:var(--font-body);font-size:8.5px;font-weight:600;
  letter-spacing:1.6px;text-transform:uppercase;
}

.network-map-svg .route{
  fill:none;stroke:var(--v5-gold);stroke-width:1.3;stroke-linecap:round;opacity:.9;
  filter:drop-shadow(0 0 3px rgba(237,28,36,.65));
  stroke-dasharray:1;stroke-dashoffset:1;
  transition:stroke-dashoffset 1.4s var(--ease-out);
  transition-delay:calc(.7s + var(--i,0) * 110ms);
}
.network-map-svg .route--buyer{
  stroke:var(--v5-text);filter:drop-shadow(0 0 3px rgba(253,245,242,.55));
  transition-delay:calc(1.65s + var(--i,0) * 110ms);
}
.network-v3-map-wrap.is-visible .network-map-svg .route{stroke-dashoffset:0;}

.network-map-svg .marker{
  fill:var(--v5-gold);opacity:0;transform:scale(.3);transform-box:fill-box;transform-origin:center;cursor:pointer;
  filter:drop-shadow(0 0 4px rgba(237,28,36,.8));
  transition:opacity .5s var(--ease-out),transform .35s var(--ease-out);
  transition-delay:calc(.45s + var(--i,0) * 95ms);
}
.network-map-svg .marker--buyer{
  fill:var(--v5-text);filter:drop-shadow(0 0 4px rgba(253,245,242,.7));
  transition-delay:calc(1.35s + var(--i,0) * 95ms);
}
.network-map-svg .marker--hq{fill:#fff;filter:drop-shadow(0 0 7px rgba(255,255,255,.9));}
.network-v3-map-wrap.is-visible .network-map-svg .marker{opacity:1;transform:scale(1);}
.network-map-svg .marker:hover,.network-map-svg .marker:focus-visible{transform:scale(1.5);outline:none;}

.network-map-svg .marker-pulse{
  fill:none;stroke:#fff;stroke-width:1;opacity:0;transform-box:fill-box;transform-origin:center;
  animation:nwPulse 2.6s var(--ease-out) infinite;animation-delay:2.6s;animation-play-state:paused;
}
.network-v3-map-wrap.is-visible .network-map-svg .marker-pulse{animation-play-state:running;}
@keyframes nwPulse{
  0%{opacity:.65;transform:scale(.6);}
  100%{opacity:0;transform:scale(3.2);}
}

.network-map-svg .route.is-dimmed{opacity:.18;filter:none;}
.network-map-svg .route.is-active{opacity:1;stroke-width:1.8;}
.network-map-svg .marker.is-dimmed{opacity:.35;}

.map-particles{opacity:.9;}
.particle{fill:var(--v5-gold-soft);filter:drop-shadow(0 0 3px rgba(250,190,167,.9));}
.particle--buyer{fill:#fff;filter:drop-shadow(0 0 3px rgba(255,255,255,.9));}

.network-map-tooltip{
  position:absolute;left:0;top:0;z-index:5;pointer-events:none;
  background:rgba(8,31,26,.92);border:1px solid rgba(237,28,36,.5);border-radius:6px;
  padding:.5rem .8rem;transform:translate(-50%,calc(-100% - 12px));
  opacity:0;transition:opacity .2s var(--ease-out);white-space:nowrap;
}
.network-map-tooltip.is-visible{opacity:1;}
.network-map-tooltip b{display:block;font-family:var(--font-display);font-size:.86rem;color:var(--v5-gold-soft);font-weight:600;}
.network-map-tooltip span{display:block;font-size:.7rem;color:rgba(253,245,242,.7);letter-spacing:.04em;text-transform:uppercase;}

.network-map-legend{display:flex;justify-content:flex-start;gap:var(--space-md);margin-top:1.6rem;font-size:.82rem;color:rgba(250,248,242,.7);}
.network-map-legend span{display:inline-flex;align-items:center;gap:.55rem;}
.network-map-legend i{width:9px;height:9px;border-radius:50%;display:inline-block;}
.network-map-legend .i-origin{background:var(--v5-gold);box-shadow:0 0 6px rgba(237,28,36,.8);}
.network-map-legend .i-buyer{background:var(--v5-text);box-shadow:0 0 6px rgba(253,245,242,.7);}

/* -- Stats column -- */
.network-v3-stats{display:flex;flex-direction:column;gap:.2rem;}
.network-v3-stat{
  display:flex;align-items:center;gap:1rem;padding-block:1.3rem;border-top:1px solid var(--v5-line);
  opacity:0;transform:translateX(35px);transition:opacity .6s var(--ease-out),transform .6s var(--ease-out);
}
.network-v3-stat[data-reveal]{transition-delay:calc(1.9s + var(--stagger,0) * 160ms);}
.network-v3-stat.is-visible{opacity:1;transform:translateX(0);}
.network-v3-stat:last-child{border-bottom:1px solid var(--v5-line);}
.network-v3-stat-icon{
  flex-shrink:0;width:46px;height:46px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  border:1px solid var(--v5-gold);color:var(--v5-gold);transition:transform .35s var(--ease-out),background .35s var(--ease-out);
}
.network-v3-stat-icon svg{width:22px;height:22px;}
.network-v3-stat:hover .network-v3-stat-icon{transform:scale(1.08);background:rgba(237,28,36,.12);}
.network-v3-stat-body{display:flex;flex-direction:column;}
.network-v3-stat-body b{font-family:var(--font-display);font-weight:600;font-size:clamp(1.9rem,1.5rem + 1.4vw,2.5rem);color:var(--v5-text);line-height:1.15;}
.network-v3-stat-body .network-v3-stat-word{font-size:clamp(1.5rem,1.2rem + 1vw,1.9rem);}
.network-v3-stat-body em{font-style:normal;font-size:.85rem;color:rgba(253,245,242,.68);margin-top:.15rem;}

/* -- Region row -- */
.network-v3-regions{
  position:relative;z-index:2;display:flex;flex-wrap:wrap;justify-content:center;
  margin-top:clamp(2rem,1.6rem + 2vw,3.25rem);padding-top:clamp(2rem,1.6rem + 2vw,3rem);
  border-top:1px solid var(--v5-line);
}
.network-v3-region{
  position:relative;display:flex;flex-direction:column;align-items:center;gap:.9rem;flex:1 1 150px;padding-inline:1.4rem;
  opacity:0;transform:translateY(18px);transition:opacity .6s var(--ease-out),transform .6s var(--ease-out);
}
.network-v3-region[data-reveal]{transition-delay:calc(var(--stagger,0) * 100ms);}
.network-v3-region.is-visible{opacity:1;transform:translateY(0);}
.network-v3-region::before{
  content:'';position:absolute;left:0;top:10%;bottom:10%;width:1px;background:var(--v5-line);
  transform:scaleY(0);transition:transform .6s var(--ease-out) .2s;
}
.network-v3-region:first-child::before{display:none;}
.network-v3-region.is-visible::before{transform:scaleY(1);}
.network-v3-region-icon{
  width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  border:1px solid var(--v5-gold);color:var(--v5-gold);transition:transform .35s var(--ease-out),background .35s var(--ease-out);
}
.network-v3-region-icon svg{width:24px;height:24px;}
.network-v3-region:hover .network-v3-region-icon{transform:scale(1.08);background:rgba(237,28,36,.1);}
.network-v3-region label{font-size:.76rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:rgba(253,245,242,.85);}

/* Map-first layout: the full world map takes ~65% of the row, never cropped */
.network-map-svg .map-labels .map-label--country{font-size:7px;letter-spacing:1.2px;fill:rgba(253,245,242,.5);}
@media (min-width:1200px){
  .network-v3{min-height:900px;display:flex;flex-direction:column;justify-content:center;}
  .network-v3 .container{max-width:1720px;width:100%;}
  .network-v3-grid{
    grid-template-columns:minmax(260px,22%) minmax(0,1fr) minmax(165px,11%);
    column-gap:clamp(1.5rem,.8rem + 1.6vw,3rem);
  }
  .network-v3-heading{font-size:clamp(2.4rem,1rem + 2.1vw,3.5rem);}
  .network-v3-copy p{font-size:.95rem;line-height:1.7;}
  .network-v3-brandline{margin-top:1.6rem;}
  .network-v3-seal{display:none;}
  .network-v3-stat{gap:.8rem;padding-block:1.1rem;}
  .network-v3-stat-icon{width:42px;height:42px;}
  .network-v3-stat-icon svg{width:20px;height:20px;}
  .network-map-legend{justify-content:center;margin-top:1.2rem;}
}
@media (min-width:768px) and (max-width:1199px){
  .network-v3-copy p{max-width:44em;}
  .network-v3-stats{flex-direction:row;gap:1.5rem;}
  .network-v3-stat{flex:1 1 0;}
  .network-v3-stat:last-child{border-bottom:none;}
  .network-v3-seal{display:none;}
}

@media (min-width:641px){
  .network-v3-regions{justify-content:flex-start;flex-wrap:nowrap;padding-right:17%;}
  .network-v3-region{flex:1 1 auto;padding-inline:1rem;}
}

@media (max-width:959px){
  .network-v3-seal{width:104px;height:104px;top:4%;right:5%;}
  .network-v3-log{width:170px;height:170px;}
  .network-v3-script{bottom:11%;}
  .network-v3-stats{margin-top:1rem;}
}

@media (max-width:640px){
  .network-v3-seal{display:none;}
  .network-v3-script{right:5%;bottom:7%;font-size:1rem;}
  .network-v3-log{width:130px;height:130px;bottom:-4%;}
  .network-v3-line{white-space:normal;}
  .network-v3-regions{gap:1.8rem 0;}
  .network-v3-region{flex:1 1 42%;padding-inline:0;}
  .network-v3-region::before{display:none;}
  .map-particles{display:none;}
}

@media (prefers-reduced-motion: reduce){
  .network-v3-seal-ring{animation:none;}
  .network-map-svg .marker-pulse{animation:none;}
  .map-particles{display:none;}
  .network-v3-map-wrap,.network-v3-line i,.network-v3-stat,.network-v3-region,.network-v3-script,
  .network-map-svg .route,.network-map-svg .marker{transition-duration:.01ms !important;}
  .network-map-svg .route{stroke-dashoffset:0 !important;}
}

/* ============================================================
   Process V3 — reference-matched circular journey
   ============================================================ */
.process-v3{
  --pv3-bronze:var(--timber-600); --pv3-bronze-soft:var(--timber-500); --pv3-line:rgba(8,31,26,.16); --pv3-circle:clamp(132px,12vw,190px);
  position:relative;overflow:hidden;isolation:isolate;
  background:#F5F1E8;color:var(--forest-950);
  padding-block:clamp(3rem,2.4rem + 3vw,5rem);
}
.process-v3-bg{
  position:absolute;inset:0;z-index:0;pointer-events:none;
  background-image:linear-gradient(180deg,rgba(245,241,232,.82) 0%,rgba(245,241,232,.7) 45%,rgba(245,241,232,.85) 100%),url('../img/process-bg.webp');
  background-size:cover;background-position:center;background-repeat:no-repeat;
  transition:opacity 1.3s var(--ease-out),transform 1.3s var(--ease-out);
}
.process-v3-bg[data-reveal]{transform:translateY(20px);}
.process-v3-bg.is-visible{transform:translateY(0);}
.process-v3 .container{position:relative;z-index:2;max-width:1480px;}

/* -- Head -- */
.process-v3-head{display:grid;gap:var(--space-lg);margin-bottom:clamp(3.5rem,2.8rem + 3.5vw,5.5rem);}
@media (min-width:960px){.process-v3-head{grid-template-columns:1.15fr 1fr;align-items:end;column-gap:clamp(2rem,1.4rem + 2vw,4rem);}}
.process-v3-heading{
  font-family:var(--font-display);font-weight:700;font-size:clamp(2.2rem,1.6rem + 3vw,3.4rem);
  line-height:1.1;letter-spacing:-.01em;margin:.8rem 0 0;color:var(--forest-950);
}
.process-v3-line{display:block;overflow:hidden;white-space:nowrap;}
.process-v3-line i{display:block;font-style:normal;transform:translateY(34px);opacity:0;transition:transform .7s var(--ease-out),opacity .7s var(--ease-out);}
.process-v3-line[data-reveal]{transition-delay:calc(.15s + var(--stagger,0) * 110ms);}
.process-v3-line.is-visible i{transform:translateY(0);opacity:1;}
.process-v3-bronze{color:var(--pv3-bronze);}
.process-v3-tagline{margin:1.15rem 0 0;font-size:.72rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:rgba(8,31,26,.5);}
.process-v3-lead{margin:0;color:var(--charcoal-60);font-size:1.02rem;line-height:1.8;max-width:42ch;}

/* -- Seal -- */
.process-v3-seal{position:absolute;top:4%;right:5%;width:120px;height:120px;z-index:3;}
.process-v3-seal[data-reveal]{transform:scale(.7);}
.process-v3-seal.is-visible{transform:scale(1);}
.process-v3-seal-ring{position:absolute;inset:0;width:100%;height:100%;animation:pv3SealSpin 60s linear infinite;}
@keyframes pv3SealSpin{to{transform:rotate(360deg);}}
.process-v3-seal-leaf{position:absolute;inset:0;margin:auto;width:20px;height:20px;color:inherit;}

/* -- Journey -- */
.process-v3-journey{padding-top:.5rem;}
.process-v3-steps{display:flex;align-items:flex-start;}
.process-v3-step{
  flex:1 1 0;min-width:0;display:flex;flex-direction:column;align-items:center;text-align:center;
  opacity:0;transform:translateY(35px) scale(.94);transition:opacity .7s var(--ease-out),transform .7s var(--ease-out);
}
.process-v3-step[data-reveal]{transition-delay:calc(var(--stagger,0) * 150ms);}
.process-v3-step.is-visible{opacity:1;transform:translateY(0) scale(1);}

.process-v3-num{
  display:block;height:1.6rem;line-height:1.6rem;margin-bottom:.8rem;
  font-family:var(--font-display);font-weight:700;font-size:1.2rem;color:var(--pv3-bronze);
  opacity:0;transform:translateY(-10px);transition:opacity .5s var(--ease-out),transform .5s var(--ease-out);
}
.process-v3-num.is-visible{opacity:1;transform:translateY(0);}

.process-v3-circle{
  position:relative;width:var(--pv3-circle);height:var(--pv3-circle);border-radius:50%;flex-shrink:0;margin-bottom:1.6rem;
  clip-path:circle(0% at 50% 50%);transition:clip-path .8s var(--ease-out) .1s;
}
.process-v3-step.is-visible .process-v3-circle{clip-path:circle(75% at 50% 50%);}
.process-v3-circle::before{
  content:'';position:absolute;inset:-8px;border-radius:50%;border:1px solid rgba(237,28,36,.35);pointer-events:none;
}
.process-v3-circle img{
  width:100%;height:100%;border-radius:50%;object-fit:cover;display:block;
  border:2px solid var(--pv3-bronze);box-shadow:0 18px 34px -18px rgba(8,31,26,.45);
  transition:transform .6s var(--ease-out);
}
.process-v3-step:hover .process-v3-circle img{transform:scale(1.035);}
.process-v3-step:hover .process-v3-circle::before{border-color:rgba(237,28,36,.6);}

.process-v3-badge{
  position:absolute;left:50%;bottom:-2px;transform:translate(-50%,50%) translateY(8px) scale(.8);z-index:1;
  width:44px;height:44px;border-radius:50%;background:#F5F1E8;border:1px solid var(--pv3-bronze);
  display:flex;align-items:center;justify-content:center;color:var(--forest-950);
  box-shadow:0 10px 18px -8px rgba(8,31,26,.3);opacity:0;
  transition:transform .5s var(--ease-out) .35s,opacity .5s var(--ease-out) .35s;
}
.process-v3-step.is-visible .process-v3-badge{opacity:1;transform:translate(-50%,50%) translateY(0) scale(1);}
.process-v3-step:hover .process-v3-badge{transform:translate(-50%,50%) translateY(-5px) scale(1.05);}
.process-v3-badge svg{width:19px;height:19px;}

.process-v3-step h3{
  margin:.6rem 0 .6rem;font-family:var(--font-display);font-weight:600;font-size:1.08rem;line-height:1.3;
  color:var(--forest-950);position:relative;padding-bottom:.6rem;transition:color .3s var(--ease-out);
}
.process-v3-step h3::after{content:'';position:absolute;left:50%;bottom:0;transform:translateX(-50%);width:22px;height:1px;background:var(--pv3-bronze);}
.process-v3-step:hover h3{color:var(--pv3-bronze);}
.process-v3-step p{margin:0;font-size:.85rem;line-height:1.65;color:var(--charcoal-60);max-width:21ch;}

.process-v3-arrow{
  flex:1 1 32px;min-width:20px;position:relative;align-self:flex-start;
  height:26px;margin-top:calc(1.6rem + .8rem + var(--pv3-circle) / 2 - 13px);
  display:flex;align-items:center;justify-content:center;
}
.process-v3-arrow-line{
  position:absolute;left:0;right:0;top:50%;height:1px;background:var(--pv3-bronze-soft);
  transform:scaleX(0);transform-origin:left center;transition:transform 1.7s var(--ease-out);
}
.process-v3-journey.is-visible .process-v3-arrow-line{transform:scaleX(1);}
.process-v3-arrow-node{
  position:relative;z-index:1;width:26px;height:26px;border-radius:50%;flex-shrink:0;
  background:#F5F1E8;border:1px solid var(--pv3-bronze);color:var(--pv3-bronze);
  display:flex;align-items:center;justify-content:center;
  transform:scale(0);transition:transform .5s cubic-bezier(.34,1.56,.64,1);
}
.process-v3-journey.is-visible .process-v3-arrow-node{transform:scale(1);}
.process-v3-arrow:hover .process-v3-arrow-node{background:var(--pv3-bronze);color:var(--forest-950);transform:scale(1.08);}

/* per-step stagger for number / circle / badge / arrow timing */
.process-v3-steps .process-v3-step:nth-child(1){--stagger:0;}
.process-v3-steps .process-v3-step:nth-child(3){--stagger:1;}
.process-v3-steps .process-v3-step:nth-child(5){--stagger:2;}
.process-v3-steps .process-v3-step:nth-child(7){--stagger:3;}
.process-v3-steps .process-v3-step:nth-child(9){--stagger:4;}
.process-v3-arrow-line{transition-delay:calc(.2s + var(--stagger,0) * 220ms);}
.process-v3-arrow:nth-child(2) .process-v3-arrow-line{--stagger:0;}
.process-v3-arrow:nth-child(4) .process-v3-arrow-line{--stagger:1;}
.process-v3-arrow:nth-child(6) .process-v3-arrow-line{--stagger:2;}
.process-v3-arrow:nth-child(8) .process-v3-arrow-line{--stagger:3;}
.process-v3-arrow-node{transition-delay:calc(.5s + var(--stagger,0) * 220ms);}

/* -- Traveling journey dot -- */
.process-v3-arrow-line::after{
  content:'';position:absolute;top:50%;left:0;width:5px;height:5px;margin-top:-2.5px;border-radius:50%;
  background:var(--pv3-bronze-soft);box-shadow:0 0 6px 1px rgba(237,28,36,.7);
  opacity:0;animation:pv3Travel 2.6s ease-in-out infinite;animation-play-state:paused;
}
.process-v3-journey.is-visible .process-v3-arrow-line::after{animation-play-state:running;}
.process-v3-arrow:nth-child(2) .process-v3-arrow-line::after{animation-delay:1s;}
.process-v3-arrow:nth-child(4) .process-v3-arrow-line::after{animation-delay:3.2s;}
.process-v3-arrow:nth-child(6) .process-v3-arrow-line::after{animation-delay:5.4s;}
.process-v3-arrow:nth-child(8) .process-v3-arrow-line::after{animation-delay:7.6s;}
@keyframes pv3Travel{
  0%{opacity:0;left:0;}
  8%{opacity:1;}
  92%{opacity:1;}
  100%{opacity:0;left:100%;}
}

/* -- Footer -- */
.process-v3-footer{
  display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:1.5rem;
  margin-top:clamp(2rem,1.6rem + 2vw,3.25rem);padding-top:clamp(1.5rem,1.2rem + 1.5vw,2.2rem);
  border-top:1px solid var(--pv3-line);
}
.process-v3-brandline{
  position:relative;margin:0;display:flex;align-items:center;gap:.9rem;padding-left:1.4rem;
  font-size:.74rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:rgba(8,31,26,.62);
}
.process-v3-brandline::before{content:'';position:absolute;left:0;top:8%;bottom:8%;width:1px;background:var(--pv3-bronze);}
.process-v3-brandline svg{flex-shrink:0;width:18px;height:18px;color:var(--pv3-bronze);}
.process-v3-script{
  margin:0;text-align:right;font-family:var(--font-display);font-style:italic;font-weight:500;
  font-size:clamp(1.05rem,.85rem + 1vw,1.4rem);line-height:1.3;color:var(--pv3-bronze);
}

@media (max-width:959px){
  .process-v3-seal{display:none;}
  .process-v3-steps{flex-direction:column;align-items:center;gap:0;}
  .process-v3-step{--pv3-circle:150px;}
  .process-v3-num{transform:none;}
  .process-v3-step.is-visible .process-v3-num{transform:none;}
  .process-v3-step p{max-width:30ch;}

  .process-v3-arrow{
    flex:none;align-self:center;width:26px;height:44px;margin:.4rem 0;
  }
  .process-v3-arrow-line{left:50%;right:auto;top:0;bottom:0;height:auto;width:1px;transform:scaleY(0);transform-origin:top center;transition:transform 1s var(--ease-out);}
  .process-v3-journey.is-visible .process-v3-arrow-line{transform:scaleY(1);}
  .process-v3-arrow-line::after{top:0;left:50%;margin-top:0;margin-left:-2.5px;animation-name:pv3TravelV;}
  @keyframes pv3TravelV{
    0%{opacity:0;top:0;}
    8%{opacity:1;}
    92%{opacity:1;}
    100%{opacity:0;top:100%;}
  }
}

@media (max-width:640px){
  .process-v3-step{--pv3-circle:128px;}
  .process-v3-step p{max-width:26ch;}
}

@media (prefers-reduced-motion: reduce){
  .process-v3-seal-ring{animation:none;}
  .process-v3-arrow-line::after{animation:none;display:none;}
  .process-v3-line i,.process-v3-step,.process-v3-num,.process-v3-circle,.process-v3-badge,
  .process-v3-arrow-line,.process-v3-arrow-node,.process-v3-seal{transition-duration:.01ms !important;}
  .process-v3-circle{clip-path:circle(75% at 50% 50%) !important;}
  .process-v3-arrow-line{transform:scale(1) !important;}
}

/* ============================================================
   Why Choose Us — light editorial reasons grid
   ============================================================ */
.why-choose{
  --wc-cream:#F9F7F1; --wc-ink:var(--forest-950); --wc-gold:var(--timber-700); --wc-gold-line:var(--timber-600);
  position:relative;overflow:hidden;isolation:isolate;z-index:0;
  background:var(--wc-cream);color:var(--wc-ink);
  padding-block:clamp(2.75rem,2.2rem + 2.5vw,4.25rem);
}
.why-choose-bg{
  position:absolute;left:0;right:0;bottom:0;top:auto;z-index:0;pointer-events:none;
  height:clamp(150px,20vw,230px);
  background-image:url('../img/whychoose-bg.webp');
  background-size:cover;background-position:center bottom;background-repeat:no-repeat;
}
.why-choose-bg::after{
  content:'';position:absolute;inset:0;
  background:linear-gradient(180deg,var(--wc-cream) 0%,rgba(249,247,241,.82) 18%,rgba(249,247,241,.32) 50%,rgba(249,247,241,.05) 75%,rgba(249,247,241,0) 100%);
}
.why-choose-inner{position:relative;z-index:1;}

.why-choose-top{display:grid;gap:clamp(1.75rem,1.4rem + 2vw,3.25rem);align-items:start;}
.why-choose-copy{max-width:480px;}
.why-choose-eyebrow{color:var(--forest-800);}
.why-choose-eyebrow::before{background:var(--wc-gold-line);}

.why-choose-heading{font-family:var(--font-display);font-weight:600;font-size:clamp(2.1rem,1.6rem + 2.6vw,3.2rem);line-height:1.12;letter-spacing:-.01em;margin:0 0 1.2rem;}
.why-choose-line{display:block;color:var(--wc-ink);}
.why-choose-line-gold{color:var(--wc-gold);}

.why-choose-desc{max-width:46ch;color:var(--charcoal-60);font-size:1rem;line-height:1.75;margin:0 0 1.9rem;}

.why-choose-row{display:flex;align-items:center;gap:1.4rem;flex-wrap:wrap;}
.why-choose-btn{height:54px;padding:0 1.7rem;box-shadow:0 0 0 0 rgba(237,28,36,0);transition:background .3s var(--ease-out),color .3s var(--ease-out),transform .3s var(--ease-out),box-shadow .3s var(--ease-out);}
.why-choose-btn:hover{transform:translateY(-2px);box-shadow:0 16px 30px -14px rgba(237,28,36,.45);}
.why-choose-divider{width:1px;height:42px;background:rgba(28,36,32,.16);flex-shrink:0;}
.why-choose-stat{display:flex;flex-direction:column;position:relative;padding-top:.2rem;}
.why-choose-stat b{font-family:var(--font-display);font-weight:600;font-size:clamp(1.8rem,1.5rem + 1vw,2.3rem);color:var(--wc-gold);line-height:1;margin-bottom:.5rem;}
.why-choose-stat b::after{content:'';display:block;width:26px;height:2px;margin-top:.5rem;background:var(--wc-gold-line);}
.why-choose-stat span{font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:var(--charcoal-60);line-height:1.5;}

.why-choose-grid{position:relative;display:grid;grid-template-columns:repeat(2,1fr);gap:2.2rem 1.5rem;}
.why-choose-feature{
  text-align:center;padding-inline:.6rem;border-radius:10px;
  transition:transform .35s var(--ease-out);
}
.why-choose-feature:hover,.why-choose-feature:focus-within{transform:translateY(-4px);}
.why-choose-feature-icon{
  width:60px;height:60px;margin:0 auto .9rem;border-radius:50%;display:flex;align-items:center;justify-content:center;
  background:var(--white);border:1px solid rgba(237,28,36,.35);color:var(--wc-gold);
  box-shadow:0 8px 18px -12px rgba(237,28,36,.25);
  transition:transform .35s var(--ease-out),background .35s var(--ease-out),border-color .35s var(--ease-out),box-shadow .35s var(--ease-out);
}
.why-choose-feature:hover .why-choose-feature-icon,.why-choose-feature:focus-within .why-choose-feature-icon{
  transform:scale(1.08);background:rgba(237,28,36,.1);border-color:var(--wc-gold);
  box-shadow:0 12px 22px -12px rgba(237,28,36,.35);
}
.why-choose-feature-icon svg{width:24px;height:24px;transition:transform .35s var(--ease-out);}
.why-choose-feature:hover .why-choose-feature-icon svg{transform:scale(1.05);}
.why-choose-feature b{display:block;font-family:var(--font-display);font-weight:600;font-size:1rem;color:var(--wc-ink);margin-bottom:.4rem;transition:color .3s var(--ease-out);}
.why-choose-feature:hover b{color:var(--wc-gold);}
.why-choose-feature p{margin:0 auto;font-size:.84rem;line-height:1.55;color:var(--charcoal-60);max-width:22ch;}
@media (prefers-reduced-motion: reduce){
  .why-choose-feature,.why-choose-feature-icon,.why-choose-feature-icon svg,.why-choose-btn{transition:none !important;}
  .why-choose-feature:hover,.why-choose-btn:hover{transform:none !important;}
}

.why-choose-script{
  display:none;margin:2.5rem 0 0;text-align:right;font-family:var(--font-display);font-style:italic;font-weight:500;
  font-size:clamp(1.1rem,.9rem + 1vw,1.5rem);line-height:1.3;color:var(--wc-gold);opacity:.8;
  transform:rotate(-2deg);
}

@media (min-width:641px) and (max-width:1099px){
  .why-choose-grid::before{
    content:'';position:absolute;inset:0;pointer-events:none;
    background:linear-gradient(rgba(237,28,36,.22),rgba(237,28,36,.22)) no-repeat;
    background-size:1px 100%;background-position:50% 0;
  }
}
@media (min-width:1100px){
  .why-choose-top{grid-template-columns:.9fr 1.1fr;}
  .why-choose-grid{grid-template-columns:repeat(3,1fr);gap:2.4rem 0;}
  .why-choose-feature{padding-inline:1.6rem;}
  .why-choose-grid::before{
    content:'';position:absolute;inset:0;pointer-events:none;
    background:
      linear-gradient(rgba(237,28,36,.22),rgba(237,28,36,.22)) no-repeat,
      linear-gradient(rgba(237,28,36,.22),rgba(237,28,36,.22)) no-repeat;
    background-size:1px 100%,1px 100%;
    background-position:33.333% 0,66.666% 0;
  }
  .why-choose-script{display:block;}
}
@media (max-width:640px){
  .why-choose-bg{background-position:left bottom;}
  .why-choose-row{flex-direction:column;align-items:flex-start;gap:1.2rem;}
  .why-choose-divider{display:none;}
  .why-choose-stat{padding-top:1rem;border-top:1px solid rgba(28,36,32,.12);width:100%;}
  .why-choose-btn{width:100%;justify-content:center;}
}
@media (max-width:339px){
  .why-choose-grid{grid-template-columns:1fr;}
}

/* ============================================================
   CTA V3 — Global Operations, cinematic reference-matched
   ============================================================ */
.cta-v3{
  --v5-deep:var(--forest-900); --v5-gold:var(--timber-600); --v5-gold-soft:var(--timber-300); --v5-text:var(--sand-50); --v5-muted:rgba(253,245,242,.78); --v5-line:rgba(253,245,242,.18);
  position:relative;overflow:hidden;isolation:isolate;z-index:0;
  display:flex;align-items:center;
  min-height:clamp(560px,48vw,700px);
  padding-block:clamp(3rem,2.4rem + 2.5vw,4.5rem);
  color:var(--v5-text);background:var(--v5-deep);
}
.cta-v3-media{
  position:absolute;inset:0;z-index:0;
  opacity:0;transform:scale(1.05);transition:opacity 1.2s var(--ease-out),transform 1.2s var(--ease-out);
  will-change:transform;
}
.cta-v3-media.is-visible{opacity:1;transform:scale(1);}
.cta-v3-media img{width:100%;height:100%;object-fit:cover;filter:saturate(1.08) contrast(1.04);}
.cta-v3-media::after{
  content:'';position:absolute;inset:0;
  background:
    linear-gradient(90deg,var(--v5-deep) 0%,rgba(14,43,36,.97) 22%,rgba(14,43,36,.82) 36%,rgba(14,43,36,.4) 52%,rgba(14,43,36,.08) 66%,rgba(14,43,36,0) 76%),
    linear-gradient(200deg,rgba(8,31,26,0) 55%,rgba(8,31,26,.5) 100%),
    radial-gradient(ellipse at 30% 20%,rgba(250,190,167,.14),transparent 55%);
}
.cta-v3-media::before{
  content:'';position:absolute;inset:0;z-index:1;pointer-events:none;
  box-shadow:inset 0 0 140px rgba(0,0,0,.35);
}
.cta-v3 .container{position:relative;z-index:2;}
.cta-v3-inner{width:100%;}
.cta-v3-inner > *:not(.cta-v3-metrics){max-width:600px;}

/* -- Decorative layer -- */
.cta-v3-decor{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden;color:var(--v5-gold);}
.cta-v3-contour{position:absolute;width:220px;height:190px;opacity:.22;color:var(--v5-gold-soft);}
.cta-v3-contour--top{top:-30px;left:-30px;}
.cta-v3-contour--bottom{bottom:-40px;left:-40px;transform:rotate(8deg);}
.cta-v3-forest{position:absolute;left:0;bottom:0;width:38%;min-width:280px;height:38%;color:rgba(8,31,26,.55);opacity:.8;}
.cta-v3-seal{position:absolute;top:6%;right:5%;width:120px;height:120px;opacity:0;transform:scale(.7);transition:opacity .7s var(--ease-out) .3s,transform .7s var(--ease-out) .3s;}
.cta-v3-seal.is-visible{opacity:1;transform:scale(1);}
.cta-v3-seal-ring{position:absolute;inset:0;width:100%;height:100%;animation:ctaSealSpin 65s linear infinite;animation-play-state:paused;}
.cta-v3-seal.is-visible ~ .cta-v3-seal-ring,.cta-v3-seal.is-visible .cta-v3-seal-ring{animation-play-state:running;}
@keyframes ctaSealSpin{to{transform:rotate(360deg);}}
.cta-v3-seal-leaf{position:absolute;inset:0;margin:auto;width:20px;height:20px;color:inherit;}
.cta-v3-script{
  position:absolute;right:7%;bottom:18%;margin:0;text-align:right;font-family:var(--font-display);font-style:italic;font-weight:500;
  font-size:clamp(1.1rem,.9rem + 1vw,1.5rem);line-height:1.28;color:var(--v5-gold-soft);opacity:0;
  transform:translateY(14px) rotate(-3deg);transition:opacity .7s var(--ease-out) .2s,transform .7s var(--ease-out) .2s;
}
.cta-v3-script.is-visible{opacity:.9;transform:translateY(0) rotate(-3deg);}

/* -- Content -- */
.cta-v3-heading{
  font-family:var(--font-display);font-weight:700;font-size:clamp(2.4rem,1.7rem + 3.4vw,4rem);
  line-height:1.1;letter-spacing:-.01em;margin:.8rem 0 0;color:var(--v5-text);
}
.cta-v3-line{display:block;overflow:hidden;white-space:nowrap;}
.cta-v3-line i{display:block;font-style:normal;transform:translateY(34px);opacity:0;transition:transform .7s var(--ease-out),opacity .7s var(--ease-out);}
.cta-v3-line[data-reveal]{transition-delay:calc(.15s + var(--stagger,0) * 120ms);}
.cta-v3-line.is-visible i{transform:translateY(0);opacity:1;}
.cta-v3-line--gold i{color:var(--v5-gold-soft);}

.cta-v3-desc{margin:1.3rem 0 1.9rem;max-width:600px;color:var(--v5-muted);font-size:1.02rem;line-height:1.75;}

.cta-v3-btn{
  display:inline-flex;align-items:center;gap:.7em;height:54px;padding:0 1.9rem;border-radius:4px;
  background:var(--v5-gold);color:#fff;font-size:.85rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;
  transition:background .3s var(--ease-out),transform .3s var(--ease-out),box-shadow .3s var(--ease-out);
}
.cta-v3-btn svg{transition:transform .3s var(--ease-out);}
.cta-v3-btn:hover{
  transition:background .3s var(--ease-out),transform .3s var(--ease-out),box-shadow .3s var(--ease-out);
  background:var(--v5-gold-soft);transform:translateY(-3px);box-shadow:0 18px 32px -14px rgba(250,190,167,.6);
}
.cta-v3-btn:hover svg{transform:translateX(6px);}
.cta-v3-btn:focus-visible{outline:2px solid var(--v5-gold-soft);outline-offset:3px;}

/* -- Metrics -- */
.cta-v3-metrics{display:flex;align-items:center;flex-wrap:wrap;gap:1.4rem 0;margin-top:clamp(2.4rem,1.9rem + 2vw,3.4rem);}
.cta-v3-divider{width:1px;align-self:stretch;min-height:48px;background:rgba(250,190,167,.35);margin:0 1.5rem;flex-shrink:0;}
.cta-v3-metric{
  display:flex;align-items:center;gap:.9rem;
  opacity:0;transform:translateY(20px);transition:opacity .6s var(--ease-out),transform .6s var(--ease-out);
}
.cta-v3-metric[data-reveal]{transition-delay:calc(var(--stagger,0) * 130ms);}
.cta-v3-metric.is-visible{opacity:1;transform:translateY(0);}
.cta-v3-metric-icon{
  flex-shrink:0;width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  border:1px solid var(--v5-gold);color:var(--v5-gold);
  transform:scale(.75);opacity:0;transition:transform .5s cubic-bezier(.34,1.56,.64,1) .15s,opacity .5s var(--ease-out) .15s,background .3s var(--ease-out);
}
.cta-v3-metric.is-visible .cta-v3-metric-icon{transform:scale(1);opacity:1;}
.cta-v3-metric:hover .cta-v3-metric-icon{transition:transform .3s var(--ease-out),background .3s var(--ease-out);transform:scale(1.06) rotate(-3deg);background:rgba(250,190,167,.12);}
.cta-v3-metric-icon svg{width:24px;height:24px;}
.cta-v3-metric-body{display:flex;flex-direction:column;}
.cta-v3-metric-body b{font-family:var(--font-display);font-weight:600;font-size:clamp(1.5rem,1.2rem + 1vw,1.9rem);color:var(--v5-text);line-height:1.15;transition:color .3s var(--ease-out);}
.cta-v3-metric-body .cta-v3-metric-word{font-size:clamp(1.3rem,1.1rem + .7vw,1.6rem);}
.cta-v3-metric:hover .cta-v3-metric-body b{color:var(--v5-gold-soft);}
.cta-v3-metric-body em{font-style:normal;font-size:.82rem;color:var(--v5-muted);line-height:1.4;}

@media (max-width:959px){
  .cta-v3-seal{width:104px;height:104px;}
  .cta-v3-script{display:none;}
  .cta-v3-contour{width:170px;height:150px;}
}

@media (max-width:767px){
  .cta-v3{min-height:0;padding-block:clamp(2.5rem,2rem + 2vw,3.25rem);}
  .cta-v3-media img{object-position:70% center;}
  .cta-v3-media::after{
    background:linear-gradient(180deg,rgba(8,31,26,.78) 0%,rgba(8,31,26,.42) 45%,rgba(8,31,26,.55) 70%,rgba(8,31,26,.85) 100%);
  }
  .cta-v3-seal,.cta-v3-script,.cta-v3-contour,.cta-v3-forest{display:none;}
  .cta-v3-inner > *:not(.cta-v3-metrics){max-width:none;}
  .cta-v3-desc{max-width:none;}
  .cta-v3-metrics{flex-direction:column;align-items:flex-start;gap:1.4rem;}
  .cta-v3-divider{display:none;}
}

@media (prefers-reduced-motion: reduce){
  .cta-v3-seal-ring{animation:none;}
  .cta-v3-media,.cta-v3-line i,.cta-v3-metric,.cta-v3-metric-icon,.cta-v3-seal,.cta-v3-script{transition-duration:.01ms !important;}
  .cta-v3-media{transform:scale(1) !important;}
}

/* ============================================================
   CTA V2 — imagery background
   ============================================================ */
.cta-v2{position:relative;min-height:42vh;display:flex;align-items:center;color:var(--white);overflow:hidden;isolation:isolate;z-index:0;}
.cta-v2-media{position:absolute;inset:0;z-index:-1;}
.cta-v2-media img{width:100%;height:100%;object-fit:cover;}
.cta-v2-media::after{content:'';position:absolute;inset:0;background:linear-gradient(100deg,rgba(8,31,26,.92) 0%,rgba(8,31,26,.75) 45%,rgba(8,31,26,.4) 100%);}
.cta-v2-grid{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:var(--space-md);}
.cta-v2-grid p{color:rgba(250,248,242,.75);margin-top:.6rem;max-width:32em;}

/* ============================================================
   Footer back-to-top
   ============================================================ */
.back-to-top{
  width:38px;height:38px;border-radius:50%;border:1px solid var(--line-invert);
  display:inline-flex;align-items:center;justify-content:center;color:var(--white);flex-shrink:0;
  transition:background var(--dur-sm) var(--ease-out);
}
.back-to-top:hover{background:var(--line-invert-soft);}
.back-to-top svg{width:16px;height:16px;}

/* ============================================================
   Shared reveal helpers for v2 sections
   ============================================================ */
.clip-reveal{clip-path:inset(0 0 0 100%);transition:clip-path 1s var(--ease-out);}
.clip-reveal.is-visible{clip-path:inset(0 0 0 0%);}
.fade-delay{opacity:0;transform:translateY(20px);transition:opacity .7s var(--ease-out) .3s,transform .7s var(--ease-out) .3s;}
.fade-delay.is-visible{opacity:1;transform:translateY(0);}

/* ============================================================
   Product Gallery
   ============================================================ */
.gallery-filters{display:flex;flex-wrap:wrap;gap:.7rem;margin-bottom:clamp(1.8rem,1.5rem + 1.4vw,2.6rem);}
.gallery-filter{
  height:42px;padding:0 1.3rem;border-radius:999px;border:1px solid var(--line);
  font-size:.85rem;font-weight:600;color:var(--forest-950);background:var(--white);
  transition:background .25s var(--ease-out),color .25s var(--ease-out),border-color .25s var(--ease-out),transform .2s var(--ease-out);
}
.gallery-filter:hover{border-color:var(--timber-600);color:var(--timber-600);transform:translateY(-1px);}
.gallery-filter.is-active{background:var(--timber-600);border-color:var(--timber-600);color:var(--white);}
.gallery-filter:focus-visible{outline:2px solid var(--timber-600);outline-offset:2px;}

.gallery-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(.9rem,.7rem + .8vw,1.4rem);}
.gallery-item{
  position:relative;display:block;width:100%;aspect-ratio:4/3;border-radius:var(--radius-md);overflow:hidden;
  background:var(--sand-100);box-shadow:var(--shadow-card);transition:transform .35s var(--ease-out),box-shadow .35s var(--ease-out);
}
.gallery-item.is-hidden,.gallery-item.is-collapsed{display:none;}
.gallery-more-wrap{display:flex;justify-content:center;margin-top:clamp(1.8rem,1.5rem + 1.4vw,2.6rem);}
.gallery-more{
  display:inline-flex;align-items:center;gap:.6rem;height:48px;padding:0 1.6rem;border-radius:999px;
  border:1px solid var(--forest-900);color:var(--forest-900);font-size:.88rem;font-weight:600;background:transparent;
  transition:background .25s var(--ease-out),color .25s var(--ease-out),transform .2s var(--ease-out);
}
.gallery-more:hover{background:var(--forest-900);color:var(--white);transform:translateY(-1px);}
.gallery-more[hidden]{display:none;}
.gallery-more svg{width:12px;height:12px;transition:transform .25s var(--ease-out);}
.gallery-more[aria-expanded="true"] svg{transform:rotate(180deg);}
.gallery-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:1rem 2rem;margin-bottom:clamp(1.6rem,1.3rem + 1.2vw,2.2rem);}
.gallery-head h2{margin-top:.6rem;}
.gallery-head p{color:var(--charcoal-60);margin:.6rem 0 0;}
.gallery-head .gallery-filters{margin-bottom:0;}
.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ease-out);}
.gallery-item::after{
  content:'';position:absolute;inset:0;
  background:linear-gradient(0deg,rgba(8,31,26,.72) 0%,rgba(8,31,26,.05) 45%,rgba(8,31,26,0) 65%);
  opacity:0;transition:opacity .3s var(--ease-out);
}
.gallery-item:hover{transform:translateY(-3px);box-shadow:0 20px 40px -20px rgba(8,31,26,.35);}
.gallery-item:hover img{transform:scale(1.06);}
.gallery-item:hover::after{opacity:1;}
.gallery-item:focus-visible{outline:2px solid var(--timber-600);outline-offset:3px;}
.gallery-item-tag{
  position:absolute;left:.9rem;bottom:.8rem;z-index:1;font-size:.72rem;font-weight:700;letter-spacing:.04em;
  color:var(--white);opacity:0;transform:translateY(6px);transition:opacity .3s var(--ease-out),transform .3s var(--ease-out);
}
.gallery-item:hover .gallery-item-tag,.gallery-item:focus-visible .gallery-item-tag{opacity:1;transform:translateY(0);}

@media (min-width:640px){
  .gallery-grid{grid-template-columns:repeat(3,1fr);}
}
@media (min-width:1080px){
  .gallery-grid{grid-template-columns:repeat(3,1fr);gap:1.6rem;}
}

/* Lightbox */
.lightbox{
  position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;
  background:rgba(8,31,26,.94);padding:clamp(1.5rem,4vw,3.5rem);
}
.lightbox[hidden]{display:none;}
.lightbox-figure{position:relative;max-width:min(92vw,1100px);max-height:88vh;margin:0;display:flex;flex-direction:column;align-items:center;gap:.9rem;}
.lightbox-figure img{max-width:100%;max-height:78vh;width:auto;height:auto;border-radius:var(--radius-md);box-shadow:0 40px 90px -30px rgba(0,0,0,.65);}
.lightbox-figure figcaption{color:rgba(253,245,242,.85);font-size:.88rem;text-align:center;max-width:60ch;}
.lightbox-close{
  position:absolute;top:clamp(1rem,3vw,2rem);right:clamp(1rem,3vw,2rem);z-index:2;
  width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  border:1px solid rgba(253,245,242,.35);color:var(--white);transition:background .25s var(--ease-out),border-color .25s var(--ease-out);
}
.lightbox-close:hover{background:rgba(253,245,242,.12);border-color:var(--timber-300);}
.lightbox-close svg{width:18px;height:18px;}
.lightbox-nav{
  position:absolute;top:50%;transform:translateY(-50%);z-index:2;
  width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  border:1px solid rgba(253,245,242,.35);color:var(--white);transition:background .25s var(--ease-out),border-color .25s var(--ease-out);
}
.lightbox-nav:hover{background:rgba(253,245,242,.12);border-color:var(--timber-300);}
.lightbox-nav svg{width:16px;height:16px;}
.lightbox-prev{left:clamp(-.5rem,-2vw,.5rem);}
.lightbox-next{right:clamp(-.5rem,-2vw,.5rem);}
@media (max-width:639px){
  .lightbox-prev{left:.25rem;}
  .lightbox-next{right:.25rem;}
  .lightbox-nav{width:40px;height:40px;}
}

/* ============================================================
   Responsive fixes — mobile / tablet layout & tighter spacing
   ============================================================ */
@media (max-width:767px){
  /* Footer: short link lists side by side, wide blocks full width */
  .footer-top{grid-template-columns:1fr 1fr;gap:2rem 1.25rem;}
  .footer-top > :nth-child(1),.footer-top > :nth-child(4),.footer-top > :nth-child(5){grid-column:1 / -1;}
  .footer-brand{max-width:none;}
  .footer-brand .logo-badge{margin-bottom:1rem;}
}

@media (max-width:640px){
  /* About values: stacked column was inheriting a 240px flex-basis as height */
  .about-v5-values{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem 1rem;}
  .about-v5-value{flex:none;flex-direction:column;align-items:flex-start;gap:.7rem;}
  .about-v5-value-icon{width:46px;height:46px;}
  .about-v5-value-text p{max-width:none;}

  /* Network: decorative script overlapped the region icons */
  .network-v3-script{display:none;}
  .network-v3-regions{padding-bottom:1rem;}

  /* CTA heading no longer clipped by nowrap lines */
  .cta-v3-line{white-space:normal;}
  .cta-v3-heading{font-size:clamp(2rem,1.5rem + 3vw,2.6rem);}

  /* Stat labels: tighter line-height */
  .quality-band-stats .stat span,.why-choose-stat span{display:block;line-height:1.35;}
  .quality-band-stats .stat{margin-bottom:.4rem;}

  /* Why choose: keep last item clear of the bottom image */
  .why-choose{padding-bottom:clamp(7rem,30vw,9rem);}
  .why-choose-grid{gap:1.8rem 1rem;}
  .why-choose-feature{padding-inline:0;}
  .why-choose-feature-icon{width:52px;height:52px;margin-bottom:.7rem;}

  /* Generic: long headings wrap instead of overflowing */
  h1,h2,h3{overflow-wrap:break-word;}
}

@media (max-width:959px){
  /* Process: compact wrapped grid instead of one tall column */
  .process-v3-steps{flex-direction:row;flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:2.25rem 1.25rem;}
  .process-v3-arrow{display:none;}
  .process-v3-step{flex:0 0 calc((100% - 2.5rem) / 3);}
  .process-v3-step p{max-width:none;}
  .process-v3-circle{margin-bottom:1.3rem;}

  .network-v3-script{display:none;}
  .why-choose{padding-bottom:clamp(8rem,22vw,11rem);}
}
@media (min-width:641px) and (max-width:959px){
  .about-v5-frame{aspect-ratio:16/10;}
  .about-v5-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;}
}
@media (max-width:640px){
  .process-v3-steps{gap:1.75rem 1rem;}
  .process-v3-step{flex-basis:calc((100% - 1rem) / 2);--pv3-circle:112px;}
  .process-v3-step h3{font-size:1rem;}
  .process-v3-step p{font-size:.8rem;}
  .why-choose{padding-bottom:clamp(7rem,30vw,9rem);}
}

/* Header: keep nav on one line on small laptops / landscape tablets */
.main-nav a{white-space:nowrap;}
@media (min-width:960px) and (max-width:1199px){
  .site-header .container{gap:1.25rem;padding-inline:1.5rem;}
  .main-nav ul{gap:1.5rem;}
  .main-nav a{font-size:.9rem;}
  .logo-tagline{font-size:.96rem;letter-spacing:.03em;padding-left:.7rem;}
  .logo-badge{gap:.6rem;}
  .header-actions .btn{padding:.8rem 1.1rem;}
}
/* Tablet / mobile (hamburger nav): keep the company name, compact */
@media (max-width:959px){
  .logo-tagline{display:flex;font-size:.7rem;letter-spacing:.04em;}
}
@media (max-width:479px){
  .logo-badge{gap:.55rem;min-width:0;}
  .logo-tagline{font-size:.6rem;letter-spacing:.02em;padding-left:.6rem;white-space:normal;max-width:12.5rem;}
}

/* ============================================================
   MOBILE DESIGN LAYER (<=767px)
   Intentional mobile layout: image > heading > short text > CTA.
   Everything here is scoped to max-width:767px; desktop/tablet untouched.
   ============================================================ */
.m-carousel-dots{display:none;}

@media (max-width:767px){
  :root{
    --container-pad:clamp(18px,5.4vw,22px);
    --m-sec:clamp(56px,16vw,68px);
    --m-h2:clamp(1.9rem,1.35rem + 2.6vw,2.3rem);
    --m-body:clamp(.94rem,.9rem + .2vw,1rem);
    --m-radius:18px;
  }
  body{font-size:var(--m-body);}
  .eyebrow{font-size:.72rem;letter-spacing:.16em;}

  /* ---------- Swipe carousel base ---------- */
  [data-m-carousel]{
    display:flex !important;flex-wrap:nowrap !important;overflow-x:auto;overflow-y:hidden;
    scroll-snap-type:x mandatory;scroll-padding-inline:var(--container-pad);
    -webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;
    margin-inline:calc(var(--container-pad) * -1);padding-inline:var(--container-pad);
    scrollbar-width:none;
  }
  [data-m-carousel]::-webkit-scrollbar{display:none;}
  .m-carousel-dots{display:flex;justify-content:center;gap:8px;margin-top:1.25rem;}
  .m-carousel-dots span{width:7px;height:7px;border-radius:999px;background:rgba(8,31,26,.18);transition:width .3s var(--ease-out),background .3s var(--ease-out);}
  .m-carousel-dots span.is-active{width:22px;background:var(--timber-600);}

  /* ---------- 1. Header ---------- */
  .site-header,.site-header[data-solid="true"]{height:64px;}
  .site-header .container{padding-inline:var(--container-pad);gap:1rem;}
  .logo-badge img,.site-header[data-solid="true"] .logo-badge img{height:44px;}
  .site-header .logo-badge::before{width:92px;height:92px;left:calc(22px - 46px);}
  .menu-toggle{width:44px;height:44px;padding:0 9px;margin-right:-9px;gap:5px;}
  .mobile-nav{padding:calc(64px + 1.25rem) var(--container-pad) 2rem;}
  .mobile-nav > ul > li > a,.mobile-nav-group-toggle{min-height:56px;padding:.9rem 0;font-size:1.35rem;}
  .mobile-nav-sub a{padding:.8rem 0 .8rem 1rem;min-height:44px;}
  .mobile-nav-group[data-open="true"] .mobile-nav-sub{max-height:260px;}
  .mobile-nav-foot .btn{min-height:52px;}
  .mobile-nav-contact{line-height:1.5;}
  .mobile-nav-contact a{display:inline-flex;align-items:center;min-height:44px;}

  /* ---------- 2. Hero ---------- */
  .hero-v3{min-height:0;}
  .hero-v3-overlay{
    background:linear-gradient(180deg,rgba(8,31,26,.62) 0%,rgba(8,31,26,.38) 26%,rgba(8,31,26,.58) 58%,rgba(8,31,26,.94) 100%);
  }
  .hero-v3-inner{padding-block:calc(64px + 2.75rem) 2rem;align-items:flex-end;}
  .hero-v3-content{max-width:none;width:100%;}
  .hero-v3-eyebrow{margin-bottom:1rem;}
  .hero-v3-title{font-size:clamp(2.5rem,1.6rem + 4.4vw,3rem);line-height:1.02;margin-bottom:1rem;}
  .hero-v3-copy{font-size:.95rem;line-height:1.62;margin-bottom:1.6rem;max-width:34ch;color:rgba(250,248,242,.86);}
  .hero-v3-ctas{margin-bottom:2rem;}
  .hero-v3-cta-primary{width:100%;height:54px;justify-content:center;font-size:.9rem;}
  .hero-v3-watch{display:none;}
  .hero-v3-stats{
    display:grid;grid-template-columns:repeat(3,1fr);gap:0;
    padding:1rem .25rem;border-radius:14px;
    background:rgba(8,31,26,.55);border:1px solid rgba(250,190,167,.22);
    backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
  }
  .hero-v3-stats .stat:first-child{display:none;}
  .hero-v3-stats .stat,.hero-v3-stats .stat:nth-child(2){padding:0 .6rem;border-left:1px solid rgba(255,255,255,.16);text-align:center;}
  .hero-v3-stats .stat:nth-child(2){border-left:none;}
  .hero-v3-stats .stat b{font-size:1.6rem;margin-bottom:.15rem;}
  .hero-v3-stats .stat span{display:block;font-size:.66rem;line-height:1.35;letter-spacing:.08em;}
  .hero-v3-panel{display:none;}

  /* ---------- 3. Quality / intro ---------- */
  .quality-band{padding-block:var(--m-sec);}
  .quality-band-bg{background-image:none;}
  .quality-band-top{gap:2rem;margin-bottom:0;}
  .quality-band-heading{font-size:var(--m-h2);margin-bottom:1rem;}
  .quality-band-desc{font-size:var(--m-body);margin-bottom:1.5rem;}
  .quality-band-actions{gap:.7rem;}
  .quality-band-btn,.quality-band-btn-ghost{height:52px;}
  .quality-band-features{grid-template-columns:1fr 1fr;gap:12px;}
  .quality-band-feature{
    display:flex;flex-direction:column;align-items:flex-start;gap:.75rem;
    padding:1.1rem 1rem 1.15rem;border-radius:14px;
    background:var(--white);border:1px solid rgba(28,36,32,.08);box-shadow:0 10px 24px -20px rgba(8,31,26,.35);
  }
  .quality-band-feature-icon{width:44px;height:44px;margin-bottom:0;}
  .quality-band-feature b{font-size:.92rem;line-height:1.3;margin:0;}
  .quality-band-feature p{display:none;}
  .quality-band-bottom{display:none;}

  /* ---------- 5. About / forest story ---------- */
  .about-v5{padding-block:var(--m-sec);}
  .about-v5-grid{gap:2rem;}
  .about-v5-heading{font-size:var(--m-h2);line-height:1.1;}
  .about-v5-desc{font-size:var(--m-body);line-height:1.7;margin-block:1rem 1.5rem;}
  .about-v5-btn-primary{height:52px;}
  .about-v5-btn-ghost{display:none;}
  .about-v5-visual{position:relative;padding-bottom:2.25rem;}
  .about-v5-frame{aspect-ratio:4/4.3;border-radius:var(--m-radius);}
  .about-v5-frame img{object-position:60% 50%;}
  .about-v5-stats{position:absolute;left:1rem;right:auto;bottom:0;width:auto;margin:0;display:block;}
  .about-v5-stat:not(:first-child){display:none;}
  .about-v5-stat{flex-wrap:nowrap;padding:.8rem 1.1rem;border-radius:14px;background:rgba(8,31,26,.92);}
  .about-v5-stat-icon{display:none;}
  .about-v5-bottom{display:none;}

  /* ---------- 4/6. Products: swipe carousel ---------- */
  .products-v3{padding-block:var(--m-sec);}
  .products-v3-head{gap:1rem;margin-bottom:1.75rem;}
  .products-v3-heading{font-size:var(--m-h2);}
  .products-v3-tagline{display:none;}
  .products-v3-head-right{padding-left:0;border:none;}
  .products-v3-head-right::before{display:none;}
  .products-v3-lead{font-size:var(--m-body);margin-bottom:1.25rem;}
  .products-v3-cta{height:48px;}
  .products-v3-grid{gap:14px;margin-bottom:0;padding-bottom:1.25rem;}
  .products-v3-card{flex:0 0 min(84vw,340px);scroll-snap-align:start;height:auto;}
  .products-v3-card[data-reveal]{opacity:1;transform:none;}
  .products-v3-card-media{aspect-ratio:4/3.4;border-radius:var(--m-radius) var(--m-radius) 0 0;}
  .products-v3-card-media img{transform:none !important;}
  .products-v3-card-link{border-radius:var(--m-radius);}
  .products-v3-card-tag{display:none;}
  .products-v3-card-num{left:1.1rem;top:1rem;}
  .products-v3-card-num b{font-size:1.7rem;}
  .products-v3-card-icon{width:52px;height:52px;right:1.1rem;}
  .products-v3-card-icon svg{width:21px;height:21px;}
  .products-v3-card-panel{padding:1.9rem 1.25rem 1.3rem;border-radius:0 0 var(--m-radius) var(--m-radius);}
  .products-v3-card-panel h3{font-size:1.3rem;margin-bottom:.4rem;}
  .products-v3-card-panel p{font-size:.88rem;line-height:1.55;margin-bottom:1rem;}
  .products-v3 .m-carousel-dots{margin-top:.25rem;}

  /* ---------- 7. Global network ---------- */
  .network-v3{padding-block:var(--m-sec);}
  .network-v3-seal,.network-v3-log,.network-v3-script,.network-v3-brandline{display:none;}
  .network-v3-grid{gap:1.75rem;}
  .network-v3-heading{font-size:var(--m-h2);}
  .network-v3-line{white-space:normal;}
  .network-v3-copy p{font-size:var(--m-body);margin-block:1rem 1.5rem;}
  .network-v3-copy p.eyebrow{font-size:.72rem;margin:0;line-height:1.5;}
  .network-v3-cta{height:52px;}
  .network-v3-map-wrap{
    margin-inline:calc(var(--container-pad) * -.75);
    border-radius:var(--m-radius);overflow:hidden;
    background:radial-gradient(ellipse at 70% 60%,rgba(237,28,36,.1),transparent 60%),rgba(253,245,242,.04);
    border:1px solid rgba(253,245,242,.1);
    padding:.75rem .25rem 3rem;
  }
  /* full world map, never cropped — Americas through New Zealand stay visible */
  .network-v3-map-wrap .network-map-svg{width:100%;max-width:none;margin:0;}
  .network-map-svg .map-labels text{font-size:15px;letter-spacing:1px;}
  .network-map-svg .map-labels .map-label--country{font-size:12px;letter-spacing:.6px;}
  .network-map-svg .route{stroke-width:2;}
  .network-map-svg .marker{r:7px;}
  .network-map-svg .marker--hq,.network-map-svg .marker-pulse{r:9px;}
  .network-map-svg .particle{r:3.5px;}
  .network-map-legend{position:absolute;left:1rem;bottom:1rem;margin:0;gap:1.25rem;font-size:.78rem;}
  .network-v3-stats{flex-direction:row;gap:0;}
  .network-v3-stat,.network-v3-stat:last-child{
    flex:1 1 0;flex-direction:column;align-items:flex-start;gap:.55rem;padding:1rem .75rem 0;
    border:none;border-left:1px solid var(--v5-line);transform:none;
  }
  .network-v3-stat:first-child{border-left:none;padding-left:0;}
  .network-v3-stat[data-reveal]{transition-delay:calc(var(--stagger,0) * 100ms);}
  .network-v3-stat-icon{width:36px;height:36px;}
  .network-v3-stat-icon svg{width:17px;height:17px;}
  .network-v3-stat-body b{font-size:1.55rem;}
  .network-v3-stat-body .network-v3-stat-word{font-size:1.25rem;}
  .network-v3-stat-body em{font-size:.72rem;line-height:1.35;}
  .network-v3-regions{
    display:flex;flex-wrap:wrap;justify-content:flex-start;gap:8px;
    margin-top:1.75rem;padding-top:1.5rem;padding-bottom:0;
  }
  .network-v3-region{flex:0 0 auto;flex-direction:row;gap:0;padding:0;}
  .network-v3-region-icon{display:none;}
  .network-v3-region label{
    display:inline-flex;align-items:center;height:34px;padding:0 .9rem;border-radius:999px;
    border:1px solid rgba(250,190,167,.35);background:rgba(253,245,242,.05);font-size:.7rem;letter-spacing:.1em;
  }

  /* ---------- 8. Process: horizontal timeline ---------- */
  .process-v3{padding-block:var(--m-sec);}
  .process-v3-seal{display:none;}
  .process-v3-head{gap:1rem;margin-bottom:1.75rem;}
  .process-v3-heading{font-size:var(--m-h2);}
  .process-v3-tagline{display:none;}
  .process-v3-lead{font-size:var(--m-body);margin:0;}
  .process-v3-steps{
    --pv3-circle:clamp(116px,34vw,136px);
    flex-direction:row;align-items:flex-start;justify-content:flex-start;gap:0;padding-bottom:.5rem;
  }
  .process-v3-step,.process-v3-step[data-reveal]{
    flex:0 0 clamp(168px,50vw,210px);--pv3-circle:clamp(116px,34vw,136px);
    scroll-snap-align:start;opacity:1;transform:none;
  }
  .process-v3-step .process-v3-circle{clip-path:none;margin-bottom:1.3rem;}
  .process-v3-num,.process-v3-num[data-reveal]{opacity:1;transform:none;}
  .process-v3-step h3{font-size:1rem;}
  .process-v3-step p{font-size:.82rem;line-height:1.5;max-width:20ch;}
  .process-v3-arrow{
    display:flex;flex:0 0 28px;align-self:flex-start;width:auto;height:26px;
    margin:calc(1.6rem + .8rem + var(--pv3-circle) / 2 - 13px) -8px 0;
  }
  .process-v3-arrow-line{left:0;right:0;top:50%;bottom:auto;width:auto;height:1px;transform:scaleX(1);}
  .process-v3-arrow-line::after{display:none;}
  .process-v3-arrow-node{transform:scale(1);width:24px;height:24px;}
  .process-v3 .m-carousel-dots{margin-top:1rem;}

  /* ---------- 9. Why choose us ---------- */
  .why-choose{padding-block:var(--m-sec) clamp(8.75rem,42vw,11rem);}
  .why-choose-bg{background-image:url('../img/whychoose-bg-900.webp');height:clamp(130px,36vw,170px);}
  .why-choose-top{gap:2rem;}
  .why-choose-heading{font-size:var(--m-h2);}
  .why-choose-desc{font-size:var(--m-body);margin-bottom:1.5rem;}
  .why-choose-row{gap:0;}
  .why-choose-btn{height:52px;}
  .why-choose-divider,.why-choose-stat{display:none;}
  .why-choose-grid{grid-template-columns:1fr 1fr;gap:12px;}
  .why-choose-grid::before{display:none;}
  .why-choose-feature{
    text-align:left;padding:1.05rem .95rem 1.1rem;border-radius:14px;
    background:rgba(255,255,255,.72);border:1px solid rgba(28,36,32,.07);
  }
  .why-choose-feature-icon{width:42px;height:42px;margin:0 0 .75rem;}
  .why-choose-feature-icon svg{width:20px;height:20px;}
  .why-choose-feature b{font-size:.94rem;line-height:1.3;margin-bottom:.3rem;}
  .why-choose-feature p{margin:0;font-size:.8rem;line-height:1.45;max-width:none;}

  /* ---------- 10. Final CTA ---------- */
  .cta-v3{min-height:clamp(520px,150vw,600px);align-items:flex-end;padding-block:var(--m-sec) calc(var(--m-sec) - 8px);}
  .cta-v3-media img{object-position:62% 50%;}
  .cta-v3-media::after{
    background:linear-gradient(180deg,rgba(8,31,26,.15) 0%,rgba(8,31,26,.35) 30%,rgba(8,31,26,.82) 62%,rgba(8,31,26,.97) 100%);
  }
  .cta-v3 .eyebrow{color:var(--timber-300);}
  .cta-v3 .eyebrow::before{background:var(--timber-300);}
  .cta-v3-heading{font-size:clamp(2.1rem,1.5rem + 3vw,2.6rem);}
  .cta-v3-line{white-space:normal;}
  .cta-v3-line i{text-wrap:balance;}
  .cta-v3-desc{font-size:var(--m-body);margin:1rem 0 1.5rem;}
  .cta-v3-btn{width:100%;height:54px;justify-content:center;}
  .cta-v3-metrics{display:none;}

  /* ---------- Footer ---------- */
  .footer-brand-heading{font-size:1.45rem;}
  .footer-bottom{gap:.5rem;}
  .footer-legal{flex-wrap:wrap;gap:0 .7rem;width:100%;}
  .footer-legal span,.footer-legal a{white-space:nowrap;}
  .footer-legal span[aria-hidden]{display:none;}
  .footer-legal{gap:0 1.1rem;}
  .footer-legal a{display:inline-flex;align-items:center;min-height:44px;}
  .footer-legal .back-to-top{margin-left:auto;}

  .products-v3-explore{font-size:.74rem;min-height:32px;}
}

@media (max-width:374px){
  .hero-v3-title{font-size:2.35rem;}
  .hero-v3-stats .stat b{font-size:1.4rem;}
  .quality-band-feature{padding:.95rem .8rem 1rem;}
  .why-choose-grid{grid-template-columns:1fr;gap:10px;}
  .why-choose-feature{display:grid;grid-template-columns:42px 1fr;column-gap:.9rem;align-items:start;padding:.95rem 1rem;}
  .why-choose-feature-icon{grid-row:span 2;margin:0;}
  .why-choose-feature b{margin:.1rem 0 .2rem;}
  .network-v3-stat-body em{font-size:.68rem;}
}

@media (max-width:767px) and (prefers-reduced-motion: reduce){
  .m-carousel-dots span{transition:none;}
}

@media (max-width:600px){
  .a2-strip-values {
        display: grid !important;
        grid-template-columns: 1fr !important;
        justify-items: center !important;
        align-items: center !important;
        text-align: center !important;
        gap: clamp(1.8rem, 1.4rem + 1.6vw, 2.5rem) !important;
        width: 100% !important;
    }

    .a2-strip-values > div {
        width: fit-content !important;
        margin-inline: auto !important;
        text-align: center !important;
    }
}
/* Performance (mobile only): skip rendering of far-below-the-fold sections until they near the viewport.
   Limited to sections that already clip their overflow, so nothing paints differently once rendered. */
@media (max-width:767px){
  .about-v5,.products-v3,.network-v3,.process-v3,.why-choose,.cta-v3,.site-footer,
  .a2-ops,.pdv2-overview,.pdv2-cta{
    content-visibility:auto;contain-intrinsic-size:auto 1000px;
  }
}
