@font-face{font-family:Manrope;src:url(/fonts/manrope-regular.ttf)format("truetype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Manrope;src:url(/fonts/manrope-semibold.ttf)format("truetype");font-style:normal;font-weight:500 700;font-display:swap}@font-face{font-family:Manrope;src:url(/fonts/manrope-extrabold.ttf)format("truetype");font-style:normal;font-weight:750 900;font-display:swap}:root{--ink:#101217;--ink-soft:#1c2028;--paper:#f0f1eb;--signal:#d9ef75;--muted:#a5a9b3;--blue:#7988f0;--line:#f0f1eb30;--display:"Iowan Old Style","Baskerville","Times New Roman",serif;--sans:Manrope,Arial,sans-serif;--ease:cubic-bezier(.22,1,.36,1);--gutter:clamp(20px,3.5vw,72px)}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--ink);scroll-padding-top:148px}body{background:var(--ink);color:var(--paper);font:400 1rem/1.6 var(--sans);-webkit-font-smoothing:antialiased;margin:0}h1,h2,h3,p,figure{margin:0}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button,summary{cursor:pointer}img{max-width:100%;display:block}::selection{background:var(--signal);color:var(--ink)}:focus-visible{outline-offset:6px;outline:2px solid}.skip-link{z-index:110;background:var(--signal);color:var(--ink);padding:14px 24px;position:fixed;top:10px;left:20px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.site-header{z-index:50;min-height:80px;padding:0 var(--gutter);border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);grid-template-columns:1fr auto 1fr;align-items:center;gap:32px;display:grid;position:sticky;top:0}.wordmark{width:fit-content;line-height:1}.wordmark>span{text-transform:lowercase}.site-header>nav{align-items:center;gap:32px;font-size:.875rem;display:flex}.site-header>nav a{padding:8px 0;position:relative}.site-header>nav a:after{content:"";background:var(--signal);transform-origin:0;width:100%;height:1px;transition:transform .4s var(--ease);position:absolute;bottom:2px;left:0;transform:scaleX(0)}.site-header>nav a:hover:after,.site-header>nav a[aria-current]:after{transform:scaleX(1)}.header-tools{justify-self:end}.header-contact{align-items:center;gap:18px;font-size:.875rem;display:flex}.header-contact b{background:var(--signal);width:40px;height:40px;color:var(--ink);transition:transform .4s var(--ease);border-radius:50%;place-items:center;font-size:1.1rem;display:grid}.header-contact:hover b{transform:rotate(45deg)}.mobile-nav{display:none}.mobile-nav summary{border:1px solid var(--line);border-radius:4px;padding:12px 16px;font-size:.875rem;list-style:none}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav summary:after{content:" +";margin-left:14px}.mobile-nav[open] summary:after{content:" −"}.mobile-nav>div{padding:24px var(--gutter) 36px;background:var(--ink-soft);border-bottom:1px solid var(--line);position:absolute;top:79px;left:0;right:0;box-shadow:0 30px 80px #0005}.mobile-nav>div a{border-bottom:1px solid var(--line);letter-spacing:-.04em;padding:14px 0;font-size:clamp(1.3rem,6vw,2.4rem);display:flex}.mobile-nav[open]>div{animation:menu-in .45s var(--ease)}.eyebrow{letter-spacing:.11em;text-transform:uppercase;font-size:.75rem;font-weight:600}.section{scroll-margin-top:76px;position:relative}.section-heading{padding:100px var(--gutter) 64px}.section-heading h2{letter-spacing:-.07em;font-size:clamp(4rem,10.5vw,10rem);font-weight:500;line-height:.96}.section-heading h2 em{font-family:var(--display);font-weight:400}.work-heading{padding-top:110px;padding-bottom:90px;position:relative}.work-heading .eyebrow{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;padding-top:20px;display:flex}.work-heading h2{margin:54px 0 42px}.work-heading h2 sup{vertical-align:top;font:400 .875rem/2 var(--sans);letter-spacing:0;margin:0 0 0 20px;display:inline-block}.work-heading h2 em{color:var(--signal)}.work-introduction{justify-content:flex-end;align-items:center;gap:32px;padding-right:2vw;display:flex}.work-introduction p{max-width:395px;color:var(--muted)}.asterisk{color:var(--signal);font-size:4.5rem;line-height:1}.project-jump-nav{z-index:25;background:var(--ink);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:0 var(--gutter);grid-template-columns:repeat(4,minmax(0,1fr));display:grid;position:sticky;top:79px}.project-jump-nav a{border-right:1px solid var(--line);align-items:center;gap:18px;padding:17px 24px;font-size:.875rem;display:flex;position:relative;overflow:hidden}.project-jump-nav a:first-child{border-left:1px solid var(--line)}.project-jump-nav a:before{content:"";background:var(--signal);transition:transform .5s var(--ease);position:absolute;inset:0;transform:translateY(101%)}.project-jump-nav a>*{z-index:1;position:relative}.project-jump-nav a>span:first-child{opacity:.65;font-size:.75rem}.project-jump-nav a>span:last-child{margin-left:auto}.project-jump-nav a[aria-current],.project-jump-nav a:hover{color:var(--ink)}.project-jump-nav a[aria-current]:before,.project-jump-nav a:hover:before{transform:translateY(0)}.project-list{padding:0 14px 14px}.project-scene{padding:30px calc(var(--gutter) - 14px) 40px;border:1px solid var(--line);color:var(--paper);background:#202723;border-top:0;border-radius:0 0 24px 24px;scroll-margin-top:136px;position:relative;overflow:hidden;box-shadow:0 -18px 50px #0003}.project-scene[data-sticky=true]{position:sticky;top:136px}.project-scene-1{--scene-accent:#d9ef75}.project-scene-2{--scene-accent:#b9c4ff;background:#202737}.project-scene-3{--scene-accent:#f0f1eb;background:#28282b}.project-scene-4{--scene-accent:#b0dbc9;background:#1c2c29}.research-summary{background:#101b19;border:1px solid #b0dbc944;border-radius:12px;padding:clamp(24px,3vw,44px)}.research-summary>div+div{border-top:1px solid #b0dbc933;margin-top:28px;padding-top:28px}.research-mode{color:#b0dbc9;margin-bottom:12px;font-size:.875rem;line-height:1.5;display:block}.research-summary h4{letter-spacing:-.035em;margin:0 0 14px;font-size:clamp(1.5rem,2.5vw,2.25rem);font-weight:500;line-height:1.2}.research-summary p{color:#bccbc5;margin:0;font-size:1rem;line-height:1.7}.research-summary .research-summary-note{border-top:1px solid #b0dbc933;margin-top:28px;padding-top:24px;font-size:.875rem}.research-groups{gap:24px;margin-top:28px;display:grid}.research-group{border:1px solid var(--line);background:#171c21;border-radius:12px;padding:24px}.research-group h3{color:var(--paper);margin:0 0 16px;font-size:1.2rem;font-weight:600;line-height:1.45}.research-group .plain-list{margin:0}@media (max-width:1100px){.project-jump-nav{grid-template-columns:repeat(2,minmax(0,1fr));position:relative;top:auto!important}.project-jump-nav a{border-bottom:1px solid var(--line)}}.project-meta{color:#bdc3c6;letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;gap:24px;font-size:.75rem;display:flex}.scene-heading h3{letter-spacing:-.065em;margin:14px 0 28px;font-size:clamp(3rem,7.4vw,7.6rem);font-weight:500;line-height:1.08}.scene-heading h3 a{justify-content:space-between;align-items:center;gap:24px;display:flex}.scene-heading h3 span{color:var(--scene-accent);transition:transform .6s var(--ease);font-family:Arial,sans-serif;font-weight:400}.scene-heading h3 a:hover span{transform:rotate(45deg)}.scene-body{grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);align-items:stretch;gap:clamp(32px,7vw,110px);display:grid}.project-copy{flex-direction:column;align-items:flex-start;max-width:440px;padding:8px 0 0;display:flex}.project-copy>p{color:#c7ccce;font-size:1rem;line-height:1.7}.tags{flex-wrap:wrap;gap:8px 14px;margin:24px 0 0;padding:0;list-style:none;display:flex}.tags li{border-bottom:1px solid var(--line);color:#c0c5cb;padding-bottom:6px;font-size:.75rem}.card-actions,.hero-actions{flex-wrap:wrap;align-items:center;gap:18px 26px;margin-top:30px;display:flex}.button{min-height:50px;transition:background .25s,color .25s,transform .5s var(--ease);border-radius:999px;justify-content:center;align-items:center;gap:36px;padding:12px 22px;font-size:.875rem;font-weight:600;display:inline-flex}.button-primary{color:var(--ink);background:var(--scene-accent,var(--signal))}.button-primary:hover{background:var(--paper)}.text-link,.back-link{border-bottom:1px solid #8d929a;align-items:center;gap:22px;padding:6px 0;font-size:.875rem;display:inline-flex}.text-link span{transition:transform .4s var(--ease)}.text-link:hover span{transform:translate(3px,-3px)}.scene-number{color:var(--scene-accent);font:italic 4.5rem/.85 var(--display);letter-spacing:-.04em;margin-top:auto;padding-top:32px;display:block}.scene-number small{font:.75rem/1 var(--sans);letter-spacing:.05em;color:#a3abad;padding-left:12px}.project-media{aspect-ratio:1.5;isolation:isolate;background:#10151b;border-radius:12px;align-self:center;display:block;position:relative;overflow:hidden}.project-image{width:100%;height:100%;overflow:hidden}.project-image img{object-fit:cover;width:100%;height:100%;transition:transform .8s var(--ease),filter .7s}.project-corner{width:74px;height:74px;color:var(--ink);background:var(--scene-accent);text-align:center;transition:transform .45s var(--ease),opacity .3s;border-radius:50%;place-content:center;font-size:.75rem;line-height:1.35;display:grid;position:absolute;top:18px;right:18px}.skills-section{padding:110px var(--gutter);background:var(--blue);color:var(--ink);border-radius:24px 24px 0 0;grid-template-columns:1fr 1.15fr;align-items:start;gap:8vw;display:grid}.toolkit-heading{position:sticky;top:120px}.toolkit-heading h2{letter-spacing:-.065em;margin-top:44px;font-size:clamp(3.2rem,5.5vw,6rem);font-weight:500;line-height:.97}.toolkit-heading h2 em{font-family:var(--display);font-weight:400}.toolkit-emblem{align-items:center;gap:24px;margin-top:50px;display:flex}.toolkit-emblem>span{font-size:5rem;line-height:1;display:inline-block}.toolkit-emblem small{text-transform:uppercase;letter-spacing:.07em;font-size:.75rem}.skills-ledger{border-top:1px solid #10121760;margin-top:62px}.capability{border-bottom:1px solid #10121760}.capability summary{grid-template-columns:32px 1fr 32px;align-items:center;gap:20px;padding:28px 0;list-style:none;display:grid}.capability summary::-webkit-details-marker{display:none}.skill-number{font-size:.75rem}.capability h3{letter-spacing:-.045em;font-size:clamp(1.5rem,2.3vw,2.4rem);font-weight:500}.expand-icon{transition:transform .4s var(--ease);font-family:Arial,sans-serif;font-size:2rem;line-height:1}.capability[open] .expand-icon{transform:rotate(45deg)}.capability-content{padding:0 0 30px 52px}.capability-content ul{flex-wrap:wrap;gap:10px;margin:0;padding:0;list-style:none;display:flex}.capability-content li{border:1px solid #10121755;border-radius:4px;padding:8px 13px;font-size:.875rem}.capability[open] .capability-content{animation:menu-in .5s var(--ease)}.capability summary:hover h3{transform:translate(8px)}.capability h3{transition:transform .4s var(--ease)}.education-section{background:var(--ink);padding-bottom:110px}.education-heading h2{margin-top:38px;font-size:clamp(3.5rem,8.3vw,8rem)}.education-heading h2 em{color:var(--muted)}.education-grid{margin:0 var(--gutter);border-top:1px solid var(--line);grid-template-columns:1.2fr 1fr;display:grid}.education-grid article{padding:38px 5vw 0 0;position:relative}.education-grid article+article{border-left:1px solid var(--line);padding-left:5vw}.education-type{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:.75rem}.education-grid h3{letter-spacing:-.05em;margin:45px 0 18px;font-size:clamp(2rem,3.5vw,3.8rem);font-weight:500;line-height:1.1}.education-degree,.education-meta{color:var(--muted);font-size:1rem}.education-meta{margin-top:8px}.coursework{padding-top:35px}.coursework strong{text-transform:uppercase;letter-spacing:.07em;color:var(--muted);font-size:.75rem;font-weight:400}.coursework ul{flex-wrap:wrap;gap:4px 20px;margin:15px 0 0;padding:0;list-style:none;display:flex}.coursework li{font-size:.875rem}.education-mark{color:var(--signal);margin-top:35px;font-size:6rem;line-height:1;display:inline-block}.contact-section{padding:64px var(--gutter);background:var(--signal);color:var(--ink);border-radius:24px 24px 0 0}.contact-content{max-width:1300px;margin:0 auto}.contact-content h2{letter-spacing:-.055em;align-items:center;gap:.2em;margin:24px 0 35px;font-size:clamp(2.8rem,7vw,6rem);font-weight:500;line-height:1.12;display:flex}.contact-content h2 em{font-family:var(--display);font-weight:400}.contact-content h2>span{margin-left:auto}.contact-bubble{border:1px solid #10121755;border-radius:999px;align-items:center;gap:24px;width:fit-content;max-width:100%;padding:8px 8px 8px 25px;display:flex}.contact-email{gap:2px;min-width:0;display:grid}.contact-email>span{font-size:.75rem}.contact-email strong{overflow-wrap:anywhere;font-size:clamp(.875rem,1.4vw,1.125rem);font-weight:600}.contact-action{background:var(--ink);min-height:54px;color:var(--paper);transition:transform .4s var(--ease),background .3s;border-radius:999px;flex-shrink:0;align-items:center;gap:20px;padding:14px 22px;font-size:.875rem;display:flex}.contact-action>span:last-child{font-size:1.25rem}.contact-action:hover{background:#323937}.site-footer{padding:24px var(--gutter);color:var(--muted);text-transform:uppercase;letter-spacing:.06em;justify-content:space-between;gap:24px;font-size:.75rem;display:flex}.site-footer a:hover{color:var(--signal)}.detail-page{background:var(--ink);color:var(--paper)}.detail-hero{padding:46px var(--gutter) 64px;border-bottom:1px solid var(--line);position:relative;overflow:hidden}.back-link{color:var(--muted)}.detail-title-row{align-items:flex-end;gap:40px;margin-top:55px;display:flex;position:relative}.detail-title-row>div{z-index:1;flex:1;position:relative}.detail-title-row .eyebrow{color:var(--signal);margin-bottom:30px}.detail-title-row h1{letter-spacing:-.065em;overflow-wrap:anywhere;font-size:clamp(3.5rem,10vw,10rem);font-weight:500;line-height:1}.detail-subtitle{color:var(--muted);margin-top:24px;font-size:1rem}.detail-index{font:italic clamp(6rem,19vw,19rem)/.8 var(--display);color:var(--signal);letter-spacing:-.08em}.detail-lead{max-width:800px;color:var(--muted);margin:38px 0 0;font-size:clamp(1.1rem,1.8vw,1.5rem);line-height:1.65}.case-study-photo{margin:40px 0 0}.case-study-photo img{object-fit:cover;border:1px solid #b0dbc933;border-radius:16px;width:100%;height:auto;max-height:560px;display:block}.case-study-photo figcaption{color:var(--muted);margin-top:12px;font-size:.875rem;line-height:1.5}.detail-layout{padding:80px var(--gutter) 60px;grid-template-columns:minmax(0,1fr) 265px;gap:8vw;max-width:1600px;margin:auto;display:grid}.detail-main{min-width:0}.detail-main section{border-top:1px solid var(--line);padding:40px 0 65px;scroll-margin-top:110px}.detail-main .section-number{color:var(--signal);text-transform:uppercase;letter-spacing:.06em;margin-bottom:25px;font-size:.75rem}.detail-main h2{letter-spacing:-.05em;margin-bottom:24px;font-size:clamp(2rem,3.5vw,3.5rem);font-weight:500;line-height:1.15}.detail-main p,.detail-main li{color:#b9bfc7;font-size:1rem;line-height:1.8}.two-column-copy{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px;display:grid}.check-list,.plain-list{margin:0;padding:0;list-style:none}.check-list li,.plain-list li{border-bottom:1px solid var(--line);padding:16px 0 16px 28px;position:relative}.check-list li:before,.plain-list li:before{content:"↳";color:var(--signal);position:absolute;top:16px;left:0}.detail-aside{align-self:start;font-size:.875rem;position:sticky;top:112px}@media (min-width:901px){.detail-aside-long{max-height:calc(100dvh - 132px);padding-right:8px;overflow-y:auto}}.aside-label{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:18px;font-size:.75rem}.case-nav{flex-direction:column;margin-bottom:35px;display:flex}.case-nav a{border-top:1px solid var(--line);color:var(--muted);gap:18px;padding:10px 0;display:flex}.case-nav a[aria-current],.case-nav a:hover{color:var(--signal)}.detail-aside ul{margin:0;padding:0;list-style:none}.detail-aside li{padding:5px 0}.detail-aside .button{background:var(--signal);color:var(--ink);gap:12px;width:100%;margin-top:30px;padding:12px 16px}.architecture{margin-top:32px}.architecture-step{padding-bottom:26px;position:relative}.architecture-step:not(:last-child):after{content:"";border-left:1px solid var(--signal);position:absolute;top:42px;bottom:0;left:20px}.architecture-step>div{grid-template-columns:42px 1fr;align-items:center;gap:0 22px;padding:0 0 20px;display:grid}.architecture-step span{background:var(--signal);width:42px;height:42px;color:var(--ink);border-radius:50%;grid-row:1/3;place-items:center;font-size:.75rem;display:grid}.architecture-step strong{font-size:1rem;font-weight:500}.architecture-step small{color:var(--muted);grid-column:2;font-size:.875rem}.architecture-step>b{display:none}.next-project{padding:55px var(--gutter);background:var(--signal);color:var(--ink);display:block}.next-project>span{letter-spacing:.08em;text-transform:uppercase;font-size:.75rem;display:block}.next-project>strong{letter-spacing:-.045em;justify-content:space-between;gap:24px;margin-top:14px;font-size:clamp(2rem,5vw,5rem);font-weight:500;line-height:1.2;display:flex}.next-project i{transition:transform .5s var(--ease);font-style:normal}.next-project:hover i{transform:rotate(45deg)}@media (min-width:1600px){.scene-body{grid-template-columns:1fr 1.1fr}.project-media{max-height:540px}}@media (max-width:1100px){.site-header{gap:24px}.site-header>nav{gap:20px}.header-contact>span{display:none}.project-copy>p{font-size:1rem}.scene-body{grid-template-columns:.9fr 1.1fr;gap:40px}.scene-number{font-size:3.2rem}.skills-section,.detail-layout{gap:5vw}}@media (max-width:900px){.site-header{grid-template-columns:1fr auto auto;gap:18px}.site-header>nav{display:none}.mobile-nav{display:block}.project-scene{border-radius:0 0 20px 20px;padding-bottom:45px;position:relative;top:auto}.scene-body{grid-template-columns:1fr;gap:28px}.project-media{grid-row:1;width:100%;max-height:470px}.project-copy{grid-template-columns:1fr auto;gap:0 32px;max-width:none;display:grid}.project-copy>p,.project-copy .tags{grid-column:1}.scene-number{grid-area:1/2/3;align-self:center;margin:0;padding:0}.card-actions{grid-column:1/-1}.scene-heading h3{font-size:clamp(2.8rem,8vw,5rem)}.project-jump-nav a{gap:12px;padding:16px 14px}.project-jump-nav strong{font-size:.75rem}.skills-section{grid-template-columns:1fr 1.2fr;gap:40px;padding-block:75px}.capability summary{gap:12px}.capability h3{font-size:1.5rem}.capability-content{padding-left:44px}.detail-layout{grid-template-columns:1fr}.detail-aside{grid-row:1;grid-template-columns:1fr 1fr;gap:30px;display:grid;position:static}.detail-aside .button{align-self:end}.detail-aside .aside-reading{display:none}}@media (max-width:600px){html{scroll-padding-top:126px}.site-header{min-height:68px;padding-inline:20px}.mobile-nav>div{top:67px}.header-contact b{width:36px;height:36px}.mobile-nav summary{padding:8px 12px}.section-heading{padding:72px 20px 44px}.section-heading h2{font-size:clamp(3rem,13vw,5rem)}.work-heading h2{margin:36px 0}.work-heading h2 sup{margin-left:8px;font-size:.75rem}.work-introduction{align-items:flex-start;gap:24px;padding:0}.work-introduction p{font-size:1rem}.asterisk{font-size:3rem}.project-jump-nav{padding:0 6px;top:67px}.project-jump-nav a{gap:6px;min-width:0;padding:13px 8px}.project-jump-nav a>span:last-child{display:none}.project-jump-nav strong{text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.project-list{padding:0 8px 8px}.project-scene{padding:25px 12px 35px;scroll-margin-top:122px}.project-meta{gap:18px;font-size:.75rem}.project-meta>span:last-child{text-align:right;max-width:52%}.scene-heading h3{margin:25px 0;font-size:clamp(2.4rem,9vw,3.6rem)}.scene-heading h3 a{gap:14px}.project-media{aspect-ratio:1.4;border-radius:8px}.project-copy{display:flex}.scene-number{display:none}.project-corner{width:62px;height:62px;top:12px;right:12px}.tags{margin-top:20px}.card-actions{margin-top:26px}.skills-section{border-radius:18px 18px 0 0;grid-template-columns:1fr;gap:30px;padding:70px 20px}.toolkit-heading{position:static}.toolkit-heading h2{margin-top:32px;font-size:3.6rem}.toolkit-emblem{margin:0;position:absolute;top:80px;right:25px}.toolkit-emblem>span{font-size:3rem}.toolkit-emblem small{display:none}.skills-ledger{margin:0}.capability summary{padding:23px 0}.capability h3{font-size:1.6rem}.education-section{padding-bottom:70px}.education-grid{grid-template-columns:1fr;margin:0 20px}.education-grid article{padding:30px 0}.education-grid article+article{border-left:0;border-top:1px solid var(--line);padding:35px 0 0}.education-grid h3{margin-top:30px;font-size:2.6rem}.education-mark{font-size:3rem;position:absolute;bottom:0;right:0}.contact-section{padding:46px 20px}.contact-content h2{flex-wrap:wrap;gap:0 .2em;margin:26px 0;font-size:clamp(2.5rem,9.5vw,3.5rem)}.contact-content h2>span{display:none}.contact-bubble{justify-content:space-between;gap:12px;width:100%;padding:7px 7px 7px 18px}.contact-email strong{font-size:.875rem}.contact-action{justify-content:center;width:46px;min-height:46px;padding:10px}.contact-action-label{display:none}.site-footer{padding:22px 20px}.detail-hero{padding:32px 20px 45px}.detail-title-row{gap:12px;margin-top:42px}.detail-title-row h1{font-size:clamp(2.5rem,12vw,4.5rem)}.detail-index{display:none}.detail-title-row .eyebrow{margin-bottom:24px}.detail-lead{margin-top:28px;font-size:1.125rem}.detail-layout{padding:40px 20px}.detail-aside{border-bottom:1px solid var(--line);padding-bottom:35px;display:block}.detail-aside .button{width:fit-content}.detail-main section{padding-bottom:45px}.two-column-copy{grid-template-columns:1fr;gap:34px}.next-project{padding:35px 20px}}@media (min-width:901px) and (max-height:760px){.project-scene{position:relative;top:auto}}@keyframes menu-in{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}
:root{--ink:#101217;--ink-soft:#1c2028;--paper:#f0f1eb;--signal:#d9ef75;--muted:#a5a9b3;--ease:cubic-bezier(.22,1,.36,1)}.ui-icon{vertical-align:-.12em;flex-shrink:0;width:1em;height:1em;display:inline-block}.site-header{color:var(--paper);background:#101217e6}.wordmark>span{letter-spacing:-.1em;font-size:2.1rem;font-weight:750}.wordmark .wordmark-dot{color:var(--signal)}.studio-hero{background:var(--ink);color:var(--paper);padding:28px 3.5vw 0;overflow:hidden}.hero-eyeline,.hero-bottom{text-transform:uppercase;letter-spacing:.08em;justify-content:space-between;gap:24px;font-size:.75rem;display:flex}.hero-eyeline{color:var(--muted);padding-bottom:28px}.hero-title{letter-spacing:-.075em;z-index:2;pointer-events:none;margin:0;font-weight:550;line-height:.78;position:relative}.hero-title>span{padding-bottom:.1em;display:block;overflow:hidden}.hero-title>span>span{display:inline-block}.hero-first{letter-spacing:-.065em;font:italic 16vw/.78 Iowan Old Style,Baskerville,Times New Roman,serif}.hero-first i{vertical-align:top;color:var(--signal);margin:18px 0 0 24px;font:400 .16em/1 Arial,sans-serif;display:inline-block}.hero-last{text-align:right;text-transform:uppercase;font-size:15vw}.hero-last b{color:var(--signal);font-weight:400}.hero-stage{z-index:3;position:relative}.hero-intro{justify-content:space-between;align-items:center;gap:40px;padding:36px 0 28px;display:flex}.hero-intro>p{color:#b8bcc5;max-width:510px;margin:0;font-size:clamp(1.15rem,1.65vw,1.5rem);line-height:1.45}.hero-intro em{color:var(--paper);font-style:normal}.round-link{flex-shrink:0;align-items:center;gap:16px;font-size:.9rem;display:inline-flex}.round-link small{color:var(--muted);margin-top:5px;font-size:.75rem;display:block}.round-arrow{width:54px;height:54px;transition:background .3s,color .3s,transform .5s var(--ease);border:1px solid #61666f;border-radius:50%;flex-shrink:0;place-items:center;font-size:1.5rem;display:grid}.round-link:hover .round-arrow{background:var(--signal);color:var(--ink);transform:rotate(45deg)}.hero-bottom{color:var(--muted);padding:30px 0 20px}.hero-bottom a{color:var(--paper);gap:30px;display:flex}[data-motion=running] .hero-title>span>span{animation:title-in 1.25s var(--ease) both}[data-motion=running] .hero-last>span{animation-delay:.13s}@keyframes title-in{0%{transform:translateY(115%)rotate(3deg)}to{transform:translateY(0)rotate(0)}}@media (max-width:800px){.hero-intro{gap:28px}.hero-intro>p{max-width:390px}.round-link small{max-width:170px}}@media (max-width:580px){.studio-hero{padding:24px 20px 0}.hero-eyeline span:first-child{max-width:180px}.hero-title{margin:20px 0 12px}.hero-first{font-size:21vw}.hero-last{font-size:14vw}.hero-first i{margin:4px 0 0 14px}.hero-intro{flex-direction:column;align-items:flex-start;gap:24px;padding:12px 0 20px}.hero-intro>p,.round-link small{max-width:none}.hero-bottom{gap:15px;font-size:.75rem}.hero-bottom>span{max-width:140px;line-height:1.5}.hero-bottom a{align-items:center;gap:16px}}.reading-progress{z-index:100;background:var(--signal);transform-origin:0;pointer-events:none;width:100%;height:2px;position:fixed;top:0;left:0;transform:scaleX(0)}[data-motion=running] .hero-first{transform:translateX(var(--hero-first-x,0))}[data-motion=running] .hero-last{transform:translateX(var(--hero-last-x,0))}[data-motion=running] .hero-first i{transform:rotate(var(--hero-turn,0deg))}[data-motion=running] .asterisk,[data-motion=running] .toolkit-emblem>span{transform:rotate(var(--section-turn,0deg))}[data-motion=running] .scene-body{transform:scale(var(--scene-scale,1));opacity:var(--scene-dim,1);transform-origin:top}[data-motion=running] .project-media{transform:perspective(1000px) translateY(var(--scene-image-y,0)) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transition:transform .45s var(--ease)}[data-motion=running] .project-image img{transform:translate(var(--image-x,0),var(--image-y,0)) scale(1.055)}.project-media[data-screenshot]{aspect-ratio:16/9}.project-media[data-screenshot] .project-image img{object-fit:contain;filter:none}[data-motion=running] .project-media[data-screenshot] .project-image img{transform:none}.project-media[data-screenshot]:hover img{filter:none}[data-motion=running] .button-primary,[data-motion=running] .contact-action{transform:translate(var(--magnetic-x,0),var(--magnetic-y,0))}[data-motion=running] [data-reveal]{transition:opacity .9s var(--ease),transform .9s var(--ease),clip-path 1.1s var(--ease)}[data-motion=running] [data-reveal=pending]{opacity:0;clip-path:inset(0 0 12%);transform:translateY(45px)}[data-motion=running] [data-reveal=visible]{opacity:1;clip-path:inset(0);transform:translateY(0)}[data-motion=running] [data-reveal]:focus-within{opacity:1;clip-path:inset(0);transform:none}.contact-content h2>span{transition:transform .7s var(--ease)}.contact-section:hover h2>span{transform:rotate(45deg)}@media (hover:hover) and (pointer:fine){[data-motion=running] .project-media[data-pointer=active] .project-corner{top:var(--pointer-y,50%);left:var(--pointer-x,50%);right:auto;transform:translate(-50%,-50%)rotate(-8deg)}.project-media:hover img{filter:saturate(1.15)}}@media (min-width:1101px) and (hover:hover) and (pointer:fine){@view-transition{navigation:auto}}::view-transition-old(root){animation:.32s both page-out}::view-transition-new(root){animation:page-in .55s var(--ease) both}@keyframes page-out{to{opacity:0;transform:translateY(-18px)}}@keyframes page-in{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:none}}[data-page-hidden=true] *,[data-page-hidden=true] :before,[data-page-hidden=true] :after{animation-play-state:paused!important}@media (max-width:1100px),(hover:none),(pointer:coarse){.site-header{-webkit-backdrop-filter:none;background:var(--ink)}.reading-progress{display:none}.project-scene,.project-scene[data-sticky=true]{box-shadow:none;position:relative;top:auto}[data-motion=running] .hero-first,[data-motion=running] .hero-last,[data-motion=running] .hero-first i,[data-motion=running] .asterisk,[data-motion=running] .toolkit-emblem>span,[data-motion=running] .scene-body,[data-motion=running] .project-media,[data-motion=running] .project-image img,[data-motion=running] .button-primary,[data-motion=running] .contact-action{transform:none}[data-motion=running] .scene-body{opacity:1}[data-motion=running] [data-reveal]{clip-path:none;transition:opacity .35s,transform .35s}[data-motion=running] [data-reveal=pending]{transform:translateY(12px)}[data-motion=running] .hero-title>span>span{animation-duration:.55s}.project-image img{filter:none;transition:none}::view-transition-old(root){animation:none}::view-transition-new(root){animation:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.project-media,.scene-body,.toolkit-emblem>span,.asterisk,.hero-first,.hero-last{transform:none!important}[data-reveal]{opacity:1!important;clip-path:none!important;transform:none!important}::view-transition-old(root){animation:none!important}::view-transition-new(root){animation:none!important}}
