/*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:"Inter","Avenir Next","Segoe UI",sans-serif;--font-mono:"JetBrains Mono","SFMono-Regular",Consolas,monospace;--radius-sm:.375rem;--radius-md:.75rem;--radius-lg:1.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--shadow-card:0 24px 80px #0000001f}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.static{position:static}.grid{display:grid}.hidden{display:none}.grow{flex-grow:1}.resize{resize:both}}:root{--bg:#f4f6f8;--bg-elevated:#fff;--surface:#e9edf1;--surface-strong:#dfe5ea;--text:#10161e;--text-soft:#4d5967;--text-faint:#73808d;--accent:#087fae;--accent-bright:#036991;--accent-soft:#087fae17;--border:#0f172224;--border-strong:#0f172242;--header:#f4f6f8e0;--selection:#b8e8f9;--font-body:var(--font-sans);--font-code:var(--font-mono);--max-width:1180px;--side:clamp(1.25rem,4vw,3rem);--section-space:clamp(6rem,12vw,10rem);color-scheme:light}html[data-theme=dark]{--bg:#0d1117;--bg-elevated:#121820;--surface:#151c25;--surface-strong:#1a232e;--text:#f1f5f7;--text-soft:#a8b3bf;--text-faint:#717e8c;--accent:#7dd3fc;--accent-bright:#a8e4ff;--accent-soft:#7dd3fc14;--border:#d9e5ef1c;--border-strong:#d9e5ef33;--header:#0d1117d9;--selection:#164e63;color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg);scroll-padding-top:6rem}body{background:var(--bg);color:var(--text);font-family:var(--font-body);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;margin:0;font-size:1rem;line-height:1.6;transition:background-color .18s,color .18s;overflow-x:hidden}::selection{background:var(--selection);color:var(--text)}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit;font:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:100;background:var(--text);color:var(--bg);border-radius:var(--radius-sm);padding:.75rem 1rem;transition:transform .16s;position:fixed;top:1rem;left:1rem;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.shell{width:min(100% - (var(--side)*2),var(--max-width));margin-inline:auto}.section{padding-block:var(--section-space)}.section--surface{background:var(--bg-elevated);border-block:1px solid var(--border)}.section-heading{grid-template-columns:max-content 1fr minmax(0,26rem);align-items:center;gap:1.5rem;margin-bottom:clamp(3rem,7vw,5.5rem);display:grid}.section-kicker,.eyebrow,.timeline-period,.project-card__head,.project-problem>span,.stack-index,.case-meta span,.case-aside>span{color:var(--accent);font-family:var(--font-code);letter-spacing:.14em;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:600}.section-heading__line{background:var(--border);height:1px}.section-description{color:var(--text-soft);margin:0;font-size:.95rem}.display-title{letter-spacing:-.055em;margin:0;font-size:clamp(2.4rem,5.4vw,4.8rem);font-weight:570;line-height:.99}.display-title span{color:var(--text-faint)}.reveal{opacity:0;transition:opacity .6s,transform .6s;transform:translateY(14px)}.reveal.is-visible{opacity:1;transform:none}.site-header{z-index:50;background:var(--header);backdrop-filter:blur(18px);border-bottom:1px solid #0000;height:4.5rem;transition:border-color .18s;position:sticky;top:0}.site-header.is-scrolled{border-color:var(--border)}.header-inner{justify-content:space-between;align-items:center;height:100%;display:flex}.monogram{font-family:var(--font-code);letter-spacing:-.04em;align-items:center;gap:.15rem;font-size:.92rem;font-weight:700;display:inline-flex}.monogram i{background:var(--accent);border-radius:50%;width:.36rem;height:.36rem;margin-top:.55rem}.desktop-nav{align-items:center;gap:clamp(1.2rem,3vw,2.4rem);display:flex}.desktop-nav a,.contact-link{color:var(--text-soft);font-size:.82rem;font-weight:520;transition:color .16s}.desktop-nav a:hover,.contact-link:hover{color:var(--text)}.header-actions{align-items:center;gap:.55rem;display:flex}.language-switcher{min-height:2.35rem;color:var(--text-faint);border:1px solid var(--border);font-family:var(--font-code);letter-spacing:.08em;border-radius:999px;align-items:center;gap:.35rem;padding-inline:.65rem;font-size:.64rem;display:inline-flex}.language-switcher a{padding-block:.35rem;transition:color .16s}.language-switcher a:hover{color:var(--text)}.language-switcher a[aria-current=page]{color:var(--accent);font-weight:700}.contact-link{align-items:center;gap:.4rem;margin-right:.4rem;display:inline-flex}.icon-button{border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:50%;place-items:center;width:2.35rem;height:2.35rem;padding:0;transition:background .16s,border-color .16s;display:inline-grid}.icon-button:hover{background:var(--surface);border-color:var(--border-strong)}.theme-icon,.menu-icon{place-items:center;display:grid}.theme-icon--sun,[data-theme=light] .theme-icon--moon,.menu-icon--close,[aria-expanded=true] .menu-icon--open{display:none}[data-theme=light] .theme-icon--sun,[aria-expanded=true] .menu-icon--close{display:grid}.menu-toggle,.mobile-nav{display:none}.hero{grid-template-columns:minmax(0,1.06fr) minmax(24rem,.94fr);align-items:center;gap:clamp(3rem,6vw,6rem);min-height:calc(100svh - 4.5rem);padding-block:clamp(4.5rem,9vw,8rem);display:grid}.hero-copy{min-width:0}.eyebrow{align-items:center;gap:.75rem;margin-bottom:1.5rem;display:flex}.eyebrow:before{background:var(--accent);content:"";width:2rem;height:1px}.hero h1{letter-spacing:-.075em;margin:0;font-size:clamp(4rem,8.5vw,7.7rem);font-weight:620;line-height:.79}.hero h1 span{display:block}.outline-text{color:#0000;-webkit-text-stroke:1.5px var(--text-faint)}.outline-text .accent-dot{color:var(--accent);-webkit-text-stroke:0;display:inline}.hero-intro{max-width:39rem;color:var(--text-soft);margin:2.4rem 0 0;font-size:clamp(1.08rem,1.8vw,1.3rem);line-height:1.65}.hero-intro strong{color:var(--text);font-weight:600}.hero-meta{color:var(--text-faint);font-family:var(--font-code);flex-wrap:wrap;gap:.65rem 1.5rem;margin-top:1.5rem;font-size:.73rem;display:flex}.hero-meta span{align-items:center;gap:.45rem;display:inline-flex}.availability i,.status i{background:var(--accent);width:.45rem;height:.45rem;box-shadow:0 0 0 4px var(--accent-soft);border-radius:50%}.hero-actions,.contact-actions{flex-wrap:wrap;gap:.7rem;margin-top:2.2rem;display:flex}.button{border:1px solid var(--border-strong);border-radius:var(--radius-sm);justify-content:center;align-items:center;gap:.6rem;min-height:3rem;padding:.75rem 1.15rem;font-size:.86rem;font-weight:650;transition:background .18s,color .18s,border-color .18s,transform .18s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button--primary{background:var(--text);color:var(--bg);border-color:var(--text)}.button--primary:hover{background:var(--accent);color:#071219;border-color:var(--accent)}.button--secondary:hover{background:var(--surface);border-color:var(--text-faint)}.hero-socials{gap:1.25rem;margin-top:2rem;display:flex}.hero-socials a{color:var(--text-faint);align-items:center;gap:.4rem;font-size:.78rem;transition:color .16s;display:inline-flex}.hero-socials a:hover{color:var(--accent)}.system-map{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);position:relative;overflow:hidden}.system-map:before{z-index:2;border:1px solid var(--accent-soft);border-radius:inherit;pointer-events:none;content:"";position:absolute;inset:0}.system-map__topline{color:var(--text-faint);border-bottom:1px solid var(--border);font-family:var(--font-code);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;padding:.8rem 1rem;font-size:.65rem;display:flex}.system-map svg{aspect-ratio:1.08;width:100%;display:block}.map-grid{stroke:var(--border)}.map-lines{stroke:var(--border-strong)}.map-pulses{stroke:var(--accent);stroke-dasharray:.08 .92;stroke-dashoffset:1px;animation:3.4s linear infinite route}.map-node rect{fill:var(--surface);stroke:var(--border-strong)}.map-node text,.map-status text{fill:var(--text-faint);font-family:var(--font-code);letter-spacing:.1em;font-size:9px}.map-node text:first-of-type{fill:var(--text);font-weight:700}.map-node--core rect{fill:var(--text);stroke:var(--accent)}.map-node--core circle{fill:var(--accent)}.map-node--core text{fill:var(--bg);font-size:11px}.map-status circle{fill:var(--accent)}@keyframes route{to{stroke-dashoffset:0}}.about-grid{grid-template-columns:minmax(0,1fr) minmax(20rem,.72fr);align-items:start;gap:clamp(3rem,10vw,8rem);display:grid}.about-copy>p{color:var(--text-soft);margin:0 0 1.3rem;font-size:1.05rem}.about-facts{border-top:1px solid var(--border);grid-template-columns:repeat(3,1fr);margin:2.4rem 0 0;padding-top:1.4rem;display:grid}.about-facts div{min-width:0;padding-right:.8rem}.about-facts dt{color:var(--text-faint);font-family:var(--font-code);letter-spacing:.1em;text-transform:uppercase;font-size:.63rem}.about-facts dd{margin:.35rem 0 0;font-size:.82rem;font-weight:600}.timeline{max-width:62rem;margin-inline:auto}.timeline-item{grid-template-columns:2.5rem 10rem 1fr;gap:1.5rem;display:grid}.timeline-rail{background:linear-gradient(var(--border-strong),var(--border-strong))center/1px 100% no-repeat;justify-content:center;display:flex}.timeline-rail span{background:var(--bg-elevated);border:2px solid var(--accent);width:.8rem;height:.8rem;box-shadow:0 0 0 6px var(--accent-soft);border-radius:50%;margin-top:.35rem}.timeline-period{color:var(--text-faint);padding-top:.15rem}.timeline-content{padding:0 0 3rem}.timeline-sector{color:var(--accent);margin:0 0 .5rem;font-size:.82rem;font-weight:600}.timeline-content h3{letter-spacing:-.04em;margin:0;font-size:clamp(1.7rem,3vw,2.5rem)}.timeline-content>p:not(.timeline-sector){max-width:40rem;color:var(--text-soft);margin:1rem 0 0}.timeline-content ul{flex-wrap:wrap;gap:.5rem;margin:1.7rem 0 0;padding:0;list-style:none;display:flex}.timeline-content li,.tag-list li{background:var(--surface);color:var(--text-soft);border:1px solid var(--border);font-family:var(--font-code);border-radius:999px;padding:.42rem .68rem;font-size:.66rem}#projects .display-title{margin-bottom:3.5rem}.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.project-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-md);padding:clamp(1.5rem,3vw,2.4rem);transition:border-color .2s,transform .2s,box-shadow .2s;position:relative;overflow:hidden}.project-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-card);transform:translateY(-4px)}.project-card--cyan:before{background:radial-gradient(circle,var(--accent-soft),transparent 68%);pointer-events:none;content:"";width:18rem;height:18rem;position:absolute;top:-8rem;right:-7rem}.project-index{color:var(--surface-strong);font-family:var(--font-code);letter-spacing:-.08em;font-size:7rem;font-weight:700;line-height:1;position:absolute;top:-1.2rem;right:1rem}.project-card__head{justify-content:space-between;align-items:start;gap:1rem;min-height:2.3rem;display:flex;position:relative}.project-card__head p{margin:0}.status{background:var(--accent-soft);color:var(--text-soft);letter-spacing:.08em;border-radius:999px;align-items:center;gap:.45rem;padding:.3rem .55rem;font-size:.62rem;display:inline-flex}.project-card h3{letter-spacing:-.055em;margin:1.6rem 0 0;font-size:clamp(2rem,4vw,3.3rem);line-height:1;position:relative}.project-description{min-height:6.5rem;color:var(--text-soft);margin:1.3rem 0 0;position:relative}.project-problem{border-top:1px solid var(--border);margin-top:1.7rem;padding-top:1.2rem}.project-problem>span{color:var(--text-faint);font-size:.62rem}.project-problem p{margin:.5rem 0 0;font-size:.9rem}.tag-list{flex-wrap:wrap;align-content:start;gap:.45rem;min-height:4.8rem;margin:1.5rem 0 0;padding:0;list-style:none;display:flex}.project-links{flex-wrap:wrap;gap:1rem;margin-top:1.7rem;display:flex}.project-links a{border-bottom:1px solid var(--border-strong);align-items:center;gap:.4rem;font-size:.82rem;font-weight:650;transition:color .16s,border-color .16s;display:inline-flex}.project-links a:hover{color:var(--accent);border-color:var(--accent)}.stack-layout{grid-template-columns:minmax(18rem,.78fr) minmax(0,1.22fr);gap:clamp(3rem,9vw,8rem);display:grid}.stack-intro{align-self:start;position:sticky;top:7rem}.stack-intro>p{max-width:28rem;color:var(--text-soft);margin:1.8rem 0 0}.stack-group{border-bottom:1px solid var(--border);grid-template-columns:3rem 1fr;gap:1rem;margin-bottom:2.1rem;padding:0 0 2.1rem;display:grid}.stack-index{color:var(--accent);padding-top:.25rem}.stack-group h3{letter-spacing:-.025em;margin:0;font-size:1.35rem}.stack-group p{color:var(--text-soft);margin:.5rem 0 0;font-size:.88rem}.stack-group ul{flex-wrap:wrap;gap:.55rem;margin:1.15rem 0 0;padding:0;list-style:none;display:flex}.stack-group li{background:var(--accent-soft);color:var(--text);font-family:var(--font-code);border-radius:.25rem;padding:.42rem .68rem;font-size:.68rem}.education-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-md);align-items:center;gap:2rem;max-width:52rem;padding:clamp(1.5rem,4vw,3rem);display:flex}.education-mark{background:var(--accent-soft);width:5rem;height:5rem;color:var(--accent);border:1px solid var(--border);font-family:var(--font-code);border-radius:50%;flex:none;place-items:center;font-size:1.05rem;display:grid}.education-card p{color:var(--accent);font-family:var(--font-code);letter-spacing:.1em;text-transform:uppercase;margin:0 0 .25rem;font-size:.68rem}.education-card h2{letter-spacing:-.035em;margin:0;font-size:clamp(1.45rem,3vw,2.4rem)}.education-card span{color:var(--text-soft);font-size:.87rem}.contact-section{background:var(--text);color:var(--bg);padding-block:clamp(6rem,14vw,11rem)}.contact-inner h2{letter-spacing:-.07em;max-width:58rem;margin:1.5rem 0 0;font-size:clamp(3.3rem,9vw,7rem);font-weight:600;line-height:.92}.contact-inner h2 span{color:var(--text-faint)}.contact-copy{max-width:38rem;color:var(--text-soft);margin:2rem 0 0;font-size:1.05rem}.contact-section .button--primary{background:var(--accent);color:#071219;border-color:var(--accent)}.contact-section .button--secondary{border-color:var(--border-strong)}.site-footer{background:var(--text);color:var(--bg);border-top:1px solid var(--border);padding-block:1.5rem}.footer-inner{grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;display:grid}.footer-inner p{color:var(--text-faint);font-family:var(--font-code);margin:0;font-size:.65rem}.footer-build{text-align:center}.footer-socials{justify-content:end;gap:1rem;display:flex}.footer-socials a{color:var(--text-soft);align-items:center;gap:.4rem;font-size:.72rem;display:inline-flex}.footer-socials a:hover{color:var(--accent)}.case-hero{padding-block:clamp(4rem,9vw,8rem)}.back-link{color:var(--text-soft);align-items:center;gap:.45rem;margin-bottom:clamp(4rem,8vw,7rem);font-size:.78rem;display:inline-flex}.back-link svg{transform:rotate(180deg)}.case-hero h1{letter-spacing:-.075em;margin:.8rem 0 0;font-size:clamp(4rem,11vw,9rem);line-height:.9}.case-hero h1 span{color:var(--accent)}.case-lead{max-width:48rem;color:var(--text-soft);margin:2rem 0 0;font-size:clamp(1.1rem,2vw,1.4rem)}.case-meta{border-top:1px solid var(--border);gap:3rem;max-width:47rem;margin-top:3rem;padding-top:1.4rem;display:flex}.case-meta div{gap:.2rem;display:grid}.case-meta span{color:var(--text-faint);font-size:.6rem}.case-meta strong{font-size:.82rem}.case-hero .button{margin-top:2.5rem}.case-body{padding-block:var(--section-space);border-top:1px solid var(--border);grid-template-columns:13rem minmax(0,46rem);justify-content:space-between;gap:4rem;display:grid}.case-aside{align-self:start;gap:.6rem;display:grid;position:sticky;top:7rem}.case-aside>span{color:var(--text-faint);margin-bottom:.5rem;font-size:.6rem}.case-aside a{color:var(--text-soft);font-size:.8rem}.case-aside a:hover{color:var(--accent)}.case-content section{margin-bottom:clamp(5rem,10vw,8rem);scroll-margin-top:7rem}.case-content h2{letter-spacing:-.05em;margin:1.1rem 0 1.6rem;font-size:clamp(2rem,5vw,3.7rem);line-height:1.05}.case-content section>p:not(.section-kicker){color:var(--text-soft);font-size:1.03rem}.architecture-flow{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-md);grid-template-columns:1fr 2rem 1fr 2rem 1fr;align-items:center;margin-block:2.5rem;padding:1.5rem;display:grid}.architecture-flow div{background:var(--surface);border-radius:var(--radius-sm);text-align:center;align-content:center;min-height:8rem;padding:1rem;display:grid}.architecture-flow span,.decision-grid article>span{color:var(--accent);font-family:var(--font-code);font-size:.65rem}.architecture-flow strong{margin-top:.2rem}.architecture-flow small{color:var(--text-faint);font-size:.67rem}.architecture-flow i{background:var(--accent);height:1px}.decision-grid{grid-template-columns:repeat(2,1fr);gap:.75rem;display:grid}.decision-grid article{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-sm);padding:1.5rem}.decision-grid h3{margin:1rem 0 .5rem;font-size:1.1rem}.decision-grid p{color:var(--text-soft);margin:0;font-size:.85rem}.next-project{border-top:1px solid var(--border);grid-template-columns:1fr auto;padding-block:4rem;display:grid}.next-project p,.next-project>span{color:var(--text-faint);font-family:var(--font-code);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.65rem}.next-project a{letter-spacing:-.05em;grid-column:1/-1;justify-content:space-between;align-items:center;margin-top:.5rem;font-size:clamp(2rem,6vw,4.5rem);font-weight:600;display:flex}.next-project a:hover{color:var(--accent)}.next-project>span{grid-area:1/2}@media (width<=1020px){.hero{grid-template-columns:1fr minmax(20rem,.76fr);gap:2rem}.hero h1{font-size:clamp(3.7rem,8vw,5.8rem)}.about-grid{grid-template-columns:1fr;gap:2.5rem}.about-copy{max-width:45rem}}@media (width<=899px){.desktop-nav,.contact-link{display:none}.menu-toggle{display:inline-grid}.mobile-nav{z-index:49;background:var(--bg);border-top:1px solid var(--border);height:calc(100svh - 4.5rem);padding-block:2rem;display:block;position:fixed;inset:4.5rem 0 0}.mobile-nav[hidden]{display:none}.mobile-nav .shell{display:grid}.mobile-nav a{border-bottom:1px solid var(--border);letter-spacing:-.03em;align-items:center;gap:1rem;padding-block:1rem;font-size:1.5rem;font-weight:550;display:flex}.mobile-nav a span{color:var(--accent);font-family:var(--font-code);font-size:.65rem}body.menu-open{overflow:hidden}.hero{grid-template-columns:1fr;min-height:auto;padding-top:5rem}.hero-copy{max-width:45rem}.system-map{width:min(100%,35rem);margin-inline:auto}.projects-grid,.stack-layout{grid-template-columns:1fr}.project-description,.tag-list{min-height:auto}.stack-intro{position:static}.case-body{grid-template-columns:1fr}.case-aside{display:none}.footer-inner{grid-template-columns:1fr auto}.footer-build{display:none}}@media (width<=620px){:root{--section-space:5.5rem}.section-heading{grid-template-columns:max-content 1fr;gap:.9rem}.section-description{grid-column:1/-1;margin-top:.3rem}.hero h1{font-size:clamp(3.25rem,16vw,5rem)}.hero-intro{margin-top:2rem;font-size:1rem}.hero-actions .button,.contact-actions .button{flex:100%}.system-map svg{min-height:20rem}.display-title{font-size:clamp(2.25rem,12vw,3.5rem)}.about-facts{grid-template-columns:1fr}.about-facts div{border-bottom:1px solid var(--border);grid-template-columns:6rem 1fr;padding-block:.65rem;display:grid}.about-facts dd{margin:0}.timeline-item{grid-template-columns:1.5rem 1fr;gap:.8rem}.timeline-period{grid-area:1/2}.timeline-rail{grid-area:1/1/span 2}.timeline-content{grid-area:2/2}.project-index{font-size:5rem}.education-card{align-items:start;gap:1.1rem}.education-mark{width:3.2rem;height:3.2rem;font-size:.78rem}.contact-inner h2{font-size:clamp(3rem,15vw,5rem)}.footer-socials span{display:none}.case-meta{grid-template-columns:repeat(2,1fr);gap:1rem;display:grid}.architecture-flow{grid-template-columns:1fr}.architecture-flow i{width:1px;height:1.5rem;margin-inline:auto}.decision-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
