:root,[data-theme=dark]{color-scheme:dark;--bg: #0c0d10;--surface: #15171c;--surface-2: #1c1f26;--border: #262a32;--text: #edeef0;--muted: #9aa0aa;--accent: #7a5af5;--accent-hover: #8e74ff;--accent-soft: #1c1f26;--warn: #e0a458;--warn-surface: #241b10;--warn-border: #4a3a1e;--theme-dark: #0c0d10;--on-dark: #edeef0}[data-theme=light]{color-scheme:light;--bg: #fbfbfc;--surface: #ffffff;--surface-2: #f4f5f7;--border: #e6e8ec;--text: #0f1115;--muted: #61656e;--accent: #6d4aff;--accent-hover: #5b37f0;--accent-soft: #f1edff;--warn: #b4600a;--warn-surface: #fbf3e7;--warn-border: #e7c48f}:root{--font: "Geist", system-ui, -apple-system, sans-serif;--font-mono: "Geist Mono", ui-monospace, "SF Mono", monospace;--radius: 10px;--container: 1080px;--gutter: clamp(1.25rem, 4vw, 2rem)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg);transition:background-color .2s ease,color .2s ease}body{margin:0;min-height:100svh;display:flex;flex-direction:column;background:var(--bg);color:var(--text);font-family:var(--font);font-size:1rem;line-height:1.6;-webkit-font-smoothing:antialiased;transition:background-color .2s ease,color .2s ease}h1,h2,h3{font-family:var(--font);font-weight:600;letter-spacing:-.03em;line-height:1.15;margin:0}p{margin:0}ul{margin:0;padding:0;list-style:none}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-hover)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.skip{position:absolute;left:-999px}.skip:focus{left:1rem;top:1rem;z-index:80;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);padding:.45rem .7rem}.wrap{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter)}.site-header{position:sticky;top:0;z-index:50;background:var(--bg);border-bottom:1px solid var(--border);transition:background-color .2s ease,border-color .2s ease}.site-header__bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem 1.25rem;min-height:4rem;padding-block:.75rem}.wordmark{font-weight:600;font-size:1.05rem;color:var(--text);letter-spacing:-.03em}.wordmark:hover{color:var(--text)}.wordmark .dot{color:var(--accent)}.site-header__end{display:flex;align-items:center;gap:1.25rem}.site-header nav{display:flex;align-items:center;gap:1.1rem}.site-header nav a{color:var(--muted);font-size:.9375rem;font-weight:500}.site-header nav a:hover,.site-header nav a[aria-current=page]{color:var(--accent)}.theme-toggle{width:2.25rem;height:2.25rem;display:inline-flex;align-items:center;justify-content:center;padding:0;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);cursor:pointer;transition:background-color .2s ease,border-color .2s ease,color .2s ease}.theme-toggle:hover{background:var(--surface-2)}.theme-toggle .icon-sun,[data-theme=light] .theme-toggle .icon-moon{display:none}[data-theme=light] .theme-toggle .icon-sun{display:block}main{flex:1}.hero{padding-block:clamp(2.75rem,7vw,5rem) 2.5rem}.hero__grid{display:grid;gap:1.5rem 2.75rem;align-items:center}.hero__copy{animation:fade-rise .55s ease-out backwards}.hero__photo{display:block;width:8.75rem;aspect-ratio:4 / 5;height:auto;object-fit:cover;object-position:center 18%;border-radius:1.15rem;border:1px solid var(--border);background:#111;order:-1;animation:fade-rise .55s ease-out .08s backwards;transition:border-color .2s ease}.hero__tag{color:var(--muted);font-size:.95rem}.hero h1{margin-top:1rem;max-width:40rem;font-size:clamp(1.85rem,3.6vw,2.6rem);font-weight:600}.hero__meta{margin-top:.9rem;color:var(--muted)}.contact-row{display:flex;flex-wrap:wrap;gap:.65rem 1.15rem;margin-top:1.35rem}.contact-row a{font-size:.95rem}.actions{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1.5rem}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:2.5rem;padding:.45rem 1rem;border-radius:var(--radius);border:1px solid transparent;font-family:var(--font);font-size:.9375rem;font-weight:500;cursor:pointer}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-hover);color:#fff}.btn-secondary{background:var(--surface);color:var(--text);border-color:var(--border);transition:background-color .2s ease,color .2s ease,border-color .2s ease}.btn-secondary:hover{background:var(--surface-2);color:var(--text)}.btn-dark{background:var(--theme-dark);color:var(--on-dark);border-radius:999px;padding-inline:1.1rem}.btn-dark:hover{color:var(--on-dark);filter:brightness(1.12)}[data-theme=dark] .btn-dark{background:var(--text);color:var(--bg)}[data-theme=dark] .btn-dark:hover{color:var(--bg);filter:none;opacity:.92}.section{padding-block:1.75rem 2.5rem}.section--end{padding-bottom:4.5rem}.section h2{margin-bottom:1.1rem;font-size:1.15rem;font-weight:600}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(16.5rem,1fr));gap:1rem}.card{--hover-x: 50%;--hover-y: 0%;position:relative;isolation:isolate;display:flex;flex-direction:column;gap:.7rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.15rem 1.2rem 1.25rem;overflow:hidden;transition:background-color .2s ease,color .2s ease,border-color .2s ease,transform .2s ease}.card>*{position:relative;z-index:1}.card:after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;opacity:0;border-radius:inherit;background:radial-gradient(circle 220px at var(--hover-x) var(--hover-y),color-mix(in srgb,var(--accent) 36%,transparent) 0%,color-mix(in srgb,var(--accent) 18%,transparent) 28%,color-mix(in srgb,var(--accent) 8%,transparent) 52%,transparent 72%);transition:opacity .2s ease}.cards .card{animation:fade-rise .5s ease-out backwards}.cards .card:nth-child(1){animation-delay:.1s}.cards .card:nth-child(2){animation-delay:.16s}.cards .card:nth-child(3){animation-delay:.22s}.cards .card:nth-child(4){animation-delay:.28s}.cards .card:nth-child(5){animation-delay:.34s}.card:hover{border-color:var(--accent);transform:translateY(-2px)}.card:hover:after{opacity:1}.card__media{display:block;margin:-1.15rem -1.2rem .15rem;background:var(--surface-2);border-bottom:1px solid var(--border)}.card__media img{display:block;width:100%;height:10.5rem;object-fit:cover;object-position:center top}.card h3{font-size:1.15rem}.card .btn{margin-top:auto;align-self:flex-start}.card__result{color:var(--text);font-size:.95rem}.card__status{font-size:.8125rem;color:var(--muted);font-family:var(--font-mono)}.chips{display:flex;flex-wrap:wrap;gap:.4rem}.chip{display:inline-flex;align-items:center;padding:.2rem .6rem;border:1px solid var(--border);border-radius:999px;background:var(--surface-2);color:var(--muted);font-family:var(--font-mono);font-size:.75rem;transition:background-color .2s ease,color .2s ease,border-color .2s ease}.also{color:var(--muted)}.page{padding-block:clamp(2.25rem,6vw,3.75rem) 4.5rem}.page h1{margin-top:.55rem;font-size:clamp(2rem,4vw,2.75rem)}.crumb{color:var(--muted);font-size:.9rem}.lede{margin-top:.9rem;max-width:42rem;color:var(--muted)}.block{margin-top:2.25rem}.block h2{margin-bottom:.85rem;font-size:1.15rem}.callout{margin-top:1.75rem;padding:1.1rem 1.2rem 1.2rem 1.15rem;background:var(--warn-surface);border:1px solid var(--warn-border);border-left:3px solid var(--warn);border-radius:var(--radius)}.shots{display:grid;gap:1.5rem;margin-top:2rem}.shot{margin:0}.shot img{display:block;width:100%;height:auto;max-width:100%;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.shot figcaption{margin-top:.65rem;max-width:42rem;color:var(--muted);font-size:.9rem}.blog-link{margin-top:1.35rem}.callout__tag{font-family:var(--font-mono);font-size:.75rem;color:var(--warn)}.callout h2{margin-top:.4rem;margin-bottom:.55rem;font-size:1.15rem}.callout p{color:var(--text);max-width:42rem}.job{padding:1.1rem 0;border-top:1px solid var(--border)}.job:last-child{border-bottom:1px solid var(--border)}.job__top{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.35rem 1rem}.job__org{font-weight:600}.job__dates{color:var(--muted);font-family:var(--font-mono);font-size:.8125rem}.job__meta{margin-top:.2rem;color:var(--muted);font-size:.9rem}.job p{margin-top:.65rem;max-width:42rem;color:var(--muted)}.site-footer{margin-top:auto;border-top:1px solid var(--border);transition:background-color .2s ease,border-color .2s ease,color .2s ease}.site-footer .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem;padding-block:1.15rem;color:var(--muted);font-size:.875rem}.not-found{padding-block:clamp(4.5rem,12vw,7rem)}.not-found .code{font-family:var(--font-mono);font-size:.9rem;color:var(--accent)}.not-found h1{margin-top:.6rem}.section__intro{max-width:42rem;margin-top:-.35rem;margin-bottom:1.25rem;color:var(--muted)}.kicker{margin-top:.6rem;color:var(--muted);font-family:var(--font-mono);font-size:.8125rem}.tldr{margin-top:1.75rem;max-width:46rem;padding:1rem 1.2rem 1.1rem;background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:var(--radius)}.tldr__tag{font-family:var(--font-mono);font-size:.75rem;color:var(--accent)}.tldr ul{display:grid;gap:.4rem;margin-top:.5rem}.tldr li{position:relative;padding-left:1rem}.tldr li:before{content:"";position:absolute;left:0;top:.68em;width:.35rem;height:1px;background:var(--muted)}.facts,.results{display:grid;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:.75rem;margin:1.5rem 0 0}.fact,.result{padding:.9rem 1rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.fact dt,.result dt{font-weight:600;letter-spacing:-.02em}.fact dt{font-size:1.35rem}.fact dd,.result dd{margin:.25rem 0 0;color:var(--muted);font-size:.875rem}.result dd{font-size:.9375rem}.shot--lead{margin-top:2rem}.features{display:grid;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:.75rem;margin-top:1.25rem}.feature{padding:1rem 1.1rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.feature h3,.decisions h3,.step h3{font-size:1rem;letter-spacing:-.015em}.feature p,.decisions p,.step p{margin-top:.4rem;color:var(--muted);font-size:.9375rem}.decisions,.steps{counter-reset:item;display:grid;gap:1rem;max-width:46rem;margin:0;padding:0;list-style:none}.decisions li,.step{counter-increment:item;position:relative;padding-left:2.4rem}.decisions li:before,.step:before{content:counter(item,decimal-leading-zero);position:absolute;left:0;top:.1rem;color:var(--accent);font-family:var(--font-mono);font-size:.8125rem}.steps{max-width:none;grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:1.25rem 2rem}.quote{margin:2rem 0 0;max-width:46rem;padding:1.15rem 1.25rem 1.2rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.quote blockquote{margin:0}.quote blockquote p{font-size:1.0625rem;line-height:1.55}.quote blockquote p:before{content:"“"}.quote blockquote p:after{content:"”"}.quote figcaption{display:flex;flex-direction:column;margin-top:.85rem;font-size:.875rem}.quote__name{font-weight:600}.quote__role{color:var(--muted)}.card--quiet:hover{border-color:var(--border);transform:none}.card--quiet:after{content:none}.card__top{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.25rem .75rem}.pager{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-top:3rem;padding-top:1.5rem;border-top:1px solid var(--border)}.pager a{display:flex;flex-direction:column;padding:.85rem 1rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);transition:border-color .2s ease}.pager a:hover{border-color:var(--accent);color:var(--text)}.pager__next{text-align:right}.pager__label{color:var(--muted);font-family:var(--font-mono);font-size:.75rem}.pager__title{font-weight:600}@media(min-width:40rem){.hero__grid{grid-template-columns:minmax(0,1fr) auto;align-items:center}.hero__photo{order:0;width:11.5rem;justify-self:end}}@media(min-width:64rem){.hero__photo{width:15rem}}.wordmark,.site-header nav a,.hero__tag,.hero__meta,.also,.lede,.crumb,.card h3,.card__result,.card__status,.job,.callout,.shot img,.shot figcaption{transition:color .2s ease,border-color .2s ease,background-color .2s ease}@keyframes fade-rise{0%{opacity:0;transform:translateY(.7rem)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.card:hover{transform:none}.card:after{content:none}}
