:root{--ink:#1e2b2f;--paper:#f5f6f3;--red:#8e2535;--muted:#5d696b;--line:#ccd4d1;--gutter:clamp(24px,5vw,96px);--header-height:86px}
body{background:var(--paper);color:var(--ink);font-family:Archivo,Arial,sans-serif;font-size:16px;line-height:1.6}html{scroll-padding-top:24px}button{border-radius:0}svg{width:25px;height:25px}.h-shell{padding-inline:var(--gutter)}h1,h2,h3{font-weight:400;letter-spacing:-.05em;line-height:1.08}.h-defs{position:absolute;width:0;height:0;overflow:hidden}
.h-opening{height:100svh;height:100dvh;display:grid;grid-template-rows:minmax(0,1fr) auto;position:relative;background:var(--ink);color:#fff;isolation:isolate}
.h-header{position:absolute;inset:0 0 auto;z-index:30;height:var(--header-height);display:flex;align-items:center;gap:36px;color:#fff;background:linear-gradient(180deg,#0e1c24bd,#0e1c2466);border-bottom:1px solid #ffffff17;backdrop-filter:blur(5px)}
.h-brand{display:flex;align-items:center;flex:0 0 auto;height:calc(var(--header-height) - 8px);min-height:44px;overflow:hidden}.h-brand img{display:block;width:148px;height:auto;aspect-ratio:1329/635;flex:0 0 auto;object-fit:contain;filter:none;mix-blend-mode:normal}.h-nav{display:flex;margin-left:auto;gap:40px}.h-nav a{display:flex;align-items:center;gap:14px;min-height:48px;font-size:14px}.h-nav svg{width:18px;height:18px}.h-nav a:hover{text-decoration:underline;text-underline-offset:7px}.nav-toggle{display:none;align-items:center;gap:15px;border:0;color:inherit;background:none;min-height:44px;padding:10px 0;margin-left:auto}.h-menu-mark{width:24px;height:10px;border-block:1px solid}
#mobile-nav{position:fixed;inset:0;z-index:25;background:#1e2b2f;color:#fff;padding:calc(var(--header-height) + 24px) var(--gutter) 40px;overflow:auto}#mobile-nav>a{display:block;font-size:clamp(24px,5vw,42px);line-height:1.3;padding:20px 0;border-bottom:1px solid #fff3}#mobile-nav>p{font-size:14px;color:#c3cccb;margin-top:30px}
.h-hero{min-height:0;position:relative;isolation:isolate;background:#1c2b30;color:#fff;overflow:hidden}.h-scene,.h-image-layer,.h-scene-shade{position:absolute;inset:0}.h-scene{z-index:-1}.h-image-layer{overflow:hidden;visibility:hidden}.h-image-layer.is-current,.h-image-layer.is-incoming{visibility:visible}.h-image-layer.is-incoming{z-index:2}.h-image-layer img{height:100%;width:100%;object-fit:cover;object-position:var(--project-position,50% 55%)}
.h-image-layer.is-graphic{background:#1c2b30}.h-image-layer.is-graphic img{object-fit:contain;width:48%;height:57%;position:absolute;right:var(--gutter);top:23%;border:1px solid #fff1}.h-scene-shade{z-index:3;background:linear-gradient(90deg,#0d1a2399,#0d1a2320 58%,#0d1a2300 85%),linear-gradient(180deg,#0d1a2322,transparent 48%,#0d1a23b8);pointer-events:none}.h-hero.is-graphic .h-scene-shade{background:linear-gradient(90deg,#0d1a2355,transparent 50%)}
.h-hero-content{height:100%;display:flex;flex-direction:column;justify-content:space-between;padding-top:calc(var(--header-height) + clamp(30px,6vh,80px));padding-bottom:28px;gap:24px}.h-current-project{max-width:850px}.h-project-kicker{font-size:13px;color:#e3e8e9;margin-bottom:15px}.h-hero [data-project-name]{font-size:clamp(60px,8.2vw,148px);line-height:1;letter-spacing:-.065em;font-weight:450;max-width:11ch;text-wrap:initial}.h-project-detail{font-size:14px;color:#e5e9e9;margin-top:20px;max-width:42ch;line-height:1.45}.h-project-link{display:inline-flex;align-items:center;gap:30px;min-height:46px;margin-top:15px;font-size:14px;border-bottom:1px solid #ffffff6e}.h-project-link svg{width:18px;height:18px;transition:transform .25s}.h-project-link:hover svg{transform:translate(2px,-2px)}.h-hero-bottom{display:flex;align-items:end;justify-content:space-between;gap:32px}.h-signature>p{font-size:12px;color:#d0dcdf;margin-bottom:6px}.h-signature :is(h1,h2){font-size:clamp(23px,2.6vw,42px);letter-spacing:-.045em;line-height:1.14}.h-scene-controls{text-align:right}.h-image-credit{display:block;font-size:12px;color:#e0e6e7;margin-bottom:10px}.h-transport{display:flex;align-items:center;gap:12px}.h-transport button{height:44px;min-width:44px;display:grid;place-items:center;background:none;color:#fff;border:1px solid #ffffff60;border-radius:50%;padding:0}.h-transport button:hover{background:#fff;color:var(--ink)}.h-transport [data-prev] svg{transform:rotate(180deg)}.h-transport svg{width:20px;height:20px}.h-counter{display:flex;align-items:center;gap:10px;font-size:12px;margin-right:13px}.h-counter b{font-weight:500}.h-counter i{width:25px;border-top:1px solid #ffffff60}.h-transport .h-pause{border:0;border-radius:0;min-width:62px;font-size:12px;margin-left:7px;min-height:44px}.h-transport .h-pause:hover{background:none;color:#fff;text-decoration:underline;text-underline-offset:5px}.h-pause:disabled{display:none}.h-time-track{position:absolute;bottom:0;left:0;right:0;height:2px;background:#ffffff20}.h-time-track>span{display:block;width:100%;height:100%;background:#fff;transform:scaleX(0);transform-origin:left}.h-hero.is-waiting .h-current-project{opacity:.7}
/* A single quiet line of project names, with a compact picker on narrow screens. */
.h-selector{background:#1e2b2f;color:#fff;min-width:0;padding-block:6px;border-top:1px solid #ffffff18}
.h-selector-mobile{display:none}
.h-project-rail{display:flex;align-items:center;justify-content:space-between;gap:clamp(10px,1.4vw,26px);min-width:0}
.h-project-option{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:7px 0;color:#bac7c9;position:relative}
.h-project-option::before{content:"";position:absolute;inset:auto 0 0;height:1px;background:#fff;transform:scaleX(0);transform-origin:left;transition:transform .45s cubic-bezier(.2,.6,.2,1)}
.h-project-option strong{font-size:clamp(13px,1.04vw,17px);font-weight:400;letter-spacing:-.015em;line-height:1.25;white-space:nowrap}
.h-option-mark{display:none}
.h-project-option[aria-pressed=true]{color:#fff}.h-project-option[aria-pressed=true]::before{transform:scaleX(1)}
.h-project-option:hover{color:#fff}.h-project-option:focus-visible{outline-offset:2px}
.h-all-projects{display:flex;align-items:center;gap:12px;border:0;background:none;color:#dbe5e6;min-height:44px;padding:0;font-size:12px}
.h-project-total{font-variant-numeric:tabular-nums;color:#b5c5c8;font-size:12px;border-left:1px solid #ffffff30;padding-left:12px}
.h-all-projects svg{width:15px;height:15px}
.h-all-projects:hover{text-decoration:underline;text-underline-offset:5px}
.h-header{opacity:var(--opening-header-opacity,1);transform:translateY(var(--opening-header-y,0px))}
.h-hero-content{opacity:var(--opening-copy-opacity,1);transform:translateY(var(--opening-copy-y,0px))}
.h-header.is-scroll-hidden,.h-hero-content.is-scroll-hidden{pointer-events:none}
@media(max-width:900px){.h-project-rail{display:none}.h-selector-mobile{display:flex;align-items:center;justify-content:space-between;gap:20px}.h-selector-mobile>span{font-size:15px;line-height:1.3;letter-spacing:-.02em}.h-selector{padding-block:4px}}
.h-picker{border:0;position:fixed;inset:22px;margin:auto;padding:40px;width:min(1280px,calc(100vw - 44px));height:auto;max-height:calc(100dvh - 44px);background:var(--paper);color:var(--ink);overscroll-behavior:contain}.h-picker::backdrop{background:#142429bf;backdrop-filter:blur(8px)}.h-picker-header{display:flex;align-items:start;justify-content:space-between;gap:24px;margin-bottom:30px}.h-picker-header p{font-size:13px;color:var(--muted);margin-bottom:13px}.h-picker h2{font-size:clamp(35px,4.2vw,64px)}.h-picker-header button{border:1px solid var(--line);background:none;display:flex;align-items:center;gap:24px;min-height:48px;padding:8px 18px;font-size:14px}.h-picker-header button span{font-size:23px}.h-picker-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px 24px}.h-picker-project{display:block;border:0;padding:0 0 12px;background:none;text-align:left;color:var(--ink);border-bottom:1px solid var(--line)}.h-picker-project img{width:100%;aspect-ratio:16/9;object-fit:cover;background:#243035}.h-picker-project.is-graphic img{object-fit:contain}.h-picker-project>span{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:14px;font-size:19px;letter-spacing:-.025em}.h-picker-project small{display:block;font-size:12px;color:var(--muted);margin-top:3px}.h-picker-project[aria-pressed=true]{border-color:var(--red)}.h-picker-project[aria-pressed=true]>span{color:var(--red)}.h-picker-note{font-size:13px;color:var(--muted);margin-top:30px}.picker-open{overflow:hidden}
.h-review-tools{padding:20px var(--gutter);background:#122128;color:#dbe3e5;display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:12px}.h-review-return{display:flex;align-items:center;gap:12px;min-height:44px}.h-review-return svg{width:14px;height:14px;transform:rotate(180deg)}.h-effect-links{display:flex;flex-wrap:wrap;align-items:center;gap:18px}.h-effect-links>span{color:#a8b8bd}.h-effect-links a{min-height:44px;display:flex;align-items:center;border-bottom:1px solid transparent}.h-effect-links a[aria-current=true]{border-bottom-color:#fff;color:#fff}.h-effect-links a:hover{text-decoration:underline;text-underline-offset:6px}
@media(min-width:1800px){:root{--header-height:98px}.h-hero-content{padding-top:calc(var(--header-height) + 60px);padding-bottom:40px}}
@media(max-width:1100px){:root{--header-height:80px}.h-header{gap:25px}.h-nav{gap:28px}.h-hero [data-project-name]{font-size:clamp(60px,8.5vw,96px)}.h-hero-content{padding-top:calc(var(--header-height) + 40px)}.h-picker-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.h-hero.is-graphic [data-project-name]{max-width:8ch}}
@media(max-width:800px){:root{--header-height:70px}.h-nav{display:none}.nav-toggle{display:flex;font-size:13px}.h-brand img{width:124px}.h-hero-content{padding-top:calc(var(--header-height) + 35px);padding-bottom:23px}.h-hero [data-project-name]{font-size:clamp(52px,10vw,84px)}.h-project-detail{font-size:13px}.h-project-link{font-size:13px}.h-signature>p{font-size:12px;max-width:20ch;line-height:1.4}.h-signature :is(h1,h2){font-size:26px}.h-transport{gap:7px}.h-counter{margin-right:4px;gap:7px}.h-counter i{width:18px}.h-transport .h-pause{margin-left:0}.h-picker{padding:28px}.h-picker-grid{gap:24px 18px}.h-picker-project>span{font-size:17px}.h-review-tools{align-items:start;flex-direction:column;gap:10px}.h-effect-links{gap:15px}}
@media(max-width:560px){:root{--gutter:22px;--header-height:66px}.h-header{gap:18px}.h-brand img{width:120px}.h-hero-content{padding-top:calc(var(--header-height) + 30px);padding-bottom:17px;gap:15px}.h-hero [data-project-name]{font-size:clamp(46px,13.2vw,70px);max-width:10ch;line-height:1.02}.h-project-kicker{font-size:12px;margin-bottom:11px}.h-project-detail{margin-top:12px;max-width:31ch;font-size:12px}.h-project-link{margin-top:8px;min-height:40px;gap:25px}.h-hero-bottom{display:block}.h-signature>p{display:none}.h-signature :is(h1,h2){font-size:27px}.h-scene-controls{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:10px}.h-image-credit{margin:0;max-width:115px;line-height:1.35;text-align:left;font-size:11px}.h-transport{gap:3px}.h-transport button{width:35px;min-width:35px;height:44px;border:0}.h-transport .h-pause{min-width:52px;font-size:11px}.h-counter{gap:6px;font-size:11px;margin-right:5px}.h-counter i{width:12px}.h-transport svg{width:19px;height:19px}.h-scene-shade{background:linear-gradient(180deg,#10232b44,transparent 52%,#10232bdb),linear-gradient(90deg,#10232b88,transparent 100%)}.h-image-layer img{object-position:var(--mobile-position,50% center)}.h-hero.is-graphic [data-project-name]{font-size:clamp(36px,10.8vw,52px);max-width:100%}.h-hero.is-graphic .h-project-detail{max-width:100%;font-size:12px}.h-hero.is-graphic .h-project-link{margin-top:3px}.h-image-layer.is-graphic img{width:calc(100% - 44px);height:29%;right:22px;top:49%;border:0}.h-hero.is-graphic .h-scene-shade{background:none}.h-hero.is-graphic .h-signature{display:block}.h-hero.is-graphic .h-signature :is(h1,h2){font-size:21px}.h-picker{inset:10px;width:calc(100vw - 20px);max-height:calc(100dvh - 20px);padding:23px 18px}.h-picker-header{gap:15px;margin-bottom:25px;align-items:center}.h-picker-header p{font-size:12px;max-width:20ch}.h-picker h2{font-size:31px}.h-picker-header button{gap:12px;padding:5px 9px;font-size:12px}.h-picker-grid{grid-template-columns:1fr 1fr;gap:23px 14px}.h-picker-project>span{font-size:16px;margin-top:11px}.h-picker-project small{font-size:12px}.h-review-tools{padding-block:10px}.h-effect-links{gap:14px}.h-effect-links>span{width:100%;margin-top:8px}}
@media(max-height:700px) and (min-width:561px){:root{--header-height:68px}.h-brand img{width:124px}.h-hero-content{padding-top:calc(var(--header-height) + 24px);padding-bottom:20px}.h-hero [data-project-name]{font-size:clamp(46px,7vw,86px)}.h-project-kicker{margin-bottom:8px}.h-project-detail{margin-top:11px}.h-project-link{margin-top:7px;min-height:40px}.h-signature :is(h1,h2){font-size:28px}}
@media(max-height:650px) and (max-width:560px){.h-hero-content{padding-top:calc(var(--header-height) + 17px);gap:12px}.h-hero [data-project-name]{font-size:clamp(41px,12vw,62px)}.h-project-kicker{margin-bottom:6px}.h-project-detail{margin-top:9px}.h-project-link{margin-top:4px}.h-signature :is(h1,h2){font-size:23px}.h-scene-controls{margin-top:5px}.h-hero.is-graphic [data-project-name]{font-size:36px}.h-image-layer.is-graphic img{height:25%;top:52%}}
@media(max-height:500px){:root{--header-height:54px}.h-header{gap:22px}.h-brand{height:50px}.h-brand img{width:100px}.h-nav{gap:25px}.h-nav a{font-size:13px}.h-hero-content{padding-top:calc(var(--header-height) + 14px);padding-bottom:12px;gap:8px}.h-hero [data-project-name],.h-hero.is-graphic [data-project-name]{font-size:clamp(30px,6vw,48px);max-width:none;line-height:1}.h-project-kicker{margin-bottom:6px;font-size:11px}.h-project-detail{margin-top:8px;font-size:12px}.h-project-link{min-height:32px;margin-top:1px;font-size:12px}.h-hero-bottom{display:flex;align-items:center}.h-signature>p{display:none}.h-signature :is(h1,h2){font-size:21px}.h-image-credit{display:none}.h-scene-controls{margin-top:0}.h-transport{gap:5px}.h-transport button{width:34px;min-width:34px;height:36px;border:0}.h-transport .h-pause{min-height:36px}.h-image-layer.is-graphic img{width:43%;height:54%;right:var(--gutter);top:28%}.h-hero.is-graphic [data-project-name]{max-width:9ch}.h-hero.is-graphic .h-project-detail{max-width:28ch}.h-hero.is-graphic .h-signature{display:block}}
@media(max-height:360px){.h-project-detail{display:none}.h-project-kicker{margin-bottom:4px}.h-hero-content{padding-top:calc(var(--header-height) + 10px)}.h-hero [data-project-name]{font-size:34px}.h-signature :is(h1,h2){font-size:18px}.h-project-link{min-height:30px}.h-hero.is-graphic [data-project-name]{font-size:30px;max-width:none}}
@media(prefers-reduced-motion:reduce){.h-time-track{display:none}.h-project-option::before{transition:none}}
