:root{color-scheme:dark;--ink:#09121a;--paper:#f5eddd;--muted:#bac1c4;--gold:#efbb77;--line:#ab95704d;--pad:clamp(22px,6vw,116px);--ease:cubic-bezier(.21,.67,.2,1);font:16px/1.55 system-ui,sans-serif;background:var(--ink);color:var(--paper)}*{box-sizing:border-box}body,figure,h1,h2,p{margin:0}body{overflow-x:clip}a{color:inherit;text-decoration:none}button,summary{font:inherit;cursor:pointer}button{color:inherit;background:transparent;border:0}button:active,.button:active{translate:0 1px}a:focus-visible,button:focus-visible,summary:focus-visible,video:focus-visible{outline:3px solid #ffca80;outline-offset:4px}a:hover,button:hover{color:var(--gold)}.skip{position:fixed;top:-100px;z-index:20;background:var(--ink);padding:1em}.skip:focus{top:0}header,footer,.dialogbar,.ledger,.intro,.actions,.kicker,.brand,nav,.status,.textlink,.button,.store{display:flex;align-items:center}header{position:absolute;z-index:4;top:0;left:0;right:0;padding:0 var(--pad);height:84px;background:linear-gradient(#071019e8,transparent);justify-content:space-between}header:after{content:'';position:absolute;bottom:0;inset-inline:var(--pad);height:1px;background:linear-gradient(90deg,var(--line),#fff2,var(--line))}.brand{font-size:12px;font-weight:700;letter-spacing:.2em;gap:12px}.mark{color:var(--gold)}nav{gap:clamp(20px,3vw,60px);font-size:13px}nav a{padding-block:11px}.status,.kicker,.ledger,.note,figcaption,.reels small,.print small,.store,.back,.dialogbar{font:11px/1.6 ui-monospace,monospace;text-transform:uppercase;letter-spacing:.13em}.status,.store{border:1px solid var(--line);padding:9px 14px;gap:10px;background:#07101966}.status i,.ledger i,.store i{width:6px;height:6px;background:var(--gold);display:inline-block;transform:rotate(45deg);box-shadow:0 0 9px #f5ac48}.hero{height:100svh;min-height:620px;max-height:1400px;position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:flex-end;background:#142536}.sky,.sky img,.hero:after,.mist,.rain,.frame{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.sky{z-index:-5;transform:translateY(var(--travel,0px)) scale(1.065)}.sky img{object-fit:cover;object-position:57% 50%;animation:drift 24s ease-in-out infinite alternate}.hero:after{content:'';z-index:-2;background:linear-gradient(0deg,#071018 0%,#0710199c 13%,transparent 68%),linear-gradient(90deg,#071019be 0%,#06101a65 43%,transparent 78%)}.mist{z-index:-4;background:radial-gradient(ellipse at 72% 53%,#f9bd703b,transparent 29%),linear-gradient(8deg,transparent 44%,#a2b8c31a 52%,transparent 57%);animation:breathe 9s ease-in-out infinite alternate}.rain{z-index:-3;inset:-20px;width:calc(100% + 40px);height:calc(100% + 40px);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='160'%3E%3Cpath d='m22 16-2 9m92 70-1 5m46 28-2 9' stroke='%23bacfdf' stroke-opacity='.22'/%3E%3C/svg%3E");animation:rain 1.9s linear infinite;opacity:.45}.frame{inset:109px var(--pad) 88px;width:auto;height:auto}.frame i{position:absolute;width:16px;height:16px;border:solid #dfc59e7a;border-width:1px 0 0 1px}.frame i:nth-child(2){right:0;rotate:90deg}.frame i:nth-child(3){bottom:0;rotate:-90deg}.frame i:last-child{right:0;bottom:0;rotate:180deg}.hero-copy{margin:0 var(--pad) clamp(124px,18vh,220px);padding-inline:clamp(12px,2vw,42px)}.kicker{gap:14px;color:var(--gold);font-size:10px;font-weight:600;letter-spacing:.23em}.kicker span{width:38px;height:1px;background:currentColor}.hero h1,.release h2{font:400 clamp(76px,10.45vw,200px)/1 Georgia,'Times New Roman',serif;letter-spacing:-.052em;text-shadow:0 3px 32px #121923}.hero h1{margin:16px 0 19px}.hero-copy>*,.release h2{animation:arrive 1s var(--ease) backwards}.hero-copy>h1{animation-delay:.12s}.hero-copy>p{animation-delay:.23s}.hero-copy>.actions{animation-delay:.33s}.hero p{font:clamp(23px,2.35vw,43px)/1.19 Georgia,serif}.hero em,h2 em{font-weight:400;color:#f4ce99}.actions{margin-top:32px;gap:25px}.button,.textlink{font-size:13px;font-weight:600;gap:12px;min-height:46px}.button{padding:10px 21px;color:#21180e;background:#eab879;border:1px solid #ffe0ad;transition:background .2s}.button:hover{color:#21180e;background:#ffdcaa}.button span{font-size:19px}.textlink{border-bottom:1px solid #d4bb966b}.textlink span{color:var(--gold)}.ledger{position:absolute;bottom:24px;inset-inline:var(--pad);border-top:1px solid var(--line);padding-top:9px;justify-content:space-between;font-size:10px}.ledger b{color:var(--gold);padding:0 8px}.ledger i{margin-right:8px}.ledger button{font:inherit;letter-spacing:inherit;text-transform:inherit;min-height:36px}.chapter{padding:clamp(65px,8vw,135px) var(--pad);max-width:2000px;margin:auto}.chapter h2,.document h1{font:400 clamp(44px,6.3vw,112px)/1.02 Georgia,serif;letter-spacing:-.05em}.intro{margin:24px 0 40px;justify-content:space-between;align-items:end;gap:30px}.intro p,.experience p,.release p,.document p{color:var(--muted);max-width:37ch;text-wrap:pretty}.panorama{position:relative;overflow:hidden;background:#111e29}.panorama img{display:block;width:100%;aspect-ratio:2.45;object-fit:cover;transform:scale(1.045) translateY(var(--depth,0px))}figcaption{display:flex;justify-content:space-between;gap:12px;padding:12px 0;background:var(--ink);position:relative;border-bottom:1px solid var(--line);color:var(--muted)}.adventure{background:#0e1b25;border-block:1px solid var(--line)}.screen{aspect-ratio:2.12;background:#04090d;border:1px solid var(--line);display:grid;place-items:center}.screen video{width:100%;height:100%;min-height:0;object-fit:contain}.reels,.prints{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.reels button{text-align:left;padding:17px 0;border-top:2px solid var(--line);transition:border-color .2s}.reels button[aria-pressed=true]{border-color:var(--gold)}.reels small,.print small{display:block;color:var(--gold);font-size:10px}.reels strong{font:24px/1.4 Georgia,serif}.note{color:var(--muted);font-size:10px}.print{min-width:0}.print img{width:100%;display:block;aspect-ratio:1.7;object-fit:cover;border:1px solid var(--line);transition:filter .35s}.print:hover img{filter:brightness(1.22)}.print span{display:block;position:relative;padding-top:12px;font:22px/1.55 Georgia,serif}.print b{position:absolute;right:0;color:var(--gold);font:18px system-ui}.experience{text-align:center;position:relative;border-top:1px solid var(--line);background:radial-gradient(ellipse at 50% 60%,#253240,transparent 60%)}.experience .kicker,.release .kicker{justify-content:center}.experience p,.release p{margin:20px auto}.resonance{position:relative;height:100px;width:180px;margin:25px auto 0;display:grid;place-items:center;color:var(--gold)}.resonance i{position:absolute;width:60px;height:60px;border:1px solid var(--line);border-radius:50%;animation:pulse 5s linear infinite}.resonance i:nth-child(2){animation-delay:-1.6s}.resonance i:nth-child(3){animation-delay:-3.3s}.release{text-align:center;padding:100px var(--pad);background:radial-gradient(ellipse at 50% 120%,#885726,#392d25 40%,#101820 78%);border-top:1px solid var(--line)}.release h2{margin-top:25px;font-size:clamp(50px,8vw,140px)}.store{display:inline-flex;margin-top:12px;border-color:#d9a768}.store i{margin-right:7px}footer{justify-content:space-between;gap:25px;padding:30px var(--pad);border-top:1px solid var(--line)}footer div{display:flex;gap:22px;flex-wrap:wrap;font-size:13px}dialog{background:#0c161f;color:var(--paper);border:1px solid var(--line);width:min(1100px,94vw);padding:12px;max-height:94svh}dialog::backdrop{background:#03080eec}dialog img{display:block;width:100%;height:min(66svh,680px);object-fit:contain}.dialogbar{justify-content:space-between;gap:12px;color:var(--gold)}.dialogbar button{min-height:44px}.document{max-width:850px;padding:150px var(--pad) 90px;margin:auto;box-sizing:content-box}.back{display:inline-block;margin-bottom:45px}.document h1{margin:22px 0 50px}.document h2{font:32px/1.2 Georgia,serif;margin:38px 0 12px}.document p{max-width:72ch;margin:12px 0}.document p a{text-decoration:underline;color:var(--gold);overflow-wrap:anywhere}details{border-block-end:1px solid var(--line);padding:14px 0}summary{padding:6px 0}.reveal{animation:arrive .8s var(--ease) both}.screen.switching{animation:film .4s var(--ease)}@keyframes film{from{opacity:.55}}@keyframes arrive{from{opacity:0;transform:translateY(15px)}}@keyframes drift{to{transform:scale(1.045) translate(-.4%,.3%)}}@keyframes breathe{from{opacity:.35}to{opacity:.95;transform:translateX(1%)}}@keyframes rain{to{background-position:-32px 160px}}@keyframes pulse{to{transform:scale(2);opacity:0}}
@media(min-width:1600px){.hero-copy{margin-bottom:17vh}.chapter .intro p{font-size:19px}}
@media(max-width:800px){.hero{min-height:570px}.hero-copy{margin-bottom:140px}.intro{align-items:start;flex-direction:column;gap:16px}.intro p{max-width:54ch}.prints,.reels{gap:12px}.print span,.reels strong{font-size:18px}}
@media(max-width:600px){header{height:88px;align-items:flex-start;padding-top:13px}.brand{font-size:10px;gap:8px}.mark{height:27px;width:24px}nav{position:absolute;left:var(--pad);right:var(--pad);bottom:3px;justify-content:space-between;font-size:12px}.status{font-size:9px;padding:4px 8px}.hero{min-height:590px}.hero-copy{padding:0;margin-bottom:max(108px,15svh)}.hero h1{font-size:clamp(43px,12.5vw,75px);letter-spacing:-.038em;margin:13px 0 18px}.hero p{font-size:25px}.sky img{object-position:57% 50%}.hero:after{background:linear-gradient(0deg,#071018 1%,#06101ae8 16%,#06101a9a 39%,transparent 70%)}.frame{inset:109px var(--pad) 76px}.frame i:nth-child(n+3){display:none}.actions{gap:16px;margin-top:24px}.button{padding:9px 13px}.actions a{font-size:12px}.ledger{font-size:9px;bottom:15px}.panorama img{aspect-ratio:1.35;object-position:62%}figcaption{font-size:8px}.chapter h2{font-size:48px}.screen{aspect-ratio:1.55}.reels{gap:9px}.reels small{font-size:8px;letter-spacing:.04em}.reels strong{font-size:16px}.prints{grid-template-columns:1fr;gap:27px}.print img{aspect-ratio:2.05}.print span{font-size:21px}.release{padding-block:75px}footer{align-items:start;flex-direction:column}footer div{gap:16px}.document{padding-top:115px}}
[data-paused] *,[data-paused] *::after{animation:none!important;transition:none!important}.sky,.panorama img{transition:none}[data-paused] .sky,[data-paused] .panorama img{transform:none}@media(prefers-reduced-motion:reduce){*,*::after{animation:none!important;transition:none!important}.sky,.panorama img{transform:none}}
.offstage .sky img,.offstage .rain,.offstage .mist{animation-play-state:paused}

/* Scene travel is an enhancement. With no JS, the approved page flows normally. */
.night-cut,.first-light,.first-caption{display:none}
@media (prefers-reduced-motion:no-preference){
  html[data-cinema]{scroll-behavior:smooth}
  [data-cinema] .hero .sky{
    transform-origin:61% 54%;
    transform:translate3d(calc(-1.6% * var(--sail,0)),calc(2% * var(--sail,0)),0)
              scale(calc(1.065 + .17 * var(--sail,0)));
  }
  [data-cinema] .hero .mist{translate:calc(-4% * var(--sail,0)) calc(-2% * var(--sail,0));scale:1.09}
  [data-cinema] .hero .rain{translate:calc(16px * var(--sail,0)) calc(18px * var(--sail,0));opacity:calc(.45 - .25 * var(--sail,0))}
  [data-cinema] .night-cut,[data-cinema] .first-light{
    display:block;position:absolute;inset:0;pointer-events:none;z-index:-1;
  }
  [data-cinema] .night-cut{background:#050d13;opacity:var(--night,0)}
  [data-cinema] .hero-copy{transform:translateY(calc(-44px * var(--leave,0)));opacity:calc(1 - var(--leave,0))}
  [data-cinema] .hero-copy:focus-within{opacity:1;background:linear-gradient(90deg,#09121ae6,transparent)}
  [data-cinema] .past-title .hero-copy:not(:focus-within){visibility:hidden}
  [data-cinema] .ledger>span{opacity:calc(1 - var(--beam,0))}
  [data-cinema] .intro h2,[data-cinema] .intro p{
    translate:0 calc(22px * var(--unveil,0));opacity:calc(1 - .43 * var(--unveil,0))
  }
  [data-cinema] .intro p{translate:0 calc(36px * var(--unveil,0))}
  [data-cinema] .panorama img{
    transform-origin:66% 52%;
    transform:scale(calc(1.12 - .075 * var(--pass,0))) translateY(calc(2% - 4% * var(--pass,0)));
  }
  [data-cinema] .screen:not(.playing):not(:focus-within){
    transform:scale(calc(1 - .055 * var(--iris,0)));
    clip-path:inset(0 calc(4% * var(--iris,0)));
  }
  [data-cinema] .print img{
    clip-path:inset(calc(5% * var(--unveil,0)) 0 0);
    translate:0 calc(12px * var(--unveil,0))
  }
  [data-cinema] .experience .resonance{scale:calc(.85 + .35 * var(--pass,0))}
  [data-cinema] .release{position:relative;isolation:isolate}
  [data-cinema] .release:before{content:'';position:absolute;inset:0;z-index:-1;background:#09121a;opacity:calc(.85 - .85 * var(--pass,0));pointer-events:none}
  @media(min-height:620px) and (max-height:1400px){
    [data-cinema] .harbour-track{background:var(--ink);display:flow-root}
    /* Put the runway inside the sticky containing block's content box. */
    [data-cinema] .harbour-track:after{content:'';display:block;height:76svh}
    [data-cinema] .hero{position:sticky;top:0}
    [data-cinema] .first-light{
      background:linear-gradient(0deg,#071018 0%,transparent 28%,#07101822 72%,#07101899),url("media/street-study.webp") 65% 50%/cover;
      opacity:var(--beam,0);transform:scale(calc(1.10 - .10 * var(--beam,0)));transform-origin:70% 54%;
    }
    [data-cinema] .first-caption{display:flex;align-items:center;gap:12px;position:absolute;left:var(--pad);bottom:20%;color:var(--paper);text-shadow:0 1px 8px #000;font:11px/1.6 ui-monospace,monospace;letter-spacing:.16em;text-transform:uppercase;opacity:var(--beam,0);translate:0 calc(14px - 14px * var(--beam,0))}
    [data-cinema] .first-caption span{width:32px;height:1px;background:var(--gold)}
    [data-cinema] .first-caption b{color:var(--gold)}
    [data-cinema] .hero:has(.hero-copy:focus-within) .first-caption{visibility:hidden}
    @media(pointer:coarse),(max-width:800px){[data-cinema] .harbour-track:after{height:45svh}}
  }
}
