:root{--ink:#0d1710;--paper:#eeeddf;--moss:#a7b189;--line:rgba(240,238,219,.32)}
*{box-sizing:border-box}html{scroll-behavior:smooth}html,body{margin:0;background:var(--ink);min-height:100%}body{color:var(--paper);font-family:"DM Sans",sans-serif;overflow-x:hidden}.experience{height:200svh;position:relative;overflow:hidden;isolation:isolate;background:var(--ink)}
.opening-film,.closing-film{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.opening-film{z-index:0;height:100svh;filter:saturate(.64) contrast(1.08) brightness(.66);transform:scale(1.06);animation:drift 18s ease-in-out infinite alternate}.vignette{position:absolute;z-index:0;inset:0 auto auto;height:100svh;width:100%;background:linear-gradient(90deg,rgba(4,13,7,.7),rgba(4,13,7,.1) 68%),linear-gradient(0deg,rgba(4,13,7,.67),transparent 50%),radial-gradient(ellipse at 70% 30%,transparent 22%,rgba(3,10,6,.23) 100%);pointer-events:none}.noise{position:absolute;z-index:1;inset:0 0 auto;height:100svh;pointer-events:none;opacity:.08;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' 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)'/%3E%3C/svg%3E")}.aurora{position:absolute;z-index:1;width:45vw;height:45vw;border-radius:50%;filter:blur(80px);opacity:.12;transition:transform .35s ease-out}.aurora-one{top:-20vw;left:-18vw;background:#b4cc89}.aurora-two{right:-15vw;bottom:55svh;background:#27552a}
.topbar,footer{position:absolute;z-index:4;left:4.5vw;right:4.5vw;display:flex;align-items:center;justify-content:space-between}.topbar{top:28px;animation:arrive .8s both}.brand{display:flex;align-items:center;gap:10px;color:var(--paper);text-decoration:none}.brand span{display:grid;place-items:center;width:27px;height:27px;border:1px solid var(--line);border-radius:50%;font:600 13px/1 "Playfair Display",serif}.brand b{font:500 11px/1 "DM Mono",monospace;letter-spacing:.17em;text-transform:uppercase}.status,.footer-label,.copyright,.scroll-hint,.intro,.closing-kicker,.location{font:500 10px/1.2 "DM Mono",monospace;letter-spacing:.16em;text-transform:uppercase}.status{display:flex;gap:8px;align-items:center;color:rgba(238,237,223,.76)}.status i{width:6px;height:6px;border-radius:50%;background:#c2d590;box-shadow:0 0 16px #c2d590}.menu-button{border:0;background:none;color:var(--paper);display:flex;gap:5px;align-items:center;font:500 10px/1 "DM Mono",monospace;letter-spacing:.14em;text-transform:uppercase;cursor:pointer}.menu-button span{width:18px;height:1px;background:currentColor}.menu-button span:nth-child(2){width:9px}.site-menu{position:fixed;z-index:10;inset:0 0 0 auto;width:min(440px,100%);padding:29px 4.5vw;background:#e7e6d8;color:#152016;transform:translateX(101%);transition:transform .55s cubic-bezier(.77,0,.18,1);display:flex;flex-direction:column}.site-menu.open{transform:none}.menu-close{align-self:flex-end;border:0;background:none;color:inherit;font:300 38px/1 serif;cursor:pointer}.menu-label{margin:34px 0 0;font:500 10px "DM Mono",monospace;letter-spacing:.14em;text-transform:uppercase;opacity:.6}.site-menu nav{margin:auto 0}.site-menu nav a{border-bottom:1px solid rgba(21,32,22,.2);color:inherit;text-decoration:none;display:flex;justify-content:space-between;padding:19px 0;font:500 clamp(25px,4vw,44px)/1 "Playfair Display",serif}.site-menu nav b{font:500 10px "DM Mono",monospace;letter-spacing:.1em}.menu-foot{font-size:12px;line-height:1.6;opacity:.65}
.hero{position:absolute;z-index:2;inset:0;display:flex;align-items:center;transform-style:preserve-3d;transition:transform .35s ease-out;animation:arrive 1s .1s both}.glass-panel{position:relative;width:min(57vw,745px);min-height:min(68vh,640px);padding:clamp(29px,6vw,88px);display:flex;flex-direction:column;justify-content:center;overflow:hidden;border:1px solid rgba(245,244,227,.23);border-left:0;border-radius:0 22px 22px 0;background:linear-gradient(110deg,rgba(18,32,18,.65),rgba(33,52,28,.22));box-shadow:18px 20px 90px rgba(0,0,0,.22);backdrop-filter:blur(9px)}.glass-panel:before{content:"";position:absolute;inset:0;background:linear-gradient(128deg,rgba(255,255,255,.14),transparent 27%,transparent 70%,rgba(180,202,137,.12));pointer-events:none}.intro{position:relative;margin:0 0 28px;color:#d8ddc2}.intro span{display:inline-block;width:35px;height:1px;margin:0 12px 3px 0;background:currentColor}.hero h1{position:relative;margin:0;font:500 clamp(58px,9.5vw,145px)/.79 "Playfair Display",serif;letter-spacing:-.075em;color:#f1f0e5}.word{display:block}.word em{font-weight:500}.word-soon{margin-left:.38em;font-style:italic;color:#bbc99b}.panel-copy{position:relative;width:min(300px,100%);margin-top:clamp(38px,7vh,85px)}.panel-copy p{margin:0;font-size:13px;line-height:1.55;color:rgba(242,241,228,.86)}.enter-closing,.collection-link{display:inline-flex;gap:16px;align-items:center;margin-top:26px;color:inherit;text-decoration:none;font:500 10px/1 "DM Mono",monospace;letter-spacing:.14em;text-transform:uppercase}.enter-closing b,.collection-link b{font:400 21px/1 "DM Sans",sans-serif;transition:transform .25s ease}.enter-closing:hover b,.collection-link:hover b{transform:translate(5px,2px)}.side-title{position:absolute;right:1.4vw;top:50%;writing-mode:vertical-rl;transform:translateY(-50%) rotate(180deg);font:500 clamp(22px,3.2vw,48px)/1 "Playfair Display",serif;letter-spacing:.11em;color:rgba(238,237,223,.72)}.scroll-hint{position:absolute;z-index:4;bottom:85px;left:4.5vw;display:flex;align-items:center;gap:10px;color:rgba(238,237,223,.74)}.scroll-hint span{display:block;width:34px;height:1px;background:currentColor}footer{z-index:4;bottom:23px;padding-top:15px;border-top:1px solid var(--line)}footer>div{display:flex;gap:18px;align-items:center}.footer-label,.copyright{color:rgba(238,237,223,.57)}footer a{color:var(--paper);text-decoration:none;font-size:14px}
.closing{position:absolute;z-index:6;inset:100svh 0 auto;height:100svh;padding:clamp(28px,5vw,76px);overflow:hidden;display:flex;align-items:center}.closing-film{filter:saturate(.7) contrast(1.06) brightness(.76)}.closing-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,14,8,.78),rgba(5,14,8,.1) 75%),linear-gradient(0deg,rgba(5,14,8,.72),transparent 65%)}.closing-content{position:relative;width:min(900px,100%);text-shadow:0 4px 25px rgba(0,0,0,.25)}.closing-kicker{margin:0 0 23px;color:#dae1c4}.closing h2{margin:0;font:500 clamp(64px,11vw,165px)/.7 "Playfair Display",serif;letter-spacing:-.08em}.closing h2 i{color:#c1ce9f}.closing-bottom{display:flex;align-items:flex-start;gap:clamp(40px,10vw,150px);margin-top:clamp(45px,10vh,105px)}.location{margin:8px 0 0;white-space:nowrap}.project-note{display:flex;gap:17px;max-width:360px}.project-note .line{flex:0 0 42px;height:1px;margin-top:8px;background:#dce3bf}.project-note p{margin:0;font-size:13px;line-height:1.55}.return{position:absolute;z-index:1;top:28px;right:4.5vw;display:grid;place-items:center;width:40px;height:40px;border:1px solid rgba(238,237,223,.6);border-radius:50%;color:var(--paper);text-decoration:none}.collection-link{position:absolute;z-index:2;right:4.5vw;bottom:29px}
@keyframes arrive{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@keyframes drift{from{transform:scale(1.06) translate(-.8%,0)}to{transform:scale(1.13) translate(.9%,-.7%)}}
@media(max-width:650px){.topbar,footer{left:22px;right:22px}.topbar{top:20px}.status{display:none}.glass-panel{width:calc(100vw - 44px);min-height:58vh;padding:31px 26px;border-radius:0 16px 16px 0}.hero h1{font-size:17.5vw}.side-title{right:2px;font-size:23px}.scroll-hint{display:none}footer{bottom:19px}footer>div{display:block}.footer-label{display:block;margin-bottom:7px}.copyright{font-size:8px}.closing{padding:28px}.closing-bottom{display:block;margin-top:55px}.location{margin-bottom:32px}.collection-link{left:28px;right:auto;bottom:27px}.return{top:20px;right:22px}.site-menu{padding:22px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.opening-film{animation:none}.hero,.aurora{transition:none}}

/* Keep the opening statement comfortably inside the panel at every viewport height. */
.hero{align-items:flex-start;padding-top:clamp(110px,15svh,155px)}
.glass-panel{min-height:min(61vh,580px);padding:clamp(26px,5vw,64px);overflow:visible}
.intro{margin-bottom:22px}.hero h1{font-size:clamp(52px,8vw,118px);line-height:.88;letter-spacing:-.07em}.word-soon{margin-left:.24em}.panel-copy{margin-top:clamp(28px,5vh,60px)}
.closing h2 span{display:block;margin-top:20px;font:500 clamp(16px,2.3vw,32px)/1.05 "DM Sans",sans-serif;letter-spacing:.08em;text-transform:uppercase;color:#dbe2c6}
@media(max-width:650px){.hero{padding-top:112px}.glass-panel{min-height:52vh;padding:28px 26px}.hero h1{font-size:16vw;line-height:.9}.panel-copy{margin-top:28px}.closing h2{font-size:15vw}.closing h2 span{font-size:14px;margin-top:17px}}
