:root{--cream:#f3efe3;--paper:#fffdf5;--ink:#11130f;--muted:#65665f;--rule:#11130f2e;--cobalt:#0d4eb8;--cobalt-deep:#072d70;--citron:#d8ef4b;--solar:#f4bf35;--coral:#f4775f;--dusk:#393152;--dusk-deep:#19192b;--serif:"Iowan Old Style", "Baskerville", "Times New Roman", serif;--sans:"Helvetica Neue", Helvetica, Arial, sans-serif;--shell:min(1440px, calc(100vw - 64px));--radius:16px;--ease-out:cubic-bezier(.16, 1, .3, 1)}*{box-sizing:border-box}html{background:var(--cream);scroll-behavior:smooth;scroll-padding-top:5rem}body{background:var(--cream);min-width:320px;color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;overflow-x:clip}body:before{z-index:1000;content:"";mix-blend-mode:multiply;opacity:.04;pointer-events:none;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='.76' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.2'/%3E%3C/svg%3E");position:fixed;inset:-15%}::selection{background:var(--solar);color:var(--ink)}a{color:inherit;text-decoration:none}img,picture{display:block}img{max-width:100%}h1,h2,h3,h4,p{margin-top:0}main{overflow:clip}.atlas-shell{width:var(--shell);margin-inline:auto}.editorial-grid,.project-grid{-moz-column-gap:clamp(.75rem, 1.45vw, 1.5rem);grid-template-columns:repeat(12,minmax(0,1fr));column-gap:clamp(.75rem,1.45vw,1.5rem);display:grid}.skip-link{z-index:2000;background:var(--ink);color:var(--paper);padding:.7rem 1rem;font-size:.75rem;position:fixed;top:.75rem;left:.75rem;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}:focus-visible{outline:3px solid var(--solar);outline-offset:4px;border-radius:3px}
.site-header{z-index:100;border-bottom:1px solid var(--rule);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#f3efe3e6;position:sticky;top:0}.site-nav{justify-content:space-between;align-items:center;min-height:58px;display:flex;position:relative}.nav-name,.nav-links{z-index:1;position:relative}.sun-arc{width:clamp(9rem,18vw,15rem);height:32px;color:var(--ink);pointer-events:none;position:absolute;top:13px;left:50%;transform:translate(-50%)}.sun-arc svg{width:100%;height:100%;display:block;overflow:visible}.sun-arc__track,.sun-arc__halo{fill:none;stroke:currentColor;stroke-width:1px;vector-effect:non-scaling-stroke}.sun-arc__track{opacity:.2}.sun-arc__halo{stroke:var(--solar);opacity:.55}.sun-arc__disc{fill:var(--solar);stroke:var(--ink);stroke-width:1px;vector-effect:non-scaling-stroke}.nav-name{font-family:var(--serif);letter-spacing:-.035em;align-items:center;gap:.55rem;font-size:1.05rem;font-weight:700;display:inline-flex}.nav-name__mark{-o-object-fit:contain;object-fit:contain;flex:none;width:calc(1.4rem + 1px);height:calc(1.4rem + 1px)}.nav-links{align-items:center;gap:clamp(1rem,2.5vw,2.5rem);display:flex}.nav-links a,.text-link,.repository-link,.site-footer a{letter-spacing:.12em;text-transform:uppercase;font-size:.67rem;font-weight:700;position:relative}.nav-links a:after,.text-link:after,.repository-link:after,.site-footer a:after{content:"";transform-origin:100%;height:1px;transition:transform .3s var(--ease-out);background:currentColor;position:absolute;bottom:-.35rem;left:0;right:0;transform:scaleX(0)}.nav-links a:hover:after,.text-link:hover:after,.repository-link:hover:after,.site-footer a:hover:after,.nav-links a:focus-visible:after,.text-link:focus-visible:after,.repository-link:focus-visible:after,.site-footer a:focus-visible:after{transform-origin:0;transform:scaleX(1)}.nav-links a[aria-current=true]:after{transform-origin:0;transform:scaleX(.5)}.nav-links a[aria-current=true]:hover:after,.nav-links a[aria-current=true]:focus-visible:after{transform:scaleX(1)}
.eyebrow,.board-meta,.art-caption,.flight-index,.project-meta,.craft-notes{letter-spacing:.16em;text-transform:uppercase;font-size:.62rem;font-weight:700;line-height:1.35}.eyebrow{margin-bottom:1.25rem}.atlas-picture{border-radius:var(--radius);background:#d9d4c6;position:relative;overflow:hidden}.atlas-picture img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%}.hero-section{padding:clamp(1rem,2vw,1.8rem) 0 clamp(2rem,3vw,3rem)}.board-meta{color:var(--muted);grid-template-columns:1fr 1fr 1fr;padding:0 0 .85rem;display:grid}.board-meta p{margin-bottom:0}.board-meta p:nth-child(2){text-align:center}.board-meta p:last-child{text-align:right}.hero-art{border-radius:var(--radius);position:relative;overflow:hidden}.atlas-picture--hero{aspect-ratio:16/8.7;border-radius:0}.atlas-picture--hero img{-o-object-position:center 88%;object-position:center 88%}.art-caption{z-index:2;margin:0;position:absolute;bottom:1rem;left:1.15rem}.art-caption--light{color:var(--paper);text-shadow:0 1px 8px #00000061}.hero-copy{border-bottom:1px solid var(--ink);align-items:end;padding:clamp(1.5rem,3vw,3rem) 0 clamp(2.5rem,5vw,4.5rem)}.hero-copy-release{position:relative}.hero-identity{grid-column:1/span 5}.hero-identity h1{max-width:8ch;font-family:var(--serif);letter-spacing:-.075em;margin-bottom:0;font-size:clamp(4rem,9vw,9.4rem);font-weight:500;line-height:.73}.hero-statement{grid-column:7/-1}.hero-statement h2{max-width:13ch;font-family:var(--serif);letter-spacing:-.055em;margin-bottom:1.5rem;font-size:clamp(2rem,4.4vw,4.5rem);font-weight:500;line-height:.96}.hero-statement>p{max-width:40rem;color:var(--muted);margin-bottom:1.75rem;font-size:clamp(.9rem,1.25vw,1.06rem);line-height:1.65}
.craft-section{--chapter-wipe-base:var(--dusk);--chapter-wipe-color:var(--citron);isolation:isolate;background:var(--citron);position:relative}.craft-board,.craft-marquee{z-index:1;position:relative}.craft-board{border-bottom:1px solid var(--ink);grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"copy artwork";min-height:min(50rem,100svh - 59px);display:grid}.section-heading h2{font-family:var(--serif);letter-spacing:-.07em;margin-bottom:0;font-size:clamp(3.1rem,7.5vw,7.8rem);font-weight:500;line-height:.88}.craft-heading{position:relative}.craft-heading h2{z-index:1;max-width:8ch;font-size:clamp(3.5rem,5.7vw,6.7rem);line-height:.86;position:relative}.craft-ghost{display:none}.craft-copy{width:min(100%,34rem);margin-top:clamp(1.75rem,3vw,3rem)}.craft-copy p,.experience-kicker,.projects-intro>p,.contact-copy p{font-size:clamp(.94rem,1.35vw,1.14rem);line-height:1.6}.craft-copy .lede{font-family:var(--serif);letter-spacing:-.035em;margin-bottom:1.25rem;font-size:clamp(1.5rem,2.25vw,2.5rem);line-height:1.08}.craft-plate{background:#a8a97b;grid-area:artwork;min-height:0;position:relative;overflow:hidden}.craft-plate--inset{border:1px solid #11130f3d;border-radius:clamp(1rem,1.8vw,1.6rem);margin:clamp(1rem,1.5vw,1.75rem);box-shadow:0 1.5rem 4rem #11130f1f}.craft-art{border-radius:0;width:100%;height:100%;position:absolute;inset:0}.craft-art img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%}.craft-panel{border-right:1px solid var(--ink);grid-area:copy;align-items:center;min-width:0;padding:clamp(2rem,4vw,4.5rem) clamp(1.5rem,4.6vw,5.5rem);display:flex}.craft-narrative{width:min(100%,42rem)}.craft-notes{width:min(100%,34rem);margin-top:clamp(1.5rem,3vw,2.75rem)}.craft-logo-grid{background:var(--ink);border-radius:.8rem;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;margin:0;padding:1px;list-style:none;display:grid;overflow:hidden}.skill-logo{aspect-ratio:1;min-width:0;transition:background-color .18s var(--ease-out), transform .18s var(--ease-out);background:#fffdf5f5;place-items:center;margin:0;display:grid;position:relative;overflow:hidden}.skill-logo:is(:hover,:focus-visible){z-index:1;background:var(--ink);transform:scale(1.04)}.skill-logo__glyph{width:clamp(1.45rem,2.1vw,2rem);height:auto;transition:opacity .18s var(--ease-out), transform .18s var(--ease-out)}.skill-logo:is(:hover,:focus-visible) .skill-logo__glyph{opacity:.12;transform:scale(.8)}.skill-logo__name{color:var(--paper);letter-spacing:.08em;opacity:0;pointer-events:none;text-align:center;text-transform:uppercase;transition:opacity .18s var(--ease-out), transform .18s var(--ease-out);place-items:center;padding:.35rem;font-size:clamp(.48rem,.65vw,.64rem);font-weight:700;line-height:1.15;display:grid;position:absolute;inset:0;transform:translateY(.3rem)}.skill-logo:is(:hover,:focus-visible) .skill-logo__name{opacity:1;transform:translateY(0)}.skill-logo[data-skill-logo=PostgreSQL] .skill-logo__name,.skill-logo[data-skill-logo=Kubernetes] .skill-logo__name,.skill-logo[data-skill-logo=TensorFlow] .skill-logo__name{letter-spacing:.02em;overflow-wrap:anywhere;padding-inline:.2rem;font-size:clamp(.4rem,.52vw,.52rem)}.craft-marquee{display:none}@media (max-width:720px){.craft-board{grid-template:"artwork"minmax(18rem,46svh)"copy"/1fr;min-height:0}.craft-panel{border-top:1px solid var(--ink);border-left:0;border-right:0;padding:2.8rem 1.1rem 3.2rem}.craft-heading h2{max-width:8ch;font-size:clamp(3.5rem,16vw,5.3rem)}.craft-copy{margin-top:1.75rem}.craft-copy .lede{font-size:clamp(1.45rem,7.5vw,2rem)}.craft-logo-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.skill-logo__glyph{width:clamp(1.35rem,7vw,1.8rem)}}
.experience-section{isolation:isolate;background:var(--dusk-deep);color:var(--paper);position:relative}.experience-section:before{z-index:0;background:var(--ink);content:"";opacity:0;pointer-events:none;position:absolute;inset:0}.experience-board,.experience-section>.atlas-shell{z-index:1;position:relative}.experience-board{border-bottom:1px solid #fffdf540;grid-template-columns:repeat(2,minmax(0,1fr));min-height:min(50rem,100svh - 59px);display:grid}.experience-light-step{pointer-events:none;width:1px;height:1px;position:absolute;left:0}.experience-light-step:first-of-type{top:18%}.experience-light-step:nth-of-type(2){top:50%}.experience-light-step:nth-of-type(3){top:82%}.experience-intro{width:min(100%,40rem)}.experience-intro .section-heading h2{max-width:7ch;color:var(--coral);margin-bottom:clamp(1.5rem,2.6vw,2.5rem);font-size:clamp(4rem,7.3vw,8.3rem);line-height:.8}.experience-kicker{color:#fffdf5b8;max-width:32rem;margin-bottom:0}.experience-plate{background:var(--dusk);min-height:0;position:relative;overflow:hidden}.experience-plate--inset{border:1px solid #fffdf52e;border-radius:clamp(1rem,1.8vw,1.6rem);margin:clamp(1rem,1.5vw,1.75rem);box-shadow:0 1.5rem 4rem #0000002e}.experience-art{border-radius:0;width:100%;height:100%;position:absolute;inset:0}.experience-art img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%}.experience-panel{border-left:1px solid #fffdf540;align-items:center;min-width:0;padding:clamp(2rem,4vw,4.5rem) clamp(1.5rem,4.6vw,5.5rem);display:flex}.experience-plate__warmth{z-index:1;background:linear-gradient(135deg, var(--solar), var(--coral));mix-blend-mode:soft-light;opacity:0;pointer-events:none;position:absolute;inset:0}.experience-log-shell{padding-top:clamp(3.5rem,7vw,7rem);padding-bottom:clamp(5rem,10vw,10rem)}.flight-log{border-top:1px solid #fffdf540;margin:0;padding:0;list-style:none}.flight-entry{-moz-column-gap:clamp(.75rem, 1.45vw, 1.5rem);grid-template-columns:repeat(12,minmax(0,1fr));align-items:start;column-gap:clamp(.75rem,1.45vw,1.5rem);min-height:146px;padding:1.4rem 0 1.8rem;display:grid;position:relative}.flight-entry:after{content:"";transform-origin:0;background:#fffdf540;height:1px;position:absolute;bottom:0;left:0;right:0}.flight-index{color:var(--coral);grid-column:1/span 1}.flight-heading{grid-column:2/span 4}.flight-entry h3{font-family:var(--serif);letter-spacing:-.035em;margin-bottom:.35rem;font-size:clamp(1.5rem,2.4vw,2.5rem);font-weight:500}.flight-role,.flight-period{color:#fffdf59e;text-transform:uppercase;font-size:.75rem;font-weight:700;line-height:1.45}.flight-summary{color:#fffdf5c7;grid-column:6/span 4;max-width:34rem;margin-bottom:0;font-size:.9rem;line-height:1.55}.flight-summary--education span{display:block}.flight-summary--education span+span{margin-top:.45rem}.flight-period{text-align:right;grid-column:11/-1;margin-bottom:0}.flight-period span{margin-top:.45rem;display:block}.flight-dossier{grid-column:2/-1;margin-top:1.15rem}.flight-dossier__toggle{width:100%;color:var(--coral);cursor:pointer;font:inherit;letter-spacing:.14em;text-align:left;text-transform:uppercase;background:0 0;border:0;padding:.65rem 0;font-size:.7rem;font-weight:700;display:none}.flight-dossier[data-dossier-ready] .flight-dossier__toggle{justify-content:space-between;align-items:center;display:flex}.flight-dossier__symbol{transition:transform .24s var(--ease-out);font-size:1rem;transform:rotate(45deg)}.flight-dossier[data-state=closed] .flight-dossier__symbol{transform:rotate(0)}.flight-dossier__panel{grid-template-rows:1fr;display:grid}.flight-dossier[data-state=closed] .flight-dossier__panel{grid-template-rows:0fr}.flight-dossier__inner{min-height:0;overflow:hidden}.flight-highlights{color:#fffdf5c7;gap:.7rem;max-width:58rem;margin:0;padding:.9rem 0 0 1.05rem;font-size:.86rem;line-height:1.55;display:grid}.flight-highlights li::marker{color:var(--coral)}.flight-technologies{flex-wrap:wrap;gap:.45rem;margin:1rem 0 0;padding:0 0 .2rem;list-style:none;display:flex}.flight-technologies li{color:#fffdf5bd;letter-spacing:.08em;text-transform:uppercase;border:1px solid #fffdf547;border-radius:999px;padding:.42rem .62rem;font-size:.62rem;font-weight:700}@media (prefers-reduced-motion:no-preference){.flight-dossier[data-dossier-animate] .flight-dossier__panel{transition:grid-template-rows .36s var(--ease-out)}html.atlas-js.atlas-reveal-ready .flight-entry:after{transition:transform .52s var(--ease-out) var(--atlas-reveal-delay,0s);transform:scaleX(0)}html.atlas-js.atlas-reveal-ready .flight-index{opacity:0;transform-origin:bottom;transition:opacity .42s var(--ease-out) calc(var(--atlas-reveal-delay,0s) + .1s), transform .42s var(--ease-out) calc(var(--atlas-reveal-delay,0s) + .1s);transform:translateY(85%)rotateX(-78deg)}html.atlas-js.atlas-reveal-ready .flight-heading,html.atlas-js.atlas-reveal-ready .flight-summary,html.atlas-js.atlas-reveal-ready .flight-period,html.atlas-js.atlas-reveal-ready .flight-dossier{opacity:0;transition:opacity .52s var(--ease-out) calc(var(--atlas-reveal-delay,0s) + .18s), transform .52s var(--ease-out) calc(var(--atlas-reveal-delay,0s) + .18s);transform:translateY(18px)}html.atlas-js.atlas-reveal-ready .flight-entry.is-revealed:after{transform:scaleX(1)}html.atlas-js.atlas-reveal-ready .flight-entry.is-revealed .flight-index,html.atlas-js.atlas-reveal-ready .flight-entry.is-revealed .flight-heading,html.atlas-js.atlas-reveal-ready .flight-entry.is-revealed .flight-summary,html.atlas-js.atlas-reveal-ready .flight-entry.is-revealed .flight-period,html.atlas-js.atlas-reveal-ready .flight-entry.is-revealed .flight-dossier{opacity:1;transform:translateY(0)rotateX(0)}}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){html.atlas-js .experience-section:before{animation:linear both atlas-experience-darken;animation-timeline:view();animation-range:entry exit}html.atlas-js .experience-art img{max-width:none;height:110%;animation:linear both atlas-experience-parallax;animation-timeline:view();animation-range:entry exit;position:relative;top:-5%}html.atlas-js .experience-plate__warmth{animation:linear both atlas-experience-warmth;animation-timeline:view();animation-range:entry exit}}}@supports not (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){html.atlas-js.atlas-experience-fallback .experience-section:before{opacity:var(--atlas-experience-darkness,0);transition:opacity .32s var(--ease-out)}html.atlas-js.atlas-experience-fallback .experience-plate__warmth{opacity:var(--atlas-experience-warmth,.06);transition:opacity .32s var(--ease-out)}}}@keyframes atlas-experience-darken{0%{opacity:0}50%{opacity:.175}to{opacity:.35}}@keyframes atlas-experience-warmth{0%{opacity:.06}50%{opacity:.12}to{opacity:.18}}@keyframes atlas-experience-parallax{0%{transform:translateY(-3%)}to{transform:translateY(3%)}}@media (max-width:720px){.experience-board{grid-template-rows:minmax(18rem,46svh) auto;grid-template-columns:1fr;min-height:0}.experience-panel{border-top:1px solid #fffdf540;border-left:0;padding:2.8rem 1.1rem 3.2rem}.experience-intro .section-heading h2{max-width:none;margin-bottom:1.25rem;font-size:clamp(3.8rem,18vw,5.6rem)}.experience-kicker{font-size:.92rem;line-height:1.5}.experience-log-shell{padding-top:3.5rem;padding-bottom:5rem}.flight-dossier{grid-column:2}.flight-highlights{padding-top:.75rem;font-size:.8rem}}
.projects-section{background:var(--cream);padding-top:clamp(5rem,10vw,10rem)}.projects-intro{align-items:end;padding-bottom:clamp(4rem,8vw,8rem)}.projects-intro .section-heading{grid-column:1/span 8}.projects-intro>p{color:var(--muted);grid-column:9/-1;margin-bottom:0}.project-panel-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(.75rem,1.5vw,1.5rem);padding-bottom:clamp(5rem,10vw,10rem);display:grid}.project-panel{isolation:isolate;aspect-ratio:.7;background:var(--dusk-deep);color:var(--paper);scroll-snap-align:center;border:1px solid #fff3;border-radius:clamp(1rem,1.8vw,1.6rem);position:relative;overflow:clip;box-shadow:0 1.5rem 4rem #11130f1f}.project-panel:after{z-index:4;border-radius:inherit;content:"";pointer-events:none;transition:border-color .4s var(--ease-out), box-shadow .4s var(--ease-out);border:1px solid #fff0;position:absolute;inset:0}.project-panel__art{z-index:0;border-radius:inherit;width:calc(100% + 2px);height:calc(100% + 2px);transition:filter .7s var(--ease-out), transform .9s var(--ease-out);position:absolute;inset:-1px}.project-panel__art img{-o-object-fit:cover;object-fit:cover;width:116%;max-width:none;height:100%;position:absolute;top:0;left:-8%}.project-panel--1 .project-panel__art img{-o-object-position:49% center;object-position:49% center}.project-panel--2 .project-panel__art img{-o-object-position:60% center;object-position:60% center}.project-panel--3 .project-panel__art img{-o-object-position:51% center;object-position:51% center}.project-panel__shade{z-index:1;pointer-events:none;transition:background-color .5s var(--ease-out);background:linear-gradient(#05080f0d 35%,#05080fc7 100%),linear-gradient(135deg,#0000 45%,#d8ef4b14);position:absolute;inset:0}.project-panel__copy{z-index:2;pointer-events:none;flex-direction:column;display:flex;position:absolute;bottom:clamp(1.35rem,2.5vw,2.4rem);left:clamp(1.25rem,2.3vw,2.2rem);right:clamp(1.25rem,2.3vw,2.2rem)}.project-panel__name{font-family:var(--serif);letter-spacing:-.065em;text-wrap:balance;transition:transform .52s var(--ease-out);font-size:clamp(2.35rem,4vw,4.4rem);font-weight:500;line-height:.86;transform:translateY(0)}.project-panel__description{opacity:0;max-width:28rem;max-height:0;transition:max-height .52s var(--ease-out), margin-top .52s var(--ease-out), opacity .32s ease, transform .52s var(--ease-out);margin-top:0;font-size:clamp(.76rem,1vw,.92rem);line-height:1.5;overflow:hidden;transform:translateY(1rem)}.project-panel__action{z-index:3;aspect-ratio:1;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;width:clamp(2.5rem,3.5vw,3.5rem);transition:background-color .36s var(--ease-out), opacity .3s ease, transform .52s var(--ease-out);background:#11130f1f;border:1px solid #ffffff8c;border-radius:50%;place-items:center;display:grid;position:absolute;top:clamp(1rem,1.6vw,1.5rem);right:clamp(1rem,1.6vw,1.5rem);transform:rotate(-24deg)scale(.72)}.project-panel__action span{font-size:1rem;line-height:1}.project-panel:hover .project-panel__art,.project-panel:focus-visible .project-panel__art{filter:saturate(1.08)contrast(1.03);transform:scale(1.045)}.project-panel:hover .project-panel__description,.project-panel:focus-visible .project-panel__description{opacity:.92;max-height:7rem;margin-top:1rem;transform:translateY(0)}.project-panel:hover .project-panel__action,.project-panel:focus-visible .project-panel__action{opacity:1;transform:rotate(0)scale(1)}.project-panel:hover:after,.project-panel:focus-visible:after{border-color:#d8ef4bc7;box-shadow:inset 0 0 0 1px #d8ef4b29}.project-site-header .project-back-link,.project-page__footer a{letter-spacing:.12em;text-transform:uppercase;font-size:.67rem;font-weight:700}.project-page{background:var(--cream);min-height:calc(100svh - 58px)}.project-page-study{min-height:calc(100svh - 58px)}.project-page__footer{border-top:1px solid var(--ink);justify-content:space-between;align-items:center;gap:2rem;padding:clamp(2rem,5vw,4rem) 0;display:flex}.project-page__footer a{align-items:center;gap:.6rem;display:inline-flex}.project-back-link,.project-page__footer a{transition:opacity .22s}.project-back-link:hover,.project-back-link:focus-visible,.project-page__footer a:hover,.project-page__footer a:focus-visible{opacity:.58}.project-chapter{--chapter-wipe-base:var(--cream);--project-case-start:-48px;--project-tech-start:48px;--project-pan-start:-6.522%;--project-pan-end:6.522%;isolation:isolate;padding:clamp(4rem,8vw,8rem) 0;position:relative}.project-chapter--1{--chapter-wipe-base:var(--cobalt-deep);--chapter-wipe-color:var(--cobalt);--project-results-accent:var(--citron);--repository-inverted:var(--cobalt);background:var(--cobalt);color:var(--paper)}.project-chapter--2{--chapter-wipe-color:var(--citron);--project-case-start:48px;--project-tech-start:-48px;--project-pan-start:6.522%;--project-pan-end:-6.522%;--project-results-accent:var(--cobalt);--repository-inverted:var(--citron);background:var(--citron);color:var(--ink)}.project-chapter--3{--chapter-wipe-base:var(--dusk-deep);--chapter-wipe-color:var(--dusk);--project-results-accent:var(--citron);--repository-inverted:var(--dusk);background:var(--dusk);color:var(--paper)}.project-grid{z-index:1;align-items:start;position:relative}.project-meta{grid-column:1/span 3;margin-bottom:clamp(2.5rem,5vw,4.5rem)}.project-meta p{margin-bottom:.55rem}.project-meta p:last-child{color:currentColor;opacity:.9;max-width:18rem;font-size:.6rem;line-height:1.5}.project-title{grid-column:5/-1;margin-bottom:clamp(2.5rem,5vw,4.5rem)}.project-title :is(h1,h3){font-family:var(--serif);letter-spacing:-.075em;margin-bottom:1rem;font-size:clamp(3.5rem,8.7vw,9rem);font-weight:500;line-height:.82}.project-title p{opacity:.76;max-width:42rem;margin-bottom:0;font-size:clamp(.95rem,1.4vw,1.2rem);line-height:1.55}.project-art{aspect-ratio:3/2;grid-column:1/span 8}.project-art img{-o-object-position:center;object-position:center;width:115%;max-width:none;position:relative;left:-7.6%}.case-study-copy{grid-column:9/-1;padding-left:clamp(1rem,2vw,2rem)}.case-study-copy>div{margin-bottom:1.4rem;padding:0 0 1.4rem;position:relative}.case-study-copy>div:after{content:"";transform-origin:0;background:currentColor;height:1px;position:absolute;bottom:0;left:0;right:0}.case-study-copy :is(h2,h4){letter-spacing:.15em;text-transform:uppercase;margin-bottom:.55rem;font-size:.62rem}.case-study-copy p{opacity:.78;margin-bottom:0;font-size:.9rem;line-height:1.55}.project-results{grid-column:9/-1;padding-left:clamp(1rem,2vw,2rem)}.project-results summary{color:currentColor;cursor:pointer;letter-spacing:.13em;text-transform:uppercase;border-top:1px solid;border-bottom:1px solid;justify-content:space-between;align-items:center;padding:.85rem 0;font-size:.66rem;font-weight:700;list-style:none;display:flex}.project-results summary::-webkit-details-marker{display:none}.project-results__symbol{color:var(--project-results-accent);transition:transform .22s var(--ease-out);font-size:1.1rem;line-height:1}.project-results[open] .project-results__symbol{transform:rotate(45deg)}.project-results__metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;margin:0;padding:1rem 0 .35rem;display:grid}.project-results__metrics>div{padding-right:.5rem}.project-results__metrics dt{color:var(--project-results-accent);font-family:var(--serif);letter-spacing:-.055em;margin-bottom:.25rem;font-size:clamp(2rem,3.4vw,3.3rem);font-weight:500;line-height:.9}.project-results__metrics dd{letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.68rem;font-weight:700;line-height:1.35}.repository-link{--repository-foreground:currentColor;border:1px solid var(--repository-foreground);color:var(--repository-foreground);letter-spacing:.1em;text-transform:uppercase;transform:translate3d(var(--atlas-magnet-x,0), var(--atlas-magnet-y,0), 0);transition:background-color .18s var(--ease-out), color .18s var(--ease-out);background:0 0;border-radius:999px;grid-column:9/-1;justify-self:start;align-items:center;gap:.55rem;margin:1.5rem 0 0 clamp(1rem,2vw,2rem);padding:.72rem 1rem;font-size:.7rem;font-weight:700;display:inline-flex}.repository-link span{transition:transform .22s var(--ease-out)}.repository-link:hover span,.repository-link:focus-visible span{transform:translate(3px,-3px)}.repository-link:hover,.repository-link:focus-visible,.repository-link:active{background:var(--repository-foreground);color:var(--repository-inverted)}.repository-link[data-magnetic-ready]{will-change:transform}.project-chapter--2 .project-art{grid-column:5/-1}.project-chapter--2 .case-study-copy{grid-area:3/1/auto/span 4;padding-left:0;padding-right:clamp(1rem,2vw,2rem)}.project-chapter--2 .project-results{grid-area:4/1/auto/span 4;padding-left:0;padding-right:clamp(1rem,2vw,2rem)}.project-chapter--2 .repository-link{grid-area:5/1/auto/span 4;margin-left:0}.chapter-wipe:before{pointer-events:none}@media (prefers-reduced-motion:no-preference){html.atlas-js.atlas-reveal-ready .case-study-copy[data-reveal-stagger]>div{opacity:0;transition:opacity .56s var(--ease-out) var(--atlas-reveal-delay,0s), transform .56s var(--ease-out) var(--atlas-reveal-delay,0s);transform:translateY(22px)}html.atlas-js.atlas-reveal-ready .case-study-copy[data-reveal-stagger]>div:after{transition:transform .62s var(--ease-out) var(--atlas-reveal-delay,0s);transform:scaleX(0)}html.atlas-js.atlas-reveal-ready .case-study-copy[data-reveal-stagger]>.is-revealed{opacity:1;transform:translateY(0)}html.atlas-js.atlas-reveal-ready .case-study-copy[data-reveal-stagger]>.is-revealed:after{transform:scaleX(1)}}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){html.atlas-js .chapter-wipe{background:var(--chapter-wipe-base)}html.atlas-js .chapter-wipe:before{z-index:0;background:var(--chapter-wipe-color);content:"";animation:linear both atlas-chapter-wipe;animation-timeline:view();animation-range:entry cover 28%;position:absolute;inset:0}html.atlas-js .chapter-wipe--ltr:before{clip-path:inset(0 100% 0 0)}html.atlas-js .chapter-wipe--rtl:before{clip-path:inset(0 0 0 100%)}html.atlas-js .project-chapter{view-timeline-axis:block;view-timeline-name:--atlas-project-chapter}html.atlas-js .project-case-label,html.atlas-js .project-tech-list{animation:linear both atlas-project-lockup;animation-timeline:--atlas-project-chapter;animation-range:entry cover 24%}html.atlas-js .project-case-label{--project-lockup-start:var(--project-case-start)}html.atlas-js .project-tech-list{--project-lockup-start:var(--project-tech-start)}html.atlas-js [data-project-pan]{view-timeline-axis:block;view-timeline-name:--atlas-project-plate}html.atlas-js [data-project-pan] img{animation:linear both atlas-project-pan;animation-timeline:--atlas-project-plate;animation-range:entry exit}html.atlas-js .project-panel-list{view-timeline-axis:block;view-timeline-name:--atlas-project-panels}html.atlas-js .project-panel{animation:linear both atlas-project-panel-rise;animation-timeline:--atlas-project-panels}html.atlas-js .project-panel:first-child{--project-panel-entry-y:7rem;animation-range:entry 2% cover 34%}html.atlas-js .project-panel:nth-child(2){--project-panel-entry-y:10rem;animation-range:entry 8% cover 40%}html.atlas-js .project-panel:nth-child(3){--project-panel-entry-y:13rem;animation-range:entry 14% cover 46%}}}@supports not (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){html.atlas-js.atlas-chapter-wipe-fallback .chapter-wipe{background:var(--chapter-wipe-base)}html.atlas-js.atlas-chapter-wipe-fallback .chapter-wipe:before{z-index:0;background:var(--chapter-wipe-color);content:"";transition:clip-path .9s var(--ease-out);position:absolute;inset:0}html.atlas-js.atlas-chapter-wipe-fallback .chapter-wipe--ltr:before{clip-path:inset(0 100% 0 0)}html.atlas-js.atlas-chapter-wipe-fallback .chapter-wipe--rtl:before{clip-path:inset(0 0 0 100%)}html.atlas-js.atlas-chapter-wipe-fallback .chapter-wipe.is-chapter-visible:before{clip-path:inset(0)}html.atlas-js.atlas-project-fallback [data-project-pan] img{transform:translate3d(var(--atlas-project-pan-x,0%), 0, 0)}}}@keyframes atlas-chapter-wipe{to{clip-path:inset(0)}}@keyframes atlas-project-lockup{0%{opacity:.72;transform:translate3d(var(--project-lockup-start), 0, 0)}to{opacity:1;transform:translate(0,0)}}@keyframes atlas-project-pan{0%{transform:translate3d(var(--project-pan-start), 0, 0)}to{transform:translate3d(var(--project-pan-end), 0, 0)}}@keyframes atlas-project-panel-rise{0%{opacity:.18;transform:translate3d(0, var(--project-panel-entry-y), 0);clip-path:inset(14% 0 0 round clamp(1rem,1.8vw,1.6rem))}to{opacity:1;clip-path:inset(0 round clamp(1rem,1.8vw,1.6rem));transform:translate(0,0)}}@media (max-width:720px){.project-panel-list{scroll-snap-type:x mandatory;scrollbar-width:none;grid-template-columns:none;grid-auto-columns:min(82vw,23rem);grid-auto-flow:column;gap:.9rem;width:100%;padding:0 14px clamp(4.5rem,18vw,6rem);scroll-padding-inline:14px;overflow-x:auto}.project-panel-list::-webkit-scrollbar{display:none}.project-panel{aspect-ratio:.69}.project-panel__name{font-size:clamp(2.8rem,14vw,4.2rem)}.project-panel__description{font-size:.82rem}.project-panel__action{opacity:1;transform:rotate(0)scale(1)}.project-page__footer{flex-direction:column;align-items:flex-start}}
.contact-section{background:var(--cream);min-height:calc(100svh - 59px)}.contact-board{border-top:1px solid var(--ink);grid-template-columns:repeat(2,minmax(0,1fr));min-height:calc(100svh - 59px);display:grid}.contact-plate{background:#dca97c;min-height:0;position:relative;overflow:hidden}.contact-plate--inset{border:1px solid var(--rule);border-radius:clamp(1rem,1.8vw,1.6rem);margin:clamp(1rem,1.5vw,1.75rem);box-shadow:0 1.5rem 4rem #11130f1a}.contact-art{width:100%;height:100%;position:absolute;inset:0}.contact-art img{-o-object-fit:cover;object-fit:cover;-o-object-position:50% center;object-position:50% center;width:100%;height:100%}.contact-sunrise{z-index:2;mix-blend-mode:overlay;opacity:var(--atlas-contact-glow,0);pointer-events:none;background:radial-gradient(circle at 50% 67%,#fff5bdc7 0,#f4bf3540 18%,#0000 52%);position:absolute;inset:0}.contact-panel{border-left:1px solid var(--ink);flex-direction:column;min-width:0;padding:clamp(2rem,4vw,4.5rem) clamp(1.5rem,4.6vw,5.5rem) clamp(1.25rem,2vw,2rem);display:flex}.contact-copy{flex-direction:column;flex:1;justify-content:center;align-items:flex-start;padding-bottom:clamp(1.5rem,3vw,3rem);display:flex}.contact-copy .eyebrow{margin-bottom:clamp(1.5rem,3vw,2.75rem)}.contact-copy h2{max-width:6.4ch;font-family:var(--serif);letter-spacing:-.08em;margin-bottom:clamp(1.5rem,2.6vw,2.5rem);font-size:clamp(4.6rem,8.1vw,9.2rem);font-weight:500;line-height:.79}.contact-copy .contact-intro{max-width:31rem;color:var(--muted);margin-bottom:clamp(1.5rem,3vw,2.75rem);font-size:clamp(.95rem,1.25vw,1.12rem);line-height:1.55}.contact-links{gap:.8rem;display:flex}.contact-link{aspect-ratio:1;border:1px solid var(--ink);width:clamp(3.5rem,4.5vw,4.25rem);transform:translate3d(var(--atlas-magnet-x,0), var(--atlas-magnet-y,0), 0);transition:background-color .22s var(--ease-out), color .22s var(--ease-out), border-color .22s var(--ease-out);border-radius:50%;place-items:center;display:grid}.contact-link svg{width:1.45rem;height:1.45rem}.contact-link:hover,.contact-link:focus-visible{border-color:var(--ink);background:var(--ink);color:var(--cream)}.site-footer{border-top:1px solid var(--ink);grid-template-columns:1fr auto;align-items:end;gap:.35rem 1.5rem;padding:1rem 0 0;display:grid}.site-footer p{margin-bottom:0;font-size:.64rem}.site-footer>p:nth-child(2){color:var(--muted)}.site-footer>a{grid-area:1/2/span 2;justify-self:end}.site-footer>a span{transition:transform .18s var(--ease-out);display:inline-block}.site-footer>a:hover span,.site-footer>a:focus-visible span{transform:translateY(-.3rem)}.not-found-page{place-items:center;min-height:100svh;padding:clamp(1.5rem,4vw,4rem);display:grid}.not-found-plate{border:1px solid var(--ink);text-align:center;width:min(48rem,100%);padding:clamp(2rem,7vw,6rem)}.not-found-plate img{width:clamp(3rem,8vw,5rem);margin:0 auto 2rem}.not-found-plate h1{font-family:var(--serif);letter-spacing:-.07em;margin-bottom:1.5rem;font-size:clamp(3rem,8vw,7rem);font-weight:500;line-height:.88}.not-found-plate>p:not(.eyebrow){color:var(--muted);margin-bottom:2rem}@media (max-width:720px) and (orientation:portrait){.contact-section,.contact-board{min-height:calc(100svh - 55px)}.contact-board{grid-template-rows:minmax(14rem,42svh) minmax(0,1fr);grid-template-columns:1fr}.contact-panel{border-top:1px solid var(--ink);border-left:0;padding:1.4rem 1.1rem .9rem}.contact-copy{justify-content:flex-start;padding-bottom:1.2rem}.contact-copy .eyebrow{margin-bottom:1rem}.contact-panel .contact-copy h2{max-width:7ch;margin-bottom:1rem;font-size:clamp(3.7rem,17.5vw,5.3rem);line-height:.78}.contact-copy .contact-intro{max-width:34rem;margin-bottom:1.1rem;font-size:.9rem;line-height:1.42}.contact-link{width:3.15rem}.contact-link svg{width:1.2rem;height:1.2rem}.contact-panel .site-footer{padding-top:.75rem}}@media (max-height:620px) and (orientation:landscape){.contact-panel{padding-top:1.25rem;padding-bottom:.9rem}.contact-copy{padding-bottom:1rem}.contact-copy .eyebrow{margin-bottom:.75rem}.contact-panel .contact-copy h2{margin-bottom:.9rem;font-size:clamp(3rem,7vw,5.4rem)}.contact-copy .contact-intro{margin-bottom:1rem;font-size:.85rem}.contact-link{width:3rem}}
.atlas-split-mask,.atlas-split-token{display:inline-block}.atlas-split-mask{vertical-align:bottom;overflow:clip}.atlas-split-word{white-space:nowrap;display:inline-block}@media (prefers-reduced-motion:no-preference){body:before{will-change:transform;animation:1.6s steps(8,end) infinite atlas-live-grain}.atlas-picture--hero img{width:100%;max-width:none;height:112%;position:absolute;top:-6%;left:0}.hero-copy-release{padding-bottom:8vh}.hero-copy{z-index:1;background:var(--cream);align-items:start;position:sticky;top:clamp(4.5rem,9vh,7rem)}html.atlas-entering .hero-art{animation:atlas-plate-press var(--atlas-entrance-plate-duration) var(--ease-out) both}html.atlas-entering body:before{animation:atlas-grain-press var(--atlas-entrance-grain-duration) steps(1, end) var(--atlas-entrance-grain-delay) both}html.atlas-entering [data-atlas-masthead] .atlas-split-token{animation:atlas-masthead-rise var(--atlas-entrance-character-duration) var(--ease-out) both;animation-delay:calc(var(--atlas-entrance-masthead-start) + var(--atlas-split-index) * var(--atlas-entrance-character-stagger))}html.atlas-entering .site-nav,html.atlas-entering .hero-meta{animation:atlas-entrance-chrome var(--atlas-entrance-chrome-duration) var(--ease-out) both;animation-delay:var(--atlas-entrance-chrome-start)}html.atlas-js [data-atlas-count-ready] small{opacity:0;transition:opacity .24s var(--ease-out) var(--atlas-source-delay), transform .24s var(--ease-out) var(--atlas-source-delay);transform:translateY(8px)}html.atlas-js [data-atlas-count-ready].is-counted small{opacity:1;transform:translateY(0)}html.atlas-js [data-atlas-count-ready].is-counting strong{animation:.12s step-end both atlas-ink-settle}html.atlas-js [data-contact-ready] [data-contact-word]{opacity:var(--atlas-contact-word-reveal,0);transform:translate3d(0, calc((1 - var(--atlas-contact-word-reveal,0)) * 105%), 0);will-change:transform, opacity}html.atlas-js [data-contact-scroll-ready] .contact-plate{opacity:calc(.45 + var(--atlas-contact-plate-reveal,0) * .55);transform:translate3d(0, calc((1 - var(--atlas-contact-plate-reveal,0)) * 2rem), 0) scale(calc(.96 + var(--atlas-contact-plate-reveal,0) * .04));transform-origin:50% 70%;will-change:transform, opacity}html.atlas-js [data-contact-scroll-ready] .contact-art img{transform:translate3d(0, var(--atlas-contact-image-y,2.5%), 0) scale(1.08);will-change:transform}html.atlas-js [data-contact-scroll-ready] [data-contact-detail]{opacity:var(--atlas-contact-detail-reveal,0);translate:0 calc((1 - var(--atlas-contact-detail-reveal,0)) * 1.25rem);will-change:translate, opacity}html.atlas-js [data-contact-ready]>.contact-board .atlas-split-mask--word{margin-inline:-.15em;padding-inline:.15em}html.atlas-js [data-contact-ready] .atlas-split-mask--character{overflow:visible}html.atlas-js [data-contact-ready] .atlas-split-mask--character>.atlas-split-token{transform:translate3d(var(--atlas-contact-character-x,0), 0, 0);will-change:transform}html.atlas-hero-fallback .atlas-picture--hero{transform:scale(var(--atlas-hero-scale,1.05))}html.atlas-hero-fallback .atlas-picture--hero img{transform:translate3d(0, var(--atlas-hero-image-y,0%), 0)}html.atlas-hero-fallback .art-caption{transform:translate3d(0, var(--atlas-hero-caption-y,0), 0)}html.atlas-js .craft-narrative{min-height:0}html.atlas-js .craft-heading{z-index:2;align-self:start;position:relative;top:auto}html.atlas-js .craft-heading .eyebrow{z-index:1;position:relative}html.atlas-js .craft-ghost{z-index:0;color:var(--ink);font-family:var(--serif);letter-spacing:-.08em;opacity:.08;pointer-events:none;font-size:clamp(9rem,20vw,20rem);font-weight:500;line-height:.8;display:block;position:absolute;top:-.46em;left:-.08em}html.atlas-js .craft-art img{width:100%;max-width:none;height:108%;position:absolute;top:-4%;left:0}html.atlas-js .craft-marquee{border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);outline-offset:-5px;margin-top:0;display:block;overflow:hidden}html.atlas-js .craft-marquee__track{will-change:transform;width:max-content;animation:28s linear infinite atlas-craft-marquee;display:flex}html.atlas-js .craft-marquee__sequence{white-space:nowrap;align-items:center;gap:clamp(1.75rem,3vw,3rem);min-width:100vw;padding:.8rem clamp(1rem,2vw,2rem);display:flex}html.atlas-js .craft-marquee__logo{flex:none;place-items:center;width:2.25rem;height:2.25rem;display:grid}html.atlas-js .craft-marquee__logo .skill-logo__glyph{width:1.75rem}html.atlas-js .craft-marquee:hover .craft-marquee__track,html.atlas-js .craft-marquee:focus-within .craft-marquee__track{animation-play-state:paused}}@media (min-width:721px) and (prefers-reduced-motion:no-preference){.hero-art{height:clamp(28rem,48vh,34rem)}.atlas-picture--hero{aspect-ratio:auto;height:100%}}@keyframes atlas-plate-press{0%{clip-path:inset(100% 0 0)}to{clip-path:inset(0)}}@keyframes atlas-live-grain{0%{transform:translate(-2%,1.5%)}to{transform:translate(2%,-1.5%)}}@keyframes atlas-grain-press{0%{opacity:.075}to{opacity:.04}}@keyframes atlas-masthead-rise{0%{opacity:0;transform:translateY(110%)}to{opacity:1;transform:translateY(0)}}@keyframes atlas-entrance-chrome{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@keyframes atlas-ink-settle{0%{opacity:.82;transform:scaleX(1.012)}to{opacity:1;transform:scaleX(1)}}@keyframes atlas-craft-marquee{to{transform:translate(-50%)}}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){html.atlas-js .craft-narrative{view-timeline-axis:block;view-timeline-name:--atlas-craft-narrative}html.atlas-js .craft-ghost{animation:linear both atlas-craft-counter-parallax;animation-timeline:--atlas-craft-narrative;animation-range:entry exit}html.atlas-js .craft-art{view-timeline-axis:block;view-timeline-name:--atlas-craft-plate;animation:linear both atlas-craft-plate-reveal;animation-timeline:--atlas-craft-plate;animation-range:entry cover 45%}html.atlas-js .craft-art img{animation:linear both atlas-craft-plate-parallax;animation-timeline:--atlas-craft-plate;animation-range:entry cover 45%}html.atlas-js .hero-art{view-timeline-axis:block;view-timeline-name:--atlas-hero}html.atlas-js .atlas-picture--hero{animation:linear both atlas-hero-settle;animation-timeline:--atlas-hero;animation-range:exit}html.atlas-js .atlas-picture--hero img{animation:linear both atlas-hero-parallax;animation-timeline:--atlas-hero;animation-range:exit}html.atlas-js .art-caption--light{animation:linear both atlas-caption-drift;animation-timeline:--atlas-hero;animation-range:exit}.frame-reveal[data-reveal]{animation:linear both atlas-reveal;animation-timeline:view();animation-range:entry 8% cover 34%}@keyframes atlas-reveal{0%{opacity:.4;transform:translateY(26px)}to{opacity:1;transform:translateY(0)}}@keyframes atlas-hero-settle{0%{transform:scale(1.05)}to{transform:scale(1)}}@keyframes atlas-hero-parallax{0%{transform:translate(0,0)}to{transform:translateY(10.7%)}}@keyframes atlas-caption-drift{0%{transform:translate(0,0)}to{transform:translateY(-2.5vh)}}@keyframes atlas-craft-counter-parallax{0%{transform:translateY(28px)}to{transform:translateY(-28px)}}@keyframes atlas-craft-plate-reveal{0%{clip-path:inset(0 0 100%)}to{clip-path:inset(0)}}@keyframes atlas-craft-plate-parallax{0%{transform:translateY(-4%)}to{transform:translateY(4%)}}}}@supports not (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){html.atlas-js.atlas-craft-fallback .craft-ghost{transform:translate3d(0, var(--atlas-craft-ghost-y,28px), 0)}html.atlas-js.atlas-craft-fallback .craft-art{clip-path:inset(0 0 var(--atlas-craft-clip-bottom,100%))}html.atlas-js.atlas-craft-fallback .craft-art img{transform:translate3d(0, var(--atlas-craft-image-y,-4%), 0)}html.atlas-js.atlas-reveal-ready [data-reveal],html.atlas-js.atlas-reveal-ready [data-reveal-stagger]>*{opacity:.4;transition:opacity .7s var(--ease-out) var(--atlas-reveal-delay,0s), transform .7s var(--ease-out) var(--atlas-reveal-delay,0s);transform:translateY(26px)}html.atlas-js.atlas-reveal-ready [data-reveal].is-revealed,html.atlas-js.atlas-reveal-ready [data-reveal-stagger]>.is-revealed{opacity:1;transform:translateY(0)}}}@media (max-width:980px){:root{--shell:min(100vw - 40px, 1440px)}.hero-identity{grid-column:1/span 6}.hero-statement{grid-column:7/-1}.craft-heading,.experience-intro .section-heading,.projects-intro .section-heading{grid-column:1/span 7}.craft-copy,.experience-kicker,.projects-intro>p{grid-column:8/-1}.project-meta{grid-column:1/span 4}.project-title{grid-column:5/-1}.project-art{grid-column:1/span 7}.case-study-copy,.project-results,.repository-link{grid-column:8/-1}.project-chapter--2 .project-results{grid-column:1/span 4}}@media (max-width:720px){:root{--shell:calc(100vw - 28px);--radius:12px}html{scroll-padding-top:7rem}.site-nav{min-height:54px}.nav-links{scrollbar-width:none;gap:.8rem;max-width:74vw;padding:.5rem 0;overflow-x:auto}.nav-links::-webkit-scrollbar{display:none}.nav-links a{flex:none;font-size:.58rem}.nav-name{display:none}.sun-arc{width:7rem;height:24px;top:27px;left:auto;right:0;transform:none}.editorial-grid,.project-grid{display:block}.hero-section{padding-top:.8rem}.board-meta{grid-template-columns:1fr auto;gap:1rem;font-size:.54rem}.board-meta p:nth-child(2){display:none}.atlas-picture--hero{aspect-ratio:4/4.5}.atlas-picture--hero img{-o-object-position:55% center;object-position:55% center}.art-caption{font-size:.53rem;bottom:.8rem;left:.8rem;right:.8rem}.hero-copy{padding:1.8rem 0 2.5rem}.hero-identity{margin-bottom:2.4rem}.hero-identity h1{font-size:clamp(4.7rem,24vw,7rem);line-height:.78}.hero-statement h2{font-size:clamp(2.5rem,12vw,4rem)}.craft-copy,.projects-intro>p{margin-top:2rem}.section-heading h2{font-size:clamp(3.5rem,17vw,6rem)}.craft-art,.experience-art,.project-art{aspect-ratio:4/3}.craft-notes{margin-top:1rem}.experience-intro,.projects-intro{margin-bottom:0}.flight-entry{grid-template-columns:2.5rem 1fr;min-height:auto;padding:1.2rem 0 1.5rem;display:grid}.flight-index{grid-area:1/1/span 3}.flight-heading,.flight-summary,.flight-period{grid-column:2}.flight-heading,.flight-summary{margin-bottom:1rem}.flight-period{text-align:left}.flight-period span{margin:0 0 0 .6rem;display:inline}.project-title :is(h1,h3){font-size:clamp(4rem,19vw,6rem)}.project-art{margin-top:2.5rem}.case-study-copy{padding:2rem 0 0}.project-results,.project-chapter--2 .project-results{margin-top:.5rem;padding:0}.project-results__metrics dt{font-size:clamp(2.3rem,13vw,3.8rem)}.repository-link,.project-chapter--2 .repository-link{margin:.5rem 0 0;display:inline-block}}@media (max-width:720px) and (prefers-reduced-motion:no-preference){html.atlas-js .craft-narrative{min-height:auto;padding-bottom:0}html.atlas-js .craft-heading{position:relative;top:auto}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
@media (pointer:fine) and (prefers-reduced-motion:no-preference){.atlas-cursor{z-index:1900;opacity:0;pointer-events:none;transition:opacity .12s linear;position:fixed;inset:0}.atlas-cursor.is-visible{opacity:1}.atlas-cursor__dot,.atlas-cursor__ring{pointer-events:none;border-radius:50%;place-items:center;display:grid;position:fixed;top:0;left:0}.atlas-cursor__dot{background:var(--ink);width:5px;height:5px;transform:translate3d(var(--atlas-cursor-dot-x,-20px), var(--atlas-cursor-dot-y,-20px), 0) translate(-50%, -50%)}.atlas-cursor__ring{width:38px;height:38px;transform:translate3d(var(--atlas-cursor-ring-x,-20px), var(--atlas-cursor-ring-y,-20px), 0) translate(-50%, -50%);transition:width .18s var(--ease-out), height .18s var(--ease-out), background .18s var(--ease-out), color .18s var(--ease-out);border:1px solid #11130f8f}.atlas-cursor__label{letter-spacing:.04em;text-transform:uppercase;font-size:.55rem;font-weight:700;line-height:1}.atlas-cursor[data-cursor-mode=external] .atlas-cursor__ring,.atlas-cursor[data-cursor-mode=expand] .atlas-cursor__ring{border-color:var(--ink);background:var(--ink);width:48px;height:48px;color:var(--cream)}}

