/* The opening is a photographic stage. Content beneath it stays ordinary HTML. */
.passage{position:absolute;inset:0;z-index:5;pointer-events:none;display:flex;justify-content:center;align-items:flex-end;padding-bottom:clamp(70px,17svh,190px);opacity:0}.passage[hidden]{display:none}
.passage-link{--ink-light:#eceae4;--ink-middle:#c3c0b8;--ink-shade:#92908a;position:relative;pointer-events:auto;display:flex;align-items:center;min-height:48px;font-size:11px;text-transform:uppercase;letter-spacing:.2em;padding:20px;color:#c3c0b8;transition:letter-spacing 1s var(--ease),transform 1s var(--ease),color 1s var(--ease)}
.passage-link::after{content:'';position:absolute;bottom:10px;left:calc(50% - 22px);width:44px;height:1px;pointer-events:none;background:linear-gradient(90deg,transparent,#d8d3c5,transparent);opacity:.28;transform:scaleX(.55);transition:opacity 1s var(--ease),transform 1s var(--ease)}
.passage-link:hover,.passage-link:focus-visible{letter-spacing:.215em;transform:translateY(2px);color:#f2f0e9}.passage-link:hover::after,.passage-link:focus-visible::after{opacity:.72;transform:scaleX(1)}.camera-static .passage{display:none!important}
.site-header{position:fixed;inset:0 0 auto;height:104px;z-index:20;display:flex;align-items:center;justify-content:space-between;padding-inline:var(--gutter);opacity:var(--header-opacity,1);background:transparent;pointer-events:auto}
/* Blur the passing content independently of the sharp navigation, with a feathered lower edge. */
.site-header::before{content:'';position:absolute;inset:0 0 -24px;z-index:-1;pointer-events:none;background:linear-gradient(180deg,rgba(12,14,13,.34),rgba(12,14,13,.23) 72%,rgba(12,14,13,.12));-webkit-backdrop-filter:blur(24px) saturate(130%);backdrop-filter:blur(24px) saturate(130%);-webkit-mask-image:linear-gradient(#000 0%,#000 68%,transparent 100%);mask-image:linear-gradient(#000 0%,#000 68%,transparent 100%);opacity:0;transition:opacity .6s var(--ease)}
.past-hero .site-header::before,.site-header:focus-within::before{opacity:1}
.site-header.quiet{pointer-events:none}.site-header:focus-within{opacity:1!important;pointer-events:auto}.site-header nav{display:flex;gap:35px}.site-header nav a{position:relative;display:grid;place-items:center;text-transform:uppercase;font-size:13px;letter-spacing:.12em;color:#ddd;padding:10px 0;min-width:44px;min-height:44px;transition:color .5s,transform .7s var(--ease)}.site-header nav a::after{content:'';position:absolute;bottom:8px;left:0;right:0;height:1px;background:#ddd;transform:scaleX(0);transform-origin:right;transition:transform .6s var(--ease)}.site-header nav a:hover::after,.site-header nav a:focus-visible::after{transform:scaleX(1);transform-origin:left}.site-header nav a:hover{transform:translateY(-1px);color:#fff}.brand{display:inline-flex;align-items:center;min-height:44px;font-size:17px;letter-spacing:-.025em}.past-hero .site-header{height:82px}
.experience{position:relative;height:100svh;min-height:580px;background:#050505}.hero-stage{height:100svh;min-height:580px;position:sticky;top:0;overflow:hidden;isolation:isolate;background:#050505}.camera-enabled .experience,.camera-pending .experience{height:480svh}.hero-light{position:absolute;inset:-4px;z-index:0;background:radial-gradient(ellipse 40% 65% at 50% 43%,#202020 0%,#101010 47%,#050505 93%);transform:translate(calc(var(--pointer-x,0px) * .3),calc(var(--pointer-y,0px) * .3));transition:transform 1.8s var(--ease)}
.hero-wordmark{position:absolute;z-index:1;top:20%;left:50%;transform:translateX(calc(-50% + var(--pointer-x,0px))) translateY(var(--pointer-y,0px));white-space:nowrap;font-size:20.3vw;line-height:.95;font-weight:500;letter-spacing:-.057em;color:#e3e3de;transition:transform 1.5s var(--ease);will-change:opacity}
.portrait-fallback{position:absolute;z-index:2;width:auto;max-width:none;height:98%;left:50%;top:7.5%;transform:translateX(-50%);filter:none;mask-image:linear-gradient(#000 88%,transparent 100%)}
.camera{position:absolute;inset:0;z-index:3;width:100%;height:100%;opacity:0;pointer-events:none;transform:translate(calc(var(--pointer-x,0px) * .35),calc(var(--pointer-y,0px) * .35));transition:transform 1.5s var(--ease)}.camera-ready .camera{opacity:1}.camera-ready .portrait-fallback{opacity:0}
.hero-role,.hero-location{position:absolute;z-index:4;top:61%;color:#c6c6c1;font-size:13px;line-height:1.7;letter-spacing:.10em}.hero-role{left:var(--gutter)}.hero-location{right:var(--gutter);text-align:right}.hero-scroll{position:absolute;z-index:4;bottom:25px;left:50%;transform:translateX(-50%);font-size:12px;letter-spacing:.02em;color:#9b9b96;gap:25px;white-space:nowrap}.hero-scroll:hover{transform:translateX(-50%) translateY(-1px)}.hero-scroll:focus-visible{opacity:1!important;pointer-events:auto!important}
.intro-shutter{position:absolute;inset:0;z-index:8;background:#050505;pointer-events:none;opacity:0}.intro-pending .intro-shutter,.intro-playing .intro-shutter{opacity:1}.intro-pending .site-header,.intro-pending .hero-wordmark,.intro-pending .hero-role,.intro-pending .hero-location,.intro-pending .hero-scroll{opacity:0}.skip-intro{position:fixed;right:var(--gutter);bottom:26px;z-index:30;border:0;background:#05050588;color:#b8b8b2;min-height:44px;padding:10px 2px;font-size:12px;cursor:pointer;letter-spacing:.04em}.skip-intro span{margin-left:20px}.skip-intro:hover{color:#fff}.skip-intro[hidden]{display:none}
@media(max-width:1050px) and (min-width:701px){.hero-role,.hero-location{font-size:12px;letter-spacing:.055em}.hero-wordmark{top:23%}}
@media(max-width:700px){.site-header{height:82px}.site-header nav{gap:25px}.site-header nav a{font-size:12px;padding:9px 0}.brand{font-size:16px}.experience,.hero-stage{min-height:540px}.camera-enabled .experience,.camera-pending .experience{height:380svh}.hero-wordmark{top:22%;font-size:21vw;letter-spacing:-.055em}.portrait-fallback{height:80%;top:18%}.hero-role,.hero-location{top:auto;bottom:86px;font-size:11px;letter-spacing:.055em;line-height:1.65}.hero-scroll{bottom:20px}.skip-intro{bottom:19px}.past-hero .site-header{height:76px}}
@media(prefers-reduced-motion:reduce){.camera-enabled .experience{height:100svh}.hero-wordmark{transform:translateX(-50%)}.hero-light,.camera{transform:none}.intro-shutter{display:none!important}.passage-link,.passage-link::after{transition:none}.passage-link:hover,.passage-link:focus-visible{transform:none}}
@media print{.experience,.camera-enabled .experience{height:100vh}.hero-stage{position:relative;height:100vh}}
@media(max-height:580px){.experience,.hero-stage{min-height:0}.site-header{height:66px}.hero-wordmark{top:21%;font-size:19vw}.hero-role,.hero-location{top:auto;bottom:46px;font-size:11px}.hero-scroll{bottom:7px;font-size:11px}.skip-intro{bottom:8px}.brand{font-size:15px}}
