:root{--paper:#ffffff;--paper-alt:#f4f5f6;--ink:#131417;--ink-soft:#56585f;--rule:#e3e4e7;--rule-strong:#c8cacf;--accent:#c2410c;--accent-strong:#9a3412;--on-ink:#f7f7f8;--container:66rem;--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;--font-mono:ui-monospace,"SFMono-Regular",Menlo,Consolas,"Liberation Mono",monospace}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:4.5rem}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none !important;transition:none !important}}body{font-family:var(--font-sans);background:var(--paper);color:var(--ink);line-height:1.65;-webkit-font-smoothing:antialiased}button{font-family:inherit;color:inherit}img,svg{max-width:100%}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.container{max-width:var(--container);margin-inline:auto;padding-inline:1.5rem}.accent{color:var(--accent)}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.label{font-family:var(--font-mono);font-size:0.72rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--ink-soft)}.site-header{position:sticky;top:0;z-index:10;background:rgba(255,255,255,0.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--rule)}.nav{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;min-height:4rem}.wordmark{font-size:1.05rem;font-weight:700;letter-spacing:-0.02em;color:var(--ink);text-decoration:none}.nav-links{display:flex;align-items:center;gap:2rem;list-style:none}.nav-links a{font-family:var(--font-mono);font-size:0.72rem;letter-spacing:0.12em;text-transform:uppercase;color:var(--ink-soft);text-decoration:none;transition:color 0.15s ease}.nav-links a:hover,.nav-links a:focus-visible{color:var(--ink)}.nav-links a.nav-cta{color:var(--accent)}.nav-links a.nav-cta:hover,.nav-links a.nav-cta:focus-visible{color:var(--accent-strong)}.nav-toggle{display:none;flex-direction:column;gap:4px;background:none;border:0;padding:0.5rem 0;cursor:pointer}.nav-toggle-bar{display:block;width:22px;height:1.5px;background:var(--ink)}@media (max-width:44rem){.no-js .nav-links{flex-wrap:wrap;gap:1.25rem;padding-bottom:0.9rem}.js .nav-toggle{display:flex}.js .nav-links{display:none;flex-direction:column;align-items:flex-start;width:100%;gap:0;padding-bottom:0.75rem}.js .nav-open .nav-links{display:flex}.js .nav-links a{display:block;width:100%;padding:0.7rem 0;border-top:1px solid var(--rule);font-size:0.8rem}}.hero{padding:7rem 0 5.5rem}.hero .label{display:block;margin-bottom:1.75rem}.hero .label::before{content:"";display:inline-block;width:1.75rem;height:2px;background:var(--accent);vertical-align:0.28em;margin-right:0.75rem}.hero h1{font-size:clamp(2.3rem,6vw,3.9rem);font-weight:700;letter-spacing:-0.035em;line-height:1.05;max-width:18ch}.lede{margin-top:1.75rem;max-width:52ch;font-size:1.08rem;color:var(--ink-soft)}.hero-actions{margin-top:2.5rem;display:flex;gap:0.75rem;flex-wrap:wrap}.btn{display:inline-block;padding:0.7rem 1.4rem;border:1px solid transparent;border-radius:3px;font-size:0.92rem;font-weight:600;text-decoration:none;transition:background 0.15s ease,color 0.15s ease,border-color 0.15s ease}.btn-primary{background:var(--accent);border-color:var(--accent);color:#ffffff}.btn-primary:hover,.btn-primary:focus-visible{background:var(--accent-strong);border-color:var(--accent-strong)}.btn-ghost{border-color:var(--rule-strong);color:var(--ink)}.btn-ghost:hover,.btn-ghost:focus-visible{border-color:var(--ink);background:var(--paper-alt)}.tech-strip{background:var(--paper-alt);border-block:1px solid var(--rule);padding:1.4rem 0}.tech-strip .container{display:flex;flex-wrap:wrap;align-items:baseline;gap:0.5rem 1.5rem}.tech-strip .label{color:var(--accent);white-space:nowrap}.tech-list{list-style:none;display:flex;flex-wrap:wrap;gap:0.4rem 1.1rem;font-family:var(--font-mono);font-size:0.8rem;color:var(--ink-soft)}.tech-list li + li::before{content:"·";color:var(--rule-strong);margin-right:1.1rem}.section{padding:5.5rem 0;border-bottom:1px solid var(--rule)}.section-head{margin-bottom:3rem;max-width:46ch}.section-head h2{font-size:clamp(1.6rem,3vw,2.1rem);font-weight:700;letter-spacing:-0.025em;line-height:1.2}.section-head h2::before{content:"";display:block;width:2.25rem;height:3px;background:var(--accent);margin-bottom:1.5rem}.section-intro{margin-top:0.75rem;color:var(--ink-soft)}.pillars{display:grid;grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:2.5rem 2rem}.pillar{border-top:1px solid var(--ink);padding-top:1.1rem}.pillar h3{font-size:1rem;font-weight:700;letter-spacing:-0.01em;margin-bottom:0.5rem}.pillar p{font-size:0.92rem;color:var(--ink-soft)}.record-list{border-top:1px solid var(--rule)}.record{display:grid;grid-template-columns:minmax(0,15rem) minmax(0,1fr);gap:0.5rem 2.5rem;padding:1.75rem 0;border-bottom:1px solid var(--rule)}.record h3{font-size:1.05rem;font-weight:700;letter-spacing:-0.015em;line-height:1.35}.record h3 a{color:var(--ink);text-decoration:none;border-bottom:2px solid var(--accent);transition:color 0.15s ease}.record h3 a:hover,.record h3 a:focus-visible{color:var(--accent)}.record-body{max-width:58ch}.record-body p{color:var(--ink-soft)}.record-body h3 + p{margin-top:0.6rem}.record-detail{padding:2.5rem 0}.record-detail h3{font-size:1.25rem}.record-detail .label{padding-top:0.2rem}.tags{list-style:none;display:flex;flex-wrap:wrap;gap:0.5rem;margin-top:1.25rem}.tags li{font-family:var(--font-mono);font-size:0.72rem;color:var(--ink-soft);border:1px solid var(--rule);border-radius:3px;padding:0.15rem 0.55rem}.tags .tag-ai{color:var(--accent);border-color:var(--accent)}#contact{background:var(--ink);color:var(--on-ink);border-bottom:0}#contact .container{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:2rem}#contact h2{font-size:clamp(1.6rem,3vw,2.1rem);font-weight:700;letter-spacing:-0.025em}#contact .section-intro{color:#a8aab1;max-width:40ch}#contact .btn-ghost{color:var(--on-ink);border-color:#45474f}#contact .btn-ghost:hover,#contact .btn-ghost:focus-visible{background:transparent;border-color:var(--on-ink)}#contact:focus-visible{outline-color:var(--on-ink)}.site-footer{background:var(--ink);color:#7c7e86;font-family:var(--font-mono);font-size:0.72rem;letter-spacing:0.08em;padding-bottom:2.5rem}.site-footer .container{border-top:1px solid #2b2d34;padding-top:2rem}@media (max-width:48rem){.hero{padding:4.5rem 0 3.5rem}.section{padding:4rem 0}.section-head{margin-bottom:2.25rem}.record{grid-template-columns:1fr;gap:0.6rem}.record-detail{padding:2rem 0}}