:root{color-scheme:dark;--paper: oklch(22% .018 315);--surface: oklch(26% .022 315);--surface-strong: oklch(30% .025 315);--ink: oklch(88% .015 315);--muted: oklch(78% .022 315);--faint: oklch(77.5% .02 315);--line: oklch(39% .03 315);--line-strong: oklch(50% .04 315);--accent: oklch(66% .1 326);--accent-strong: oklch(78% .07 326);--accent-soft: oklch(35% .05 326);--positive: oklch(68% .08 155);--warning: oklch(72% .09 86);--gold: oklch(78% .06 86);--header: oklch(18.5% .015 315);--header-ink: oklch(88% .015 315);--header-muted: oklch(72% .025 315);--focus: #f3cf4f;--focus-ink: #141414;--serif: "Iowan Old Style", "Palatino Linotype", "Book Antiqua", Palatino, Georgia, serif;--sans: Aptos, "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mono: "Cascadia Mono", "SFMono-Regular", Consolas, "Liberation Mono", monospace;--measure: 70ch;--page: 1380px;--sidebar: 224px;--radius: 2px}[data-theme=night]{color-scheme:dark;--paper: oklch(22% .018 315);--surface: oklch(26% .022 315);--surface-strong: oklch(30% .025 315)}[data-theme=trianthology]{color-scheme:dark;--paper: #050b16;--surface: #0a1424;--surface-strong: #101d30;--ink: #f0edf0;--muted: #c1c9d4;--faint: #99a8ba;--line: rgb(184 206 229 / 20%);--line-strong: rgb(216 229 242 / 42%);--accent: #b41f35;--accent-strong: #e07686;--accent-soft: #391724;--positive: #76b6a0;--warning: #d7ba78;--gold: #e1c98e;--header: rgb(4 9 18 / 94%);--header-ink: #f0edf0;--header-muted: #aeb9c7;--focus: #f6d77f;--focus-ink: #07101d}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:1rem;overflow-x:clip;background:var(--paper)}body{margin:0;min-width:320px;overflow-x:clip;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:1rem;line-height:1.55;text-rendering:optimizeLegibility}::-moz-selection{background:var(--accent-soft);color:var(--ink)}::selection{background:var(--accent-soft);color:var(--ink)}img{display:block;max-width:100%;height:auto}a{color:var(--accent-strong);text-decoration-thickness:.08em;text-underline-offset:.18em}a:hover{color:var(--accent)}:where(a,button,summary):focus-visible{outline:3px solid var(--focus-ink);outline-offset:3px;box-shadow:0 0 0 6px var(--focus);border-radius:1px}button,summary{font:inherit}h1,h2,h3,h4{margin:0;color:var(--ink);font-family:var(--serif);font-weight:600;line-height:1.08;text-wrap:balance}p,ul,ol,dl,figure{margin-top:0}code{padding:.12rem .3rem;border:1px solid var(--line);background:var(--surface);font-family:var(--mono);font-size:.88em}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.skip-link{position:fixed;top:.75rem;left:.75rem;z-index:100;min-height:44px;padding:.65rem 1rem;transform:translateY(-160%);background:var(--focus);color:var(--focus-ink);font-weight:700}.skip-link:focus{transform:translateY(0)}.site-header{position:fixed;inset:0 auto 0 0;z-index:40;width:var(--sidebar);border-right:1px solid var(--line);background:var(--header);color:var(--header-ink);view-transition-name:site-sidebar}.site-header__inner{width:100%;height:100%;padding:1.6rem 1.25rem 1.25rem;display:flex;align-items:stretch;flex-direction:column;gap:1.4rem}.brand{display:flex;flex-direction:column;align-items:flex-start;gap:.8rem;color:var(--header-ink);text-decoration:none}.brand__portrait{display:block;border-radius:50%;animation:portrait-halo 7s ease-in-out infinite}.brand__avatar{width:80px;height:80px;border:1px solid var(--gold);border-radius:50%;-o-object-fit:cover;object-fit:cover;outline:5px solid color-mix(in oklch,var(--accent) 16%,transparent)}.brand__copy{display:flex;flex-direction:column}.brand__name{font-family:var(--serif);font-size:1.18rem;font-weight:700;letter-spacing:.035em}.brand__descriptor{color:var(--header-muted);font-family:var(--mono);font-size:.68rem;letter-spacing:.08em;text-transform:uppercase}.site-nav,.footer-links{display:flex;align-items:stretch;flex-direction:column;gap:.2rem;margin:0;padding:0;list-style:none}.site-nav{padding-top:1rem;border-top:1px solid var(--line)}.site-nav a{position:relative;display:flex;align-items:center;min-height:44px;padding:.45rem .65rem;border-radius:var(--radius);color:var(--header-muted);font-size:.84rem;font-weight:650;text-decoration:none}.site-nav a:hover,.site-nav a[aria-current]{color:var(--header-ink);background:var(--accent-soft)}.site-nav a[aria-current]:after{position:absolute;right:.65rem;width:.38rem;height:.38rem;margin-left:auto;rotate:45deg;background:var(--gold);content:""}.nav-label--short{display:none}.sidebar-contact{display:flex;flex-wrap:wrap;gap:.25rem .65rem;margin-top:auto;padding-top:1rem;border-top:1px solid var(--line)}.sidebar-contact a{color:var(--header-muted);font-family:var(--mono);font-size:.67rem;letter-spacing:.04em;text-decoration:none;text-transform:uppercase}.sidebar-contact a:hover{color:var(--accent-strong)}.site-footer{margin-left:var(--sidebar);border-top:1px solid var(--line);background:var(--paper)}.site-footer__inner{width:min(calc(100% - 3rem),var(--page));margin-inline:auto;padding-block:1rem;color:var(--muted);font-size:.75rem}.site-footer p{margin-bottom:0}.site-footer__legal{font-size:inherit}main{min-height:calc(100vh - 3rem);margin-left:var(--sidebar)}.page{width:min(calc(100% - 3rem),var(--page));margin-inline:auto}.hero{padding-block:clamp(1.8rem,3vw,3rem);border-bottom:1px solid var(--line)}.hero-grid{display:grid;grid-template-columns:minmax(0,8fr) minmax(17rem,4fr);gap:clamp(1.5rem,4vw,3.5rem);align-items:center}.hero-grid>*{min-width:0}.eyebrow{display:block;margin-bottom:.7rem;color:var(--gold);font-family:var(--mono);font-size:.74rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.hero-title{max-width:20ch;font-size:clamp(2.35rem,4vw,4rem);letter-spacing:-.025em}.hero-lede{max-width:52ch;margin:1rem 0 0;color:var(--muted);font-size:clamp(.98rem,1.4vw,1.12rem);line-height:1.5}.hero-actions,.button-row{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.4rem}.hero-actions .button{flex:0 1 auto}.button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.6rem 1rem;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface-strong);color:var(--ink);font-weight:700;text-decoration:none;transition:border-color .18s cubic-bezier(.2,.8,.2,1),background-color .18s cubic-bezier(.2,.8,.2,1),color .18s cubic-bezier(.2,.8,.2,1)}.button:hover{border-color:var(--accent);color:var(--accent-strong)}.button--primary{border-color:var(--accent-strong);background:var(--accent-strong);color:#140f16}.button--primary:hover{border-color:var(--gold);background:var(--gold);color:#140f16}.brief{padding:1rem 1.15rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:0 1rem 2.5rem #0100012e}.brief dl{display:grid;grid-template-columns:auto 1fr;gap:.55rem 1rem;margin:0}.brief dt{color:var(--faint);font-family:var(--mono);font-size:.72rem;letter-spacing:.05em;text-transform:uppercase}.brief dd{margin:0;color:var(--ink);font-weight:650}.section{padding-block:clamp(2rem,3.5vw,3.5rem);border-bottom:1px solid var(--line)}.section-heading{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:2rem;align-items:end;margin-bottom:1rem}.section-heading--compact{grid-template-columns:1fr}.section-heading h2{font-size:clamp(1.65rem,2.5vw,2.35rem);letter-spacing:-.02em}.section-heading p{max-width:58ch;margin-bottom:0;color:var(--muted)}.project-grid,.feature-grid,.story-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.project-card,.feature,.story-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:clamp(1rem,2vw,1.35rem);box-shadow:0 1rem 2.5rem #01000124}.project-card--featured{border-color:var(--line-strong)}.project-card h3,.story-card h3{margin-top:.55rem;font-size:clamp(1.3rem,2vw,1.7rem)}.project-card p,.feature p,.story-card p{color:var(--muted)}.project-card__link{display:inline-flex;align-items:center;min-height:44px;font-weight:700}.status{display:inline-flex;align-items:center;gap:.5rem;color:var(--muted);font-family:var(--mono);font-size:.72rem;font-weight:700;letter-spacing:.055em;text-transform:uppercase}.status:before{width:.65rem;height:.65rem;background:var(--line-strong);content:""}.status--available:before{background:var(--positive)}.status--progress:before{background:var(--warning)}.archive-list{margin:0;padding:0;border-top:1px solid var(--line);list-style:none}.archive-list li{border-bottom:1px solid var(--line)}.archive-list a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem;align-items:center;min-height:52px;padding-block:.5rem;color:var(--ink);text-decoration:none;transition:background-color .18s cubic-bezier(.2,.8,.2,1),color .18s cubic-bezier(.2,.8,.2,1)}.archive-list a:hover .archive-list__title{color:var(--accent);text-decoration:underline;text-underline-offset:.2em}.archive-list__meta{color:var(--faint);font-family:var(--mono);font-size:.72rem;text-align:right}.prose{max-width:var(--measure)}.prose>*+*{margin-top:1.15rem}.prose h2{margin-top:2.5rem;font-size:clamp(1.75rem,3.5vw,2.6rem)}.prose h3{margin-top:2rem;font-size:1.35rem}.prose p,.prose li{color:var(--muted)}.prose strong{color:var(--ink)}.notice{border-left:4px solid var(--accent);border-radius:var(--radius);background:var(--surface-strong);padding:1.25rem 1.5rem}.notice>:last-child{margin-bottom:0}.media-frame{border:1px solid var(--line);background:var(--surface);padding:.5rem}.steps{padding-left:1.4rem}.steps li{padding:.4rem 0 .8rem .45rem}details{border-top:1px solid var(--line)}details:last-child{border-bottom:1px solid var(--line)}summary{min-height:56px;padding:.9rem 2.5rem .9rem 0;cursor:pointer;color:var(--ink);font-weight:700}details>div{max-width:var(--measure);padding:0 0 1.25rem;color:var(--muted)}table{width:100%;border-collapse:collapse;font-size:.92rem}th,td{padding:.8rem;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}th{color:var(--muted);font-family:var(--mono);font-size:.72rem;letter-spacing:.05em;text-transform:uppercase}.table-wrap{overflow-x:auto;border-top:1px solid var(--line-strong)}@view-transition{navigation: auto;}::view-transition-group(root){animation-duration:.18s;animation-timing-function:cubic-bezier(.2,.8,.2,1)}::view-transition-group(site-sidebar){animation-duration:.12s}@keyframes portrait-halo{0%,to{box-shadow:0 0 #c477c60a,0 0 1rem #c477c612}50%{box-shadow:0 0 0 .22rem #c477c617,0 0 1.6rem #d1b0671c}}@media (hover: hover) and (prefers-reduced-motion: no-preference){.project-card,.story-card{transition:transform .18s cubic-bezier(.2,.8,.2,1),border-color .18s cubic-bezier(.2,.8,.2,1),background-color .18s cubic-bezier(.2,.8,.2,1)}.project-card:hover,.story-card:hover{border-color:color-mix(in oklch,var(--accent) 48%,var(--line));background:color-mix(in oklch,var(--surface) 92%,var(--accent));transform:translateY(-2px)}.archive-list a:hover{background:color-mix(in oklch,var(--surface) 88%,var(--accent))}}.home-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(19rem,5fr);gap:1rem;align-items:start;padding-block:1rem 1.5rem}.home-grid .section{padding:1.15rem;border:1px solid var(--line);background:var(--surface-strong)}.home-grid .project-grid{gap:.75rem}.home-grid .project-card{display:flex;min-height:10.5rem;flex-direction:column}.home-grid .project-card__link{margin-top:auto}.project-card--art{position:relative;overflow:hidden}.project-card__thumb{position:absolute;inset:0 0 0 auto;z-index:0;width:62%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:50% 12%;object-position:50% 12%;opacity:.26;-webkit-mask-image:linear-gradient(90deg,transparent 10%,#000 85%);mask-image:linear-gradient(90deg,transparent 10%,#000 85%);pointer-events:none;transition:opacity .24s ease}.project-card--art>:not(img){position:relative}.project-card--art:hover .project-card__thumb{opacity:.42}.home-grid .archive-list a{min-height:44px;padding-block:.35rem}@media (max-width: 1100px){:root{--sidebar: 190px}.home-grid{grid-template-columns:1fr}}@media (max-width: 760px){:root{--sidebar: 82px}.site-header__inner{gap:.8rem;padding:.8rem .45rem}.brand{align-items:center;gap:0}.brand__avatar{width:48px;height:48px;outline-width:3px}.brand__copy,.sidebar-contact{display:none}.site-nav{padding-top:.65rem}.site-nav a{justify-content:center;padding:.45rem .15rem;font-size:.68rem;line-height:1.1;text-align:center;overflow-wrap:anywhere}.site-nav a[aria-current]:after{right:.2rem;width:.3rem;height:.3rem}.nav-label{display:none}.nav-label--short{display:inline}.page,.site-footer__inner{width:min(calc(100% - 1rem),var(--page))}.hero-grid,.section-heading{grid-template-columns:1fr}.hero{padding-block:1.5rem}.hero-title{font-size:clamp(2.15rem,10vw,3.25rem)}.brief{max-width:none}.project-grid,.feature-grid,.story-grid{grid-template-columns:1fr}.button-row .button{width:100%}}@media (max-width: 430px){:root{--sidebar: 72px}.site-header__inner{padding-inline:.3rem}.site-nav a{min-height:42px;font-size:.63rem}.hero-actions .button{flex:1 1 9rem}.archive-list a{grid-template-columns:1fr;gap:.2rem}.archive-list__meta{text-align:left}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}}@media (prefers-contrast: more){:root{--muted: oklch(84% .02 315);--faint: oklch(84% .02 315);--line: oklch(42% .035 315);--line-strong: oklch(58% .045 315)}}@media (forced-colors: active){:where(a,button,summary):focus-visible{outline:3px solid CanvasText;box-shadow:none}.status:before{border:1px solid CanvasText}}
