.nav{z-index:100;height:var(--nav-h);padding:0 var(--gutter);transition:background .5s var(--ease), backdrop-filter .5s var(--ease), border-color .5s var(--ease), color .5s var(--ease);border-bottom:1px solid #0000;grid-template-columns:1fr auto 1fr;align-items:center;display:grid;position:fixed;top:0;left:0;right:0}.nav.is-hero{color:#fff;background:linear-gradient(#00000073,#0000)}.nav.is-solid{background:var(--nav-bg);-webkit-backdrop-filter:blur(20px)saturate(150%);border-bottom:1px solid var(--line);color:var(--fg)}.nav-links{align-items:center;gap:clamp(14px,1.7vw,30px);display:flex}.nav-links.left{justify-content:flex-start}.nav-links.right{justify-content:flex-end}.nav-link{font-family:var(--font-display);letter-spacing:.18em;text-transform:uppercase;color:inherit;opacity:.82;transition:opacity .25s var(--ease);white-space:nowrap;background:0 0;border:none;padding:6px 0;font-size:13px;font-weight:400;position:relative}.nav-link:hover,.nav-link.active{opacity:1}.nav-link.active:after{content:"";background:currentColor;height:1px;position:absolute;bottom:-2px;left:0;right:0}.nav-brand{text-align:center;color:inherit;background:0 0;border:none;flex-direction:column;align-items:center;gap:5px;padding:0 clamp(14px,2.2vw,40px);display:flex}.nav-brand .bm-name{font-family:var(--font-display);letter-spacing:.36em;text-transform:uppercase;white-space:nowrap;font-size:clamp(15px,1.5vw,21px);font-weight:300;line-height:1}.nav-brand .bm-sub{font-family:var(--font-display);letter-spacing:.3em;text-transform:uppercase;opacity:.62;font-size:clamp(8px,.72vw,11px);font-weight:300;line-height:1}.nav-brand img{width:auto;max-height:46px}.nav-icons{align-items:center;gap:12px;margin-left:4px;display:flex}.theme-toggle{width:34px;height:34px;color:inherit;transition:background .25s var(--ease), border-color .25s var(--ease);background:0 0;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.theme-toggle:hover{background:#80808024}.nav-ig{opacity:.82;transition:opacity .25s;display:inline-flex}.nav-ig:hover{opacity:1}.nav-burger{color:inherit;background:0 0;border:none;justify-content:center;align-items:center;width:40px;height:40px;display:none}.hero{width:100%;height:100svh;min-height:560px;position:relative;overflow:hidden}.hero .still{position:absolute;inset:0}.hero-still-img{animation:slowZoom 18s var(--ease) forwards alternate infinite;background-position:50%;background-size:cover;position:absolute;inset:0}.hero-overlay{text-align:center;color:#fff;z-index:5;flex-direction:column;justify-content:center;align-items:center;padding:0 24px;display:flex;position:absolute;inset:0}.hero-kicker{font-family:var(--font-display);letter-spacing:.4em;text-transform:uppercase;opacity:.8;animation:fadeIn 1.4s var(--ease) both;margin-bottom:26px;font-size:11px;font-weight:400}.hero-name{font-family:var(--font-display);letter-spacing:.3em;text-transform:uppercase;text-shadow:0 2px 40px #0006;animation:fadeUp 1.5s var(--ease) both;margin:0;font-size:clamp(26px,5.4vw,72px);font-weight:200;line-height:1.04}.hero-sub{font-family:var(--font-display);letter-spacing:.34em;text-transform:uppercase;opacity:.86;animation:fadeUp 1.7s var(--ease) both;margin-top:clamp(14px,1.6vw,22px);font-size:clamp(10px,1.1vw,15px);font-weight:300}.hero-scroll{z-index:6;color:#fff;animation:fadeIn 2.4s var(--ease) both;background:0 0;border:none;flex-direction:column;align-items:center;gap:4px;display:flex;position:absolute;bottom:26px;left:50%;transform:translate(-50%)}.hero-scroll svg{animation:2.2s ease-in-out infinite bob}@keyframes bob{0%,to{transform:translateY(0)}50%{transform:translateY(6px)}}.work{background:var(--bg);padding-top:1px}.work-head{padding:clamp(40px, 6vw, 72px) var(--gutter) clamp(20px, 2.4vw, 30px);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:20px;display:flex}.work-head h2{font-family:var(--font-display);letter-spacing:.16em;text-transform:uppercase;margin:0;font-size:clamp(18px,2vw,26px);font-weight:300}.work-filters{flex-wrap:wrap;gap:8px;display:flex}.chip{font-family:var(--font-display);letter-spacing:.14em;text-transform:uppercase;border:1px solid var(--line);color:var(--fg-muted);transition:all .25s var(--ease);background:0 0;border-radius:999px;padding:8px 16px;font-size:12px}.chip:hover{color:var(--fg);border-color:var(--line-strong)}.chip.active{background:var(--invert-bg);color:var(--invert-fg);border-color:var(--invert-bg)}.grid{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.tile{aspect-ratio:16/9;background:var(--bg-2);cursor:pointer;border:none;margin:0;padding:0;display:block;position:relative;overflow:hidden}.tile .still{transition:transform .9s var(--ease), filter .6s var(--ease)}.tile:hover .still{transform:scale(1.05)}.tile-overlay{z-index:5;text-align:center;color:#fff;opacity:0;transition:opacity .4s var(--ease);background:linear-gradient(#00000040,#0000000d 45%,#0000008c);flex-direction:column;justify-content:center;align-items:center;padding:18px;display:flex;position:absolute;inset:0}.tile:hover .tile-overlay{opacity:1}.tile-title{font-family:var(--font-display);letter-spacing:.22em;text-transform:uppercase;transition:transform .5s var(--ease);font-size:clamp(13px,1.3vw,18px);font-weight:300;transform:translateY(8px)}.tile:hover .tile-title{transform:translateY(0)}.tile-meta{letter-spacing:.24em;text-transform:uppercase;opacity:.75;transition:transform .6s var(--ease);margin-top:8px;font-size:10px;transform:translateY(8px)}.tile:hover .tile-meta{transform:translateY(0)}.tile-play{color:#fff;opacity:0;width:56px;height:56px;transition:all .4s var(--ease);z-index:6;border:1px solid #fff9;border-radius:999px;justify-content:center;align-items:center;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)scale(.8)}.tile:hover .tile-play{opacity:1;transform:translate(-50%,-50%)scale(1)}.lightbox{z-index:300;background:var(--overlay);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:fadeIn .3s var(--ease) both;justify-content:center;align-items:center;padding:clamp(20px,5vw,70px);display:flex;position:fixed;inset:0}.lb-stage{width:min(1100px,92vw);position:relative}.lb-frame{aspect-ratio:16/9;width:100%;box-shadow:var(--shadow);background:#000;border-radius:2px;position:relative;overflow:hidden}.lb-frame iframe{border:0;width:100%;height:100%;position:absolute;inset:0}.lb-controls{z-index:8;color:#fff;background:linear-gradient(#0000,#000000b3);align-items:center;gap:14px;padding:14px 16px;display:flex;position:absolute;bottom:0;left:0;right:0}.lb-time{letter-spacing:.1em;font-variant-numeric:tabular-nums;min-width:38px;font-size:11px}.lb-bar{cursor:pointer;background:#ffffff40;border-radius:2px;flex:1;height:3px;position:relative}.lb-bar-fill{background:#fff;border-radius:2px;position:absolute;top:0;bottom:0;left:0}.lb-ctrl-btn{color:#fff;opacity:.85;background:0 0;border:none;display:inline-flex}.lb-ctrl-btn:hover{opacity:1}.lb-side{color:#fff;flex-direction:column;gap:18px;display:flex;position:absolute;top:0;right:-56px}.lb-side button{color:#fff;opacity:.7;background:0 0;border:none}.lb-side button:hover{opacity:1}.lb-close{color:#fff;opacity:.8;background:0 0;border:none;display:inline-flex;position:absolute;top:-46px;right:0}.lb-close:hover{opacity:1}.lb-caption{color:#fff;margin-top:18px}.lb-caption h3{font-family:var(--font-display);letter-spacing:.2em;text-transform:uppercase;margin:0 0 8px;font-size:17px;font-weight:300}.lb-caption p{color:#ffffffa8;max-width:60ch;margin:0;font-size:14px;line-height:1.6}.lb-caption .meta{letter-spacing:.2em;text-transform:uppercase;opacity:.6;margin-bottom:10px;font-size:11px}.page{padding-top:var(--nav-h);min-height:100svh}.page-inner{max-width:1120px;padding:clamp(40px, 6vw, 80px) var(--gutter) 120px;margin:0 auto}.page-title{font-family:var(--font-display);letter-spacing:.2em;text-transform:uppercase;margin:0 0 6px;font-size:clamp(28px,4vw,48px);font-weight:200}.page-lead{color:var(--fg-muted);letter-spacing:.04em;margin:0 0 clamp(36px,5vw,60px);font-size:15px}.blog-list{grid-template-columns:repeat(2,1fr);gap:clamp(24px,3vw,44px);display:grid}.blog-card{cursor:pointer;text-align:left;color:inherit;background:0 0;border:none;padding:0;display:block}.blog-card .cover{aspect-ratio:16/10;overflow:hidden}.blog-card .cover .still{transition:transform .8s var(--ease)}.blog-card:hover .cover .still{transform:scale(1.04)}.blog-card .meta{letter-spacing:.2em;text-transform:uppercase;color:var(--fg-faint);margin-top:16px;font-size:11px}.blog-card h3{font-family:var(--font-display);letter-spacing:.04em;margin:8px 0 10px;font-size:clamp(19px,2vw,24px);font-weight:300;line-height:1.2}.blog-card p{color:var(--fg-muted);margin:0;font-size:15px;line-height:1.65}.article{max-width:760px;margin:0 auto}.article .cover{aspect-ratio:16/8;margin-bottom:clamp(28px,4vw,48px);overflow:hidden}.article-meta{letter-spacing:.2em;text-transform:uppercase;color:var(--fg-faint);margin-bottom:14px;font-size:11px}.article h1{font-family:var(--font-display);letter-spacing:.06em;margin:0 0 28px;font-size:clamp(28px,4vw,46px);font-weight:200;line-height:1.12}.article-body{font-family:var(--font-serif);color:var(--fg);font-size:clamp(18px,1.6vw,21px);line-height:1.8}.article-body p{margin:0 0 1.4em}.back-link{font-family:var(--font-display);letter-spacing:.18em;text-transform:uppercase;color:var(--fg-muted);background:0 0;border:none;align-items:center;gap:8px;margin-bottom:30px;font-size:12px;display:inline-flex}.back-link:hover{color:var(--fg)}.about-layout{grid-template-columns:.85fr 1fr;align-items:center;gap:clamp(28px,5vw,72px);display:grid}.about-media{aspect-ratio:4/5;overflow:hidden}.about-text .eyebrow{margin-bottom:18px;display:block}.about-headline{font-family:var(--font-display);letter-spacing:.08em;margin:0 0 28px;font-size:clamp(30px,4vw,52px);font-weight:200;line-height:1.08}.about-body{font-family:var(--font-serif);color:var(--fg);font-size:clamp(18px,1.6vw,21px);line-height:1.8}.about-body p{margin:0 0 1.3em}@media (max-width:760px){.about-layout{grid-template-columns:1fr}.about-media{aspect-ratio:3/2}}.contact{min-height:100svh;padding-top:var(--nav-h);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.contact .bg{z-index:0;position:absolute;inset:0}.contact .bg:after{content:"";background:#00000052;position:absolute;inset:0}.contact-inner{z-index:3;text-align:center;color:#fff;flex-direction:column;gap:clamp(28px,4vw,44px);padding:60px 24px;display:flex;position:relative}.contact-block h4{font-family:var(--font-display);letter-spacing:.22em;text-transform:uppercase;margin:0 0 10px;font-size:14px;font-weight:600}.contact-block .line{font-family:var(--font-display);letter-spacing:.16em;text-transform:uppercase;opacity:.82;font-size:13px;font-weight:300;line-height:1.9}.contact-block a:hover{text-underline-offset:4px;text-decoration:underline}.contact-note{font-family:var(--font-serif);opacity:.8;font-size:18px;font-style:italic}.footer{padding:18px var(--gutter);border-top:1px solid var(--line);background:var(--bg);font-family:var(--font-display);letter-spacing:.22em;text-transform:uppercase;color:var(--fg-faint);justify-content:space-between;align-items:center;font-size:10px;display:flex}.footer.over{z-index:4;color:#ffffffb3;background:0 0;border-top:none;position:absolute;bottom:0;left:0;right:0}.footer a:hover{color:var(--fg)}.admin-link{color:inherit;opacity:.7}.admin-link:hover{opacity:1}.mobile-menu{z-index:200;background:var(--bg);animation:fadeIn .3s var(--ease) both;flex-direction:column;justify-content:center;align-items:center;gap:26px;display:flex;position:fixed;inset:0}.mobile-menu .nav-link{letter-spacing:.24em;opacity:.9;font-size:18px}.mobile-menu-close{color:var(--fg);background:0 0;border:none;position:absolute;top:22px;right:22px}@media (max-width:900px){:root{--nav-h:70px}.nav{grid-template-columns:auto 1fr auto}.nav-links{display:none}.nav-burger{display:inline-flex}.nav-brand{align-items:flex-start;padding:0}.nav-brand .bm-name{letter-spacing:.26em;font-size:15px}.nav-icons .nav-ig{display:none}.grid{grid-template-columns:repeat(2,1fr);gap:4px}.blog-list{grid-template-columns:1fr}.lb-side{top:8px;right:8px}.lb-close{top:-38px}}@media (max-width:560px){.grid{grid-template-columns:1fr}.nav-brand .bm-sub{display:none}.hero-name{letter-spacing:.22em}.work-head{flex-direction:column;align-items:flex-start}}.intro-overlay{z-index:9999;background:var(--bg);opacity:1;animation:introFade var(--intro-fade,.7s) var(--ease) var(--intro-hold,5s) forwards;justify-content:center;align-items:center;display:flex;position:fixed;inset:0;overflow:hidden}@keyframes introFade{to{opacity:0;visibility:hidden;pointer-events:none}}.intro-bg{z-index:0;position:absolute;inset:0}.intro-color{position:absolute;inset:0}.intro-bar{z-index:2;height:10vh;animation:introBar 1s var(--ease) both;background:#000;position:absolute;left:0;right:0}.intro-bar-top{top:0}.intro-bar-bottom{animation-name:introBarBottom;bottom:0}@keyframes introBar{0%{transform:translateY(-100%)}to{transform:translateY(0)}}@keyframes introBarBottom{0%{transform:translateY(100%)}to{transform:translateY(0)}}.intro-stage{z-index:3;text-align:center;flex-direction:column;align-items:center;gap:clamp(14px,3vw,28px);padding:24px;display:flex;position:relative}.intro-block{animation:introBlockIn 1s var(--ease) both}@keyframes introBlockIn{0%{opacity:0;filter:blur(6px);transform:translateY(18px)scale(.98)}to{opacity:1;filter:blur();transform:translateY(0)scale(1)}}.intro-text{font-family:var(--font-display);letter-spacing:.3em;text-transform:uppercase;color:var(--fg);text-shadow:0 1px 28px var(--bg), 0 1px 4px var(--bg);font-size:clamp(18px,4.4vw,42px);font-weight:300;line-height:1.3;display:block}.intro-block:not(:first-child) .intro-text{letter-spacing:.24em;color:var(--fg-muted);font-size:clamp(11px,1.8vw,15px)}.intro-image{object-fit:contain;max-width:min(70vw,520px);max-height:46vh}.intro-skip{z-index:4;border:1px solid var(--line-strong);color:var(--fg-muted);font-family:var(--font-display);letter-spacing:.18em;text-transform:uppercase;cursor:pointer;transition:color .2s var(--ease), border-color .2s var(--ease);animation:fadeIn 1s var(--ease) .8s both;background:0 0;border-radius:999px;padding:8px 16px;font-size:11px;position:absolute;bottom:calc(10vh + 18px);right:clamp(18px,4vw,40px)}.intro-skip:hover{color:var(--fg);border-color:var(--fg)}@media (prefers-reduced-motion:reduce){.intro-block,.intro-bar,.intro-skip{animation-duration:.01ms}}
