/* The fixed scene lives outside all scrolling/transformed content. */
body{background:#dce8e6}main,footer{position:relative;z-index:2}.site-header{background:#f5f2e9db;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}
.scene-backdrop{position:fixed;top:80px;left:0;width:100%;height:calc(100svh - 80px);z-index:0;overflow:hidden;pointer-events:none;opacity:0;background:linear-gradient(115deg,#eef5f7,#b7d8ed)}
body[data-hero=landed] .scene-backdrop{opacity:1}.backdrop-product{position:absolute;inset:0;container-type:inline-size;transition:opacity 1100ms ease}.backdrop-product .camera-base,.backdrop-product>.forest-detail{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:fill}.backdrop-product>.bottle-motion{inset:0}.backdrop-table{position:absolute;inset:0;opacity:0;transition:opacity 1100ms ease}.backdrop-table img{width:100%;height:100%;object-fit:cover;object-position:center}.scene-backdrop.table-active .backdrop-table{opacity:1}.scene-backdrop.table-active .backdrop-product{opacity:0}
.leaf-shadows{position:absolute;inset:-6%;width:112%;height:112%;max-width:none;object-fit:cover;opacity:.45;mix-blend-mode:multiply;transform-origin:20% 0;animation:leaf-drift 15s ease-in-out infinite alternate;will-change:transform;filter:blur(1.5px)}
@keyframes leaf-drift{0%{transform:translate(-.6%,-.3%) rotate(-.8deg) scale(1.01)}50%{transform:translate(.7%,.5%) rotate(.5deg) scale(1.015)}100%{transform:translate(1.4%,-.5%) rotate(1.2deg) scale(1.02)}}
.hero .stage{max-height:none}.hero{background:transparent}.hero-shadow{position:absolute;inset:0;z-index:5;pointer-events:none;overflow:hidden}.hero .final .hero-copy{z-index:7}.hero .final{overflow:hidden}
/* Actual backdrop blur, with opaque-enough surfaces to keep photography from fighting text. */
main>.section-space,main>.estate{width:calc(100% - 12%);max-width:1360px;margin:clamp(70px,12vh,140px) auto;border:1px solid #fff9;border-radius:18px;background:#f5f2e9b8;backdrop-filter:blur(22px) saturate(.85);-webkit-backdrop-filter:blur(22px) saturate(.85);box-shadow:0 16px 70px #10271a12}
main>.section-space{padding:clamp(55px,7vw,105px) 7%}.opening{max-width:1100px!important}.opening .intro-paragraph{color:#485445}.estate{padding:12px;height:620px;overflow:hidden}.estate>img{border-radius:10px}.estate:after{inset:12px;border-radius:10px}.estate .photo-caption{bottom:35px}.signature-image{background:#e9ecdf80;border:1px solid #fff5;border-radius:6px}.signature-copy>p:not(.eyebrow){color:#485445}
main>.craft{background:#153629c9;border-color:#d8e4d32b;color:#f6f6e9;backdrop-filter:blur(25px) saturate(.8);-webkit-backdrop-filter:blur(25px) saturate(.8)}.craft-grid{gap:40px 6%}.craft-facts{margin-top:60px}.craft-title>p:last-child,.craft-grid figcaption p{color:#d2dacb}.craft-title h2{font-size:clamp(36px,4.3vw,65px)}
.table-story{min-height:90svh;width:100%;display:flex;align-items:center;padding:80px 8%;background:transparent;overflow:visible}.table-story>img{display:none}.table-story:after{display:none}.table-story>div{position:relative;top:auto;left:auto;max-width:600px;width:55%;padding:55px;background:#f7f3e4ad;border:1px solid #fff9;border-radius:18px;backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);box-shadow:0 16px 60px #30261112}.table-story h2{font-size:clamp(34px,3.5vw,54px)}
.collection-panel{background:#eaecdd60;border:1px solid #fff7}.collection-tabs{border-color:#7d8e6950}.honor-image{background:#e5e9da80;border-radius:8px}.faq{border-top:1px solid #fff9}.faq details{border-color:#76856855}.faq details p{color:#42503d}footer{background:#102f24df;backdrop-filter:blur(28px);-webkit-backdrop-filter:blur(28px)}.preview-note{opacity:.75}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){main>.section-space,main>.estate,.table-story>div{background:#f5f2e9ed}main>.craft{background:#153629f2}}
@media(max-width:1000px){main>.section-space,main>.estate{width:90%}.estate{height:500px}.signature{gap:6%}.signature-image{min-height:400px}.table-story>div{width:65%;padding:40px}}
@media(max-width:700px){.scene-backdrop{top:72px;height:calc(100svh - 72px)}.backdrop-product>.camera-base,.backdrop-product>.forest-detail,.backdrop-product>.bottle-motion{width:170%;height:430px;left:-70%;top:auto;bottom:0}.backdrop-product>.camera-base{mask-image:linear-gradient(transparent,#000 12%)}.backdrop-product>.bottle-motion>img{transform:none}.hero .stage{height:calc(100svh - 72px);min-height:620px}.backdrop-table img{object-position:65% center}main>.section-space,main>.estate{width:92%;margin:65px auto;border-radius:14px}main>.section-space{padding:48px 7%}.estate{height:410px;padding:8px}.estate:after{inset:8px}.signature-image{min-height:0}.signature{gap:28px}.section-space h2{font-size:33px}.signature-copy h2{font-size:31px}.craft-grid{gap:32px}.harvest{width:100%}.harvest img{height:320px}.press img{height:240px}.bottling{width:90%}.bottling img{height:200px}.craft-facts{gap:22px 10%}.craft-facts strong{font-size:43px}.craft-facts strong span{font-size:10px}.table-story{min-height:85svh;padding:60px 4%}.table-story>div{width:100%;max-width:none;padding:38px 8%;border-radius:14px}.table-story h2{font-size:34px}.collection-panel{padding:25px 6%}.collection-panel>img{height:220px}.journal-heading h2{font-size:30px}.journal-heading .text-link{gap:6px;font-size:9px}.honor-image{height:330px;padding:22px}.faq{gap:20px}.leaf-shadows{opacity:.35}}
@media(prefers-reduced-motion:reduce){.leaf-shadows{animation:none;will-change:auto}.backdrop-product,.backdrop-table{transition:none}}
@media(prefers-reduced-transparency:reduce){main>.section-space,main>.estate,.table-story>div{background:#f5f2e9f2}main>.craft{background:#153629f2}}
/* Once landed, render the scenery only in the fixed layer: no duplicate scrolling bottle. */
body[data-hero=landed] .hero .stage{background:transparent}
body[data-hero=landed] .hero .camera-world,body[data-hero=landed] .hero .stage>.bottle-motion,body[data-hero=landed] .hero .final>.camera-base,body[data-hero=landed] .hero .final>.forest-detail,body[data-hero=landed] .hero .final>.bottle-motion,body[data-hero=landed] .hero .hero-shadow{visibility:hidden}
@media(max-width:700px){.scene-backdrop{min-height:620px}}
/* Every scene layer uses one measured, aspect-preserving image canvas. */
.hero .stage{height:calc(100svh - 80px);min-height:0}.scene-backdrop{min-height:0}
.hero .camera-world,.hero .stage>.bottle-motion,.hero .final>.camera-base,.hero .final>.forest-detail,.hero .final>.bottle-motion,.backdrop-product>.camera-base,.backdrop-product>.forest-detail,.backdrop-product>.bottle-motion{width:var(--scene-w)!important;height:var(--scene-h)!important;left:var(--scene-x)!important;top:var(--scene-y)!important;right:auto!important;bottom:auto!important;max-width:none!important}
.hero-reset{position:absolute;right:4.5%;bottom:22px;z-index:9;background:#f5f2e9ab;backdrop-filter:blur(8px);border:1px solid #fff8;padding:8px 15px;border-radius:30px;font-size:11px;display:none}body[data-hero=landed] .hero-reset{display:block}
@media(max-width:700px){.hero .stage{height:calc(100svh - 72px);min-height:0}.scene-backdrop{min-height:0}.hero-reset{bottom:14px;right:7%;font-size:10px}.hero-copy,.intro-name{top:5%}}
/* Edge foliage is animated independently: bottle, pedestal and central landscape stay still. */
.living-foliage{position:absolute;width:var(--scene-w);height:var(--scene-h);max-width:none;left:var(--scene-x);top:var(--scene-y);object-fit:fill;pointer-events:none;z-index:4;mask-image:linear-gradient(90deg,#000 0%,#000 4%,transparent 14%);transform-origin:0 65%;animation:foliage-sway 7s ease-in-out infinite alternate;will-change:transform}
@keyframes foliage-sway{from{transform:translateX(-3px) rotate(-.6deg)}to{transform:translateX(5px) rotate(.8deg)}}
.leaf-shadows{opacity:.36;animation:leaf-drift-visible 10s ease-in-out infinite alternate;filter:blur(3px)}
@keyframes leaf-drift-visible{0%{transform:translate(-2%,.2%) rotate(-2deg) scale(1.04)}100%{transform:translate(2.5%,1%) rotate(2deg) scale(1.04)}}
.ambient-toggle{position:fixed;bottom:18px;right:20px;z-index:35;border:1px solid #fff9;background:#f5f2e9cf;backdrop-filter:blur(10px);border-radius:24px;font-size:11px;padding:8px 15px;color:#18382a;box-shadow:0 3px 15px #1232}
body.motion-paused .leaf-shadows,body.motion-paused .living-foliage{animation-play-state:paused}
@media(prefers-reduced-motion:reduce){.living-foliage,.leaf-shadows{animation:none}body.motion-enabled .living-foliage{animation:foliage-sway 7s ease-in-out infinite alternate}body.motion-enabled .leaf-shadows{animation:leaf-drift-visible 10s ease-in-out infinite alternate}}
@media(max-width:700px){.ambient-toggle{bottom:12px;right:12px}.hero-reset{bottom:58px}}
/* Blend the proportional photograph into the extra sky on tall viewports. */
.backdrop-product>.camera-base,.hero .final>.camera-base{mask-image:linear-gradient(transparent,#000 16%)}
.living-foliage{mask-image:linear-gradient(90deg,#000 0%,#000 4%,transparent 14%),linear-gradient(transparent,#000 16%);mask-composite:intersect}
/* Cast shadows onto the ground/table, not the empty sky. */
.scene-backdrop:not(.table-active)>.leaf-shadows,.hero-shadow .leaf-shadows{mask-image:linear-gradient(transparent 55%,#000 90%)}
