:root{color-scheme:light;--paper:#fbf6ee;--paper-strong:#fffaf3;--ink:#092d34;--ink-soft:#244851;--muted:#65777b;--line:#092d3424;--deep:#021a25;--deep-2:#052d37;--coral:#f06b58;--coral-dark:#d85043;--turquoise:#40b9aa;--violet:#8474b9;--shadow:0 22px 54px #041c221f;--max:1180px;--wide:1320px;--radius:8px;--font:"Vazirmatn Variable", Vazirmatn, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}:root[data-theme=dark]{color-scheme:dark;--paper:#071d25;--paper-strong:#0a2730;--ink:#f4efe6;--ink-soft:#d2e0df;--muted:#9fb3b1;--line:#f4efe629;--deep:#020d13;--deep-2:#031923;--shadow:0 22px 54px #00000047}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--paper);overflow-x:clip}body{min-width:320px;min-height:100vh;color:var(--ink);background:linear-gradient(180deg, #fbf6eeeb, #fbf6eedb), var(--paper);font-family:var(--font);text-rendering:optimizelegibility;flex-direction:column;margin:0;font-size:16px;line-height:1.85;display:flex;overflow-x:clip}main{flex:1}:root[data-theme=dark] body{background:var(--paper)}body:before{z-index:-2;pointer-events:none;content:"";opacity:.24;background-image:linear-gradient(#092d340a 1px,#0000 1px),linear-gradient(90deg,#092d3408 1px,#0000 1px);background-size:28px 28px;position:fixed;inset:0}img,svg{max-width:100%;display:block}img{height:auto}a{color:inherit;text-decoration:none}[dir=ltr]{unicode-bidi:isolate}button,input,textarea,select{font:inherit}:focus-visible{outline:3px solid color-mix(in srgb, var(--coral) 72%, white);outline-offset:4px}.skip-link{z-index:20;opacity:0;pointer-events:none;border-radius:var(--radius);background:var(--deep);color:#fff;padding:.65rem .95rem;position:fixed;inset-block-start:14px;inset-inline-start:14px;transform:translateY(-160%)}.skip-link:focus{opacity:1;pointer-events:auto;transform:translateY(0)}.button{border-radius:var(--radius);border:1px solid #0000;justify-content:center;align-items:center;min-height:46px;padding:.65rem 1.2rem;font-weight:680;line-height:1.2;transition:transform .18s,background-color .18s,border-color .18s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-primary{color:#fff;background:#064349;box-shadow:0 10px 18px #05434926}.button-secondary{border-color:var(--line);color:var(--ink);background:color-mix(in srgb, var(--paper-strong) 82%, transparent)}.site-header{z-index:10;padding:1.35rem clamp(1rem,3vw,3.5rem);position:absolute;inset-block-start:0;inset-inline:0}.header-shell,.footer-shell{width:min(100%, var(--max));grid-template-columns:150px 1fr 118px;align-items:center;margin-inline:auto;display:grid}.brand-mark,.footer-mark{color:var(--deep-2);letter-spacing:-.02em;direction:ltr;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:clamp(1.25rem,1.8vw,1.6rem);font-weight:760;line-height:1}:root[data-theme=dark] .brand-mark{color:var(--ink)}.desktop-nav{color:#0a3038;justify-content:center;gap:clamp(1.65rem,4vw,4.9rem);font-size:clamp(.98rem,1vw,1.06rem);font-weight:680;display:flex}.desktop-nav a{padding-block:.25rem .55rem;position:relative}.desktop-nav a:after{transform-origin:50%;background:var(--coral);content:"";height:2px;transition:transform .18s;position:absolute;inset-block-end:0;inset-inline:14%;transform:scaleX(0)}.desktop-nav a:hover:after,.desktop-nav a.is-active:after{transform:scaleX(1)}.desktop-nav a.is-active{color:var(--coral-dark)}.header-actions{border:1px solid var(--line);width:max-content;box-shadow:none;background:#ffffff75;border-radius:999px;justify-self:end;padding:.18rem;display:flex}:root[data-theme=dark] .header-actions{background:#021a25c7}.header-actions button,.mobile-menu-toggle,.back-to-top,.contact-actions a:not(.button){width:34px;height:34px;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:999px;place-items:center;display:inline-grid}.header-actions button[data-theme-choice=dark]{background:var(--deep);color:#fff}.header-actions svg,.back-to-top svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;width:18px;height:18px}.mobile-nav{display:none;position:relative}.hero-section{isolation:isolate;background:var(--paper-strong);min-height:640px;padding:clamp(6.2rem,8vw,7.8rem) clamp(1rem,4vw,3.5rem) 7rem;position:relative;overflow:hidden}.hero-art{z-index:-1;background:linear-gradient(90deg,#fbf6ee61,#fbf6eec7 42%,#fbf6ee66),linear-gradient(#fbf6ee59,#fbf6eed6),image-set("/images/art/hero-watercolor.webp" 1x type("image/webp"),"/images/art/hero-watercolor.png" 1x type("image/png")) 50%/cover no-repeat;position:absolute;inset:0}:root[data-theme=dark] .hero-art{opacity:.62;filter:saturate(.82)brightness(.72)}.hero-shell{width:min(100%, var(--wide));grid-template-rows:auto auto auto;grid-template-columns:repeat(12,minmax(0,1fr));align-items:start;gap:clamp(.7rem,2vw,1.8rem);margin-inline:auto;display:grid}.hero-slash{color:#092d3485;grid-area:1/2/auto/span 3;align-self:end;margin:1.35rem 0 0;font:780 .92rem/1.2 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.hero-copy{text-align:right;grid-area:1/3/span 2/span 7;justify-self:stretch;max-width:760px;padding-block-start:clamp(.9rem,2.8vw,2.4rem)}.hero-kicker{color:var(--ink-soft);margin:0 0 .75rem;font-size:clamp(.95rem,1.5vw,1.18rem);font-weight:620}.hero-copy h1{color:#093f47;overflow-wrap:anywhere;max-width:10ch;margin:0;font-size:clamp(3.35rem,5.8vw,4.5rem);font-weight:860;line-height:1.09}:root[data-theme=dark] .hero-copy h1{color:var(--ink)}.hero-headline{color:var(--ink-soft);margin:1.25rem 0 0;font-size:clamp(1.1rem,2vw,1.55rem);font-weight:590}.hero-intro{max-width:48ch;color:var(--ink-soft);margin:1rem 0 0;font-size:clamp(1rem,1.6vw,1.18rem)}.hero-actions{flex-wrap:wrap;justify-content:flex-start;gap:.75rem;margin-block-start:1.35rem;display:flex}.portrait-composition{color:#0b555c;text-align:right;grid-area:1/9/span 2/span 4;align-self:start;justify-items:start;margin-block-start:clamp(1.2rem,4.2vw,3.6rem);font-weight:680;display:grid;position:relative}.portrait-frame{aspect-ratio:.82;clip-path:polygon(6% 2%,95% 0,100% 72%,86% 100%,4% 94%,0 18%);background:linear-gradient(135deg,#ffffffd1,#fbf6eea8),#ffffffb8;width:clamp(210px,20vw,300px);margin:0;padding:.66rem;position:relative;transform:rotate(-1.4deg);box-shadow:0 24px 44px #062c3326}.portrait-frame:before{z-index:-1;content:"";clip-path:polygon(8% 4%,93% 3%,97% 70%,84% 96%,7% 91%,3% 20%);border:1px solid #093f4729;position:absolute;inset:.1rem}.portrait-frame img{object-fit:cover;object-position:50% 42%;filter:saturate(.94)contrast(1.03);clip-path:polygon(7% 3%,94% 1%,98% 73%,84% 98%,5% 93%,1% 19%);width:100%;height:100%}.portrait-composition p{border-inline-start:2px solid #f06b5894;max-width:18rem;margin:1.05rem 0 0;padding-inline-start:.6rem;font-size:.98rem;line-height:1.9}.portrait-composition p span{color:#092d347a;margin-block-end:.2rem;font:760 .86rem/1.2 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;display:block}.portrait-arrow{color:#0b6a70;width:76px;position:absolute;inset-block-start:38%;inset-inline:-3.65rem auto}.hero-scope{color:#092d3499;flex-wrap:wrap;grid-area:3/5/auto/span 5;align-self:end;gap:.25rem 1.4rem;margin:clamp(2rem,4vw,3.2rem) 0 0;padding:0;font-size:.98rem;font-weight:650;list-style:none;display:flex}.hero-scope li:before{color:var(--coral-dark);content:"/";direction:ltr;margin-inline-end:.45rem}.portrait-arrow path{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px}.hero-to-dark-divider,.dark-to-paper-divider{z-index:2;position:relative;overflow:hidden}.hero-to-dark-divider{height:112px;color:var(--deep);margin-block-start:-112px}.dark-to-paper-divider{height:86px;color:var(--paper);background:0 0;margin-block-start:-86px}.hero-to-dark-divider svg,.dark-to-paper-divider svg{width:100%;height:100%}.divider-path{fill:currentColor}.divider-path--mobile{display:none}.expertise-band{color:#eaf6f4;background:linear-gradient(113deg, #40b9aa29, transparent 42%), linear-gradient(100deg, var(--deep), #052536 72%, #061927);margin-block-start:-1px;padding:clamp(5.2rem,8vw,7.4rem) clamp(1rem,4vw,3.5rem) clamp(5.4rem,7vw,6.8rem)}.expertise-shell{width:min(100%, var(--wide));grid-template-columns:minmax(420px,.95fr) minmax(0,1.05fr);align-items:center;gap:clamp(2.2rem,5.5vw,5.8rem);margin-inline:auto;display:grid}.code-note{direction:ltr;background:#01121b85;border:1px solid #ffffff24;border-radius:6px;grid-area:1/2;justify-self:start;width:min(100%,630px);min-width:0;margin-block-start:clamp(2.2rem,4vw,4rem);padding:clamp(1.2rem,2vw,1.6rem);box-shadow:inset 0 1px #ffffff0a}.window-dots{gap:.45rem;margin-block-end:1rem;display:flex}.window-dots i{border-radius:999px;width:12px;height:12px}.window-dots i:first-child{background:#ff655e}.window-dots i:nth-child(2){background:#ffc85e}.window-dots i:nth-child(3){background:#66cf88}.code-note pre{color:#e0f5f0;white-space:pre-wrap;overflow-wrap:break-word;max-width:100%;margin:0;font:560 clamp(.88rem,1.05vw,.95rem)/1.9 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;overflow-x:hidden}.code-note span{color:#f06b58}.expertise-copy h2,.stack-section h2,.experience-copy h2,.selected-work h2,.case-study h2,.writing-section h2,.contact-copy h2{margin:0;font-size:clamp(1.85rem,3.25vw,2.9rem);font-weight:760;line-height:1.35}.expertise-copy{grid-area:1/1}.expertise-copy>p{color:#eaf6f4e6;max-width:52ch;margin:1.05rem 0 2.45rem;font-size:clamp(1.06rem,1.35vw,1.18rem);line-height:1.95}.capability-list{gap:0;margin:0;padding:0;list-style:none;display:grid}.capability-list li{border-block-start:1px solid #ffffff24;grid-template-columns:4.1rem minmax(11rem,.62fr) 1fr;align-items:baseline;gap:1.35rem;padding:1.28rem 0;display:grid}.capability-list li:last-child{border-block-end:1px solid #ffffff24}.capability-list span{color:var(--coral);direction:ltr;font:800 1rem/1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.capability-list h3{color:#fff;margin:0;font-size:clamp(1.16rem,1.9vw,1.48rem);font-weight:700}.capability-list p{color:#eaf6f4d1;margin:0;font-size:clamp(.98rem,1.1vw,1.06rem);line-height:1.92}.stack-section,.selected-work,.writing-section,.case-study,.contact-panel{width:min(calc(100% - 2rem), var(--max));margin-inline:auto}.stack-section{text-align:right;grid-template-columns:minmax(16rem,.7fr) 1.3fr;align-items:start;gap:clamp(2rem,6vw,6rem);padding-block:clamp(4.5rem,8vw,7rem) clamp(3rem,6vw,5rem);display:grid}.stack-list{border-block-start:1px solid var(--line);grid-template-columns:1fr;gap:0;margin:0;display:grid}.stack-list article{border-block-end:1px solid var(--line);grid-template-columns:minmax(9rem,.35fr) 1fr;align-items:baseline;gap:1rem;min-width:0;padding:1rem 0;display:grid}.stack-list h3{color:var(--ink);margin:0;font:760 .9rem/1.3 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.stack-list p{color:var(--ink-soft);margin:0;font:560 .95rem/1.8 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.experience-panel{width:min(calc(100% - 2rem), var(--max));border-block:1px solid var(--line);box-shadow:none;background:0 0;grid-template-columns:minmax(0,1fr) minmax(150px,.24fr) minmax(240px,.42fr);gap:clamp(1.4rem,4vw,4rem);margin:0 auto clamp(4rem,8vw,7rem);padding-block:clamp(2rem,5vw,4rem);display:grid}.experience-identity{opacity:.74;mix-blend-mode:multiply;place-self:center;width:clamp(138px,14vw,190px);margin:0}:root[data-theme=dark] .experience-identity{filter:invert();opacity:.55;mix-blend-mode:screen}.experience-notes{border-block-start:1px solid var(--line);align-self:center;align-items:center;gap:0;display:grid}.experience-notes p{border-block-end:1px solid var(--line);color:var(--ink-soft);margin:0;padding:.85rem 0;font-weight:650}.experience-copy p{color:var(--muted);margin:.8rem 0 1.2rem}.section-heading{grid-template-columns:minmax(0,.8fr) minmax(16rem,.52fr);align-items:end;gap:clamp(1.5rem,5vw,5rem);margin-block-end:clamp(1.8rem,4vw,3rem);display:grid}.section-heading>p{color:var(--muted);margin:0 0 .3rem;font-size:clamp(1rem,1.2vw,1.08rem);line-height:1.9}.work-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(1.2rem,2.5vw,2rem);display:grid}.work-item{border-block-start:1px solid var(--line);box-shadow:none;background:0 0;grid-column:1/-2;grid-template-columns:minmax(0,1.1fr) minmax(270px,.75fr);align-items:stretch;display:grid;overflow:hidden}.work-item:nth-child(2n){grid-column:3/-1;grid-template-columns:minmax(270px,.75fr) minmax(0,1.1fr)}:root[data-theme=dark] .work-item,:root[data-theme=dark] .experience-panel,:root[data-theme=dark] .contact-panel{background:#ffffff0d}.work-visual{background:linear-gradient(135deg,#021a25d6,#021a253d),linear-gradient(45deg,#0000 47%,#fff3 48%,#0000 49%),radial-gradient(circle at 72% 22%,#f06b5885,#0000 24%),radial-gradient(circle at 18% 75%,#40b9aa94,#0000 34%),#dbe9e7;place-items:start end;min-height:330px;padding:1.2rem;display:grid;position:relative;overflow:hidden}.work-item:nth-child(2) .work-visual{background:linear-gradient(135deg,#021a25d1,#021a252e),linear-gradient(90deg,#0000 49%,#ffffff2e 50%,#0000 51%),radial-gradient(circle at 26% 26%,#8474b970,#0000 27%),radial-gradient(circle at 75% 70%,#f06b587a,#0000 30%),#eadfd7;order:2}.work-visual span{z-index:2;color:#ffffffe6;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:clamp(2.2rem,5vw,4.6rem);font-weight:900;position:relative}.work-visual i,.work-visual b{content:"";background:#ffffff59;width:48%;height:1px;position:absolute;inset:auto 13% 16% auto}.work-visual b{width:34%;inset:29% auto auto 16%}.work-body{align-content:center;padding:clamp(1.4rem,4vw,3rem);display:grid}.placeholder-label{color:var(--coral-dark);background:0 0;margin-block-end:.65rem;font-size:.78rem;font-weight:760;display:inline-block}.placeholder-label:before{content:"["}.placeholder-label:after{content:"]"}.work-body h3,.writing-list h3{margin:0;font-size:clamp(1.25rem,2.3vw,1.85rem);font-weight:720;line-height:1.48}.work-body p,.writing-list p,.case-study p,.contact-copy p{color:var(--muted)}.work-body dl{border-block:1px solid var(--line);grid-template-columns:1fr 1fr;gap:.7rem;margin:1.1rem 0;padding-block:.85rem;display:grid}.work-body dl div{min-width:0}.work-body dt{color:var(--muted);font-size:.76rem}.work-body dd{color:var(--ink-soft);margin:0;font-weight:720}.work-body ul{flex-wrap:wrap;gap:.25rem .75rem;margin:0 0 1.2rem;padding:0;list-style:none;display:flex}.work-body li{color:var(--ink-soft);border:0;border-radius:0;padding:0;font:650 .82rem/1.4 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.work-body li+li:before{color:var(--line);content:"/";margin-inline-end:.75rem}.work-body a{color:var(--coral-dark);font-weight:800}.case-study{border-block:1px solid var(--line);grid-template-columns:.85fr 1.15fr;gap:clamp(1.4rem,4vw,4rem);margin-block:clamp(4rem,8vw,7rem);padding-block:clamp(2rem,5vw,4rem);display:grid}.eyebrow{color:var(--coral-dark);margin:0 0 .5rem;font:800 .9rem/1.3 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.case-diagram{background:var(--line);grid-template-columns:repeat(2,1fr);gap:1px;display:grid}.case-diagram article{background:var(--paper);min-height:146px;padding:1.25rem}.case-diagram strong{color:var(--turquoise);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.case-diagram p{margin:.55rem 0 0}.writing-section{grid-template-columns:.7fr 1.3fr;gap:clamp(1.5rem,4vw,4rem);margin-block-end:clamp(3rem,7vw,5.5rem);display:grid}.writing-list{background:var(--line);gap:1px;display:grid}.writing-list article{background:var(--paper);grid-template-columns:1fr auto;gap:1rem;padding:1.1rem 0;display:grid}.writing-list time{color:var(--muted);white-space:nowrap}.quote-band{width:min(100% - 2rem,1240px);margin:0 auto clamp(2rem,5vw,4rem)}.quote-card{color:#fff;background:linear-gradient(90deg,#021a25d1,#021a25c2),image-set("/images/art/hero-watercolor.webp" 1x type("image/webp"),"/images/art/hero-watercolor.png" 1x type("image/png")) 50%/cover no-repeat;border-radius:22px;grid-template-columns:auto 1fr minmax(230px,340px);align-items:center;gap:clamp(1rem,4vw,3rem);min-height:170px;padding:clamp(1.2rem,3vw,2rem);display:grid;position:relative;overflow:hidden}.quote-card>span{color:var(--coral);font-size:clamp(4rem,8vw,6rem);font-weight:900;line-height:.65}.quote-card p{margin:0;font-size:clamp(1.25rem,3vw,2rem);font-weight:760}.quote-person{background:#ffffff14;border:1px solid #ffffff2e;border-radius:18px;grid-template-columns:58px 1fr;align-items:center;gap:.35rem .85rem;padding:.8rem;display:grid}.quote-person img{object-fit:cover;opacity:.92;border-radius:4px;grid-row:span 2;width:58px;height:58px}.quote-person small{color:#ffffffb8}.contact-panel{background:linear-gradient(90deg,#ffffff80,#0000),#fffaf3a8;border-radius:10px;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(1.4rem,4vw,4rem);margin-block-end:2rem;padding:clamp(1.3rem,4vw,2.8rem);display:grid}.contact-actions{border-inline-end:1px dashed var(--line);justify-items:center;gap:1rem;display:grid}.contact-actions ul{flex-wrap:wrap;justify-content:center;gap:.8rem;margin:0;padding:0;list-style:none;display:flex}.contact-actions a:not(.button){box-shadow:none;color:var(--deep-2);background:#fff;font-size:.78rem;font-weight:900}.contact-placeholder{color:var(--muted);font-size:.9rem}.contact-copy p{margin-block-end:0}.site-footer{color:#eaf6f4;background:linear-gradient(90deg, var(--deep), #052a36);padding:1.5rem clamp(1rem,4vw,3.5rem)}.footer-shell{grid-template-columns:150px 1fr 120px}.footer-mark{color:#fff}.site-footer p{text-align:center;margin:0}.back-to-top{color:#fff;background:#ffffff1f;justify-self:end}.footer-nav,.footer-social{flex-wrap:wrap;justify-content:center;gap:.5rem 1.4rem;margin:0;padding:0;font-size:.9rem;list-style:none;display:flex}.footer-nav a,.footer-social a{color:#eaf6f4d1}.footer-social{direction:ltr;grid-column:1/-1;justify-self:center}.inner-page{width:min(calc(100% - 2rem), var(--max));margin-inline:auto;padding-block:clamp(7rem,11vw,10rem) clamp(4rem,8vw,7rem)}.page-lead{border-block-end:1px solid var(--line);gap:clamp(1.4rem,4vw,4rem);margin-block-end:clamp(3rem,7vw,6rem);padding-block-end:clamp(2rem,5vw,4rem);display:grid}.page-lead--split{grid-template-columns:minmax(0,.82fr) minmax(18rem,.58fr);align-items:end}.page-lead h1,.case-hero h1,.article-hero h1,.not-found-panel h1{color:#093f47;margin:0;font-size:clamp(3rem,7vw,6rem);font-weight:860;line-height:1.08}.page-lead>p,.case-hero>div>p,.article-hero>p,.not-found-panel>p{max-width:56ch;color:var(--ink-soft);margin:0;font-size:clamp(1.08rem,1.65vw,1.28rem);line-height:2}.about-identity,.about-experience,.tool-index,.project-feature,.case-hero,.case-overview,.case-domain,.contact-page-panel{grid-template-columns:minmax(0,1fr) minmax(18rem,.72fr);align-items:center;gap:clamp(1.7rem,5vw,5rem);margin-block-end:clamp(3.5rem,8vw,6.5rem);display:grid}.about-identity h2,.about-experience h2,.tool-index h2,.project-feature h2,.architecture-head h2,.case-domain h2,.case-responsibilities h2,.empty-state h2,.writing-feature h2,.contact-page-panel h2{color:var(--ink);margin:0;font-size:clamp(1.9rem,3.6vw,3.1rem);font-weight:780;line-height:1.34}.about-identity p,.about-experience p,.project-feature p,.architecture-head p,.case-domain p,.empty-state p,.writing-feature p,.contact-methods p{color:var(--muted);font-size:clamp(1rem,1.2vw,1.08rem);line-height:1.95}.about-mark{opacity:.78;mix-blend-mode:multiply;justify-self:center;width:min(260px,32vw);margin:0}.principles-section,.project-catalogue,.article-index,.case-responsibilities{margin-block-end:clamp(3.5rem,8vw,6.5rem)}.principles-list,.project-index-list,.case-responsibilities ol,.article-index ol{border-block-start:1px solid var(--line);gap:0;margin:0;padding:0;list-style:none;display:grid}.principles-list li{border-block-end:1px solid var(--line);grid-template-columns:4rem minmax(10rem,.5fr) 1fr;align-items:baseline;gap:clamp(1rem,3vw,2.5rem);padding:1.2rem 0;display:grid}.principles-list span,.project-index-list>article>span,.case-responsibilities span{color:var(--coral-dark);font:800 1rem/1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.principles-list h3,.project-index-list h3,.domain-columns h3,.article-index h3{color:var(--ink);margin:0;font-size:clamp(1.15rem,1.75vw,1.42rem);line-height:1.45}.principles-list p{color:var(--muted);margin:0}.about-experience{border-block:1px solid var(--line);align-items:start;padding-block:clamp(2rem,5vw,4rem)}.about-experience ul,.contact-page-panel ul,.domain-columns ul{border-block-start:1px solid var(--line);gap:0;margin:0;padding:0;list-style:none;display:grid}.about-experience li,.contact-page-panel li,.domain-columns li{border-block-end:1px solid var(--line);color:var(--ink-soft);padding:.75rem 0;font-weight:650}.tool-index{align-items:start}.tool-index-list{border-block-start:1px solid var(--line);gap:0;display:grid}.tool-index-list article{border-block-end:1px solid var(--line);grid-template-columns:minmax(8rem,.38fr) 1fr;gap:1rem;padding:1rem 0;display:grid}.tool-index-list h3,.tool-index-list p{margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.tool-index-list h3{color:var(--ink);font-size:.92rem}.tool-index-list p{color:var(--ink-soft);font-size:.95rem;line-height:1.8}.next-step-panel,.empty-state,.writing-feature,.not-found-panel{border-block:1px solid var(--line);padding-block:clamp(2rem,5vw,4rem)}.empty-state h2{max-width:25ch;font-size:clamp(1.75rem,4.4vw,3.35rem)}.empty-state p{max-width:58ch}.inline-actions{flex-wrap:wrap;gap:.75rem;margin-block-start:1.5rem;display:flex}.project-cover{color:#eaf6f4;background:linear-gradient(90deg,#ffffff14 1px,#0000 1px) 0 0/48px 48px,linear-gradient(#ffffff14 1px,#0000 1px) 0 0/48px 48px,linear-gradient(135deg,#021a25,#093f47 62%,#0b555c);border:1px solid #eaf6f42e;border-radius:6px;align-content:space-between;min-height:clamp(320px,35vw,480px);padding:clamp(1rem,2.4vw,2rem);display:grid;position:relative;overflow:hidden}.project-cover:before{content:"";background:#f06b58b8;width:42%;height:1px;position:absolute;inset:12% 10% auto auto}.project-cover:after{content:"";background:#eaf6f457;width:38%;height:1px;position:absolute;inset:auto auto 15% 12%;transform:rotate(-12deg)}.project-cover-index{color:var(--coral);font:860 clamp(2.4rem,6vw,5.5rem)/1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.project-cover strong{z-index:1;letter-spacing:-.04em;font:860 clamp(3.2rem,9vw,8rem)/.9 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;position:relative}.project-cover p{color:#eaf6f4d1;margin:.7rem 0 0;font:700 .95rem/1.4 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.project-cover ul,.tech-strip,.article-index ul{flex-wrap:wrap;gap:.35rem .8rem;margin:1.2rem 0 0;padding:0;list-style:none;display:flex}.project-cover li,.tech-strip li,.article-index li li{color:inherit;font:700 .82rem/1.4 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.project-cover li+li:before,.tech-strip li+li:before,.article-index li li+li:before{color:var(--coral);content:"/";margin-inline-end:.8rem}.work-item .project-cover{border-color:#0000;min-height:360px}.project-meta{border-block-start:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:1.5rem 0;display:grid}.project-meta div{border-block-end:1px solid var(--line);padding:.85rem 0}.project-meta dt{color:var(--muted);font-size:.82rem}.project-meta dd{color:var(--ink-soft);margin:.2rem 0 0;font-weight:760}.text-link{color:var(--coral-dark);align-items:center;font-weight:820;display:inline-flex}.project-index-list article,.article-index li{border-block-end:1px solid var(--line);grid-template-columns:4rem minmax(0,1fr) minmax(14rem,.55fr) auto;align-items:baseline;gap:clamp(1rem,3vw,2.5rem);padding:1.4rem 0;display:grid}.project-index-list article>div>p:first-child{color:var(--muted);margin:0 0 .35rem;font:760 .78rem/1.2 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.project-index-list article>div>p:last-child,.article-index p{color:var(--muted);margin:.55rem 0 0}.project-index-list ul{color:var(--ink-soft);flex-wrap:wrap;gap:.25rem .8rem;margin:0;padding:0;font:700 .78rem/1.4 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;list-style:none;display:flex}.case-page{width:min(calc(100% - 2rem), var(--wide))}.breadcrumbs{margin-block-end:clamp(1.6rem,3vw,2.6rem)}.breadcrumbs ol{color:var(--muted);flex-wrap:wrap;gap:.4rem;margin:0;padding:0;font:760 .86rem/1.4 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;list-style:none;display:flex}.breadcrumbs li+li:before{color:var(--coral-dark);content:"/";margin-inline-end:.4rem}.case-hero{grid-template-columns:minmax(0,.86fr) minmax(26rem,.82fr);align-items:center}.case-overview{border-block:1px solid var(--line);grid-template-columns:minmax(0,.75fr) minmax(20rem,1fr);align-items:start;padding-block:clamp(1.6rem,4vw,3rem)}.tech-strip{color:var(--ink-soft);align-self:center;margin:0}.case-section-grid{background:var(--line);grid-template-columns:repeat(4,1fr);gap:1px;margin-block-end:clamp(4rem,8vw,7rem);display:grid}.case-section-grid article{background:var(--paper);min-height:250px;padding:clamp(1rem,2vw,1.4rem)}.case-section-grid span{color:var(--coral-dark);font:800 .9rem/1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.case-section-grid h2{margin:2.2rem 0 .85rem;font-size:clamp(1.35rem,2.4vw,1.85rem);line-height:1.35}.case-section-grid p{color:var(--muted);margin:0;font-size:.96rem;line-height:1.9}.architecture-diagram{color:#eaf6f4;background:linear-gradient(115deg, var(--deep), #062f38);margin-block-end:clamp(4rem,8vw,7rem);padding:clamp(1.3rem,4vw,2.4rem)}.architecture-diagram h2{color:#fff}.architecture-head{grid-template-columns:minmax(0,.65fr) minmax(18rem,.55fr);align-items:end;gap:clamp(1.4rem,4vw,4rem);margin-block-end:clamp(2rem,5vw,4rem);display:grid}.architecture-head p:not(.eyebrow){color:#eaf6f4cc}.architecture-map{grid-template-columns:minmax(0,1fr) minmax(14rem,.42fr);gap:clamp(1rem,3vw,2rem);display:grid}.architecture-core{background:#ffffff29;grid-template-columns:repeat(4,1fr);gap:1px;margin:0;padding:0;list-style:none;display:grid}.architecture-core li{background:#01121ba3;min-height:148px;padding:1rem;position:relative}.architecture-core li+li:before{z-index:2;color:var(--coral);content:"←";font:800 1.2rem/1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;position:absolute;inset-block-start:50%;inset-inline-start:calc(100% - .35rem)}.architecture-core strong{color:#fff;margin-block-end:.6rem;font:800 1.05rem/1.25 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;display:block}.architecture-core span,.architecture-services li,.architecture-infra li{color:#eaf6f4c7}.architecture-services,.architecture-infra{border:1px solid #ffffff29;padding:1rem}.architecture-services{margin-block-end:1rem}.architecture-services p,.architecture-infra p{color:var(--coral);margin:0 0 .8rem;font:800 .86rem/1.3 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.architecture-services ul,.architecture-infra ul{flex-wrap:wrap;gap:.35rem .85rem;margin:0;padding:0;font:700 .86rem/1.5 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;list-style:none;display:flex}.domain-columns{grid-template-columns:repeat(2,1fr);gap:clamp(1.2rem,3vw,2rem);display:grid}.case-responsibilities ol{margin-block-start:1.5rem}.case-responsibilities li{border-block-end:1px solid var(--line);color:var(--ink-soft);grid-template-columns:4rem 1fr;gap:1rem;padding:1rem 0;font-weight:650;display:grid}.prose{width:min(100%,760px);color:var(--ink-soft);margin-inline:auto;font-size:clamp(1.05rem,1.45vw,1.22rem);line-height:2.08}.case-body{margin-block-end:clamp(4rem,8vw,7rem)}.prose h2,.prose h3{color:var(--ink);line-height:1.38}.prose h2{margin:3rem 0 .85rem;font-size:clamp(1.75rem,3vw,2.4rem)}.prose h3{margin:2.2rem 0 .7rem;font-size:clamp(1.35rem,2.2vw,1.7rem)}.prose p,.prose ul,.prose ol,.prose blockquote,.prose table,.prose pre{margin-block:1rem}.prose code,.prose pre{text-align:left;direction:ltr;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.prose :not(pre)>code{color:var(--coral-dark);background:#f06b5814;border-radius:4px;padding:.1rem .28rem}.prose pre{border:1px solid var(--line);color:#eaf6f4;background:var(--deep);border-radius:6px;padding:1rem;font-size:.95rem;line-height:1.75;overflow-x:auto}.prose blockquote{border-inline-start:3px solid var(--coral);color:var(--ink);margin-inline:0;padding-inline-start:1rem}.prose table{border-collapse:collapse;display:block;overflow-x:auto}.prose th,.prose td{border:1px solid var(--line);padding:.6rem .8rem}.article-page{width:min(100% - 2rem,980px)}.article-hero{border-block-end:1px solid var(--line);margin-block-end:clamp(2rem,5vw,4rem);padding-block-end:clamp(2rem,5vw,4rem)}.article-meta{color:var(--muted);flex-wrap:wrap;gap:.45rem 1rem;margin-block-start:1.2rem;font-size:.95rem;display:flex}.article-pagination{border-block-start:1px solid var(--line);gap:.8rem;width:min(100%,760px);margin:clamp(3rem,7vw,5rem) auto 0;padding-block-start:1.4rem;display:grid}.article-pagination a{color:var(--coral-dark);font-weight:760}.writing-feature{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:2rem;margin-block-end:clamp(3rem,7vw,5rem);display:grid}.writing-feature time,.article-index time{color:var(--muted);white-space:nowrap;font:760 .9rem/1.5 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.article-index li{grid-template-columns:minmax(8rem,.28fr) 1fr}.contact-page-panel{align-items:start}.contact-methods{border-block-start:1px solid var(--line);padding-block-start:1.2rem}.contact-methods ul{gap:.8rem;margin:0;padding:0;list-style:none;display:grid}.contact-methods a{border-block-end:1px solid var(--line);color:var(--coral-dark);padding-block-end:.8rem;font:800 1rem/1.4 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;display:block}.not-found-page{align-items:center;min-height:72vh;display:grid}.not-found-panel{max-width:760px}@media (width<=980px){.site-header{z-index:40;padding:1rem clamp(1.125rem,5vw,1.5rem)}.header-shell{width:min(100%, var(--max));justify-content:space-between;align-items:center;display:flex}.desktop-nav,.header-actions{display:none}.mobile-nav{z-index:45;display:block;position:relative}.mobile-menu-toggle{border:1px solid var(--line);width:44px;height:44px;color:var(--deep-2);background:#ffffff9e;border-radius:6px;position:relative;box-shadow:0 10px 24px #07262d14}:root[data-theme=dark] .mobile-menu-toggle{color:var(--ink);background:#021a25c7}.mobile-menu-toggle svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:2.2px;width:24px;height:24px}.menu-icon--close,.mobile-menu-toggle.is-open .menu-icon--hamburger{display:none}.mobile-menu-toggle.is-open .menu-icon--close{display:block}.mobile-nav nav{inset-block-start:calc(100% + .8rem);z-index:50;border:1px solid var(--line);background:var(--paper-strong);min-width:min(17rem,100vw - 2.25rem);box-shadow:var(--shadow);border-radius:8px;gap:.2rem;padding:.8rem;display:grid;position:absolute;left:0;right:auto}.mobile-nav nav[hidden]{display:none}.mobile-nav nav a{border-radius:var(--radius);padding:.75rem .8rem;font-weight:760}.hero-shell,.expertise-shell,.experience-panel,.case-study,.writing-section,.contact-panel,.page-lead--split,.about-identity,.about-experience,.tool-index,.project-feature,.case-hero,.case-overview,.case-domain,.contact-page-panel,.architecture-head,.architecture-map{grid-template-columns:1fr}.hero-copy,.portrait-composition,.code-note,.expertise-copy,.experience-identity{grid-area:auto}.hero-shell{gap:2rem}.portrait-composition{justify-self:center;margin-block-start:0}.hero-shell{grid-template-columns:repeat(8,minmax(0,1fr))}.hero-copy{grid-area:auto/1/auto/-1}.portrait-composition{grid-area:auto/1/auto/span 4;place-self:start;margin-block-start:.8rem}.hero-scope,.hero-slash{grid-column:1/-1}.stack-section,.section-heading{grid-template-columns:1fr}.expertise-shell{align-items:start}.code-note{order:2;justify-self:stretch;width:100%;max-width:none;margin-block-start:.5rem}.expertise-copy{order:1}.experience-identity{width:min(190px,42vw)}.work-item,.work-item:nth-child(2n){grid-column:1/-1;grid-template-columns:1fr}.work-item:nth-child(2) .work-visual{order:0}.footer-shell{grid-template-columns:1fr;justify-items:center;gap:1rem}.footer-nav{order:2}.site-footer p{order:3}.footer-social{order:4}.back-to-top{order:5;justify-self:center}.principles-list li,.project-index-list article,.case-responsibilities li{grid-template-columns:3rem 1fr}.principles-list p,.project-index-list ul,.project-index-list a{grid-column:2}.case-section-grid,.domain-columns,.architecture-core,.project-meta{grid-template-columns:1fr}.architecture-core li+li:before{inset-block:auto -.85rem;inset-inline-start:50%;transform:translate(-50%)rotate(-90deg)}.contact-actions{border-inline-end:0;border-block-end:1px dashed var(--line);padding-block-end:1.5rem}}@media (width<=640px){body{font-size:15px}.site-header{padding-block:.9rem;padding-inline:clamp(1.125rem,5.6vw,1.5rem)}.header-shell{gap:.6rem}.brand-mark{font-size:1.42rem}.header-actions button{width:34px;height:34px}.hero-section{min-height:auto;padding-block:5.1rem 5.4rem;padding-inline:1rem}.hero-shell{grid-template-columns:1fr;gap:1.15rem;display:grid}.hero-copy{text-align:center;grid-area:auto;justify-items:center;padding-block-start:0}.hero-copy h1{max-width:8.9ch;margin-inline:auto;font-size:clamp(2.85rem,14.4vw,3.6rem);line-height:1.1}.hero-headline{margin-block-start:1rem;font-size:1.12rem}.hero-intro{margin-inline:auto;font-size:1rem;line-height:1.95}.hero-actions{justify-content:center}.hero-slash{margin:0 auto;font-size:.86rem;display:block}.hero-scope{grid-area:auto;justify-content:center;gap:.15rem .8rem;margin:.5rem 0 0}.portrait-composition{text-align:center;grid-area:auto;justify-self:center;justify-items:center;max-width:260px;margin:.3rem auto 0;transform:none}.portrait-frame{justify-self:center;width:clamp(180px,54vw,220px);transform:rotate(-.7deg)}.portrait-composition p{border-block-start:2px solid color-mix(in srgb, var(--coral) 60%, transparent);border-inline-start:0;max-width:17rem;padding-block-start:.75rem;padding-inline-start:0;font-size:.95rem}.portrait-arrow{display:none}.hero-to-dark-divider{height:72px;margin-block-start:-72px}.dark-to-paper-divider{height:64px;margin-block-start:-64px}.divider-path--desktop{display:none}.divider-path--mobile{display:block}.capability-list li,.stack-list article,.experience-panel,.work-grid,.case-diagram,.quote-card,.writing-list article,.tool-index-list article,.writing-feature,.article-index li{grid-template-columns:1fr}.capability-list li{gap:.55rem;padding:1.2rem 0}.code-note{padding:1rem}.code-note pre{font-size:.84rem;line-height:1.82}.eyebrow{font-size:.86rem}.work-visual{min-height:260px}.experience-identity{justify-self:start;width:160px;margin-block:-.5rem .2rem}.section-heading{align-items:start}.quote-card{text-align:center}.quote-person{text-align:right;justify-self:stretch}.inner-page{padding-block:5.6rem 4rem}.page-lead{margin-block-end:2.4rem}.page-lead h1,.case-hero h1,.article-hero h1,.not-found-panel h1{font-size:clamp(2.65rem,13vw,4.2rem)}.page-lead>p,.case-hero>div>p,.article-hero>p,.not-found-panel>p{font-size:1.05rem}.about-mark{justify-self:start;width:170px}.principles-list li,.project-index-list article,.case-responsibilities li{gap:.7rem}.project-cover{min-height:300px}.project-cover strong{font-size:clamp(3rem,18vw,4.6rem)}.empty-state h2{font-size:clamp(1.55rem,8vw,2.25rem)}.case-section-grid article{min-height:auto}.architecture-diagram{margin-inline:-1rem;padding-inline:1rem}.architecture-core li{min-height:118px}.prose{font-size:1.06rem;line-height:2}.contact-page-panel ul,.domain-columns ul,.about-experience ul{border-block-start:1px solid var(--line)}.article-meta,.inline-actions,.footer-nav,.footer-social{justify-content:flex-start}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
