@font-face{font-family:Manrope;src:url('/assets/manrope-regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Manrope;src:url('/assets/manrope-bold.ttf') format('truetype');font-style:normal;font-weight:600 800;font-display:swap}
:root{--bg:#181b1a;--surface:#1d211f;--ink:#eae9df;--muted:#a4aba2;--accent:#da7956;--line:#363b36;--paper:#e9e7de;--dark:#222824;--ease:cubic-bezier(.2,.7,.2,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;background:var(--bg);color:var(--ink);font-family:Manrope,Arial,sans-serif;font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}body:after{content:"";position:fixed;inset:0;pointer-events:none;z-index:8;opacity:.025;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.86' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23fff' filter='url(%23n)' d='M0 0h180v180H0z'/%3E%3C/svg%3E")}
::selection{color:var(--bg);background:var(--accent)}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a,summary{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:6px}p,h1,h2,h3{margin:0}button{border:0}.wrap{width:min(1280px,calc(100% - 112px));margin-inline:auto}.accent{color:var(--accent)}.eyebrow{font-size:12px;font-weight:700;letter-spacing:.13em;display:flex;align-items:center;gap:18px}.tiny-cross{font-size:24px;line-height:1;color:var(--accent);font-weight:400}.skip-link{position:fixed;top:-70px;left:20px;z-index:20;background:var(--ink);color:var(--bg);padding:12px}.skip-link:focus{top:20px}.scroll-progress{position:fixed;left:0;top:0;height:2px;width:100%;background:var(--accent);transform:scaleX(0);transform-origin:left;z-index:15}
.header{height:112px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;gap:14px;align-items:center;font-size:13px;line-height:1.25;letter-spacing:-.03em}.brand-symbol{display:flex;align-items:baseline;font-weight:700;font-size:35px;line-height:1;letter-spacing:-.1em;width:42px}.brand-symbol>span{color:var(--accent)}.header nav{display:flex;gap:38px;font-size:14px}.header nav a{position:relative;padding:8px 0}.header nav a:after{content:"";position:absolute;bottom:1px;left:0;width:100%;height:1px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .3s}.header nav a:hover:after{transform:scaleX(1)}.motion-toggle{display:flex;align-items:center;gap:12px;background:none;color:var(--muted);font-size:12px;padding:10px 0 10px 10px}.motion-icon{display:flex;align-items:center;gap:3px;height:16px}.motion-icon i{width:2px;height:12px;background:var(--accent);animation:equalizer 1.4s ease-in-out infinite}.motion-icon i:nth-child(2){animation-delay:-.4s;height:6px}.motion-icon i:nth-child(3){animation-delay:-.8s;height:16px}@keyframes equalizer{50%{transform:scaleY(.3)}}
.hero{min-height:710px;display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:55px;padding-block:65px 72px}.hero-copy{position:relative;z-index:2}.hero h1{font-size:clamp(64px,7.8vw,112px);font-weight:400;line-height:1.03;letter-spacing:-.065em;margin-top:35px;margin-left:-6px}.hero-description{color:var(--muted);font-size:18px;line-height:1.7;margin-top:30px;letter-spacing:-.02em}.hero-description span{color:var(--ink)}.primary-link{display:inline-flex;align-items:center;gap:38px;margin-top:30px;padding:14px 22px;border:1px solid #56594e;border-radius:3px;font-size:14px;transition:color .25s,background .25s,border-color .25s}.primary-link:hover{background:var(--ink);color:var(--bg);border-color:var(--ink)}.button-dot{width:7px;height:7px;border-radius:50%;background:var(--accent);transition:transform .3s}.primary-link:hover .button-dot{transform:scale(1.5)}.hero-footnote{display:flex;gap:12px;align-items:center;margin-top:35px;font-size:12px;color:var(--muted)}.mini-line{width:24px;height:1px;background:var(--accent)}
.visual{position:relative;height:530px;min-width:0;background:radial-gradient(ellipse at center,#30392d88 0%,transparent 62%);isolation:isolate}.visual:before{content:"";position:absolute;inset:0;background-image:linear-gradient(#929b8010 1px,transparent 1px),linear-gradient(90deg,#929b8010 1px,transparent 1px);background-size:44px 44px;mask-image:radial-gradient(ellipse,#000 30%,transparent 75%);z-index:-1}.visual-top,.visual-bottom{position:absolute;left:20px;right:20px;display:flex;justify-content:space-between;gap:12px;font-size:10px;letter-spacing:.09em;color:var(--muted);z-index:2}.visual-top{top:18px}.visual-bottom{bottom:17px;font-size:9px}.visual-counter{color:var(--accent)}.visual-corner{position:absolute;width:13px;height:13px;border-color:#68725e;border-style:solid}.tl{top:0;left:0;border-width:1px 0 0 1px}.tr{top:0;right:0;border-width:1px 1px 0 0}.bl{bottom:0;left:0;border-width:0 0 1px 1px}.br{bottom:0;right:0;border-width:0 1px 1px 0}.visual canvas{position:absolute;inset:0;width:100%;height:100%}.visual-center{position:absolute;left:0;right:0;top:44%;text-align:center;pointer-events:none}.visual-center>span:first-child{font:italic 48px/1 Georgia,serif;letter-spacing:-.04em;text-shadow:0 2px 30px var(--bg)}.visual-sub{display:block;font-size:8px;letter-spacing:.15em;margin-top:16px;color:#babdaf}.visual-controls{position:absolute;bottom:56px;left:50%;transform:translateX(-50%);display:flex;background:#181b1ae8;border:1px solid #444c40;padding:4px;border-radius:30px;z-index:3;white-space:nowrap}.visual-controls button{padding:8px 16px;border-radius:24px;font-size:12px;color:var(--muted);background:transparent;transition:color .2s,background .2s}.visual-controls button[aria-pressed=true]{background:#d8ddcc;color:var(--bg)}.visual-controls button:hover{color:var(--ink)}.visual-controls button[aria-pressed=true]:hover{color:var(--bg)}
.principles-strip{border-block:1px solid var(--line)}.strip-inner{display:flex;justify-content:space-between;gap:20px;align-items:center;min-height:88px;font-size:12px;letter-spacing:.16em;color:#bdc2b4}.asterisk{font-size:30px;color:var(--accent);font-weight:400}.section{padding-block:115px}.section-index{color:var(--accent);font-size:12px;font-weight:400;letter-spacing:0}.section-heading{display:grid;grid-template-columns:1fr 1fr;gap:22px 60px;margin-bottom:65px}.section-heading>.eyebrow{grid-column:1/-1}.section h2{font-size:clamp(38px,4.1vw,58px);font-weight:400;letter-spacing:-.055em;line-height:1.16}.section h2 em{font-family:Georgia,serif;font-weight:400;color:#bfc5ab;letter-spacing:-.045em}.section-intro{color:var(--muted);align-self:end;padding-bottom:7px;font-size:16px}.career{display:grid;grid-template-columns:.72fr 1.28fr;gap:60px;padding:42px 0 45px;border-top:1px solid var(--line)}.career:last-child{border-bottom:1px solid var(--line)}.career-period{display:flex;gap:14px;align-items:center;align-self:start;flex-wrap:wrap;font-size:11px;letter-spacing:.06em;color:var(--muted);padding-top:8px}.timeline-point{width:7px;height:7px;border:1px solid #929a88;border-radius:50%}.current .timeline-point{background:var(--accent);border-color:var(--accent);box-shadow:0 0 0 5px #da795615}.current-tag{font-size:10px;border:1px solid #484d40;color:#c4c9ae;border-radius:20px;letter-spacing:0;padding:2px 10px}.company-heading{display:flex;justify-content:space-between;align-items:center}.company-heading h3{font-weight:400;font-size:34px;letter-spacing:-.045em;line-height:1.2}.company-mark{margin-right:6px}.gears{font-weight:700;font-size:31px;letter-spacing:-.11em;line-height:1;color:#8d9782}.beeline{display:flex;flex-direction:column;width:30px;height:30px;gap:4px;border-radius:50%;overflow:hidden;justify-content:center}.beeline i{display:block;width:100%;height:6px;background:#cebc68}.job-title{margin-top:10px;font-size:15px;color:#c7cebb}.role-divider{color:var(--accent);padding:0 8px}.career-description{color:var(--muted);font-size:15px;line-height:1.8;max-width:570px;margin-top:20px}.tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:23px}.tags span{font-size:11px;color:#b3baab;border:1px solid var(--line);border-radius:3px;padding:5px 10px}
.approach-section{background:var(--paper);color:var(--dark);position:relative}.approach-section .section{display:grid;grid-template-columns:1fr 1.1fr;gap:85px;padding-block:105px 115px}.approach-heading .eyebrow{color:#646c61;margin-bottom:27px}.approach-heading h2{font-size:44px}.approach-heading h2 em{color:#70795f}.focus-list{padding-top:40px}.focus-item{border-top:1px solid #c2c7b9}.focus-item:last-child{border-bottom:1px solid #c2c7b9}.focus-item summary{display:grid;grid-template-columns:28px 1fr 18px;align-items:center;gap:12px;cursor:pointer;padding:26px 0;list-style:none;font-size:18px;letter-spacing:-.025em}.focus-item summary::-webkit-details-marker{display:none}.focus-number{font-size:11px;color:#66715e;letter-spacing:0}.expand-icon{width:14px;height:14px;position:relative}.expand-icon:before,.expand-icon:after{content:"";position:absolute;top:6px;left:0;width:14px;height:1px;background:#636b5b;transition:transform .3s}.expand-icon:after{transform:rotate(90deg)}.focus-item[open] .expand-icon:after{transform:rotate(0)}.focus-content{padding:0 25px 27px 40px;animation:detail-in .3s var(--ease)}.focus-content p{font-size:15px;line-height:1.8;color:#60685b}.focus-caption{display:block;margin-top:18px;color:#747d6b;font-size:10px;letter-spacing:.12em}@keyframes detail-in{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}
.closing{min-height:360px;display:flex;gap:65px;align-items:center;position:relative}.closing-asterisk{font-size:105px;font-weight:400;line-height:1;color:var(--accent);animation:slow-turn 40s linear infinite}.closing p{font-size:clamp(36px,4.2vw,58px);font-weight:400;letter-spacing:-.05em;line-height:1.2}.closing p em{font-family:Georgia,serif;color:#bbc1a9;font-weight:400}.closing-note{margin-left:auto;font-size:11px;letter-spacing:.08em;line-height:2;color:var(--muted)}@keyframes slow-turn{to{transform:rotate(360deg)}}.footer{border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;min-height:100px;font-size:11px;color:var(--muted);gap:24px}.footer a{color:var(--ink);padding:10px 0}.footer a:hover{color:var(--accent)}
.js .reveal{opacity:0;transform:translateY(22px);transition:opacity .8s var(--ease),transform .8s var(--ease)}.js .reveal.is-visible{opacity:1;transform:translateY(0)}.paused *,.paused *:before,.paused *:after{animation-play-state:paused!important}.paused{scroll-behavior:auto}.paused .reveal{transition:none}.paused .motion-icon i{transform:scaleY(.4)}
@media(min-width:1500px){.hero{min-height:770px}.visual{height:570px}}
@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.hero{gap:24px;min-height:650px}.hero h1{font-size:80px}.visual{height:460px}.hero-description{font-size:16px}.visual-bottom{font-size:8px}.section-heading{gap:22px 40px}.career{gap:30px}.career-period{font-size:10px}.approach-section .section{gap:45px}.approach-heading h2{font-size:38px}.focus-item summary{font-size:16px}.closing{gap:35px}.closing-note{font-size:10px}}
@media(max-width:760px){.wrap{width:calc(100% - 40px)}.header{height:84px}.brand-symbol{font-size:30px;width:32px}.brand{gap:8px;font-size:11px}.header nav{gap:22px;font-size:13px}.motion-label{display:none}.motion-toggle{padding:12px}.hero{grid-template-columns:1fr;padding-block:50px 35px;gap:45px}.hero h1{font-size:clamp(60px,15vw,95px);margin-top:23px;margin-left:-3px}.hero .eyebrow{font-size:10px}.hero-description{font-size:17px;margin-top:25px}.primary-link{margin-top:25px;padding:13px 19px}.hero-footnote{margin-top:25px}.visual{height:420px;width:min(100%,500px);justify-self:center}.visual-center>span:first-child{font-size:44px}.visual-top{font-size:9px}.visual-bottom{font-size:8px}.principles-strip{overflow:hidden}.strip-inner{min-height:72px;gap:16px;font-size:9px;letter-spacing:.07em;flex-wrap:wrap;justify-content:center;padding-block:16px}.asterisk{font-size:22px}.section{padding-block:75px}.section-heading{display:block;margin-bottom:40px}.section-heading .eyebrow{margin-bottom:25px}.section h2{font-size:42px}.section-intro{margin-top:25px;font-size:15px}.career{display:block;padding-block:30px 35px}.career-period{padding:0;margin-bottom:24px;font-size:10px}.career-main{padding-left:20px}.company-heading h3{font-size:29px}.job-title{font-size:13px;line-height:1.7}.career-description{font-size:15px;margin-top:16px}.company-mark{margin-right:3px}.tags span{font-size:10px}.approach-section .section{display:block;padding-block:70px}.approach-heading h2{font-size:41px}.focus-list{padding-top:38px}.focus-item summary{font-size:17px;padding-block:23px;grid-template-columns:23px 1fr 16px;gap:8px}.focus-content{padding:0 5px 25px 31px}.focus-caption{font-size:9px}.closing{min-height:320px;gap:22px;flex-wrap:wrap;padding-block:55px}.closing-asterisk{font-size:70px}.closing p{font-size:36px}.closing-note{width:100%;margin-left:93px;font-size:9px;line-height:1.8}.closing-note br{display:none}.footer{min-height:100px;font-size:10px;flex-wrap:wrap;gap:10px;padding-block:25px}.footer-center{display:none}}
@media(max-width:380px){.header nav{gap:15px}.visual{height:370px}.visual-controls button{padding:8px 13px;font-size:11px}.visual-bottom span:last-child{display:none}.strip-inner .asterisk:last-of-type,.strip-inner>span:last-child{display:none}.hero-description{font-size:15px}.closing{gap:18px}.closing-asterisk{font-size:50px}.closing p{font-size:31px}.closing-note{margin-left:68px}.section h2{font-size:37px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js .reveal{opacity:1;transform:none}}
.visual-top,.visual-bottom,.visual-sub,.career-period,.current-tag,.tags span,.focus-number,.focus-caption,.closing-note,.footer,.brand,.hero .eyebrow{font-size:12px}
.career-description,.focus-content p{font-size:16px}
.visual-sub{letter-spacing:.06em}.visual-bottom{letter-spacing:.035em}.visual-bottom span:last-child{display:none}.visual-bottom{justify-content:center}
@media(max-width:760px){.strip-inner{font-size:12px;gap:12px}.strip-inner>span:last-child,.strip-inner .asterisk:last-of-type{display:none}.career-period{font-size:12px}.job-title{font-size:14px}.visual-sub{font-size:12px;letter-spacing:.01em}.closing-note{font-size:12px}.tags span{font-size:12px}.footer{font-size:12px}.visual-top{font-size:12px}.focus-caption{font-size:12px}.section-intro{font-size:16px}}
.paused .focus-content{animation:none}
