.contact-form[data-astro-cid-vekgkm42]{width:100%;max-width:760px}.contact-fields[data-astro-cid-vekgkm42]{grid-template-columns:1fr 1fr;gap:20px;display:grid}label[data-astro-cid-vekgkm42]{gap:8px;margin-bottom:20px;font-weight:500;display:grid}input[data-astro-cid-vekgkm42],textarea[data-astro-cid-vekgkm42]{box-sizing:border-box;color:#232323;width:100%;font:inherit;background:#fff;border:1px solid #9b9994;border-radius:12px;padding:14px}textarea[data-astro-cid-vekgkm42]{resize:vertical;min-height:140px}input[data-astro-cid-vekgkm42]:focus-visible,textarea[data-astro-cid-vekgkm42]:focus-visible{outline-offset:3px;outline:2px solid #232323}.contact-trap[data-astro-cid-vekgkm42]{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.contact-privacy[data-astro-cid-vekgkm42]{margin-bottom:20px;font-size:14px;line-height:1.6}.contact-privacy[data-astro-cid-vekgkm42] a[data-astro-cid-vekgkm42]{text-underline-offset:3px;text-decoration:underline}.contact-status[data-astro-cid-vekgkm42]{min-height:1.6em;margin-top:16px;line-height:1.6}button[data-astro-cid-vekgkm42]:disabled{opacity:.6;cursor:default}@media (width<=600px){.contact-fields[data-astro-cid-vekgkm42]{grid-template-columns:1fr;gap:0}}@font-face{font-family:Inter;src:url(/fonts/inter-latin-variable.woff2)format("woff2");font-weight:100 900;font-display:swap}:root{color-scheme:light;--accent:#343434;--accent-soft:#e5e3df;--paper:#faf9f6;--ink:#232323;--heading:#454545;--body:#595955;--muted:#666660;--line:#deddd9;--surface:#efeeeb;--max:1120px;background:var(--paper);color:var(--body);font-family:Inter,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{background:var(--paper);margin:0;font-size:16px;line-height:1.6}h1,h2,h3,p,ul{margin:0}h1,h2,h3{color:var(--heading);letter-spacing:-.055em;line-height:1.1}h1{font-size:clamp(46px,6vw,84px);font-weight:600}h2{font-size:clamp(38px,5.8vw,80px);font-weight:550}h3{letter-spacing:-.035em;font-size:22px;font-weight:550}a{color:inherit;text-underline-offset:5px}svg{flex-shrink:0;width:24px;height:24px;display:block}img{max-width:100%;height:auto;display:block}button{font:inherit}button,a,summary{touch-action:manipulation}button,summary{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px}p{color:var(--body)}.title-word{display:inline-block}.title-word:not(:last-child){margin-inline-end:.14em}.skip-link{z-index:100;background:var(--ink);color:#fff;border-radius:8px;padding:12px 18px;position:fixed;top:-100px;left:16px}.skip-link:focus{top:12px}.masthead{z-index:20;pointer-events:none;position:sticky;top:0}.header-inner{grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;max-width:1440px;min-height:86px;margin:auto;padding:14px 28px;display:grid}.header-inner>*{pointer-events:auto}.brand{white-space:nowrap;letter-spacing:-.5px;justify-self:start;align-items:center;gap:8px;font-size:14px;font-weight:500;text-decoration:none;display:flex}.brand svg{width:40px;height:40px}.primary-nav{background:#f4f3f0;border:1px solid #ffffffc7;border-radius:40px;gap:2px;padding:5px;display:flex;box-shadow:0 0 0 1px #23232312,0 8px 28px -10px #23232330,inset 0 1px #fff,inset 0 -1px #2323230a}.primary-nav a{white-space:nowrap;min-height:42px;color:var(--ink);border-radius:28px;align-items:center;padding:10px 17px;font-size:12px;font-weight:550;text-decoration:none;transition:background .2s,color .2s,box-shadow .2s;display:flex}.primary-nav a:hover{background:#ffffff80}.primary-nav a[aria-current],.primary-nav .nav-contact[aria-current]{color:#faf9f6;background:#292929;box-shadow:0 2px 6px #00000020,inset 0 1px #ffffff24}.primary-nav a:focus-visible{outline-color:var(--ink);outline-offset:2px}.nav-label{height:1.5em;line-height:1.5;display:block;overflow:hidden}.nav-label>span{transition:transform .38s cubic-bezier(.22,1,.36,1);display:block}.primary-nav a:hover .nav-label>span,.primary-nav a:focus-visible .nav-label>span{transform:translateY(-100%)}.header-actions{justify-content:flex-end;gap:10px;display:flex}.icon-link{background:var(--paper);border:1px solid #bebebe;border-radius:50%;place-items:center;width:42px;height:42px;transition:background .2s;display:grid}.icon-link svg{width:18px;height:18px}.icon-link:hover{background:var(--accent-soft)}.menu-toggle{display:none}.site-main{max-width:var(--max);margin:0 auto;padding:0 24px}.site-main:focus{outline:none}.hero{text-align:center;padding:38px 0 110px;scroll-margin-top:100px}.hero-stage{grid-template-columns:1fr 280px 1fr;align-items:center;gap:52px;max-width:960px;min-height:340px;margin:0 auto 34px;display:grid}.portrait-frame{isolation:isolate;background:#e6e6e6;border-radius:26px;width:280px;height:340px;position:relative;overflow:hidden;box-shadow:0 28px 44px -29px #8c8c8c99}.portrait-frame img{object-fit:cover;object-position:50% 32%;width:100%;height:100%;transition:transform .8s cubic-bezier(.2,1,.3,1)}.portrait-frame:hover img{transform:scale(1.035)}.portrait-link{white-space:nowrap;color:var(--ink);background:#f9f9f9f5;border-radius:30px;align-items:center;gap:16px;padding:10px 17px;font-size:12px;font-weight:600;text-decoration:none;display:flex;position:absolute;bottom:16px;left:50%;transform:translate(-50%);box-shadow:0 3px 12px #25252515}.portrait-link svg{width:17px;height:17px;transition:transform .3s}.portrait-link:hover svg{transform:translate(3px)}.portrait-link:focus-visible{outline-offset:3px;outline-color:#fff}.hero-note{text-align:left;flex-direction:column;align-items:flex-start;gap:16px;max-width:210px;line-height:1.4;display:flex}.note-left{justify-self:end}.hero-note strong{letter-spacing:-.4px;margin-bottom:6px;font-size:15px;font-weight:550;display:block}.hero-note p{color:var(--muted);font-size:13px}.icon-tile{width:54px;height:54px;color:var(--accent);background:linear-gradient(145deg,#fff,var(--surface));border:1px solid #fff;border-radius:18px;flex-shrink:0;place-items:center;display:grid;box-shadow:0 5px 12px #49494915,inset 0 -2px 3px #6e6e6e0c}.hero-note .icon-tile{border-radius:50%;width:64px;height:64px;transform:rotate(-7deg);box-shadow:0 8px 18px #54545420,inset 0 0 0 4px #ffffff80}.note-right .icon-tile{transform:rotate(7deg)}.icon-tile svg{filter:drop-shadow(0 2px #63636322);width:28px;height:28px}.hero h1{color:var(--ink)}.hero-description{letter-spacing:-.7px;max-width:820px;color:var(--body);text-wrap:pretty;margin:22px auto 28px;font-size:clamp(20px,2.2vw,28px);font-weight:400;line-height:1.45}.button{border:1px solid var(--ink);background:var(--ink);min-height:48px;color:var(--paper);border-radius:30px;justify-content:center;align-items:center;gap:20px;padding:12px 26px;font-size:13px;font-weight:500;text-decoration:none;transition:background .25s,transform .25s;display:inline-flex}.button svg{width:18px;height:18px;transition:transform .25s}.button:hover{background:#444;transform:translateY(-2px)}.button:hover svg{transform:translate(3px)}.button.secondary{border-color:var(--line);color:var(--ink);background:0 0;min-width:165px}.button.secondary:hover{background:var(--surface)}.about-panel{background:var(--surface);border-radius:28px;grid-template-columns:1.3fr 1fr;align-items:center;gap:64px;padding:48px;scroll-margin-top:110px;display:grid}.about-copy h2{margin-bottom:24px;font-size:clamp(38px,4.8vw,60px)}.about-copy>p:not(.eyebrow){color:var(--body);font-size:16px;line-height:1.7}.about-more{margin-top:18px}.about-more summary{color:var(--accent);align-items:center;gap:12px;min-height:44px;font-size:13px;font-weight:500;list-style:none;display:inline-flex}.about-more summary svg{width:18px;height:18px;transition:transform .25s}.about-more[open] summary svg{transform:rotate(90deg)}.profile-areas{border-left:1px solid #d1d1d1;grid-template-columns:1fr;gap:26px;padding-left:36px;display:grid}.profile-areas>div{grid-template-columns:36px 1fr;align-items:center;gap:2px 18px;display:grid}.profile-areas svg{color:var(--accent);grid-row:span 2;width:30px;height:30px}.profile-areas strong{letter-spacing:-1px;font-size:25px;font-weight:550;line-height:1.2}.profile-areas span{color:var(--muted);font-size:13px}.profile-areas br{display:none}.content-section{padding:110px 0 0;scroll-margin-top:12px}.section-heading{text-align:center;flex-direction:column;align-items:center;gap:16px;margin-bottom:46px;display:flex}.section-heading h2{text-wrap:balance;max-width:100%}.section-note{color:var(--muted);font-size:13px}.skills-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:12px;display:grid}.skill{background:var(--surface);border:1px solid #0000;border-radius:24px;padding:26px;transition:background .3s,border-color .3s}.skill summary{flex-direction:column;align-items:flex-start;min-height:220px;list-style:none;display:flex}.skill summary::-webkit-details-marker,summary::-webkit-details-marker{display:none}.skill .icon-tile{margin-bottom:24px;transition:transform .4s,box-shadow .4s}.skill:hover,.skill[open]{background:#eaeaea;border-color:#dcdcdc}.skill summary:hover .icon-tile,.skill summary:focus-visible .icon-tile{transform:translateY(-4px)rotate(-7deg);box-shadow:0 10px 20px #54545420}.skill h3{margin-bottom:24px;font-size:21px;line-height:1.2}.skill summary p{color:var(--muted);margin-top:auto;font-size:13px;line-height:1.5}.details-label{width:100%;color:var(--accent);justify-content:space-between;align-items:center;min-height:30px;margin-top:12px;font-size:12px;display:flex}.details-label>span{font-size:20px;transition:transform .25s}.skill[open] .details-label>span{transform:rotate(45deg)}.skill-description{border-top:1px solid #d0d0d0;margin-top:12px;padding-top:16px;font-size:14px;line-height:1.7}.tech-details{border-bottom:1px solid var(--line);margin-top:24px;padding:10px 0}.tech-details>summary{min-height:44px;color:var(--muted);justify-content:space-between;align-items:center;font-size:14px;display:flex}.tech-details[open]>summary{color:var(--accent)}.tags{flex-wrap:wrap;gap:7px;margin:14px 0;padding:0;list-style:none;display:flex}.tags li{color:#494949;background:#f5f5f5;border:1px solid #d9d9d9;border-radius:20px;padding:5px 10px;font-size:11px}.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:22px;display:grid}.project-card{background:var(--surface);border-radius:28px;padding:7px;transition:box-shadow .35s}.project-card:hover{box-shadow:0 20px 40px -20px #40404030}.project-cover{isolation:isolate;color:#383838;background:linear-gradient(135deg,#e2e2e2,#b5b5b5);border-radius:22px;flex-direction:column;justify-content:center;align-items:center;gap:30px;height:280px;padding:28px;display:flex;position:relative;overflow:hidden}.cover-grid{z-index:-1;background-image:linear-gradient(#f9f9f92b 1px,#0000 1px),linear-gradient(90deg,#f9f9f92b 1px,#0000 1px);background-size:34px 34px;transition:transform 1s cubic-bezier(.2,1,.3,1);position:absolute;inset:0;transform:perspective(400px)rotateX(15deg)rotate(-14deg)scale(1.4);mask-image:radial-gradient(#000,#0000 75%)}.project-cover:after{content:"";z-index:-1;border:1px solid #f6f6f655;border-radius:50%;width:260px;height:260px;position:absolute;top:-85px;right:-30px;box-shadow:0 0 0 28px #f1f1f109,0 0 0 60px #f1f1f109}.project-symbol{background:linear-gradient(145deg,#f9f9f9,#c5c5c5);border:1px solid #ffffff90;border-radius:28px;place-items:center;width:100px;height:100px;transition:transform .7s cubic-bezier(.2,1,.3,1);display:grid;transform:rotate(-9deg);box-shadow:8px 16px 28px #52525226,inset -3px -3px 7px #86868626}.project-symbol svg{color:#545454;stroke-width:1.4px;width:48px;height:48px}.project-cover>span:last-child{letter-spacing:-.6px;font-size:22px;font-weight:550}.project-cover.infrastructure{color:#f0f0f0;background:linear-gradient(135deg,#494949,#262626)}.infrastructure .project-symbol{background:linear-gradient(145deg,#b5b5b5,#5e5e5e);border-color:#d5d5d555;transform:rotate(9deg)}.infrastructure .project-symbol svg{color:#f4f4f4}.project-card:hover .project-symbol{transform:rotate(0)translateY(-6px)scale(1.04)}.project-card:hover .cover-grid{transform:perspective(400px)rotateX(0)rotate(-8deg)scale(1.5)}.project-copy{padding:24px 22px 12px}.project-copy>h3{margin-bottom:12px;font-size:23px}.project-copy>p{font-size:14px;line-height:1.7}.project-copy details>summary{min-height:52px;color:var(--accent);justify-content:space-between;align-items:center;gap:16px;margin-top:14px;font-size:13px;font-weight:550;display:flex}.round-arrow{border:1px solid #cbcbcb;border-radius:50%;place-items:center;width:34px;height:34px;display:grid}.round-arrow svg{width:17px;height:17px;transition:transform .25s}.project-copy details[open] .round-arrow svg{transform:rotate(90deg)}.project-expanded{border-top:1px solid var(--line);padding:18px 0 6px}.project-role{font-size:14px}.project-role strong{color:var(--ink);margin-bottom:8px;display:block}.text-link{min-height:44px;color:var(--accent);align-items:center;font-size:13px;display:inline-flex}.editorial-preview{background:var(--surface);border-radius:26px;padding:38px}.editorial-preview>p{letter-spacing:-.4px;max-width:760px;font-size:20px;line-height:1.6}.topic-list{border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:24px;margin-top:32px;padding-top:28px;display:grid}.topic-list>div{align-items:center;gap:12px;font-size:14px;font-weight:550;display:flex}.topic-list svg{color:var(--accent);width:25px;height:25px}.articles-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;display:grid}.article-card{align-items:start;gap:18px;display:grid}.article-art{min-height:180px;color:var(--accent);background:linear-gradient(140deg,#dedede,#efefef);border-radius:22px;place-items:center;display:grid}.article-art svg{width:44px;height:44px}.topic{background:var(--accent-soft);color:#4e4e4e;border-radius:6px;margin-bottom:10px;padding:4px 8px;font-size:11px;display:inline-block}.article-card h3{font-size:20px;line-height:1.3}.article-card h3 a{text-decoration:none}.article-card h3 a:hover{color:var(--accent)}.article-card p{margin-top:10px;font-size:14px}.article-card time{color:var(--muted);margin-top:16px;font-size:12px;display:block}.collaborations-grid{grid-template-columns:repeat(2,1fr);gap:24px;display:grid}.collaborations-grid p{margin-top:12px;font-size:15px}.contact-panel{background:var(--accent-soft);border-radius:28px;justify-content:space-between;align-items:center;gap:48px;margin:110px 0 60px;padding:48px;scroll-margin-top:110px;display:flex}.contact-panel>p{max-width:280px;font-size:14px}.eyebrow{text-transform:uppercase;letter-spacing:1.8px;color:var(--muted);margin-bottom:16px;font-size:11px}.contact-panel h2{font-size:clamp(34px,4.4vw,56px)}.site-footer{max-width:var(--max);border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;gap:20px;margin:0 auto 16px;padding:24px;font-size:11px;display:flex}.site-footer a{align-items:center;min-height:44px;text-decoration:none;display:inline-flex}.footer-brand{letter-spacing:-.7px;color:var(--ink);font-size:17px;font-weight:600}.footer-brand span{color:var(--accent)}.reading-page{max-width:800px;min-height:60vh;margin:60px auto 90px}.reading-page h1{overflow-wrap:anywhere;margin-bottom:24px;font-size:clamp(36px,5vw,60px)}.reading-page h1 span{color:var(--accent)}.back-link{min-height:44px;color:var(--muted);align-items:center;margin-bottom:32px;font-size:13px;display:inline-flex}.reading-intro{margin:26px 0 32px;font-size:22px}.article-meta{font-size:12px}.reading-page>.prose{border-top:1px solid var(--line);margin-top:40px;padding-top:24px}.prose{color:var(--body);overflow-wrap:anywhere;font-size:15px;line-height:1.8}.prose p{margin:16px 0}.prose h2{margin:28px 0 14px;font-size:28px}.prose h3{margin:24px 0 12px;font-size:21px}.prose ul,.prose ol{color:var(--muted);margin:16px 0;padding-left:22px}.prose strong{color:var(--ink);font-weight:550}.prose li+li{margin-top:7px}.prose a{color:var(--accent)}.prose pre{color:#f0f0f0;background:#232323;border-radius:12px;padding:20px;overflow:auto}.prose table{max-width:100%;display:block;overflow:auto}.prose td,.prose th{border-bottom:1px solid var(--line);padding:10px}.prose blockquote{border-left:2px solid var(--accent);margin:24px 0;padding-left:20px}.error-content>p:not(.eyebrow){margin:22px 0 32px}@media (prefers-reduced-motion:no-preference){.hero-stage{animation:.9s cubic-bezier(.16,1,.3,1) both hero-arrive}.hero h1{animation:.9s cubic-bezier(.16,1,.3,1) 80ms both hero-arrive}.hero-description{animation:.9s cubic-bezier(.16,1,.3,1) .16s both hero-arrive}.hero-actions{animation:.9s cubic-bezier(.16,1,.3,1) .24s both hero-arrive}.hero :focus-within{animation:none}@keyframes hero-arrive{0%{transform:translateY(12px)}to{transform:translateY(0)}}}@media (width<=1180px){.header-inner{grid-template-columns:auto 1fr auto;gap:14px;padding-inline:22px}.brand .brand-name{display:none}.primary-nav{justify-self:center}.primary-nav a{padding-inline:14px}.hero-stage{gap:32px}.hero-note{max-width:180px}.about-panel{gap:36px;padding:36px}}@media (width<=900px){.header-actions{display:none}.header-inner{grid-template-columns:auto 1fr}.primary-nav a{padding-inline:12px}.hero-stage{grid-template-columns:1fr 280px 1fr;gap:24px}.hero-note strong{font-size:13px}.hero-note p{font-size:12px}.hero-note .icon-tile{width:52px;height:52px}.about-panel{grid-template-columns:1.3fr 1fr;gap:28px}.profile-areas{padding-left:24px}.profile-areas strong{font-size:22px}.skill{padding:22px}.skill h3{font-size:19px}.project-cover{height:250px}.topic-list{gap:16px}.topic-list>div{font-size:12px}}@media (width<=760px){html{scroll-padding-top:90px}.header-inner{grid-template-columns:1fr auto;min-height:72px;padding:12px 20px;position:relative}.brand{background:var(--paper);border-radius:30px;padding:2px 8px 2px 2px}.brand .brand-name{display:block}.brand svg{width:36px;height:36px}.menu-ready .menu-toggle{min-height:44px;color:var(--ink);background:#f4f3f0;border:1px solid #ffffffc7;border-radius:24px;align-items:center;gap:10px;padding:8px 16px;font-size:12px;display:flex;box-shadow:0 0 0 1px #23232312,0 6px 20px -8px #23232330,inset 0 1px #fff}.menu-toggle[hidden]{display:none!important}.menu-toggle svg{width:18px;height:18px}.primary-nav{border-radius:22px;flex-wrap:wrap;grid-column:1/-1;justify-self:stretch;gap:4px;padding:8px}.primary-nav a{flex:28%;justify-content:center;min-height:44px;font-size:12px}.menu-ready .primary-nav{display:none}.menu-ready .primary-nav.is-open{display:flex;position:absolute;top:calc(100% + 2px);left:16px;right:16px;box-shadow:0 0 0 1px #23232312,0 16px 40px -12px #23232338,inset 0 1px #fff,inset 0 -1px #2323230a}.site-main{padding:0 20px}.hero{padding:24px 0 64px}.hero-stage{grid-template-columns:1fr 1fr;gap:32px 20px;min-height:0;margin-bottom:30px}.portrait-frame{border-radius:24px;grid-area:1/1/auto/-1;justify-self:center;width:220px;height:270px}.hero-note{flex-direction:row;grid-row:2;align-items:center;gap:12px;max-width:250px}.note-left{justify-self:start}.note-right{justify-self:end}.hero-note .icon-tile{width:44px;height:44px}.hero-note .icon-tile svg{width:23px;height:23px}.hero-note strong{letter-spacing:-.2px;font-size:12px}.hero-note p{font-size:11px}.hero-note p br{display:none}.hero h1{letter-spacing:-2px;font-size:clamp(40px,8.5vw,60px)}.hero-description{letter-spacing:-.5px;max-width:570px;margin-top:20px;font-size:20px;line-height:1.5}.button{gap:12px;min-height:46px;padding:11px 22px;font-size:12px}.hero-actions{gap:10px}.about-panel{border-radius:24px;grid-template-columns:1fr;gap:28px;padding:28px}.about-copy h2{font-size:40px}.about-copy>p:not(.eyebrow){font-size:15px}.profile-areas{text-align:center;border-top:1px solid #d1d1d1;border-left:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:24px 0 0}.profile-areas>div{flex-direction:column;gap:8px;display:flex}.profile-areas svg{width:26px;height:26px;margin-bottom:4px}.profile-areas strong{font-size:20px}.profile-areas span{font-size:11px}.profile-areas br{display:block}.content-section{padding-top:70px}.section-heading{gap:14px;margin-bottom:30px}.section-heading h2{letter-spacing:-.05em;font-size:clamp(32px,7.4vw,54px)}.section-note{font-size:12px}.skills-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.skill{border-radius:20px;padding:20px}.skill summary{min-height:228px}.skill h3{font-size:18px}.skill .icon-tile{width:46px;height:46px;margin-bottom:20px}.skill summary p{font-size:12px}.projects-grid{grid-template-columns:1fr;gap:24px}.project-cover{height:270px}.project-copy{padding:24px 18px 12px}.project-copy>h3{font-size:22px}.topic-list{grid-template-columns:1fr;gap:20px}.topic-list>div{font-size:14px}.editorial-preview{padding:28px}.editorial-preview>p{font-size:18px}.articles-grid{grid-template-columns:1fr}.article-card{grid-template-columns:90px 1fr;gap:18px}.article-art{border-radius:16px;min-height:110px}.article-card h3{font-size:19px}.contact-panel{flex-direction:column;align-items:flex-start;gap:24px;margin:70px 0 36px;padding:30px}.contact-panel h2{font-size:38px}.collaborations-grid{grid-template-columns:1fr}.site-footer{flex-wrap:wrap;gap:6px 20px;padding:20px}.site-footer>span{flex-basis:100%;order:3}.site-footer>a:last-child{margin-left:auto}.reading-page{margin-top:30px}.reading-intro{font-size:20px}}@media (width<=380px){.header-inner,.site-main{padding-inline:16px}.hero-note{flex-direction:column;align-items:flex-start;max-width:140px}.hero-note .icon-tile{width:40px;height:40px}.hero h1{letter-spacing:-1.8px;font-size:37px}.hero-description{font-size:19px}.hero-actions{flex-direction:column;align-items:stretch;padding:0 12px}.about-panel{padding:22px}.profile-areas strong{font-size:17px}.skills-grid{gap:10px}.skill{padding:17px 14px}.skill h3{font-size:17px}.details-label{font-size:11px}.project-cover>span:last-child{font-size:20px}.section-heading h2{font-size:31px}.editorial-preview,.contact-panel{padding:24px}}@supports (backdrop-filter:blur(1px)){.primary-nav,.menu-ready .menu-toggle{backdrop-filter:blur(24px)saturate(.75);background:linear-gradient(135deg,#ffffffb3,#faf9f68f 55%,#e6e4df9e)}}@media (prefers-reduced-transparency:reduce){.primary-nav,.menu-ready .menu-toggle{backdrop-filter:none;background:#f4f3f0}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}.project-card:hover .project-symbol,.project-card:hover .cover-grid,.skill summary:hover .icon-tile,.portrait-frame:hover img{transform:none}.nav-label>span{transform:none!important}}@media (forced-colors:active){.primary-nav,.menu-ready .menu-toggle{backdrop-filter:none;box-shadow:none}.primary-nav,.menu-ready .menu-toggle,.button,.about-panel,.contact-panel,.icon-tile,.project-cover,.skill,.project-card,.editorial-preview{color:canvastext;background:canvas;border:1px solid canvastext}.primary-nav a[aria-current],.primary-nav .nav-contact[aria-current]{color:linktext;box-shadow:none;background:canvas;outline:2px solid highlight}.primary-nav a,.primary-nav .nav-contact,.portrait-link{color:linktext;background:canvas}.project-cover:after,.cover-grid{display:none}}.brand{gap:0;min-height:44px}.terminal-mark{white-space:nowrap;letter-spacing:0;align-items:baseline;width:22ch;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:16px;font-weight:600;line-height:1.5;display:inline-flex}.terminal-prefix{color:var(--muted);margin-right:.5ch}.terminal-name{white-space:nowrap;width:15ch;display:inline-block;overflow:hidden}.terminal-cursor{flex-shrink:0;width:1ch;display:inline-block}@media (width>=761px) and (prefers-reduced-motion:no-preference){.terminal-name{animation:1.8s steps(15,end) .2s backwards terminal-type}.terminal-cursor{animation:1.6s step-end 3 terminal-blink}@keyframes terminal-type{0%{width:0}to{width:15ch}}@keyframes terminal-blink{0%,60%,to{opacity:1}61%,99%{opacity:0}}}@media (width<=1000px) and (width>=761px){.terminal-mark{font-size:12px}.primary-nav a{padding-inline:8px;font-size:11px}}@media (width<=760px){.brand{padding:2px 4px}.terminal-mark{font-size:clamp(12px,3.25vw,16px)}}.about-panel:has(.about-more[open]){grid-template-columns:1fr;align-items:start}.about-more .prose{max-width:74ch}.about-panel:has(.about-more[open]) .profile-areas{border-left:0;border-top:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));padding:24px 0 0}.about-more .prose h3{font-size:18px;line-height:1.4}.about-more .prose h2{margin:28px 0 14px;font-size:26px;line-height:1.25}.breadcrumbs{margin-bottom:32px;font-size:13px}.breadcrumbs ol{flex-wrap:wrap;gap:8px;padding:0;list-style:none;display:flex}.breadcrumbs li+li:before{content:"/";color:var(--muted);margin-right:8px}.breadcrumbs a{align-items:center;min-height:44px;display:inline-flex}.breadcrumbs span{overflow-wrap:anywhere;align-items:center;min-height:44px;display:inline-flex}.archive-list>article{border-top:1px solid var(--line);padding:28px 0}.archive-list h2{margin-bottom:16px;font-size:clamp(24px,4vw,32px)}.archive-list p{margin-bottom:16px}.author-bio{background:var(--accent-soft);border-radius:20px;margin:40px 0;padding:28px}.author-bio h2{margin-bottom:12px;font-size:22px}.author-bio p{margin-bottom:12px;font-size:15px}.reading-page>.tags{margin-top:24px}.hero .surname-wrap{white-space:nowrap;display:inline-block;position:relative}.hero .surname-tone{color:#626262}@supports (background-clip:text){.hero .surname-tone{color:#0000;background:linear-gradient(115deg,#595959 5%,#737373 48%,#626262 72%,#595959 100%);-webkit-background-clip:text;background-clip:text}}@media (forced-colors:active){.hero .surname-tone{color:canvastext;background:0 0}}.hero .name-shine{isolation:isolate;width:fit-content;max-width:100%;margin-inline:auto;position:relative}.hero .name-glint{pointer-events:none;user-select:none;color:#0000;-webkit-text-stroke:1.25px #fff;opacity:0;filter:drop-shadow(0 0 1.5px #ffffffd9)drop-shadow(0 0 3px #ffffff73);position:absolute;inset:0;mask-image:linear-gradient(110deg,#0000 44%,#000 48% 52%,#0000 56%);mask-position:100% 0;mask-size:300% 100%;mask-repeat:no-repeat}@media (prefers-reduced-motion:no-preference){.name-shine.is-glinting .name-glint{animation:3.2s ease-in-out both name-edge-glint}@keyframes name-edge-glint{0%{opacity:0;mask-position:100% 0}12%{opacity:1}85%{opacity:1}to{opacity:0;mask-position:0 0}}}@media (prefers-reduced-motion:reduce),(forced-colors:active){.hero .name-glint{display:none}}.hero-note .icon-tile{position:relative;overflow:hidden}.hero-note .icon-tile svg{transition:transform .45s}@media (prefers-reduced-motion:no-preference){.hero-note .icon-tile svg{animation:2s ease-in-out 2 badge-float}.note-right .icon-tile svg{animation-delay:.2s}.hero-note .icon-tile:after{content:"";pointer-events:none;background:linear-gradient(110deg,#0000 40%,#ffffffa6 50%,#0000 60%);animation:2.6s ease-in-out .2s both badge-reflection;position:absolute;inset:-25%;transform:translate(-120%)}.note-right .icon-tile:after{animation-delay:.5s}@keyframes badge-float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes badge-reflection{0%{opacity:0;transform:translate(-120%)}20%,75%{opacity:.7}to{opacity:0;transform:translate(120%)}}}@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.hero-note:hover .icon-tile svg{transform:translateY(-3px)scale(1.06)}}@media (forced-colors:active){.hero-note .icon-tile:after{display:none}}
