@import url("https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600;700&display=swap");

/* Smooth page + anchor scroll (match home feel) */
html{
  scroll-behavior:smooth;
  scroll-padding-top:96px;
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
}

/* Theme: natural botanical greens — moss, fern, sage (no cyan) */
body.ayu{
  --ayu-green:#2f6b45;
  --ayu-green-deep:#1a4730;
  --ayu-green-soft:#4a8f63;
  --ayu-leaf:#5f8a3a;
  --ayu-leaf-soft:#8fb86a;
  --ayu-forest:#1a3324;
  --ayu-forest-deep:#0e2418;
  --ayu-ink:#0c1f16;
  --ayu-ink-mid:#143024;
  --ayu-mint:#eaf5e6;
  --ayu-mist:#f3f8f0;
  --ayu-teal:#3d9b6a;
  --ayu-teal-deep:#2a6e4a;
  --ayu-teal-ink:#1e4d35;
  --ayu-olive:var(--ayu-leaf);
  --ayu-olive-soft:var(--ayu-leaf-soft);
  --ayu-font:Outfit,Segoe UI,system-ui,sans-serif;
  --ayu-grad-hero:linear-gradient(135deg,#0e2418 0%,#1a3324 38%,#2f6b45 72%,#5f8a3a 100%);
  --ayu-grad-ink:linear-gradient(160deg,#0c1f16 0%,#143024 50%,#0e2418 100%);
  --ayu-glow-ink:
    radial-gradient(ellipse 55% 50% at 85% 20%,rgba(95,138,58,.2),transparent 60%),
    radial-gradient(ellipse 40% 45% at 10% 80%,rgba(47,107,69,.22),transparent 55%);
  background:var(--ayu-mist);
  color:var(--ayu-forest);
  font-family:var(--ayu-font) !important;
}
body.ayu,
body.ayu *:not(svg):not(path):not(circle):not(rect):not(line):not(polyline):not(polygon){
  font-family:var(--ayu-font) !important;
}
/* Site-wide type = home hero (Outfit) */
body.ayu h1,
body.ayu h2,
body.ayu h3,
body.ayu h4,
body.ayu .display,
body.ayu .ayu-sec-head h2,
body.ayu .ayu-page-hero h1,
body.ayu .page-hero h1{
  font-family:var(--ayu-font)!important;
  font-weight:700!important;
  letter-spacing:-.03em!important;
  line-height:1.15!important;
  font-style:normal!important;
  text-transform:none!important;
}
body.ayu h1:not(.ayu-hero-title){font-size:clamp(1.85rem,3.6vw,2.75rem)}
body.ayu h2{font-size:clamp(1.45rem,2.6vw,2.1rem)}
body.ayu h3{font-size:clamp(1.1rem,1.8vw,1.35rem);font-weight:600!important;letter-spacing:-.02em!important}
/* Hero title weight — size set per breakpoint (phone must fit full line) */
body.ayu .ayu-hero h1,
body.ayu .ayu-hero-title{
  letter-spacing:-.03em!important;
  font-weight:700!important;
}
body.ayu p,
body.ayu .ayu-page-hero-lead,
body.ayu .ayu-story-lead,
body.ayu .ayu-sec-head p,
body.ayu .muted,
body.ayu li,
body.ayu dd,
body.ayu label,
body.ayu input,
body.ayu textarea,
body.ayu select,
body.ayu button,
body.ayu .btn{
  font-family:var(--ayu-font)!important;
}
body.ayu p,
body.ayu .ayu-page-hero-lead,
body.ayu .ayu-story-lead,
body.ayu .ayu-sec-head p,
body.ayu .prod-card p,
body.ayu .ayu-best-card p{
  font-weight:400!important;
  line-height:1.55!important;
  letter-spacing:0!important;
}
body.ayu .announce{
  display:flex;
  align-items:center;
  height:34px;
  max-height:34px;
  padding:0;
  overflow:hidden;
  background:linear-gradient(90deg,#0a1f14 0%,#143d28 50%,#1a4730 100%);
  color:#d8efe0;
  font-family:var(--ayu-font);
  font-size:.78rem;
  font-weight:500;
  letter-spacing:.02em;
  border-bottom:1px solid rgba(201,230,176,.12);
  opacity:1;
  transition:max-height .28s ease,opacity .22s ease,border-color .22s ease;
}
body.ayu .site-chrome.is-scrolled .announce,
body.ayu .site-chrome:has(.site-header.is-scrolled) .announce{
  max-height:0;
  opacity:0;
  border-bottom-color:transparent;
  pointer-events:none;
}
body.ayu .announce .marquee-track span:after{color:var(--ayu-leaf-soft)}

/* Site-wide dark navbar (home hero style) */
body.ayu .site-chrome{
  position:sticky;
  top:0;
  z-index:230;
  background:linear-gradient(90deg,#0e2418 0%,#1a4730 48%,#2f6b45 100%)!important;
  box-shadow:0 8px 22px rgba(8,40,20,.18);
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  isolation:isolate;
}
body.ayu .site-header,
body.ayu .site-header.is-scrolled{
  background:transparent!important;
  border:0!important;
  border-bottom:0!important;
  box-shadow:none!important;
}
body.ayu .site-header:before{
  display:none!important;
  content:none!important;
  background:transparent!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
body.ayu .brand{
  display:flex;
  align-items:center;
  gap:.7rem;
  min-width:0;
  text-decoration:none;
}
body.ayu .brand img{
  height:52px;
  width:auto;
  max-width:56px;
  object-fit:contain;
  flex-shrink:0;
  filter:drop-shadow(0 2px 6px rgba(0,0,0,.18));
}
body.ayu .brand-name{
  display:flex!important;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
  gap:.08rem;
  min-width:0;
  line-height:1.05;
}
body.ayu .brand-name b{
  display:block;
  margin:0;
  font-family:var(--ayu-font)!important;
  font-weight:700;
  font-size:1.18rem;
  letter-spacing:-.03em;
  line-height:1.05;
  color:var(--ayu-teal);
  -webkit-text-fill-color:var(--ayu-teal);
}
body.ayu .brand-name em{
  display:block;
  margin:0;
  font-family:var(--ayu-font)!important;
  font-style:normal;
  font-size:.62rem;
  font-weight:600;
  letter-spacing:.16em;
  text-transform:uppercase;
  line-height:1.2;
  color:rgba(232,245,236,.88);
  -webkit-text-fill-color:rgba(232,245,236,.88);
  white-space:nowrap;
}
body.ayu .nav>a,
body.ayu .drop>a{
  border-radius:0;
  font-weight:500;
  letter-spacing:.01em;
  color:rgba(255,255,255,.92);
  background:transparent;
}
body.ayu .nav>a.on,
body.ayu .drop>a.on,
body.ayu .nav>a:hover,
body.ayu .drop>a:hover{
  color:#fff;
  background:rgba(255,255,255,.1);
}
body.ayu .nav>a.on:after,
body.ayu .drop>a.on:after{display:none}
body.ayu .drop-menu{background:#fff}
body.ayu .drop-menu a{color:var(--ayu-forest)}
body.ayu .drop-menu a:hover{background:#eaf5e6;color:var(--ayu-green-deep)}
body.ayu .nav-toggle{
  background:rgba(255,255,255,.12);
  color:#fff;
  border-radius:12px;
}
body.ayu .tool-btn{
  color:#fff;
  border-color:transparent;
  background:transparent;
}
body.ayu .tool-btn:hover,
body.ayu .tool-btn.on{
  color:#fff;
  background:rgba(61,143,95,.28);
  border-color:transparent;
  transform:none;
}
body.ayu .tool-btn b{background:var(--ayu-teal);color:#fff}
body.ayu .login-chip span{color:#fff}
body.ayu .nav-ico-line{stroke:#fff}

/* Home: transparent nav over hero, solid green on scroll */
body.ayu-home{background:var(--ayu-mist)}
body.ayu-home .site-chrome{
  position:fixed;
  top:0;left:0;right:0;
  z-index:230;
  background:transparent!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  transition:background .3s ease,box-shadow .3s ease;
}
body.ayu-home .site-chrome.is-scrolled,
body.ayu-home .site-chrome:has(.site-header.is-scrolled){
  background:linear-gradient(90deg,#0e2418 0%,#1a4730 48%,#2f6b45 100%)!important;
  box-shadow:0 10px 28px rgba(8,40,20,.24)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
/* Desktop home: inline search in nav */
@media (min-width:1181px){
  body.ayu-home .nav-wrap{
    grid-template-columns:auto minmax(0,1fr) minmax(160px,260px) auto;
  }
  body.ayu-home .search-box{
    display:block;
    position:relative;
    grid-column:3;
    inset:auto;
    z-index:auto;
    width:100%;
    max-width:260px;
    background:transparent;
    padding:0;
  }
  body.ayu-home .nav-tools{grid-column:4}
  body.ayu-home .search-open{display:none!important}
  body.ayu-home .search-close{display:none!important}
  body.ayu-home .search-mini input{
    background:rgba(255,255,255,.14);
    border-color:rgba(255,255,255,.22);
    color:#fff;
    caret-color:#fff;
  }
  body.ayu-home .search-mini input::placeholder{color:rgba(255,255,255,.62)}
  body.ayu-home .search-mini input:focus{
    background:rgba(255,255,255,.2);
    border-color:rgba(184,224,196,.55);
    box-shadow:0 0 0 3px rgba(143,184,106,.2);
  }
  body.ayu-home .site-chrome:has(.site-header.is-scrolled) .search-mini input{
    background:#fff;
    border-color:#d7e8dc;
    color:var(--ayu-forest);
    caret-color:var(--ayu-forest);
  }
  body.ayu-home .site-chrome:has(.site-header.is-scrolled) .search-mini input::placeholder{
    color:#6a8578;
  }
}
body.ayu-home .brand{
  gap:.7rem;
}
body.ayu-home .brand img{
  height:52px;
  max-width:56px;
  width:auto;
  margin:0;
  object-fit:contain;
  filter:drop-shadow(0 2px 8px rgba(0,0,0,.2));
}
body.ayu-home .brand-name{display:flex!important}
body.ayu-home .nav>a:hover,
body.ayu-home .drop>a:hover,
body.ayu-home .nav>a.on,
body.ayu-home .drop>a.on{
  background:transparent;
}
body.ayu-home .nav>a.on:after,
body.ayu-home .drop>a.on:after{
  display:block;
  left:18%;right:18%;
  bottom:4px;
  height:2px;
  background:var(--ayu-leaf-soft);
  border-radius:2px;
}
body.ayu .btn{
  font-family:var(--ayu-font);
  letter-spacing:.03em;
}
body.ayu .btn-primary{
  background:linear-gradient(135deg,var(--ayu-green-deep) 0%,var(--ayu-green) 100%);
  box-shadow:none;
  border-radius:999px;
}
body.ayu .btn-primary:hover{background:linear-gradient(135deg,var(--ayu-green) 0%,var(--ayu-green-soft) 100%)}
body.ayu .btn-ghost{border-color:var(--ayu-green);color:var(--ayu-green-deep);border-radius:999px}
body.ayu .btn-hero{
  background:linear-gradient(135deg,var(--ayu-green-deep) 0%,var(--ayu-green) 100%);
  box-shadow:0 14px 28px rgba(47,107,69,.22);
  border-radius:999px;
  text-transform:none;
  letter-spacing:.04em;
}
body.ayu .btn-hero:hover{transform:translateY(-2px);box-shadow:0 18px 32px rgba(47,107,69,.28)}
body.ayu .btn-hero-ghost{
  color:var(--ayu-green);
  border-color:var(--ayu-leaf-soft);
  background:transparent;
  border-radius:999px;
  letter-spacing:.04em;
}
body.ayu .btn-hero-ghost:hover{background:var(--ayu-green);border-color:var(--ayu-green);color:#fff}
body.ayu .ayu-band-forest .btn-hero-ghost{color:#b8e0c4;border-color:#b8e0c4}
body.ayu .ayu-band-forest .btn-hero-ghost:hover{background:#b8e0c4;border-color:#b8e0c4;color:var(--ayu-forest-deep)}
body.ayu .price b{color:var(--ayu-green);font-family:var(--ayu-font);font-size:1.15rem;font-weight:700}
body.ayu .prod-card{
  border:1px solid #d7e8dc;
  background:#fff;
  border-radius:22px;
  box-shadow:0 8px 24px rgba(22,53,31,.05);
}
body.ayu .prod-card:hover{
  transform:translateY(-6px);
  box-shadow:0 20px 40px rgba(47,107,69,.12);
  border-color:rgba(47,107,69,.28);
}
body.ayu .prod-card .thumb{
  display:flex;
  align-items:center;
  justify-content:center;
  background:radial-gradient(circle at 50% 45%,#fff 0%,#eaf5e6 72%);
  height:228px;
  padding:.85rem;
}
body.ayu .prod-card .thumb img,
body.ayu .prod-card .thumb video{
  width:auto;
  max-width:100%;
  max-height:100%;
  height:auto;
  object-fit:contain;
  object-position:center center;
  margin:auto;
  display:block;
  filter:drop-shadow(0 12px 16px rgba(42,34,26,.1));
}
body.ayu .prod-card .thumb.has-video{
  position:relative;
  padding:0;
  overflow:hidden;
  background:#0e2418;
}
body.ayu .prod-card .thumb.has-video video{
  width:100%;
  height:100%;
  max-width:none;
  max-height:none;
  object-fit:cover;
  filter:none;
}
body.ayu .prod-card .prod-vid-badge{
  position:absolute;
  left:.55rem;bottom:.55rem;
  z-index:2;
  margin:0;
  padding:.22rem .5rem;
  font-style:normal;
  font-family:var(--ayu-font);
  font-size:.68rem;
  font-weight:700;
  letter-spacing:.02em;
  color:#fff;
  background:rgba(14,36,24,.72);
  border-radius:999px;
  pointer-events:none;
}
body.ayu .prod-card .wa-card{display:none}
body.ayu .prod-card .wish-btn{
  top:12px;right:12px;width:34px;height:34px;
  box-shadow:none;border:1px solid #d7e8dc;background:#fff;
}
body.ayu .prod-card h3{font-family:var(--ayu-font);font-size:1.05rem;font-weight:600}
body.ayu .prod-card .muted{letter-spacing:.08em;text-transform:uppercase;font-size:.68rem}
body.ayu .prod-card .row-btns .btn{border-radius:999px;padding:.62rem .8rem}
body.ayu .trust-band{background:var(--ayu-mint);border-top:0}
body.ayu .trust-band:before{display:none}
body.ayu .trust-band:after{display:none}
body.ayu .site-footer{
  --foot-ink:#f4fbf6;
  --foot-mute:#c5ddcc;
  --foot-line:rgba(255,255,255,.12);
  --foot-accent:var(--ayu-teal);
  position:relative;
  margin-top:1.5rem;
  padding:0 0 1.4rem;
  color:var(--foot-ink);
  font-family:var(--ayu-font) !important;
  background:var(--ayu-glow-ink),var(--ayu-grad-ink);
  overflow:hidden;
}
body.ayu .site-footer,
body.ayu .site-footer *{
  font-family:var(--ayu-font) !important;
}
body.ayu .foot-wave{
  display:block;
  width:100%;
  height:64px;
  line-height:0;
  margin:0;
  position:relative;
  z-index:2;
  background:var(--ayu-mist);
  pointer-events:none;
}
body.ayu .foot-wave svg{
  display:block;
  width:100%;
  height:64px;
  overflow:hidden;
  vertical-align:bottom;
}
body.ayu .foot-wave-fill{
  fill:var(--ayu-ink);
}
body.ayu .foot-shell{
  position:relative;
  z-index:1;
  margin-top:-1px;
  padding-top:.35rem;
}
body.ayu .footer-grid{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) repeat(3,minmax(0,1fr));
  gap:1.1rem;
  padding:1.4rem 0 1.2rem;
  width:100%;
  max-width:100%;
  box-sizing:border-box;
}
body.ayu .footer-grid > div{
  min-width:0;
  max-width:100%;
  padding:1.25rem 1.2rem 1.3rem;
  background:rgba(255,255,255,.04);
  border:1px solid var(--foot-line);
  border-radius:18px;
  backdrop-filter:blur(6px);
  overflow-wrap:anywhere;
  word-break:break-word;
}
body.ayu .foot-brand{
  background:linear-gradient(160deg,rgba(61,155,106,.12),rgba(255,255,255,.03));
  border-color:rgba(61,155,106,.28);
}
body.ayu .foot-logo{
  height:70px;
  width:auto;
  max-width:168px;
  background:#fff;
  border-radius:14px;
  padding:.4rem .55rem;
  margin:0 0 .85rem;
  display:block;
  box-shadow:0 8px 20px rgba(0,0,0,.18);
}
body.ayu .site-footer .tagline{
  margin:0 0 .4rem;
  font-size:1rem;
  font-weight:700;
  letter-spacing:-.02em;
  color:var(--foot-ink);
}
body.ayu .site-footer .muted,
body.ayu .foot-brand > .muted{
  margin:0 0 1rem;
  max-width:34ch;
  font-size:.86rem;
  font-weight:400;
  line-height:1.55;
  color:var(--foot-mute);
}
body.ayu .site-footer h4{
  margin:0 0 .7rem;
  font-size:.72rem;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--ayu-teal);
  font-weight:700;
  border:0;
  padding:0;
}
body.ayu .foot-list{
  margin:0;
  padding:0;
  list-style:none;
}
body.ayu .foot-list li{
  position:relative;
  margin:0;
  padding:.28rem 0 .28rem 1rem;
  font-size:.88rem;
  font-weight:400;
  line-height:1.45;
  color:var(--foot-mute);
}
body.ayu .foot-list li:before{
  content:"";
  position:absolute;
  left:0;
  top:.72rem;
  width:.38rem;
  height:.38rem;
  border-radius:50%;
  background:var(--ayu-teal);
  box-shadow:0 0 0 2px rgba(61,155,106,.18);
}
body.ayu .foot-list a,
body.ayu .foot-list span{
  display:inline;
  font-size:inherit;
  font-weight:400;
  color:var(--foot-mute);
  margin:0;
  line-height:inherit;
}
body.ayu .footer-grid a,
body.ayu .footer-grid p{
  font-size:.88rem;
  font-weight:400;
  color:var(--foot-mute);
  margin:.3rem 0;
  line-height:1.45;
}
body.ayu .footer-grid a:hover,
body.ayu .foot-list a:hover{color:#fff}
body.ayu .foot-social{
  display:flex;
  flex-wrap:wrap;
  gap:.45rem;
  margin-top:.1rem;
  border:0;
  background:transparent;
}
body.ayu .foot-social a{
  display:grid;
  place-items:center;
  width:40px;height:40px;
  margin:0;
  border-radius:12px;
  border:1px solid rgba(61,155,106,.35);
  background:rgba(61,155,106,.1);
  color:#fff;
  transition:background .18s ease,transform .18s ease,border-color .18s ease;
}
body.ayu .foot-social a:hover{
  background:var(--ayu-teal);
  border-color:var(--ayu-teal);
  color:#062018;
  transform:translateY(-2px);
}
body.ayu .foot-social svg{
  width:17px;height:17px;
  fill:currentColor;
}
body.ayu .foot-contact .foot-cta{
  display:inline-flex;
  align-items:center;
  margin-top:.85rem;
  padding:.68rem 1.15rem;
  border-radius:999px;
  border:0;
  background:linear-gradient(135deg,var(--ayu-teal) 0%,#2a6e4a 100%);
  color:#fff !important;
  font-weight:700;
  font-size:.8rem;
  letter-spacing:.02em;
  text-transform:none;
  box-shadow:0 8px 18px rgba(61,155,106,.25);
}
body.ayu .foot-contact .foot-cta:hover{
  filter:brightness(1.08);
  color:#fff !important;
  background:linear-gradient(135deg,var(--ayu-teal) 0%,#2a6e4a 100%);
}
body.ayu .site-footer .copy{
  display:flex;
  flex-direction:row;
  flex-wrap:wrap;
  justify-content:space-between;
  align-items:center;
  gap:.5rem 1rem;
  margin-top:.35rem;
  border:1px solid var(--foot-line);
  border-radius:14px;
  padding:.85rem 1.15rem;
  font-size:.8rem;
  font-weight:500;
  color:var(--foot-mute);
  background:rgba(0,0,0,.2);
}
body.ayu .site-footer .copy a{
  color:var(--ayu-teal);
  font-weight:700;
}
body.ayu .site-footer .copy a:hover{color:#fff}
body.ayu .filters{
  background:#fff;
  border:1px solid #d7e8dc;
  box-shadow:0 10px 28px rgba(14,36,24,.06);
  border-radius:22px;
  padding:1.15rem 1rem 1.2rem;
}
body.ayu .filters h3{
  margin:0 0 .85rem;
  font-family:var(--ayu-font) !important;
  font-size:.72rem;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--ayu-green);
}
body.ayu .filters a{
  font-family:var(--ayu-font) !important;
  font-weight:600;
  color:var(--ayu-forest);
  border-radius:14px;
}
body.ayu .filters a img{
  background:radial-gradient(circle at 50% 30%,#fff,#eaf5e6);
  border-color:#d7e8dc;
}
body.ayu .filters a:hover,
body.ayu .filters a.on{
  background:#d8efe0;
  border-color:#b7d9c2;
  color:var(--ayu-green-deep);
}
body.ayu .filters a.on img{
  border-color:var(--ayu-teal);
  box-shadow:0 0 0 2px #fff,0 0 0 4px var(--ayu-teal);
}
body.ayu .page-hero{padding:1.6rem 0 .35rem}
body.ayu .page-hero h1{
  font-family:var(--ayu-font) !important;
  color:var(--ayu-green-deep);
  font-weight:700;
  letter-spacing:-.02em;
}
body.ayu .page-hero .sub{color:#4a6554;font-family:var(--ayu-font) !important}

/* Inner pages — hero band like home */
body.ayu .ayu-page-hero{
  position:relative;
  margin:0 0 .35rem;
  padding:3.4rem 16px 2.8rem;
  overflow:hidden;
  background:var(--ayu-glow-ink),var(--ayu-grad-hero);
  color:#f5fbf7;
}
body.ayu .ayu-page-hero:after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(ellipse 50% 60% at 90% 20%,rgba(61,155,106,.2),transparent 55%),
    linear-gradient(180deg,rgba(10,26,17,.15) 0%,rgba(10,26,17,.35) 100%);
}
body.ayu .ayu-page-hero-inner{
  position:relative;
  z-index:1;
  max-width:40rem;
}
body.ayu .ayu-page-hero .ayu-eyebrow{
  margin:0 0 .55rem;
  color:var(--ayu-teal);
  font-family:var(--ayu-font) !important;
  font-size:.7rem;
  font-weight:700;
  letter-spacing:.2em;
}
body.ayu .ayu-page-hero h1{
  margin:0 0 .55rem;
  font-family:var(--ayu-font) !important;
  font-size:clamp(2.1rem,4.2vw,3.2rem);
  font-weight:700;
  letter-spacing:-.03em;
  line-height:1.2;
  color:#fff;
  -webkit-text-fill-color:#fff;
  background:none;
  text-transform:none;
}
body.ayu .ayu-page-hero-lead{
  margin:0;
  max-width:42ch;
  font-family:var(--ayu-font) !important;
  font-size:clamp(.95rem,1.5vw,1.08rem);
  font-weight:400;
  line-height:1.55;
  color:rgba(232,245,236,.86);
}
body.ayu .ayu-page-hero-bg{
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  overflow:hidden;
}
body.ayu .ayu-page-hero-bg img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  opacity:.28;
  filter:saturate(.9) contrast(1.05);
}
body.ayu .ayu-shop-hero{
  padding:3.6rem 16px 3.2rem;
  min-height:300px;
  display:flex;
  align-items:center;
}
body.ayu .ayu-shop-hero:after{
  background:
    radial-gradient(ellipse 50% 55% at 88% 40%,rgba(61,155,106,.22),transparent 55%),
    linear-gradient(105deg,rgba(10,26,17,.88) 0%,rgba(13,32,22,.62) 48%,rgba(13,32,22,.78) 100%);
}
body.ayu .ayu-shop-hero-inner{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);
  align-items:center;
  gap:1.5rem 2rem;
  width:min(1180px,100%);
  margin:0 auto;
  max-width:100%;
}
body.ayu .ayu-shop-hero .ayu-page-hero-copy{
  max-width:34rem;
}
body.ayu .ayu-shop-hero .ayu-page-hero-lead{
  margin:0 0 1.15rem;
}
body.ayu .ayu-shop-hero .btn-primary{
  border-radius:999px;
  padding:.62rem 1.25rem;
  font-weight:600;
}
body.ayu .ayu-shop-hero-visual{
  position:relative;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  min-width:0;
}
body.ayu .ayu-shop-hero-visual:before{
  content:"";
  position:absolute;
  left:50%;
  top:55%;
  width:78%;
  height:50%;
  transform:translate(-50%,-50%);
  border-radius:50%;
  background:radial-gradient(circle,rgba(61,155,106,.28) 0%,rgba(47,107,69,.14) 48%,transparent 72%);
  filter:blur(3px);
  pointer-events:none;
  z-index:0;
}
body.ayu .ayu-shop-hero-visual img{
  position:relative;
  z-index:1;
  display:block;
  width:100%;
  max-width:380px;
  height:auto;
  object-fit:contain;
  filter:drop-shadow(0 18px 24px rgba(0,0,0,.35));
}
body.ayu .ayu-shop-wrap{
  padding:1.5rem 0 2.4rem;
}
body.ayu .ayu-shop-wrap .shop-layout{
  padding:0;
  gap:1.35rem;
}
body.ayu .ayu-shop-main .empty{
  font-family:var(--ayu-font) !important;
  color:#4a6554;
  background:#fff;
  border:1px solid #d7e8dc;
  border-radius:20px;
  padding:2.2rem 1.2rem;
}
body.ayu .bulk-tiles article,body.ayu .bulk-aside-card,body.ayu .form-card,body.ayu .prod-buy,body.ayu .prod-info section{
  background:#fff;border-color:#d7e8dc;border-radius:20px;box-shadow:0 10px 24px rgba(22,53,31,.05);
}

/* White-label page uses bulk layout classes */
body.ayu-wl .ayu-bulk-tiles{
  grid-template-columns:repeat(3,minmax(0,1fr));
}

/* About page */
body.ayu-about{
  background:
    radial-gradient(ellipse 55% 40% at 90% 8%,rgba(61,155,106,.06),transparent 55%),
    linear-gradient(180deg,#f3f8f0 0%,#eef7f1 28%,#f7fbf8 100%);
}
body.ayu .ayu-about-hero .ayu-bulk-hero-visual img{
  object-position:center 40%;
}
body.ayu .ayu-about-wrap{
  padding:2rem 0 2.4rem;
}
body.ayu .ayu-about-lead{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
  gap:1.4rem 1.6rem;
  align-items:center;
  margin:0 0 1.5rem;
  padding:1.15rem;
  background:#fff;
  border:1px solid #d7e8dc;
  border-radius:24px;
  box-shadow:0 12px 28px rgba(22,53,31,.06);
}
body.ayu .ayu-about-dirs{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:.75rem;
  min-width:0;
}
body.ayu .ayu-about-dir{
  margin:0;
  position:relative;
  border-radius:18px;
  overflow:hidden;
  background:radial-gradient(circle at 50% 30%,#fff,#eaf5e6);
  min-height:0;
}
body.ayu .ayu-about-dir img{
  display:block;
  width:100%;
  height:100%;
  min-height:260px;
  max-height:380px;
  aspect-ratio:3/4;
  object-fit:cover;
  object-position:center 18%;
}
body.ayu .ayu-about-dir figcaption{
  position:absolute;
  left:8px;right:8px;bottom:8px;
  padding:.55rem .7rem;
  border-radius:12px;
  background:rgba(10,26,17,.88);
  color:#fff;
  backdrop-filter:blur(8px);
}
body.ayu .ayu-about-dir figcaption em{
  display:block;
  margin:0;
  font-style:normal;
  font-size:.62rem;
  font-weight:700;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--ayu-teal);
  font-family:var(--ayu-font)!important;
}
body.ayu .ayu-about-dir figcaption strong{
  display:block;
  margin:.15rem 0 0;
  font-size:.98rem;
  line-height:1.2;
  font-family:var(--ayu-font)!important;
  color:#fff;
}
body.ayu .ayu-about-dir-tel{
  display:block;
  margin:.28rem 0 0;
  font-size:.72rem;
  font-weight:600;
  letter-spacing:.02em;
  color:#d7efe0;
  text-decoration:none;
  font-family:var(--ayu-font)!important;
}
body.ayu .ayu-about-dir-tel:hover{color:var(--ayu-teal)}
body.ayu .ayu-about-copy{
  min-width:0;
  padding:.25rem .35rem .15rem 0;
}
body.ayu .ayu-about-copy .ayu-eyebrow,
body.ayu .ayu-about-copy .ayu-about-lead-label{
  margin:0 0 .4rem;
  color:var(--ayu-green);
  font-family:var(--ayu-font)!important;
  font-weight:500!important;
  font-style:normal!important;
  letter-spacing:.02em!important;
  text-transform:none!important;
  font-size:.95rem!important;
}
body.ayu .ayu-about-thought{
  margin:.15rem 0 1rem;
  padding:.85rem 1rem .9rem;
  border-left:3px solid var(--ayu-green);
  background:rgba(47,107,69,.06);
  border-radius:0 12px 12px 0;
}
body.ayu .ayu-about-thought p{
  margin:0 0 .45rem!important;
  font-family:var(--ayu-font)!important;
  font-weight:400!important;
  font-style:italic;
  color:var(--ayu-forest)!important;
  font-size:.95rem;
  line-height:1.65;
}
body.ayu .ayu-about-thought cite{
  display:block;
  font-family:var(--ayu-font)!important;
  font-style:normal;
  font-weight:600;
  font-size:.82rem;
  color:var(--ayu-green-deep);
}
body.ayu .ayu-about-copy h2{
  margin:0 0 .7rem;
  font-family:var(--ayu-font)!important;
  font-size:clamp(1.4rem,2.8vw,2rem);
  font-weight:700;
  letter-spacing:-.02em;
  color:var(--ayu-green-deep);
}
body.ayu .ayu-about-copy p{
  margin:0 0 .7rem;
  color:#3d5648;
  font-size:.95rem;
  line-height:1.65;
  font-family:var(--ayu-font)!important;
}
body.ayu .ayu-about-points{
  list-style:none;
  margin:0 0 1.15rem;
  padding:0;
  display:grid;
  gap:.55rem;
}
body.ayu .ayu-about-points li{
  display:flex;
  align-items:flex-start;
  gap:.55rem;
  color:var(--ayu-forest);
  font-size:.9rem;
  line-height:1.45;
  font-family:var(--ayu-font)!important;
}
body.ayu .ayu-about-points img{
  width:28px;height:28px;
  object-fit:cover;
  border-radius:8px;
  flex-shrink:0;
  background:#eaf5e6;
}
body.ayu .ayu-about-points a{
  color:var(--ayu-teal);
  font-weight:700;
  text-decoration:none;
}
body.ayu .ayu-about-points a:hover{color:var(--ayu-green-deep)}
body.ayu .ayu-about-actions{
  display:flex;
  flex-wrap:wrap;
  gap:.65rem;
}
body.ayu .ayu-about-actions .btn{
  border-radius:999px;
}
body.ayu .ayu-about-banner{
  margin:0 0 1.5rem;
  border-radius:22px;
  overflow:hidden;
  border:1px solid #d7e8dc;
  box-shadow:0 12px 28px rgba(22,53,31,.08);
}
body.ayu .ayu-about-banner img{
  display:block;
  width:100%;
  height:min(280px,42vw);
  object-fit:cover;
  object-position:center;
}
body.ayu .ayu-about-cards{
  margin:0 0 .25rem;
}
body.ayu-about .ayu-best{
  background:
    radial-gradient(ellipse 45% 50% at 8% 20%,rgba(47,107,69,.05),transparent 60%),
    #fff;
  border-top:1px solid #d7e8dc;
}

/* Contact page */
body.ayu-contact{
  background:
    radial-gradient(ellipse 55% 40% at 90% 8%,rgba(61,155,106,.06),transparent 55%),
    linear-gradient(180deg,#f3f8f0 0%,#eef7f1 28%,#f7fbf8 100%);
}
body.ayu .ayu-contact-wrap{
  padding:2rem 0 2.6rem;
}
body.ayu .ayu-contact-tiles{
  display:flex;
  flex-wrap:nowrap;
  align-items:stretch;
  gap:.75rem;
  margin:0 0 1.5rem;
}
body.ayu .ayu-contact-tile{
  flex:1 1 0;
  min-width:0;
  display:flex;
  align-items:center;
  gap:.75rem;
  margin:0;
  padding:.9rem .95rem;
  background:#fff;
  border:1px solid #d7e8dc;
  border-radius:18px;
  box-shadow:0 10px 24px rgba(22,53,31,.05);
  color:inherit;
  text-decoration:none;
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}
body.ayu a.ayu-contact-tile{cursor:pointer}
body.ayu a.ayu-contact-tile:hover{
  transform:translateY(-3px);
  border-color:rgba(47,107,69,.28);
  box-shadow:0 16px 32px rgba(47,107,69,.1);
}
body.ayu .ayu-contact-tile-ico{
  display:grid;
  place-items:center;
  width:46px;height:46px;
  flex-shrink:0;
  border-radius:14px;
  overflow:hidden;
  background:linear-gradient(145deg,#eaf5e6,#d8efe0);
  border:1px solid #d7e8dc;
}
body.ayu .ayu-contact-tile-ico img{
  width:100%;height:100%;
  object-fit:cover;
  display:block;
}
body.ayu .ayu-contact-tile-body{
  display:flex;
  flex-direction:column;
  gap:.12rem;
  min-width:0;
}
body.ayu .ayu-contact-tile-body em{
  margin:0;
  font-style:normal;
  font-size:.62rem;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--ayu-teal);
  font-family:var(--ayu-font)!important;
}
body.ayu .ayu-contact-tile-body strong{
  margin:0;
  font-size:.95rem;
  font-weight:700;
  line-height:1.25;
  color:var(--ayu-green-deep);
  font-family:var(--ayu-font)!important;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
body.ayu .ayu-contact-tile-body span{
  margin:0;
  font-size:.78rem;
  line-height:1.4;
  color:#4a6554;
  font-family:var(--ayu-font)!important;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
body.ayu .ayu-contact-split{
  grid-template-columns:minmax(0,.75fr) minmax(380px,460px);
  gap:1.25rem;
}
body.ayu .ayu-contact-form.form-card,
body.ayu .ayu-contact-split .ayu-bulk-form{
  max-width:none;
  width:100%;
}
body.ayu-contact,
body.ayu-contact .ayu-page-hero h1,
body.ayu-contact .ayu-page-hero-lead,
body.ayu-contact .ayu-eyebrow,
body.ayu-contact .ayu-bulk-chips span,
body.ayu-contact .ayu-bulk-form h2,
body.ayu-contact .ayu-bulk-form label,
body.ayu-contact .ayu-bulk-form input,
body.ayu-contact .ayu-bulk-form textarea,
body.ayu-contact .ayu-bulk-form .btn,
body.ayu-contact .ayu-contact-tile-body em,
body.ayu-contact .ayu-contact-tile-body strong,
body.ayu-contact .ayu-contact-tile-body span{
  font-family:var(--ayu-font)!important;
}
body.ayu-contact .ayu-bulk-form h2{
  letter-spacing:-.03em;
  font-weight:700;
  line-height:1.2;
}

/* Bulk page */
body.ayu .ayu-bulk-hero{
  padding:3.4rem 16px 3rem;
  min-height:320px;
  display:flex;
  align-items:center;
}
body.ayu .ayu-bulk-hero:after{
  background:
    radial-gradient(ellipse 50% 55% at 88% 40%,rgba(61,155,106,.22),transparent 55%),
    linear-gradient(105deg,rgba(10,26,17,.9) 0%,rgba(13,32,22,.58) 48%,rgba(13,32,22,.8) 100%);
}
body.ayu .ayu-bulk-hero-inner{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);
  align-items:center;
  gap:1.5rem 2rem;
  width:min(1180px,100%);
  margin:0 auto;
}
body.ayu .ayu-bulk-hero .ayu-page-hero-copy{max-width:36rem}
body.ayu .ayu-bulk-hero .ayu-page-hero-lead{margin:0 0 1rem}
body.ayu .ayu-bulk-chips{
  display:flex;
  flex-wrap:wrap;
  gap:.4rem;
  margin:0 0 1.15rem;
}
body.ayu .ayu-bulk-chips span{
  display:inline-flex;
  padding:.28rem .7rem;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.22);
  background:rgba(255,255,255,.1);
  font-size:.72rem;
  font-weight:700;
  letter-spacing:.04em;
  color:#f5fbf7;
}
body.ayu .ayu-bulk-hero .btn-primary{
  border-radius:999px;
  padding:.62rem 1.25rem;
}
body.ayu .ayu-bulk-hero-visual{
  position:relative;
  min-width:0;
  border-radius:22px;
  overflow:hidden;
  box-shadow:0 18px 40px rgba(0,0,0,.28);
  border:1px solid rgba(255,255,255,.12);
}
body.ayu .ayu-bulk-hero-visual img{
  display:block;
  width:100%;
  height:min(300px,42vw);
  object-fit:cover;
  object-position:center;
}
body.ayu .ayu-bulk-wrap{
  padding:2rem 0 2.6rem;
}
body.ayu .ayu-bulk-tiles{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1rem;
  margin:0 0 1.5rem;
}
body.ayu .ayu-bulk-tile{
  margin:0;
  padding:1.2rem 1.15rem 1.25rem;
  background:#fff;
  border:1px solid #d7e8dc;
  border-radius:20px;
  box-shadow:0 10px 24px rgba(22,53,31,.05);
  min-width:0;
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}
body.ayu .ayu-bulk-tile:hover{
  transform:translateY(-3px);
  border-color:rgba(47,107,69,.28);
  box-shadow:0 16px 32px rgba(47,107,69,.1);
}
body.ayu .ayu-bulk-tile-ico{
  display:grid;
  place-items:center;
  width:48px;height:48px;
  margin:0 0 .7rem;
  border-radius:14px;
  overflow:hidden;
  background:linear-gradient(145deg,#eaf5e6,#d8efe0);
  border:1px solid #d7e8dc;
}
body.ayu .ayu-bulk-tile-ico img{
  width:100%;height:100%;
  object-fit:cover;
  display:block;
}
body.ayu .ayu-bulk-tile h3{
  margin:0 0 .35rem;
  font-family:var(--ayu-font)!important;
  font-size:1.05rem;
  font-weight:700;
  color:var(--ayu-green-deep);
}
body.ayu .ayu-bulk-tile p{
  margin:0;
  color:#4a6554;
  font-size:.88rem;
  line-height:1.5;
  font-family:var(--ayu-font)!important;
}
body.ayu .ayu-bulk-steps{
  list-style:none;
  margin:0 0 1.6rem;
  padding:0;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1rem;
}
body.ayu .ayu-bulk-steps li{
  margin:0;
  padding:1.15rem 1.15rem 1.2rem;
  background:var(--ayu-glow-ink),var(--ayu-grad-ink);
  border:1px solid rgba(255,255,255,.1);
  border-radius:20px;
  color:#f5fbf7;
}
body.ayu .ayu-bulk-steps b{
  display:block;
  color:var(--ayu-teal);
  font-size:1.15rem;
  letter-spacing:.06em;
  font-family:var(--ayu-font)!important;
}
body.ayu .ayu-bulk-steps strong{
  display:block;
  margin:.35rem 0 .3rem;
  font-family:var(--ayu-font)!important;
  font-size:1.05rem;
  color:#fff;
}
body.ayu .ayu-bulk-steps span{
  display:block;
  color:rgba(230,244,242,.82);
  font-size:.86rem;
  line-height:1.5;
  font-family:var(--ayu-font)!important;
}
body.ayu .ayu-bulk-split{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(220px,260px);
  gap:1rem;
  align-items:start;
  width:100%;
}
body.ayu .ayu-bulk-form.form-card,
body.ayu .ayu-bulk-form{
  margin:0 !important;
  width:100% !important;
  max-width:none !important;
  box-sizing:border-box;
  padding:1.4rem 1.35rem 1.5rem;
  border-radius:22px;
  border:1px solid #d7e8dc;
  background:#fff;
  box-shadow:0 12px 28px rgba(22,53,31,.06);
}
/* Bulk / WL / contact: narrower form so right cards stay readable (must follow base form rules) */
body.ayu.ayu-bulk .ayu-bulk-split,
body.ayu.ayu-wl .ayu-bulk-split,
body.ayu.ayu-wl .ayu-wl-split,
body.ayu.ayu-contact .ayu-contact-split{
  grid-template-columns:minmax(0,1fr) minmax(360px,42%) !important;
  gap:1.25rem !important;
}
body.ayu.ayu-bulk .ayu-bulk-form.form-card,
body.ayu.ayu-bulk .ayu-bulk-form,
body.ayu.ayu-wl .ayu-bulk-form.form-card,
body.ayu.ayu-wl .ayu-wl-form.form-card,
body.ayu.ayu-wl .ayu-bulk-form,
body.ayu.ayu-contact .ayu-contact-form.form-card,
body.ayu.ayu-contact .ayu-bulk-form{
  max-width:620px !important;
  width:100% !important;
  justify-self:start;
}
body.ayu .ayu-bulk-form h2{
  margin:0 0 .3rem;
  font-family:var(--ayu-font)!important;
  font-size:clamp(1.35rem,2.4vw,1.7rem);
  color:var(--ayu-green-deep);
}
body.ayu .ayu-bulk-form > .muted{
  margin:0 0 1rem;
  color:#4a6554;
  font-family:var(--ayu-font)!important;
}
body.ayu .ayu-bulk-form label{
  font-family:var(--ayu-font)!important;
  color:var(--ayu-green-deep);
}
body.ayu .ayu-bulk-form input,
body.ayu .ayu-bulk-form select,
body.ayu .ayu-bulk-form textarea{
  font-family:var(--ayu-font)!important;
  border-color:#d7e8dc;
  border-radius:12px;
}
body.ayu .ayu-bulk-form input:focus,
body.ayu .ayu-bulk-form select:focus,
body.ayu .ayu-bulk-form textarea:focus{
  border-color:var(--ayu-teal);
  box-shadow:0 0 0 4px rgba(61,155,106,.16);
  outline:0;
}
body.ayu .ayu-bulk-form .btn-primary{
  margin-top:.35rem;
  border-radius:999px;
}
body.ayu .ayu-bulk-aside{
  display:grid;
  gap:.9rem;
}
body.ayu .ayu-bulk-wa{
  display:flex;
  align-items:center;
  gap:.85rem;
  padding:1rem 1.1rem;
  border-radius:18px;
  text-decoration:none;
  color:#f5fbf7;
  background:linear-gradient(135deg,#128c7e 0%,#075e54 100%);
  box-shadow:0 12px 28px rgba(7,94,84,.22);
  transition:transform .2s ease;
}
body.ayu .ayu-bulk-wa:hover{transform:translateY(-2px);color:#fff}
body.ayu .ayu-bulk-wa img{
  width:42px;height:42px;
  object-fit:contain;
  flex-shrink:0;
}
body.ayu .ayu-bulk-wa strong{
  display:block;
  font-family:var(--ayu-font)!important;
  font-size:1rem;
  margin:0 0 .15rem;
}
body.ayu .ayu-bulk-wa span{
  display:block;
  font-size:.82rem;
  opacity:.9;
  font-family:var(--ayu-font)!important;
}
body.ayu .ayu-bulk-aside-media{
  margin:0;
  border-radius:18px;
  overflow:hidden;
  border:1px solid #d7e8dc;
  box-shadow:0 10px 24px rgba(22,53,31,.06);
}
body.ayu .ayu-bulk-aside-media img{
  display:block;
  width:100%;
  height:160px;
  object-fit:cover;
}
body.ayu .ayu-bulk-aside-card{
  margin:0;
  padding:1.1rem 1.15rem 1.2rem;
  background:#fff;
  border:1px solid #d7e8dc;
  border-radius:18px;
  box-shadow:0 10px 24px rgba(22,53,31,.05);
}
body.ayu .ayu-bulk-aside-card h3{
  margin:0 0 .45rem;
  font-family:var(--ayu-font)!important;
  font-size:1.05rem;
  color:var(--ayu-green-deep);
}
body.ayu .ayu-bulk-aside-card p,
body.ayu .ayu-bulk-aside-card li{
  margin:0;
  color:#4a6554;
  font-size:.88rem;
  line-height:1.5;
  font-family:var(--ayu-font)!important;
}
body.ayu .ayu-bulk-aside-card ul{
  margin:0 0 .15rem 1.05rem;
  padding:0;
}
body.ayu .ayu-bulk-aside-card .btn{
  margin-top:.75rem;
  border-radius:999px;
}
body.ayu .prod-gallery .prod-photo{background:radial-gradient(circle at 50% 30%,#fff,#eaf5e6);border-color:#d7e8dc}
body.ayu .prod-buy h1,body.ayu h1,body.ayu h2{font-family:var(--ayu-font);font-weight:700}
body.ayu .prod-price b{color:var(--ayu-green);font-family:var(--ayu-font);font-weight:700}
body.ayu .prod-trust span{background:#d8efe0;color:var(--ayu-green-deep)}

/* Product detail page — home hero Outfit + plant theme */
body.ayu-product{
  background:
    radial-gradient(ellipse 55% 40% at 90% 8%,rgba(61,155,106,.06),transparent 55%),
    linear-gradient(180deg,#f3f8f0 0%,#eef7f1 28%,#f7fbf8 100%);
}
body.ayu-product,
body.ayu-product .ayu-product-wrap,
body.ayu-product .crumbs,
body.ayu-product .crumbs a,
body.ayu-product .crumbs em,
body.ayu-product .prod-buy,
body.ayu-product .prod-buy h1,
body.ayu-product .ayu-eyebrow,
body.ayu-product .prod-rate,
body.ayu-product .prod-price,
body.ayu-product .prod-meta,
body.ayu-product .prod-meta span,
body.ayu-product .prod-meta strong,
body.ayu-product .prod-slabs,
body.ayu-product .qty-row,
body.ayu-product .qty-row label,
body.ayu-product .qty-step,
body.ayu-product .qty-step button,
body.ayu-product .qty-step input,
body.ayu-product .btn,
body.ayu-product .prod-trust span,
body.ayu-product .prod-info,
body.ayu-product .prod-info h2,
body.ayu-product .prod-desc,
body.ayu-product .spec-table,
body.ayu-product .spec-table th,
body.ayu-product .spec-table td,
body.ayu-product .reviews,
body.ayu-product .reviews h2,
body.ayu-product .rev-head,
body.ayu-product .rev-item,
body.ayu-product .rev-form,
body.ayu-product .prod-related,
body.ayu-product .prod-more{
  font-family:var(--ayu-font)!important;
}
body.ayu .ayu-product-wrap{
  padding:0 0 2.4rem;
}
body.ayu .ayu-crumbs{
  padding:1.15rem 0 .35rem;
  font-size:.8rem;
  color:#5a7162;
}
body.ayu .ayu-crumbs a{
  color:var(--ayu-teal);
  font-weight:700;
  text-decoration:none;
}
body.ayu .ayu-crumbs a:hover{color:var(--ayu-green-deep)}
body.ayu .ayu-crumbs em{
  color:var(--ayu-green-deep);
  font-weight:600;
}
body.ayu .ayu-prod-detail{
  gap:1.5rem 1.75rem;
  padding:1rem 0 1.75rem;
}
body.ayu .ayu-prod-detail .prod-photo{
  border-radius:22px;
  border:1px solid #d7e8dc;
  background:radial-gradient(circle at 50% 28%,#fff,#eaf5e6);
  box-shadow:0 12px 28px rgba(22,53,31,.06);
  overflow:hidden;
}
body.ayu .ayu-prod-detail .prod-photo>img,
body.ayu .ayu-prod-detail .prod-photo>.prod-main-video{
  object-fit:contain;
  padding:.85rem;
  box-sizing:border-box;
}
body.ayu .ayu-prod-detail .prod-photo>.prod-main-video{
  display:block;
  width:100%;
  height:100%;
  min-height:280px;
  background:#0e2418;
  padding:0;
  object-fit:cover;
}
body.ayu .ayu-prod-detail .prod-photo>.prod-main-video[hidden],
body.ayu .ayu-prod-detail .prod-photo>img[hidden]{display:none!important}
body.ayu .ayu-prod-detail .prod-thumb.is-video{
  position:relative;
}
body.ayu .ayu-prod-detail .prod-thumb.is-video video{
  width:100%;height:100%;
  object-fit:cover;
  display:block;
}
body.ayu .ayu-prod-detail .prod-thumb-play{
  position:absolute;
  inset:auto auto 4px 4px;
  margin:0;
  padding:.1rem .35rem;
  font-style:normal;
  font-size:.62rem;
  font-weight:700;
  color:#fff;
  background:rgba(14,36,24,.72);
  border-radius:6px;
  line-height:1.3;
}
body.ayu .ayu-prod-detail .gal-nav{
  background:#fff;
  color:var(--ayu-green-deep);
  border:1px solid #d7e8dc;
  box-shadow:0 8px 18px rgba(22,53,31,.12);
}
body.ayu .ayu-prod-detail .prod-thumb{
  border-color:#d7e8dc;
  border-radius:14px;
  background:#fff;
}
body.ayu .ayu-prod-detail .prod-thumb.on{
  border-color:var(--ayu-teal);
  box-shadow:0 0 0 3px rgba(61,155,106,.18);
}
body.ayu .ayu-prod-buy{
  padding:1.35rem 1.4rem 1.45rem;
  border-radius:22px;
  border:1px solid #d7e8dc;
  background:#fff;
  box-shadow:0 12px 28px rgba(22,53,31,.06);
}
body.ayu .ayu-prod-buy .ayu-eyebrow{
  margin:0 0 .4rem;
  color:var(--ayu-teal);
  font-size:.68rem;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
}
body.ayu .ayu-prod-buy h1{
  margin:0 0 .55rem;
  font-size:clamp(1.55rem,3.2vw,2.35rem);
  font-weight:700;
  letter-spacing:-.03em;
  line-height:1.2;
  color:var(--ayu-green-deep);
  -webkit-text-fill-color:var(--ayu-green-deep);
  background:none;
  text-transform:none;
}
body.ayu .ayu-prod-buy .prod-rate{
  color:var(--ayu-leaf);
  margin:0 0 .75rem;
}
body.ayu .ayu-prod-buy .prod-rate a{
  color:var(--ayu-teal);
  font-weight:700;
  text-decoration:none;
}
body.ayu .ayu-prod-buy .prod-price b{
  font-size:clamp(1.55rem,2.6vw,1.9rem);
  letter-spacing:-.02em;
  color:var(--ayu-green);
}
body.ayu .ayu-prod-buy .prod-price small{color:#5a7162}
body.ayu .ayu-prod-buy .prod-price em{
  background:#d8efe0;
  color:var(--ayu-green-deep);
}
body.ayu .ayu-prod-buy .prod-meta{
  gap:.6rem;
  margin:0 0 1.05rem;
}
body.ayu .ayu-prod-buy .prod-meta li{
  background:linear-gradient(180deg,#f4fbf7,#eef7f1);
  border:1px solid #d7e8dc;
  border-radius:14px;
  padding:.65rem .75rem;
}
body.ayu .ayu-prod-buy .prod-meta span{
  color:var(--ayu-teal);
  letter-spacing:.1em;
}
body.ayu .ayu-prod-buy .prod-meta strong{
  color:var(--ayu-green-deep);
  font-weight:700;
}
body.ayu .ayu-prod-buy .qty-row{
  gap:.6rem;
  margin:1.05rem 0 .35rem;
}
body.ayu .ayu-prod-buy .qty-row label{
  font-weight:700;
  color:var(--ayu-green-deep);
  font-size:.82rem;
}
body.ayu .ayu-prod-buy .qty-step{
  border-color:#d7e8dc;
  border-radius:999px;
  overflow:hidden;
}
body.ayu .ayu-prod-buy .qty-step button{
  background:#eaf5e6;
  color:var(--ayu-green-deep);
  font-family:var(--ayu-font)!important;
}
body.ayu .ayu-prod-buy .qty-step input{
  font-family:var(--ayu-font)!important;
  font-weight:700;
  color:var(--ayu-green-deep);
}
body.ayu .ayu-prod-buy .btn-primary{
  border-radius:999px;
  padding:.62rem 1.2rem;
  font-weight:600;
  letter-spacing:.02em;
  background:linear-gradient(135deg,var(--ayu-green-deep) 0%,var(--ayu-green) 100%);
}
body.ayu .ayu-prod-buy .btn-ghost,
body.ayu .ayu-prod-buy .wa-buy{
  border-radius:999px;
  border-color:#d7e8dc;
  color:var(--ayu-green-deep);
  font-weight:600;
}
body.ayu .ayu-prod-buy .prod-trust{
  margin-top:1rem;
  gap:.45rem;
}
body.ayu .ayu-prod-buy .prod-trust span{
  border-radius:999px;
  background:#eaf5e6;
  border:1px solid #d7e8dc;
  color:var(--ayu-green-deep);
  font-weight:700;
  letter-spacing:.02em;
}
body.ayu-product .prod-info{
  gap:1rem;
  margin:0 0 1.5rem;
}
body.ayu-product .prod-info section{
  border:1px solid #d7e8dc;
  border-radius:20px;
  background:#fff;
  box-shadow:0 10px 24px rgba(22,53,31,.05);
  padding:1.2rem 1.25rem;
}
body.ayu-product .prod-info h2{
  margin:0 0 .65rem;
  font-size:1.15rem;
  font-weight:700;
  letter-spacing:-.02em;
  color:var(--ayu-green-deep);
}
body.ayu-product .prod-desc{
  color:#3d5648;
  line-height:1.7;
}
body.ayu-product .spec-table th{
  color:var(--ayu-teal);
  font-weight:700;
}
body.ayu-product .spec-table td{
  color:var(--ayu-green-deep);
  font-weight:600;
}
body.ayu-product .spec-table th,
body.ayu-product .spec-table td{
  border-bottom-color:#d7e8dc;
}
body.ayu-product .reviews{
  border:1px solid #d7e8dc;
  border-radius:20px;
  background:#fff;
  box-shadow:0 10px 24px rgba(22,53,31,.05);
  margin:0 0 1.5rem;
}
body.ayu-product .rev-head h2{
  font-size:1.15rem;
  font-weight:700;
  letter-spacing:-.02em;
  color:var(--ayu-green-deep);
}
body.ayu-product .rev-head p{color:var(--ayu-leaf)}
body.ayu-product .rev-form{
  background:#f4fbf7;
  border-color:#d7e8dc;
  border-radius:16px;
}
body.ayu-product .rev-item{
  background:#f7fbf8;
  border-color:#d7e8dc;
  border-radius:14px;
}
body.ayu-product .prod-more{
  font-size:clamp(1.25rem,2.4vw,1.55rem);
  font-weight:700;
  letter-spacing:-.02em;
  color:var(--ayu-green-deep);
  margin:0 0 1rem;
}
body.ayu .search-mini input{background-color:#fff;border-color:#d7e8dc}
body.ayu .search-mini input:focus{border-color:var(--ayu-teal);box-shadow:0 0 0 4px rgba(61,155,106,.18)}
/* Keep home desktop search glass (don't let white input paint the whole bar) */
@media (min-width:1181px){
  body.ayu-home .search-mini input{
    background:rgba(255,255,255,.16)!important;
    border-color:rgba(255,255,255,.28)!important;
    color:#fff!important;
  }
  body.ayu-home .search-mini input::placeholder{color:rgba(255,255,255,.65)!important}
  body.ayu-home .site-chrome.is-scrolled .search-mini input,
  body.ayu-home .site-chrome:has(.site-header.is-scrolled) .search-mini input{
    background:#fff!important;
    border-color:#d7e8dc!important;
    color:var(--ayu-forest)!important;
  }
  body.ayu-home .site-chrome.is-scrolled .search-mini input::placeholder,
  body.ayu-home .site-chrome:has(.site-header.is-scrolled) .search-mini input::placeholder{
    color:#6a8578!important;
  }
}
body.ayu .disc-all{color:var(--ayu-green);letter-spacing:.08em;text-transform:uppercase;font-size:.74rem}
body.ayu .disc-all:hover{color:#243226}

.ayu-hero{
  position:relative;
  margin:0;
  padding:7rem 16px 5.5rem;
  min-height:min(720px,92vh);
  background:var(--ayu-grad-hero);
  overflow:hidden;
  display:flex;
  align-items:center;
}
.ayu-hero-bg{
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  overflow:hidden;
}
.ayu-hero-bg picture,
.ayu-hero-bg img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}
.ayu-hero-bg img{
  opacity:.22;
  filter:saturate(.85) contrast(1.05);
}
.ayu-hero-nature{
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  overflow:hidden;
}
.ayu-nat{
  position:absolute;
  display:block;
  opacity:.42;
  filter:drop-shadow(0 6px 10px rgba(10,28,18,.22));
  will-change:transform;
}
.ayu-nat-leaf-1{
  top:14%;left:3%;
  width:42px;height:56px;
  animation:ayuNatSway 9s ease-in-out infinite;
}
.ayu-nat-leaf-2{
  top:58%;right:4%;
  width:34px;height:46px;
  opacity:.36;
  animation:ayuNatSway 11s ease-in-out infinite 1.4s reverse;
}
.ayu-nat-sprig{
  bottom:18%;left:8%;
  width:48px;height:62px;
  opacity:.38;
  animation:ayuNatFloat 10s ease-in-out infinite .6s;
}
.ayu-nat-drop{
  top:28%;right:42%;
  width:18px;height:26px;
  opacity:.34;
  animation:ayuNatFloat 7.5s ease-in-out infinite 1.8s;
}
.ayu-nat-seed{
  top:72%;left:38%;
  width:22px;height:22px;
  opacity:.3;
  animation:ayuNatDrift 12s ease-in-out infinite;
}
.ayu-nat-petal{
  top:20%;left:46%;
  width:20px;height:20px;
  opacity:.32;
  animation:ayuNatDrift 9.5s ease-in-out infinite 2s;
}
.ayu-nat-dot{
  position:absolute;
  width:6px;height:6px;
  border-radius:50%;
  background:radial-gradient(circle at 30% 30%,#eaf5e6 0%,#5f8a3a 60%,transparent 75%);
  opacity:.45;
  box-shadow:0 0 10px rgba(107,143,60,.35);
}
.ayu-nat-dot-a{top:36%;left:22%;animation:ayuNatSpark 5.5s ease-in-out infinite}
.ayu-nat-dot-b{top:48%;right:28%;width:5px;height:5px;animation:ayuNatSpark 6.8s ease-in-out infinite 1s}
.ayu-nat-dot-c{bottom:28%;left:48%;width:4px;height:4px;animation:ayuNatSpark 7.2s ease-in-out infinite 2.2s}
@keyframes ayuNatSway{
  0%,100%{transform:translateY(0) rotate(-8deg)}
  50%{transform:translateY(-14px) rotate(10deg)}
}
@keyframes ayuNatFloat{
  0%,100%{transform:translateY(0) translateX(0) rotate(0deg)}
  50%{transform:translateY(-18px) translateX(6px) rotate(6deg)}
}
@keyframes ayuNatDrift{
  0%,100%{transform:translate(0,0) rotate(0deg) scale(1);opacity:.28}
  50%{transform:translate(10px,-16px) rotate(18deg) scale(1.08);opacity:.5}
}
@keyframes ayuNatSpark{
  0%,100%{opacity:.15;transform:scale(.7)}
  45%{opacity:.7;transform:scale(1.15)}
  70%{opacity:.3;transform:scale(.9)}
}
@media (prefers-reduced-motion:reduce){
  .ayu-nat,.ayu-nat-dot{animation:none!important}
}
@media (max-width:900px){
  .ayu-nat-drop,.ayu-nat-seed,.ayu-nat-petal{display:none}
  .ayu-nat-leaf-1{width:32px;height:42px;top:10%;left:2%}
  .ayu-nat-leaf-2{width:28px;height:38px;top:auto;bottom:22%;right:2%}
  .ayu-nat-sprig{width:36px;height:46px;bottom:14%;left:4%;opacity:.3}
}
.ayu-hero:after{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  background:
    radial-gradient(ellipse 45% 60% at 88% 35%,rgba(61,155,106,.2) 0%,transparent 55%),
    radial-gradient(ellipse 40% 50% at 12% 70%,rgba(107,143,60,.18) 0%,transparent 50%),
    linear-gradient(135deg,rgba(14,36,24,.74) 0%,rgba(22,53,31,.52) 50%,rgba(47,107,69,.55) 100%);
}
.ayu-hero .ayu-hero-inner.container,
.ayu-hero-inner{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);
  align-items:center;
  gap:1.5rem 2rem;
  width:min(1180px,100%);
  max-width:100%;
  margin-inline:auto;
  padding-inline:0;
  box-sizing:border-box;
}
.ayu-kicker,.ayu-eyebrow{
  margin:0 0 .8rem;
  color:var(--ayu-teal-deep);
  font-size:.72rem;
  font-weight:600;
  letter-spacing:.18em;
  text-transform:uppercase;
}
body.ayu .ayu-hero .ayu-kicker{
  margin:0 0 .85rem;
  color:#b8e0c4;
  font-family:var(--ayu-font);
  letter-spacing:.2em;
  text-transform:uppercase;
  font-weight:600;
  font-size:.7rem;
}
body.ayu .ayu-hero-copy{
  position:relative;
  max-width:36rem;
  z-index:2;
}
body.ayu .ayu-hero-copy-glow{
  position:absolute;
  left:-8%;
  top:8%;
  width:70%;
  height:55%;
  border-radius:50%;
  background:radial-gradient(ellipse at center,rgba(61,155,106,.18) 0%,rgba(47,107,69,.1) 45%,transparent 70%);
  filter:blur(18px);
  pointer-events:none;
  z-index:0;
  animation:ayuHeroCopyGlow 6s ease-in-out infinite;
}
body.ayu .ayu-hero-copy-line{display:none!important}
body.ayu .ayu-hero-slant{display:none}
body.ayu .ayu-hero h1,
body.ayu .ayu-hero-title{
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:.08em;
  margin:0 0 1.5rem;
  max-width:max-content;
  font-family:var(--ayu-font);
  font-size:clamp(2.7rem,5.2vw,3.95rem);
  font-weight:700;
  line-height:1.1;
  color:#fff;
  letter-spacing:-.03em;
  text-transform:none;
  background:none;
  -webkit-text-fill-color:#fff;
  text-shadow:0 2px 24px rgba(0,0,0,.28);
  animation:ayuHeroCopyIn .9s cubic-bezier(.22,1,.36,1) both;
}
body.ayu .ayu-hero-line{
  display:block;
  white-space:nowrap;
}
body.ayu .ayu-hero-swap{
  display:inline-grid;
  vertical-align:baseline;
  align-items:center;
  min-width:12ch;
  height:1.18em;
  line-height:1.12;
  overflow:hidden;
  text-align:left;
}
body.ayu .ayu-hero-swap .ayu-hero-word{
  grid-area:1/1;
  margin:0;
  line-height:1.12;
  white-space:nowrap;
  font-weight:700;
  letter-spacing:-.02em;
  color:#c8e6a8;
  background:linear-gradient(180deg,#eaf5e6 0%,#b7d98a 42%,#8fb86a 100%);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  opacity:0;
  transform:translateY(.18em);
  filter:none;
  pointer-events:none;
  transition:
    opacity .5s cubic-bezier(.22,1,.36,1),
    transform .5s cubic-bezier(.22,1,.36,1);
}
body.ayu .ayu-hero-swap .ayu-hero-word.is-on{
  opacity:1;
  transform:translateY(0);
  pointer-events:auto;
  /* soft ink wash — matches title writing, no neon glow */
  filter:drop-shadow(0 1px 0 rgba(14,36,24,.2)) drop-shadow(0 6px 14px rgba(143,184,106,.22));
  animation:ayuHeroWordInk 2.8s ease-in-out infinite;
}
body.ayu .ayu-hero-swap .ayu-hero-word.is-out{
  opacity:0;
  transform:translateY(-.16em);
  animation:none;
  filter:none;
}
body.ayu .ayu-hero .ayu-hero-lead{
  position:relative;
  z-index:1;
  margin:0 0 1.45rem;
  max-width:42ch;
  font-family:var(--ayu-font);
  font-size:clamp(1.05rem,1.7vw,1.2rem);
  font-weight:400;
  line-height:1.55;
  color:rgba(230,244,242,.82);
  animation:ayuHeroCopyIn .9s cubic-bezier(.22,1,.36,1) .15s both;
}
body.ayu .ayu-hero .btn-primary,
body.ayu .ayu-hero .ayu-hero-cta{
  position:relative;
  z-index:1;
  overflow:hidden;
  isolation:isolate;
  border-radius:999px;
  padding:.62rem 1.35rem;
  font-family:var(--ayu-font);
  font-weight:600;
  font-size:.9rem;
  color:#fff;
  background:linear-gradient(135deg,var(--ayu-green-deep) 0%,var(--ayu-green) 100%);
  box-shadow:0 8px 22px rgba(15,60,35,.28);
  clip-path:none;
  text-transform:none;
  letter-spacing:.03em;
  animation:ayuHeroCopyIn .9s cubic-bezier(.22,1,.36,1) .28s both,ayuHeroCtaPulse 3.2s ease-in-out 1.2s infinite;
}
body.ayu .ayu-hero .ayu-hero-cta::after{display:none}
body.ayu .ayu-hero .ayu-hero-cta > span{position:relative;z-index:1}
body.ayu .ayu-hero .btn-primary:hover,
body.ayu .ayu-hero .ayu-hero-cta:hover{
  background:linear-gradient(135deg,var(--ayu-green) 0%,var(--ayu-green-soft) 100%);
  color:#fff;
  transform:translateY(-2px);
  box-shadow:0 12px 28px rgba(15,60,35,.35);
}
@keyframes ayuHeroCopyIn{
  from{opacity:0;transform:translateY(18px)}
  to{opacity:1;transform:translateY(0)}
}
@keyframes ayuHeroCopyGlow{
  0%,100%{opacity:.45}
  50%{opacity:1}
}
@keyframes ayuHeroWordInk{
  0%,100%{filter:drop-shadow(0 1px 0 rgba(14,36,24,.2)) drop-shadow(0 6px 14px rgba(143,184,106,.18))}
  50%{filter:drop-shadow(0 1px 0 rgba(14,36,24,.12)) drop-shadow(0 8px 18px rgba(184,224,196,.3))}
}
@keyframes ayuHeroCtaPulse{
  0%,100%{box-shadow:0 8px 22px rgba(15,60,35,.28)}
  50%{box-shadow:0 10px 28px rgba(61,155,106,.28),0 0 0 6px rgba(61,155,106,.08)}
}
@media (prefers-reduced-motion:reduce){
  body.ayu .ayu-hero-title,
  body.ayu .ayu-hero .ayu-hero-lead,
  body.ayu .ayu-hero .ayu-hero-cta,
  body.ayu .ayu-hero-copy-glow,
  body.ayu .ayu-hero-swap .ayu-hero-word.is-on{
    animation:none!important;
  }
}
.ayu-hero-visual{
  position:relative;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  min-width:0;
  min-height:420px;
  width:100%;
  max-width:560px;
  margin-left:auto;
  isolation:isolate;
}
.ayu-hero-glow{
  position:absolute;
  left:50%;
  bottom:6%;
  width:78%;
  height:42%;
  transform:translateX(-50%);
  border-radius:50%;
  background:
    radial-gradient(ellipse at center,rgba(61,155,106,.42) 0%,rgba(47,107,69,.22) 42%,transparent 72%);
  filter:blur(10px);
  z-index:0;
  pointer-events:none;
  animation:ayuHeroGlow 5.5s ease-in-out infinite;
}
.ayu-hero-ring{
  position:absolute;
  left:50%;
  bottom:18%;
  width:min(78%,420px);
  aspect-ratio:1;
  transform:translateX(-50%);
  border-radius:50%;
  border:1px solid rgba(61,155,106,.28);
  box-shadow:
    0 0 0 10px rgba(61,155,106,.04),
    inset 0 0 28px rgba(61,155,106,.08);
  z-index:0;
  pointer-events:none;
  animation:ayuHeroRing 8s ease-in-out infinite;
}
.ayu-hero-spark{
  position:absolute;
  width:7px;height:7px;
  border-radius:50%;
  background:radial-gradient(circle at 35% 35%,#fff 0%,var(--ayu-teal) 45%,transparent 70%);
  box-shadow:0 0 12px rgba(61,155,106,.75);
  z-index:2;
  pointer-events:none;
  opacity:.55;
}
.ayu-hero-spark-a{
  top:18%;right:16%;
  animation:ayuHeroSpark 4.8s ease-in-out infinite;
}
.ayu-hero-spark-b{
  top:42%;left:10%;
  width:5px;height:5px;
  animation:ayuHeroSpark 6.2s ease-in-out infinite .8s;
}
.ayu-hero-spark-c{
  bottom:28%;right:8%;
  width:6px;height:6px;
  animation:ayuHeroSpark 5.4s ease-in-out infinite 1.4s;
}
.ayu-hero-ring-outer{
  width:min(92%,500px);
  bottom:12%;
  opacity:.4;
  border-color:rgba(107,143,60,.35);
  animation:ayuHeroRingOuter 10s ease-in-out infinite;
}
.ayu-hero-orbit{
  position:absolute;
  left:50%;
  bottom:20%;
  width:min(70%,380px);
  aspect-ratio:1;
  transform:translateX(-50%);
  border-radius:50%;
  border:1px dashed rgba(232,245,236,.22);
  z-index:0;
  pointer-events:none;
  animation:ayuHeroOrbitSpin 18s linear infinite;
}
.ayu-hero-leaf{
  position:absolute;
  width:14px;height:22px;
  border-radius:70% 10% 70% 10%;
  background:linear-gradient(145deg,#5f8a3a 0%,#4a8f63 55%,#2a6e4a 100%);
  box-shadow:0 4px 10px rgba(14,36,24,.25);
  z-index:2;
  pointer-events:none;
  opacity:.7;
}
.ayu-hero-leaf-a{
  top:22%;left:8%;
  animation:ayuHeroLeafA 7.5s ease-in-out infinite;
}
.ayu-hero-leaf-b{
  top:30%;right:6%;
  width:12px;height:18px;
  animation:ayuHeroLeafB 8.8s ease-in-out infinite 1.2s;
}
.ayu-hero-stage{
  position:relative;
  z-index:1;
  width:100%;
  max-width:540px;
  overflow:visible;
  animation:ayuHeroFloat 7s ease-in-out infinite;
  transform-origin:center bottom;
}
.ayu-hero-visual .is-still{
  position:relative;
  z-index:1;
  display:block;
  width:100%;
  max-width:540px;
  height:auto;
  object-fit:contain;
  background:transparent!important;
  box-shadow:none!important;
  filter:drop-shadow(0 12px 18px rgba(0,0,0,.22));
  animation:ayuHeroBreath 5.5s ease-in-out infinite;
  transform-origin:center bottom;
}
.ayu-hero-shine{display:none}
@media (prefers-reduced-motion:reduce){
  .ayu-hero-visual .is-still,
  .ayu-hero-stage,
  .ayu-hero-glow,
  .ayu-hero-ring,
  .ayu-hero-orbit,
  .ayu-hero-spark,
  .ayu-hero-leaf{animation:none!important}
}
@keyframes ayuHeroFloat{
  0%,100%{transform:translateY(0) rotate(-.4deg)}
  50%{transform:translateY(-12px) rotate(.4deg)}
}
@keyframes ayuHeroBreath{
  0%,100%{transform:scale(1)}
  50%{transform:scale(1.025)}
}
@keyframes ayuHeroGlow{
  0%,100%{opacity:.55;transform:translateX(-50%) scale(.95)}
  50%{opacity:1;transform:translateX(-50%) scale(1.08)}
}
@keyframes ayuHeroRing{
  0%,100%{opacity:.35;transform:translateX(-50%) scale(.92)}
  50%{opacity:.75;transform:translateX(-50%) scale(1.04)}
}
@keyframes ayuHeroRingOuter{
  0%,100%{opacity:.2;transform:translateX(-50%) scale(.96)}
  50%{opacity:.55;transform:translateX(-50%) scale(1.06)}
}
@keyframes ayuHeroOrbitSpin{
  from{transform:translateX(-50%) rotate(0deg)}
  to{transform:translateX(-50%) rotate(360deg)}
}
@keyframes ayuHeroSpark{
  0%,100%{opacity:.15;transform:translateY(0) scale(.7)}
  40%{opacity:.9;transform:translateY(-14px) scale(1.15)}
  70%{opacity:.35;transform:translateY(-6px) scale(.85)}
}
@keyframes ayuHeroLeafA{
  0%,100%{opacity:.35;transform:translateY(0) rotate(-28deg)}
  50%{opacity:.85;transform:translateY(-18px) rotate(-12deg)}
}
@keyframes ayuHeroLeafB{
  0%,100%{opacity:.35;transform:translateY(0) rotate(24deg)}
  50%{opacity:.85;transform:translateY(-16px) rotate(38deg)}
}
.ayu-serve{
  position:relative;
  z-index:3;
  width:min(1120px,calc(100% - 40px));
  margin:-3.4rem auto 0;
  box-sizing:border-box;
}
.ayu-serve-card{
  display:grid;
  grid-template-columns:minmax(280px,34%) minmax(0,1fr);
  align-items:stretch;
  gap:0;
  background:#fff;
  border:1px solid rgba(47,107,69,.1);
  border-radius:24px;
  overflow:hidden;
  box-shadow:0 18px 40px rgba(14,36,24,.1);
  min-height:280px;
  max-height:none;
  height:auto;
}
.ayu-serve-copy{
  order:0;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:1.75rem 1.9rem 1.65rem 1.75rem;
  font-family:var(--ayu-font);
  min-width:0;
  text-align:left;
  background:linear-gradient(165deg,#fff 0%,#f6faf4 100%);
}
body.ayu .ayu-serve-copy h2{
  margin:0 0 .45rem;
  font-family:var(--ayu-font);
  font-size:clamp(1.45rem,2.2vw,1.75rem);
  font-weight:700;
  letter-spacing:-.025em;
  color:var(--ayu-green-deep);
  background:none;
  -webkit-text-fill-color:var(--ayu-green-deep);
  text-align:left;
}
.ayu-serve-copy p{
  margin:0;
  color:#3d5c58;
  line-height:1.55;
  max-width:38rem;
  font-size:.95rem;
  font-family:var(--ayu-font);
  font-weight:400;
}
.ayu-serve-copy p:first-of-type{margin-bottom:1.15rem}
.ayu-serve-copy p + p{display:none}
.ayu-serve-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:.65rem;
  margin:0;
  padding:0;
  list-style:none;
}
.ayu-serve-grid a{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:.55rem;
  min-width:0;
  padding:.85rem .8rem .8rem;
  font-family:var(--ayu-font);
  font-weight:600;
  font-size:.86rem;
  color:var(--ayu-forest);
  background:#fff;
  border:1px solid rgba(47,107,69,.12);
  border-radius:14px;
  box-shadow:0 4px 12px rgba(14,36,24,.04);
  text-decoration:none;
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease,color .2s ease;
}
.ayu-serve-grid a:hover{
  color:var(--ayu-green-deep);
  border-color:rgba(47,107,69,.32);
  box-shadow:0 8px 18px rgba(14,36,24,.1);
  transform:translateY(-2px);
}
.ayu-serve-grid a span:last-child{
  line-height:1.25;
  white-space:normal;
  overflow:visible;
  text-overflow:unset;
}
.ayu-serve-ico{
  display:grid;
  place-items:center;
  width:42px;height:42px;
  border-radius:12px;
  background:linear-gradient(145deg,#eaf5e6,#d8efe0);
  border:1px solid rgba(47,107,69,.18);
  flex-shrink:0;
  overflow:hidden;
  box-shadow:none;
}
.ayu-serve-ico img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.ayu-serve-media{
  order:0;
  position:relative;
  min-height:280px;
  height:100%;
  max-height:none;
  background:var(--ayu-grad-hero);
}
.ayu-serve-media:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,transparent 55%,rgba(255,255,255,.08));
  pointer-events:none;
}
.ayu-serve-media img,
.ayu-serve-media video{
  display:block;
  width:100%;
  height:100%;
  min-height:280px;
  max-height:none;
  object-fit:cover;
  object-position:center;
  background:#0e2418;
}

.ayu-sec-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:1rem;
  margin:0 0 1.3rem;
}
.ayu-sec-head h2{
  margin:0;
  font-family:var(--ayu-font);
  font-size:clamp(1.7rem,2.8vw,2.2rem);
  font-weight:600;
  color:#243226;
}
.ayu-sec-head .ayu-eyebrow{margin:0 0 .35rem}
.ayu-sec-center{justify-content:center;text-align:center}
.ayu-sec-center h2{font-family:var(--ayu-font);color:var(--ayu-teal-ink)}
.ayu-sec-center p{margin:.45rem auto 0;max-width:36rem;color:#5a6d5c;line-height:1.6}
.ayu-sec-ornament{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:1rem;
  margin:0 auto 1.15rem;
  max-width:420px;
}
.ayu-sec-ornament .ayu-orn-line{
  position:relative;
  flex:1;
  height:10px;
  display:flex;
  align-items:center;
  min-width:48px;
  background:transparent;
}
.ayu-sec-ornament .ayu-orn-line i{
  display:block;
  width:100%;
  height:1px;
  position:relative;
}
.ayu-sec-ornament .ayu-orn-line:first-child i{
  background:linear-gradient(90deg,transparent,rgba(107,143,60,.4),var(--ayu-teal));
}
.ayu-sec-ornament .ayu-orn-line:last-child i{
  background:linear-gradient(90deg,var(--ayu-teal),rgba(107,143,60,.4),transparent);
}
.ayu-sec-ornament .ayu-orn-line i:before,
.ayu-sec-ornament .ayu-orn-line i:after{
  content:"";
  position:absolute;
  top:50%;
  width:5px;height:5px;
  border-radius:50%;
  background:var(--ayu-teal);
  transform:translateY(-50%);
  box-shadow:0 0 0 2px #fff,0 0 0 3px rgba(61,155,106,.22);
}
.ayu-sec-ornament .ayu-orn-line:first-child i:before{left:8%}
.ayu-sec-ornament .ayu-orn-line:first-child i:after{display:none}
.ayu-sec-ornament .ayu-orn-line:last-child i:after{right:8%}
.ayu-sec-ornament .ayu-orn-line:last-child i:before{display:none}
.ayu-sec-ornament .ayu-orn-mark{
  position:relative;
  flex-shrink:0;
  width:46px;height:46px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#fff;
  border:1px solid rgba(61,155,106,.28);
  box-shadow:
    0 0 0 4px rgba(230,244,242,.95),
    0 8px 18px rgba(42,110,74,.12);
}
.ayu-sec-ornament .ayu-orn-mark:before,
.ayu-sec-ornament .ayu-orn-mark:after{
  content:"";
  position:absolute;
  top:50%;
  width:7px;height:7px;
  border:1px solid var(--ayu-teal);
  transform:translateY(-50%) rotate(45deg);
  background:#fff;
}
.ayu-sec-ornament .ayu-orn-mark:before{left:-10px}
.ayu-sec-ornament .ayu-orn-mark:after{right:-10px}
.ayu-sec-ornament .ayu-orn-mark img{
  width:26px;height:26px;
  object-fit:contain;
  border-radius:0;
  opacity:1;
  filter:none;
}
.ayu-sec-ornament.is-light .ayu-orn-line:first-child i{
  background:linear-gradient(90deg,transparent,rgba(159,217,228,.45),#9fd9e4);
}
.ayu-sec-ornament.is-light .ayu-orn-line:last-child i{
  background:linear-gradient(90deg,#9fd9e4,rgba(159,217,228,.45),transparent);
}
.ayu-sec-ornament.is-light .ayu-orn-line i:before,
.ayu-sec-ornament.is-light .ayu-orn-line i:after{
  background:#9fd9e4;
  box-shadow:0 0 0 2px rgba(15,46,42,.55),0 0 0 3px rgba(159,217,228,.25);
}
.ayu-sec-ornament.is-light .ayu-orn-mark{
  background:rgba(255,255,255,.12);
  border-color:rgba(159,217,228,.45);
  box-shadow:0 0 0 4px rgba(255,255,255,.06),0 8px 18px rgba(0,0,0,.18);
}
.ayu-sec-ornament.is-light .ayu-orn-mark:before,
.ayu-sec-ornament.is-light .ayu-orn-mark:after{
  border-color:#9fd9e4;
  background:rgba(15,46,42,.85);
}
.ayu-sec-ornament.is-light .ayu-orn-mark img{
  filter:brightness(1.35) saturate(1.1);
}

.ayu-band{padding:3rem 0}

/* Home: equal vertical gap between every section */
body.ayu-home{
  --ayu-sec-y:3rem;
}
body.ayu-home main > section{
  margin-block:0;
  box-sizing:border-box;
}
body.ayu-home main > section:not(.ayu-hero):not(.ayu-serve){
  padding-top:var(--ayu-sec-y);
  padding-bottom:var(--ayu-sec-y);
}
body.ayu-home .ayu-hero{
  padding-bottom:5.2rem;
}
body.ayu-home .ayu-serve{
  margin:-3.4rem auto 0;
  width:min(1100px,calc(100% - 32px));
  padding-top:0;
  padding-bottom:var(--ayu-sec-y);
  position:relative;
  z-index:4;
  background:transparent;
}
/* Phone-only mist bridge (desktop hide — was covering hero overlap) */
body.ayu-home .ayu-serve:before{display:none;content:none}

/* Desktop: sit onto hero, but not too high */
@media (min-width:901px){
  body.ayu-home .ayu-hero{
    padding-bottom:7.2rem!important;
    overflow:visible;
  }
  body.ayu-home .ayu-serve,
  body.ayu-home section.ayu-serve{
    margin:-5.2rem auto 0!important;
    width:min(1120px,calc(100% - 40px))!important;
    transform:none;
    z-index:6;
  }
  body.ayu-home .ayu-serve:before{display:none!important;content:none!important}
  body.ayu-home .ayu-serve-card{
    position:relative;
    z-index:2;
  }
}
body.ayu-home .ayu-process{
  padding-left:16px;
  padding-right:16px;
}
body.ayu-home .ayu-band,
body.ayu-home .ayu-band-mint,
body.ayu-home .ayu-shelf,
body.ayu-home .ayu-oils,
body.ayu-home .ayu-more,
body.ayu-home .ayu-cta-band,
body.ayu-home .ayu-mid-banner,
body.ayu-home .ayu-herbs,
body.ayu-home .ayu-make,
body.ayu-home .ayu-story{
  padding-top:var(--ayu-sec-y);
  padding-bottom:var(--ayu-sec-y);
}
body.ayu-home .ayu-path{
  padding-top:var(--ayu-sec-y);
  padding-bottom:var(--ayu-sec-y);
}
.ayu-best{
  position:relative;
  padding:3.4rem 0 2.8rem;
  background:#fff;
  overflow:hidden;
}
.ayu-best:before,
.ayu-best:after{
  content:"";
  position:absolute;
  width:180px;height:220px;
  pointer-events:none;
  opacity:.08;
  background:url("../images/icons/svc-leaf.jpg") center / contain no-repeat;
}
.ayu-best:before{left:-24px;top:40px}
.ayu-best:after{right:-28px;bottom:30px;transform:scaleX(-1)}
.ayu-best .ayu-sec-head{margin-bottom:1.8rem}
body.ayu .ayu-best .ayu-sec-head h2{
  font-family:var(--ayu-font);
  font-size:clamp(1.9rem,3vw,2.45rem);
  font-weight:600;
  color:var(--ayu-green-deep);
  background:none;
  -webkit-text-fill-color:var(--ayu-green-deep);
}
.ayu-best .ayu-sec-center p{
  max-width:40rem;
  color:#5a6d68;
  font-family:var(--ayu-font);
}
.ayu-best-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1.35rem;
}
.ayu-best-card{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:.55rem;
  padding:1.45rem 1.35rem 1.4rem;
  background:#fff;
  border:1px solid #e4efec;
  border-radius:18px;
  box-shadow:0 10px 28px rgba(15,46,42,.05);
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}
.ayu-best-card:hover{
  transform:translateY(-4px);
  box-shadow:0 16px 34px rgba(42,110,74,.1);
  border-color:rgba(61,155,106,.28);
}
.ayu-best-ico{
  display:grid;
  place-items:center;
  width:64px;height:64px;
  margin-bottom:.25rem;
  border-radius:16px;
  background:linear-gradient(145deg,#f4fbf9,#e6f4f2);
  border:1px solid rgba(61,155,106,.18);
  overflow:hidden;
}
.ayu-best-ico img{
  width:100%;
  height:100%;
  object-fit:contain;
  padding:8px;
  box-sizing:border-box;
}
body.ayu .ayu-best-card h3{
  margin:0;
  font-family:var(--ayu-font);
  font-size:1.08rem;
  font-weight:700;
  color:#1a3324;
  background:none;
  -webkit-text-fill-color:#1a3324;
}
.ayu-best-card p{
  margin:0;
  flex:1;
  color:#5a6d68;
  font-size:.9rem;
  line-height:1.55;
  font-family:var(--ayu-font);
}
.ayu-best-card a{
  margin-top:.35rem;
  font-family:var(--ayu-font);
  font-size:.86rem;
  font-weight:600;
  color:var(--ayu-green);
  text-decoration:underline;
  text-underline-offset:3px;
}
.ayu-best-card a:hover{color:var(--ayu-teal)}

.ayu-process{
  position:relative;
  padding:3.2rem 16px 3.4rem;
  background:
    radial-gradient(ellipse 55% 70% at 100% 0%,rgba(143,184,106,.14),transparent 55%),
    linear-gradient(180deg,#f6faf4 0%,#eef6ea 100%);
  overflow:hidden;
  font-family:var(--ayu-font);
}
.ayu-process > .container{
  width:min(1120px,100%);
  margin:0 auto;
  padding-inline:0;
}
.ayu-process-head{
  margin:0 auto 2rem;
  text-align:center;
  max-width:36rem;
}
.ayu-process-head > div{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:.35rem;
}
.ayu-process-head .ayu-eyebrow{
  margin:0 0 .5rem;
  font-family:var(--ayu-font)!important;
  font-size:.72rem;
  font-weight:600;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--ayu-green);
}
body.ayu .ayu-process-head h2{
  margin:0 0 .5rem;
  font-family:var(--ayu-font)!important;
  font-size:clamp(1.7rem,2.8vw,2.25rem);
  font-weight:700;
  letter-spacing:-.03em;
  color:var(--ayu-green-deep);
  background:none;
  -webkit-text-fill-color:var(--ayu-green-deep);
}
.ayu-process-lead{
  margin:0;
  font-family:var(--ayu-font);
  font-size:clamp(.95rem,1.5vw,1.05rem);
  line-height:1.5;
  color:#3d5c58;
}
.ayu-process-inner{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1rem;
  width:100%;
  margin:0;
  position:relative;
  z-index:1;
  align-items:stretch;
}
.ayu-process-inner:before{
  content:"";
  position:absolute;
  top:2.15rem;
  left:12%;
  right:12%;
  height:2px;
  background:linear-gradient(90deg,transparent,rgba(47,107,69,.22),transparent);
  z-index:0;
  pointer-events:none;
}
.ayu-process-step{
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  text-align:left;
  gap:0;
  min-width:0;
  padding:1.35rem 1.25rem 1.3rem;
  background:#fff;
  border:1px solid rgba(47,107,69,.1);
  border-radius:20px;
  box-shadow:0 10px 28px rgba(14,36,24,.05);
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}
.ayu-process-step:hover{
  transform:translateY(-4px);
  border-color:rgba(47,107,69,.28);
  box-shadow:0 16px 36px rgba(14,36,24,.1);
}
.ayu-process-num{
  position:absolute;
  top:.7rem;right:1rem;
  font-family:var(--ayu-font)!important;
  font-size:1.85rem;
  font-weight:700;
  line-height:1;
  letter-spacing:-.04em;
  color:rgba(47,107,69,.1);
  pointer-events:none;
}
.ayu-process-ico{
  width:56px;height:56px;
  margin:0 0 1rem;
  border-radius:14px;
  overflow:hidden;
  background:linear-gradient(145deg,#eaf5e6,#d8efe0);
  border:1px solid rgba(47,107,69,.16);
  box-shadow:none;
}
.ayu-process-ico img{
  width:100%;height:100%;
  object-fit:cover;
  display:block;
}
.ayu-process-node{display:none}
body.ayu .ayu-process-step h3{
  margin:0 0 .4rem;
  min-height:0;
  font-family:var(--ayu-font)!important;
  font-size:1.12rem;
  font-weight:700;
  line-height:1.25;
  letter-spacing:-.02em;
  color:var(--ayu-green-deep);
  background:none;
  -webkit-text-fill-color:var(--ayu-green-deep);
}
.ayu-process-step p{
  margin:0;
  max-width:none;
  width:100%;
  color:#3d5c58;
  font-family:var(--ayu-font);
  font-size:.9rem;
  line-height:1.55;
}

.ayu-band-mint{background:var(--ayu-mist);color:var(--ayu-forest);padding:3rem 0}
.ayu-future-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1rem;
  align-items:stretch;
}
body.ayu-home .ayu-future-grid .prod-card{
  display:flex!important;
  opacity:1;
  visibility:visible;
}
.ayu-band-ivory{background:var(--ayu-mint);color:var(--ayu-forest)}
.ayu-band-sand{background:var(--ayu-mist);color:var(--ayu-forest)}
.ayu-band-forest{
  background:var(--ayu-glow-ink),var(--ayu-grad-hero);
  color:#eaf5e6;
}
.ayu-band-forest .ayu-sec-head h2{color:#f5fbf7}
.ayu-band-forest .ayu-eyebrow,
.ayu-band-forest .disc-all{color:var(--ayu-teal)}
.ayu-band-forest .disc-all:hover{color:#fff}
.ayu-band-sand .ayu-eyebrow,.ayu-band-sand .disc-all{color:var(--ayu-green)}
.ayu-band-mint .ayu-eyebrow,.ayu-band-mint .disc-all,
.ayu-band-ivory .ayu-eyebrow,.ayu-band-ivory .disc-all{color:var(--ayu-green)}
.ayu-sec-center h2{color:var(--ayu-green-deep)}
body.ayu .disc-all{color:var(--ayu-green)}
body.ayu .disc-all:hover{color:var(--ayu-teal-deep)}
body.ayu .ayu-eyebrow,.ayu-kicker{color:var(--ayu-green)}

.ayu-cats{
  position:relative;
  z-index:2;
  width:min(1180px,calc(100% - 24px));
  margin:-3.2rem auto 0;
  padding:2.2rem 1.4rem 2rem;
  background:#fff;
  border-radius:32px;
}
.ayu-cat-grid{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:1rem}
.ayu-cat{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:.55rem;
  text-align:center;
  color:#1f2a21;
  min-width:0;
}
.ayu-cat-pic{
  display:grid;
  place-items:center;
  width:86px;height:86px;
  border-radius:50%;
  background:#fff;
  border:1px solid #d7e8dc;
  box-shadow:0 8px 18px rgba(22,53,31,.06);
  transition:border-color .22s ease,box-shadow .22s ease,transform .22s ease;
}
.ayu-cat img{width:70px;height:70px;object-fit:cover;border-radius:50%}
.ayu-cat span{font-size:.74rem;font-weight:500;line-height:1.25}
.ayu-cat:hover .ayu-cat-pic{
  border-color:var(--ayu-green);
  transform:translateY(-3px);
  box-shadow:0 14px 24px rgba(47,107,69,.12);
}

.ayu-shelf,.ayu-oils,.ayu-more{padding:3rem 0}

.ayu-story{
  position:relative;
  padding:3.4rem 0 3.6rem;
  overflow:hidden;
  font-family:var(--ayu-font);
  background:
    radial-gradient(ellipse 50% 70% at 0% 100%,rgba(143,184,106,.16),transparent 55%),
    linear-gradient(180deg,#eaf5e6 0%,#f6faf4 55%,#fff 100%);
}
.ayu-story .ayu-story-grid{color:inherit}
.ayu-story-grid{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);
  gap:2.2rem 3rem;
  align-items:center;
}
.ayu-story-media{
  position:relative;
  margin:0;
  order:0;
  min-width:0;
  border-radius:24px;
  overflow:hidden;
  border:1px solid rgba(47,107,69,.12);
  box-shadow:0 18px 40px rgba(14,36,24,.1);
  background:#d8efe0;
}
.ayu-story-media:after{
  content:"";
  position:absolute;
  inset:auto 0 0;
  height:38%;
  background:linear-gradient(180deg,transparent,rgba(14,36,24,.28));
  pointer-events:none;
}
.ayu-story-media img{
  display:block;
  width:100%;
  height:min(420px,54vw);
  object-fit:cover;
  object-position:center;
}
.ayu-story-copy{
  order:1;
  min-width:0;
  font-family:var(--ayu-font);
}
.ayu-story-copy .ayu-eyebrow{
  margin:0 0 .55rem;
  font-family:var(--ayu-font)!important;
  font-size:.72rem;
  font-weight:600;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--ayu-green);
}
body.ayu .ayu-story-copy h2,
.ayu-story-copy h2{
  margin:0 0 .7rem;
  max-width:20ch;
  font-family:var(--ayu-font)!important;
  font-size:clamp(1.65rem,2.8vw,2.25rem);
  font-weight:700;
  letter-spacing:-.03em;
  line-height:1.15;
  color:var(--ayu-green-deep);
  background:none;
  -webkit-text-fill-color:var(--ayu-green-deep);
  font-style:normal;
}
.ayu-story-lead,
.ayu-story-copy > p{
  margin:0 0 1.25rem;
  max-width:38rem;
  font-family:var(--ayu-font);
  font-size:1rem;
  font-weight:400;
  line-height:1.65;
  color:#3d5c58;
}
.ayu-story ul,
.ayu-story-points{
  display:flex;
  flex-direction:column;
  gap:.55rem;
  margin:0 0 1.55rem;
  padding:0;
  list-style:none;
  font-family:var(--ayu-font);
}
.ayu-story li{
  position:relative;
  margin:0;
  padding:.75rem .9rem .75rem 2.55rem;
  font-family:var(--ayu-font);
  font-size:.92rem;
  line-height:1.45;
  color:var(--ayu-forest);
  background:#fff;
  border:1px solid rgba(47,107,69,.1);
  border-radius:14px;
  box-shadow:0 4px 12px rgba(14,36,24,.04);
}
.ayu-story li:before{
  content:"";
  position:absolute;
  left:.85rem;top:50%;
  width:.9rem;height:.9rem;
  margin-top:-.45rem;
  border-radius:50%;
  background:linear-gradient(145deg,var(--ayu-leaf-soft),var(--ayu-green));
  box-shadow:inset 0 0 0 3px #fff;
}
.ayu-story-cta{
  display:inline-flex;
  align-items:center;
  gap:.45rem;
  padding:.85rem 1.35rem;
  font-family:var(--ayu-font);
  font-weight:700;
  font-size:.9rem;
  color:#fff;
  text-decoration:none;
  background:linear-gradient(135deg,var(--ayu-green-deep) 0%,var(--ayu-green) 100%);
  border-radius:999px;
  box-shadow:0 10px 22px rgba(26,71,48,.18);
  transition:transform .2s ease,box-shadow .2s ease,gap .2s ease;
}
.ayu-story-cta:after{
  content:"";
  width:.5rem;height:.5rem;
  border-right:2px solid currentColor;
  border-top:2px solid currentColor;
  transform:rotate(45deg);
}
.ayu-story-cta:hover{
  transform:translateY(-2px);
  gap:.65rem;
  box-shadow:0 14px 28px rgba(26,71,48,.24);
  color:#fff;
}
.ayu-story-copy .btn-hero-ghost{
  font-family:var(--ayu-font);
  font-weight:600;
  border-radius:999px;
  padding:.78rem 1.35rem;
}

.ayu-make-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
.ayu-make article{
  background:#fff;
  border:1px solid #d7e8dc;
  border-radius:22px;
  padding:1.25rem 1.2rem 1.35rem;
}
.ayu-make b{
  font-family:var(--ayu-font);
  font-size:1.25rem;
  font-weight:500;
  color:var(--ayu-teal);
  letter-spacing:.08em;
}
.ayu-make h3{
  margin:.4rem 0 .35rem;
  font-family:var(--ayu-font);
  font-size:1.35rem;
  color:var(--ayu-green-deep);
}
.ayu-make p{margin:0;color:#4a6554;font-size:.9rem;line-height:1.55}
.ayu-herbs{
  font-family:var(--ayu-font);
}
.ayu-herbs .ayu-sec-head{margin-bottom:1.6rem}
body.ayu .ayu-herbs .ayu-sec-head h2,
body.ayu .ayu-herbs h2{
  font-family:var(--ayu-font)!important;
  font-size:clamp(1.7rem,3vw,2.25rem);
  font-weight:700;
  letter-spacing:-.03em;
  color:var(--ayu-green-deep);
  background:none;
  -webkit-text-fill-color:var(--ayu-green-deep);
}
.ayu-herbs .ayu-eyebrow{
  font-family:var(--ayu-font)!important;
  font-size:.72rem;
  font-weight:600;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--ayu-green);
}
/* Photo collage — fixed 4×3 mosaic (no holes) */
.ayu-herb-collage{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  grid-template-rows:repeat(3,minmax(200px,240px));
  gap:.75rem;
  width:100%;
  max-width:1120px;
  margin:0 auto;
  font-family:var(--ayu-font);
}
.ayu-herb-tile{
  position:relative;
  margin:0;
  min-width:0;
  min-height:0;
  height:100%;
  overflow:hidden;
  border-radius:18px;
  background:#1a3324;
  box-shadow:0 12px 28px rgba(14,36,24,.12);
}
.ayu-herb-tile:nth-child(1){grid-area:1 / 1 / 3 / 2} /* Ashwagandha tall */
.ayu-herb-tile:nth-child(2){grid-area:1 / 2 / 2 / 4} /* Bhringraj wide */
.ayu-herb-tile:nth-child(3){grid-area:1 / 4 / 2 / 5} /* Shallaki */
.ayu-herb-tile:nth-child(4){grid-area:2 / 2 / 3 / 3} /* Triphala */
.ayu-herb-tile:nth-child(5){grid-area:2 / 3 / 3 / 5} /* Shatavari wide */
.ayu-herb-tile:nth-child(6){grid-area:3 / 1 / 4 / 2} /* Neem */
.ayu-herb-tile:nth-child(7){grid-area:3 / 2 / 4 / 4} /* Tulsi·Giloy wide */
.ayu-herb-tile:nth-child(8){grid-area:3 / 4 / 4 / 5} /* Amla */
.ayu-herb-tile img{
  position:absolute;
  inset:0;
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  transition:transform .45s ease;
}
.ayu-herb-tile:hover img{transform:scale(1.05)}
.ayu-herb-tile:after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(180deg,transparent 45%,rgba(14,36,24,.82) 100%);
  pointer-events:none;
}
body.ayu .ayu-herb-tile figcaption,
.ayu-herb-tile figcaption{
  position:absolute;
  left:1rem;right:1rem;bottom:.95rem;
  z-index:2;
  margin:0;
  padding:0;
  font-family:var(--ayu-font)!important;
  font-size:clamp(1.02rem,1.5vw,1.18rem);
  font-weight:600;
  font-style:normal;
  letter-spacing:-.01em;
  color:#fff;
  -webkit-text-fill-color:#fff;
  text-shadow:0 2px 10px rgba(0,0,0,.45);
  background:none;
  border:0;
}
body.ayu .ayu-path{
  position:relative;
  margin:0;
  padding:3.4rem 0 3.6rem;
  overflow:hidden;
  font-family:var(--ayu-font);
  background:
    radial-gradient(ellipse 70% 80% at 0% 0%,rgba(143,184,106,.18),transparent 55%),
    radial-gradient(ellipse 60% 70% at 100% 100%,rgba(61,155,106,.12),transparent 50%),
    linear-gradient(180deg,#eef6ea 0%,#f3f8f0 48%,#eaf5e6 100%);
}
body.ayu .ayu-path-shell{
  position:relative;
  z-index:1;
}
body.ayu .ayu-path-head{
  text-align:center;
  max-width:36rem;
  margin:0 auto 2rem;
}
body.ayu .ayu-path-head .ayu-eyebrow{
  margin:0 0 .55rem;
  font-family:var(--ayu-font)!important;
  font-size:.72rem;
  font-weight:600;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--ayu-green);
}
body.ayu .ayu-path-head h2,
body.ayu .ayu-path .ayu-sec-head h2{
  margin:0 0 .55rem;
  font-family:var(--ayu-font)!important;
  font-size:clamp(1.75rem,3vw,2.35rem);
  font-weight:700;
  letter-spacing:-.03em;
  color:var(--ayu-green-deep);
  background:none;
  -webkit-text-fill-color:var(--ayu-green-deep);
}
body.ayu .ayu-path-lead{
  margin:0;
  font-family:var(--ayu-font);
  font-size:clamp(.95rem,1.5vw,1.08rem);
  line-height:1.5;
  color:#3d5c58;
}
.ayu-path-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1.15rem;
  align-items:stretch;
}
body.ayu .ayu-way,
.ayu-way{
  position:relative;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  height:100%;
  min-width:0;
  padding:1.55rem 1.4rem 1.35rem;
  background:#fff;
  border:1px solid rgba(47,107,69,.12);
  border-radius:22px;
  color:var(--ayu-forest);
  font-family:var(--ayu-font);
  text-decoration:none;
  overflow:hidden;
  box-shadow:0 10px 28px rgba(14,36,24,.06);
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;
  box-sizing:border-box;
}
body.ayu .ayu-way:before,
.ayu-way:before{
  content:"";
  position:absolute;
  left:0;top:0;bottom:0;
  width:3px;
  background:linear-gradient(180deg,var(--ayu-leaf-soft),var(--ayu-green));
  opacity:.0;
  transition:opacity .25s ease;
}
body.ayu .ayu-way:hover,
.ayu-way:hover{
  transform:translateY(-6px);
  border-color:rgba(47,107,69,.28);
  box-shadow:0 18px 40px rgba(14,36,24,.12);
}
body.ayu .ayu-way:hover:before,
.ayu-way:hover:before{opacity:1}
.ayu-way-step{
  position:absolute;
  top:.65rem;right:1rem;
  font-family:var(--ayu-font)!important;
  font-size:clamp(2.6rem,4vw,3.2rem);
  font-weight:700;
  line-height:1;
  letter-spacing:-.04em;
  color:rgba(47,107,69,.08);
  pointer-events:none;
  user-select:none;
}
.ayu-way-ico{
  display:grid;
  place-items:center;
  width:56px;height:56px;
  margin:0 0 1.15rem;
  border-radius:16px;
  background:linear-gradient(145deg,#eaf5e6,#d8efe0);
  border:1px solid rgba(47,107,69,.16);
  overflow:hidden;
  flex-shrink:0;
}
.ayu-way-ico img{width:100%;height:100%;object-fit:cover}
body.ayu .ayu-way h3,
.ayu-way h3{
  margin:0 0 .45rem;
  font-family:var(--ayu-font)!important;
  font-size:1.35rem;
  font-weight:700;
  letter-spacing:-.02em;
  line-height:1.2;
  color:var(--ayu-green-deep);
  background:none;
  -webkit-text-fill-color:var(--ayu-green-deep);
}
.ayu-way p{
  margin:0 0 1.35rem;
  min-height:3.6em;
  font-family:var(--ayu-font);
  font-size:.92rem;
  font-weight:400;
  line-height:1.55;
  color:#3d5c58;
  flex:1 1 auto;
}
.ayu-way-cta{
  display:inline-flex;
  align-items:center;
  gap:.4rem;
  margin-top:auto;
  padding:0;
  font-family:var(--ayu-font);
  font-style:normal;
  font-size:.88rem;
  font-weight:600;
  letter-spacing:.01em;
  color:var(--ayu-green);
  background:none;
  border:0;
  border-radius:0;
  box-shadow:none;
  transition:gap .2s ease,color .2s ease;
}
.ayu-way-cta:after{
  content:"";
  width:.55rem;height:.55rem;
  border-right:2px solid currentColor;
  border-top:2px solid currentColor;
  transform:rotate(45deg);
  transition:transform .2s ease;
}
.ayu-way:hover .ayu-way-cta{
  gap:.65rem;
  color:var(--ayu-green-deep);
}
.ayu-way:hover .ayu-way-cta:after{transform:rotate(45deg) translate(.1rem,-.1rem)}
/* Mid / focus variants */
body.ayu .ayu-way.is-mid{
  background:linear-gradient(165deg,#fff 0%,#f3f8f0 100%);
}
body.ayu .ayu-way.is-focus{
  background:linear-gradient(160deg,var(--ayu-green-deep) 0%,var(--ayu-green) 100%);
  border-color:transparent;
  color:#fff;
  box-shadow:0 16px 36px rgba(26,71,48,.28);
}
body.ayu .ayu-way.is-focus .ayu-way-step{color:rgba(255,255,255,.12)}
body.ayu .ayu-way.is-focus .ayu-way-ico{
  background:rgba(255,255,255,.12);
  border-color:rgba(255,255,255,.2);
}
body.ayu .ayu-way.is-focus h3{
  color:#fff;
  -webkit-text-fill-color:#fff;
}
body.ayu .ayu-way.is-focus p{color:rgba(234,245,230,.88)}
body.ayu .ayu-way.is-focus .ayu-way-cta{color:#c9e6b0}
body.ayu .ayu-way.is-focus:hover{
  box-shadow:0 22px 44px rgba(26,71,48,.34);
}
body.ayu .ayu-way.is-focus:before{background:#c9e6b0}

.ayu-mid-banner{
  padding:0;
  background:transparent;
}
body.ayu .ayu-mid-banner-slider .container{
  position:relative;
}
body.ayu .ayu-mid-track{
  position:relative;
  overflow:hidden;
  border-radius:0;
  min-height:220px;
  box-shadow:0 16px 36px rgba(14,36,24,.14);
}
body.ayu .ayu-mid-banner-slider .ayu-mid-banner-link{
  position:absolute;
  inset:0;
  opacity:0;
  pointer-events:none;
  transform:scale(1.02);
  transition:opacity .7s ease,transform .7s ease;
  box-shadow:none;
  min-height:0;
}
body.ayu .ayu-mid-banner-slider .ayu-mid-banner-link.is-on{
  opacity:1;
  pointer-events:auto;
  transform:scale(1);
  position:relative;
}
body.ayu .ayu-mid-banner-link{
  position:relative;
  display:block;
  overflow:hidden;
  isolation:isolate;
  border-radius:0;
  color:#f5fbf7;
  text-decoration:none;
  font-family:var(--ayu-font);
  min-height:220px;
  box-shadow:0 16px 36px rgba(14,36,24,.14);
}
body.ayu .ayu-mid-banner-link img{
  display:block;
  width:100%;
  height:min(280px,42vw);
  object-fit:cover;
  object-position:center;
  transition:transform .5s ease;
}
body.ayu .ayu-mid-banner-link:after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background:
    linear-gradient(105deg,rgba(10,26,17,.88) 0%,rgba(13,32,22,.55) 48%,rgba(42,110,74,.28) 100%);
  pointer-events:none;
}
body.ayu .ayu-mid-banner-copy{
  position:absolute;
  left:1.5rem;
  right:1.5rem;
  bottom:1.35rem;
  z-index:2;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:.35rem;
  max-width:28rem;
}
body.ayu .ayu-mid-banner-copy em{
  margin:0;
  font-style:normal;
  font-size:.68rem;
  font-weight:700;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--ayu-teal);
}
body.ayu .ayu-mid-banner-copy strong{
  margin:0;
  font-family:var(--ayu-font);
  font-size:clamp(1.35rem,2.8vw,1.9rem);
  font-weight:700;
  letter-spacing:-.02em;
  line-height:1.2;
  color:#f5fbf7;
}
body.ayu .ayu-mid-banner-copy b{
  display:inline-flex;
  margin-top:.45rem;
  padding:.55rem 1.05rem;
  border-radius:999px;
  font-size:.84rem;
  font-weight:600;
  letter-spacing:.03em;
  color:#fff;
  background:linear-gradient(135deg,var(--ayu-green-deep) 0%,var(--ayu-green) 100%);
}
body.ayu .ayu-mid-banner-link:hover img{transform:scale(1.03)}
body.ayu .ayu-mid-banner-link:hover .ayu-mid-banner-copy b{
  background:linear-gradient(135deg,var(--ayu-green) 0%,var(--ayu-green-soft) 100%);
}
body.ayu .ayu-mid-dots{
  position:absolute;
  right:1.2rem;
  bottom:1.1rem;
  z-index:3;
  display:flex;
  gap:.4rem;
}
body.ayu .ayu-mid-dots button{
  width:8px;height:8px;
  padding:0;
  border:0;
  border-radius:50%;
  background:rgba(255,255,255,.4);
  cursor:pointer;
  transition:background .2s ease,transform .2s ease;
}
body.ayu .ayu-mid-dots button.is-on{
  background:#fff;
  transform:scale(1.2);
}

.ayu-cta-band{
  padding:2.6rem 0 3rem;
  background:transparent;
}
body.ayu .ayu-cta{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1.5rem 2rem;
  padding:2rem 2.15rem 2.05rem;
  margin:0;
  color:#f3f8f0;
  font-family:var(--ayu-font);
  text-decoration:none;
  overflow:hidden;
  isolation:isolate;
  border:1px solid rgba(47,107,69,.22);
  border-radius:24px;
  clip-path:none;
  background:
    radial-gradient(ellipse 50% 90% at 100% 50%,rgba(143,184,106,.22),transparent 55%),
    linear-gradient(115deg,#0e2418 0%,#1a4730 52%,#2f6b45 100%);
  box-shadow:0 18px 40px rgba(14,36,24,.16);
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;
}
body.ayu .ayu-cta:hover{
  transform:translateY(-4px);
  border-color:rgba(143,184,106,.4);
  box-shadow:0 24px 48px rgba(14,36,24,.22);
}
body.ayu .ayu-cta-shape{
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  background:none;
  opacity:1;
  clip-path:none;
}
body.ayu .ayu-cta-shape:after{
  content:"";
  position:absolute;
  right:-8%;
  top:-30%;
  width:42%;
  height:160%;
  border-radius:50%;
  background:radial-gradient(circle,rgba(201,230,176,.16) 0%,transparent 68%);
  transform:none;
}
body.ayu .ayu-cta-copy,
body.ayu .ayu-cta-btn,
body.ayu .ayu-cta em{
  position:relative;
  z-index:1;
}
body.ayu .ayu-cta-copy{min-width:0;max-width:40rem}
body.ayu .ayu-cta-copy > span{
  display:inline-block;
  margin:0 0 .55rem;
  padding:0;
  font-size:.72rem;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:#c9e6b0;
  font-weight:600;
  background:none;
  clip-path:none;
}
body.ayu .ayu-cta-copy strong{
  display:block;
  margin:0 0 .45rem;
  font-family:var(--ayu-font)!important;
  font-size:clamp(1.55rem,2.6vw,2.15rem);
  font-weight:700;
  letter-spacing:-.03em;
  line-height:1.15;
  color:#fff;
  background:none;
  -webkit-text-fill-color:#fff;
}
body.ayu .ayu-cta-copy p{
  margin:0;
  max-width:38ch;
  color:rgba(234,245,230,.82);
  font-size:.95rem;
  font-weight:400;
  line-height:1.55;
  font-family:var(--ayu-font);
}
body.ayu .ayu-cta-btn,
body.ayu .ayu-cta em{
  display:inline-flex;
  align-items:center;
  gap:.45rem;
  flex-shrink:0;
  font-style:normal;
  font-family:var(--ayu-font);
  font-weight:700;
  font-size:.9rem;
  letter-spacing:.01em;
  text-transform:none;
  background:#fff;
  color:var(--ayu-green-deep);
  border:0;
  border-radius:999px;
  clip-path:none;
  padding:.95rem 1.45rem;
  white-space:nowrap;
  box-shadow:0 8px 18px rgba(0,0,0,.12);
  transition:background .2s ease,color .2s ease,gap .2s ease,transform .2s ease;
}
body.ayu .ayu-cta-btn:after{
  content:"";
  width:.5rem;height:.5rem;
  border-right:2px solid currentColor;
  border-top:2px solid currentColor;
  transform:rotate(45deg);
  transition:transform .2s ease;
}
body.ayu .ayu-cta:hover .ayu-cta-btn,
body.ayu .ayu-cta:hover em{
  background:#c9e6b0;
  color:var(--ayu-forest-deep);
  gap:.65rem;
  transform:translateX(2px);
}
body.ayu .ayu-cta:hover .ayu-cta-btn:after{
  transform:rotate(45deg) translate(.08rem,-.08rem);
}

body.ayu .trust-band{
  padding:2.4rem 0;
  background:
    radial-gradient(ellipse 40% 80% at 10% 20%,rgba(61,155,106,.08),transparent 55%),
    linear-gradient(180deg,#eaf5e6 0%,#f3f8f0 100%);
  border-top:1px solid #d7e8dc;
  margin-top:0;
  font-family:var(--ayu-font);
}
body.ayu .trust-band:before,
body.ayu .trust-band:after{display:none}
body.ayu .trust{
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:1rem;
}
body.ayu .trust-item{
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  gap:.55rem;
  padding:1.15rem .85rem 1.2rem;
  background:#fff;
  border:1px solid #d7e8dc;
  border-radius:18px;
  box-shadow:0 8px 20px rgba(22,53,31,.05);
  min-width:0;
  font-family:var(--ayu-font);
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}
body.ayu .trust-item:hover{
  transform:translateY(-3px);
  box-shadow:0 14px 28px rgba(47,107,69,.1);
  border-color:rgba(47,107,69,.28);
}
body.ayu .trust-item .trust-pic{
  width:52px;height:52px;
  border-radius:50%;
  object-fit:cover;
  border:1px solid #d7e8dc;
  background:linear-gradient(145deg,#fff,#eaf5e6);
  box-shadow:0 4px 12px rgba(22,53,31,.06);
}
body.ayu .trust-copy{min-width:0;width:100%}
body.ayu .trust-item strong{
  display:block;
  font-family:var(--ayu-font);
  font-size:.88rem;
  font-weight:700;
  letter-spacing:-.01em;
  color:var(--ayu-green-deep);
  line-height:1.25;
}
body.ayu .trust-item em{
  display:block;
  margin:.28rem 0 0;
  font-family:var(--ayu-font);
  font-style:normal;
  font-size:.75rem;
  font-weight:500;
  line-height:1.4;
  color:#4a6554;
}
body.ayu main{padding-bottom:1.8rem}

@media(max-width:980px){
  body.ayu .ayu-page-hero{padding:2.8rem 16px 2.2rem}
  body.ayu .ayu-page-hero h1{font-size:clamp(1.65rem,5vw,2.2rem)}
  body.ayu .ayu-shop-hero{
    padding:2.8rem 18px 2.4rem;
    min-height:0;
    display:flex;
    align-items:center;
    justify-content:flex-start;
  }
  body.ayu .ayu-shop-hero-inner{
    display:flex;
    flex-direction:row;
    flex-wrap:nowrap;
    align-items:center;
    justify-content:space-between;
    gap:1rem 1.25rem;
    width:100%;
    text-align:left;
  }
  body.ayu .ayu-shop-hero .ayu-page-hero-copy{
    order:1;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    justify-content:center;
    flex:1 1 auto;
    min-width:0;
    max-width:none;
    text-align:left;
  }
  body.ayu .ayu-shop-hero .ayu-eyebrow{
    margin:0 0 .45rem;
    text-align:left;
  }
  body.ayu .ayu-shop-hero h1{
    text-align:left;
    margin:0 0 .55rem;
    max-width:12ch;
    font-size:clamp(1.7rem,6.5vw,2.15rem);
    line-height:1.15;
  }
  body.ayu .ayu-shop-hero .ayu-page-hero-lead{
    margin:0 0 1rem;
    text-align:left;
    max-width:28ch;
    font-size:.9rem;
    line-height:1.5;
  }
  body.ayu .ayu-shop-hero .btn-primary{
    margin:0;
    align-self:flex-start;
  }
  body.ayu .ayu-shop-hero-visual{
    order:2;
    display:flex;
    align-items:center;
    justify-content:flex-end;
    flex:0 0 auto;
    width:min(38vw,160px);
    margin:0;
  }
  body.ayu .ayu-shop-hero-visual img{
    width:100%;
    max-width:160px;
    margin:0;
  }
  body.ayu .ayu-shop-wrap{padding:1.15rem 0 2rem}
  body.ayu .ayu-shop-wrap .shop-layout{
    display:flex;
    flex-direction:column;
    gap:1rem;
  }
  body.ayu .ayu-shop-wrap .filters{
    background:transparent;
    border:0;
    box-shadow:none;
    border-radius:0;
    padding:0 0 .35rem;
    position:static;
  }
  body.ayu .ayu-shop-wrap .filters h3{display:none}
  body.ayu .ayu-shop-wrap .filter-list{
    display:flex;
    flex-direction:row;
    flex-wrap:nowrap;
    align-items:stretch;
    gap:10px;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
    padding:2px 2px 8px;
  }
  body.ayu .ayu-shop-wrap .filter-list::-webkit-scrollbar{display:none}
  body.ayu .ayu-shop-wrap .filters a,
  body.ayu .ayu-shop-wrap .filter-cat,
  body.ayu .ayu-shop-wrap .filter-chip{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:flex-start;
    flex:0 0 auto;
    gap:.35rem;
    min-width:68px;
    padding:.2rem .15rem;
    text-align:center;
    background:transparent;
    border:0;
  }
  body.ayu .ayu-shop-wrap .filters a.on{
    background:transparent;
    color:var(--ayu-teal);
  }
  body.ayu .ayu-bulk-hero{
    padding:2.6rem 16px 2.2rem;
    min-height:0;
    display:flex;
    align-items:center;
  }
  body.ayu .ayu-bulk-hero-inner.container,
  body.ayu .ayu-bulk-hero-inner{
    display:flex;
    flex-direction:row;
    flex-wrap:nowrap;
    align-items:center;
    justify-content:space-between;
    gap:1rem 1.15rem;
    width:100%;
    max-width:100%;
    padding-inline:0;
  }
  body.ayu .ayu-bulk-hero .ayu-page-hero-copy{
    order:1;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    flex:1 1 auto;
    min-width:0;
    max-width:none;
    text-align:left;
  }
  body.ayu .ayu-bulk-hero .ayu-eyebrow{margin:0 0 .4rem}
  body.ayu .ayu-bulk-hero h1{
    font-size:clamp(1.5rem,5.2vw,1.95rem);
    max-width:14ch;
    margin:0 0 .5rem;
    line-height:1.15;
  }
  body.ayu .ayu-bulk-hero .ayu-page-hero-lead{
    margin:0 0 .75rem;
    font-size:.88rem;
    max-width:28ch;
  }
  body.ayu .ayu-bulk-chips{
    margin:0 0 .95rem;
    gap:.3rem;
  }
  body.ayu .ayu-bulk-chips span{
    font-size:.66rem;
    padding:.22rem .55rem;
  }
  body.ayu .ayu-bulk-hero .btn-primary{
    padding:.58rem 1.1rem;
    font-size:.86rem;
  }
  body.ayu .ayu-bulk-hero-visual{
    order:2;
    flex:0 0 auto;
    width:min(38vw,168px);
    border-radius:16px;
  }
  body.ayu .ayu-bulk-hero-visual img{height:132px}
  body.ayu .ayu-bulk-wrap{
    width:calc(100% - 24px);
    padding:1.25rem 0 2rem;
  }
  body.ayu .ayu-bulk-tiles{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:.7rem;
  }
  body.ayu .ayu-bulk-tile{
    padding:.95rem .85rem 1rem;
    border-radius:16px;
  }
  body.ayu .ayu-bulk-tile-ico{width:42px;height:42px;border-radius:12px;margin-bottom:.55rem}
  body.ayu .ayu-bulk-tile h3{font-size:.95rem}
  body.ayu .ayu-bulk-tile p{font-size:.8rem;line-height:1.45}
  body.ayu .ayu-bulk-steps{
    display:flex;
    flex-direction:column;
    gap:.65rem;
    margin-bottom:1.25rem;
  }
  body.ayu .ayu-bulk-steps li{
    padding:.95rem 1rem;
    border-radius:16px;
  }
  body.ayu .ayu-bulk-split{
    display:flex;
    flex-direction:column;
    gap:.95rem;
    width:100%;
  }
  body.ayu .ayu-bulk-form{
    width:100%;
    max-width:100%;
    box-sizing:border-box;
    padding:1.15rem 1rem 1.25rem;
    border-radius:18px;
  }
  body.ayu .ayu-bulk-aside{
    width:100%;
  }
  body.ayu .ayu-bulk-form h2{font-size:1.35rem}
  body.ayu .ayu-bulk-form .grid-2{
    grid-template-columns:1fr;
    gap:.65rem;
  }
  body.ayu .ayu-bulk-form .btn-primary{
    width:100%;
    justify-content:center;
  }
  body.ayu .ayu-bulk-aside{gap:.75rem}
  body.ayu .ayu-bulk-wa{padding:.9rem .95rem;border-radius:16px}
  body.ayu .ayu-bulk-aside-media img{height:140px}
  body.ayu .ayu-bulk-aside-card{padding:1rem .95rem;border-radius:16px}
  body.ayu .ayu-bulk-aside-card .btn{
    width:100%;
    justify-content:center;
  }
  body.ayu .ayu-about-wrap{
    width:calc(100% - 24px);
    padding:1.25rem 0 2rem;
  }
  body.ayu .ayu-contact-wrap{
    width:calc(100% - 24px);
    padding:1.25rem 0 2rem;
  }
  body.ayu .ayu-product-wrap{
    width:calc(100% - 24px);
    padding:0 0 2rem;
  }
  body.ayu .ayu-prod-detail{
    gap:1.1rem;
    padding:.85rem 0 1.35rem;
  }
  body.ayu .ayu-prod-buy{
    padding:1.1rem 1rem 1.2rem;
    border-radius:18px;
  }
  body.ayu .ayu-prod-buy h1{font-size:clamp(1.4rem,5.2vw,1.85rem)}
  body.ayu .ayu-prod-buy .qty-row .btn-primary,
  body.ayu .ayu-prod-buy .qty-row .wa-buy{
    flex:1 1 100%;
    justify-content:center;
  }
  body.ayu .ayu-contact-tiles{
    flex-wrap:wrap;
    gap:.65rem;
  }
  body.ayu .ayu-contact-tile{
    flex:1 1 calc(50% - .35rem);
    min-width:calc(50% - .35rem);
    padding:.8rem .75rem;
    border-radius:16px;
    gap:.6rem;
  }
  body.ayu .ayu-contact-tile-ico{width:40px;height:40px;border-radius:12px}
  body.ayu .ayu-contact-tile-body strong{font-size:.88rem}
  body.ayu .ayu-contact-tile-body span{font-size:.72rem}
  body.ayu .ayu-about-lead{
    grid-template-columns:1fr;
    gap:1.1rem;
    padding:1rem;
    border-radius:20px;
  }
  body.ayu .ayu-about-dirs{gap:.55rem}
  body.ayu .ayu-about-dir{border-radius:14px}
  body.ayu .ayu-about-dir img{
    min-height:200px;
    max-height:260px;
  }
  body.ayu .ayu-about-dir figcaption{
    left:6px;right:6px;bottom:6px;
    padding:.45rem .55rem;
  }
  body.ayu .ayu-about-dir figcaption strong{font-size:.88rem}
  body.ayu .ayu-about-copy{padding:0}
  body.ayu .ayu-about-copy h2{font-size:clamp(1.35rem,5vw,1.7rem)}
  body.ayu .ayu-about-actions{
    width:100%;
  }
  body.ayu .ayu-about-actions .btn{
    flex:1 1 auto;
    justify-content:center;
    text-align:center;
  }
  body.ayu .ayu-about-banner{
    border-radius:16px;
    margin-bottom:1.15rem;
  }
  body.ayu .ayu-about-banner img{height:min(200px,48vw)}
  body.ayu .ayu-about-cards{
    grid-template-columns:1fr;
    gap:.7rem;
  }
  .ayu-hero{
    padding:5.6rem 20px 3.2rem;
    min-height:0;
    align-items:center;
  }
  .ayu-hero .ayu-hero-inner.container,
  .ayu-hero-inner{
    grid-template-columns:1fr;
    gap:1.4rem;
    text-align:center;
    justify-items:center;
    width:100%;
  }
  .ayu-hero-visual{
    order:1;
    margin:0 auto;
    min-height:0;
    width:min(100%,320px);
    max-width:320px;
    justify-content:center;
  }
  .ayu-hero-visual .is-still{
    width:100%;
    max-width:100%;
    height:auto;
    animation:ayuHeroBreath 5.5s ease-in-out infinite;
  }
  .ayu-hero-stage{
    animation:ayuHeroFloat 7s ease-in-out infinite;
  }
  .ayu-hero-copy{
    order:2;
    display:flex;
    flex-direction:column;
    align-items:center;
    width:100%;
    max-width:34rem;
    text-align:center;
    padding:0;
  }
  body.ayu .ayu-hero-copy-glow{left:50%;transform:translateX(-50%);width:85%}
  body.ayu .ayu-hero h1,
  body.ayu .ayu-hero-title{
    max-width:100%;
    width:auto;
    margin:0 auto 1rem;
    align-items:center;
    text-align:center;
    font-size:clamp(2.25rem,5.6vw,2.95rem);
    line-height:1.12;
  }
  body.ayu .ayu-hero-line{white-space:nowrap}
  body.ayu .ayu-hero-swap{
    display:inline-grid;
    min-width:12ch;
    height:1.14em;
    overflow:hidden;
    justify-items:center;
    text-align:center;
  }
  body.ayu .ayu-hero .ayu-hero-lead{
    margin:0 auto 1.25rem;
    max-width:36ch;
    width:100%;
    text-align:center;
    font-size:1.12rem;
  }
  body.ayu .ayu-hero .btn-primary{
    width:auto;
    max-width:100%;
    min-width:0;
    padding:.62rem 1.2rem;
  }
  .ayu-best{padding:2.6rem 0 2.2rem}
  .ayu-best-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
  body.ayu-home{--ayu-sec-y:2.5rem}
  .ayu-process{padding:2.5rem 16px}
  .ayu-process > .container{width:100%}
  .ayu-process-head{margin-bottom:1.5rem;text-align:left;max-width:none}
  .ayu-process-inner{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:.85rem;
  }
  .ayu-process-inner:before{display:none}
  .ayu-process-step{padding:1.2rem 1.1rem 1.15rem;border-radius:18px}
  .ayu-process-ico{width:48px;height:48px;border-radius:12px;margin-bottom:.85rem}
  .ayu-process-num{font-size:1.55rem}
  .ayu-serve{
    margin:-2rem auto 0;
    width:calc(100% - 32px);
    position:relative;
    z-index:3;
  }
  body.ayu-home .ayu-hero{padding-bottom:5rem}
  body.ayu-home .ayu-serve{
    margin:-3.6rem auto 0;
    padding-top:0;
    padding-bottom:var(--ayu-sec-y);
    transform:none;
  }
  /* Tablet: same row layout as desktop, slightly tighter */
  .ayu-serve-card{
    display:grid;
    grid-template-columns:minmax(220px,32%) minmax(0,1fr);
    border-radius:22px;
    min-height:240px;
    max-height:none;
    height:auto;
    position:relative;
    z-index:1;
  }
  .ayu-serve-copy{
    order:0;
    padding:1.35rem 1.25rem 1.25rem;
  }
  .ayu-serve-media{
    order:0;
    min-height:240px;
    max-height:none;
    height:100%;
  }
  .ayu-serve-copy p + p{display:none}
  .ayu-serve-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}
  .ayu-serve-grid a{
    flex-direction:row;
    align-items:center;
    padding:.7rem .75rem;
    font-size:.84rem;
  }
  .ayu-serve-media img,
  .ayu-serve-media video{
    min-height:240px;
    max-height:none;
    height:100%;
    width:100%;
    object-fit:cover;
  }
  .ayu-make-grid{grid-template-columns:1fr;gap:.85rem}
  body.ayu .ayu-path{padding:2.4rem 0 2.6rem}
  body.ayu .ayu-path-shell{
    padding-inline:0;
    width:100%;
    max-width:100%;
  }
  body.ayu .ayu-path-head{
    padding-inline:16px;
    margin-bottom:1.25rem;
    text-align:left;
  }
  body.ayu .ayu-path-grid,
  .ayu-path-grid{
    display:flex;
    flex-direction:row;
    flex-wrap:nowrap;
    gap:.85rem;
    overflow-x:auto;
    overflow-y:hidden;
    -webkit-overflow-scrolling:touch;
    scroll-snap-type:x mandatory;
    scroll-padding-inline:16px;
    padding:0 16px .4rem;
    margin:0;
    grid-template-columns:none;
  }
  body.ayu .ayu-path-grid::-webkit-scrollbar{height:0;display:none}
  body.ayu .ayu-way h3,.ayu-way h3{font-size:1.2rem}
  body.ayu .ayu-way,.ayu-way{
    flex:0 0 min(80vw,300px);
    width:min(80vw,300px);
    max-width:300px;
    height:auto;
    min-height:260px;
    padding:1.3rem 1.15rem 1.2rem;
    border-radius:18px;
    scroll-snap-align:start;
  }
  .ayu-way-ico{width:48px;height:48px;border-radius:14px;margin-bottom:1rem}
  .ayu-way p{font-size:.88rem;min-height:3.6em;margin-bottom:1.1rem}
  .ayu-way-step{font-size:2.4rem;top:.5rem;right:.8rem}
  body.ayu .trust{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:.75rem;
  }
  body.ayu .trust-item{padding:1rem .7rem 1.05rem;border-radius:16px}
  body.ayu .trust-item .trust-pic{width:44px;height:44px}
  body.ayu .trust-item strong{font-size:.8rem}
  body.ayu .trust-item em{font-size:.7rem}
  body.ayu .footer-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:.9rem;
  }
  body.ayu .foot-brand{grid-column:1 / -1}
  body.ayu .foot-contact{grid-column:1 / -1}
  .ayu-story{padding:2.4rem 0 2.6rem}
  .ayu-story-grid{
    grid-template-columns:1fr;
    gap:1.35rem;
  }
  .ayu-story-media{order:0;border-radius:18px}
  .ayu-story-media img{height:220px}
  .ayu-story-copy{order:1}
  body.ayu .ayu-story-copy h2,
  .ayu-story-copy h2{max-width:none;font-size:clamp(1.45rem,5.2vw,1.8rem)}
  .ayu-story-lead{font-size:.92rem}
  .ayu-story li{padding:.7rem .8rem .7rem 2.4rem;font-size:.88rem;border-radius:12px}
  .ayu-story-cta{width:100%;justify-content:center;box-sizing:border-box}
  .ayu-herb-collage{
    grid-template-columns:repeat(4,minmax(0,1fr));
    grid-template-rows:repeat(3,minmax(150px,190px));
    gap:.55rem;
  }
  .ayu-herb-tile{border-radius:14px}
  body.ayu .ayu-herb-tile figcaption{font-size:.95rem;left:.75rem;right:.75rem;bottom:.7rem}
  body.ayu .ayu-cta{
    flex-direction:column;
    align-items:flex-start;
    gap:1.15rem;
    padding:1.55rem 1.3rem 1.5rem;
    border-radius:20px;
    clip-path:none;
  }
  body.ayu .ayu-cta-copy strong{font-size:clamp(1.35rem,5.2vw,1.7rem)}
  body.ayu .ayu-cta-copy p{font-size:.9rem}
  body.ayu .ayu-cta-btn,
  body.ayu .ayu-cta em{
    width:100%;
    justify-content:center;
    text-align:center;
    box-sizing:border-box;
    clip-path:none;
    border-radius:999px;
  }
  .ayu-cat-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(max-width:640px){
  .ayu-hero{
    padding:calc(5.6rem + env(safe-area-inset-top,0px)) 0 0;
    min-height:min(92dvh,760px);
    align-items:stretch;
    overflow-x:clip;
    isolation:isolate;
  }
  .ayu-hero-bg img{
    opacity:.22;
    object-position:center 28%;
    filter:saturate(1) contrast(1.1);
    transform:scale(1.06);
  }
  .ayu-hero:after{
    background:
      radial-gradient(ellipse 90% 55% at 50% 18%,rgba(61,155,106,.26) 0%,transparent 58%),
      radial-gradient(ellipse 70% 40% at 80% 70%,rgba(61,143,95,.2) 0%,transparent 55%),
      linear-gradient(180deg,rgba(10,26,17,.82) 0%,rgba(13,32,22,.35) 38%,rgba(13,32,22,.88) 100%);
  }
  .ayu-hero .ayu-hero-inner.container,
  .ayu-hero-inner{
    display:flex;
    flex-direction:column;
    align-items:stretch;
    justify-content:flex-end;
    gap:0;
    width:100%;
    max-width:100%;
    min-height:calc(min(92dvh,760px) - 4.6rem);
    margin:0;
    padding:0 0 2.8rem;
    text-align:left;
  }
  .ayu-hero-visual{
    order:1;
    position:relative;
    display:flex;
    align-items:flex-end;
    justify-content:center;
    width:100%;
    max-width:none;
    min-height:42vh;
    flex:1 1 auto;
    margin:0;
    padding:0 8px;
  }
  .ayu-hero-visual:before{
    content:"";
    position:absolute;
    left:50%;
    bottom:10%;
    width:min(70vw,260px);
    height:min(28vw,110px);
    transform:translateX(-50%);
    border-radius:50%;
    background:radial-gradient(ellipse at center,rgba(61,155,106,.22) 0%,transparent 70%);
    filter:blur(8px);
    pointer-events:none;
    z-index:0;
  }
  .ayu-hero-visual:after{display:none}
  .ayu-hero-glow{
    width:70%;
    height:36%;
    bottom:10%;
  }
  .ayu-hero-ring{
    width:min(68%,280px);
    bottom:22%;
  }
  .ayu-hero-ring-outer{width:min(84%,320px);bottom:14%}
  .ayu-hero-orbit{width:min(62%,250px);bottom:24%}
  .ayu-hero-spark-a{top:14%;right:12%}
  .ayu-hero-spark-b{top:36%;left:8%}
  .ayu-hero-spark-c{bottom:32%;right:6%}
  .ayu-hero-leaf-a{top:16%;left:4%}
  .ayu-hero-leaf-b{top:24%;right:2%}
  .ayu-hero-stage{
    width:min(94vw,380px);
    max-width:380px;
    margin:0 auto;
    animation:ayuHeroFloat 6.5s ease-in-out infinite;
  }
  .ayu-hero-visual .is-still{
    position:relative;
    z-index:1;
    display:block;
    width:100%;
    max-width:380px;
    height:auto;
    margin:0 auto;
    object-fit:contain;
    object-position:center bottom;
    background:transparent!important;
    box-shadow:none!important;
    filter:drop-shadow(0 10px 14px rgba(0,0,0,.18));
    animation:ayuHeroBreath 5.2s ease-in-out infinite;
  }
  body.ayu .ayu-hero-copy{
    order:2;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    justify-content:flex-end;
    width:100%;
    max-width:none;
    margin:0;
    padding:1.25rem 1rem 1.55rem;
    text-align:left;
    overflow:visible;
    background:
      linear-gradient(180deg,transparent 0%,rgba(10,26,17,.35) 22%,rgba(10,26,17,.9) 100%);
    border-top:0;
  }
  body.ayu .ayu-hero h1,
  body.ayu .ayu-hero-title{
    font-size:clamp(1.95rem,8.2vw,2.75rem)!important;
    line-height:1.12;
    margin:0 0 .75rem;
    max-width:100%;
    width:100%;
    letter-spacing:-.02em!important;
    word-spacing:.12em;
    gap:.18em;
    align-items:flex-start;
    text-align:left;
    overflow:visible;
  }
  body.ayu .ayu-hero-line{
    white-space:nowrap;
    font-size:1em;
    max-width:100%;
    overflow:visible;
    word-spacing:.14em;
  }
  body.ayu .ayu-hero-swap{
    display:inline-grid;
    width:auto;
    min-width:11ch;
    max-width:100%;
    height:1.14em;
    margin:0;
    overflow:hidden;
    justify-items:start;
    vertical-align:baseline;
    text-align:left;
  }
  body.ayu .ayu-hero-swap .ayu-hero-word{
    grid-area:1/1;
    width:auto;
    max-width:100%;
    text-align:left;
    white-space:nowrap;
    font-size:1em;
    letter-spacing:-.02em!important;
    word-spacing:.12em;
  }
  body.ayu .ayu-hero .ayu-hero-lead{
    max-width:32ch;
    width:100%;
    font-size:clamp(1.08rem,3.9vw,1.2rem);
    line-height:1.48;
    margin:0 0 1.15rem;
    padding:0;
    text-align:left;
    color:rgba(232,245,236,.9);
  }
  body.ayu .ayu-hero .btn-primary,
  body.ayu .ayu-hero .ayu-hero-cta{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:auto;
    max-width:100%;
    min-width:0;
    padding:.68rem 1.25rem;
    font-size:.92rem;
    font-weight:600;
    letter-spacing:.03em;
    text-transform:none;
    text-align:center;
    margin:0;
    border-radius:999px;
    clip-path:none;
    box-shadow:0 8px 20px rgba(15,60,35,.28);
    background:linear-gradient(135deg,var(--ayu-green-deep) 0%,var(--ayu-green) 100%);
    color:#fff;
  }
  body.ayu .ayu-hero .btn-primary:hover,
  body.ayu .ayu-hero .ayu-hero-cta:hover{
    background:linear-gradient(135deg,var(--ayu-green) 0%,var(--ayu-green-soft) 100%);
    color:#fff;
  }
  body.ayu .ayu-hero-slant{
    display:block;
    position:absolute;
    left:0;right:0;bottom:0;
    height:32px;
    z-index:3;
    pointer-events:none;
    background:var(--ayu-mist);
    clip-path:polygon(0 100%,100% 100%,100% 0,0 52%);
    transform:translateZ(0);
    backface-visibility:hidden;
  }
  .ayu-best-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}
  .ayu-best-card{padding:1rem .85rem 1.05rem;border-radius:14px;gap:.4rem}
  .ayu-best-ico{width:48px;height:48px;border-radius:12px;margin-bottom:.1rem}
  .ayu-best-ico img{padding:6px}
  body.ayu .ayu-best-card h3{font-size:.95rem}
  .ayu-best-card p{font-size:.78rem;line-height:1.45}
  .ayu-best-card a{font-size:.78rem;margin-top:.2rem}
  body.ayu-home{--ayu-sec-y:2rem}
  .ayu-process{padding:2rem 12px}
  .ayu-process > .container{width:100%}
  .ayu-process-head{margin-bottom:1.25rem;text-align:left}
  .ayu-process-lead{font-size:.9rem}
  .ayu-process-inner{
    grid-template-columns:1fr;
    gap:.7rem;
    max-width:100%;
    width:100%;
  }
  .ayu-process-inner:before{display:none}
  .ayu-process-step{padding:1.1rem 1rem 1.05rem;border-radius:16px}
  .ayu-process-ico{width:44px;height:44px;border-radius:12px;margin-bottom:.75rem}
  body.ayu .ayu-process-step h3{font-size:1.05rem}
  .ayu-process-step p{font-size:.88rem;max-width:none;line-height:1.5}
  .ayu-process-num{font-size:1.45rem;top:.55rem;right:.85rem}

  body.ayu .ayu-shop-hero{
    padding:2.4rem 14px 2rem;
  }
  body.ayu .ayu-shop-hero-inner{gap:.85rem 1rem}
  body.ayu .ayu-shop-hero h1{font-size:1.55rem;max-width:11ch}
  body.ayu .ayu-shop-hero .ayu-page-hero-lead{font-size:.84rem;max-width:24ch}
  body.ayu .ayu-shop-hero-visual{width:min(36vw,140px)}
  body.ayu .ayu-shop-hero-visual img{max-width:140px}
  body.ayu .ayu-shop-wrap .filter-list{gap:8px}
  body.ayu .ayu-shop-wrap .filters a{min-width:62px}
  body.ayu .ayu-bulk-hero{padding:2.2rem 12px 1.8rem}
  body.ayu .ayu-bulk-hero-inner{gap:.75rem .85rem}
  body.ayu .ayu-bulk-hero h1{font-size:1.42rem;max-width:12ch}
  body.ayu .ayu-bulk-hero .ayu-page-hero-lead{font-size:.82rem;max-width:24ch}
  body.ayu .ayu-bulk-hero-visual{width:min(34vw,128px)}
  body.ayu .ayu-bulk-hero-visual img{height:112px}
  /* About / Bulk / Private-label hero phone: hide right image */
  body.ayu-about .ayu-about-hero .ayu-bulk-hero-inner,
  body.ayu-bulk .ayu-bulk-hero .ayu-bulk-hero-inner,
  body.ayu-wl .ayu-wl-hero .ayu-bulk-hero-inner{
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:0;
  }
  body.ayu-about .ayu-about-hero .ayu-bulk-hero-visual,
  body.ayu-bulk .ayu-bulk-hero .ayu-bulk-hero-visual,
  body.ayu-wl .ayu-wl-hero .ayu-bulk-hero-visual{display:none!important}
  body.ayu-about .ayu-about-hero .ayu-page-hero-copy,
  body.ayu-bulk .ayu-bulk-hero .ayu-page-hero-copy,
  body.ayu-wl .ayu-wl-hero .ayu-page-hero-copy{
    max-width:none;
    width:100%;
  }
  body.ayu-about .ayu-about-hero h1,
  body.ayu-bulk .ayu-bulk-hero h1,
  body.ayu-wl .ayu-wl-hero h1{max-width:16ch}
  body.ayu-about .ayu-about-hero .ayu-page-hero-lead,
  body.ayu-bulk .ayu-bulk-hero .ayu-page-hero-lead,
  body.ayu-wl .ayu-wl-hero .ayu-page-hero-lead{max-width:36ch}
  body.ayu .ayu-bulk-chips{margin-bottom:.8rem}
  body.ayu .ayu-bulk-chips span{font-size:.62rem;padding:.2rem .48rem}
  body.ayu .ayu-bulk-wrap{width:calc(100% - 16px);padding:1.05rem 0 1.8rem}
  body.ayu .ayu-bulk-tiles{grid-template-columns:1fr 1fr;gap:.6rem}
  body.ayu .ayu-bulk-tile{padding:.85rem .75rem .9rem}
  body.ayu .ayu-bulk-tile h3{font-size:.9rem}
  body.ayu .ayu-bulk-tile p{font-size:.76rem}
  body.ayu .ayu-bulk-form{padding:1.05rem .9rem 1.15rem}
  body.ayu .ayu-bulk-form h2{font-size:1.25rem}
  body.ayu .ayu-about-wrap{width:calc(100% - 16px);padding:1.05rem 0 1.8rem}
  body.ayu .ayu-about-lead{padding:.85rem;border-radius:16px}
  body.ayu .ayu-about-dirs{gap:.45rem}
  body.ayu .ayu-about-dir img{min-height:180px;max-height:220px}
  body.ayu .ayu-about-dir figcaption em{font-size:.58rem;letter-spacing:.1em}
  body.ayu .ayu-about-dir figcaption strong{font-size:.8rem}
  body.ayu .ayu-about-actions .btn{width:100%;flex:1 1 100%}
  body.ayu .ayu-contact-wrap{width:calc(100% - 16px);padding:1.05rem 0 1.8rem}
  body.ayu .ayu-contact-tiles{gap:.5rem}
  body.ayu .ayu-contact-tile{padding:.7rem .65rem;gap:.5rem}
  body.ayu .ayu-contact-tile-ico{width:36px;height:36px;border-radius:10px}
  body.ayu .ayu-contact-tile-body em{font-size:.58rem;letter-spacing:.08em}
  body.ayu .ayu-contact-tile-body strong{font-size:.82rem}
  body.ayu .ayu-contact-tile-body span{font-size:.68rem;-webkit-line-clamp:2}
  body.ayu-home .ayu-future-grid{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
  }
  body.ayu-home .ayu-future-grid .prod-card{display:flex!important}
  body.ayu .ayu-mid-banner{
    padding-left:12px;
    padding-right:12px;
  }
  body.ayu .ayu-mid-banner .container{
    width:100%;
    max-width:100%;
    padding:0;
  }
  body.ayu .ayu-mid-track{
    border-radius:16px;
    overflow:hidden;
  }
  body.ayu .ayu-mid-banner-link{
    min-height:180px;
    border-radius:16px;
  }
  body.ayu .ayu-mid-banner-link img{height:min(200px,52vw)}
  body.ayu .ayu-mid-banner-copy{
    left:1rem;
    right:1rem;
    bottom:1rem;
    gap:.28rem;
  }
  body.ayu .ayu-mid-banner-copy strong{font-size:clamp(1.2rem,5.5vw,1.5rem);max-width:16ch}
  body.ayu .ayu-mid-banner-copy b{padding:.5rem .95rem;font-size:.8rem}
  body.ayu .ayu-mid-dots{right:.9rem;bottom:.85rem}

  /* Professional services — phone: content top, image bottom */
  .ayu-serve{
    width:calc(100% - 24px);
    margin:0 auto;
  }
  body.ayu-home .ayu-hero{
    padding-bottom:0;
    margin-bottom:0;
  }
  body.ayu-home .ayu-serve{
    margin:-22px auto 0;
    padding-top:0;
    padding-bottom:var(--ayu-sec-y);
    z-index:5;
    transform:none;
  }
  body.ayu-home .ayu-serve:before{
    display:block;
    content:"";
    position:absolute;
    left:50%;
    top:-22px;
    width:100vw;
    height:36px;
    transform:translateX(-50%);
    background:var(--ayu-mist);
    z-index:-1;
    pointer-events:none;
  }
  .ayu-serve-card{
    display:flex;
    flex-direction:column;
    border-radius:20px;
    max-height:none;
    border:0;
    outline:0;
    box-shadow:0 14px 32px rgba(14,36,24,.14);
    position:relative;
    z-index:1;
    background:#fff;
  }
  .ayu-serve-copy{
    order:1;
    padding:1.2rem 1.1rem 1.05rem;
    text-align:left;
  }
  .ayu-serve-media{
    order:2;
    min-height:0;
    max-height:none;
    height:auto;
  }
  .ayu-serve-media img,
  .ayu-serve-media video{
    min-height:140px;
    max-height:168px;
    width:100%;
    height:auto;
    object-fit:cover;
  }
  body.ayu .ayu-serve-copy h2{
    font-size:1.45rem;
    margin:0 0 .5rem;
    text-align:left;
    letter-spacing:-.02em;
  }
  .ayu-serve-copy p{
    font-size:.92rem;
    line-height:1.5;
    margin:0 0 1rem;
    max-width:none;
  }
  .ayu-serve-copy p + p{display:none}
  .ayu-serve-grid{
    grid-template-columns:1fr 1fr;
    gap:.65rem;
    margin:0;
  }
  .ayu-serve-grid a{
    flex-direction:row;
    align-items:center;
    gap:.55rem;
    font-size:.86rem;
    padding:.65rem .7rem;
    border-radius:12px;
    background:#f6faf4;
    box-shadow:none;
  }
  .ayu-serve-grid a:hover{transform:none}
  .ayu-serve-ico{
    width:40px;height:40px;
    border-radius:10px;
    box-shadow:0 4px 10px rgba(14,36,24,.08);
  }
  .ayu-serve-media:after{display:none}
  .ayu-cat-pic{width:70px;height:70px}
  .ayu-cat img{width:56px;height:56px}
  .ayu-herb-collage{
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-template-rows:repeat(5,minmax(140px,34vw));
    gap:.5rem;
  }
  .ayu-herb-tile:nth-child(1){grid-area:1 / 1 / 3 / 2}
  .ayu-herb-tile:nth-child(2){grid-area:1 / 2 / 2 / 3}
  .ayu-herb-tile:nth-child(3){grid-area:2 / 2 / 3 / 3}
  .ayu-herb-tile:nth-child(4){grid-area:3 / 1 / 4 / 2}
  .ayu-herb-tile:nth-child(5){grid-area:3 / 2 / 5 / 3}
  .ayu-herb-tile:nth-child(6){grid-area:4 / 1 / 5 / 2}
  .ayu-herb-tile:nth-child(7){grid-area:5 / 1 / 6 / 2}
  .ayu-herb-tile:nth-child(8){grid-area:5 / 2 / 6 / 3}
  .ayu-herb-tile{border-radius:14px}
  body.ayu .ayu-herbs .ayu-sec-head h2{font-size:1.6rem}
  body.ayu .ayu-herb-tile figcaption{font-size:.92rem;left:.7rem;right:.7rem;bottom:.65rem}

  /* Trust band — phone collage */
  body.ayu .trust-band{padding:1.35rem 0 1.5rem}
  body.ayu .trust{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:.65rem;
  }
  body.ayu .trust-item{
    flex-direction:row;
    align-items:center;
    text-align:left;
    gap:.65rem;
    padding:.85rem .8rem;
    border-radius:14px;
    min-height:76px;
  }
  body.ayu .trust-item:hover{transform:none}
  body.ayu .trust-item .trust-pic{
    width:40px;height:40px;
    flex-shrink:0;
  }
  body.ayu .trust-copy{text-align:left}
  body.ayu .trust-item strong{
    font-size:.78rem;
    line-height:1.2;
  }
  body.ayu .trust-item em{
    margin:.18rem 0 0;
    font-size:.68rem;
    line-height:1.3;
  }
  body.ayu .trust-item:last-child{
    grid-column:1 / -1;
    justify-content:center;
    text-align:center;
    max-width:100%;
  }
  body.ayu .trust-item:last-child .trust-copy{text-align:center}

  body.ayu .site-footer{
    margin-top:.75rem;
    padding:0 0 calc(1.1rem + 62px + env(safe-area-inset-bottom,0px));
  }
  body.ayu .foot-wave{height:44px}
  body.ayu .foot-wave svg{height:44px}
  body.ayu .foot-shell{
    width:100%;
    max-width:100%;
    padding-inline:0;
    box-sizing:border-box;
  }
  body.ayu .site-footer .container.foot-shell{
    width:min(1180px,calc(100% - 20px));
  }
  body.ayu .footer-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:.7rem;
    padding:.85rem 0 .75rem;
  }
  body.ayu .footer-grid > div{
    padding:.95rem .85rem 1rem;
    border-radius:14px;
  }
  body.ayu .foot-brand{
    grid-column:1 / -1;
    text-align:center;
    display:flex;
    flex-direction:column;
    align-items:center;
  }
  body.ayu .foot-brand > .muted{
    max-width:36ch;
    margin-left:auto;
    margin-right:auto;
  }
  body.ayu .foot-logo{
    height:58px;
    border-radius:12px;
    margin-inline:auto;
  }
  body.ayu .site-footer .tagline{font-size:.95rem}
  body.ayu .site-footer .muted,
  body.ayu .foot-brand > .muted{font-size:.82rem}
  body.ayu .site-footer h4{font-size:.68rem;margin-bottom:.55rem}
  body.ayu .footer-grid a,
  body.ayu .footer-grid p{font-size:.8rem;margin:.22rem 0}
  body.ayu .foot-social{
    justify-content:center;
    gap:.4rem;
  }
  body.ayu .foot-social a{
    width:38px;height:38px;
    border-radius:10px;
  }
  body.ayu .foot-contact{grid-column:1 / -1}
  body.ayu .foot-contact .foot-cta{
    width:100%;
    justify-content:center;
    box-sizing:border-box;
    margin-top:.7rem;
    padding:.7rem 1rem;
    font-size:.78rem;
  }
  body.ayu .site-footer .copy{
    flex-direction:column;
    text-align:center;
    gap:.28rem;
    border-radius:12px;
    padding:.75rem .85rem;
    font-size:.72rem;
    line-height:1.4;
  }
}
@media(max-width:380px){
  .ayu-hero{min-height:min(94dvh,720px)}
  .ayu-hero .ayu-hero-inner.container,
  .ayu-hero-inner{
    min-height:calc(min(94dvh,720px) - 4.4rem);
    padding-bottom:4.2rem;
  }
  .ayu-hero-visual{min-height:38vh}
  .ayu-hero-visual .is-still{width:min(96vw,320px)}
  body.ayu .ayu-hero-copy{padding:1.1rem .9rem 1.35rem;overflow:visible}
  body.ayu .ayu-hero h1,
  body.ayu .ayu-hero-title{font-size:clamp(1.85rem,8vw,2.45rem)!important;max-width:100%;letter-spacing:-.02em!important;word-spacing:.14em;gap:.2em}
  body.ayu .ayu-hero .ayu-hero-lead{font-size:1.1rem;max-width:28ch}
  body.ayu .ayu-hero .btn-primary,
  body.ayu .ayu-hero .ayu-hero-cta{padding:.64rem 1.15rem;font-size:.9rem}
  .ayu-serve{width:calc(100% - 20px);margin:0 auto}
  body.ayu-home .ayu-serve{margin:0 auto}
  .ayu-serve-copy{order:1;padding:1.1rem .95rem 1rem}
  .ayu-serve-media{order:2}
  body.ayu .ayu-serve-copy h2{font-size:1.32rem}
  .ayu-serve-copy p{font-size:.88rem}
  .ayu-serve-grid{gap:.6rem .45rem}
  .ayu-serve-grid a{font-size:.82rem}
  body.ayu .site-footer .container.foot-shell{width:calc(100% - 16px)}
  body.ayu .footer-grid{gap:.55rem}
  body.ayu .footer-grid > div{padding:.85rem .7rem .9rem;border-radius:12px}
  body.ayu .footer-grid a,
  body.ayu .footer-grid p{font-size:.76rem}
  body.ayu .foot-logo{height:52px}
  .ayu-serve-ico{width:36px;height:36px}
  body.ayu .brand-name em{letter-spacing:.08em}
}

@media(max-width:1180px){
  /* Product card image — center middle on phone/tablet */
  body.ayu .prod-card .thumb{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    aspect-ratio:1;
    height:auto;
    min-height:0;
    padding:.7rem;
  }
  body.ayu .prod-card .thumb img,
  body.ayu .prod-card .thumb:not(.has-video) video{
    width:auto!important;
    height:auto!important;
    max-width:88%!important;
    max-height:88%!important;
    object-fit:contain!important;
    object-position:center center!important;
    margin:auto!important;
  }
  body.ayu .prod-card .thumb.has-video{
    padding:0!important;
  }
  body.ayu .prod-card .thumb.has-video video{
    width:100%!important;
    height:100%!important;
    max-width:none!important;
    max-height:none!important;
    object-fit:cover!important;
    margin:0!important;
  }
  /* Phone top bar — opaque so page content never shows through */
  body.ayu .site-chrome{
    background:linear-gradient(90deg,#0e2418 0%,#1a4730 48%,#2f6b45 100%)!important;
    box-shadow:0 8px 22px rgba(8,40,20,.18);
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }
  body.ayu-home .site-chrome,
  body.ayu-home .site-chrome.is-scrolled,
  body.ayu-home .site-chrome:has(.site-header.is-scrolled){
    background:linear-gradient(90deg,#0e2418 0%,#1a4730 48%,#2f6b45 100%)!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }
  body.ayu .site-header .container{
    width:calc(100% - 20px);
  }
  body.ayu .nav-wrap{
    grid-template-columns:minmax(0,1fr) auto;
    min-height:60px;
    padding:.35rem 0;
    gap:.4rem;
    align-items:center;
  }
  body.ayu .brand{
    max-width:calc(100% - 140px);
    gap:.55rem;
  }
  body.ayu .brand-name{display:flex!important}
  body.ayu .brand img{
    height:42px;
    max-width:42px;
    width:auto;
    margin:0;
    object-fit:contain;
    filter:drop-shadow(0 2px 6px rgba(0,0,0,.22));
  }
  body.ayu .brand-name b{font-size:1.05rem}
  body.ayu .brand-name em{font-size:.56rem;letter-spacing:.12em}
  body.ayu .nav-wrap,
  body.ayu-home .nav-wrap{
    grid-template-columns:minmax(0,1fr) auto!important;
  }
  body.ayu .nav-tools,
  body.ayu-home .nav-tools{
    grid-column:2!important;
    gap:.25rem;
  }
  /* Phone search modal — click icon to open */
  body.ayu .search-box,
  body.ayu-home .search-box{
    position:fixed!important;
    inset:0!important;
    z-index:260!important;
    display:none!important;
    grid-column:auto!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:max(14px,env(safe-area-inset-top)) 14px 14px!important;
    background:rgba(14,36,24,.62)!important;
    align-items:flex-start;
    justify-content:stretch;
  }
  body.ayu .search-box.open,
  body.ayu-home .search-box.open{
    display:flex!important;
  }
  body.ayu .search-sheet{
    width:100%;
    background:#fff;
    border-radius:18px;
    padding:12px;
    box-shadow:0 18px 40px rgba(14,36,24,.28);
    max-height:min(86vh,640px);
    display:flex;
    flex-direction:column;
    font-family:var(--ayu-font);
  }
  body.ayu .search-close{
    display:grid!important;
    place-items:center;
    flex-shrink:0;
    width:44px;height:44px;
    border:0;
    border-radius:12px;
    background:var(--ayu-mint);
    color:var(--ayu-green-deep);
    font-size:1.45rem;
    line-height:1;
    cursor:pointer;
  }
  body.ayu .search-mini input{
    background:#fff!important;
    border-color:#d7e8dc!important;
    color:var(--ayu-forest)!important;
    caret-color:var(--ayu-forest)!important;
  }
  body.ayu .search-mini input::placeholder{color:#6a8578!important}
  body.ayu .search-open{
    display:grid!important;
    place-items:center;
  }
  body.ayu .nav-tools > [data-bag="cart"],
  body.ayu .nav-tools > .search-open,
  body.ayu .nav-tools > .nav-toggle{
    display:grid!important;
    place-items:center;
  }
  body.ayu .nav-tools > [data-bag="wish"],
  body.ayu .nav-tools > .login-chip,
  body.ayu .nav-tools > a.tool-btn:not([data-bag]){
    display:none!important;
  }
  body.ayu .tool-btn,
  body.ayu .nav-toggle{
    width:40px;
    height:40px;
    border-radius:12px;
    color:#fff;
    background:rgba(255,255,255,.1);
    border:1px solid rgba(255,255,255,.12);
  }
  body.ayu .tool-btn b{
    background:var(--ayu-teal);
    color:#fff;
    top:-2px;right:-2px;
  }
  body.ayu .nav-toggle svg{
    width:20px;height:20px;
    stroke:#fff;
    fill:none;
    stroke-width:2;
    stroke-linecap:round;
  }
  body.ayu .nav-ico-line{stroke:#fff}

  /* Drawer — all pages */
  body.ayu .nav-drawer-head{
    display:flex!important;
    align-items:center;
    justify-content:space-between;
    padding:.35rem .15rem .85rem;
    margin-bottom:.35rem;
    border-bottom:1px solid rgba(255,255,255,.12);
    font-family:var(--ayu-font);
  }
  body.ayu .nav-drawer-head strong{
    color:#fff;
    font-size:1.05rem;
    font-weight:600;
  }
  body.ayu .nav-close{
    display:grid!important;
    place-items:center;
    width:36px;height:36px;
    border:0;
    border-radius:10px;
    background:rgba(255,255,255,.12);
    color:#fff;
    font-size:1.4rem;
    line-height:1;
    cursor:pointer;
  }
  body.ayu .nav.open,
  body.ayu .nav{
    background:var(--ayu-grad-hero);
    color:#fff;
    padding:.95rem .9rem calc(96px + env(safe-area-inset-bottom,0px));
    font-family:var(--ayu-font);
  }
  body.ayu .nav>a,
  body.ayu .drop>a{
    color:rgba(255,255,255,.94);
    background:transparent;
    border-radius:14px;
    font-weight:600;
    font-size:.98rem;
    padding:.88rem .9rem;
  }
  body.ayu .nav>a:hover,
  body.ayu .drop>a:hover,
  body.ayu .nav>a.on,
  body.ayu .drop>a.on{
    color:#fff;
    background:rgba(61,143,95,.28);
  }
  body.ayu .nav>a.on:after,
  body.ayu .drop>a.on:after{display:none}
  body.ayu .drop-menu{
    background:transparent;
  }
  body.ayu .drop-menu a{
    color:rgba(255,255,255,.88);
    border-radius:12px;
  }
  body.ayu .drop-menu a:hover{
    background:rgba(255,255,255,.08);
    color:#fff;
  }
  body.ayu .nav-scrim.on{
    background:rgba(8,28,30,.55);
  }
}
@media(max-width:640px){
  body.ayu .nav-wrap{min-height:56px;padding:.3rem 0}
  body.ayu .brand{gap:.45rem;max-width:calc(100% - 92px)}
  body.ayu .brand img{height:38px;max-width:38px}
  body.ayu .brand-name b{font-size:.98rem}
  body.ayu .brand-name em{font-size:.52rem;letter-spacing:.1em}
  body.ayu .tool-btn,
  body.ayu .nav-toggle{width:38px;height:38px;border-radius:11px}
}
