:root{color-scheme:dark;--color-ink:#100b09;--color-deep:#090504;--color-surface:#211916;--color-surface-raised:#2d211b;--color-text:#fafaf9;--color-muted:#c6b8ae;--color-accent:#f2ac86;--color-copper:#9e4530;--color-line:#594238;--font-sans:"Segoe UI", "Helvetica Neue", Arial, sans-serif;--font-mono:"Cascadia Code", Consolas, monospace;--content-width:1312px;--page-gutter:clamp(24px, 4.5vw, 72px);--section-space:clamp(72px, 8vw, 128px);--space-1:8px;--space-2:16px;--space-3:24px;--space-4:32px;--space-6:48px;--space-8:64px;--ease-out:cubic-bezier(.22, 1, .36, 1);--motion-fast:.18s;--motion-medium:.32s;--motion-reveal:.65s}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:112px}body{background:var(--color-ink);color:var(--color-text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;margin:0}button,summary,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button:disabled{cursor:default}a{color:inherit;text-decoration:none}a,button,summary{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible,[role=tabpanel]:focus-visible{outline:2px solid var(--color-accent);outline-offset:6px}::selection{background:var(--color-copper);color:#fff}img{max-width:100%;display:block}svg{display:block}h1,h2,h3,p,figure{margin:0}h1,h2,h3{letter-spacing:-.04em;text-wrap:balance;font-weight:350}h2{white-space:pre-line;font-size:clamp(38px,4.1vw,64px);line-height:1.08}h3{font-size:clamp(23px,2.1vw,32px);line-height:1.2}p{color:var(--color-muted);line-height:1.65}[hidden]{display:none!important}.wrap{width:min(var(--content-width), calc(100% - var(--page-gutter) * 2));margin-inline:auto}.section{padding-block:var(--section-space)}.eyebrow{color:var(--color-accent);letter-spacing:.16em;text-transform:uppercase;font-size:11px;font-weight:500;line-height:1.6}.accent-text{color:var(--color-accent)}.section-heading h2,.section-top h2,.about h2{margin-top:24px}.section-intro{max-width:48ch;font-size:17px}.section-top{justify-content:space-between;align-items:end;gap:48px;margin-bottom:56px;display:flex}.section-top>.section-intro{max-width:380px}.context{letter-spacing:.025em;color:var(--color-accent);font-size:12px}.text-link{border-bottom:1px solid var(--color-line);justify-content:space-between;align-items:center;gap:24px;padding-block:12px;font-size:14px;display:inline-flex}.text-link span,.button span{color:var(--color-accent);transition:transform var(--motion-fast) var(--ease-out);display:inline-block}.text-link:hover{border-color:var(--color-accent)}.text-link:hover span,.button:hover span{transform:translate(3px,-3px)}.skip-link{z-index:100;background:var(--color-accent);color:var(--color-deep);padding:16px;position:fixed;top:8px;left:8px;transform:translateY(-150%)}.skip-link:focus{transform:none}.design-note{padding:8px var(--page-gutter);color:var(--color-muted);letter-spacing:.035em;background:#211916;justify-content:space-between;align-items:center;gap:12px;font-size:11px;display:flex}.design-note button{border:1px solid var(--color-line);background:0 0;padding:4px 8px;font-size:11px}.motion-control{border:1px solid var(--color-line);background:0 0;min-height:44px;padding:10px 12px;font-size:11px}.site-header{z-index:20;border-bottom:1px solid var(--color-line);background:#100b09f5;position:sticky;top:0}.header-inner{align-items:center;gap:32px;height:94px;display:flex}.identity{flex-shrink:0;align-items:center;gap:17px;display:flex}.identity>span{letter-spacing:.08em;font-size:11px;line-height:1.4}.monogram{color:var(--color-accent);width:49px;height:40px}.desktop-nav{flex:1;justify-content:end;align-items:center;gap:clamp(18px,2.3vw,36px);display:flex}.desktop-nav a{padding-block:12px;font-size:13px}.desktop-nav a:hover{color:var(--color-accent)}.languages{align-items:center;gap:7px;margin-left:20px;font-size:12px;display:flex}.languages a{text-align:center;min-width:44px;min-height:44px;color:var(--color-muted);padding:12px 5px}.languages a[aria-current]{color:var(--color-accent);text-underline-offset:7px;text-decoration:underline}.mobile-menu{display:none}.hero{background:var(--color-deep);height:min(800px,100svh - 134px);min-height:660px;position:relative;overflow:clip}.portfolio-page:not(.design-page) .hero{height:min(800px,100svh - 94px)}.hero-image{position:absolute;inset:0}.hero-image img{object-fit:cover;object-position:72% 42%;width:100%;height:100%}.hero-shade{background:linear-gradient(90deg,#100b09 0%,#100b09f2 20%,#100b09cc 35%,#100b0926 60%,#0000 78%),linear-gradient(#0000 65%,#100b09ad);position:absolute;inset:0}.hero-inner{align-items:center;height:100%;display:flex;position:relative}.hero-copy{max-width:740px;padding-block:62px 82px}.hero .eyebrow{align-items:center;gap:13px;font-size:10px;display:flex}.accent-line{background:var(--color-accent);flex-shrink:0;width:32px;height:1px;display:inline-block}h1{margin-block:25px;font-size:clamp(60px,5.8vw,88px);line-height:1.06}.hero-line{animation:hero-entry .75s var(--ease-out) both;animation-delay:calc(var(--line)*90ms);display:block}.hero-intro{color:#e0d5cd;max-width:510px;font-size:16px;line-height:1.7}.hero-actions{flex-wrap:wrap;gap:14px;margin-top:32px;display:flex}.button{min-height:54px;transition:background var(--motion-fast);background:#341e15d9;border:1px solid #c48366;justify-content:space-between;align-items:center;gap:28px;padding:16px 22px;font-size:13px;display:flex}.button:hover{background:var(--color-copper)}.location{letter-spacing:.03em;font-size:12px}.hero .location{margin-top:22px}.scroll-cue{letter-spacing:.04em;text-shadow:0 1px 5px #000;align-items:center;gap:20px;font-size:11px;display:flex;position:absolute;bottom:30px;right:0}.scroll-cue>span:last-child{border:1px solid #c6b8ae;place-items:center;width:42px;height:42px;font-size:21px;display:grid}.proof-band{border-block:1px solid var(--color-line);background:var(--color-surface)}.proof-band ul{grid-template-columns:1fr 1.3fr 1fr;padding:0;list-style:none;display:grid}.proof-band li{justify-content:center;align-items:center;gap:20px;padding:27px 16px;font-size:14px;display:flex}.proof-band li+li{border-left:1px solid var(--color-line)}.proof-index{font:10px var(--font-mono);color:var(--color-accent)}.experience{grid-template-columns:.9fr 1.1fr;gap:clamp(40px,7vw,108px);display:grid}.section-heading{align-self:start}.section-heading .section-intro{margin-block:28px 30px}.proof-row{border-top:1px solid var(--color-line);grid-template-columns:35px 1fr;gap:24px;padding-block:30px;display:grid}.proof-row:first-child{border-top:none;padding-top:5px}.row-number{font:11px var(--font-mono);color:var(--color-accent);padding-top:8px}.proof-row h3{letter-spacing:-.02em;font-size:25px}.proof-row p{margin-top:16px;font-size:14px}.proof-row .context{margin-top:18px;font-size:11px}.disclosure{border-block:1px solid var(--color-line)}.disclosure summary{cursor:pointer;justify-content:space-between;align-items:center;gap:16px;padding:22px 0;font-size:15px;list-style:none;display:flex}.disclosure summary::-webkit-details-marker{display:none}.disclosure summary>span{color:var(--color-accent);transition:transform var(--motion-fast);font-size:22px}.disclosure[open] summary>span{transform:rotate(45deg)}.career-content{padding-bottom:25px}.career-content article{border-left:1px solid var(--color-line);margin-left:6px;padding:10px 0 20px 24px}.career-content h3{margin-top:12px;font-size:21px}.career-content p{margin-top:10px;font-size:14px}.career-content .context{font-size:11px}.career-content .job-company{color:var(--color-text)}.approach{border-block:1px solid var(--color-line);background:var(--color-deep)}.process{border:1px solid var(--color-line)}.process-tabs{grid-template-columns:repeat(4,1fr);display:grid}.process-tab{border:0;border-bottom:1px solid var(--color-line);background:var(--color-ink);text-align:left;transition:background var(--motion-medium);justify-content:start;align-items:center;gap:16px;padding:24px;font-size:13px;display:flex}.process-tab+.process-tab{border-left:1px solid var(--color-line)}.step-index{font:10px var(--font-mono);color:var(--color-accent)}.step-arrow{color:var(--color-accent);margin-left:auto}.process-tab[aria-selected=true]{box-shadow:inset 0 -2px var(--color-accent);background:#3c251b}.process-tab:hover{background:var(--color-surface-raised)}.process-canvas{background:radial-gradient(at 20% 55%,#2b1a13 0,#0000 65%);grid-template-columns:1.35fr 1fr;align-items:center;min-height:365px;display:grid}.system-map{aspect-ratio:640/380;width:100%;position:relative}.system-map>svg{width:100%;height:100%}.orbit{stroke:#574133;stroke-dasharray:2 9}.orbit-inner{stroke:#412e23;stroke-dasharray:none}.map-line{stroke:#795342}.core-circle{fill:var(--color-surface);stroke:var(--color-accent)}.core-halo{stroke:#8b5943}.map-center{letter-spacing:.12em;flex-direction:column;justify-content:center;align-items:center;font-size:14px;display:flex;position:absolute;inset:0}.center-cross{color:var(--color-accent);font-size:24px;font-weight:200;line-height:1.2}.map-node{background:var(--color-deep);border:1px solid var(--color-line);width:126px;transition:border-color var(--motion-medium),background var(--motion-medium);flex-direction:column;gap:7px;padding:15px 12px;font-size:11px;display:flex;position:absolute;transform:translate(-50%,-50%)}.map-node>span{color:var(--color-accent);font:9px var(--font-mono)}.map-node-0{top:22%;left:15%}.map-node-1{top:22%;left:85%}.map-node-2{top:78%;left:15%}.map-node-3{top:78%;left:85%}[data-active="0"] .map-node-0,[data-active="1"] .map-node-1,[data-active="2"] .map-node-2,[data-active="3"] .map-node-3{border-color:var(--color-accent);background:#45291e}.process-content{border-left:1px solid var(--color-line);padding:38px}.process-panel h3{margin-block:18px;font-size:30px}.process-panel>p:not(.eyebrow){font-size:15px}.process-output{border-top:1px solid var(--color-line);color:var(--color-accent);align-items:baseline;gap:12px;margin-top:24px;padding-top:18px;display:flex}.process-help{margin-top:24px;font-size:11px}.section-index{font:64px var(--font-mono);color:#745445;line-height:1}.services-grid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.service-card{border:1px solid var(--color-line);background:linear-gradient(145deg,var(--color-surface),var(--color-ink));transition:border-color var(--motion-medium);flex-direction:column;padding:32px;display:flex}.service-card:hover{border-color:#bb8060}.service-top{justify-content:space-between;align-items:start;margin-bottom:34px;display:flex}.service-top svg{stroke:var(--color-accent);stroke-width:1.2px}.service-card h3{max-width:15ch;margin-bottom:22px}.service-card>p{font-size:14px}.service-card .service-note{color:var(--color-accent);margin:-8px 0 20px;font-size:11px;line-height:1.5}.tags{flex-wrap:wrap;gap:7px;margin-block:26px 30px;padding:0;list-style:none;display:flex}.tags li{border:1px solid var(--color-line);color:var(--color-muted);padding:6px 9px;font-size:10px}.service-card .text-link{margin-top:auto;font-size:12px}.portfolio{background:var(--color-surface);border-block:1px solid var(--color-line)}.project-layout{grid-template-columns:1.2fr 1fr;align-items:center;gap:64px;display:grid}.project-visual{perspective:1200px;background:#392319;border:1px solid #795341;padding:48px 36px 24px;overflow:hidden}.project-mockup{background:var(--color-ink);transition:transform var(--motion-medium) var(--ease-out);border:1px solid #a47b60;transform:rotateY(-8deg)rotateX(4deg);box-shadow:0 24px 48px #0c0706}.project-visual:hover .project-mockup{transform:none}.mini-nav{border-bottom:1px solid var(--color-line);color:var(--color-accent);justify-content:space-between;align-items:center;padding:16px;font-size:7px;display:flex}.mini-nav>span:first-child{font-size:20px;font-weight:300}.mini-hero{background:linear-gradient(115deg,#100b09 30%,#693f29);min-height:215px;padding:32px 26px}.mini-hero>span{letter-spacing:.1em;color:var(--color-muted);font-size:7px}.mini-hero strong{max-width:13ch;margin-top:14px;font-size:clamp(20px,2.5vw,36px);font-weight:300;line-height:1.1;display:block}.mini-rule{border:1px solid #a47b60;width:45%;height:15px;margin-top:24px}.mini-grid{grid-template-columns:repeat(3,1fr);gap:8px;padding:18px;display:grid}.mini-grid>span{background:var(--color-surface);color:var(--color-accent);padding:16px 12px;font-size:10px}.project-visual>p{letter-spacing:.14em;text-align:center;margin-top:25px;font-size:9px}.project-copy h3{margin-block:20px 24px;font-size:34px}.project-copy>p{margin-bottom:24px}.project-copy .context{color:var(--color-muted);font-size:13px}.project-details{margin-top:36px}.project-details dl{grid-template-columns:repeat(2,1fr);gap:28px 64px;padding-bottom:24px;display:grid}dt{color:var(--color-text);margin-bottom:10px;font-size:14px}dd{color:var(--color-muted);margin:0;font-size:14px;line-height:1.65}.about{grid-template-columns:.85fr 1.15fr;align-items:start;gap:clamp(40px,7vw,110px);display:grid}.portrait img{aspect-ratio:3/4;object-fit:cover;object-position:50% 24%;width:100%}.portrait figcaption{color:var(--color-muted);margin-top:12px;font-size:10px;line-height:1.5}.about-copy .section-intro{margin-block:30px}.skills>div{border-top:1px solid var(--color-line);padding-block:16px}.learning{border-left:2px solid var(--color-copper);margin-top:32px;padding-left:24px}.learning h3{margin-block:10px 15px;font-size:23px}.learning>p:last-child{font-size:14px}.contact{background:radial-gradient(ellipse at 5% 100%,#452419 0,var(--color-surface) 60%);border-block:1px solid var(--color-line)}.contact-grid{grid-template-columns:repeat(2,1fr);gap:24px;display:grid}.contact-card{background:#100b0973;border:1px solid #916148;flex-direction:column;padding:40px;display:flex}.contact-card h3{margin-block:24px;font-size:30px}.contact-card p{margin-bottom:22px;font-size:14px}.contact-card .eyebrow{margin:0;font-size:11px}.contact-email{border-block:1px solid var(--color-line);overflow-wrap:anywhere;justify-content:space-between;align-items:center;gap:16px;margin-top:auto;padding-block:24px;font-size:clamp(15px,1.45vw,21px);display:flex}.contact-email>span{color:var(--color-accent)}.contact-links{color:var(--color-muted);flex-wrap:wrap;justify-content:space-between;gap:18px;margin-top:24px;font-size:12px;display:flex}.contact-links a:hover{text-decoration:underline}.footer{padding-block:48px 30px}.footer-main{justify-content:space-between;gap:24px;padding-bottom:34px;display:flex}.footer-main>p{color:var(--color-text);font-size:18px}.footer-main>p span{color:var(--color-muted);margin-top:8px;font-size:12px;display:block}.footer-main>a{padding-block:12px;font-size:12px}.footer-meta{border-top:1px solid var(--color-line);color:var(--color-muted);justify-content:space-between;gap:24px;padding-top:24px;font-size:11px;display:flex}.design-disclaimer{margin-top:22px;font-size:10px}.image-placeholder{min-height:380px;color:var(--color-muted);background:linear-gradient(130deg,#241713,#62432e);place-items:center;font-size:13px;display:grid}@keyframes hero-entry{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@media (width>=1440px){.hero-image img{object-position:center 40%}}@media (width<=1099px){.desktop-nav{display:none}.languages{margin-left:auto}.mobile-menu{display:block}.mobile-menu summary{cursor:pointer;align-items:center;gap:14px;min-height:44px;font-size:12px;list-style:none;display:flex}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu summary i{border-block:1px solid var(--color-accent);width:22px;height:8px;display:block}.mobile-menu[open] summary i{height:1px;transform:rotate(-45deg)}.mobile-menu nav{background:var(--color-ink);padding:12px var(--page-gutter) 24px;border-bottom:1px solid var(--color-line);position:absolute;top:100%;left:0;right:0;box-shadow:0 30px 40px #0008}.mobile-menu nav a{border-bottom:1px solid var(--color-line);justify-content:space-between;padding:18px 0;font-size:20px;display:flex}.mobile-menu nav a span{color:var(--color-accent)}.hero{min-height:660px}.hero-copy{max-width:65%}h1{font-size:clamp(50px,6.8vw,70px)}.hero-shade{background:linear-gradient(90deg,#100b09 0%,#100b09dd 32%,#100b0977 56%,#0000 80%),linear-gradient(#0000 60%,#100b09cc)}.hero-intro{font-size:15px}.hero-actions{gap:10px}.button{gap:18px;padding:14px 16px;font-size:12px}.experience{grid-template-columns:.9fr 1.1fr;gap:40px}.proof-row{grid-template-columns:24px 1fr;gap:12px}.proof-row h3{font-size:22px}.process-tab{gap:10px;padding:20px 14px}.process-canvas{grid-template-columns:1fr 1fr}.map-node{width:100px;padding:12px 8px;font-size:10px}.map-center{font-size:11px}.process-content{padding:26px}.service-card{padding:32px}.services-grid{grid-template-columns:1fr;gap:18px}.service-card h3{max-width:none;font-size:30px}.service-card>p{max-width:70ch}.service-card .text-link{gap:10px}.project-layout{gap:36px}.project-visual{padding:30px 22px 20px}.about{gap:42px}.contact-card{padding:30px}}@media (width<=767px){.portfolio-page:not(.design-page) .hero{height:auto}html{scroll-padding-top:90px}.header-inner{gap:18px;height:74px}.monogram{width:37px}.identity{gap:12px}.identity>span{font-size:9px}.languages{gap:3px;margin-left:auto;font-size:11px}.languages a{padding:12px 4px}.note-secondary{display:none}.design-note,.design-note button{font-size:10px}.mobile-menu summary{gap:8px;font-size:11px}.mobile-menu summary i{width:19px}.hero{flex-direction:column;height:auto;min-height:0;display:flex;overflow:visible}.hero-image{order:0;height:320px;position:relative}.hero-image img{object-position:78% 35%}.hero-image.image-placeholder{min-height:250px}.hero-shade{display:none}.hero-inner{order:1;height:auto;display:block}.hero-copy{max-width:none;padding:36px 0 34px}.hero .eyebrow{letter-spacing:.08em;gap:10px;font-size:9px}.accent-line{width:20px}h1{letter-spacing:-.045em;margin-block:20px 24px;font-size:clamp(43px,8.2vw,62px)}.hero-intro{max-width:60ch;font-size:15px}.hero-actions{grid-template-columns:1fr 1fr;gap:10px;margin-top:26px;display:grid}.button{gap:14px;min-height:56px;line-height:1.4}.hero .location{margin-top:20px;font-size:11px}.scroll-cue{border-top:1px solid var(--color-line);justify-content:space-between;padding:14px 0 20px;position:static}.scroll-cue>span:last-child{border:0;width:auto;height:24px}.proof-band ul{display:block}.proof-band li{justify-content:start;gap:22px;padding:18px 0;font-size:12px}.proof-band li+li{border-left:none;border-top:1px solid var(--color-line)}h2{font-size:clamp(36px,6.2vw,48px)}.section-top{margin-bottom:36px;display:block}.section-top>.section-intro{max-width:50ch;margin-top:24px}.section-intro{font-size:16px}.section-index{display:none}.experience{grid-template-columns:1fr;gap:42px}.section-heading .section-intro{margin-block:24px}.proof-row{gap:18px;padding-block:27px}.proof-row h3{font-size:25px}.proof-row p{font-size:15px}.proof-row .context{font-size:11px}.process-tabs{grid-template-columns:repeat(2,1fr)}.process-tab{min-height:76px;padding:18px 14px;font-size:12px}.process-tab:nth-child(3){border-left:0}.process-tab .step-arrow{display:none}.process-canvas{grid-template-columns:1fr}.system-map{max-width:550px;margin:auto}.process-content{border-left:none;border-top:1px solid var(--color-line);padding:25px}.map-node{width:100px}.map-center{font-size:12px}.process-panel h3{font-size:28px}.process-help{margin-top:20px}.services-grid{grid-template-columns:1fr;gap:18px}.service-card{padding:28px}.service-card h3{max-width:none;font-size:30px}.service-top{margin-bottom:26px}.service-card>p{font-size:15px}.service-card .text-link{font-size:14px}.tags li{font-size:11px}.project-layout{grid-template-columns:1fr;gap:32px}.project-visual{padding:34px 25px 22px}.mini-hero strong{font-size:32px}.project-copy h3{font-size:30px}.project-details dl{grid-template-columns:1fr;gap:26px}.about{grid-template-columns:1fr;gap:38px}.portrait{max-width:440px}.portrait img{aspect-ratio:4/4.7;object-position:center 21%}.about-copy .section-intro{margin-block:24px}.learning{padding-left:20px}.contact-grid{grid-template-columns:1fr;gap:18px}.contact .location{margin-top:24px}.contact-card{padding:28px}.contact-card h3{font-size:30px}.contact-card p{font-size:15px}.contact-email{font-size:16px}.contact-links{font-size:12px}.footer-main{display:block}.footer-main>a{margin-top:20px;display:inline-block}.footer-meta{flex-direction:column;gap:16px}}@media (width<=359px){.identity>span{display:none}}@media (width<=399px){.header-inner{gap:10px}.identity{gap:8px}.hero-image{height:255px}.hero-image img{object-position:80% center}.hero-actions{grid-template-columns:1fr}.hero .eyebrow{font-size:8px}.map-node{width:86px;padding:10px 6px;font-size:9px}.map-node-0,.map-node-2{left:17%}.map-node-1,.map-node-3{left:83%}.process-tab{gap:8px;font-size:11px}.map-center{font-size:10px}.contact-card{padding:24px}.contact-email{font-size:14px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}.project-mockup{transform:none}}html[data-motion=off]{scroll-behavior:auto}html[data-motion=off] *,html[data-motion=off] :before,html[data-motion=off] :after{transition:none!important;animation:none!important}html[data-motion=off] .project-mockup{transform:none}
