@layer reset{*,:before,:after{box-sizing:border-box}body,h1,h2,h3,p,ul{margin:0}button{font:inherit}svg{display:block}[hidden]{display:none!important}}@layer base{:root{color-scheme:light;--bg:#f8f7f3;--surface:#f0efe9;--card:#fcfbf8;--fg:#242b28;--muted:#626961;--border:#dcded4;--accent:#315e4c;--accent-soft:#e6ebe3;--on-accent:#fff;--serif:"Iowan Old Style", "Palatino Linotype", "Book Antiqua", Palatino, Georgia, serif;--sans:-apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mono:"Cascadia Code", "SFMono-Regular", Consolas, monospace}:root[data-theme=dark]{color-scheme:dark;--bg:#171c19;--surface:#202722;--card:#1c231e;--fg:#eeeee5;--muted:#adb5aa;--border:#38423a;--accent:#b2c9a5;--accent-soft:#2a352c;--on-accent:#19241a}@media (prefers-color-scheme:dark){:root:not([data-theme]){color-scheme:dark;--bg:#171c19;--surface:#202722;--card:#1c231e;--fg:#eeeee5;--muted:#adb5aa;--border:#38423a;--accent:#b2c9a5;--accent-soft:#2a352c;--on-accent:#19241a}}html{background:var(--bg);scroll-padding-top:2rem}body{color:var(--fg);font-family:var(--sans);-webkit-font-smoothing:antialiased;flex-direction:column;min-height:100svh;font-size:1rem;line-height:1.7;display:flex}main{flex:1}a{color:inherit;text-underline-offset:.24em;text-decoration-thickness:1px}a:hover{color:var(--accent)}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,main:focus-visible{outline:2px solid var(--accent);outline-offset:5px}::selection{background:var(--accent);color:var(--on-accent)}h1,h2,h3{font-weight:400;line-height:1.15}p{text-wrap:pretty}button{color:inherit}}@layer layout{.container{width:min(1120px,100% - 96px);margin-inline:auto}.site-header{border-bottom:1px solid var(--border)}.header-inner{align-items:center;gap:2.5rem;min-height:106px;display:flex}.brand{white-space:nowrap;align-items:center;gap:1rem;text-decoration:none;display:flex}.avatar-frame{aspect-ratio:1;border:1px solid var(--border);background:var(--surface);border-radius:50%;flex-shrink:0;width:44px;height:44px;display:block;overflow:hidden}.brand-avatar{object-fit:cover;border-radius:50%;width:100%;height:100%;display:block}.brand-name{letter-spacing:-.01em;font-size:.92rem;font-weight:500}.main-nav{align-items:center;gap:2rem;margin-left:auto;display:flex}.nav-link{color:var(--muted);padding-block:.6rem;font-size:.88rem;text-decoration:none;position:relative}.nav-link[aria-current]{color:var(--fg)}.nav-link[aria-current]:after{content:"";background:var(--accent);border-radius:50%;width:4px;height:4px;position:absolute;bottom:0;left:calc(50% - 2px)}.header-tools{align-items:center;gap:1rem;min-height:44px;display:flex}.site-footer{border-top:1px solid var(--border);margin-top:5rem}.footer-inner{justify-content:space-between;align-items:center;gap:2rem;padding-block:2rem;display:flex}.footer-copy{font-size:.78rem}.footer-copy span{color:var(--muted);margin-left:1.4rem}.footer-links{color:var(--muted);gap:1.6rem;font-size:.78rem;display:flex}.footer-links a{color:var(--fg);text-decoration:none}.hero{grid-template-columns:1fr 250px;align-items:end;gap:4rem;padding-top:5.5rem;padding-bottom:5rem;display:grid}.hero-aside{border-left:1px solid var(--border);padding-left:1.8rem;margin-bottom:.4rem;padding-block:.3rem}.section{border-top:1px solid var(--border);padding-block:3rem}.section-heading{justify-content:space-between;align-items:end;gap:2rem;margin-bottom:2rem;display:flex}.section-intro{max-width:37rem;color:var(--muted);margin-top:.7rem;font-size:.94rem}.project-grid{grid-template-columns:1fr 1fr;gap:1.5rem;display:grid}.page-header{max-width:850px;padding-top:4.5rem;padding-bottom:3.5rem}.page-lead{max-width:690px;color:var(--muted);margin-top:1.5rem;font-size:1.12rem;line-height:1.85}.about-grid{grid-template-columns:1fr 1.25fr;gap:5rem;display:grid}.contact-grid{grid-template-columns:1fr 1.2fr;gap:1.5rem;display:grid}.project-detail-grid{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);align-items:start;gap:5rem;display:grid}}@layer components{.skip-link{z-index:2;background:var(--accent);color:var(--on-accent);padding:.7rem 1rem;position:absolute;top:.75rem;left:.75rem;transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}.theme-toggle{border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:50%;place-items:center;width:44px;height:44px;display:grid}.theme-toggle:hover{background:var(--surface);border-color:var(--muted)}.theme-icon-light{display:none}[data-theme=dark] .theme-icon-light{display:block}[data-theme=dark] .theme-icon-dark{display:none}.language-switcher{white-space:nowrap;align-items:center;gap:.2rem;font-size:.7rem;display:inline-flex}.language-switcher a{min-width:26px;min-height:32px;color:var(--muted);justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.language-switcher a[aria-current]{color:var(--accent);text-underline-offset:.4em;text-decoration:underline}.language-switcher>span{color:var(--border)}.language-choice{flex-wrap:wrap;gap:1rem;margin-top:2rem;display:flex}.eyebrow,.hero-aside-label,.contact-label{color:var(--muted);font-family:var(--mono);text-transform:uppercase;letter-spacing:.13em;font-size:.68rem;font-weight:400;display:block}.eyebrow{margin-bottom:1.5rem}.hero-title{font-family:var(--serif);letter-spacing:-.045em;font-size:clamp(3.5rem,6.2vw,5.6rem);line-height:1.05}.hero-title em{color:var(--accent);font-weight:400;display:block}.hero-description{color:var(--muted);max-width:35rem;margin-top:1.8rem;font-size:1.05rem;line-height:1.9}.hero-aside-text{font-family:var(--serif);max-width:12rem;margin-top:1rem;font-size:1.5rem;line-height:1.4}.hero-aside-detail{color:var(--muted);margin-top:1rem;font-size:.8rem}.hero-meta{font-family:var(--mono);margin-top:1.2rem;font-size:.7rem;text-decoration:none;display:inline-block}.actions{flex-wrap:wrap;align-items:center;gap:1.2rem;margin-top:2rem;display:flex}.button{border:1px solid var(--border);border-radius:3px;justify-content:center;align-items:center;gap:1.2rem;min-height:48px;padding:.7rem 1.15rem;font-size:.82rem;font-weight:500;text-decoration:none;display:inline-flex}.button-primary{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.button-primary:hover{color:var(--on-accent);filter:brightness(1.08)}.button-secondary{border-color:#0000;padding-inline:.25rem}.button-secondary:hover{text-decoration:underline}.section-title{font-family:var(--serif);letter-spacing:-.025em;font-size:2.2rem}.section-heading .eyebrow{margin-bottom:.7rem}.text-link{align-items:center;gap:.6rem;font-size:.8rem;text-decoration:none;display:inline-flex}.text-link:hover{text-decoration:underline}.project-card{background:var(--card);border:1px solid var(--border);border-radius:4px;flex-direction:column;padding:1.8rem;display:flex}.project-topline{color:var(--muted);align-items:center;gap:1rem;margin-bottom:2.6rem;display:flex}.project-number{font-family:var(--mono);font-size:.7rem}.project-category{font-size:.7rem}.project-symbol{color:var(--accent);margin-left:auto;font-size:1.3rem;line-height:1}.project-name{font-family:var(--serif);letter-spacing:-.03em;font-size:2rem}.project-name a{text-decoration:none}.project-summary{color:var(--muted);max-width:28rem;margin-top:1rem;font-size:.95rem;line-height:1.8}.project-availability{color:var(--muted);margin-top:1rem;font-size:.85rem}.project-tags{flex-wrap:wrap;gap:.45rem;margin-top:1.5rem;padding:0;list-style:none;display:flex}.tag{font-family:var(--mono);background:var(--surface);color:var(--muted);border-radius:2px;padding:.25rem .55rem;font-size:.7rem}.project-links{flex-wrap:wrap;gap:.8rem 1.4rem;margin-top:auto;padding-top:1.8rem;display:flex}.page-title{font-family:var(--serif);letter-spacing:-.04em;font-size:clamp(2.8rem,5vw,4.3rem);line-height:1.12}.project-card-development{grid-column:1/-1}.project-card-development .project-topline{margin-bottom:1.3rem}.project-card-development .project-summary{max-width:52rem}.status-badge{color:var(--accent);background:var(--accent-soft);border-radius:3px;align-self:start;align-items:center;gap:.5rem;width:fit-content;padding:.3rem .65rem;font-size:.72rem;display:inline-flex}.status-badge:before{content:"";background:currentColor;border-radius:50%;width:5px;height:5px}.project-card .status-badge{margin-bottom:1rem}.project-back{color:var(--muted);align-items:center;gap:.6rem;margin-bottom:2rem;font-size:.8rem;text-decoration:none;display:inline-flex}.project-page-header .eyebrow{margin-bottom:1rem}.project-status{flex-wrap:wrap;align-items:center;gap:1rem;margin-top:1.5rem;display:flex}.project-status p{color:var(--muted);font-size:.88rem}.project-detail-grid h2{font-family:var(--serif);letter-spacing:-.02em;margin-bottom:1.2rem;font-size:1.9rem}.project-detail-copy p,.project-detail-copy li{color:var(--muted);font-size:.96rem}.project-detail-copy p+p{margin-top:1rem}.project-detail-copy section+section{margin-top:2.5rem}.project-feature-list{padding-left:1.15rem}.project-feature-list li{padding-left:.3rem}.project-feature-list li+li{margin-top:.9rem}.project-feature-list li::marker{color:var(--accent)}.project-state{border:1px solid var(--border);background:var(--card);border-radius:4px;padding:1.8rem}.project-state h2{font-size:1.6rem}.project-state p{color:var(--muted);font-size:.88rem}.project-state section+section{border-top:1px solid var(--border);margin-top:1.8rem;padding-top:1.8rem}.project-resources{margin-top:3rem}.project-resources .actions{margin-top:1.25rem}.prose h2{font-family:var(--serif);letter-spacing:-.02em;margin-bottom:1.25rem;font-size:2rem}.prose p{color:var(--muted);margin-bottom:1.5rem;font-size:.96rem}.principle{border-top:1px solid var(--border);padding-block:1.5rem;padding-left:3rem;position:relative}.principle-number{font-family:var(--mono);color:var(--accent);font-size:.7rem;position:absolute;top:1.5rem;left:0}.principle h3{margin-bottom:.65rem;font-size:1rem;font-weight:500}.principle p{margin-bottom:0;font-size:.88rem}.contact-card{border:1px solid var(--border);background:var(--card);border-radius:4px;padding:2rem}.contact-card h2{font-family:var(--serif);letter-spacing:-.02em;margin-top:1.4rem;font-size:1.8rem}.contact-card p{color:var(--muted);margin-top:1rem;font-size:.93rem}.contact-card .text-link{margin-top:1.2rem}.contact-email{font-family:var(--mono);overflow-wrap:anywhere;margin-top:1.5rem;font-size:clamp(.85rem,1.7vw,1.05rem);display:inline-block}.contact-projects{margin-top:3rem}.contact-projects .eyebrow{margin-bottom:.8rem}.contact-project-links{flex-wrap:wrap;gap:1rem 2rem;margin-top:1.5rem;display:flex}.note{color:var(--muted);max-width:45rem;margin-top:1.8rem;font-size:.8rem}.closing{justify-content:space-between;align-items:center;gap:2rem;display:flex}.closing p{color:var(--muted);max-width:37rem;margin-top:.7rem;font-size:.9rem}@media (prefers-reduced-motion:no-preference){.button,.theme-toggle{transition:background-color .14s,border-color .14s}}}@layer responsive{@media (width>=1600px){.hero{padding-top:7rem;padding-bottom:6rem}}@media (width<=900px){.container{width:calc(100% - 64px)}.header-inner{gap:1.4rem}.main-nav{gap:1.3rem}.hero{grid-template-columns:1fr 190px;gap:2.5rem}.hero-title{font-size:4rem}.about-grid{grid-template-columns:1fr 1fr;gap:2.5rem}.project-detail-grid{gap:2.5rem}.footer-copy span{margin-top:.25rem;margin-left:0;display:block}}@media (width<=680px){.container{width:calc(100% - 40px)}.header-inner{grid-template-columns:1fr auto;gap:0;min-height:auto;padding-top:1rem;display:grid}.brand{gap:.8rem}.avatar-frame{width:40px;height:40px}.brand-name{font-size:.85rem}.header-tools{grid-area:1/2;gap:.6rem}.main-nav{grid-area:2/1/auto/-1;justify-content:space-between;gap:.5rem;margin:.7rem 0 0}.nav-link{justify-content:center;align-items:center;min-height:48px;padding-inline:.25rem;font-size:.82rem;display:flex}.nav-link[aria-current]:after{bottom:.35rem}.hero{grid-template-columns:1fr;gap:2.5rem;padding-top:3rem;padding-bottom:3rem}.hero-title{font-size:clamp(2.8rem,11.5vw,4.4rem)}.hero-description{margin-top:1.4rem;font-size:.98rem}.hero-aside{max-width:29rem;padding-left:1.2rem}.hero-aside-text{max-width:none;margin-top:.5rem;font-size:1.3rem}.hero-aside-detail{margin-top:.5rem}.hero-meta{margin-top:.7rem}.eyebrow{margin-bottom:1.25rem;font-size:.62rem}.actions{gap:.9rem;margin-top:1.5rem}.button{font-size:.78rem}.section{padding-block:2.3rem}.section-heading{flex-wrap:wrap;gap:1rem}.section-title{font-size:1.9rem}.project-grid,.about-grid,.contact-grid,.project-detail-grid{grid-template-columns:1fr}.project-card{padding:1.5rem}.project-topline{margin-bottom:2rem}.project-name{font-size:1.85rem}.page-header{padding-top:3rem;padding-bottom:2.5rem}.page-title{font-size:clamp(2.5rem,9vw,3.6rem)}.page-lead{font-size:1rem}.about-grid{gap:3rem}.contact-card{padding:1.5rem}.closing{flex-direction:column;align-items:start;gap:1.25rem}.site-footer{margin-top:3rem}.footer-inner{flex-wrap:wrap;gap:1.2rem;padding-block:1.5rem}}}
