﻿:root{--ink:#171717;--ink-soft:#193130;--sky:#57a070;--cobalt:#41775d;--leaf:#d9d9d9;--lime:#57a070;--sun:#8e7e6f;--coral:#8e7e6f;--paper:#eeebe3;--mist:#d9d9d9;--line:rgba(23,23,23,.18);--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans','PingFang SC','Microsoft YaHei',sans-serif;--mono:'DM Mono',monospace;--shadow:0 26px 75px rgba(23,23,23,.18)}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--paper)}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.55;overflow-x:hidden}body.menu-open,body.modal-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;border:0;background:none}img,video{display:block;width:100%;height:100%;object-fit:cover}.skip-link{position:fixed;left:16px;top:-60px;z-index:1000;padding:10px 16px;background:var(--ink);color:var(--paper)}.skip-link:focus{top:16px}.page-loader{position:fixed;inset:0;z-index:100;display:grid;place-items:center;align-content:center;gap:14px;background:var(--paper);transition:opacity .65s ease,visibility .65s ease}.page-loader.is-done{opacity:0;visibility:hidden;pointer-events:none}.page-loader__symbol{font-size:44px;color:var(--sky);animation:loaderPulse 1.1s ease-in-out infinite}.page-loader__word{font:11px var(--mono);letter-spacing:.12em}.page-loader__line{display:block;width:120px;height:1px;background:var(--line);position:relative;overflow:hidden}.page-loader__line:after{content:'';position:absolute;inset:0;background:var(--sky);transform:translateX(-100%);animation:loaderLine 1s ease forwards}@keyframes loaderPulse{0%,100%{transform:scale(.9);opacity:.5}50%{transform:scale(1);opacity:1}}@keyframes loaderLine{to{transform:translateX(0)}}
.site-header{height:76px;padding:0 clamp(20px,5vw,72px);display:flex;align-items:center;justify-content:space-between;position:fixed;inset:0 0 auto;z-index:20;mix-blend-mode:multiply;transition:background .3s,backdrop-filter .3s,color .3s}.site-header.is-scrolled{background:rgba(238,235,227,.8);backdrop-filter:blur(15px);box-shadow:0 1px 0 var(--line)}.brand-mark{display:inline-flex;align-items:center;gap:10px;font:500 14px var(--mono);letter-spacing:.08em}.brand-symbol{display:grid;place-items:center;width:27px;height:27px;border:1px solid currentColor;border-radius:50%;font-size:14px}.desktop-nav{display:flex;gap:32px;font-size:14px}.desktop-nav a,.footer-bottom a{opacity:.7;transition:opacity .2s,color .2s}.desktop-nav a:hover,.footer-bottom a:hover{opacity:1;color:var(--cobalt)}.header-actions{display:flex;gap:10px;align-items:center}.pill-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 18px;border-radius:999px;font-size:13px;transition:transform .25s,background .25s,color .25s}.pill-btn:hover{transform:translateY(-2px)}.pill-btn--solid{background:var(--ink);color:var(--paper)}.pill-btn--solid:hover{background:var(--cobalt)}.pill-btn--ghost{border:1px solid var(--line);min-width:58px}.favorites-count{font:11px var(--mono)}.menu-toggle{display:none;width:42px;height:42px;border:1px solid var(--line);border-radius:50%;align-items:center;justify-content:center;flex-direction:column;gap:5px}.menu-toggle span{display:block;width:15px;height:1px;background:currentColor}.mobile-menu{position:fixed;inset:0;background:var(--ink);color:var(--paper);z-index:30;padding:28px 24px}.mobile-menu__top{display:flex;justify-content:space-between;font:12px var(--mono);text-transform:uppercase;letter-spacing:.08em}.mobile-menu nav{display:grid;margin-top:80px}.mobile-menu nav a{font:600 clamp(44px,14vw,74px)/1.1 var(--serif);padding:18px 0;border-bottom:1px solid rgba(238,235,227,.2);display:flex;justify-content:space-between}.mobile-menu nav a span{font:12px var(--mono);align-self:flex-end;opacity:.6}.mobile-menu__note{position:absolute;bottom:30px;max-width:280px;font-size:13px;color:rgba(238,235,227,.65)}.icon-btn{width:38px;height:38px;border:1px solid currentColor;border-radius:50%;font-size:24px;line-height:1;display:grid;place-items:center}.modal[hidden],.mobile-menu[hidden]{display:none}
.hero-orbit{height:285vh;background:var(--paper);position:relative}.hero-orbit__sticky{height:100svh;position:sticky;top:0;overflow:hidden;isolation:isolate}.hero-orbit__wash{position:absolute;inset:0;background:radial-gradient(circle at 62% 42%,rgba(87,160,112,.12),transparent 35%),linear-gradient(120deg,rgba(87,160,112,.16),transparent 52%);z-index:-2}.hero-orbit__wash:after{content:'';position:absolute;inset:0;opacity:.17;background-image:radial-gradient(rgba(23,23,23,.3) .7px,transparent .7px);background-size:5px 5px;mask-image:linear-gradient(to bottom,transparent,black 20%,black 80%,transparent)}.hero-orbit__topline,.hero-orbit__footer{position:absolute;left:clamp(20px,7vw,110px);right:clamp(20px,7vw,110px);display:flex;justify-content:space-between;align-items:center;font:11px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:rgba(23,23,23,.62);z-index:4}.hero-orbit__topline{top:118px}.hero-orbit__footer{bottom:24px}.scroll-line{display:inline-block;width:90px;height:1px;background:var(--line);position:relative}.scroll-line:after{content:'';position:absolute;left:0;top:-2px;width:5px;height:5px;border-radius:50%;background:var(--sky)}.hero-orbit__center{position:absolute;z-index:3;left:50%;top:50%;width:min(580px,52vw);transform:translate(-50%,-50%);text-align:center}.eyebrow{font:11px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--cobalt);margin:0 0 18px}.hero-orbit h1{font:600 clamp(70px,10.5vw,168px)/.8 var(--serif);letter-spacing:-.07em;color:var(--ink-soft);margin:0}.hero-orbit h1 em,.story-section h2 em,.work-header h2 em,.insight-section h2 em,.stack-section h2 em,.film-copy h2 em,.contact-section h2 em{font-style:normal;color:var(--cobalt)}.hero-orbit__intro{max-width:310px;margin:34px auto 26px;font-size:14px;color:rgba(23,23,23,.72)}.circle-link{display:flex;align-items:center;justify-content:center;gap:14px;font:12px var(--mono);text-transform:uppercase}.circle-link span:last-child{width:42px;height:42px;border:1px solid var(--ink);border-radius:50%;display:grid;place-items:center;font-size:18px;transition:background .25s,color .25s}.circle-link:hover span:last-child{background:var(--ink);color:var(--paper)}.orbit-cards{position:absolute;inset:0;z-index:1}.orbit-card{position:absolute;left:50%;top:50%;width:clamp(130px,15vw,250px);height:clamp(170px,27vh,330px);border-radius:22px;overflow:hidden;box-shadow:var(--shadow);transform:translate(-50%,-50%) rotate(calc(var(--i)*72deg + var(--orbit-angle,0deg))) translateY(clamp(-330px,-29vh,-180px)) rotate(calc(var(--i)*-72deg - var(--orbit-angle,0deg)));transition:box-shadow .3s;will-change:transform}.orbit-card:after{content:'';position:absolute;inset:0;background:linear-gradient(145deg,rgba(87,160,112,.08),rgba(23,23,23,.2));mix-blend-mode:multiply}.orbit-card:hover{box-shadow:0 32px 90px rgba(23,23,23,.28)}.orbit-card--1{width:clamp(170px,18vw,310px);height:clamp(210px,33vh,410px)}.orbit-card--2{width:clamp(130px,13vw,220px);height:clamp(180px,26vh,300px)}.orbit-card--3{width:clamp(150px,16vw,260px);height:clamp(210px,30vh,360px)}.orbit-card--4{width:clamp(130px,13vw,230px);height:clamp(170px,25vh,290px)}.orbit-card--5{width:clamp(145px,14vw,240px);height:clamp(190px,28vh,320px)}.hero-portal{position:absolute;left:50%;top:50%;width:90px;height:90px;border-radius:50%;background:var(--ink);display:grid;place-items:center;color:var(--paper);font:11px var(--mono);letter-spacing:.12em;transform:translate(-50%,-50%) scale(var(--portal-scale,.08));z-index:7;pointer-events:none;will-change:transform}.hero-portal span{opacity:clamp(0,calc((var(--portal-scale,.08) - .5)*2),1)}
.story-section{background:var(--ink);color:var(--paper);padding:15vh clamp(20px,7vw,110px) 18vh;min-height:230vh;position:relative}.story-section__head{max-width:790px;margin:0 auto 15vh}.story-section .section-label{color:rgba(238,235,227,.55)}.story-section .section-label span:first-child{color:var(--lime)}.section-label{display:flex;gap:22px;align-items:center;font:11px var(--mono);text-transform:uppercase;letter-spacing:.1em;color:rgba(23,23,23,.58)}.section-label span:first-child{color:var(--cobalt)}.story-section h2,.work-header h2,.insight-section h2,.stack-section h2,.contact-section h2{font:500 clamp(54px,7.8vw,118px)/.88 var(--serif);letter-spacing:-.06em;margin:42px 0 28px}.story-section h2 em{color:var(--lime)}.story-section__head p{max-width:360px;margin-left:auto;color:rgba(238,235,227,.62);font-size:14px}.story-rail{display:grid;gap:22vh;max-width:1120px;margin:0 auto;position:relative}.story-card{display:grid;grid-template-columns:1.15fr .85fr;min-height:540px;background:var(--paper);color:var(--ink);border-radius:22px;overflow:hidden;box-shadow:0 35px 90px rgba(0,0,0,.25);transform:translateX(var(--story-shift,0)) rotate(var(--story-tilt,0));transition:transform .4s ease}.story-card:nth-child(even){grid-template-columns:.85fr 1.15fr}.story-card:nth-child(even) .story-card__media{order:2}.story-card__media{min-height:540px;overflow:hidden}.story-card__media img{transition:transform 1s cubic-bezier(.2,.65,.2,1)}.story-card:hover .story-card__media img{transform:scale(1.06)}.story-card__body{padding:56px 54px;display:flex;flex-direction:column;justify-content:flex-end}.story-card__body>span{font:11px var(--mono);color:var(--cobalt);letter-spacing:.1em}.story-card__body h3{font:500 clamp(42px,5vw,76px)/.92 var(--serif);letter-spacing:-.05em;margin:22px 0}.story-card__body p{max-width:260px;color:rgba(23,23,23,.62);font-size:14px;margin:0}.story-card--b{background:var(--sky);color:var(--ink)}.story-card--c{background:var(--lime)}
.work-section{padding:16vh clamp(20px,7vw,110px) 18vh;background:var(--paper)}.work-header{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;border-bottom:1px solid var(--line);padding-bottom:54px}.work-header h2{margin-bottom:0}.work-header p{font-size:14px;opacity:.65;max-width:240px;margin:0 0 10px}.work-toolbar{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:24px 0 44px}.filter-group{display:flex;gap:8px;flex-wrap:wrap}.filter-chip{font:11px var(--mono);border:1px solid var(--line);border-radius:999px;padding:9px 13px;color:rgba(23,23,23,.64);transition:all .2s}.filter-chip span{opacity:.55;margin-left:3px}.filter-chip:hover,.filter-chip.is-active{background:var(--ink);border-color:var(--ink);color:var(--paper)}.search-box{display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--line);min-width:230px;padding:8px 0;color:rgba(23,23,23,.6)}.search-box input{border:0;outline:0;background:transparent;width:100%;font-size:13px}.search-box input::placeholder{color:rgba(23,23,23,.45)}kbd{font:10px var(--mono);border:1px solid var(--line);padding:2px 5px;border-radius:3px;white-space:nowrap}.project-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.project-card{background:#e7e5dd;border-radius:20px;overflow:hidden;transition:transform .35s,box-shadow .35s;background:var(--mist);min-height:560px;display:flex;flex-direction:column}.project-card:nth-child(3n+2){background:#d9d9d9}.project-card:nth-child(3n){background:#e8e3dc}.project-card:hover{transform:translateY(-8px);box-shadow:var(--shadow)}.project-card__image{height:330px;position:relative;overflow:hidden}.project-card__image img{transition:transform .8s cubic-bezier(.2,.65,.2,1)}.project-card:hover .project-card__image img{transform:scale(1.07)}.project-card__number{position:absolute;top:18px;left:18px;width:40px;height:40px;display:grid;place-items:center;border-radius:50%;background:rgba(238,235,227,.9);font:11px var(--mono);z-index:1}.project-card__content{padding:26px 28px 28px;display:flex;flex:1;flex-direction:column}.project-card__meta{display:flex;justify-content:space-between;font:11px var(--mono);color:rgba(23,23,23,.6)}.project-card__title{font:500 clamp(30px,3vw,48px)/.9 var(--serif);letter-spacing:-.05em;margin:24px 0 12px}.project-card__desc{font-size:14px;color:rgba(23,23,23,.62);max-width:340px;margin:0}.project-card__footer{display:flex;justify-content:space-between;align-items:end;margin-top:auto;padding-top:28px}.project-card__tags{display:flex;gap:7px;flex-wrap:wrap}.project-card__tags span{font:10px var(--mono);border:1px solid var(--line);padding:6px 9px;border-radius:999px}.project-card__actions{display:flex;gap:8px}.project-card__fav,.project-card__action{width:40px;height:40px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;font-size:19px;transition:all .2s}.project-card__action{background:var(--ink);color:var(--paper);font-size:18px}.project-card__fav:hover,.project-card__action:hover{background:var(--cobalt);border-color:var(--cobalt);color:var(--paper)}.project-card__fav.is-favorite{background:var(--coral);border-color:var(--coral);color:var(--paper)}.empty-state{text-align:center;padding:100px 20px}.empty-state>span{font-size:40px;color:var(--cobalt)}.empty-state h3{font:500 28px var(--serif);margin:14px 0 8px}.empty-state p{opacity:.62;font-size:14px}.text-btn{font:12px var(--mono);text-transform:uppercase;display:inline-flex;gap:9px;align-items:center;padding:0;border-bottom:1px solid currentColor;padding-bottom:5px}.text-btn:hover{color:var(--cobalt)}
.insight-section{padding:16vh clamp(20px,7vw,110px);background:var(--sky);color:var(--ink)}.insight-section__intro{display:grid;grid-template-columns:1fr 1.4fr 1fr;gap:28px;align-items:end}.insight-section h2{margin:0}.insight-section__intro p{max-width:260px;margin:0 0 10px;font-size:14px}.insight-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:78px}.insight-card{min-height:330px;border-radius:20px;padding:26px 26px 24px;display:flex;flex-direction:column;position:relative;transition:transform .3s,box-shadow .3s}.insight-card:hover{transform:translateY(-8px) rotate(-1deg);box-shadow:0 22px 45px rgba(23,23,23,.16)}.insight-card--blue{background:var(--cobalt);color:var(--paper)}.insight-card--lime{background:var(--lime)}.insight-card--coral{background:var(--coral)}.insight-card span{font:11px var(--mono);opacity:.7}.insight-card strong{font:500 44px var(--serif);margin-top:auto;letter-spacing:-.04em}.insight-card p{font-size:14px;max-width:250px;opacity:.7;margin:14px 0 0}.insight-card i{position:absolute;right:24px;top:24px;font-size:28px;font-style:normal}
.stack-section{height:330vh;background:var(--ink);color:var(--paper);position:relative}.stack-section__sticky{height:100svh;position:sticky;top:0;overflow:hidden}.stack-section__head{position:absolute;left:clamp(20px,7vw,110px);top:14vh;width:min(430px,33vw);z-index:6}.stack-section .section-label{color:rgba(238,235,227,.55)}.stack-section .section-label span:first-child{color:var(--sky)}.stack-section h2{margin-top:42px}.stack-section h2 em{color:var(--sky)}.stack-section__head p{font-size:14px;color:rgba(238,235,227,.62);max-width:270px}.stack-stage{position:absolute;inset:0 7vw 0 31vw}.stack-card{position:absolute;left:50%;top:51%;width:min(65vw,920px);height:min(65vh,620px);border-radius:24px;overflow:hidden;transform:translate(-50%,-50%) translateY(calc(var(--stack-y,0px) + var(--i)*18px)) rotate(var(--stack-rotate,0deg));box-shadow:0 35px 90px rgba(0,0,0,.35);will-change:transform;transition:box-shadow .35s}.stack-card img{filter:saturate(1.1);transition:transform 1s}.stack-card:hover img{transform:scale(1.04)}.stack-card:after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(23,23,23,.8),transparent 55%)}.stack-card div{position:absolute;left:28px;right:28px;bottom:24px;z-index:1;display:flex;justify-content:space-between;align-items:end}.stack-card span{font:11px var(--mono);opacity:.74}.stack-card strong{font:500 clamp(36px,4.4vw,68px) var(--serif);letter-spacing:-.04em}.stack-card--1{--i:0;--stack-rotate:-3deg}.stack-card--2{--i:1;--stack-rotate:2deg}.stack-card--3{--i:2;--stack-rotate:-1deg}.stack-card--4{--i:3;--stack-rotate:3deg}
.film-section{padding:12vh clamp(20px,4.5vw,72px) 16vh;background:var(--paper)}.film-frame{height:min(80vh,850px);min-height:500px;border-radius:24px;overflow:hidden;position:relative;background:var(--ink);box-shadow:var(--shadow)}.film-video{position:absolute;inset:0;opacity:.8}.film-overlay{position:absolute;inset:0;padding:clamp(28px,5vw,70px);display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(140deg,rgba(23,23,23,.7),transparent 50%,rgba(23,23,23,.28));color:var(--paper)}.film-copy span{font:11px var(--mono);letter-spacing:.1em}.film-copy h2{font:500 clamp(62px,9vw,140px)/.82 var(--serif);letter-spacing:-.06em;margin:50px 0 0}.film-copy h2 em{color:var(--lime)}.film-copy p{font-size:14px;max-width:240px;color:rgba(238,235,227,.74);margin-top:28px}.film-toggle{align-self:flex-end;display:inline-flex;align-items:center;gap:10px;color:var(--paper);font:11px var(--mono);border:1px solid rgba(238,235,227,.55);padding:10px 15px;border-radius:999px;transition:background .2s}.film-toggle:hover{background:rgba(238,235,227,.18)}
.contact-section{display:grid;grid-template-columns:.9fr 1.1fr;min-height:760px}.contact-section__visual{background:var(--ink);color:var(--paper);padding:70px clamp(20px,7vw,110px);display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.contact-section__visual p{font:500 clamp(54px,7vw,110px)/.86 var(--serif);letter-spacing:-.06em;position:relative;z-index:1;margin:0}.contact-section__visual em{color:var(--sky);font-style:normal}.contact-index{font:11px var(--mono);letter-spacing:.1em;color:rgba(238,235,227,.6)}.contact-orbit{position:absolute;width:550px;height:550px;border:1px solid rgba(87,160,112,.32);border-radius:50%;right:-180px;top:50%;transform:translateY(-50%)}.contact-orbit:before,.contact-orbit:after{content:'';position:absolute;inset:42px;border:1px solid rgba(87,160,112,.22);border-radius:50%}.contact-orbit:after{inset:110px}.contact-orbit span{position:absolute;width:8px;height:8px;border-radius:50%;background:var(--lime)}.contact-orbit span:nth-child(1){left:16%;top:12%}.contact-orbit span:nth-child(2){right:15%;top:30%}.contact-orbit span:nth-child(3){left:48%;bottom:10%}.contact-section__form{padding:94px clamp(20px,7vw,110px);background:var(--mist)}.contact-section__form h2{margin-top:46px;margin-bottom:22px}.contact-section__form>p{max-width:380px;font-size:14px;opacity:.7;margin-bottom:50px}.contact-section form{display:grid;gap:22px;max-width:560px}.contact-section label{display:grid;gap:8px;font:11px var(--mono);letter-spacing:.04em;text-transform:uppercase}.contact-section input,.contact-section select,.contact-section textarea{border:0;border-bottom:1px solid var(--line);background:transparent;padding:8px 0;outline:0;resize:vertical;font:15px var(--sans);text-transform:none;letter-spacing:0}.contact-section input:focus,.contact-section select:focus,.contact-section textarea:focus{border-color:var(--cobalt);box-shadow:0 1px 0 var(--cobalt)}.contact-section input[aria-invalid="true"],.contact-section select[aria-invalid="true"],.contact-section textarea[aria-invalid="true"]{border-color:var(--coral);box-shadow:0 1px 0 var(--coral)}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:24px}.form-footer{display:flex;align-items:center;gap:18px;margin-top:8px}.form-status{font-size:12px;color:var(--cobalt)}.form-status.is-error{color:#8e7e6f}
.site-footer{background:var(--ink);color:var(--paper);padding:40px clamp(20px,7vw,110px) 24px}.footer-top,.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:24px}.footer-top{padding-bottom:74px}.footer-top p,.footer-bottom{font:11px var(--mono);opacity:.64}.back-top{font:11px var(--mono);display:inline-flex;gap:8px}.footer-bottom{padding-top:18px;border-top:1px solid rgba(238,235,227,.2)}.footer-bottom div{display:flex;gap:16px}
.modal{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:20px}.modal__backdrop{position:absolute;inset:0;background:rgba(23,23,23,.84);backdrop-filter:blur(12px)}.project-modal{position:relative;width:min(1240px,100%);height:min(790px,calc(100vh - 40px));overflow:hidden;display:grid;grid-template-columns:1.18fr .82fr;background:var(--paper);border-radius:20px;box-shadow:0 40px 120px rgba(0,0,0,.35);animation:modalIn .55s cubic-bezier(.2,.7,.2,1)}@keyframes modalIn{from{opacity:0;transform:translateY(30px) scale(.96)}to{opacity:1;transform:none}}.project-modal__media{position:relative;min-height:450px;background:var(--ink)}.project-modal__media img{filter:saturate(1.15)}.modal-media__label{position:absolute;left:28px;bottom:24px;color:var(--paper);font:11px var(--mono);letter-spacing:.1em}.modal__close{position:absolute;right:18px;top:18px;z-index:2;background:rgba(238,235,227,.88)}.project-modal__body{padding:58px 46px 48px;display:flex;flex-direction:column;background:linear-gradient(145deg,var(--paper),#e4ebe4)}.project-modal__meta{display:flex;gap:14px;font:11px var(--mono);text-transform:uppercase;color:var(--cobalt)}.project-modal h2{font:500 clamp(48px,5.8vw,88px)/.9 var(--serif);margin:80px 0 22px;letter-spacing:-.06em}.project-modal p{font-size:15px;color:rgba(23,23,23,.68);max-width:360px}.project-modal__details{display:grid;grid-template-columns:78px 1fr;gap:8px 16px;margin:38px 0 24px;padding-top:20px;border-top:1px solid var(--line);font-size:12px}.project-modal__details span{font:10px var(--mono);opacity:.56}.project-modal__details strong{font-weight:500}.project-modal__tags{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 42px}.project-modal__tags span{font:10px var(--mono);border:1px solid var(--line);padding:6px 9px;border-radius:999px}
.favorites-drawer{position:fixed;z-index:40;right:0;top:0;bottom:0;width:min(420px,100%);background:var(--paper);box-shadow:-20px 0 60px rgba(23,23,23,.2);transform:translateX(100%);transition:transform .35s ease;padding:32px 28px}.favorites-drawer.is-open{transform:translateX(0)}.drawer-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:22px}.drawer-head h2{font:500 34px var(--serif);margin:0}.drawer-body{padding-top:20px;display:grid;gap:1px}.favorite-row{display:flex;align-items:center;gap:14px;padding:12px 0;border-bottom:1px solid var(--line)}.favorite-row img{width:64px;height:48px;border-radius:6px}.favorite-row div{flex:1}.favorite-row strong{display:block;font:500 18px var(--serif)}.favorite-row small{font:11px var(--mono);opacity:.55}.favorite-row button{font-size:20px;color:var(--coral)}.drawer-empty{font-size:14px;opacity:.62;padding:40px 0}.toast{position:fixed;left:50%;bottom:26px;transform:translate(-50%,20px);background:var(--ink);color:var(--paper);padding:12px 18px;border-radius:999px;font-size:13px;opacity:0;pointer-events:none;transition:all .3s;z-index:60}.toast.is-visible{opacity:1;transform:translate(-50%,0)}.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}.reveal.is-visible{opacity:1;transform:none}.reveal--delay-1{transition-delay:.12s}.reveal--delay-2{transition-delay:.24s}.reveal--delay-3{transition-delay:.36s}
@media (max-width:1000px){.desktop-nav{display:none}.menu-toggle{display:flex}.hero-orbit__center{width:min(520px,66vw)}.orbit-card{transform:translate(-50%,-50%) rotate(calc(var(--i)*72deg + var(--orbit-angle,0deg))) translateY(clamp(-270px,-24vh,-160px)) rotate(calc(var(--i)*-72deg - var(--orbit-angle,0deg)))}.story-card{grid-template-columns:1fr 1fr}.story-card__body{padding:38px}.story-card__body h3{font-size:46px}.project-list{grid-template-columns:1fr}.insight-section__intro{grid-template-columns:1fr 1.5fr}.insight-section__intro p{grid-column:2}.stack-section__head{width:38vw}.stack-stage{left:24vw}.stack-card{width:70vw}.contact-section{grid-template-columns:1fr}.contact-section__visual{min-height:450px}.project-modal{grid-template-columns:1fr;height:min(760px,calc(100vh - 36px))}.project-modal__media{min-height:280px;max-height:330px}.project-modal__body{padding:34px 30px 38px}.project-modal h2{margin-top:36px}}
@media (max-width:640px){body{font-size:15px}.site-header{height:68px;padding:0 18px}.header-actions .pill-btn--solid{display:none}.hero-orbit{height:245vh}.hero-orbit__topline{top:94px;left:18px;right:18px;font-size:9px}.hero-orbit__center{top:48%;width:calc(100% - 36px)}.hero-orbit h1{font-size:clamp(62px,19vw,104px)}.hero-orbit__intro{margin-top:28px;max-width:285px}.hero-orbit__footer{left:18px;right:18px;font-size:9px}.scroll-line{width:50px}.orbit-card{width:110px;height:150px;border-radius:14px;transform:translate(-50%,-50%) rotate(calc(var(--i)*72deg + var(--orbit-angle,0deg))) translateY(-160px) rotate(calc(var(--i)*-72deg - var(--orbit-angle,0deg)))}.orbit-card--1{width:145px;height:205px}.orbit-card--2{width:105px;height:142px}.orbit-card--3{width:112px;height:155px}.orbit-card--4{width:100px;height:140px}.orbit-card--5{width:108px;height:150px}.hero-portal{width:72px;height:72px;font-size:9px}.story-section{padding:90px 18px 120px;min-height:auto}.story-section__head{margin-bottom:70px}.story-section h2,.work-header h2,.insight-section h2,.stack-section h2,.contact-section h2{font-size:58px;margin-top:42px}.story-section__head p{margin:0;max-width:300px}.story-rail{gap:32px}.story-card,.story-card:nth-child(even){display:block;min-height:0;border-radius:16px}.story-card:nth-child(even) .story-card__media{order:initial}.story-card__media{height:260px;min-height:0}.story-card__body{padding:26px 22px 32px;min-height:260px}.story-card__body h3{font-size:39px}.work-section{padding:92px 18px 120px}.work-header{display:block;padding-bottom:34px}.work-header h2{margin-bottom:0}.work-header p{margin-top:28px}.work-toolbar{display:block;padding:18px 0 32px}.filter-group{overflow:auto;flex-wrap:nowrap;padding-bottom:4px;margin-bottom:22px}.filter-chip{white-space:nowrap}.search-box{width:100%}.project-card{min-height:470px;border-radius:16px}.project-card__image{height:230px}.project-card__content{padding:22px}.project-card__title{font-size:36px}.project-card__desc{font-size:13px}.insight-section{padding:92px 18px 108px}.insight-section__intro{display:block}.insight-section__intro p{margin-top:30px}.insight-grid{grid-template-columns:1fr;margin-top:52px;gap:12px}.insight-card{min-height:240px;padding:22px}.insight-card strong{font-size:38px}.stack-section{height:260vh}.stack-section__head{left:18px;top:10vh;width:calc(100% - 36px)}.stack-section__head p{max-width:280px}.stack-stage{left:0;inset-right:0;top:28vh;bottom:0}.stack-card{left:50%;top:48%;width:calc(100% - 36px);height:52vh;min-height:310px;border-radius:16px}.stack-card div{left:18px;right:18px;bottom:18px;display:block}.stack-card strong{display:block;font-size:42px;margin-top:8px}.film-section{padding:80px 18px 100px}.film-frame{height:72vh;min-height:460px;border-radius:16px}.film-overlay{padding:24px 20px}.film-copy h2{font-size:64px;margin-top:36px}.contact-section__visual{min-height:390px;padding:46px 18px}.contact-section__visual p{font-size:64px}.contact-orbit{width:360px;height:360px;right:-160px}.contact-section__form{padding:74px 18px}.contact-section__form h2{font-size:58px;margin-top:42px}.field-row{grid-template-columns:1fr}.site-footer{padding:28px 18px 20px}.footer-top{display:grid;grid-template-columns:1fr auto;padding-bottom:48px}.footer-top p{grid-column:1/-1;order:3;margin:0}.footer-bottom{display:grid;gap:12px}.footer-bottom div{gap:12px}.project-modal{width:100%;height:calc(100vh - 22px);border-radius:15px}.project-modal__media{min-height:220px;max-height:250px}.project-modal__body{padding:26px 22px 30px}.project-modal h2{font-size:50px}.project-modal__details{margin-top:25px}.favorites-drawer{padding:24px 18px}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.orbit-card,.hero-portal,.stack-card,.pill-btn,.project-card,.story-card,.insight-card,.film-video{transition:none!important;animation:none!important}.page-loader__symbol,.page-loader__line:after{animation:none}.page-loader__line:after{transform:translateX(0)}}
.stack-card{transform:translate(-50%,-50%) translateY(calc(var(--stack-y,0px) + var(--i)*18px)) rotate(var(--stack-rotate,0deg)) scale(var(--stack-scale,1))}
@media (max-width:640px){.stack-stage{right:0}}

/* Scroll narrative refinements */
.orbit-card{transform:translate(-50%,-50%) rotate(calc(var(--i)*72deg + var(--orbit-angle,0deg))) translateY(calc(var(--orbit-radius,250px) * -1)) rotate(calc(var(--i)*-72deg - var(--orbit-angle,0deg)));opacity:var(--orbit-fade,1);transition:box-shadow .3s,opacity .35s;}
.hero-portal span{display:none;}
.orbit-card:nth-child(even){filter:saturate(.9) contrast(.98)}
.portal-energy{position:absolute;inset:-10%;z-index:8;pointer-events:none;opacity:var(--energy-opacity,0);transition:opacity .2s;}
.portal-energy:before,.portal-energy:after{content:'';position:absolute;left:50%;top:50%;width:min(62vw,760px);height:min(62vw,760px);border:1px solid rgba(87,160,112,.42);border-radius:50%;transform:translate(-50%,-50%) scale(var(--energy-ring-scale,.55));opacity:.65;}
.portal-energy:after{width:min(38vw,440px);height:min(38vw,440px);border-color:rgba(238,235,227,.34);transform:translate(-50%,-50%) scale(var(--energy-inner-scale,.7));}
.portal-energy span{position:absolute;left:50%;top:50%;width:var(--energy-size,8px);height:var(--energy-size,8px);background:var(--paper);box-shadow:0 0 16px rgba(87,160,112,.6);clip-path:polygon(50% 0,100% 72%,42% 100%,0 34%);will-change:left,top,transform,opacity;}
.portal-energy span:nth-child(3n){background:var(--sky);clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%)}
.portal-energy span:nth-child(5n){background:var(--sun);clip-path:polygon(0 0,100% 30%,70% 100%,18% 70%)}
.portal-bridge{height:min(96svh,920px);width:calc(100% + clamp(40px,14vw,220px));margin-left:calc(-1 * clamp(20px,7vw,110px));margin-top:-100vh;margin-bottom:15vh;position:relative;z-index:8;display:grid;place-items:center;overflow:hidden;background:var(--ink);isolation:isolate;opacity:0;transition:opacity .28s ease;}
.portal-bridge.is-transition-ready{opacity:1;}
.portal-bridge:before{content:'';position:absolute;left:50%;top:50%;width:min(62vw,760px);aspect-ratio:1;border:1px solid rgba(87,160,112,.38);border-radius:50%;transform:translate(-50%,-50%) scale(var(--bridge-ring-scale,.72));opacity:var(--bridge-opacity,.75);}
.portal-bridge:after{content:'';position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 10vw,rgba(238,235,227,.03) 10vw 10.1vw);mask-image:linear-gradient(to bottom,transparent,black 25%,black 75%,transparent);pointer-events:none;}
.portal-bridge__label,.portal-bridge__hint{position:absolute;font:11px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:rgba(238,235,227,.58);}
.portal-bridge__label{left:clamp(20px,7vw,110px);top:clamp(28px,8vh,80px);}
.portal-bridge__hint{right:clamp(20px,7vw,110px);bottom:clamp(28px,8vh,80px);}
.portal-bridge__mark{position:relative;z-index:1;display:grid;gap:6px;text-align:center;transform:translateY(var(--bridge-mark-shift,-300px)) scale(var(--bridge-mark-scale,1.08));transition:transform .2s;}
.portal-bridge__mark span{font:11px var(--mono);letter-spacing:.15em;color:var(--sky);}
.portal-bridge__mark strong{font:500 clamp(76px,13vw,190px)/.78 var(--serif);letter-spacing:-.08em;color:var(--paper);}
.story-section__head{position:relative;z-index:1;}
.story-card__body{position:relative;justify-content:flex-start;padding:44px 48px 38px;overflow:hidden;}
.story-card__media{height:540px;min-height:0;}
.story-card__meta{display:flex;justify-content:space-between;gap:16px;font:11px var(--mono);letter-spacing:.08em;color:var(--cobalt);text-transform:uppercase;}
.story-card__body h3{max-width:540px;margin:30px 0 18px;font-size:clamp(38px,4.2vw,64px);}
.story-card__body p{max-width:340px;}
.story-card__facts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:34px;padding-top:20px;border-top:1px solid var(--line);}
.story-card__facts span{display:grid;gap:6px;color:rgba(23,23,23,.62);}
.story-card__facts small{font:10px var(--mono);text-transform:uppercase;letter-spacing:.08em;opacity:.6;}
.story-card__facts strong{font:500 14px var(--sans);}
.story-card__arrow{position:absolute;right:34px;top:32px;font:28px var(--sans);font-weight:400;color:var(--ink);transition:transform .25s;}
.story-card:hover .story-card__arrow{transform:translate(4px,-4px);}
.story-card--b .story-card__meta,.story-card--b .story-card__body>span{color:var(--ink);}
.story-card--b .story-card__facts{border-color:rgba(23,23,23,.3);}
.story-card--c .story-card__meta{color:var(--ink);}

.method-section{padding:16vh clamp(20px,7vw,110px) 18vh;background:var(--sky);color:var(--ink);}
.method-section__intro{display:grid;grid-template-columns:1fr 1.4fr 1fr;gap:28px;align-items:end;}
.method-section__intro h2{font:500 clamp(54px,7.8vw,118px)/.88 var(--serif);letter-spacing:-.06em;margin:0;}
.method-section__intro h2 em{font-style:normal;color:var(--ink-soft);}
.method-section__intro p{max-width:280px;margin:0 0 10px;font-size:14px;}
.method-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:78px;}
.method-card{min-height:390px;border-radius:20px;padding:24px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden;transition:transform .35s,box-shadow .35s;}
.method-card:hover{transform:translateY(-10px) rotate(-1deg);box-shadow:0 24px 48px rgba(23,23,23,.18);}
.method-card__top{display:flex;justify-content:space-between;align-items:flex-start;font:11px var(--mono);letter-spacing:.08em;}
.method-card__top i{font:500 42px var(--serif);font-style:normal;line-height:.8;opacity:.32;}
.method-card__body{margin-top:auto;}
.method-card__body strong{display:block;font:500 clamp(30px,3vw,48px)/.92 var(--serif);letter-spacing:-.05em;max-width:230px;}
.method-card__body p{font-size:13px;line-height:1.55;max-width:230px;margin:18px 0 24px;opacity:.72;}
.method-card dl{display:grid;gap:8px;border-top:1px solid currentColor;padding-top:14px;margin:0;opacity:.72;}
.method-card dl div{display:flex;justify-content:space-between;gap:12px;font-size:12px;}
.method-card dt{font:10px var(--mono);text-transform:uppercase;opacity:.7;}
.method-card dd{margin:0;text-align:right;}
.method-card--dark{background:var(--ink-soft);color:var(--paper);}
.method-card--light{background:var(--leaf);color:var(--ink);}
.method-card--accent{background:var(--cobalt);color:var(--paper);}
.method-card--paper{background:var(--paper);color:var(--ink);}

.trace-section{background:var(--ink);}
.trace-section__head{width:min(480px,34vw);}
.trace-section__head h2{max-width:440px;}
.trace-section__head h2 em{color:var(--sky);}
.trace-section__legend{display:flex;gap:8px;flex-wrap:wrap;margin-top:30px;}
.trace-section__legend span{font:10px var(--mono);border:1px solid rgba(238,235,227,.28);padding:7px 9px;border-radius:999px;color:rgba(238,235,227,.68);}
.trace-card{background:var(--ink-soft);}
.trace-card:after{background:linear-gradient(to top,rgba(23,23,23,.88),transparent 62%);}
.trace-card__caption{position:absolute;left:28px;right:28px;bottom:24px;z-index:1;display:block!important;}
.trace-card__caption span{display:block;font:11px var(--mono);letter-spacing:.08em;color:rgba(238,235,227,.68);}
.trace-card__caption strong{display:block;margin-top:9px;font:500 clamp(34px,4vw,64px)/.9 var(--serif);letter-spacing:-.05em;color:var(--paper);}
.trace-card__caption p{max-width:280px;margin:14px 0 0;font-size:13px;color:rgba(238,235,227,.7);}

@media (max-width:1000px){
  .method-section__intro{grid-template-columns:1fr 1.4fr;}
  .method-section__intro p{grid-column:2;}
  .method-grid{grid-template-columns:repeat(2,1fr);}
  .trace-section__head{width:38vw;}
  .story-card__body{padding:38px;}
}
@media (max-width:640px){
  .portal-energy{inset:-22%;}
  .portal-energy:before{width:100vw;height:100vw;}
  .portal-energy:after{width:70vw;height:70vw;}
  .portal-bridge{height:82svh;width:calc(100% + 36px);margin-left:-18px;margin-top:-78vh;margin-bottom:88px;}
  .portal-bridge__label{left:18px;top:30px;font-size:9px;}
  .portal-bridge__hint{right:18px;bottom:30px;font-size:9px;}
  .portal-bridge__mark strong{font-size:96px;}
  .story-card__body{padding:26px 22px 30px;min-height:330px;}
  .story-card__meta{font-size:9px;}
  .story-card__body h3{margin:24px 0 14px;font-size:39px;}
  .story-card__facts{gap:6px;padding-top:16px;}
  .story-card__facts strong{font-size:12px;}
  .story-card__arrow{right:20px;top:23px;font-size:24px;}
  .method-section{padding:92px 18px 108px;}
  .method-section__intro{display:block;}
  .method-section__intro p{margin-top:30px;}
  .method-grid{grid-template-columns:1fr;margin-top:52px;gap:12px;}
  .method-card{min-height:280px;padding:22px;border-radius:16px;}
  .method-card__body strong{font-size:39px;}
  .method-card__body p{max-width:280px;}
  .trace-section__head{left:18px;width:calc(100% - 36px);}
  .trace-section__legend{margin-top:22px;}
  .trace-card__caption{left:18px;right:18px;bottom:18px;}
  .trace-card__caption strong{font-size:42px;}
  .trace-card__caption p{font-size:12px;margin-top:10px;}
}

/* Current interaction pass: offset editorial cards and directional trace entry. */
.site-header.is-portal-active{opacity:0;pointer-events:none;transition:opacity .22s ease;}
.hero-portal span{display:none!important}
.story-card--a{--story-shift:-3%;--story-tilt:-1.8deg;width:91%;border-radius:34px 12px 28px 18px}
.story-card--b{--story-shift:4%;--story-tilt:1.6deg;width:84%;justify-self:end;border-radius:14px 32px 18px 28px}
.story-card--c{--story-shift:-1%;--story-tilt:-1deg;width:88%;margin-left:6%;border-radius:22px 14px 36px 12px}
.story-card.reveal{transform:translateX(var(--story-shift,0)) rotate(var(--story-tilt,0))}
.project-card:nth-child(odd){--project-y:-18px;--project-tilt:-1.2deg;border-radius:30px 14px 22px 12px}
.project-card:nth-child(even){--project-y:26px;--project-tilt:1.4deg;border-radius:14px 28px 12px 24px}
.project-card{transform:translateY(var(--project-y,0px)) rotate(var(--project-tilt,0deg));transition:transform .45s cubic-bezier(.2,.7,.2,1),box-shadow .35s}
.project-card.reveal{transform:translateY(var(--project-y,0px)) rotate(var(--project-tilt,0deg))}
.project-card:hover{transform:translateY(calc(var(--project-y,0px) - 10px)) rotate(0deg)}
.project-card.reveal:hover{transform:translateY(calc(var(--project-y,0px) - 10px)) rotate(0deg)}
.stack-card{transform:translate(-50%,-50%) translateX(var(--stack-x,0px)) translateY(calc(var(--stack-y,0px) + var(--i)*18px)) rotate(var(--stack-rotate,0deg)) scale(var(--stack-scale,1))}
@media (max-width:640px){
  .story-card--a,.story-card--b,.story-card--c{width:100%;margin-left:0;justify-self:stretch;transform:none;border-radius:16px}
  .story-card.reveal{transform:none}
  .project-card:nth-child(odd),.project-card:nth-child(even),.project-card{transform:none;border-radius:16px}
}

/* Resume content pass: career detail, project taxonomy, method route and eight-frame life sequence. */
.orbit-card figcaption,.media-placeholder-label{position:absolute;z-index:2;font:9px var(--mono);text-transform:uppercase;color:var(--paper);background:rgba(23,23,23,.72);padding:6px 8px}
.orbit-card figcaption{left:10px;bottom:10px}
.hero-orbit h1 em{display:block;font-size:.78em;white-space:nowrap}
.story-section{min-height:310vh}
.career-rail{gap:18vh}
.story-card--d{--story-shift:5%;--story-tilt:1.3deg;width:86%;justify-self:end;border-radius:16px 38px 14px 26px;background:var(--mist)}
.story-card--d .story-card__media{order:2}
.story-card__media{position:relative}
.media-placeholder-label{left:18px;bottom:16px}
.story-card__body h3{font-size:clamp(34px,3.8vw,60px);max-width:580px}
.career-role{font:500 13px var(--mono);color:var(--cobalt)!important;max-width:460px!important;margin-bottom:13px!important}
.career-card__open{margin-top:auto;padding-top:24px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);font:11px var(--mono);text-transform:uppercase}
.career-card__open b{font-size:22px;font-weight:400;transition:transform .25s}
.career-card__open:hover b{transform:translate(4px,-4px)}
.project-card__title{font-size:clamp(28px,2.7vw,44px)}
.project-modal__body{overflow-y:auto}
.project-modal h2{margin:42px 0 18px;font-size:clamp(42px,4.7vw,72px)}
.project-modal__bullets{margin:20px 0 0;padding:18px 0 0 18px;border-top:1px solid var(--line);display:grid;gap:9px;font-size:13px;color:rgba(23,23,23,.7)}
.project-modal__details{margin-top:24px}
.project-modal__tags{margin-bottom:26px}

.method-section{position:relative;overflow:hidden;min-height:1050px}
.method-section__intro{grid-template-columns:.75fr 1.8fr .75fr}
.method-section:before{content:'';position:absolute;width:540px;height:540px;border:1px solid rgba(23,23,23,.18);border-radius:50%;right:-220px;top:-220px}
.method-route{position:relative;max-width:1180px;min-height:690px;margin:90px auto 0;display:grid;grid-template-columns:1fr 300px 1fr;grid-template-rows:1fr 1fr;gap:38px 64px;align-items:center}
.method-route__line{position:absolute;inset:7% 20%;border:1px solid rgba(23,23,23,.32);border-radius:50%;transform:rotate(-7deg)}
.method-route__line:before,.method-route__line:after{content:'';position:absolute;width:9px;height:9px;border-radius:50%;background:var(--ink)}
.method-route__line:before{left:8%;top:17%}.method-route__line:after{right:8%;bottom:17%}
.method-route__line span{position:absolute;inset:13%;border:1px solid rgba(23,23,23,.15);border-radius:50%}
.method-route__core{grid-column:2;grid-row:1/3;place-self:center;width:270px;aspect-ratio:1;border-radius:50%;background:var(--ink-soft);color:var(--paper);display:flex;flex-direction:column;justify-content:center;padding:36px;position:relative;z-index:2;box-shadow:0 30px 70px rgba(23,23,23,.22)}
.method-route__core span{font:10px var(--mono);color:var(--sky)}
.method-route__core strong{font:500 48px/.9 var(--serif);margin-top:20px}
.method-route__core i{position:absolute;right:36px;bottom:32px;font-size:26px;font-style:normal;color:var(--sky)}
.method-stop{position:relative;z-index:2;padding:10px 0;max-width:330px}
.method-stop--2,.method-stop--4{justify-self:end}
.method-stop__index{font:10px var(--mono);text-transform:uppercase}
.method-stop>b{position:absolute;right:0;top:-8px;font:500 64px/.8 var(--serif);opacity:.14}
.method-stop h3{font:500 clamp(34px,3.3vw,52px)/.92 var(--serif);margin:26px 0 16px}
.method-stop p{font-size:14px;max-width:290px;margin:0;opacity:.75}
.method-stop small{display:block;margin-top:24px;padding-top:12px;border-top:1px solid rgba(23,23,23,.26);font:10px var(--mono);text-transform:uppercase}

.stack-section{height:820vh}
.stack-card{height:min(58vh,560px);width:min(60vw,860px);transition:box-shadow .35s}
.stack-card--5{--i:4;--stack-rotate:-2deg}.stack-card--6{--i:5;--stack-rotate:1.5deg}.stack-card--7{--i:6;--stack-rotate:-1deg}.stack-card--8{--i:7;--stack-rotate:2.5deg}

.film-section{padding:clamp(18px,3vh,42px) clamp(20px,7vw,110px) 18vh}
.film-frame--irregular{width:calc(100% + clamp(40px,14vw,220px));height:min(86vh,860px);min-height:560px;margin-left:calc(clamp(20px,7vw,110px) * -1);margin-right:0;border-radius:0;clip-path:polygon(4% 0,96% 3%,100% 82%,91% 100%,0 94%,2% 13%);box-shadow:none}
.film-frame--irregular:before{content:'ULTIVOX / PERSONAL FILM';position:absolute;z-index:3;right:28px;top:24px;color:rgba(238,235,227,.72);font:9px var(--mono)}
.film-frame--irregular .film-copy h2{font-size:clamp(48px,7vw,104px);max-width:790px}

@media (max-width:1000px){
  .story-card--d{width:90%}
  .method-section{min-height:1220px}
  .method-route{grid-template-columns:1fr 230px 1fr;gap:42px 32px}
  .method-route__core{width:220px;padding:28px}.method-route__core strong{font-size:40px}
  .stack-section{height:760vh}.stack-card{width:70vw}
  .film-frame--irregular{width:calc(100% + 14vw);margin-left:-7vw;height:min(82vh,760px);min-height:520px}
}

@media (max-width:640px){
  .story-section{min-height:auto}.career-rail{gap:38px}
  .story-card--a,.story-card--b,.story-card--c,.story-card--d{width:100%;margin-left:0;justify-self:stretch;transform:none;border-radius:16px}
  .story-card--d .story-card__media{order:initial}
  .story-card__body h3{font-size:34px;margin-right:20px}
  .career-role{font-size:10px!important}
  .career-card__open{margin-top:24px}
  .project-modal__body{padding-bottom:36px}.project-modal h2{font-size:42px;margin-top:26px}.project-modal__bullets{font-size:12px}
  .method-section{min-height:auto}
  .method-route{display:grid;grid-template-columns:56px 1fr;grid-template-rows:none;gap:0 18px;min-height:0;margin-top:62px}
  .method-route__line{left:27px;right:auto;top:20px;bottom:20px;width:1px;border:0;border-left:1px solid rgba(23,23,23,.28);border-radius:0;transform:none}
  .method-route__line span{display:none}.method-route__line:before{left:-5px;top:0}.method-route__line:after{right:auto;left:-5px;bottom:0}
  .method-route__core{grid-column:1/3;grid-row:auto;width:190px;justify-self:center;margin:18px 0 44px;padding:26px}.method-route__core strong{font-size:37px}
  .method-stop,.method-stop--2,.method-stop--4{grid-column:2;justify-self:stretch;max-width:none;padding:14px 0 54px}.method-stop>b{left:-68px;right:auto;top:14px;font-size:44px;opacity:.34}
  .method-stop h3{font-size:37px}.method-stop p{max-width:100%}
  .method-stop--1{grid-row:1}.method-stop--2{grid-row:2}.method-route__core{grid-row:3}.method-stop--3{grid-row:4}.method-stop--4{grid-row:5}
  .stack-section{height:680vh}.stack-stage{top:31vh}.stack-card{width:calc(100% - 36px);height:48vh;min-height:300px}
  .film-section{padding:28px 18px 100px}
  .film-frame--irregular{width:calc(100% + 36px);height:76vh;min-height:520px;margin-left:-18px;margin-right:0;clip-path:polygon(3% 0,97% 2%,100% 88%,90% 100%,0 95%,2% 10%)}
  .film-frame--irregular .film-overlay{padding:38px 22px 26px}.film-frame--irregular .film-copy h2{font-size:48px;margin-top:48px}
}

@media (prefers-reduced-motion:reduce){
  .method-route__core,.method-stop{transition:none!important}
}

/* User media and opening hierarchy */
.brand-cluster{display:flex;align-items:center;gap:18px;min-width:0}
.brand-timeline{font:10px var(--mono);letter-spacing:.08em;color:rgba(23,23,23,.55);white-space:nowrap;border-left:1px solid var(--line);padding-left:18px;transition:color .25s,transform .25s}
.brand-cluster:hover .brand-timeline{color:var(--cobalt);transform:translateX(3px)}
.header-context{font:10px var(--mono);letter-spacing:.08em;color:rgba(23,23,23,.58);white-space:nowrap;transition:color .25s,letter-spacing .25s}
.header-context:hover{color:var(--cobalt);letter-spacing:.12em}
.desktop-nav a{position:relative;display:inline-flex;align-items:center;min-height:42px}
.desktop-nav a:after{content:'';position:absolute;left:0;right:100%;bottom:4px;height:1px;background:var(--cobalt);transition:right .28s ease}
.desktop-nav a:hover:after,.desktop-nav a:focus-visible:after{right:0}
.desktop-nav a:focus-visible,.pill-btn:focus-visible,.menu-toggle:focus-visible{outline:2px solid var(--cobalt);outline-offset:4px}
.hero-orbit__sticky{--hero-video-opacity:.82}
.hero-orbit__poster,.hero-orbit__video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none}
.hero-orbit__poster{z-index:-4;opacity:1;filter:saturate(.94) contrast(1.04) brightness(.96);transform:scale(1.002);transition:opacity .65s cubic-bezier(.2,.7,.2,1)}
.hero-orbit__video{z-index:-3;opacity:0;filter:saturate(.94) contrast(1.04) brightness(.96);transition:opacity .65s cubic-bezier(.2,.7,.2,1)}
.hero-orbit__sticky.is-video-ready .hero-orbit__video{opacity:var(--hero-video-opacity)}
.hero-orbit__sticky.is-video-ready .hero-orbit__poster{opacity:0}
.hero-orbit__sticky.is-video-error .hero-orbit__video{opacity:0}
.hero-orbit__sticky.is-video-error .hero-orbit__poster{opacity:1}
.hero-orbit__wash{background:linear-gradient(115deg,rgba(238,235,227,.76),rgba(238,235,227,.22) 48%,rgba(23,23,23,.14)),radial-gradient(circle at 62% 42%,rgba(87,160,112,.22),transparent 44%);}
.hero-orbit h1{font-size:clamp(56px,7.1vw,116px);line-height:.84;text-wrap:balance;text-shadow:0 0 0 rgba(65,119,93,0);animation:heroTitleBreathe 5.5s ease-in-out infinite}
.hero-orbit h1 em{font-size:.74em;white-space:normal;color:var(--cobalt);text-shadow:0 10px 34px rgba(65,119,93,.14)}
.hero-orbit__intro{color:rgba(23,23,23,.8);text-shadow:0 1px 18px rgba(238,235,227,.45)}
@keyframes heroTitleBreathe{0%,100%{text-shadow:0 0 0 rgba(65,119,93,0);filter:brightness(.96)}50%{text-shadow:0 12px 32px rgba(65,119,93,.16);filter:brightness(1.06)}}
.film-frame--irregular .film-video{opacity:.9}
@media (max-width:1200px){.header-context{font-size:9px}.brand-timeline{font-size:9px}.desktop-nav{gap:20px}}
@media (max-width:1000px){.header-context{display:none}.brand-timeline{font-size:9px}.brand-cluster{gap:12px}.hero-orbit h1{font-size:clamp(54px,8.4vw,92px)}}
@media (max-width:640px){.brand-timeline{display:none}.hero-orbit__sticky{--hero-video-opacity:.68}.hero-orbit h1{font-size:clamp(48px,14vw,72px);line-height:.86}.hero-orbit h1 em{font-size:.7em}.hero-orbit__intro{font-size:13px}.desktop-nav a:after{display:none}}
@media (prefers-reduced-motion:reduce){.hero-orbit h1{animation:none}.brand-cluster:hover .brand-timeline{transform:none}.desktop-nav a:after{transition:none}}

/* Opening composition: keep the orbit clear while the message frames it. */
.hero-orbit__center{inset:0;left:0;top:0;width:100%;height:100%;transform:scale(var(--hero-center-scale,1));text-align:left;pointer-events:none}
.hero-orbit__center h1{position:static;margin:0;width:100%;height:100%;font-size:clamp(48px,6.4vw,106px);line-height:.84;letter-spacing:-.07em}
.hero-title__left,.hero-title__right{position:absolute;display:block;pointer-events:auto;animation:heroColumnIn .9s cubic-bezier(.2,.7,.2,1) both}
.hero-title__left,.hero-title__right{writing-mode:vertical-rl;text-orientation:mixed;white-space:nowrap;font-size:clamp(36px,4.4vw,72px);line-height:.92}
.hero-title__left{left:clamp(14px,3vw,44px);top:19%;color:var(--ink-soft)}
.hero-title__right{right:clamp(14px,3vw,44px);top:24%;text-align:left}
.hero-title__left br,.hero-title__right br{display:none}
.hero-title__right em{display:block;font-size:.74em;line-height:.88;white-space:nowrap}
.hero-title__support{position:absolute;inset:0;pointer-events:none}
.hero-title__support .hero-orbit__intro{position:absolute;left:clamp(92px,8vw,120px);bottom:8vh;width:min(210px,16vw);margin:0;text-align:left;pointer-events:auto}
.hero-title__support .circle-link{position:absolute;right:clamp(22px,6vw,92px);bottom:12vh;pointer-events:auto}
@keyframes heroColumnIn{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
.hero-title__right{animation-delay:.12s}
.stack-section{height:560vh}
.stack-card{transition:transform .34s cubic-bezier(.22,.61,.36,1),box-shadow .35s}
@media (max-width:1000px){
  .hero-orbit__center h1{font-size:clamp(44px,7.8vw,82px)}
  .hero-title__left{left:clamp(12px,2vw,26px);top:20%}
  .hero-title__right{right:clamp(12px,2vw,26px);top:25%}
  .hero-title__support .hero-orbit__intro{left:clamp(70px,8vw,100px);bottom:8vh;width:190px}
  .hero-title__support .circle-link{right:clamp(18px,4vw,50px);bottom:10vh}
  .stack-section{height:500vh}
}
@media (max-width:640px){
  .hero-orbit__center{inset:auto;left:50%;top:48%;width:calc(100% - 36px);height:auto;transform:translate(-50%,-50%) scale(var(--hero-center-scale,1));text-align:center}
  .hero-orbit__center h1{height:auto;font-size:clamp(48px,14vw,72px);line-height:.86}
  .hero-title__left,.hero-title__right{position:static;display:block;text-align:center;writing-mode:horizontal-tb;white-space:normal;font-size:inherit;line-height:inherit;animation:none}
  .hero-title__left br,.hero-title__right br{display:inline}
  .hero-title__right{margin-top:12px}
  .hero-title__right em{font-size:.7em;white-space:normal}
  .hero-title__support{position:static}
  .hero-title__support .hero-orbit__intro{position:static;width:auto;max-width:285px;margin:28px auto 26px;text-align:center}
  .hero-title__support .circle-link{position:static}
  .stack-section{height:470vh}
  .stack-card{transition-duration:.28s}
}
@media (prefers-reduced-motion:reduce){
  .hero-title__left,.hero-title__right{animation:none}
  .stack-card{transition:none}
}

/* Opening media pass: let the background film read through while preserving text contrast. */
.hero-orbit__video{filter:saturate(.94) contrast(1.04) brightness(.96)}
.hero-orbit__wash{background:linear-gradient(115deg,rgba(238,235,227,.34),rgba(238,235,227,.08) 48%,rgba(23,23,23,.1)),radial-gradient(circle at 62% 42%,rgba(87,160,112,.1),transparent 44%)}
.hero-orbit__wash:after{opacity:.09}

/* The orbit cards breathe through a registered length variable, so JS remains the sole owner of transform. */
@property --orbit-breathe{syntax:'<length>';inherits:false;initial-value:0px}
.orbit-card{cursor:pointer;--orbit-breathe:0px;animation:orbitCardBreathe 5.8s ease-in-out infinite;transition:box-shadow .3s,opacity .35s,filter .3s;outline:none}
.orbit-card--1{border-radius:32px 12px 28px 16px}
.orbit-card--2{border-radius:12px 34px 16px 28px}
.orbit-card--3{border-radius:48% 18% 42% 22% / 24% 42% 20% 46%}
.orbit-card--4{border-radius:14px 42px 18px 30px}
.orbit-card--5{border-radius:26px 10px 38px 12px;clip-path:polygon(6% 0,94% 4%,100% 91%,86% 100%,0 94%,3% 12%)}
.orbit-card--1{animation-delay:-.7s}.orbit-card--2{animation-delay:-2.1s}.orbit-card--3{animation-delay:-3.4s}.orbit-card--4{animation-delay:-4.6s}.orbit-card--5{animation-delay:-1.5s}
.orbit-card:hover,.orbit-card:focus-visible{box-shadow:0 30px 80px rgba(23,23,23,.32);filter:saturate(1.08) contrast(1.04)}
.orbit-card:focus-visible{outline:2px solid var(--cobalt);outline-offset:6px}
@keyframes orbitCardBreathe{0%,100%{--orbit-breathe:-5px}50%{--orbit-breathe:7px}}
.orbit-card{transform:translate(-50%,-50%) rotate(calc(var(--i)*72deg + var(--orbit-angle,0deg))) translateY(calc((var(--orbit-radius,250px) * -1) + var(--orbit-breathe))) rotate(calc(var(--i)*-72deg - var(--orbit-angle,0deg)))}
@media (max-width:640px){.hero-orbit__poster,.hero-orbit__video{filter:saturate(.9) contrast(1.02) brightness(.96)}.hero-orbit__wash{background:linear-gradient(115deg,rgba(238,235,227,.28),rgba(238,235,227,.06) 48%,rgba(23,23,23,.08)),radial-gradient(circle at 62% 42%,rgba(87,160,112,.08),transparent 48%)}.orbit-card{animation-duration:6.4s}.orbit-card--5{clip-path:polygon(5% 0,95% 3%,100% 92%,88% 100%,0 95%,3% 12%)}}
@media (prefers-reduced-motion:reduce){.orbit-card{animation:none;--orbit-breathe:0px}.hero-orbit__poster,.hero-orbit__video{transition:none}}

/* Atmosphere and editorial content pass. */
.story-section{overflow:hidden;background:radial-gradient(circle at 50% 18%,rgba(65,119,93,.16),transparent 32%),linear-gradient(135deg,#171717 0%,#131918 54%,#171717 100%)}
.story-particles{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden;opacity:.88}
.story-particles:before{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(87,160,112,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(87,160,112,.06) 1px,transparent 1px);background-size:96px 96px;mask-image:linear-gradient(to bottom,transparent,black 12%,black 88%,transparent)}
.story-particles span{position:absolute;width:var(--particle-size);height:var(--particle-size);border-radius:50%;background:radial-gradient(circle,#f3f0e8 0 18%,rgba(87,160,112,.9) 35%,transparent 72%);box-shadow:0 0 12px rgba(87,160,112,.7),0 0 24px rgba(238,235,227,.22);animation:storyParticleFloat var(--particle-duration) ease-in-out var(--particle-delay) infinite alternate}
@keyframes storyParticleFloat{0%{transform:translate3d(0,0,0) scale(.7);opacity:.28}50%{opacity:.92}100%{transform:translate3d(var(--particle-drift-x),var(--particle-drift-y),0) scale(1.3);opacity:.45}}
.story-section__head,.career-rail{position:relative;z-index:2}
.portal-energy:before,.portal-energy:after{box-shadow:0 0 26px rgba(87,160,112,.38),0 0 74px rgba(238,235,227,.12)}
.portal-energy span{background:#f8f6ef;box-shadow:0 0 10px rgba(238,235,227,.95),0 0 26px rgba(87,160,112,.9),0 0 48px rgba(65,119,93,.55);animation:portalSpark var(--spark-duration,3.2s) ease-in-out var(--spark-delay,0s) infinite alternate}
.portal-energy span:nth-child(4n){background:var(--sky)}
.portal-energy span:nth-child(7n){width:calc(var(--energy-size,8px) * 1.5);height:calc(var(--energy-size,8px) * 1.5);background:#fff}
.portal-energy span:nth-child(9n){width:calc(var(--energy-size,8px) * 1.35);height:calc(var(--energy-size,8px) * 1.35);background:#fff;box-shadow:0 0 18px rgba(255,255,255,.98),0 0 42px rgba(87,160,112,.95),0 0 74px rgba(238,235,227,.55)}
@keyframes portalSpark{0%{filter:brightness(.8);box-shadow:0 0 8px rgba(238,235,227,.65),0 0 18px rgba(87,160,112,.6)}100%{filter:brightness(1.9);box-shadow:0 0 16px rgba(238,235,227,1),0 0 38px rgba(87,160,112,.95),0 0 64px rgba(65,119,93,.65)}}

/* Career cards use coordinate maps in place of generic media placeholders. */
.career-card__map{position:relative;display:block;min-height:540px;width:100%;border:0;padding:0;overflow:hidden;text-align:left;color:var(--paper);background:radial-gradient(circle at var(--map-x) var(--map-y),rgba(87,160,112,.2),transparent 18%),linear-gradient(140deg,#193130,#101716 66%,#171717);cursor:pointer}
.career-card__map:before{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(238,235,227,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(238,235,227,.09) 1px,transparent 1px);background-size:34px 34px;opacity:.7;transform:rotate(-7deg) scale(1.15)}
.career-card__map:after{content:'';position:absolute;inset:16px;border:1px solid rgba(238,235,227,.2);border-radius:inherit;pointer-events:none}
.career-map__grid,.career-map__rings{position:absolute;inset:0;pointer-events:none}
.career-map__grid:before,.career-map__grid:after{content:'';position:absolute;left:var(--map-x);top:0;width:1px;height:100%;background:rgba(87,160,112,.35);transform:rotate(12deg)}
.career-map__grid:after{left:0;top:var(--map-y);width:100%;height:1px;transform:rotate(-9deg)}
.career-map__rings:before,.career-map__rings:after{content:'';position:absolute;left:var(--map-x);top:var(--map-y);width:190px;height:190px;border:1px solid rgba(87,160,112,.45);border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 24px rgba(87,160,112,.07),0 0 0 52px rgba(87,160,112,.04)}
.career-map__rings:after{width:9px;height:9px;border:0;background:var(--paper);box-shadow:0 0 0 7px rgba(87,160,112,.25),0 0 28px 8px rgba(87,160,112,.75);animation:mapPulse 2.6s ease-in-out infinite}
@keyframes mapPulse{50%{transform:translate(-50%,-50%) scale(1.45);opacity:.65}}
.career-map__pin{position:absolute;left:var(--map-x);top:var(--map-y);width:18px;height:18px;border:1px solid var(--paper);border-radius:50% 50% 50% 0;transform:translate(-50%,-75%) rotate(-45deg);z-index:1}
.career-map__city{position:absolute;left:30px;top:28px;font:500 clamp(48px,6vw,88px)/.86 var(--serif);letter-spacing:-.05em;z-index:1}
.career-map__coordinates{position:absolute;left:32px;bottom:52px;font:10px var(--mono);letter-spacing:.08em;color:rgba(238,235,227,.7);z-index:1}
.career-map__note{position:absolute;left:32px;bottom:28px;font-size:12px;color:rgba(238,235,227,.58);z-index:1}
.career-map__open{position:absolute;right:28px;top:30px;font:10px var(--mono);letter-spacing:.08em;color:var(--lime);z-index:1;transition:transform .25s,color .25s}
.career-card__map:hover .career-map__open,.career-card__map:focus-visible .career-map__open{transform:translate(4px,-3px);color:var(--paper)}
.career-card__map:focus-visible{outline:2px solid var(--lime);outline-offset:-5px}
.story-card--b .career-card__map{background:radial-gradient(circle at var(--map-x) var(--map-y),rgba(23,23,23,.2),transparent 20%),linear-gradient(140deg,#57a070,#2f624d 68%,#193130);color:var(--ink)}
.story-card--c .career-card__map{background:radial-gradient(circle at var(--map-x) var(--map-y),rgba(238,235,227,.3),transparent 20%),linear-gradient(140deg,#41775d,#193130 72%,#101716)}
.story-card--d .career-card__map{background:radial-gradient(circle at var(--map-x) var(--map-y),rgba(217,217,217,.24),transparent 20%),linear-gradient(140deg,#8e7e6f,#193130 72%,#101716)}
.story-card__body{position:relative}
.story-card__body:before{content:'FIELD / ' attr(data-index);position:absolute;right:30px;top:28px;font:9px var(--mono);letter-spacing:.12em;color:rgba(23,23,23,.4);transform:rotate(90deg);transform-origin:top right}
.career-card__open{align-self:flex-start;gap:22px;border:0;border-radius:999px;background:var(--ink);color:var(--paper);padding:14px 19px 14px 22px;min-height:50px;transition:transform .3s,background .3s,box-shadow .3s}
.career-card__open:hover,.career-card__open:focus-visible{background:var(--cobalt);box-shadow:0 12px 30px rgba(23,23,23,.22);transform:translateY(-3px)}
.career-card__open b{font-size:20px}

/* Career detail modal: left side is a field note and related-project navigator, never a filler image. */
.project-modal.is-career-detail{grid-template-columns:.88fr 1.12fr}
.project-modal.is-career-detail .project-modal__media{background:radial-gradient(circle at 50% 24%,rgba(87,160,112,.24),transparent 30%),linear-gradient(145deg,#193130,#111716);color:var(--paper);padding:46px 42px;overflow:auto}
.project-modal.is-career-detail .project-modal__media:before{content:'';position:absolute;inset:22px;border:1px solid rgba(238,235,227,.2);border-radius:18px;pointer-events:none}
.career-modal__panel{position:relative;z-index:1;display:flex;flex-direction:column;height:100%;justify-content:flex-end}
.career-modal__eyebrow{font:10px var(--mono);letter-spacing:.14em;color:var(--lime)}
.career-modal__panel>strong{font:500 clamp(36px,4vw,60px)/.9 var(--serif);margin:22px 0 20px;max-width:360px}
.career-modal__panel>p{font-size:14px;line-height:1.75;color:rgba(238,235,227,.68);max-width:360px}
.career-modal__location{display:flex;justify-content:space-between;gap:18px;border-top:1px solid rgba(238,235,227,.2);padding-top:16px;margin-top:24px;font:12px var(--mono)}
.career-modal__location small{color:rgba(238,235,227,.58);text-align:right}
.career-modal__projects{margin-top:28px;padding-top:16px;border-top:1px solid rgba(238,235,227,.2)}
.career-modal__projects>span{font:10px var(--mono);letter-spacing:.12em;color:rgba(238,235,227,.55)}
.career-project-link{width:100%;display:grid;grid-template-columns:1fr auto 18px;gap:12px;align-items:center;padding:11px 0;border-bottom:1px solid rgba(238,235,227,.14);color:var(--paper);text-align:left}
.career-project-link span{font:14px var(--serif)}.career-project-link small{font:9px var(--mono);color:rgba(238,235,227,.5)}.career-project-link b{font-size:16px;color:var(--lime);font-weight:400;transition:transform .2s}.career-project-link:hover b{transform:translate(3px,-3px)}
.career-projects-empty{display:block;margin-top:14px;font-size:12px;color:rgba(238,235,227,.5)}
.project-modal__media[hidden],.project-modal__media img[hidden],.career-modal__panel[hidden],.modal-media__label[hidden]{display:none!important}

/* Project cards carry a quiet self-looping orbit and individual silhouettes. */
.project-card{position:relative;isolation:isolate}
.project-card:before{content:'';position:absolute;right:22px;top:22px;width:68px;height:68px;border:1px solid rgba(65,119,93,.4);border-radius:50%;z-index:1;pointer-events:none;animation:projectLoop 8s linear infinite}
.project-card:after{content:'';position:absolute;right:50px;top:50px;width:8px;height:8px;border-radius:50%;background:var(--cobalt);box-shadow:0 0 0 8px rgba(65,119,93,.1),0 0 18px rgba(65,119,93,.5);z-index:1;pointer-events:none}
.project-card:nth-child(3n){border-radius:18px 34px 12px 30px;transform:translateY(var(--project-y,0px)) rotate(calc(var(--project-tilt,0deg) * -1))}.project-card:nth-child(3n):before{border-radius:16px 50% 50% 50%;animation-direction:reverse}.project-card:nth-child(4n):before{border-radius:38% 62% 58% 42%}
.project-card__content,.project-card__image{position:relative;z-index:2}
@keyframes projectLoop{to{transform:rotate(360deg)}}

/* Life sequence: first frame is present immediately, while each next frame crossfades a blurred backdrop. */
.trace-backdrop{position:absolute;inset:0;z-index:0;overflow:hidden;background:#111716}
.trace-backdrop:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(23,23,23,.9) 0%,rgba(23,23,23,.45) 44%,rgba(23,23,23,.7) 100%),linear-gradient(to bottom,rgba(23,23,23,.3),rgba(23,23,23,.82));z-index:2}
.trace-backdrop__layer{position:absolute;inset:-5%;background-position:center;background-size:cover;filter:blur(18px) saturate(.72) brightness(.62);opacity:0;transform:scale(1.08);transition:opacity 1.15s ease,transform 2.4s ease}
.trace-backdrop__layer.is-active{opacity:.52;transform:scale(1.02)}
.trace-section__head,.stack-stage{z-index:3}
.trace-section__head .section-label{transform:rotate(-2deg);transform-origin:left center}.trace-section__head h2{transform:rotate(1deg);text-shadow:10px 14px 0 rgba(87,160,112,.1)}.trace-section__head p{transform:translateX(14px) rotate(-1deg)}
.trace-section__legend{display:flex;gap:8px;flex-wrap:wrap}.trace-section__legend span{padding:7px 10px;border:1px solid rgba(238,235,227,.2);border-radius:999px;font:9px var(--mono);transform:rotate(-2deg)}.trace-section__legend span:nth-child(2){transform:rotate(2deg);color:var(--sky)}.trace-section__legend span:nth-child(3){transform:rotate(-1deg);opacity:.58}

/* Personal film typography and staggered contact copy. */
.film-copy h2{display:flex;flex-direction:column;gap:clamp(20px,3vw,42px);letter-spacing:0}
.film-title__latin{font:600 clamp(54px,8vw,126px)/.75 var(--sans);letter-spacing:.02em;transform:rotate(-2deg);display:block;text-shadow:0 14px 36px rgba(0,0,0,.32);animation:filmWordFloat 5.5s ease-in-out infinite}
.film-copy h2 em{display:flex;gap:clamp(18px,3.2vw,46px);font-style:normal;color:var(--paper);font-size:clamp(52px,7vw,104px);line-height:.8;white-space:nowrap}
.film-copy h2 em span{display:block}.film-copy h2 em span:first-child{font-family:var(--serif);transform:rotate(2deg)}.film-copy h2 em span:last-child{font-family:var(--sans);font-weight:500;transform:rotate(-1deg);letter-spacing:.06em}.film-copy h2 em span:last-child:before{content:'↗';font:14px var(--mono);vertical-align:top;margin-right:10px;color:var(--lime)}
@keyframes filmWordFloat{50%{transform:rotate(-1deg) translateY(-8px)}}
.contact-section__visual p{display:flex;flex-direction:column;align-items:flex-start;gap:10px;letter-spacing:0}.contact-section__visual p span,.contact-section__visual p em,.contact-section__visual p small,.contact-section__visual p strong{display:block;font-style:normal}.contact-section__visual p span{transform:translateX(4px) rotate(-2deg)}.contact-section__visual p em{color:var(--sky);transform:translateX(48px) rotate(2deg)}.contact-section__visual p small{font:500 clamp(30px,4.5vw,68px)/.9 var(--serif);transform:translateX(16px) rotate(-1deg);color:var(--paper)}.contact-section__visual p strong{font:500 clamp(42px,5.8vw,88px)/.82 var(--serif);transform:translateX(78px) rotate(2.5deg);color:var(--lime)}
@media (max-width:640px){
  .career-card__map{min-height:260px}.career-map__city{left:22px;top:22px;font-size:54px}.career-map__coordinates{left:22px;bottom:40px}.career-map__note{left:22px;bottom:18px}.career-map__open{right:20px;top:22px;font-size:9px}.career-map__rings:before{width:130px;height:130px}
  .project-modal.is-career-detail{grid-template-columns:1fr;height:calc(100vh - 22px)}.project-modal.is-career-detail .project-modal__media{min-height:430px;max-height:none;padding:34px 24px}.career-modal__panel>strong{font-size:42px}.career-modal__location{display:block}.career-modal__location small{display:block;text-align:left;margin-top:7px}.career-project-link{grid-template-columns:1fr 18px}.career-project-link small{display:none}
  .trace-backdrop__layer{filter:blur(14px) saturate(.7) brightness(.55)}.trace-backdrop:after{background:linear-gradient(90deg,rgba(23,23,23,.82),rgba(23,23,23,.5) 54%,rgba(23,23,23,.78))}.trace-section__head p{transform:none}.trace-section__head h2{transform:none}.trace-section__legend{gap:6px}.trace-section__legend span{font-size:8px}
  .film-copy h2 em{display:block;white-space:normal}.film-copy h2 em span{display:inline-block;margin-right:12px}.film-title__latin{font-size:62px}.contact-section__visual p em{transform:translateX(26px) rotate(2deg)}.contact-section__visual p small{transform:translateX(4px) rotate(-1deg)}.contact-section__visual p strong{transform:translateX(36px) rotate(2deg)}
}
@media (prefers-reduced-motion:reduce){.story-particles span,.portal-energy span,.career-map__rings:after,.project-card:before,.film-title__latin{animation:none!important}.trace-backdrop__layer{transition:none}.film-copy h2 em span,.contact-section__visual p span,.contact-section__visual p em,.contact-section__visual p small,.contact-section__visual p strong{transform:none}}

/* Career transition and map pass: warm paper replaces the prior black pause. */
:root{--career-paper:#f3f0e6;--career-paper-deep:#e9e2cf;--career-ink:#193130}
.portal-energy:before,.portal-energy:after{border-color:rgba(25,49,48,.34);box-shadow:0 0 26px rgba(65,119,93,.2),0 0 74px rgba(142,126,111,.14)}
.portal-energy span{background:var(--career-ink);box-shadow:0 0 10px rgba(25,49,48,.55),0 0 25px rgba(87,160,112,.52),0 0 46px rgba(142,126,111,.28)}
.portal-energy span:nth-child(4n){background:var(--cobalt)}.portal-energy span:nth-child(7n),.portal-energy span:nth-child(9n){background:#fffdf6;box-shadow:0 0 15px rgba(255,253,246,.9),0 0 34px rgba(65,119,93,.5),0 0 62px rgba(142,126,111,.34)}
.portal-bridge{height:clamp(390px,54svh,620px);margin-top:-88vh;margin-bottom:clamp(42px,7vh,92px);background:var(--career-paper);color:var(--career-ink);opacity:0;box-shadow:inset 0 -1px rgba(25,49,48,.12)}
.portal-bridge:before{width:min(58vw,700px);border-color:rgba(25,49,48,.25);box-shadow:0 0 0 34px rgba(87,160,112,.055),0 0 70px rgba(142,126,111,.14)}
.portal-bridge:after{background:repeating-linear-gradient(90deg,transparent 0 10vw,rgba(25,49,48,.05) 10vw 10.1vw)}
.portal-bridge__label,.portal-bridge__hint{color:rgba(25,49,48,.62)}
.portal-bridge__mark{transform:translateY(var(--bridge-mark-shift,0px)) scale(var(--bridge-mark-scale,1.04))}
.portal-bridge__mark span{color:var(--cobalt)}.portal-bridge__mark strong{color:var(--career-ink);text-shadow:12px 14px 0 rgba(142,126,111,.14)}
.story-section{min-height:0;padding:12vh clamp(20px,7vw,110px) 15vh;overflow:visible;background:radial-gradient(circle at 82% 7%,rgba(87,160,112,.13),transparent 22%),radial-gradient(circle at 12% 32%,rgba(142,126,111,.12),transparent 26%),var(--career-paper);color:var(--career-ink);position:relative;z-index:9}
.story-particles{opacity:.72}.story-particles:before{background-image:linear-gradient(rgba(25,49,48,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(25,49,48,.08) 1px,transparent 1px)}
.story-particles span{background:radial-gradient(circle,#fffdf6 0 18%,rgba(65,119,93,.82) 36%,transparent 72%);box-shadow:0 0 11px rgba(65,119,93,.52),0 0 22px rgba(142,126,111,.25)}
.story-section .section-label{color:rgba(25,49,48,.62)}.story-section .section-label span:first-child{color:var(--cobalt)}.story-section h2{color:var(--career-ink)}.story-section h2 em{color:var(--cobalt)}.story-section__head{max-width:920px;margin:0 auto 10vh;opacity:1;transform:none}.story-section__head p{color:rgba(25,49,48,.68)}
.career-rail{gap:12vh}.story-card{box-shadow:0 30px 72px rgba(25,49,48,.14)}

/* Each career card displays a live city-level OpenStreetMap view. */
.career-card__map{isolation:isolate;background:#244743}
.career-map__live{position:absolute;inset:0;z-index:0;display:block;overflow:hidden;background:#244743}
.career-map__live:after{content:'';position:absolute;inset:0;background:linear-gradient(145deg,rgba(25,49,48,.2),rgba(25,49,48,.56));pointer-events:none}
.career-map__iframe{display:block;width:100%;height:100%;border:0;pointer-events:none;filter:sepia(.28) saturate(.74) hue-rotate(70deg) brightness(.72) contrast(1.18)}
.career-card__map:before{z-index:1}.career-card__map:after{z-index:5;border-color:rgba(243,240,230,.34)}
.career-map__grid{z-index:2}.career-map__rings{z-index:3}.career-map__pin{z-index:4}.career-map__city,.career-map__coordinates,.career-map__note,.career-map__open,.career-map__attribution{z-index:6}
.career-map__city{color:#fffdf6;text-shadow:0 3px 18px rgba(0,0,0,.38)}.career-map__coordinates{color:rgba(255,253,246,.82)}.career-map__note{color:rgba(255,253,246,.68)}.career-map__open{color:#fffdf6;background:rgba(25,49,48,.7);padding:8px 10px;border-radius:999px}.career-map__attribution{position:absolute;right:30px;bottom:28px;font:8px var(--mono);letter-spacing:.04em;color:rgba(255,253,246,.58)}
.career-modal__map-link{display:inline-flex;align-self:flex-start;margin-top:14px;border:1px solid rgba(238,235,227,.42);border-radius:999px;padding:8px 11px;font:10px var(--mono);letter-spacing:.04em;color:var(--paper);transition:transform .2s,background .2s}.career-modal__map-link:hover,.career-modal__map-link:focus-visible{transform:translateY(-2px);background:rgba(238,235,227,.14)}.career-modal__map-link[hidden]{display:none}

/* Life sequence consumes the complete scroll range: enter, settle, then leave for film. */
.stack-section{height:450vh}.stack-card{opacity:var(--stack-opacity,1);transform:translate(-50%,-50%) translateX(var(--stack-x,0px)) translateY(calc(var(--stack-y,0px) + var(--i)*18px)) rotate(calc(var(--stack-rotate,0deg) + var(--stack-drift,0deg))) scale(var(--stack-scale,1));transition:box-shadow .35s;will-change:transform,opacity}
@media (max-width:1000px){.portal-bridge{height:clamp(370px,56svh,560px);margin-top:-78vh;margin-bottom:56px}.stack-section{height:410vh}}
@media (max-width:640px){.portal-bridge{height:54svh;margin-top:-66vh;margin-bottom:44px}.portal-bridge__mark strong{font-size:82px}.story-section{padding:84px 18px 102px}.story-section__head{margin-bottom:62px}.career-rail{gap:38px}.career-map__attribution{right:20px;bottom:16px;font-size:7px}.career-map__open{right:18px;padding:7px 9px}.stack-section{height:390vh}}

/* Clean career handoff: one shared paper field, without layered portal ornaments. */
.portal-energy{display:none!important}
.portal-bridge{background:var(--career-paper)!important;box-shadow:none!important;transition:opacity .45s ease}
.portal-bridge:before,.portal-bridge:after{display:none!important}
.story-section{background:var(--career-paper)!important}
.story-particles{opacity:0!important}

/* Career cards breathe without replacing their individual silhouettes and offsets. */
@property --career-breathe-y{syntax:'<length>';inherits:false;initial-value:0px}
@property --career-breathe-scale{syntax:'<number>';inherits:false;initial-value:1}
@property --career-breathe-rotate{syntax:'<angle>';inherits:false;initial-value:0deg}
.career-rail .story-card{--career-breathe-y:0px;--career-breathe-scale:1;--career-breathe-rotate:0deg;animation:careerCardBreathe 8.4s ease-in-out infinite;will-change:transform}
.career-rail .story-card.reveal{transform:translateX(var(--story-shift,0)) rotate(calc(var(--story-tilt,0deg) + var(--career-breathe-rotate))) translateY(var(--career-breathe-y)) scale(var(--career-breathe-scale))}
.career-rail .story-card:nth-child(2){animation-delay:-2.1s}.career-rail .story-card:nth-child(3){animation-delay:-4.2s}.career-rail .story-card:nth-child(4){animation-delay:-6.3s}
@keyframes careerCardBreathe{0%,100%{--career-breathe-y:-3px;--career-breathe-scale:.996;--career-breathe-rotate:-.12deg}50%{--career-breathe-y:4px;--career-breathe-scale:1.004;--career-breathe-rotate:.12deg}}
@media (max-width:640px){.career-rail .story-card,.career-rail .story-card.reveal{transform:translateY(var(--career-breathe-y)) scale(var(--career-breathe-scale))}}
@media (prefers-reduced-motion:reduce){.career-rail .story-card{animation:none;--career-breathe-y:0px;--career-breathe-scale:1;--career-breathe-rotate:0deg}}
@media (prefers-reduced-motion:reduce){.stack-card{opacity:1;transform:translate(-50%,-50%) translateX(var(--stack-x,0px)) translateY(calc(var(--stack-y,0px) + var(--i)*18px)) rotate(var(--stack-rotate,0deg)) scale(var(--stack-scale,1))}}

/* Star-shaped handoff: the reference site's four-point mark grows from the orbit, then a full black field closes the corners. */
.hero-portal{inset:auto;left:50%;top:50%;width:var(--portal-size,90px);height:var(--portal-size,90px);border-radius:0;background:transparent;color:var(--ink);transform:translate(-50%,-50%) rotate(var(--portal-rotation,0deg));clip-path:none;contain:none;display:block;opacity:1;isolation:isolate;overflow:visible;will-change:width,height,transform}
.hero-portal:before{content:'';position:absolute;left:50%;top:50%;width:200vmax;height:200vmax;transform:translate(-50%,-50%);background:#171717;opacity:var(--portal-cover-opacity,0);z-index:0;pointer-events:none}
.hero-portal__star{position:relative;z-index:1;display:block;width:100%;height:100%;overflow:visible;opacity:var(--portal-star-opacity,0);filter:none;transform:rotate(-8deg);transform-origin:50% 50%;transition:none}
.hero-portal__star path{fill:#171717}
.portal-welcome{position:absolute;z-index:2;left:50%;top:50%;width:min(88vw,1180px);transform:translate(-50%,-50%) scale(calc(.92 + var(--welcome-progress,0)*.08));display:grid;place-items:center;pointer-events:none;color:var(--paper);opacity:calc(var(--welcome-progress,0)*(1 - var(--welcome-exit,0)));mix-blend-mode:normal;filter:blur(calc(var(--welcome-spread,1)*4px));will-change:opacity,transform,filter}
.portal-welcome:before,.portal-welcome:after{content:'';position:absolute;top:50%;width:clamp(42px,9vw,150px);height:1px;background:linear-gradient(90deg,transparent,rgba(238,235,227,.52));transform:translateY(-50%) scaleX(var(--welcome-progress,0));transform-origin:right}
.portal-welcome:before{right:calc(50% + min(31vw,430px))}.portal-welcome:after{left:calc(50% + min(31vw,430px));transform:translateY(-50%) scaleX(var(--welcome-progress,0)) rotate(180deg)}
.portal-welcome__eyebrow,.portal-welcome__note{position:absolute;font:9px var(--mono);letter-spacing:.22em;color:rgba(238,235,227,.58);white-space:nowrap}
.portal-welcome__eyebrow{left:10%;top:calc(50% - clamp(78px,10vw,135px));transform:translateX(calc(var(--welcome-spread,1)*-30px)) rotate(-4deg)}
.portal-welcome__note{right:8%;top:calc(50% + clamp(72px,9vw,122px));transform:translateX(calc(var(--welcome-spread,1)*28px)) rotate(3deg)}
.portal-welcome strong{display:flex;align-items:baseline;justify-content:center;font:500 clamp(74px,13.4vw,206px)/.72 var(--serif);letter-spacing:-.095em;color:var(--paper);text-transform:uppercase;text-shadow:0 0 36px rgba(238,235,227,.09)}
.portal-welcome strong i{display:inline-block;font-style:normal;transform:translateY(calc(var(--welcome-shift,34px)*var(--welcome-direction,1))) rotate(calc(var(--welcome-spread,1)*var(--welcome-rotate,0deg)));opacity:calc(.3 + var(--welcome-progress,0)*.7)}
.portal-welcome strong i:nth-child(1){--welcome-direction:-.72;--welcome-rotate:-8deg}.portal-welcome strong i:nth-child(2){--welcome-direction:.48;--welcome-rotate:5deg;color:rgba(238,235,227,.72)}.portal-welcome strong i:nth-child(3){--welcome-direction:-.32;--welcome-rotate:-3deg}.portal-welcome strong i:nth-child(4){--welcome-direction:.72;--welcome-rotate:7deg}.portal-welcome strong i:nth-child(5){--welcome-direction:-.52;--welcome-rotate:-5deg;color:var(--lime)}.portal-welcome strong i:nth-child(6){--welcome-direction:.28;--welcome-rotate:4deg}.portal-welcome strong i:nth-child(7){--welcome-direction:-.62;--welcome-rotate:-6deg}
@media (max-width:640px){.portal-welcome{width:94vw}.portal-welcome strong{font-size:clamp(50px,18vw,72px);letter-spacing:-.1em}.portal-welcome__eyebrow,.portal-welcome__note{font-size:6px;letter-spacing:.14em}.portal-welcome__eyebrow{left:3%;top:calc(50% - 58px)}.portal-welcome__note{right:2%;top:calc(50% + 52px)}.portal-welcome:before,.portal-welcome:after{display:none}}

/* A single dark field keeps the bridge and the career cards visually continuous. */
.portal-bridge{background:#171717!important;color:var(--paper)!important;box-shadow:none!important;border:0!important}
.portal-bridge__label,.portal-bridge__hint{color:rgba(238,235,227,.55)!important}
.portal-bridge__mark span{color:var(--lime)!important}.portal-bridge__mark strong{color:var(--paper)!important;text-shadow:none!important}
.story-section{background:#171717!important;color:var(--paper)!important}
.story-section .section-label{color:rgba(238,235,227,.55)!important}.story-section .section-label span:first-child{color:var(--lime)!important}
.story-section h2{color:var(--paper)!important}.story-section h2 em{color:var(--lime)!important}.story-section__head p{color:rgba(238,235,227,.62)!important}
.career-rail .story-card{background:#171717;color:var(--paper);border:1px solid rgba(238,235,227,.18);box-shadow:0 32px 90px rgba(0,0,0,.38)}
.career-rail .story-card--b,.career-rail .story-card--c,.career-rail .story-card--d{background:#171717;color:var(--paper)}
.career-rail .story-card__body{background:#171717;color:var(--paper)}
.career-rail .story-card__meta{color:var(--lime)}.career-rail .story-card__body h3{color:var(--paper)}.career-rail .story-card__body p{color:rgba(238,235,227,.68)}.career-rail .story-card__facts{border-color:rgba(238,235,227,.2)}.career-rail .story-card__facts span{color:rgba(238,235,227,.68)}.career-rail .story-card__facts strong{color:var(--paper)}
.career-rail .career-card__open{background:var(--lime);color:var(--ink);border-color:var(--lime)}.career-rail .career-card__open:hover,.career-rail .career-card__open:focus-visible{background:var(--paper);color:var(--ink)}

/* Small field notes fill the negative space around each card without adding new claims. */
.career-stickers{position:absolute;inset:0;pointer-events:none;z-index:2;font:9px var(--mono);letter-spacing:.1em;text-transform:uppercase}
.career-sticker{position:absolute;padding:8px 10px;border:1px solid rgba(238,235,227,.34);background:rgba(23,23,23,.86);color:rgba(238,235,227,.76);box-shadow:0 10px 24px rgba(0,0,0,.22);white-space:nowrap}
.career-sticker--index{right:28px;top:76px;transform:rotate(6deg)}
.career-sticker--city{left:30px;bottom:28px;color:var(--lime);border-color:rgba(87,160,112,.58);transform:rotate(-4deg)}
.story-card--b .career-sticker--index{transform:rotate(-5deg);border-color:rgba(87,160,112,.58)}
.story-card--c .career-sticker--city{transform:rotate(5deg)}
.story-card--d .career-sticker--index{transform:rotate(3deg)}

@property --career-breathe-y{syntax:'<length>';inherits:false;initial-value:0px}
@property --career-breathe-scale{syntax:'<number>';inherits:false;initial-value:1}
@property --career-breathe-rotate{syntax:'<angle>';inherits:false;initial-value:0deg}
.career-rail .story-card{animation:careerCardBreathe 7.2s ease-in-out infinite;will-change:transform}
@keyframes careerCardBreathe{0%,100%{--career-breathe-y:-6px;--career-breathe-scale:.992;--career-breathe-rotate:-.22deg}50%{--career-breathe-y:7px;--career-breathe-scale:1.008;--career-breathe-rotate:.22deg}}
.career-rail .story-card.reveal{transform:translateX(var(--story-shift,0)) rotate(calc(var(--story-tilt,0deg) + var(--career-breathe-rotate))) translateY(var(--career-breathe-y)) scale(var(--career-breathe-scale))}
@media (max-width:640px){.career-sticker--index{right:18px;top:58px}.career-sticker--city{left:18px;bottom:22px}.career-rail .story-card,.career-rail .story-card.reveal{transform:translateY(var(--career-breathe-y)) scale(var(--career-breathe-scale))}}
@media (prefers-reduced-motion:reduce){.hero-portal__star{transition:none}.portal-welcome{filter:none;transform:translate(-50%,-50%)}.portal-welcome strong i{transform:none}.career-rail .story-card{animation:none;--career-breathe-y:0px;--career-breathe-scale:1;--career-breathe-rotate:0deg}}

/* Career paper cards: light editorial panels dissolve into the black field through soft edges instead of a hard border. */
.career-rail .story-card{background:transparent!important;color:var(--ink)!important;border:0!important;box-shadow:0 0 0 1px rgba(238,235,227,.045),0 34px 110px rgba(0,0,0,.62),0 0 42px rgba(238,235,227,.055)!important}
.career-rail .story-card__body{background:linear-gradient(145deg,#f3f0e6 0%,#eeebe3 66%,#d9d9d9 150%)!important;color:var(--ink)!important}
.career-rail .story-card--b .story-card__body,.career-rail .story-card--d .story-card__body{background:linear-gradient(145deg,#eeebe3 0%,#e7e5dd 70%,#d9d9d9 145%)!important}
.career-rail .story-card__body h3{color:var(--ink)!important}.career-rail .story-card__body p{color:rgba(23,23,23,.67)!important}.career-rail .story-card__meta{color:var(--sun)!important}.career-rail .story-card__facts{border-color:rgba(23,23,23,.16)!important}.career-rail .story-card__facts span{color:rgba(23,23,23,.56)!important}.career-rail .story-card__facts strong{color:var(--ink)!important}
.career-rail .career-card__open{background:var(--ink)!important;color:var(--paper)!important}.career-rail .career-card__open:hover,.career-rail .career-card__open:focus-visible{background:var(--sun)!important;color:var(--paper)!important}
.career-sticker{background:rgba(243,240,230,.9)!important;color:rgba(23,23,23,.72)!important;border-color:rgba(23,23,23,.18)!important;box-shadow:0 10px 24px rgba(0,0,0,.12)!important}.career-sticker--city{color:var(--sun)!important;border-color:rgba(142,126,111,.5)!important}

/* The city maps stay light and quiet so the paper body, not deep green, carries the career card. */
.career-card__map,.career-card__live{background:#d9d9d9!important;color:var(--ink)!important}
.career-map__live:after{background:rgba(243,240,230,.42)!important}
.career-map__iframe{filter:grayscale(.82) sepia(.08) saturate(.38) brightness(1.32) contrast(.8)!important}
.career-card__map:before{background-image:linear-gradient(rgba(23,23,23,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(23,23,23,.08) 1px,transparent 1px)!important;opacity:.55!important}
.career-card__map:after{border-color:rgba(23,23,23,.14)!important}.career-map__grid:before,.career-map__grid:after{background:rgba(142,126,111,.34)!important}.career-map__rings:before,.career-map__rings:after{border-color:rgba(142,126,111,.45)!important;box-shadow:0 0 0 24px rgba(142,126,111,.08),0 0 0 52px rgba(142,126,111,.04)!important}.career-map__rings:after{border:0!important;background:var(--ink)!important;box-shadow:0 0 0 7px rgba(142,126,111,.22),0 0 28px 8px rgba(142,126,111,.38)!important}.career-map__pin{border-color:var(--ink)!important}.career-map__city{color:var(--ink)!important;text-shadow:none!important}.career-map__coordinates{color:rgba(23,23,23,.68)!important}.career-map__note{color:rgba(23,23,23,.56)!important}.career-map__open{color:var(--paper)!important;background:var(--ink)!important;padding:8px 10px;border-radius:999px}.career-map__attribution{color:rgba(23,23,23,.5)!important}
.story-card--b .career-card__map,.story-card--c .career-card__map,.story-card--d .career-card__map{background:#d9d9d9!important;color:var(--ink)!important}

/* Career details use a warm paper editorial spread rather than a dark green panel. */
.project-modal.is-career-detail{grid-template-columns:.82fr 1.18fr;background:#eeebe3;border-radius:26px;box-shadow:0 42px 120px rgba(0,0,0,.42)}
.project-modal.is-career-detail .project-modal__media{background:linear-gradient(155deg,#f3f0e6 0%,#e7e5dd 58%,#d9d9d9 120%)!important;color:var(--ink)!important;padding:52px 46px;overflow:auto;border-right:1px solid rgba(23,23,23,.12)}
.project-modal.is-career-detail .project-modal__media:before{inset:20px;border:1px solid rgba(23,23,23,.14);border-radius:20px}
.career-modal__panel{justify-content:flex-start;padding-top:12%;}.career-modal__eyebrow{color:var(--sun)!important}.career-modal__panel>strong{color:var(--ink)!important;font-size:clamp(38px,4.2vw,68px);margin:26px 0 20px}.career-modal__panel>p{color:rgba(23,23,23,.68)!important;line-height:1.8}.career-modal__location{border-color:rgba(23,23,23,.18)!important;color:var(--ink)!important}.career-modal__location small{color:rgba(23,23,23,.55)!important}.career-modal__map-link{border:0!important;background:var(--ink)!important;color:var(--paper)!important;padding:11px 14px!important}.career-modal__map-link:hover,.career-modal__map-link:focus-visible{background:var(--sun)!important;transform:translateY(-2px)}
.career-modal__projects{border-color:rgba(23,23,23,.18)!important}.career-modal__projects>span{color:var(--sun)!important}.career-project-link{color:var(--ink)!important;border-color:rgba(23,23,23,.14)!important}.career-project-link small{color:rgba(23,23,23,.5)!important}.career-project-link b{color:var(--sun)!important}
.project-modal.is-career-detail .project-modal__body{background:#f3f0e6!important;color:var(--ink)!important;padding:58px 54px 48px}.project-modal.is-career-detail .project-modal__meta{color:var(--sun)!important}.project-modal.is-career-detail h2{color:var(--ink)!important;margin-top:54px}.project-modal.is-career-detail p{color:rgba(23,23,23,.68)!important}.project-modal.is-career-detail .project-modal__bullets{border-color:rgba(23,23,23,.16)!important;color:rgba(23,23,23,.7)!important}.project-modal.is-career-detail .project-modal__details{border-color:rgba(23,23,23,.16)!important}.project-modal.is-career-detail .project-modal__tags span{border-color:rgba(23,23,23,.18)!important;color:rgba(23,23,23,.72)!important}.project-modal.is-career-detail [data-modal-link]{color:var(--ink)!important}.project-modal.is-career-detail [data-modal-link]:after{background:var(--sun)!important}
.project-modal.is-career-detail .modal__close{background:rgba(243,240,230,.92)!important;color:var(--ink)!important;border-color:rgba(23,23,23,.18)}
@media (max-width:1000px){.project-modal.is-career-detail .project-modal__media{padding:38px 34px}.project-modal.is-career-detail .project-modal__body{padding:42px 34px 38px}}
@media (max-width:640px){.project-modal.is-career-detail .project-modal__media{min-height:330px;padding:30px 24px;border-right:0;border-bottom:1px solid rgba(23,23,23,.12)}.career-modal__panel{padding-top:0}.project-modal.is-career-detail .project-modal__body{padding:30px 22px 34px}.project-modal.is-career-detail h2{margin-top:30px}}

/* Hero copy: vertical biographical columns keep the image orbit open in the middle. */
.hero-title__left,.hero-title__right{writing-mode:vertical-rl;text-orientation:upright;white-space:nowrap;word-break:keep-all;letter-spacing:.035em;line-height:1.08;font-size:clamp(30px,3.35vw,54px)}
.hero-title__left{top:18%;left:clamp(10px,2.2vw,34px);color:var(--ink-soft)}
.hero-title__right{top:22%;right:clamp(18px,3.6vw,58px);color:var(--cobalt);text-align:left}
.hero-title__left strong,.hero-title__left em,.hero-title__right em{font-style:normal;font-weight:inherit;display:inline}
.hero-title__left em b,.hero-title__right em b{font-weight:inherit;text-combine-upright:all;-webkit-text-combine:horizontal}
.hero-title__left strong{font-size:1.16em;letter-spacing:.08em}
.hero-title__left em{font-size:.72em;color:var(--cobalt);letter-spacing:.02em}
.hero-title__right em{font-size:1em;letter-spacing:.03em;white-space:nowrap}
.hero-title__left br,.hero-title__right br{display:none}
@media (max-width:1000px){.hero-title__left,.hero-title__right{font-size:clamp(27px,4.8vw,46px)}.hero-title__left{left:clamp(14px,2.6vw,30px);top:19%}.hero-title__right{right:clamp(14px,2.6vw,30px);top:23%}}
@media (max-width:640px){
  .hero-orbit__center{inset:0;left:0;top:0;width:100%;height:100%;transform:scale(var(--hero-center-scale,1));text-align:left}
  .hero-orbit__center h1{width:100%;height:100%;font-size:inherit;line-height:1;letter-spacing:0}
  .hero-title__left,.hero-title__right{position:absolute;display:block;writing-mode:vertical-rl;text-orientation:upright;white-space:nowrap;font-size:clamp(24px,7.8vw,34px);line-height:1.08;animation:none;text-align:left}
  .hero-title__left{left:8px;top:19%;color:var(--ink-soft)}
  .hero-title__right{right:10px;top:23%;color:var(--cobalt)}
  .hero-title__left strong{font-size:1.12em}.hero-title__left em{font-size:.68em}.hero-title__right em{font-size:.92em}
  .hero-title__support{position:absolute;inset:0;pointer-events:none}
  .hero-title__support .hero-orbit__intro{position:absolute;left:58px;right:58px;bottom:17vh;width:auto;max-width:none;margin:0;text-align:center;pointer-events:auto}
  .hero-title__support .circle-link{position:absolute;right:50%;bottom:9vh;transform:translateX(50%);pointer-events:auto}
}
@media (prefers-reduced-motion:reduce){.hero-title__left,.hero-title__right{animation:none}}

/* Career cards use two distinct light materials: a cool surveying map and a warm editorial note. */
.career-rail .career-card__map,.career-rail .career-card__live{background:linear-gradient(145deg,#cbd5d4 0%,#b9c6c7 64%,#aebfc0 100%)!important;color:var(--ink)!important}
.career-rail .story-card__body{background:linear-gradient(145deg,#f6f2e8 0%,#eeebe3 61%,#e6decf 118%)!important;color:var(--ink)!important}
.career-rail .story-card--b .story-card__body{background:linear-gradient(145deg,#f4efe4 0%,#ece8de 63%,#e6ddcf 118%)!important}.career-rail .story-card--c .story-card__body{background:linear-gradient(145deg,#f7f3ea 0%,#efeadf 62%,#e4dbcb 118%)!important}.career-rail .story-card--d .story-card__body{background:linear-gradient(145deg,#f3efe6 0%,#eae5da 63%,#e1d7c7 118%)!important}
.career-map__live:after{background:linear-gradient(132deg,rgba(211,222,221,.15),rgba(246,242,232,.11) 56%,rgba(25,49,48,.11))!important}
.career-map__iframe{filter:grayscale(.86) sepia(.04) saturate(.5) hue-rotate(132deg) brightness(1.18) contrast(.84)!important}
.career-card__map:before{background-image:linear-gradient(rgba(25,49,48,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(25,49,48,.1) 1px,transparent 1px)!important;opacity:.56!important}
.career-map__grid:before,.career-map__grid:after{background:rgba(25,49,48,.34)!important}.career-map__rings:before{border-color:rgba(25,49,48,.42)!important;box-shadow:0 0 0 24px rgba(25,49,48,.07),0 0 0 52px rgba(25,49,48,.035)!important}.career-map__rings:after{background:#f6f2e8!important;box-shadow:0 0 0 7px rgba(25,49,48,.17),0 0 28px 8px rgba(25,49,48,.22)!important}.career-map__pin{border-color:var(--ink)!important}

/* Data-led field notes make the black career canvas active without inventing new company information. */
.career-ambient{position:absolute;z-index:1;inset:clamp(330px,31vh,460px) 0 7vh;pointer-events:none;overflow:hidden;color:rgba(238,235,227,.52);font:9px/1.3 var(--mono);letter-spacing:.12em;text-transform:uppercase}
.career-ambient:before{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(238,235,227,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(238,235,227,.06) 1px,transparent 1px);background-size:116px 116px;opacity:.5;mask-image:linear-gradient(to bottom,transparent 0,black 10%,black 91%,transparent 100%)}
.career-ambient:after{content:'';position:absolute;left:50%;top:2%;width:1px;height:96%;background:linear-gradient(to bottom,transparent,rgba(216,211,198,.42) 13%,rgba(216,211,198,.16) 82%,transparent);transform:rotate(11deg);transform-origin:top}
.career-ambient__stamp{position:absolute;top:2%;left:clamp(20px,4vw,68px);padding:8px 10px;border:1px solid rgba(238,235,227,.26);background:rgba(23,23,23,.76);transform:rotate(-4deg);box-shadow:0 12px 30px rgba(0,0,0,.22)}
.career-ambient__stamp span{display:block;margin-top:4px;color:rgba(238,235,227,.38);font-size:8px}
.career-ambient__route{position:absolute;left:calc(50% - 1px);top:8%;bottom:8%;width:2px;background:linear-gradient(to bottom,rgba(238,235,227,.05),rgba(190,207,206,.54) 12%,rgba(190,207,206,.12) 88%,transparent);transform:rotate(11deg);transform-origin:top;box-shadow:0 0 26px rgba(190,207,206,.1)}
.career-ambient__route i{position:absolute;left:50%;width:9px;height:9px;border:1px solid rgba(238,235,227,.56);border-radius:50%;background:#171717;transform:translate(-50%,-50%)}.career-ambient__route i:nth-child(1){top:11%}.career-ambient__route i:nth-child(2){top:35%}.career-ambient__route i:nth-child(3){top:61%}.career-ambient__route i:nth-child(4){top:86%}
.career-ambient__node{position:absolute;display:flex;align-items:center;gap:10px;z-index:2}.career-ambient__node--1{top:13%;right:clamp(20px,6vw,94px)}.career-ambient__node--2{top:37%;left:clamp(18px,5vw,76px)}.career-ambient__node--3{top:62%;right:clamp(24px,7vw,116px)}.career-ambient__node--4{top:85%;left:clamp(18px,4vw,66px)}
.career-ambient__cross{position:relative;width:24px;height:24px;border:1px solid rgba(238,235,227,.44);border-radius:50%;box-shadow:0 0 0 6px rgba(238,235,227,.035)}.career-ambient__cross:before,.career-ambient__cross:after{content:'';position:absolute;background:rgba(238,235,227,.56)}.career-ambient__cross:before{left:50%;top:-5px;width:1px;height:32px}.career-ambient__cross:after{left:-5px;top:50%;width:32px;height:1px}
.career-ambient__label{display:block;min-width:112px;padding:7px 9px;border-left:1px solid rgba(238,235,227,.38);background:linear-gradient(90deg,rgba(23,23,23,.72),rgba(23,23,23,0));text-shadow:0 1px 10px rgba(0,0,0,.9)}.career-ambient__label b{margin-right:7px;color:#c4d1d0;font-weight:500}.career-ambient__label small{display:block;margin-top:4px;color:rgba(238,235,227,.36);font-size:8px;letter-spacing:.05em}
.career-ambient__note{position:absolute;color:rgba(238,235,227,.33);font-size:8px;white-space:nowrap}.career-ambient__note--top{right:clamp(16px,3vw,48px);top:4%;writing-mode:vertical-rl}.career-ambient__note--bottom{right:clamp(22px,5vw,78px);bottom:4%;transform:rotate(-7deg)}
.career-rail .story-card{box-shadow:0 0 0 1px rgba(238,235,227,.035),0 38px 120px rgba(0,0,0,.68),0 0 56px rgba(190,207,206,.065)!important}
@media (max-width:640px){.career-ambient{inset:300px 0 56px;opacity:.74}.career-ambient__stamp{left:14px;top:1%}.career-ambient__node--1{top:11%;right:12px}.career-ambient__node--2{top:37%;left:10px}.career-ambient__node--3{top:63%;right:10px}.career-ambient__node--4{top:87%;left:10px}.career-ambient__label{display:none}.career-ambient__note{display:none}.career-ambient__route{left:50%;opacity:.58}.career-ambient:after{opacity:.5}.career-ambient__cross{width:17px;height:17px}.career-ambient__cross:before{top:-4px;height:23px}.career-ambient__cross:after{left:-4px;width:23px}}

/* Youthful painted pass: each career card gets its own bright ink mix while text remains readable. */
.career-rail .story-card__body:after{content:'';position:absolute;inset:0;z-index:0;pointer-events:none;opacity:.9;mix-blend-mode:multiply;background:radial-gradient(ellipse 48% 21% at 3% 12%,rgba(255,104,88,.3),transparent 70%),radial-gradient(ellipse 32% 26% at 94% 92%,rgba(73,207,194,.3),transparent 72%),linear-gradient(118deg,transparent 0 61%,rgba(250,198,74,.2) 72%,transparent 88%)}
.career-rail .story-card--b .story-card__body:after{background:radial-gradient(ellipse 40% 24% at 98% 9%,rgba(131,102,255,.28),transparent 70%),radial-gradient(ellipse 34% 25% at 4% 91%,rgba(255,136,64,.32),transparent 72%),linear-gradient(118deg,transparent 0 62%,rgba(56,206,190,.2) 74%,transparent 89%)}
.career-rail .story-card--c .story-card__body:after{background:radial-gradient(ellipse 42% 20% at 6% 10%,rgba(54,166,255,.32),transparent 70%),radial-gradient(ellipse 35% 28% at 96% 88%,rgba(241,81,157,.25),transparent 72%),linear-gradient(118deg,transparent 0 58%,rgba(250,206,72,.22) 73%,transparent 90%)}
.career-rail .story-card--d .story-card__body:after{background:radial-gradient(ellipse 44% 22% at 97% 12%,rgba(102,216,115,.3),transparent 70%),radial-gradient(ellipse 34% 26% at 4% 92%,rgba(63,119,255,.26),transparent 72%),linear-gradient(118deg,transparent 0 61%,rgba(255,104,88,.2) 74%,transparent 90%)}
.career-rail .story-card__body>*{position:relative;z-index:1}
.career-rail .career-stickers{z-index:3}.career-rail .career-sticker{background:linear-gradient(135deg,rgba(255,255,255,.84),rgba(244,238,218,.92))!important;color:rgba(23,23,23,.78)!important;border-color:rgba(23,23,23,.16)!important;box-shadow:0 12px 24px rgba(23,23,23,.12),4px 4px 0 rgba(255,104,88,.18)!important}
.career-rail .career-sticker--city{box-shadow:0 12px 24px rgba(23,23,23,.12),-4px 4px 0 rgba(73,207,194,.2)!important}

.career-rail .career-card__map:after{inset:0;border:0!important;border-radius:inherit;opacity:.42;mix-blend-mode:normal;pointer-events:none;background:radial-gradient(ellipse 38% 25% at 12% 16%,rgba(255,104,88,.52),transparent 72%),radial-gradient(ellipse 34% 29% at 91% 83%,rgba(73,207,194,.46),transparent 72%),linear-gradient(126deg,transparent 0 54%,rgba(250,198,74,.36) 71%,transparent 89%)!important}
.career-rail .story-card--b .career-card__map:after{background:radial-gradient(ellipse 38% 24% at 90% 14%,rgba(131,102,255,.52),transparent 72%),radial-gradient(ellipse 33% 28% at 9% 86%,rgba(255,136,64,.52),transparent 72%),linear-gradient(126deg,transparent 0 55%,rgba(56,206,190,.4) 72%,transparent 90%)!important}
.career-rail .story-card--c .career-card__map:after{background:radial-gradient(ellipse 40% 24% at 9% 14%,rgba(54,166,255,.54),transparent 72%),radial-gradient(ellipse 34% 28% at 92% 84%,rgba(241,81,157,.45),transparent 72%),linear-gradient(126deg,transparent 0 53%,rgba(250,206,72,.4) 72%,transparent 90%)!important}
.career-rail .story-card--d .career-card__map:after{background:radial-gradient(ellipse 38% 24% at 91% 14%,rgba(102,216,115,.52),transparent 72%),radial-gradient(ellipse 32% 28% at 9% 84%,rgba(63,119,255,.46),transparent 72%),linear-gradient(126deg,transparent 0 55%,rgba(255,104,88,.38) 72%,transparent 90%)!important}
.career-rail .career-card__map:before{background-image:linear-gradient(rgba(25,49,48,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(25,49,48,.12) 1px,transparent 1px),repeating-linear-gradient(168deg,transparent 0 42px,rgba(255,255,255,.16) 43px,transparent 45px)!important;opacity:.66!important}
.career-rail .career-map__rings:before{border-color:rgba(23,23,23,.44)!important;box-shadow:0 0 0 24px rgba(255,104,88,.15),0 0 0 52px rgba(73,207,194,.11)!important}.career-rail .career-map__rings:after{background:#fff8df!important;box-shadow:0 0 0 7px rgba(255,104,88,.26),0 0 30px 10px rgba(73,207,194,.45)!important}
.career-rail .story-card--b .career-map__rings:before{box-shadow:0 0 0 24px rgba(131,102,255,.16),0 0 0 52px rgba(255,136,64,.12)!important}.career-rail .story-card--c .career-map__rings:before{box-shadow:0 0 0 24px rgba(54,166,255,.16),0 0 0 52px rgba(241,81,157,.12)!important}.career-rail .story-card--d .career-map__rings:before{box-shadow:0 0 0 24px rgba(102,216,115,.16),0 0 0 52px rgba(63,119,255,.12)!important}
.career-rail .career-card__open{box-shadow:4px 4px 0 rgba(255,104,88,.24),0 12px 24px rgba(23,23,23,.16)!important}.career-rail .career-card__open:hover,.career-rail .career-card__open:focus-visible{box-shadow:6px 6px 0 rgba(250,198,74,.42),0 16px 28px rgba(23,23,23,.2)!important}
@media (max-width:640px){.career-rail .story-card__body:after{opacity:.74}.career-rail .career-card__map:after{opacity:.34}.career-rail .career-sticker{box-shadow:0 8px 18px rgba(23,23,23,.12),3px 3px 0 rgba(255,104,88,.16)!important}}
@media (prefers-reduced-motion:reduce){.career-rail .career-card__open,.career-rail .career-sticker{transition:none!important}}

/* Career detail poster: a brighter, offset editorial spread instead of a formal resume grid. */
.project-modal.is-career-detail{grid-template-columns:.84fr 1.16fr;background:#f8f3e8!important;border-radius:28px 34px 22px 30px;box-shadow:0 44px 130px rgba(0,0,0,.5),10px 10px 0 rgba(255,104,88,.22)!important;isolation:isolate}
.project-modal.is-career-detail .project-modal__media{background:linear-gradient(148deg,#f7f1df 0%,#e8f0eb 52%,#f7ded2 100%)!important;color:var(--ink)!important;padding:54px 46px 42px;overflow:auto;border-right:0!important;isolation:isolate}
.project-modal.is-career-detail .project-modal__media:before{content:'';position:absolute;inset:14px;border:1px solid rgba(25,49,48,.18);border-radius:28px 18px 36px 22px;background:radial-gradient(ellipse 46% 28% at 8% 6%,rgba(255,104,88,.25),transparent 70%),radial-gradient(ellipse 38% 34% at 96% 88%,rgba(73,207,194,.28),transparent 70%),linear-gradient(112deg,transparent 0 56%,rgba(250,198,74,.18) 74%,transparent 88%);transform:rotate(-1.1deg);pointer-events:none;z-index:0}
.project-modal.is-career-detail .project-modal__media:after{content:'FIELD / TRACE';position:absolute;right:28px;top:38%;font:9px var(--mono);letter-spacing:.16em;color:rgba(25,49,48,.4);writing-mode:vertical-rl;transform:rotate(7deg);border-left:1px solid rgba(25,49,48,.2);padding:10px 0 10px 8px;z-index:1;pointer-events:none}
.project-modal.is-career-detail .career-modal__panel{justify-content:flex-start;padding:15% 14px 0 0;z-index:2}
.project-modal.is-career-detail .career-modal__eyebrow{display:inline-flex;align-self:flex-start;padding:7px 10px;background:#ff6858;color:#fff8eb!important;box-shadow:5px 5px 0 rgba(25,49,48,.14);font:10px var(--mono);letter-spacing:.13em;transform:rotate(-4deg)}
.project-modal.is-career-detail .career-modal__panel>strong{color:var(--ink)!important;font-size:clamp(40px,4vw,66px);line-height:.84;margin:34px 0 22px;max-width:390px;letter-spacing:-.06em;transform:translateX(-7px) rotate(-2.5deg);text-shadow:5px 5px 0 rgba(255,198,74,.24)}
.project-modal.is-career-detail .career-modal__panel>p{max-width:330px;margin-left:22px;color:rgba(23,23,23,.7)!important;line-height:1.72;transform:rotate(1.2deg)}
.project-modal.is-career-detail .career-modal__location{display:grid;grid-template-columns:auto 1fr;align-items:end;gap:8px 16px;border-top:0!important;padding:14px 0 0;margin:28px 0 0 12px;font:12px var(--mono);position:relative}
.project-modal.is-career-detail .career-modal__location:before{content:'';position:absolute;left:-12px;right:18px;top:0;height:1px;background:linear-gradient(90deg,#49cfc2,#ff6858,transparent);transform:rotate(-2deg)}
.project-modal.is-career-detail .career-modal__location span{font:500 28px var(--serif);color:var(--ink);transform:rotate(-3deg)}.project-modal.is-career-detail .career-modal__location small{color:rgba(23,23,23,.58)!important;justify-self:end;text-align:right;font-size:9px}
.project-modal.is-career-detail .career-modal__map-link{align-self:flex-start;margin:18px 0 0 4px;border:0!important;background:#193130!important;color:#fff8eb!important;padding:12px 15px!important;border-radius:5px 18px 8px 16px;box-shadow:5px 5px 0 rgba(73,207,194,.55);transform:rotate(-2deg)}
.project-modal.is-career-detail .career-modal__map-link:hover,.project-modal.is-career-detail .career-modal__map-link:focus-visible{background:#3f77ff!important;transform:translateY(-3px) rotate(-2deg);box-shadow:7px 7px 0 rgba(255,198,74,.7)}
.project-modal.is-career-detail .career-modal__projects{margin:32px 0 0 4px;padding:17px 0 0;border-top:0!important;position:relative}.project-modal.is-career-detail .career-modal__projects:before{content:'';position:absolute;left:0;right:12px;top:0;height:1px;background:rgba(25,49,48,.2);transform:rotate(1.5deg)}
.project-modal.is-career-detail .career-modal__projects>span{display:block;color:#3f77ff!important;font:10px var(--mono);letter-spacing:.14em;transform:translateX(7px) rotate(-2deg)}
.project-modal.is-career-detail .career-project-link{margin-top:5px;padding:13px 8px 12px 0;grid-template-columns:1fr auto 18px;gap:10px;color:var(--ink)!important;border-bottom:1px solid rgba(25,49,48,.14)!important;transform:translateX(var(--career-project-shift,0)) rotate(var(--career-project-tilt,0));transition:background .2s,transform .2s,box-shadow .2s}
.project-modal.is-career-detail .career-project-link:nth-child(1){--career-project-shift:4px;--career-project-tilt:-1deg}.project-modal.is-career-detail .career-project-link:nth-child(2){--career-project-shift:-3px;--career-project-tilt:1.3deg}.project-modal.is-career-detail .career-project-link:nth-child(3){--career-project-shift:8px;--career-project-tilt:-.7deg}
.project-modal.is-career-detail .career-project-link:hover,.project-modal.is-career-detail .career-project-link:focus-visible{background:rgba(73,207,194,.16);transform:translateX(8px) rotate(0deg);box-shadow:4px 4px 0 rgba(255,104,88,.2)}
.project-modal.is-career-detail .career-project-link span{font-size:14px}.project-modal.is-career-detail .career-project-link small{color:rgba(23,23,23,.55)!important}.project-modal.is-career-detail .career-project-link b{color:#ff6858!important}

.project-modal.is-career-detail .project-modal__body{position:relative;background:linear-gradient(148deg,#fffaf0 0%,#f3eddc 46%,#e2f1ea 100%)!important;color:var(--ink)!important;padding:64px 54px 48px;overflow-y:auto;isolation:isolate}
.project-modal.is-career-detail .project-modal__body:before{content:'';position:absolute;right:-110px;top:-120px;width:330px;height:330px;border-radius:48% 52% 38% 62%;background:radial-gradient(circle at 38% 38%,rgba(131,102,255,.28),rgba(73,207,194,.18) 42%,transparent 70%);transform:rotate(19deg);z-index:0;pointer-events:none}
.project-modal.is-career-detail .project-modal__body:after{content:'';position:absolute;left:0;right:0;bottom:30px;height:74px;background:repeating-linear-gradient(-7deg,transparent 0 13px,rgba(255,104,88,.09) 14px 16px,transparent 17px 28px);z-index:0;pointer-events:none}
.project-modal.is-career-detail .project-modal__body>*{position:relative;z-index:1}
.project-modal.is-career-detail .project-modal__meta{display:inline-flex;align-self:flex-start;gap:12px;padding:7px 10px;background:rgba(255,198,74,.26);color:#193130!important;font:10px var(--mono);transform:translateX(10px) rotate(2deg)}
.project-modal.is-career-detail h2{color:var(--ink)!important;font-size:clamp(46px,5.5vw,82px);line-height:.84;margin:78px 0 24px;max-width:680px;letter-spacing:-.07em;transform:translateX(-12px) rotate(1.2deg);text-shadow:7px 7px 0 rgba(73,207,194,.2)}
.project-modal.is-career-detail .project-modal__body>p{max-width:420px;margin-left:26px;color:rgba(23,23,23,.7)!important;line-height:1.8;transform:rotate(-.8deg)}
.project-modal.is-career-detail .project-modal__bullets{margin:34px 0 0 10px;padding:18px 22px 16px 28px;border:0!important;border-left:3px solid #ff6858!important;background:rgba(255,255,255,.34);display:grid;gap:12px;font-size:13px;color:rgba(23,23,23,.74)!important;transform:rotate(-.6deg);clip-path:polygon(0 3%,98% 0,100% 94%,3% 100%)}
.project-modal.is-career-detail .project-modal__bullets li{padding-left:8px}.project-modal.is-career-detail .project-modal__bullets li::marker{color:#3f77ff;font-size:16px}
.project-modal.is-career-detail .project-modal__details{grid-template-columns:62px 1fr;margin:30px 0 24px 28px;padding-top:18px;border-top:1px solid rgba(25,49,48,.18)!important;max-width:480px;gap:9px 18px;transform:rotate(.8deg)}
.project-modal.is-career-detail .project-modal__details span{color:rgba(25,49,48,.58)!important}.project-modal.is-career-detail .project-modal__details strong{color:var(--ink)!important;font-weight:600}
.project-modal.is-career-detail .project-modal__tags{margin:0 0 34px 12px;gap:8px;max-width:520px;transform:rotate(-1deg)}.project-modal.is-career-detail .project-modal__tags span{border:0!important;padding:7px 11px;border-radius:6px 14px 8px 12px;color:var(--ink)!important;background:rgba(73,207,194,.24);box-shadow:3px 3px 0 rgba(255,104,88,.2);font:10px var(--mono)}.project-modal.is-career-detail .project-modal__tags span:nth-child(2n){background:rgba(131,102,255,.2);transform:translateY(4px) rotate(2deg)}.project-modal.is-career-detail .project-modal__tags span:nth-child(3n){background:rgba(255,198,74,.34);transform:translateY(-3px) rotate(-2deg)}
.project-modal.is-career-detail [data-modal-link]{align-self:flex-start;margin-left:24px;color:var(--ink)!important;border-color:var(--ink);transform:rotate(1deg)}.project-modal.is-career-detail [data-modal-link]:after{background:#ff6858!important}
.project-modal.is-career-detail .modal__close{background:#fffaf0!important;color:var(--ink)!important;border:1px solid rgba(25,49,48,.26);box-shadow:3px 3px 0 rgba(255,104,88,.35);transform:rotate(7deg);transition:transform .2s,background .2s}.project-modal.is-career-detail .modal__close:hover,.project-modal.is-career-detail .modal__close:focus-visible{background:#49cfc2!important;transform:rotate(0deg) scale(1.06)}
@media (max-width:1000px){.project-modal.is-career-detail .project-modal__media{padding:38px 34px 32px}.project-modal.is-career-detail .project-modal__body{padding:46px 34px 38px}.project-modal.is-career-detail h2{margin-top:54px}}
@media (max-width:640px){.project-modal.is-career-detail{grid-template-columns:1fr;height:calc(100vh - 22px);border-radius:17px 22px 14px 20px;box-shadow:0 28px 80px rgba(0,0,0,.48),5px 5px 0 rgba(255,104,88,.2)!important}.project-modal.is-career-detail .project-modal__media{min-height:410px;max-height:none;padding:30px 24px 26px;border-bottom:0}.project-modal.is-career-detail .career-modal__panel{padding:16% 4px 0 0}.project-modal.is-career-detail .career-modal__panel>strong{font-size:clamp(40px,12vw,58px);max-width:300px;margin-top:28px}.project-modal.is-career-detail .career-modal__panel>p{margin-left:12px;max-width:290px}.project-modal.is-career-detail .career-modal__location{margin-left:6px}.project-modal.is-career-detail .career-modal__projects{margin-top:24px}.project-modal.is-career-detail .project-modal__body{padding:34px 22px 32px}.project-modal.is-career-detail h2{font-size:clamp(42px,13vw,62px);margin:46px 0 20px;transform:translateX(-4px) rotate(1deg)}.project-modal.is-career-detail .project-modal__body>p{margin-left:8px}.project-modal.is-career-detail .project-modal__bullets{margin-left:0;padding-left:24px}.project-modal.is-career-detail .project-modal__details{margin-left:8px}.project-modal.is-career-detail .project-modal__tags{margin-left:0}.project-modal.is-career-detail [data-modal-link]{margin-left:8px}}
@media (prefers-reduced-motion:reduce){.project-modal.is-career-detail .career-project-link,.project-modal.is-career-detail .modal__close{transition:none!important}.project-modal.is-career-detail .career-project-link,.project-modal.is-career-detail .career-modal__panel>strong,.project-modal.is-career-detail .project-modal__body>p,.project-modal.is-career-detail h2{transform:none}}

/* Keep expressive offsets inside the poster instead of exposing a horizontal browser-like scrollbar. */
.project-modal.is-career-detail .project-modal__media,.project-modal.is-career-detail .project-modal__body{overflow-x:hidden!important;scrollbar-width:none}
.project-modal.is-career-detail .project-modal__media::-webkit-scrollbar,.project-modal.is-career-detail .project-modal__body::-webkit-scrollbar{width:0;height:0}
.project-modal.is-career-detail .project-modal__media::-webkit-scrollbar-track,.project-modal.is-career-detail .project-modal__body::-webkit-scrollbar-track{background:transparent}
.project-modal.is-career-detail .project-modal__media::-webkit-scrollbar-thumb,.project-modal.is-career-detail .project-modal__body::-webkit-scrollbar-thumb{background:linear-gradient(rgba(73,207,194,.32),rgba(255,104,88,.42));border:1px solid transparent;background-clip:padding-box;border-radius:99px}

/* Current request: readable life backdrops, meteor field, and a more energetic project wall. */
.trace-backdrop__layer{filter:blur(11px) saturate(1.08) brightness(.78);opacity:0;transform:scale(1.06);transition:opacity .85s ease,transform 1.5s cubic-bezier(.2,.7,.2,1)}
.trace-backdrop__layer.is-active{opacity:.68;transform:scale(1.015)}
.trace-backdrop:after{background:linear-gradient(90deg,rgba(23,23,23,.66),rgba(23,23,23,.28) 48%,rgba(23,23,23,.54)),linear-gradient(to bottom,rgba(23,23,23,.16),rgba(23,23,23,.58));}

.career-meteors{position:absolute;z-index:0;inset:0;overflow:hidden;pointer-events:none;isolation:isolate}
.career-meteor{position:absolute;left:var(--meteor-left);top:var(--meteor-top);width:var(--meteor-length);height:1px;opacity:var(--meteor-opacity);background:linear-gradient(90deg,transparent,rgba(255,248,215,.96) 44%,rgba(73,207,194,.72));box-shadow:0 0 8px rgba(255,198,74,.68),0 0 20px rgba(73,207,194,.25);transform:rotate(var(--meteor-angle)) translate3d(0,0,0);transform-origin:left center;animation:meteorFall var(--meteor-duration) linear var(--meteor-delay) infinite}
.career-meteor:after{content:'';position:absolute;right:-2px;top:50%;width:4px;height:4px;border-radius:50%;background:#fff8df;box-shadow:0 0 12px 3px rgba(255,198,74,.7);transform:translateY(-50%)}
@keyframes meteorFall{0%{opacity:0;transform:rotate(var(--meteor-angle)) translate3d(-12vw,-10vh,0) scaleX(.35)}12%{opacity:var(--meteor-opacity)}72%{opacity:calc(var(--meteor-opacity) * .82)}100%{opacity:0;transform:rotate(var(--meteor-angle)) translate3d(32vw,58vh,0) scaleX(1.12)}}

.work-section{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(circle at 12% 14%,rgba(255,104,88,.18),transparent 23%),radial-gradient(circle at 86% 28%,rgba(73,207,194,.17),transparent 26%),radial-gradient(circle at 48% 94%,rgba(131,102,255,.13),transparent 22%),var(--paper)}
.work-section:before{content:'';position:absolute;right:-100px;top:180px;width:250px;height:250px;border:1px solid rgba(63,119,255,.34);border-radius:42% 58% 35% 65%;transform:rotate(18deg);box-shadow:0 0 0 20px rgba(255,198,74,.1),0 0 0 42px rgba(73,207,194,.08);pointer-events:none}
.work-section:after{content:'MAKE / SHIP / LEARN';position:absolute;left:clamp(20px,7vw,110px);bottom:4.5%;font:9px var(--mono);letter-spacing:.18em;color:rgba(23,23,23,.36);transform:rotate(-7deg);pointer-events:none}
.work-header,.work-toolbar,.project-list,.empty-state{position:relative;z-index:1}
.project-list{grid-template-columns:repeat(12,minmax(0,1fr));gap:34px 18px;align-items:start}
.project-card{position:relative;min-height:0;border:0;border-radius:24px 10px 30px 16px;background:linear-gradient(142deg,#f6d6c8 0%,#f7eee1 55%,#d7f0e8 100%);box-shadow:0 18px 0 rgba(255,104,88,.12),0 22px 56px rgba(23,23,23,.12);overflow:hidden}
.project-card:nth-child(3n+2){background:linear-gradient(138deg,#d9d1f3 0%,#f2eafb 53%,#d8f2ef 100%)}
.project-card:nth-child(3n){background:linear-gradient(142deg,#cdebf0 0%,#f4f0dc 52%,#f8d4b9 100%)}
.project-card--1{grid-column:span 7;--project-y:-14px;--project-tilt:-1.2deg;border-radius:32px 12px 20px 38px}
.project-card--2{grid-column:span 5;--project-y:26px;--project-tilt:1.6deg;border-radius:14px 34px 16px 24px}
.project-card--3{grid-column:span 4;--project-y:6px;--project-tilt:-2deg;border-radius:28px 16px 38px 12px}
.project-card--4{grid-column:span 8;--project-y:-20px;--project-tilt:1deg;border-radius:12px 38px 18px 28px}
.project-card--5{grid-column:span 6;--project-y:20px;--project-tilt:-1.3deg;border-radius:38px 12px 24px 18px}
.project-card--6{grid-column:span 6;--project-y:-6px;--project-tilt:1.8deg;border-radius:12px 28px 16px 38px}
.project-card__stamp{position:absolute;z-index:4;right:20px;top:18px;padding:6px 8px;border:1px solid rgba(23,23,23,.24);background:rgba(255,250,240,.72);font:9px var(--mono);letter-spacing:.1em;transform:rotate(6deg);box-shadow:3px 3px 0 rgba(255,104,88,.2)}
.project-card:nth-child(3n+2) .project-card__stamp{transform:rotate(-5deg);box-shadow:3px 3px 0 rgba(131,102,255,.24)}
.project-card__image{height:clamp(240px,28vw,360px);clip-path:polygon(0 0,100% 2%,98% 96%,7% 100%)}
.project-card:nth-child(3n) .project-card__image{clip-path:polygon(2% 4%,96% 0,100% 92%,0 100%)}
.project-card__image:after{content:'';position:absolute;inset:0;background:linear-gradient(132deg,rgba(255,198,74,.22),transparent 36%,rgba(73,207,194,.17));mix-blend-mode:screen;pointer-events:none}
.project-card__content{padding:28px 30px 30px}
.project-card__title{max-width:520px}
.project-card__footer{gap:18px}
.project-card__action{border-radius:8px 16px 12px 18px;background:#193130}
.project-card:hover,.project-card.reveal:hover{transform:translateY(calc(var(--project-y,0px) - 14px)) rotate(0deg) scale(1.015);box-shadow:0 24px 0 rgba(250,198,74,.2),0 34px 70px rgba(23,23,23,.2)}
.project-card:hover .project-card__stamp{animation:stampJolt .55s cubic-bezier(.2,.7,.2,1)}
@keyframes stampJolt{50%{transform:rotate(-4deg) translateY(-4px) scale(1.05)}}

.ai-showcase{position:relative;isolation:isolate;overflow:hidden;padding:clamp(100px,14vh,180px) clamp(20px,7vw,110px) clamp(120px,17vh,210px);background:radial-gradient(circle at 8% 18%,rgba(255,104,88,.4),transparent 23%),radial-gradient(circle at 86% 14%,rgba(73,207,194,.34),transparent 24%),linear-gradient(135deg,#f4c64a 0%,#f7e4c8 36%,#d8eef0 74%,#d9d0f1 100%);color:var(--ink)}
.ai-showcase:before{content:'';position:absolute;inset:8% -5% auto;height:1px;background:repeating-linear-gradient(90deg,transparent 0 36px,rgba(25,49,48,.18) 36px 37px);transform:rotate(-3deg);pointer-events:none}
.ai-showcase__intro{display:grid;grid-template-columns:.75fr 1.65fr .8fr;gap:28px;align-items:end;position:relative;z-index:2}.ai-showcase__intro h2{font:500 clamp(56px,7.8vw,118px)/.86 var(--serif);letter-spacing:-.06em;margin:0}.ai-showcase__intro h2 em{font-style:normal;color:#3f77ff}.ai-showcase__intro p{max-width:280px;margin:0 0 8px;font-size:14px;color:rgba(23,23,23,.72)}
.ai-showcase__field{position:relative;z-index:1;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:56px 18px;max-width:1200px;margin:90px auto 0;padding:48px 0 30px}
.ai-video-card{position:relative;grid-column:span 3;display:flex;flex-direction:column;gap:16px;transform:translateY(var(--ai-y,0)) rotate(var(--ai-tilt,0deg));transition:transform .35s cubic-bezier(.2,.7,.2,1),filter .35s;filter:saturate(.94)}
.ai-video-card--1{grid-column:2/span 3;--ai-y:24px;--ai-tilt:-2deg}.ai-video-card--2{grid-column:6/span 3;--ai-y:-26px;--ai-tilt:2.2deg}.ai-video-card--3{grid-column:10/span 3;--ai-y:48px;--ai-tilt:-1.4deg}.ai-video-card--4{grid-column:1/span 4;--ai-y:-14px;--ai-tilt:1.5deg}.ai-video-card--5{grid-column:5/span 3;--ai-y:34px;--ai-tilt:-2.4deg}.ai-video-card--6{grid-column:8/span 4;--ai-y:-22px;--ai-tilt:1deg}.ai-video-card--7{grid-column:2/span 4;--ai-y:26px;--ai-tilt:1.7deg}.ai-video-card--8{grid-column:7/span 4;--ai-y:-32px;--ai-tilt:-1.2deg}
.ai-video-card__media{height:clamp(190px,22vw,300px);position:relative;overflow:hidden;background:#193130;box-shadow:8px 10px 0 rgba(255,104,88,.2),0 20px 40px rgba(23,23,23,.15);clip-path:polygon(3% 0,97% 4%,100% 90%,92% 100%,0 95%,2% 12%)}
.ai-video-card:nth-child(3n) .ai-video-card__media{clip-path:polygon(0 4%,94% 0,100% 96%,8% 100%)}.ai-video-card:nth-child(4n) .ai-video-card__media{clip-path:polygon(5% 0,100% 8%,96% 100%,0 91%)}
.ai-video-card__media video{opacity:.84;transition:transform .7s ease,opacity .35s;filter:saturate(1.2) contrast(1.04)}.ai-video-card__media:after{content:'';position:absolute;inset:0;background:linear-gradient(145deg,rgba(73,207,194,.14),transparent 42%,rgba(131,102,255,.2));pointer-events:none}.ai-video-card__media>span{position:absolute;z-index:2;left:14px;bottom:12px;font:9px var(--mono);letter-spacing:.08em;color:#fff8eb;background:rgba(25,49,48,.75);padding:6px 7px;transform:rotate(-3deg)}
.ai-video-card.is-video-loading .ai-video-card__media:before,.ai-video-card.is-video-error .ai-video-card__media:before{position:absolute;z-index:3;right:12px;top:12px;padding:5px 7px;font:9px var(--mono);letter-spacing:.08em;color:#fff8eb;background:rgba(25,49,48,.78);border-radius:999px}.ai-video-card.is-video-loading .ai-video-card__media:before{content:'LOADING / 加载中'}.ai-video-card.is-video-error .ai-video-card__media:before{content:'RETRY / 点击重试'}
.ai-video-card__copy{padding:0 10px}.ai-video-card__copy small{font:10px var(--mono);letter-spacing:.08em;color:rgba(23,23,23,.62)}.ai-video-card__copy h3{font:500 clamp(28px,3.1vw,48px)/.9 var(--serif);letter-spacing:-.05em;margin:10px 0 8px}.ai-video-card__copy p{font-size:13px;color:rgba(23,23,23,.65);margin:0;max-width:220px}.ai-video-card:hover{transform:translateY(calc(var(--ai-y) - 12px)) rotate(0deg);filter:saturate(1.16)}.ai-video-card:hover .ai-video-card__media video{transform:scale(1.06);opacity:1}
.ai-showcase__sticker{position:absolute;z-index:4;padding:9px 12px;border:1px solid rgba(25,49,48,.35);font:10px var(--mono);background:#fff8df;box-shadow:4px 4px 0 rgba(255,104,88,.24);pointer-events:none}.ai-showcase__sticker--one{right:3%;top:2%;transform:rotate(7deg)}.ai-showcase__sticker--two{left:1%;bottom:2%;background:#49cfc2;transform:rotate(-5deg);box-shadow:4px 4px 0 rgba(63,119,255,.24)}.ai-showcase__orbit{position:absolute;right:-30px;bottom:5%;width:170px;height:170px;border:1px solid rgba(63,119,255,.35);border-radius:50%;box-shadow:0 0 0 18px rgba(255,104,88,.11),0 0 0 38px rgba(73,207,194,.1);animation:aiOrbit 12s linear infinite;pointer-events:none}.ai-showcase__orbit:after{content:'✦';position:absolute;left:50%;top:-12px;color:#3f77ff;font-size:20px}@keyframes aiOrbit{to{transform:rotate(360deg)}}

@media (max-width:1000px){.project-list{grid-template-columns:repeat(6,minmax(0,1fr));gap:26px 14px}.project-card--1,.project-card--2,.project-card--3,.project-card--4,.project-card--5,.project-card--6{grid-column:span 3}.ai-showcase__intro{grid-template-columns:1fr 1.5fr}.ai-showcase__intro p{grid-column:2}.ai-showcase__field{grid-template-columns:repeat(6,minmax(0,1fr));gap:42px 14px}.ai-video-card--1,.ai-video-card--2,.ai-video-card--3,.ai-video-card--4,.ai-video-card--5,.ai-video-card--6,.ai-video-card--7,.ai-video-card--8{grid-column:span 3;--ai-y:0px}.ai-showcase__orbit{right:-50px}}
@media (max-width:640px){.trace-backdrop__layer{filter:blur(10px) saturate(1.02) brightness(.74)}.trace-backdrop__layer.is-active{opacity:.7}.trace-backdrop:after{background:linear-gradient(90deg,rgba(23,23,23,.58),rgba(23,23,23,.26) 54%,rgba(23,23,23,.5)),linear-gradient(to bottom,rgba(23,23,23,.12),rgba(23,23,23,.5))}.career-meteors{opacity:.68}.career-meteor{width:calc(var(--meteor-length) * .74)}.work-section:after{bottom:2%;left:18px}.project-list{grid-template-columns:1fr;gap:16px}.project-card--1,.project-card--2,.project-card--3,.project-card--4,.project-card--5,.project-card--6{grid-column:1;--project-y:0px;--project-tilt:0deg;border-radius:18px 12px 20px 14px}.project-card__image{height:240px}.project-card__content{padding:24px 22px 26px}.project-card:hover,.project-card.reveal:hover{transform:translateY(-7px) scale(1.01)}.ai-showcase{padding:94px 18px 112px}.ai-showcase__intro{display:block}.ai-showcase__intro p{margin-top:28px}.ai-showcase__field{grid-template-columns:1fr;gap:40px;margin-top:60px;padding-top:24px}.ai-video-card--1,.ai-video-card--2,.ai-video-card--3,.ai-video-card--4,.ai-video-card--5,.ai-video-card--6,.ai-video-card--7,.ai-video-card--8{grid-column:1;--ai-y:0px;--ai-tilt:0deg}.ai-video-card:nth-child(even){margin-left:18px}.ai-video-card:nth-child(3n){margin-left:0;margin-right:18px}.ai-video-card__media{height:250px}.ai-video-card__copy{padding:0 6px}.ai-showcase__sticker--one{right:8px;top:1%}.ai-showcase__sticker--two{left:4px;bottom:0}.ai-showcase__orbit{width:110px;height:110px;right:-42px;bottom:1%}}
@media (prefers-reduced-motion:reduce){.career-meteor,.ai-showcase__orbit{animation:none!important}.trace-backdrop__layer{transition:none}.project-card:hover,.project-card.reveal:hover,.ai-video-card:hover{transform:none}.ai-video-card__media video{transition:none}}

/* Quiet fields: keep the energy in the cards, not in the page backgrounds. */
.work-section{background:#eeebe3}
.work-section:before{right:clamp(-84px,-5vw,-32px);top:15%;width:clamp(180px,17vw,310px);height:clamp(180px,17vw,310px);border:1px solid rgba(65,119,93,.28);border-radius:48% 52% 42% 58%;box-shadow:0 0 0 18px rgba(65,119,93,.045),0 0 0 42px rgba(25,49,48,.03)}
.work-section:after{color:rgba(25,49,48,.42)}
.ai-showcase{background:#e9e8e1}
.ai-showcase:before{inset:10% -5% auto;height:1px;background:repeating-linear-gradient(90deg,transparent 0 52px,rgba(25,49,48,.15) 52px 53px);transform:rotate(-3deg)}
.ai-showcase:after{content:'';position:absolute;z-index:0;left:clamp(-92px,-5vw,-28px);bottom:7%;width:clamp(210px,19vw,350px);height:clamp(210px,19vw,350px);border:1px solid rgba(65,119,93,.3);border-radius:47% 53% 61% 39%;box-shadow:0 0 0 18px rgba(65,119,93,.045),0 0 0 44px rgba(25,49,48,.035);transform:rotate(-16deg);pointer-events:none}
.ai-showcase__field{width:100%;max-width:none;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(72px,7vw,132px) clamp(30px,3.5vw,66px);margin:clamp(108px,12vh,150px) 0 0;padding:50px 0 74px}
.ai-video-card--1{grid-column:1/span 3;--ai-y:32px;--ai-tilt:-2.4deg}
.ai-video-card--2{grid-column:5/span 3;--ai-y:-42px;--ai-tilt:2.7deg}
.ai-video-card--3{grid-column:10/span 3;--ai-y:54px;--ai-tilt:-1.9deg}
.ai-video-card--4{grid-column:2/span 4;--ai-y:-14px;--ai-tilt:1.8deg}
.ai-video-card--5{grid-column:7/span 3;--ai-y:48px;--ai-tilt:-2.9deg}
.ai-video-card--6{grid-column:10/span 3;--ai-y:-30px;--ai-tilt:1.35deg}
.ai-video-card--7{grid-column:1/span 4;--ai-y:36px;--ai-tilt:2.2deg}
.ai-video-card--8{grid-column:7/span 4;--ai-y:-40px;--ai-tilt:-1.65deg}
.ai-video-card--9{grid-column:4/span 4;--ai-y:-24px;--ai-tilt:2.1deg}
.ai-showcase__orbit{border-color:rgba(65,119,93,.4);box-shadow:0 0 0 18px rgba(65,119,93,.06),0 0 0 38px rgba(25,49,48,.04)}
.ai-showcase__orbit:after{color:#41775d}
@media (max-width:1000px){.ai-showcase__field{gap:58px 24px;margin-top:86px}.ai-video-card--1,.ai-video-card--2,.ai-video-card--3,.ai-video-card--4,.ai-video-card--5,.ai-video-card--6,.ai-video-card--7,.ai-video-card--8,.ai-video-card--9{grid-column:span 3;--ai-y:0px}.ai-showcase:after{width:210px;height:210px}}
@media (max-width:640px){.ai-showcase{background:#e9e8e1}.ai-showcase__field{grid-template-columns:1fr;gap:48px;margin-top:66px;padding-bottom:66px}.ai-showcase:after{left:-74px;bottom:4%;width:190px;height:190px}.ai-video-card--1,.ai-video-card--2,.ai-video-card--3,.ai-video-card--4,.ai-video-card--5,.ai-video-card--6,.ai-video-card--7,.ai-video-card--8,.ai-video-card--9{grid-column:1;--ai-y:0px;--ai-tilt:0deg}.ai-video-card:nth-child(even){margin-left:18px}.ai-video-card:nth-child(3n){margin-left:0;margin-right:18px}}

/* AI portfolio expansion: sixteen local videos, linked details, and a quiet moving field. */
.ai-showcase__intro h2{position:relative;max-width:900px;text-wrap:balance;text-shadow:0 0 22px rgba(65,119,93,.12)}
.ai-showcase__intro h2 span{display:inline-block;letter-spacing:-.08em;transform:translateX(-.02em) rotate(-1.2deg)}
.ai-showcase__intro h2 em{display:inline-block;background:linear-gradient(120deg,#41775d 8%,#193130 48%,#57a070 92%);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:none;transform:translateX(.08em) rotate(1deg)}
.ai-showcase__intro h2:after{content:'16 CUTS / ONE CREATIVE SYSTEM';position:absolute;left:2px;bottom:-28px;font:9px var(--mono);letter-spacing:.16em;color:rgba(25,49,48,.45);transform:rotate(-2deg)}
.work-section,.ai-showcase{background-position:0 0,100% 0,0 100%;background-size:620px 620px,720px 720px,560px 560px;animation:fieldDrift 22s ease-in-out infinite alternate}
.work-section{background-image:radial-gradient(circle at 12% 14%,rgba(87,160,112,.12) 0 1px,transparent 2px),radial-gradient(circle at 84% 26%,rgba(25,49,48,.1) 0 1px,transparent 2px),linear-gradient(115deg,transparent 0 46%,rgba(65,119,93,.055) 46.3% 46.6%,transparent 47%)}
.ai-showcase{background-image:radial-gradient(circle at 12% 18%,rgba(65,119,93,.12) 0 1px,transparent 2px),radial-gradient(circle at 86% 34%,rgba(25,49,48,.1) 0 1px,transparent 2px),linear-gradient(135deg,transparent 0 48%,rgba(65,119,93,.06) 48.2% 48.5%,transparent 49%)}
@keyframes fieldDrift{0%{background-position:0 0,100% 0,0 100%}100%{background-position:55px -30px,calc(100% - 60px) 46px,-38px calc(100% - 22px)}}
.ai-video-card{cursor:pointer;outline:none}
.ai-video-card:focus-visible{outline:2px solid var(--cobalt);outline-offset:8px}
.ai-video-card__media>i{position:absolute;right:14px;top:12px;z-index:2;width:26px;height:26px;display:grid;place-items:center;border-radius:50%;background:rgba(238,235,227,.86);color:var(--ink);font:14px var(--mono);font-style:normal;opacity:0;transform:translate(5px,-5px);transition:opacity .25s,transform .25s}
.ai-video-card:hover .ai-video-card__media>i,.ai-video-card:focus-visible .ai-video-card__media>i{opacity:1;transform:none}
.ai-video-card--10{grid-column:9/span 3;--ai-y:22px;--ai-tilt:-2deg}.ai-video-card--11{grid-column:1/span 3;--ai-y:-34px;--ai-tilt:1.4deg}.ai-video-card--12{grid-column:5/span 3;--ai-y:42px;--ai-tilt:-1.8deg}.ai-video-card--13{grid-column:9/span 4;--ai-y:-28px;--ai-tilt:2.2deg}.ai-video-card--14{grid-column:2/span 4;--ai-y:36px;--ai-tilt:-1.4deg}.ai-video-card--15{grid-column:7/span 3;--ai-y:-46px;--ai-tilt:1.8deg}.ai-video-card--16{grid-column:10/span 3;--ai-y:18px;--ai-tilt:-2.3deg}
.ai-video-card--10,.ai-video-card--11,.ai-video-card--12,.ai-video-card--13,.ai-video-card--14,.ai-video-card--15,.ai-video-card--16{grid-row:auto}
.project-modal.is-video-detail .project-modal__media{background:var(--ink);padding:0;display:flex;align-items:center;justify-content:center}
.project-modal.is-video-detail .project-modal__media:after{content:'VIDEO / DETAIL';position:absolute;right:20px;top:20px;color:rgba(238,235,227,.7);font:9px var(--mono);letter-spacing:.14em;z-index:2}
.project-modal.is-video-detail .modal-media__video{display:block;width:100%;height:100%;object-fit:cover;background:#0d1716}
.project-modal .modal-media__video[hidden]{display:none!important}

/* Video detail windows follow each file's intrinsic aspect ratio. */
.project-modal.is-video-detail{width:min(var(--video-modal-width,1240px),100%);height:min(var(--video-modal-height,790px),calc(100vh - 40px));grid-template-columns:minmax(0,var(--video-panel-width,1.18fr)) minmax(0,1fr);align-items:stretch;background:var(--ink)}
.project-modal.is-video-detail .project-modal__media{width:var(--video-panel-width,100%);height:var(--video-panel-height,100%);min-height:0;max-height:none;align-self:center;justify-self:center;overflow:hidden}
.project-modal.is-video-detail .modal-media__video{object-fit:contain;object-position:center;width:100%;height:100%}
.project-modal.is-video-detail.is-video-loading .project-modal__media:before,.project-modal.is-video-detail.is-video-error .project-modal__media:before{content:'视频加载中 / LOADING';position:absolute;z-index:3;left:50%;top:50%;transform:translate(-50%,-50%);padding:10px 14px;border:1px solid rgba(238,235,227,.35);border-radius:999px;background:rgba(23,23,23,.74);color:var(--paper);font:10px var(--mono);letter-spacing:.1em;white-space:nowrap}
.project-modal.is-video-detail.is-video-error .project-modal__media:before{content:'视频加载失败 / RETRY'}
.project-modal.is-video-detail.is-video-loading .modal-media__video{opacity:.18}
.project-modal.is-video-detail .project-modal__body{height:100%;min-width:0;min-height:0;overflow-y:auto;background:linear-gradient(145deg,#f8f3e8,#e8f0eb)}
@media (max-width:1000px){.project-modal.is-video-detail{width:min(var(--video-modal-width,100%),100%);grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr);align-items:stretch}.project-modal.is-video-detail .project-modal__media{width:var(--video-panel-width,100%);height:var(--video-panel-height,330px);min-height:0;max-height:none;margin-inline:auto}.project-modal.is-video-detail .project-modal__body{height:auto;min-height:0;overflow-y:auto}}
@media (max-width:640px){.project-modal.is-video-detail{width:100%;height:min(var(--video-modal-height,822px),calc(100vh - 22px));grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr);align-items:stretch}.project-modal.is-video-detail .project-modal__media{width:var(--video-panel-width,100%);height:var(--video-panel-height,250px);min-height:0;max-height:none;margin-inline:auto}.project-modal.is-video-detail .modal-media__video{object-fit:contain}.project-modal.is-video-detail .project-modal__body{height:auto;min-height:0;overflow-y:auto}}
.video-related{display:grid;gap:8px;margin:24px 0 28px;padding-top:16px;border-top:1px solid rgba(25,49,48,.2)}
.video-related>span{font:9px var(--mono);letter-spacing:.14em;color:rgba(25,49,48,.58)}
.video-related button{display:grid;grid-template-columns:1fr auto 18px;align-items:center;gap:8px;border:0;border-bottom:1px solid rgba(25,49,48,.12);background:transparent;text-align:left;padding:10px 0;color:var(--ink);cursor:pointer}
.video-related button:hover,.video-related button:focus-visible{color:var(--cobalt);transform:translateX(5px)}
.video-related b{font:500 14px var(--serif)}.video-related small{font:10px var(--mono);opacity:.58}.video-related i{font-style:normal}
@media (max-width:1000px){.ai-video-card--10,.ai-video-card--11,.ai-video-card--12,.ai-video-card--13,.ai-video-card--14,.ai-video-card--15,.ai-video-card--16{grid-column:span 3;--ai-y:0px}.ai-showcase__intro h2:after{bottom:-24px}}
@media (max-width:640px){.work-section,.ai-showcase{animation-duration:28s;background-size:420px 420px,520px 520px,400px 400px}.ai-showcase__intro h2 span,.ai-showcase__intro h2 em{transform:none}.ai-showcase__intro h2:after{bottom:-22px;font-size:8px}.ai-video-card--10,.ai-video-card--11,.ai-video-card--12,.ai-video-card--13,.ai-video-card--14,.ai-video-card--15,.ai-video-card--16{grid-column:1;--ai-y:0px;--ai-tilt:0deg}.project-modal.is-video-detail{grid-template-columns:1fr}.project-modal.is-video-detail .project-modal__media{min-height:0}.project-modal.is-video-detail .project-modal__body{padding:28px 22px 32px}}
@media (prefers-reduced-motion:reduce){.work-section,.ai-showcase{animation:none}.ai-video-card__media>i{transition:none}.video-related button{transition:none}}

/* Editorial hero identity and city-coordinate travel cards. */
.hero-manifesto{position:absolute!important;inset:0;width:100%!important;height:100%;margin:0!important;pointer-events:none;font-family:var(--serif)!important;font-size:inherit!important;line-height:1!important;letter-spacing:0!important}
.hero-identity,.hero-equation{position:absolute;z-index:3;display:flex;flex-direction:column;align-items:flex-start;text-align:left;writing-mode:horizontal-tb;text-orientation:mixed;white-space:normal;pointer-events:auto;color:var(--ink);filter:drop-shadow(0 4px 18px rgba(238,235,227,.42))}
.hero-identity{left:clamp(12px,1.3vw,20px);top:36%;width:clamp(150px,11vw,166px);transform:rotate(-1.2deg)}
.hero-equation{right:clamp(16px,2.2vw,34px);top:15.5%;width:clamp(158px,12.4vw,182px);align-items:flex-end;text-align:right;transform:rotate(1.1deg)}
.hero-identity:before,.hero-equation:before{content:'';position:absolute;z-index:-1;inset:-16px -14px;border:1px solid rgba(25,49,48,.14);background:linear-gradient(135deg,rgba(238,235,227,.28),rgba(238,235,227,.03));backdrop-filter:blur(3px);clip-path:polygon(2% 8%,96% 0,100% 89%,91% 100%,0 94%)}
.hero-equation:before{clip-path:polygon(7% 0,100% 8%,96% 100%,0 90%);background:linear-gradient(215deg,rgba(238,235,227,.31),rgba(87,160,112,.06))}
.hero-identity small,.hero-equation small{font:9px var(--mono);letter-spacing:.16em;color:rgba(25,49,48,.58);margin-bottom:14px}
.hero-identity strong{font:500 clamp(52px,4.8vw,72px)/.82 var(--serif);letter-spacing:-.075em;color:var(--ink)}
.hero-identity em{display:inline-flex!important;align-items:center;gap:6px;margin:17px 0 20px;padding:7px 9px 7px 8px;border-left:3px solid var(--cobalt);background:rgba(238,235,227,.38);font:500 clamp(14px,1.22vw,19px)/1.08 var(--sans);letter-spacing:.01em;color:var(--cobalt);font-style:normal!important}
.hero-identity em b,.hero-equation b b{text-combine-upright:initial!important;-webkit-text-combine:initial!important;font-weight:600}
.hero-identity>i{font:500 clamp(15px,1.25vw,19px)/1.3 var(--serif);font-style:normal;color:rgba(25,49,48,.76);letter-spacing:-.035em}
.hero-equation>span{display:flex;align-items:center;justify-content:flex-end;gap:7px;font:500 clamp(20px,1.9vw,28px)/.98 var(--serif);letter-spacing:-.05em;color:var(--ink)}
.hero-equation>span>i{font:400 17px var(--mono);font-style:normal;color:var(--cobalt);transform:rotate(8deg)}
.hero-equation>strong{display:flex;align-items:baseline;gap:8px;margin-top:11px;font:500 clamp(36px,3.25vw,50px)/.86 var(--serif);letter-spacing:-.075em;color:var(--cobalt)}
.hero-equation>strong i{font:400 .45em var(--mono);font-style:normal;color:var(--ink);transform:rotate(-7deg)}
.hero-equation>em{margin-top:23px;font:9px var(--mono);font-style:normal;letter-spacing:.13em;color:rgba(25,49,48,.55)}
.hero-title__support .hero-orbit__intro{position:absolute;left:clamp(30px,6vw,105px);bottom:11vh;max-width:330px;margin:0;text-align:left;padding-left:18px;border-left:1px solid rgba(25,49,48,.42);line-height:1.65}
.hero-title__support .hero-orbit__intro span{display:block;margin-bottom:7px;font:9px var(--mono);letter-spacing:.15em;color:var(--cobalt)}
.hero-title__support .circle-link{position:absolute;right:clamp(34px,6vw,105px);bottom:10vh;pointer-events:auto}
.orbit-card img{object-position:center;filter:saturate(.92) contrast(1.03);transition:transform .7s ease,filter .35s ease}.orbit-card:hover img,.orbit-card:focus-visible img{transform:scale(1.055);filter:saturate(1.04) contrast(1.05)}

.trace-card{isolation:isolate}.trace-card:after{background:linear-gradient(to top,rgba(10,16,15,.93) 0%,rgba(10,16,15,.2) 58%,rgba(10,16,15,.16) 100%)}
.trace-card__city-pin{position:absolute;z-index:4;right:22px;top:20px;display:inline-flex;align-items:center;gap:8px;padding:9px 12px;border:1px solid rgba(255,255,255,.6);border-radius:999px;background:rgba(17,23,22,.52);backdrop-filter:blur(10px);font:10px var(--mono)!important;letter-spacing:.08em;color:#fff!important;opacity:1!important;box-shadow:0 12px 28px rgba(0,0,0,.16)}
.trace-card__city-pin i{font-style:normal;color:#b9e0c5;animation:cityPinPulse 2.8s ease}
/* ═══ AI 作品墙 v2（2026-10-15：统一 9:16 卡片尺寸对齐 UltiVox 创作界面 + 真实视频封面帧） ═══ */
.ai-showcase__field{
  display:grid !important;
  grid-template-columns:repeat(auto-fill,minmax(142px,1fr)) !important;
  grid-auto-rows:auto !important;
  grid-auto-flow:row !important;
  gap:14px !important;
  max-width:1340px !important;
  margin:26px auto 0 !important;
  padding:0 !important;
  min-height:0 !important;
  position:relative !important;
  z-index:1 !important;
}
.ai-showcase__field .ai-showcase__sticker,.ai-showcase__field .ai-showcase__orbit{display:none !important}
.ai-wall-card{position:relative;aspect-ratio:9/16;width:100%;border-radius:14px;overflow:hidden;background:#14161a;cursor:pointer;border:1px solid rgba(20,20,20,.08);box-shadow:0 8px 20px rgba(20,20,20,.10);transition:transform .22s ease,box-shadow .22s ease;transform:none !important}
.ai-wall-card:hover,.ai-wall-card:focus-visible{transform:translateY(-3px) !important;box-shadow:0 16px 32px rgba(20,20,20,.18)}
.ai-wall-card--landscape{grid-column:span 2;aspect-ratio:16/9}
.ai-wall-card video{position:absolute;inset:0;width:100% !important;height:100% !important;object-fit:cover;display:block;background:#000}
.ai-wall-card__badge{position:absolute;top:9px;left:9px;z-index:2;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.08em;background:rgba(15,16,20,.55);color:#fff;backdrop-filter:blur(6px)}
.ai-wall-card--tpl .ai-wall-card__badge{background:rgba(255,101,64,.88)}
.ai-wall-card__overlay{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:24px 10px 9px;background:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,.70) 62%);color:#fff;display:flex;flex-direction:column;gap:2px;pointer-events:none}
.ai-wall-card__overlay strong{font-size:12.5px;line-height:1.35;font-weight:700;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.ai-wall-card__overlay small{font-size:10.5px;opacity:.75;letter-spacing:.03em}
/* 删除作品集上方的装饰性黑色组件与空白区域（2026-10-15 用户要求全部移除） */
.ai-showcase [data-ai-ambient]{display:none !important}
.ai-showcase .ai-showcase__sticker,.ai-showcase .ai-showcase__orbit{display:none !important}
.ai-showcase{padding-top:clamp(56px,7vh,96px) !important;padding-bottom:clamp(56px,7vh,96px) !important}
.ai-showcase__intro{margin-bottom:0 !important}
@media (max-width:640px){
  .ai-showcase__field{grid-template-columns:repeat(2,1fr) !important;gap:10px !important}
  .ai-wall-card--landscape{grid-column:span 2}
}
