:root{--color-paper:oklch(9% .01 80);--color-paper-2:oklch(13% .012 80);--color-paper-3:oklch(17% .013 80);--color-rule:oklch(28% .01 80);--color-rule-2:oklch(22% .009 80);--color-neutral:oklch(50% .01 80);--color-muted:oklch(66% .01 80);--color-ink-2:oklch(85% .01 82);--color-ink:oklch(93% .01 82);--color-accent:oklch(72% .118 80);--color-accent-bright:oklch(81% .128 87);--color-accent-deep:oklch(60% .083 79);--color-focus:oklch(78% .15 80);--color-accent-ink:var(--color-paper);--font-display:"Cormorant Garamond", "Palatino Linotype", "Iowan Old Style", serif;--font-body:"Geist", ui-sans-serif, system-ui, sans-serif;--font-mono:"Geist Mono", ui-monospace, monospace;--tracking-display:.08em;--tracking-label:.16em;--tracking-body:0;--text-xs:.75rem;--text-sm:.875rem;--text-base:1.0625rem;--text-lg:1.33rem;--text-xl:1.66rem;--text-2xl:2.07rem;--text-3xl:2.59rem;--text-4xl:3.24rem;--text-display-s:clamp(2.5rem, 4vw + 1rem, 4rem);--text-display:clamp(3rem, 6vw + 1rem, 6rem);--measure:66ch;--weight-body:350;--weight-body-em:500;--weight-display:500;--weight-display-strong:600;--space-3xs:.25rem;--space-2xs:.5rem;--space-xs:.75rem;--space-sm:1rem;--space-md:1.5rem;--space-lg:2rem;--space-xl:3rem;--space-2xl:4rem;--space-3xl:6rem;--space-4xl:8rem;--space-5xl:12rem;--bp-island:40rem;--bp-wide:64rem;--shadow-none:none;--shadow-lift:0 1px 2px oklch(0% 0 0/.4);--shadow-float:0 8px 24px oklch(0% 0 0/.5);--rule-hairline:1px;--rule-gold:1px;--radius-none:0;--radius-sm:2px;--radius-round:50%;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in:cubic-bezier(.7, 0, .84, 0);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--dur-micro:.12s;--dur-short:.22s;--dur-long:.42s;--dur-enter:.8s;--dur-exit:.6s}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.15s!important;animation-duration:.15s!important;animation-iteration-count:1!important}}.gate{z-index:10;padding:var(--space-lg);background:var(--color-paper);color:var(--color-ink);text-align:center;place-items:safe center;display:grid;position:fixed;inset:0;overflow-y:auto}html:has(.gate:not([hidden])){overflow:hidden}.gate[hidden],.gate__panel[hidden],.gate__denied[hidden]{display:none}.gate__panel,.gate__denied{max-width:32ch}.gate__logo{aspect-ratio:1;width:min(42vw,168px);height:auto;margin:0 auto var(--space-lg);display:block}.gate__ask{margin:0 0 var(--space-lg);font-size:var(--text-base);color:var(--color-ink-2);line-height:1.5}.gate__actions{gap:var(--space-sm);display:grid}.gate__btn{min-height:48px;padding:var(--space-xs) var(--space-lg);border:var(--rule-hairline) solid var(--color-neutral);border-radius:var(--radius-sm);background:var(--color-paper-3);color:var(--color-ink);font-family:var(--font-body);font-size:var(--text-base);letter-spacing:.01em;white-space:nowrap;cursor:pointer}.gate__btn:hover{border-color:var(--color-accent-deep);color:var(--color-accent-bright)}.gate__btn:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.gate__denied{font-size:var(--text-base);color:var(--color-ink-2);line-height:1.6}.gate__legal{margin:var(--space-lg) 0 0;font-size:var(--text-sm);color:var(--color-muted)}.sections{z-index:6;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;--sections-step:clamp(1.5rem, calc((100svh - 8rem) / var(--sections-count,10)), 2.75rem);transition:opacity var(--dur-long) var(--ease-out), visibility 0s linear var(--dur-long);position:fixed;top:50%;right:0;transform:translateY(-50%)}.sections__list{margin:0;padding:0;list-style:none}.sections__item{width:2.75rem;height:var(--sections-step);padding-right:var(--space-2xs);-webkit-tap-highlight-color:transparent;justify-content:flex-end;align-items:center;text-decoration:none;display:flex;position:relative}.sections__item:focus-visible{outline:2px solid var(--color-focus);outline-offset:-2px;border-radius:var(--radius-sm)}.sections__mark{place-items:center;width:1.25rem;height:1.25rem;display:grid}.sections__mark>*{grid-area:1/1}.sections__dot{border-radius:var(--radius-round);background:var(--color-ink-2);opacity:.45;width:6px;height:6px;transition:width var(--dur-short) var(--ease-out), height var(--dur-short) var(--ease-out), opacity var(--dur-short) var(--ease-out), background-color var(--dur-short) var(--ease-out)}.sections__item[aria-current] .sections__dot{opacity:1;background:var(--color-accent);width:10px;height:10px}.sections__seal{aspect-ratio:1;opacity:.7;width:1rem;height:auto;transition:transform var(--dur-short) var(--ease-out), opacity var(--dur-short) var(--ease-out);transform:rotate(-8deg)}.sections__item:has(.sections__seal) .sections__dot{display:none}.sections__item[aria-current] .sections__seal{opacity:1;transform:rotate(-8deg)scale(1.35)}.sections__label{right:calc(100% - var(--space-xs));align-items:baseline;gap:var(--space-2xs);padding-right:var(--space-xs);font-family:var(--font-body);font-size:var(--text-sm);white-space:nowrap;color:var(--color-ink-2);opacity:0;transform:translate(var(--space-xs), -50%);transform-origin:100%;pointer-events:none;transition:opacity var(--dur-short) var(--ease-out), transform var(--dur-short) var(--ease-out), color var(--dur-short) var(--ease-out);line-height:1.2;display:flex;position:absolute;top:50%}.sections__name{text-overflow:ellipsis;max-width:calc(100vw - 6rem);overflow:hidden}.sections__kicker{font-size:var(--text-xs);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-accent)}html[data-scrubbing] .sections__label{opacity:.55;transform:translateY(-50%)}html[data-scrubbing] .sections__item[aria-current] .sections__label{opacity:.8}html[data-scrubbing] .sections__item[data-preview] .sections__label{opacity:1;color:var(--color-ink);transform:translateY(-50%)scale(1.12)}html[data-scrubbing] .sections__item[data-preview] .sections__dot{opacity:1;background:var(--color-accent-bright);width:10px;height:10px}html[data-scrubbing] .sections__item[data-preview] .sections__seal{opacity:1;transform:rotate(-8deg)scale(1.5)}html[data-scrubbing] .sections__item[aria-current]:not([data-preview]) .sections__dot{background:var(--color-accent-deep)}.sections-dim{z-index:5;background:color-mix(in srgb, var(--color-paper) 90%, transparent);opacity:0;pointer-events:none;transition:opacity var(--dur-short) var(--ease-out);position:fixed;inset:0}html[data-scrubbing] .sections-dim{opacity:1}html[data-scrubbing],html[data-scrubbing] *{-webkit-user-select:none;user-select:none}@media (prefers-reduced-motion:reduce){.sections,.sections__dot,.sections__seal,.sections__label,.sections-dim{transition:none}html[data-scrubbing] .sections__item[data-preview] .sections__label{transform:translateY(-50%)}}[data-nav-target]:focus{outline:none}:root{--journey-column:min(34rem, 42vw);--journey-emblem:3.5rem;--journey-emblem-lead:clamp(6.5rem, 34vw, 10rem);--journey-seal:4.25rem;--journey-body-phone:clamp(.9375rem, 4.1vw, 1rem);--journey-gutter:max(var(--space-sm), 5vw);--journey-gutter-end:calc(var(--journey-gutter) + var(--space-sm));--journey-nav-seal:2.25rem;--journey-gap:var(--space-md);--journey-pic:calc((100vw - var(--journey-gutter) - var(--journey-gutter-end) - 2 * var(--space-sm)) * .4);--journey-slot-max:calc(var(--journey-pic) * 2.36)}*,:before,:after{box-sizing:border-box}html,body{margin:0;padding:0;overflow-x:clip}html{background:var(--color-paper);color:var(--color-ink);color-scheme:dark;scroll-behavior:auto;overscroll-behavior:none}body{font-family:var(--font-body);font-size:var(--text-base);-webkit-font-smoothing:antialiased;line-height:1.6}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.bg{z-index:0;pointer-events:none;opacity:0;transition:opacity var(--dur-enter) var(--ease-in-out);position:fixed;inset:0}.bg.is-active{opacity:1}.backdrop{background-position:50%;background-size:cover;position:absolute;inset:0}.bg[data-load] .backdrop{background-image:var(--bg-p)}@media (orientation:landscape){.bg[data-load] .backdrop{background-image:var(--bg-l)}}.scrim{background:linear-gradient(to bottom, color-mix(in srgb, var(--color-paper) 28%, transparent) 0%, color-mix(in srgb, var(--color-paper) 20%, transparent) 42%, color-mix(in srgb, var(--color-paper) 48%, transparent) 78%, color-mix(in srgb, var(--color-paper) 68%, transparent) 100%);position:absolute;inset:0}.bg[data-text=bottom] .scrim{background:linear-gradient(to bottom, color-mix(in srgb, var(--color-paper) 20%, transparent) 0%, color-mix(in srgb, var(--color-paper) 20%, transparent) 36%, color-mix(in srgb, var(--color-paper) 74%, transparent) 54%, color-mix(in srgb, var(--color-paper) 90%, transparent) 100%)}.bg[data-text=top] .scrim{background:linear-gradient(to bottom, color-mix(in srgb, var(--color-paper) 88%, transparent) 0%, color-mix(in srgb, var(--color-paper) 80%, transparent) 46%, color-mix(in srgb, var(--color-paper) 30%, transparent) 64%, color-mix(in srgb, var(--color-paper) 15%, transparent) 100%)}@media (orientation:landscape){.bg[data-text=bottom] .scrim,.bg[data-text=top] .scrim{background:linear-gradient(to right, color-mix(in srgb, var(--color-paper) 88%, transparent) 0%, color-mix(in srgb, var(--color-paper) 72%, transparent) 40%, color-mix(in srgb, var(--color-paper) 15%, transparent) 62%, color-mix(in srgb, var(--color-paper) 10%, transparent) 100%)}}.stage{z-index:2;touch-action:pan-y;opacity:0;transition:opacity .5s var(--ease-out);position:fixed;inset:0}html[data-flask=ready] .stage{opacity:1}html[data-bottle-interactive] .stage{cursor:grab}html[data-bottle-interactive] .stage[data-dragging]{cursor:grabbing}.stage>canvas{display:block}.journey{z-index:3;pointer-events:none;position:relative}.journey :is(p,h1,h2,h3,li,a,button,img,small){pointer-events:auto}.scene{height:100svh;position:relative}.scroll-cue{left:50%;bottom:max(var(--space-xl), env(safe-area-inset-bottom,0px) + var(--space-lg));font-family:var(--font-body);font-size:var(--text-xs);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-muted);transition:opacity var(--dur-long) var(--ease-out);margin:0;position:absolute;transform:translate(-50%)}html:not([data-current-scene=opening]) .scroll-cue{opacity:0}.beat{gap:var(--journey-gap);padding:max(var(--space-lg), env(safe-area-inset-top,0px) + var(--space-md)) var(--journey-gutter) max(var(--space-xl), env(safe-area-inset-bottom,0px) + var(--space-lg));flex-direction:column;display:flex}.slot{flex:1 1 0;min-height:0}@media (orientation:landscape){:root{--journey-emblem:8rem;--journey-seal:6.5rem}.beat__emblem,.statement{margin-bottom:var(--space-md)}.beat,.beat:not([data-scene-kind=about]){padding:var(--space-3xl) var(--space-2xl);justify-content:center;gap:0}.beat>*{max-width:var(--journey-column)}.slot{display:none}}@media (orientation:landscape) and (width>=64rem){.beat,.beat:not([data-scene-kind=about]){padding-inline:var(--space-4xl)}}.beat__emblem{width:var(--journey-emblem);aspect-ratio:1;height:auto;margin:0 0 var(--space-sm);display:block}.lead{align-items:center;gap:var(--space-sm);flex:1 1 0;min-height:0;display:flex}.lead .slot{align-self:stretch}.lead .beat__emblem{width:var(--journey-emblem-lead);flex:none;margin:0}@media (orientation:landscape){.lead{flex:none}.lead .beat__emblem{width:var(--journey-emblem);margin-bottom:var(--space-md)}}.beat__seal{width:var(--journey-seal);aspect-ratio:1;height:auto;display:block;transform:rotate(-8deg)}.eyebrow{margin:0 0 var(--space-xs);font-family:var(--font-body);font-size:var(--text-xs);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-accent);font-weight:500}.statement{margin:0 0 var(--space-sm);font-family:var(--font-display);font-style:normal;font-weight:600;font-size:clamp(var(--text-lg), 6.6vw, var(--text-xl));letter-spacing:var(--tracking-display);text-transform:uppercase;color:var(--color-accent);overflow-wrap:anywhere;text-wrap:balance;min-width:0;line-height:1.15}@media (width>=40rem) and (height>=40rem){.statement{font-size:var(--text-3xl)}}.body{margin:0 0 var(--space-xs);max-width:var(--measure);font-size:var(--journey-body-phone);color:var(--color-ink-2);text-wrap:pretty;line-height:1.55}@media (width>=40rem){.body{font-size:var(--text-base);line-height:1.65}}.body:last-child{margin-bottom:0}.facts{gap:var(--space-2xs) var(--space-md);margin:var(--space-lg) 0 0;padding:var(--space-sm) 0 0;border-top:var(--rule-hairline) solid var(--color-rule);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.04em;color:var(--color-muted);flex-wrap:wrap;list-style:none;display:flex}.caption{margin:var(--space-sm) 0 0;font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.04em;color:var(--color-muted)}.legal{margin-top:var(--space-xl);padding-top:var(--space-sm);border-top:var(--rule-hairline) solid var(--color-rule);font-size:var(--text-xs);color:var(--color-muted)}.legal p{margin:0 0 var(--space-3xs)}.legal .warning{color:var(--color-ink-2);font-weight:500}.reveal{opacity:0;transition:opacity var(--dur-enter) var(--ease-out), transform var(--dur-enter) var(--ease-out);transform:translateY(12px)}.reveal.is-in,html:not([data-js]) .reveal{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.reveal{transition:opacity .15s linear;transform:none}.stage,.bg,.scroll-cue{transition:none}}.motion-permission{left:50%;bottom:calc(max(var(--space-xl), env(safe-area-inset-bottom,0px) + var(--space-lg)) + 3.5rem);z-index:4;min-height:44px;padding:var(--space-2xs) var(--space-md);border:var(--rule-hairline) solid var(--color-rule);border-radius:var(--radius-sm);background:color-mix(in oklch, var(--color-paper-2) 85%, transparent);color:var(--color-muted);font-family:var(--font-body);font-size:var(--text-sm);white-space:nowrap;cursor:pointer;position:fixed;transform:translate(-50%)}.motion-permission:hover{color:var(--color-ink-2);border-color:var(--color-accent-deep)}.motion-permission:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.motion-permission[hidden],html:not([data-bottle-interactive]) .motion-permission{display:none}.beat[data-layout]{padding:max(var(--space-lg), env(safe-area-inset-top,0px) + var(--space-md)) var(--journey-gutter) max(var(--space-lg), env(safe-area-inset-bottom,0px) + var(--space-md));display:block}@media (orientation:portrait){.beat,.beat[data-layout]{padding-right:var(--journey-gutter-end)}}.mag{column-gap:var(--space-sm);row-gap:var(--journey-gap);grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,2fr);align-content:center;height:100%;display:grid}.mag>*{min-width:0}.m-head{grid-area:head}.m-head:has(.beat__seal){grid-template-columns:var(--journey-seal) minmax(0, 1fr);column-gap:var(--space-sm);padding-block:var(--space-2xs);align-items:center;display:grid}.m-a{grid-area:a}.m-b{grid-area:b}.m-img{grid-area:img;place-items:center;margin:0;display:grid}.m-img img{width:105%;max-width:none;height:auto;display:block}.m-slot{grid-area:slot;min-height:0}.m-foot{align-items:flex-start;gap:var(--space-xs);flex-direction:column;grid-area:foot;display:flex}.mag .body,.mag .statement,.m-foot>*{margin:0}.note{padding-left:var(--space-sm);border-left:2px solid var(--color-accent-deep);font-size:var(--text-sm);color:var(--color-ink-2);margin:0;line-height:1.5}.more{align-items:center;gap:var(--space-2xs);min-height:44px;font-size:var(--text-sm);letter-spacing:var(--tracking-label);text-transform:uppercase;white-space:nowrap;color:var(--color-accent);border-bottom:var(--rule-hairline) solid var(--color-accent-deep);pointer-events:auto;font-weight:500;text-decoration:none;display:inline-flex}.more:hover{color:var(--color-accent-bright);border-bottom-color:var(--color-accent)}.more:focus-visible{outline:2px solid var(--color-focus);outline-offset:3px}@media (orientation:portrait){.beat[data-layout=notch-right] .mag{grid-template-rows:minmax(0, var(--journey-slot-max)) auto auto auto;grid-template-areas:"head head slot""a a a""b b b""foot foot foot"}.beat[data-layout=notch-right] .m-slot{position:relative;left:-3vw}.beat[data-layout=notch-left] .mag{grid-template-rows:minmax(0, var(--journey-slot-max)) auto auto auto;grid-template-areas:"slot head head""a a a""b b b""foot foot foot"}.beat[data-layout=wrap-left] .mag{grid-template-rows:auto auto minmax(0, var(--journey-slot-max)) auto;grid-template-areas:"head head head""a a a""slot b b""foot foot foot"}.beat[data-layout=wrap-right] .mag{grid-template-rows:auto auto minmax(0, var(--journey-slot-max)) auto;grid-template-areas:"head head head""a a a""b b slot""foot foot foot"}.beat[data-layout=stagger] .mag{grid-template-rows:auto auto minmax(0, var(--journey-slot-max)) auto;grid-template-areas:"head head head""a a img""slot b b""foot foot foot"}.beat[data-layout^=notch] .m-head,.beat[data-layout] .m-b,.beat[data-layout=stagger] .m-a{align-self:center}.beat[data-layout] .statement{font-size:clamp(var(--text-lg), 6.2vw, var(--text-xl))}}@media (orientation:landscape){.beat[data-layout]{padding:var(--space-3xl) var(--space-4xl);flex-direction:column;justify-content:center;display:flex}.mag{gap:var(--space-sm);height:auto;max-width:var(--journey-column);flex-direction:column;display:flex}.beat[data-layout=notch-left] .mag,.beat[data-layout=wrap-left] .mag,.beat[data-layout=stagger] .mag{margin-left:auto}.m-slot{display:none}.m-img{width:9rem}}.bg[data-text=full] .scrim{background:linear-gradient(to bottom, color-mix(in srgb, var(--color-paper) 80%, transparent) 0%, color-mix(in srgb, var(--color-paper) 70%, transparent) 50%, color-mix(in srgb, var(--color-paper) 80%, transparent) 100%)}@media (orientation:landscape){.bg[data-text=full][data-side=right] .scrim{background:linear-gradient(to left, color-mix(in srgb, var(--color-paper) 88%, transparent) 0%, color-mix(in srgb, var(--color-paper) 72%, transparent) 40%, color-mix(in srgb, var(--color-paper) 15%, transparent) 62%, color-mix(in srgb, var(--color-paper) 10%, transparent) 100%)}.bg[data-text=full][data-side=left] .scrim{background:linear-gradient(to right, color-mix(in srgb, var(--color-paper) 88%, transparent) 0%, color-mix(in srgb, var(--color-paper) 72%, transparent) 40%, color-mix(in srgb, var(--color-paper) 15%, transparent) 62%, color-mix(in srgb, var(--color-paper) 10%, transparent) 100%)}}.sections{opacity:0;visibility:hidden}html[data-journey=live] .sections{opacity:1;visibility:visible;transition-delay:0s}html[data-free-scroll] .scene{height:auto;min-height:100svh}html[data-free-scroll] .mag{height:auto}html[data-free-scroll]:not([data-current-scene=opening]) .stage{opacity:0}main:focus{outline:none}.credit{padding-top:var(--space-xs);background:linear-gradient(var(--color-accent-deep), var(--color-accent-deep)) center top / 2.5rem 1px no-repeat;font-size:var(--text-xs);letter-spacing:.05em;text-align:center;white-space:nowrap;color:var(--color-muted);margin:0}.beat>.credit{left:0;right:0;bottom:max(var(--space-sm), env(safe-area-inset-bottom,0px) + var(--space-2xs));position:absolute}
