:root {
  --cream: #f2eadf;
  --cream-soft: #faf6f0;
  --ink: #1a1715;
  --charcoal: #141414;
  --fig: #2a1723;
  --fig-deep: #180d15;
  --honey: #c98b2d;
  --honey-soft: #e6b968;
  --moss: #253026;
  --line: rgba(26, 23, 21, .16);
  --radius: 28px;
  --header-h: 78px;
  --ease: cubic-bezier(.22, 1, .36, 1);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--ink);
  background: var(--cream);
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}
body.menu-open, body.cart-open { overflow: hidden; }
a { color: inherit; text-decoration: none; }
button, input, textarea, select { font: inherit; }
button { cursor: pointer; }
img, video { display: block; max-width: 100%; }

.sr-only {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0;
}
.site-noise {
  position: fixed; inset: 0; z-index: 1000; pointer-events: none; opacity: .035;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.5'/%3E%3C/svg%3E");
}
.scroll-progress { position: fixed; inset: 0 0 auto; height: 2px; z-index: 1001; pointer-events: none; }
.scroll-progress span { display: block; height: 100%; width: 0; background: var(--honey-soft); transform-origin: left; }

.site-header {
  position: fixed; z-index: 900; top: 0; left: 0; right: 0; height: var(--header-h);
  display: grid; grid-template-columns: 1fr auto 1fr; align-items: center;
  padding: 0 clamp(20px, 4vw, 68px); color: white; transition: color .45s ease, background .45s ease, backdrop-filter .45s ease;
}
.site-header.scrolled { background: rgba(17, 15, 14, .62); backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px); }
.brand { display: inline-flex; align-items: center; gap: 12px; width: max-content; }
.brand-mark {
  width: 38px; height: 38px; border: 1px solid currentColor; border-radius: 50%;
  display: inline-grid; place-items: center; font-family: Georgia, serif; font-size: 12px; letter-spacing: .05em;
}
.brand-name { font-family: Georgia, "Times New Roman", serif; font-size: 17px; letter-spacing: .02em; }
.desktop-nav { display: flex; gap: 30px; font-size: 12px; text-transform: uppercase; letter-spacing: .14em; }
.desktop-nav a { opacity: .78; transition: opacity .2s ease; }
.desktop-nav a:hover { opacity: 1; }
.header-actions { justify-self: end; display: flex; gap: 16px; align-items: center; }
.cart-button, .menu-button { color: inherit; background: transparent; border: 0; }
.cart-button { font-size: 12px; text-transform: uppercase; letter-spacing: .12em; padding: 10px; }
.cart-button span { display: inline-grid; place-items: center; width: 22px; height: 22px; margin-left: 5px; border: 1px solid currentColor; border-radius: 50%; font-size: 10px; }
.menu-button { display: none; width: 38px; height: 38px; position: relative; }
.menu-button span:not(.sr-only) { position: absolute; width: 20px; height: 1px; background: currentColor; left: 9px; transition: transform .3s ease, top .3s ease; }
.menu-button span:first-child { top: 15px; }
.menu-button span:nth-child(2) { top: 22px; }
body.menu-open .menu-button span:first-child { top: 19px; transform: rotate(45deg); }
body.menu-open .menu-button span:nth-child(2) { top: 19px; transform: rotate(-45deg); }

.mobile-menu {
  position: fixed; z-index: 850; inset: 0; padding: 120px 24px 32px; background: var(--fig-deep); color: white;
  display: flex; flex-direction: column; justify-content: space-between; transform: translateY(-100%); transition: transform .7s var(--ease);
}
body.menu-open .mobile-menu { transform: translateY(0); }
.mobile-menu nav { display: grid; gap: 12px; }
.mobile-menu nav a { font-family: Georgia, serif; font-size: clamp(42px, 12vw, 72px); line-height: .95; }
.mobile-menu p { font-size: 13px; line-height: 1.6; opacity: .7; }

.hero {
  min-height: 100svh; position: relative; isolation: isolate; display: grid; place-items: center;
  overflow: hidden; color: white; background: #120c0d;
}
.hero-media, .hero-vignette { position: absolute; inset: 0; }
.hero-media {
  background:
    radial-gradient(circle at 23% 42%, rgba(132, 49, 89, .55), transparent 38%),
    radial-gradient(circle at 76% 63%, rgba(225, 161, 49, .3), transparent 34%),
    linear-gradient(135deg, #211016, #100b0b 55%, #24180e);
  transform: scale(1.03);
}
.hero-vignette { z-index: 1; background: linear-gradient(to bottom, rgba(0,0,0,.12), rgba(0,0,0,.02) 45%, rgba(0,0,0,.48)); }
.hero-glow { position: absolute; border-radius: 50%; filter: blur(2px); opacity: .8; }
.hero-glow--fig { width: 44vw; aspect-ratio: 1; left: -10vw; top: 18%; background: radial-gradient(circle at 60% 40%, #693452, #29101f 65%, transparent 68%); }
.hero-glow--honey { width: 34vw; aspect-ratio: 1; right: -7vw; bottom: 4%; background: radial-gradient(circle at 35% 35%, rgba(243,188,83,.85), rgba(110,60,14,.35) 62%, transparent 67%); }
.hero-orbit { position: absolute; border: 1px solid rgba(255,255,255,.14); border-radius: 50%; }
.hero-orbit--one { width: 56vw; height: 56vw; left: 22%; top: 3%; }
.hero-orbit--two { width: 84vw; height: 34vw; left: 8%; top: 34%; transform: rotate(-17deg); }
.hero-content { position: relative; z-index: 3; width: min(92vw, 1280px); text-align: center; padding: 130px 0 110px; }
.eyebrow, .kicker, .section-index { text-transform: uppercase; letter-spacing: .2em; font-size: 11px; line-height: 1.5; }
.hero-title { margin: 28px 0 20px; font-family: Georgia, "Times New Roman", serif; font-weight: 400; font-size: clamp(62px, 10vw, 154px); line-height: .77; letter-spacing: -.055em; }
.hero-title span { display: block; overflow: hidden; }
.hero-title span:last-child { font-style: italic; transform: translateX(.02em); }
.hero-lead { max-width: 580px; margin: 32px auto 0; font-size: clamp(17px, 2vw, 24px); line-height: 1.45; color: rgba(255,255,255,.8); }
.hero-cta { margin-top: 34px; display: flex; justify-content: center; align-items: center; gap: 26px; flex-wrap: wrap; }
.hero-scroll { position: absolute; z-index: 4; bottom: 28px; left: 50%; transform: translateX(-50%); display: flex; gap: 10px; align-items: center; font-size: 9px; text-transform: uppercase; letter-spacing: .18em; color: rgba(255,255,255,.54); }
.hero-scroll span { width: 32px; height: 1px; background: currentColor; }

.button {
  display: inline-flex; justify-content: center; align-items: center; min-height: 52px; padding: 0 24px;
  border: 1px solid transparent; border-radius: 999px; text-transform: uppercase; letter-spacing: .12em; font-size: 11px;
  transition: transform .25s var(--ease), background .25s ease, color .25s ease;
}
.button:hover { transform: translateY(-2px); }
.button--light { background: var(--cream-soft); color: #171210; }
.button--dark { background: #181412; color: white; }
.button--full { width: 100%; }
.text-link { font-size: 12px; letter-spacing: .06em; border-bottom: 1px solid rgba(255,255,255,.32); padding: 12px 0 8px; }
.text-link span { margin-left: 8px; }

.manifesto { padding: clamp(90px, 13vw, 190px) clamp(22px, 6vw, 96px) 48px; background: var(--cream); }
.manifesto-grid { max-width: 1440px; margin: auto; display: grid; grid-template-columns: minmax(130px, .45fr) 1.55fr; gap: 7vw; }
.section-index { margin: 5px 0 0; opacity: .52; }
.manifesto-copy { max-width: 960px; }
.kicker { color: #7b5a3f; margin: 0 0 24px; }
.display-heading { margin: 0; font-family: Georgia, serif; font-size: clamp(52px, 8.5vw, 128px); line-height: .92; font-weight: 400; letter-spacing: -.04em; }
.display-heading em { font-weight: 400; color: #8f4c61; }
.body-large { max-width: 660px; margin: 44px 0 0 auto; font-family: Georgia, serif; font-size: clamp(21px, 2.2vw, 32px); line-height: 1.35; color: #5e554f; }
.editorial-strip { margin-top: clamp(80px, 12vw, 150px); border-top: 1px solid var(--line); padding-top: 24px; display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; text-transform: uppercase; font-size: 10px; letter-spacing: .22em; color: #776e67; }

.product-story { min-height: 185svh; position: relative; }
.product-story--fig { background: var(--fig); color: white; }
.product-story--honey { background: #d19a3e; color: #24180b; }
.story-sticky { min-height: 100svh; position: sticky; top: 0; display: grid; grid-template-columns: 1.08fr .92fr; align-items: center; padding: 90px clamp(22px, 6vw, 96px) 50px; overflow: hidden; }
.story-sticky--reverse .story-visual { order: 2; }
.story-visual { min-height: 66vh; position: relative; display: grid; place-items: center; }
.jar { width: min(30vw, 390px); min-width: 260px; position: relative; z-index: 3; filter: drop-shadow(0 34px 45px rgba(0,0,0,.35)); transform-style: preserve-3d; }
.jar-lid { width: 72%; height: 50px; margin: 0 auto -3px; border-radius: 16px 16px 5px 5px; background: linear-gradient(#302b27, #131211); box-shadow: inset 0 2px rgba(255,255,255,.12); }
.jar-glass { height: 360px; border-radius: 42px 42px 62px 62px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.28); box-shadow: inset 0 0 50px rgba(255,255,255,.13); backdrop-filter: blur(5px); }
.jar-glass span { width: 68%; padding: 38px 14px; border-radius: 6px; background: #f1e7d9; color: #221615; text-align: center; font-family: Georgia, serif; font-size: 20px; line-height: 1.2; }
.jar--fig .jar-glass { background: linear-gradient(155deg, rgba(88,30,53,.88), rgba(40,12,24,.95)); }
.jar--honey .jar-glass { background: linear-gradient(155deg, rgba(247,194,81,.76), rgba(161,89,15,.9)); }
.ingredient { position: absolute; border-radius: 51% 49% 48% 52%; background: radial-gradient(circle at 40% 40%, #b06680 0 10%, #4e2338 46%, #211019 75%); opacity: .78; filter: blur(.2px); }
.ingredient--fig-one { width: 150px; height: 130px; left: 8%; top: 22%; transform: rotate(24deg); }
.ingredient--fig-two { width: 110px; height: 102px; right: 7%; bottom: 16%; transform: rotate(-14deg); }
.honey-thread { position: absolute; width: 12px; height: 72vh; right: 17%; top: -18%; border-radius: 99px; background: linear-gradient(to bottom, transparent, rgba(255,213,121,.84) 22%, #b96a12 90%); transform: rotate(9deg); opacity: .72; }
.story-copy { max-width: 620px; justify-self: center; }
.story-copy .section-index { margin-bottom: 48px; }
.story-copy .kicker { color: currentColor; opacity: .58; }
.story-copy h2 { margin: 0; font-family: Georgia, serif; font-weight: 400; font-size: clamp(48px, 6.3vw, 96px); line-height: .92; letter-spacing: -.045em; }
.story-copy h2 em { font-weight: 400; opacity: .7; }
.story-copy > p:not(.section-index):not(.kicker) { max-width: 490px; font-size: 16px; line-height: 1.7; opacity: .72; margin: 34px 0 0; }
.product-buy-row { margin-top: 38px; padding-top: 24px; border-top: 1px solid currentColor; border-color: rgba(255,255,255,.22); display: flex; justify-content: space-between; align-items: center; gap: 20px; }
.product-story--honey .product-buy-row { border-color: rgba(32,23,14,.25); }
.product-price { display: block; font-family: Georgia, serif; font-size: 24px; }
.product-buy-row small { display: block; opacity: .6; margin-top: 3px; }

.collections { padding: clamp(90px, 12vw, 170px) clamp(22px, 6vw, 96px); }
.section-heading-row { max-width: 1440px; margin: 0 auto 70px; display: grid; grid-template-columns: 1.35fr .65fr; gap: 7vw; align-items: end; }
.body-copy { max-width: 430px; font-size: 16px; line-height: 1.7; color: #625a55; }
.collection-grid { max-width: 1440px; margin: auto; display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
.collection-card { min-height: 380px; border-radius: var(--radius); padding: 28px; display: flex; flex-direction: column; justify-content: flex-end; position: relative; overflow: hidden; }
.collection-card::before { content: ""; position: absolute; inset: 0; transition: transform .55s var(--ease); }
.collection-card:hover::before { transform: scale(1.04); }
.collection-card > * { position: relative; z-index: 1; }
.collection-card span { margin-bottom: auto; font-size: 10px; text-transform: uppercase; letter-spacing: .18em; opacity: .6; }
.collection-card h3 { font-family: Georgia, serif; font-weight: 400; font-size: 40px; margin: 0 0 10px; }
.collection-card p { margin: 0 0 22px; opacity: .72; line-height: 1.55; }
.collection-card a { width: max-content; border-bottom: 1px solid currentColor; padding-bottom: 5px; font-size: 12px; }
.collection-card--active:first-child { color: white; }
.collection-card--active:first-child::before { background: radial-gradient(circle at 70% 20%, #713b57, #24121c 60%); }
.collection-card--active:nth-child(2) { color: #24170b; }
.collection-card--active:nth-child(2)::before { background: radial-gradient(circle at 68% 25%, #efc26c, #c47f22 68%); }
.collection-card--future { color: white; }
.collection-card--future::before { background: linear-gradient(150deg, #3a4339, #151915); }
.collection-card--future:last-child::before { background: linear-gradient(150deg, #3b312d, #171311); }

.territory { min-height: 110svh; position: relative; overflow: hidden; display: grid; align-items: end; background: #101511; color: white; }
.territory-media { position: absolute; inset: 0; background: linear-gradient(#3f513f, #191c17 55%, #0b0f0c); }
.territory-media::after { content:""; position:absolute; inset:0; background: linear-gradient(to bottom, rgba(0,0,0,.05), rgba(0,0,0,.12) 45%, rgba(0,0,0,.72)); }
.territory-sun { position:absolute; width: 28vw; aspect-ratio:1; border-radius:50%; right: 12%; top: 12%; background: radial-gradient(circle, #ebc889 0 3%, rgba(239,174,86,.55) 4%, transparent 68%); filter: blur(3px); }
.mountain { position:absolute; left:-5%; right:-5%; bottom:0; border-radius:50% 50% 0 0 / 40% 40% 0 0; }
.mountain--back { height:48%; background:#273529; clip-path: polygon(0 61%, 9% 43%, 18% 55%, 31% 25%, 43% 51%, 57% 18%, 69% 45%, 81% 31%, 100% 58%, 100% 100%, 0 100%); }
.mountain--front { height:38%; background:#131b15; clip-path: polygon(0 56%, 14% 35%, 29% 59%, 42% 31%, 54% 63%, 66% 38%, 78% 58%, 91% 28%, 100% 45%, 100% 100%, 0 100%); }
.territory-copy { position:relative; z-index:2; width:min(86vw,1180px); margin:0 auto; padding: 0 0 clamp(80px,10vw,150px); }
.territory-copy h2 { margin: 22px 0 30px; font-family:Georgia,serif; font-weight:400; font-size:clamp(54px,8vw,120px); line-height:.9; letter-spacing:-.045em; }
.territory-copy h2 em { font-weight:400; color:#d6b77c; }
.territory-copy > p:last-child { width:min(560px,100%); margin-left:auto; line-height:1.7; color:rgba(255,255,255,.68); }

.pro { padding: clamp(90px, 12vw, 170px) clamp(22px, 6vw, 96px); background: var(--charcoal); color:white; display:grid; grid-template-columns: 1fr 1fr; gap: clamp(50px, 8vw, 130px); }
.pro-intro { max-width: 680px; }
.pro-intro .kicker { color: #b59c7a; margin-top: 55px; }
.pro-intro h2 { margin: 0; font-family:Georgia,serif; font-size:clamp(48px,6.2vw,92px); font-weight:400; line-height:.94; letter-spacing:-.04em; }
.pro-intro h2 em { font-weight:400; color:#c9a776; }
.pro-intro > p:last-child { max-width:520px; margin-top:34px; color:rgba(255,255,255,.62); line-height:1.75; }
.pro-form { align-self:end; border-top:1px solid rgba(255,255,255,.18); padding-top:18px; }
.field { display:grid; gap:8px; padding:16px 0; border-bottom:1px solid rgba(255,255,255,.14); }
.field-grid { display:grid; grid-template-columns:1fr 1fr; gap:22px; }
.field label { font-size:10px; text-transform:uppercase; letter-spacing:.16em; color:rgba(255,255,255,.48); }
.field input, .field textarea, .field select { width:100%; border:0; outline:0; background:transparent; color:white; padding:4px 0 2px; border-radius:0; }
.field input::placeholder, .field textarea::placeholder { color:rgba(255,255,255,.26); }
.field select { appearance:none; }
.field select option { color:#111; }
.form-footer { padding-top:28px; display:flex; gap:22px; align-items:center; }
.form-footer p { color:rgba(255,255,255,.62); font-size:12px; line-height:1.5; }
.honeypot { position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; }

.closing-cta { padding: clamp(100px, 14vw, 200px) 24px; text-align:center; }
.closing-cta .display-heading { margin: 15px auto 44px; font-size: clamp(54px, 8vw, 120px); }

.site-footer { padding: 55px clamp(22px,6vw,96px) 34px; background:#0f0e0d; color:white; display:grid; grid-template-columns:1fr auto; gap:50px; align-items:start; }
.site-footer > div { display:flex; align-items:center; gap:13px; font-family:Georgia,serif; }
.site-footer nav { display:flex; gap:22px; flex-wrap:wrap; font-size:11px; text-transform:uppercase; letter-spacing:.11em; color:rgba(255,255,255,.6); }
.site-footer > p { grid-column:1/-1; margin:30px 0 0; padding-top:18px; border-top:1px solid rgba(255,255,255,.12); font-size:11px; color:rgba(255,255,255,.36); }

.cart-drawer { position:fixed; z-index:1200; inset:0; pointer-events:none; visibility:hidden; }
.cart-drawer.open { visibility:visible; pointer-events:auto; }
.cart-backdrop { position:absolute; inset:0; background:rgba(12,9,8,.56); opacity:0; transition:opacity .35s ease; }
.cart-panel { position:absolute; top:0; right:0; bottom:0; width:min(470px,100%); background:var(--cream-soft); transform:translateX(100%); transition:transform .55s var(--ease); padding:28px; display:flex; flex-direction:column; }
.cart-drawer.open .cart-backdrop { opacity:1; }
.cart-drawer.open .cart-panel { transform:translateX(0); }
.cart-header { display:flex; justify-content:space-between; align-items:start; padding-bottom:22px; border-bottom:1px solid var(--line); }
.cart-header p { margin:0 0 2px; font-size:10px; text-transform:uppercase; letter-spacing:.16em; color:#786e67; }
.cart-header h2 { margin:0; font-family:Georgia,serif; font-weight:400; font-size:38px; }
.cart-header button { border:0; background:transparent; font-size:30px; line-height:1; }
.cart-items { display:grid; gap:14px; padding:24px 0; overflow:auto; }
.cart-item { display:grid; grid-template-columns:64px 1fr auto; gap:14px; align-items:center; padding-bottom:14px; border-bottom:1px solid var(--line); }
.cart-thumb { width:64px; height:74px; border-radius:14px; background:linear-gradient(145deg,#5b2b44,#24141c); }
.cart-item[data-id="miel-tilleul"] .cart-thumb { background:linear-gradient(145deg,#e0ad53,#9a5813); }
.cart-item strong { display:block; font-family:Georgia,serif; font-size:18px; font-weight:400; }
.cart-item small { color:#776e67; }
.cart-item button { border:0; background:transparent; font-size:11px; text-decoration:underline; color:#776e67; }
.cart-empty { margin:auto; color:#81766e; }
.cart-empty[hidden] { display:none; }
.cart-footer { margin-top:auto; padding-top:18px; border-top:1px solid var(--line); }
.cart-total { display:flex; justify-content:space-between; margin-bottom:18px; font-family:Georgia,serif; font-size:23px; }
.cart-footer small { display:block; margin-top:11px; line-height:1.5; color:#7b716a; }
.cart-footer p { font-size:12px; color:#705c4d; }
.toast { position:fixed; z-index:1300; left:50%; bottom:24px; transform:translate(-50%, 20px); background:#171412; color:white; padding:13px 18px; border-radius:999px; font-size:12px; opacity:0; pointer-events:none; transition:opacity .25s ease, transform .25s ease; }
.toast.show { opacity:1; transform:translate(-50%,0); }

.reveal { will-change: transform, opacity; }

@media (max-width: 980px) {
  :root { --header-h: 68px; }
  .site-header { grid-template-columns: 1fr auto; padding:0 20px; }
  .desktop-nav { display:none; }
  .menu-button { display:block; }
  .brand-name { font-size:15px; }
  .manifesto-grid, .section-heading-row, .pro { grid-template-columns:1fr; }
  .manifesto-grid { gap:40px; }
  .body-large { margin-left:0; }
  .story-sticky, .story-sticky--reverse { grid-template-columns:1fr; align-content:center; gap:8px; padding:82px 22px 32px; }
  .story-sticky--reverse .story-visual { order:0; }
  .story-visual { min-height:48vh; }
  .jar { min-width:0; width:min(58vw,320px); }
  .jar-lid { height:38px; }
  .jar-glass { height:min(42vh,310px); border-radius:34px 34px 48px 48px; }
  .story-copy { justify-self:start; max-width:760px; }
  .story-copy .section-index { margin-bottom:20px; }
  .story-copy h2 { font-size:clamp(44px,10.8vw,76px); }
  .story-copy > p:not(.section-index):not(.kicker) { margin-top:20px; }
  .product-buy-row { margin-top:22px; }
  .product-story { min-height:165svh; }
  .collection-grid { grid-template-columns:1fr 1fr; }
  .pro { gap:65px; }
  .pro-intro .kicker { margin-top:28px; }
}

@media (max-width: 640px) {
  .site-header { padding-left:16px; padding-right:12px; }
  .brand-mark { width:34px; height:34px; }
  .brand-name { max-width:132px; line-height:1.05; }
  .cart-button { padding:9px 2px; font-size:10px; }
  .cart-button span { width:20px; height:20px; }
  .hero { min-height:100svh; }
  .hero-content { width:calc(100vw - 32px); padding-top:105px; }
  .hero-title { font-size:clamp(58px,18vw,88px); line-height:.82; margin-top:20px; }
  .hero-lead { max-width:330px; font-size:17px; }
  .hero-cta { flex-direction:column; gap:10px; margin-top:27px; }
  .button { min-height:50px; }
  .hero-glow--fig { width:94vw; left:-34vw; top:15%; }
  .hero-glow--honey { width:78vw; right:-32vw; bottom:8%; }
  .hero-orbit--one { width:120vw; height:120vw; left:-10%; top:22%; }
  .hero-orbit--two { width:130vw; height:72vw; left:-16%; top:44%; }
  .hero-scroll { bottom:17px; }
  .manifesto { padding-top:88px; }
  .display-heading { font-size:clamp(49px,14vw,74px); }
  .body-large { font-size:21px; margin-top:30px; }
  .editorial-strip { grid-template-columns:1fr 1fr; row-gap:18px; margin-top:70px; }
  .product-story { min-height:175svh; }
  .story-sticky { padding-top:76px; align-content:start; }
  .story-visual { min-height:46svh; }
  .jar { width:min(58vw,250px); }
  .jar-lid { height:31px; }
  .jar-glass { height:260px; border-radius:29px 29px 40px 40px; }
  .jar-glass span { font-size:15px; padding:28px 8px; }
  .ingredient--fig-one { width:95px; height:84px; }
  .ingredient--fig-two { width:75px; height:68px; }
  .story-copy .kicker { margin-bottom:12px; }
  .story-copy h2 { font-size:clamp(42px,12.5vw,62px); }
  .story-copy > p:not(.section-index):not(.kicker) { font-size:14px; line-height:1.6; }
  .product-buy-row { align-items:flex-end; }
  .product-buy-row .button { padding-inline:18px; font-size:10px; }
  .collection-grid { grid-template-columns:1fr; }
  .collection-card { min-height:290px; }
  .section-heading-row { margin-bottom:44px; }
  .territory { min-height:100svh; }
  .territory-copy { width:calc(100vw - 44px); }
  .territory-copy h2 { font-size:clamp(51px,14vw,74px); }
  .territory-copy > p:last-child { margin-left:0; }
  .territory-sun { width:68vw; right:-8%; top:14%; }
  .pro { padding-inline:22px; }
  .pro-intro h2 { font-size:clamp(46px,13vw,66px); }
  .field-grid { grid-template-columns:1fr; gap:0; }
  .form-footer { align-items:flex-start; flex-direction:column; }
  .form-footer .button { width:100%; }
  .closing-cta { padding-inline:20px; }
  .site-footer { grid-template-columns:1fr; gap:28px; }
  .site-footer > p { grid-column:auto; }
  .site-footer nav { gap:14px 18px; }
  .cart-panel { padding:22px 18px calc(22px + env(safe-area-inset-bottom)); }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto; }
  *, *::before, *::after { animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; scroll-behavior:auto !important; }
  .hero-media { transform:none !important; }
}
