:root{--bg:#101d2c;--paper:#dce7f2;--ink:#e8f1f8;--muted:#aabdcf;--line:#466078;--accent:#f2bf70;--panel:#15283a;--focus:#dfeaf3;--shadow:#08121c;color-scheme:dark}html[data-theme="light"]{--bg:#dbe9f6;--paper:#f5f9fc;--ink:#142536;--muted:#557086;--line:#aac0d2;--accent:#b65431;--panel:#e8f1f8;--focus:#142536;--shadow:#b6c7d6;color-scheme:light}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:72px}body{margin:0;background:var(--bg);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.55;letter-spacing:-.012em}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:5px}button{font:inherit;color:inherit;cursor:pointer}button,a{touch-action:manipulation;-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px}.shell{width:min(1180px,calc(100% - 72px));margin-inline:auto}.skip{position:fixed;top:-100px;left:16px;background:var(--paper);color:var(--focus);padding:12px;z-index:10}.skip:focus{top:16px}.site-header{height:72px;display:flex;align-items:center;border-bottom:1px solid var(--line)}.wordmark{font-size:18px;font-weight:800;letter-spacing:-1px}.wordmark span{color:var(--accent)}nav{margin-left:auto;display:flex;gap:28px;font-size:13px}nav a{padding:12px 0}.theme{margin-left:26px;border:1px solid var(--line);background:transparent;border-radius:50%;width:39px;height:39px;font-size:20px}.theme:hover{background:var(--panel)}.intro{padding:78px 0 50px}.kicker,.timeline-type,.fact-label,.work-item small,footer,.section-label span{font-size:10px;font-weight:700;letter-spacing:1.25px;text-transform:uppercase}.kicker{color:var(--muted);margin:0 0 23px}.kicker span{color:var(--accent);margin-inline:9px}h1,h2,h3,p{margin-top:0}h1{max-width:1100px;margin-bottom:50px;font-size:clamp(54px,8.25vw,120px);font-weight:500;line-height:.91;letter-spacing:-.078em}h1 em{color:var(--accent);font-style:normal}.intro-floor{display:grid;grid-template-columns:370px 1fr;align-items:end;gap:80px}.intro-floor>p{color:var(--muted);font-size:17px;line-height:1.55;margin:0}.intro-floor strong{color:var(--ink);font-weight:600}.intro-links{display:flex;justify-content:flex-end;gap:34px;font-size:14px}.intro-links a,.inline-link,.contact-links a{border-bottom:1px solid var(--line);padding-bottom:4px}.intro-links span,.inline-link span{color:var(--accent);margin-left:8px}.now,.experience,.work,.about,.contact{padding:90px 0;border-top:1px solid var(--line)}.section-label{display:flex;align-items:baseline;gap:18px;margin-bottom:32px}.section-label span{color:var(--accent)}.section-label h2{font-size:clamp(35px,4vw,56px);font-weight:500;line-height:1;letter-spacing:-.06em;margin:0}.now-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:80px}.now-statement p{font-size:clamp(25px,3.1vw,42px);line-height:1.08;letter-spacing:-.052em;max-width:600px;margin:0}.now-facts{border-top:1px solid var(--line)}.now-facts>div{display:grid;grid-template-columns:130px 1fr;align-items:baseline;gap:8px;padding:15px 0;border-bottom:1px solid var(--line)}.fact-label{grid-row:span 2;color:var(--muted)}.now-facts strong{font-size:18px;font-weight:600}.now-facts small{grid-column:2;color:var(--muted);font-size:13px}.section-lede{font-size:18px;color:var(--muted);max-width:540px;margin:-8px 0 42px}.timeline{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}.timeline-item{display:grid;grid-template-columns:160px 1fr;gap:36px;padding:27px 0 31px;border-bottom:1px solid var(--line)}.timeline-date{font-size:13px;color:var(--muted);padding-top:7px}.timeline-date span{font-size:11px}.timeline-item article{max-width:780px}.timeline-type{color:var(--accent);margin-bottom:7px}.timeline h3{font-size:clamp(25px,2.8vw,37px);font-weight:500;line-height:1.05;letter-spacing:-.045em;margin-bottom:13px}.timeline h3 span{color:var(--muted);font-weight:400}.timeline article>p:not(.timeline-type){color:var(--muted);font-size:16px;max-width:680px;margin-bottom:17px}.timeline-item.active h3{color:var(--accent)}.tool-line{display:flex;list-style:none;gap:8px;flex-wrap:wrap;padding:0;margin:0}.tool-line li{border:1px solid var(--line);font-size:10px;letter-spacing:.6px;padding:4px 8px}.work-list{border-top:1px solid var(--line)}.work-item{border-bottom:1px solid var(--line)}.work-item summary{display:grid;grid-template-columns:60px 1fr 40px;align-items:center;gap:16px;padding:26px 0;cursor:pointer;list-style:none}.work-item summary::-webkit-details-marker{display:none}.work-index{color:var(--accent);font-size:12px}.work-item summary strong{display:block;font-size:clamp(21px,2.5vw,34px);font-weight:500;line-height:1.1;letter-spacing:-.04em}.work-item summary small{color:var(--muted);display:block;margin-top:7px}.summary-state{font-size:28px;color:var(--accent);justify-self:end;transition:transform .2s ease}.work-item[open] .summary-state{transform:rotate(45deg)}.work-detail{display:grid;grid-template-columns:1.15fr .55fr;column-gap:70px;row-gap:24px;padding:0 40px 33px 76px}.work-detail>div p{color:var(--muted);font-size:16px;max-width:650px}.work-detail .work-claim{font-size:22px;line-height:1.25;letter-spacing:-.03em;color:var(--ink);margin-bottom:13px}.work-proof{border-left:1px solid var(--accent);padding-left:18px;height:max-content}.work-proof strong{display:block;font-size:clamp(32px,4vw,54px);font-weight:500;line-height:1;letter-spacing:-.07em;color:var(--accent)}.work-proof span{display:block;margin-top:9px;color:var(--muted);font-size:13px;line-height:1.4}.work-proof small{display:block;margin-top:12px;color:var(--muted);font-size:10px;line-height:1.4}.work-proof.text-proof strong{font-size:21px;letter-spacing:-.035em;line-height:1.15}.work-detail>.tool-line{grid-column:1/-1}.repo-links{display:flex;gap:17px;flex-wrap:wrap}.repo-links a{font-size:13px;border-bottom:1px solid var(--line)}.confidential{margin:22px 0 0;color:var(--muted);font-size:12px}.about-grid{display:grid;grid-template-columns:1.1fr .75fr;gap:100px}.about-main{font-size:clamp(26px,3.15vw,42px);line-height:1.08;letter-spacing:-.05em;margin:0}.about-side{padding-top:6px}.about-side p{color:var(--muted);font-size:16px}.about-side p:last-child{margin-top:30px}.contact{padding-bottom:70px}.contact h2{font-size:clamp(53px,7vw,100px);font-weight:500;line-height:.91;letter-spacing:-.075em;margin:0 0 42px}.contact-row{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.contact-email{font-size:clamp(18px,2.55vw,31px);letter-spacing:-.04em;border-bottom:1px solid var(--line);padding-bottom:6px}.contact-email span{color:var(--accent)}.contact button{background:transparent;border:1px solid var(--line);padding:11px 15px;font-size:11px}.contact button:hover{background:var(--panel)}#copy-status{height:24px;margin:10px 0 8px;font-size:12px;color:var(--muted)}.contact-links{display:flex;gap:24px;font-size:13px}footer{display:flex;gap:24px;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding:22px 0;color:var(--muted)}footer a{margin-left:auto}@media(max-width:760px){.shell{width:min(100% - 40px,600px)}.site-header{height:63px}.wordmark{font-size:16px}nav{gap:14px;font-size:11px}nav a:nth-child(3){display:none}.theme{margin-left:14px;width:34px;height:34px}.intro{padding:54px 0 42px}h1{font-size:clamp(49px,13.1vw,79px);line-height:.93;margin-bottom:38px}.intro-floor{display:block}.intro-floor>p{font-size:16px}.intro-links{justify-content:flex-start;margin-top:28px;gap:21px;font-size:13px}.now,.experience,.work,.about,.contact{padding:58px 0}.section-label{margin-bottom:25px}.now-grid,.about-grid{grid-template-columns:1fr;gap:34px}.now-statement p{font-size:31px}.now-facts>div{grid-template-columns:112px 1fr}.section-lede{font-size:16px;margin-bottom:28px}.timeline-item{grid-template-columns:1fr;gap:8px;padding:23px 0}.timeline-date{padding-top:0}.timeline h3{font-size:29px}.timeline article>p:not(.timeline-type){font-size:15px}.work-item summary{grid-template-columns:35px 1fr 25px;gap:9px;padding:21px 0}.work-item summary strong{font-size:25px}.work-item summary small{font-size:8.5px;letter-spacing:.9px}.work-detail{grid-template-columns:1fr;gap:22px;padding:0 0 29px 44px}.work-detail .work-claim{font-size:20px}.work-detail>div p{font-size:15px}.work-proof{max-width:290px}.about-main{font-size:31px}.about-side p{font-size:15px}.contact h2{font-size:57px}.contact-email{font-size:18px;overflow-wrap:anywhere}footer{flex-wrap:wrap;gap:10px;font-size:9px}footer a{margin-left:0;order:2;width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.summary-state{transition:none}}/* Typography and interaction refinements: original, text-first editorial controls. */
:root{--sans:"Manrope",Arial,Helvetica,sans-serif;--mono:"IBM Plex Mono","Courier New",monospace;--ink:#f2f6fa;--muted:#b5c5d5;--line:#526d85;--accent:#f7c771}
html[data-theme="light"]{--ink:#18283a;--muted:#557088;--line:#a9bfd1;--accent:#a9472e}
body{font-family:var(--sans);font-size:16px;line-height:1.6;letter-spacing:-.018em}
.kicker,.timeline-type,.fact-label,.work-item small,footer,.section-label span{font-family:var(--mono);font-size:9px;font-weight:500;letter-spacing:1.18px}
.wordmark{font-family:var(--mono);font-size:16px;letter-spacing:-1.4px}.site-header nav{font-family:var(--mono);font-size:11px;letter-spacing:-.02em}.site-header nav a{position:relative}.site-header nav a::after{content:"";position:absolute;right:0;bottom:7px;left:0;height:1px;background:var(--accent);transform:scaleX(0);transform-origin:right;transition:transform .2s ease}.site-header nav a:hover{text-decoration:none}.site-header nav a:hover::after{transform:scaleX(1);transform-origin:left}
h1{max-width:1050px;font-size:clamp(52px,7.35vw,106px);font-weight:700;line-height:.94;letter-spacing:-.074em}h1 em{font-weight:600}h2{font-weight:700}.section-label h2{font-size:clamp(34px,3.7vw,51px);letter-spacing:-.06em}.intro-floor>p,.section-lede,.timeline article>p:not(.timeline-type),.work-detail>div p,.about-side p{color:var(--muted)}.intro-floor>p{font-size:16px;line-height:1.65}.now-statement p,.about-main{font-weight:600;line-height:1.12}.now-statement p{font-size:clamp(24px,2.8vw,37px)}.timeline h3{font-weight:600;letter-spacing:-.05em}.work-item summary strong{font-weight:600}.work-detail .work-claim{font-size:21px;font-weight:600;line-height:1.28}.contact h2{font-weight:700;line-height:.94}.tool-line li{font-family:var(--mono);font-size:9px;letter-spacing:.15px}.action-link,.inline-link{position:relative;display:inline-flex;align-items:center;gap:8px;border:0!important;padding:6px 0!important;text-decoration:none!important}.action-link::after,.inline-link::after{content:"";position:absolute;bottom:1px;left:0;width:100%;height:1px;background:currentColor;opacity:.52;transition:transform .2s ease,opacity .2s ease}.action-link:hover::after,.inline-link:hover::after{transform:translateY(3px);opacity:1}.action-link span,.inline-link span{display:inline-block;color:var(--accent);transition:transform .2s ease}.action-link:hover span,.inline-link:hover span{transform:translate(3px,-2px)}.intro-links{gap:27px}.contact-links{gap:24px}.contact-email{font-weight:600;letter-spacing:-.045em;border-bottom:1px solid var(--line);transition:color .2s ease,border-color .2s ease}.contact-email:hover{color:var(--accent);border-color:var(--accent);text-decoration:none}.copy-button{display:inline-flex;align-items:center;gap:18px;border:1px solid var(--ink)!important;background:var(--ink)!important;color:var(--bg)!important;padding:11px 14px!important;font-family:var(--mono)!important;font-size:10px!important;letter-spacing:.15px;transition:background .2s ease,color .2s ease,transform .2s ease}.copy-button:hover{background:var(--accent)!important;border-color:var(--accent)!important;color:var(--bg)!important;transform:translateY(-2px)}.copy-button span{font-size:14px;transition:transform .2s ease}.copy-button:hover span{transform:translateX(3px)}.theme{font-family:var(--mono);border-radius:2px;width:38px;height:32px;font-size:17px;transition:background .2s ease,color .2s ease}.theme:hover{background:var(--ink);color:var(--bg)}
@media(max-width:760px){h1{font-size:clamp(47px,12.35vw,69px);line-height:.96}.section-label h2{font-size:34px}.now-statement p,.about-main{font-size:29px}.timeline h3{font-size:27px}.site-header nav{font-size:10px}.intro-floor>p{font-size:15px}.copy-button{padding:10px 12px!important}.contact-links{gap:20px}}
@media(prefers-reduced-motion:reduce){.site-header nav a::after,.action-link::after,.inline-link::after,.action-link span,.inline-link span,.copy-button,.copy-button span,.theme{transition:none}}
/* Make section numbers an intentional navigation cue rather than microcopy. */
.section-label>span{font-size:13px;font-weight:600;letter-spacing:.55px;min-width:20px}.about-main{font-size:clamp(20px,2.1vw,29px);font-weight:400;line-height:1.36;letter-spacing:-.035em;max-width:670px}@media(max-width:760px){.section-label>span{font-size:12px}.about-main{font-size:22px;line-height:1.38}}
@media print{body{background:#fff;color:#111}.site-header,.theme,.contact button{display:none}.shell{width:100%}.intro,.now,.experience,.work,.about,.contact{padding:25px 0}.work-item:not([open]) .work-detail{display:none}.work-item{break-inside:avoid}.contact{padding-bottom:25px}}
