:root{--font-display: "Cormorant Garamond", Georgia, serif;--font-sans: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--ink: #f6f2ea;--ink-dim: rgba(246, 242, 234, .62);--line: rgba(246, 242, 234, .18);--bg: #0d0c0b}body{background:var(--bg);color:var(--ink);font-family:var(--font-sans);font-weight:300;overflow-x:hidden}.loader{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-content:center;justify-items:center;gap:.9rem;background:#0d0c0b;transition:opacity 1s ease .15s,visibility 1s ease .15s}.loader.is-gone{opacity:0;visibility:hidden}.loader__mark{font-size:.7rem;color:var(--ink-dim);animation:pulse 2.2s ease-in-out infinite}.loader__text{font-family:var(--font-display);font-size:var(--step-2);letter-spacing:.32em;text-indent:.32em;color:var(--ink)}@keyframes pulse{0%,to{opacity:.25;transform:scale(1)}50%{opacity:1;transform:scale(1.5)}}.journey{height:900vh;position:relative}.stage{position:sticky;top:0;height:100vh;overflow:hidden}.frame{position:absolute;top:0;right:0;bottom:0;left:0;clip-path:inset(9vh 4vw 9vh 50vw round 16px);will-change:clip-path}.frame__canvas{display:block;width:100%;height:100%}.veil{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--bg);opacity:0;pointer-events:none}.overlay{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.overlay:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(100deg,rgba(0,0,0,.52) 0%,rgba(0,0,0,.24) 22%,transparent 48%),radial-gradient(ellipse 62% 46% at 0% 100%,rgba(0,0,0,.6),transparent 70%);pointer-events:none}.overlay a,.overlay button{pointer-events:auto}.lockup{position:absolute;left:4.5vw;top:3.5vh;width:min(38ch,42vw);transform-origin:0 0;will-change:transform;text-shadow:0 1px 30px rgba(0,0,0,.45)}.lockup__eyebrow{font-size:var(--step--1);letter-spacing:.28em;text-transform:uppercase;color:var(--ink-dim);margin-bottom:var(--space-s)}.lockup__title{font-family:var(--font-display);font-weight:300;font-size:var(--step-6);line-height:1.02;letter-spacing:-.015em;margin-bottom:var(--space-m)}.lockup__sub{font-size:var(--step-0);line-height:1.65;color:#f6f2eac7;max-width:34ch}.lockup__cta{display:inline-flex;align-items:center;gap:.6em;margin-top:var(--space-l);padding:.85em 1.6em;border:1px solid var(--line);border-radius:999px;color:var(--ink);text-decoration:none;font-size:var(--step--1);letter-spacing:.06em;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff0a;transition:background .4s ease,border-color .4s ease,opacity .4s ease}.lockup__cta:hover{background:#ffffff1f;border-color:#f6f2ea6b}.lockup__cta span{transition:transform .4s ease}.lockup__cta:hover span{transform:translate(4px)}.lockup.is-docked .lockup__sub{color:#f6f2ea99}.lockup.is-docked{text-shadow:0 1px 24px rgba(0,0,0,.8),0 0 60px rgba(0,0,0,.45)}.captions{position:absolute;left:4.5vw;bottom:12vh;width:min(40ch,34vw)}.caption{position:absolute;bottom:0;left:0;opacity:0;will-change:opacity,transform;text-shadow:0 1px 24px rgba(0,0,0,.7)}.caption__index{font-size:var(--step--1);letter-spacing:.26em;text-transform:uppercase;color:var(--ink-dim);margin-bottom:var(--space-xs)}.caption__text{font-family:var(--font-display);font-size:var(--step-3);line-height:1.25;font-weight:300}.chapters:before{content:"";position:absolute;top:-3vh;right:-3vw;bottom:-3vh;left:-6vw;background:radial-gradient(ellipse at 80% 50%,rgba(0,0,0,.55),transparent 72%);pointer-events:none}.chapters{position:absolute;right:3vw;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:1.05rem;align-items:flex-end}.chapter{display:flex;align-items:center;gap:.7rem;background:none;border:0;padding:0;cursor:pointer;font:inherit;font-size:var(--step--1);letter-spacing:.14em;text-transform:uppercase;color:#f6f2ea57;transition:color .45s ease;text-shadow:0 1px 18px rgba(0,0,0,.65)}.chapter span{display:block;width:24px;height:1px;background:currentColor;transition:width .45s cubic-bezier(.22,1,.36,1),background .45s ease}.chapter:hover{color:#f6f2eabf}.chapter.is-active{color:var(--ink)}.chapter.is-active span{width:48px}.hint{position:absolute;left:50%;bottom:4vh;transform:translate(-50%);font-size:var(--step--1);letter-spacing:.22em;text-transform:uppercase;color:var(--ink-dim);transition:opacity .6s ease;animation:float 3.4s ease-in-out infinite}@keyframes float{0%,to{transform:translate(-50%)}50%{transform:translate(-50%,6px)}}.bar{position:absolute;left:0;right:0;bottom:0;height:2px;background:#f6f2ea1a}.bar span{display:block;height:100%;background:linear-gradient(90deg,#d8a765,#f3e3c8);transform-origin:0 50%;transform:scaleX(0)}.outro{position:relative;z-index:2;background:#0d0c0b;padding-block:var(--space-3xl);border-top:1px solid rgba(246,242,234,.08)}.outro__eyebrow{font-size:var(--step--1);letter-spacing:.28em;text-transform:uppercase;color:var(--ink-dim);margin-bottom:var(--space-m)}.outro__title{font-family:var(--font-display);font-weight:300;font-size:var(--step-5);line-height:1.08;margin-bottom:var(--space-m);max-width:18ch}.outro__text{color:#f6f2ea9e;font-size:var(--step-0);line-height:1.7;max-width:48ch;margin-bottom:var(--space-2xl)}.specs{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--space-m);padding-block:var(--space-l);border-block:1px solid rgba(246,242,234,.1);margin-bottom:var(--space-2xl)}.specs dt{font-size:var(--step--1);letter-spacing:.18em;text-transform:uppercase;color:var(--ink-dim);margin-bottom:.5rem}.specs dd{font-family:var(--font-display);font-size:var(--step-2)}.outro__cta{display:inline-flex;align-items:center;gap:.6em;padding:1em 2em;border-radius:999px;background:var(--ink);color:#12100e;text-decoration:none;font-size:var(--step--1);letter-spacing:.08em;transition:transform .4s cubic-bezier(.22,1,.36,1)}.outro__cta:hover{transform:translateY(-3px)}.outro__cta span{transition:transform .4s ease}.outro__cta:hover span{transform:translate(4px)}.outro__back{display:block;margin-top:var(--space-2xl);color:var(--ink-dim);text-decoration:none;font-size:var(--step--1);letter-spacing:.1em}.outro__back:hover{color:var(--ink)}@media (max-width: 900px){.journey{height:700vh}.frame{clip-path:inset(50vh 5vw 6vh 5vw round 16px)}.lockup__cta{display:none}.hint{white-space:nowrap;font-size:.62rem;bottom:2.2vh}.lockup{width:min(34ch,88vw)}.lockup__title{font-size:var(--step-5)}.captions{width:84vw;bottom:14vh}.caption__text{font-size:var(--step-2)}.chapters{right:4vw;gap:.8rem}.chapter{font-size:.62rem}.chapter span{width:14px}.chapter.is-active span{width:26px}}@media (prefers-reduced-motion: reduce){.hint{animation:none}}
