:root{--ink-900: #14110d;--ink-850: #181410;--ink-800: #1e1a14;--ink-700: #2c261d;--hair: rgba(236, 227, 212, .1);--hair-strong: rgba(236, 227, 212, .18);--claude: #d97757;--claude-bright: #e88e6a;--machine: #6fb1a6;--paper: #ece4d4;--paper-ink: #2a2318;--add: #8fbf6f;--del: #db7d6f;--text: #ece3d4;--text-dim: #a8a08f;--text-mute: #807868;--font-display: "Fraunces", Georgia, "Times New Roman", serif;--font-body: Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;--maxw: 1120px;color:var(--text);background:var(--ink-900);font-family:var(--font-body);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}body{margin:0;min-width:320px;background:var(--ink-900);background-image:radial-gradient(1200px 600px at 78% -8%,rgba(217,119,87,.1),transparent 60%),radial-gradient(900px 500px at 0% 18%,rgba(111,177,166,.07),transparent 55%);background-attachment:fixed}a{color:inherit;text-decoration:none}button{font:inherit}main{position:relative}:focus-visible{outline:2px solid var(--claude);outline-offset:3px;border-radius:2px}.site-header{position:fixed;inset:0 0 auto;z-index:50;background:transparent;border-bottom:1px solid transparent;transition:background-color .3s ease,border-color .3s ease,backdrop-filter .3s ease}.site-header.scrolled{background:#14110dd1;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--hair)}.site-header-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;max-width:var(--maxw);height:68px;margin:0 auto;padding:0 clamp(16px,4vw,40px)}.brand{display:inline-flex;align-items:center;gap:9px;font-family:var(--font-mono);font-weight:500;font-size:.78rem;letter-spacing:.12em;color:var(--text);white-space:nowrap}.brand:before{content:"";width:9px;height:9px;border-radius:50%;background:var(--claude);box-shadow:0 0 12px #d97757b3}.site-nav{display:flex;align-items:center;gap:clamp(12px,1.8vw,26px);min-width:0}.nav-link{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--text-dim);white-space:nowrap;transition:color .2s ease}.nav-link:hover{color:var(--text)}.nav-menu{position:relative;flex-shrink:0}.nav-menu-trigger{display:inline-flex;align-items:center;gap:6px;list-style:none;font-family:var(--font-mono);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--text-dim);white-space:nowrap;cursor:pointer;transition:color .2s ease}.nav-menu-trigger::-webkit-details-marker{display:none}.nav-menu-trigger:after{content:"▾";color:var(--machine);font-size:.62rem;transform:translateY(-1px)}.nav-menu[open] .nav-menu-trigger,.nav-menu-trigger:hover{color:var(--text)}.nav-menu-panel{position:absolute;top:calc(100% + 18px);right:0;z-index:60;width:min(430px,calc(100vw - 32px));padding:10px;border:1px solid var(--ink-700);border-radius:12px;background:radial-gradient(420px 180px at 85% 0%,rgba(111,177,166,.11),transparent 70%),linear-gradient(180deg,#1e1a14fa,#14110dfa);box-shadow:0 24px 60px #00000073,0 0 0 1px #d977570a}.nav-menu-panel:before{content:"";position:absolute;top:-7px;right:30px;width:12px;height:12px;border-top:1px solid var(--ink-700);border-left:1px solid var(--ink-700);background:var(--ink-800);transform:rotate(45deg)}.nav-menu-overview,.nav-menu-project{position:relative;display:grid;gap:5px;padding:12px 14px;border-radius:8px;transition:background-color .2s ease,transform .2s ease}.nav-menu-overview{border:1px solid rgba(111,177,166,.26);background:#6fb1a614}.nav-menu-overview span,.nav-menu-project span{font-family:var(--font-mono);font-size:.78rem;font-weight:700;letter-spacing:.05em;color:var(--text)}.nav-menu-overview small,.nav-menu-project small{font-size:.78rem;line-height:1.45;color:var(--text-dim)}.nav-menu-project:hover,.nav-menu-overview:hover{background:#ece3d40f;transform:translateY(-1px)}.nav-menu-project+.nav-menu-project{margin-top:4px}.nav-emblem{display:grid;place-items:center;width:30px;height:30px;border:1.5px solid var(--claude);border-radius:50%;color:var(--claude-bright);font-size:.78rem;flex-shrink:0;transition:background-color .2s ease,transform .2s ease}.nav-emblem:hover{background:#d9775724;transform:translateY(-1px)}.hero{position:relative;max-width:var(--maxw);margin:0 auto;padding:clamp(128px,18vh,188px) clamp(16px,4vw,40px) clamp(56px,8vh,96px);display:grid;grid-template-columns:minmax(0,1fr);align-items:center;gap:clamp(28px,5vw,64px)}.hero-copy{min-width:0;max-width:760px}.hero-eyebrow{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-mono);font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;color:var(--machine);margin-bottom:22px}.hero-eyebrow:before{content:"";width:26px;height:1px;background:var(--machine);opacity:.7}.hero-identity{display:flex;align-items:center;gap:14px;margin-bottom:20px}.hero-avatar{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;border:2px solid rgba(217,119,87,.55);background:radial-gradient(circle at 30% 25%,rgba(236,227,212,.18),transparent 34%),linear-gradient(135deg,#d9775747,#6fb1a633);color:var(--text);font-family:var(--font-mono);font-size:.74rem;font-weight:700;letter-spacing:.06em;flex-shrink:0}.hero-name{margin:0;font-family:var(--font-display);font-weight:600;font-size:1.32rem;letter-spacing:.01em;color:var(--text)}.hero-tagline{margin:0;font-family:var(--font-display);font-weight:600;font-size:clamp(2.3rem,5.6vw,3.9rem);line-height:1.02;letter-spacing:-.018em;color:var(--text)}.hero-tagline .accent{font-style:italic;color:var(--claude)}.hero-tagline-sub{margin:18px 0 0;font-family:var(--font-display);font-style:italic;font-size:clamp(1rem,1.7vw,1.18rem);color:var(--text-dim);max-width:52ch}.hero-lede{margin:24px 0 0;max-width:65ch;font-size:.99rem;line-height:1.72;color:var(--text-dim)}.hero-tools{display:flex;flex-wrap:wrap;align-items:center;gap:10px 20px;margin-top:24px}.hero-tools-label{font-family:var(--font-mono);font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:var(--text-mute)}.hero-tool{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:.78rem;letter-spacing:.02em;color:var(--text-dim)}.hero-tool-icon{flex-shrink:0;color:var(--text-mute);transition:color .2s ease}.hero-tool--claude:hover .hero-tool-icon{color:var(--claude)}.hero-tool--codex:hover .hero-tool-icon{color:var(--text)}.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:30px}.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1px solid transparent;border-radius:6px;padding:12px 22px;font-family:var(--font-mono);font-size:.8rem;letter-spacing:.04em;font-weight:500;cursor:pointer;transition:background-color .2s ease,border-color .2s ease,color .2s ease,transform .2s ease}.button.primary{background:var(--claude);color:#1a120c;font-weight:700}.button.primary:hover{background:var(--claude-bright);transform:translateY(-2px)}.button.ghost{border-color:var(--hair-strong);color:var(--text)}.button.ghost:hover{border-color:var(--machine);color:var(--machine);transform:translateY(-2px)}.hero-link{font-family:var(--font-mono);font-size:.8rem;letter-spacing:.03em;color:var(--text-dim);border-bottom:1px solid var(--hair-strong);padding-bottom:2px;transition:color .2s ease,border-color .2s ease}.hero-link:hover{color:var(--claude);border-color:var(--claude)}.terminal{position:relative;background:linear-gradient(180deg,var(--ink-800),var(--ink-850));border:1px solid var(--ink-700);border-radius:12px;box-shadow:0 30px 70px #00000080,0 0 0 1px #d977570d;overflow:hidden;font-family:var(--font-mono)}.terminal-bar{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#00000038;border-bottom:1px solid var(--hair)}.terminal-dot{width:11px;height:11px;border-radius:50%;background:var(--ink-700)}.terminal-dot.live{background:var(--claude)}.terminal-dot.live2{background:var(--machine)}.terminal-title{margin-left:8px;font-size:.72rem;letter-spacing:.05em;color:var(--text-mute)}.terminal-body{padding:18px clamp(16px,2vw,22px) 22px;font-size:.79rem;line-height:1.95}.term-line{white-space:pre-wrap;word-break:break-word;opacity:0;transform:translateY(4px);animation:term-in .42s ease forwards}.term-line:nth-child(1){animation-delay:.25s}.term-line:nth-child(2){animation-delay:.95s}.term-line:nth-child(3){animation-delay:1.25s}.term-line:nth-child(4){animation-delay:1.55s}.term-line:nth-child(5){animation-delay:1.95s}.term-line:nth-child(6){animation-delay:2.2s}.term-line:nth-child(7){animation-delay:2.5s}.term-line:nth-child(8){animation-delay:2.95s}@keyframes term-in{to{opacity:1;transform:translateY(0)}}.term-prompt{color:var(--text)}.term-caret{color:var(--claude);font-weight:700;margin-right:8px}.term-cursor{display:inline-block;width:.55em;height:1.05em;margin-left:2px;vertical-align:text-bottom;background:var(--claude);animation:blink 1.1s steps(1) infinite}@keyframes blink{50%{opacity:0}}.term-tool{color:var(--text-dim)}.term-tool .bullet{color:var(--machine);margin-right:9px}.term-tool .name{color:var(--machine);font-weight:700}.term-tool .note{color:var(--add)}.term-meta{color:var(--text-mute);margin-top:6px}.term-del,.term-add{border-radius:3px;padding:0 4px;margin:1px -4px}.term-del{color:var(--del);background:#db7d6f1a}.term-add{color:var(--add);background:#8fbf6f21}.term-done{color:var(--claude-bright);margin-top:8px;font-weight:500}.term-done .check{color:var(--add);margin-right:8px}.section{max-width:var(--maxw);margin:0 auto;padding:clamp(64px,11vh,120px) clamp(16px,4vw,40px)}.section-narrow{max-width:880px}.section-head{margin-bottom:clamp(32px,5vw,52px)}.eyebrow{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-mono);font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;color:var(--machine)}.eyebrow:before{content:"";width:22px;height:1px;background:var(--machine);opacity:.7}.section-title{margin:16px 0 0;font-family:var(--font-display);font-weight:600;font-size:clamp(1.8rem,4vw,2.6rem);line-height:1.08;letter-spacing:-.015em;color:var(--text)}.prose p{margin:0 0 16px;font-size:1rem;line-height:1.78;color:var(--text-dim);max-width:68ch}.prose p:last-child{margin-bottom:0}.flagship{position:relative;border:1px solid var(--ink-700);border-radius:14px;padding:clamp(26px,4vw,40px);background:radial-gradient(700px 240px at 88% -20%,rgba(217,119,87,.12),transparent 70%),linear-gradient(180deg,var(--ink-800),var(--ink-850));overflow:hidden}.flagship-label{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:.7rem;letter-spacing:.18em;font-weight:700;color:var(--claude)}.flagship-label:before{content:"●";font-size:.7em;animation:pulse 2.4s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.45}50%{opacity:1}}.flagship-title{margin:14px 0 0;font-family:var(--font-display);font-weight:600;font-size:clamp(1.5rem,3vw,2.05rem);letter-spacing:-.01em;color:var(--text)}.flagship-stack{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 22px;padding:0;list-style:none}.flagship-stack li{font-family:var(--font-mono);font-size:.71rem;letter-spacing:.03em;color:var(--machine);border:1px solid rgba(111,177,166,.32);border-radius:999px;padding:4px 12px}.flagship p{margin:0 0 14px;font-size:.99rem;line-height:1.78;color:var(--text-dim);max-width:72ch}.flagship p:last-child{margin-bottom:0}.track{position:relative;margin:clamp(36px,5vw,56px) 0 0;padding-left:30px}.track:before{content:"";position:absolute;left:5px;top:8px;bottom:8px;width:1px;background:linear-gradient(180deg,var(--claude),var(--hair-strong) 60%,transparent)}.track-intro{font-family:var(--font-mono);font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;color:var(--text-mute);margin:0 0 30px -30px;padding-left:30px}.shift{position:relative;padding:0 0 30px}.shift:last-child{padding-bottom:0}.shift:before{content:"";position:absolute;left:-30px;top:4px;width:11px;height:11px;border-radius:50%;background:var(--ink-900);border:2px solid var(--claude);transform:translate(0);margin-left:0}.shift-era{display:block;margin-bottom:2px;font-family:var(--font-mono);font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:var(--text-mute)}.shift-move{display:inline-flex;align-items:center;gap:8px;margin:6px 0 8px;font-family:var(--font-mono);font-size:.82rem}.shift-from{color:var(--text-mute);text-decoration:line-through;text-decoration-color:#a8a08f80}.shift-arrow{color:var(--machine)}.shift-to{color:var(--claude);font-weight:700}.shift-title{margin:0 0 8px;font-family:var(--font-display);font-weight:600;font-size:1.16rem;color:var(--text)}.shift-body{margin:0;font-size:.95rem;line-height:1.72;color:var(--text-dim);max-width:70ch}.stack-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(20px,3vw,32px)}.stack-col{border:1px solid var(--ink-700);border-radius:12px;padding:clamp(22px,3vw,30px);background:var(--ink-850)}.stack-label{font-family:var(--font-mono);font-size:.74rem;letter-spacing:.18em;font-weight:700;color:var(--claude)}.stack-col.foundations .stack-label{color:var(--machine)}.stack-blurb{margin:10px 0 20px;font-size:.9rem;color:var(--text-mute)}.stack-list{list-style:none;margin:0;padding:0;display:grid;gap:12px}.stack-list li{position:relative;padding-left:22px;font-family:var(--font-mono);font-size:.85rem;color:var(--text)}.stack-list li:before{content:"▸";position:absolute;left:0;color:var(--claude)}.stack-col.foundations .stack-list li:before{content:"▸";color:var(--machine)}.service-branch{font-family:var(--font-mono);font-size:.82rem;letter-spacing:.04em;color:var(--machine);margin:0 0 18px}.service-highlights{list-style:none;margin:0 0 30px;padding:0;display:grid;gap:10px}.service-highlights li{font-size:.96rem;line-height:1.6;color:var(--text-dim);display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;width:fit-content;max-width:100%}.service-highlights li:before{content:"★";color:var(--claude);font-size:.85em;line-height:1}.service-highlight-text{min-width:0}.service-highlight-image{display:inline-block;object-fit:contain;flex-shrink:0;filter:drop-shadow(0 10px 18px rgba(0,0,0,.28))}.service-highlight-image--medal{width:58px;max-height:66px}.service-highlight-image--insignia{width:54px;max-height:66px}.awards-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0 clamp(24px,5vw,48px);margin:0;padding:0;list-style:none}.award-row{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:92px;padding:12px 2px;border-bottom:1px solid var(--hair)}.award-name{font-size:.88rem;color:var(--text-dim)}.award-media{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.award-media--medal,.award-media--insignia{width:62px;height:78px}.award-media--ribbon{width:76px;height:24px}.award-image{display:block;max-width:100%;max-height:100%;object-fit:contain;filter:drop-shadow(0 12px 20px rgba(0,0,0,.3))}.award-media--ribbon .award-image{width:76px;max-height:22px;border-radius:2px;box-shadow:0 5px 12px #0000003d,inset 0 0 0 1px #00000059}.contact{max-width:var(--maxw);margin:0 auto;padding:clamp(64px,10vh,110px) clamp(16px,4vw,40px)}.contact-card{border:1px solid var(--ink-700);border-radius:14px;padding:clamp(30px,5vw,56px);background:radial-gradient(600px 220px at 12% 0%,rgba(111,177,166,.1),transparent 70%),linear-gradient(180deg,var(--ink-800),var(--ink-850));text-align:center}.contact-title{margin:14px 0 10px;font-family:var(--font-display);font-weight:600;font-size:clamp(1.8rem,4vw,2.6rem);color:var(--text)}.contact-lede{margin:0 auto 26px;max-width:46ch;color:var(--text-dim);font-size:.99rem;line-height:1.7}.contact-prompt{display:inline-flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;font-family:var(--font-mono);font-size:clamp(.82rem,2.2vw,1.02rem);background:#00000047;border:1px solid var(--hair);border-radius:8px;padding:14px 20px}.contact-prompt .caret{color:var(--claude);font-weight:700}.contact-prompt .cmd{color:var(--text-mute)}.contact-email{color:var(--text);border-bottom:1px solid var(--claude);padding-bottom:1px;word-break:break-word;transition:color .2s ease}.contact-email:hover{color:var(--claude)}.contact-secondary{margin:22px 0 0}.projects-page,.project-detail{max-width:var(--maxw);margin:0 auto;padding:clamp(118px,16vh,168px) clamp(16px,4vw,40px) clamp(72px,12vh,120px)}.projects-hero,.project-detail-copy{max-width:760px}.projects-title,.project-detail-title{margin:18px 0 0;font-family:var(--font-display);font-weight:600;font-size:clamp(2.1rem,5.2vw,3.35rem);line-height:1.04;letter-spacing:-.018em;color:var(--text)}.projects-dek,.project-detail-dek{margin:20px 0 0;max-width:65ch;font-size:1.02rem;line-height:1.75;color:var(--text-dim)}.project-list{display:grid;gap:clamp(24px,4vw,38px);margin-top:clamp(42px,6vw,64px)}.project-card{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:clamp(24px,4vw,44px);align-items:center;border:1px solid var(--ink-700);border-radius:14px;padding:clamp(18px,3vw,30px);background:linear-gradient(90deg,rgba(111,177,166,.06),transparent 42%),linear-gradient(180deg,var(--ink-800),var(--ink-850));overflow:hidden}.project-card-copy,.project-detail-copy,.project-detail-panel{min-width:0}.project-kicker{display:inline-flex;font-family:var(--font-mono);font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--machine)}.project-card-title{margin:12px 0 0;font-family:var(--font-display);font-weight:600;font-size:clamp(1.6rem,3vw,2.25rem);line-height:1.08;letter-spacing:-.012em;color:var(--text)}.project-status,.project-detail-status{margin:10px 0 0;font-family:var(--font-mono);font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--claude-bright)}.project-summary{margin:18px 0 0;max-width:58ch;font-size:.98rem;line-height:1.7;color:var(--text-dim)}.project-card-points,.project-detail-list{list-style:none;margin:22px 0 0;padding:0;display:grid;gap:12px}.project-card-points li,.project-detail-list li{position:relative;padding-left:22px;font-size:.92rem;line-height:1.62;color:var(--text-dim)}.project-card-points li:before,.project-detail-list li:before{content:"▸";position:absolute;left:0;top:0;font-family:var(--font-mono);color:var(--machine)}.project-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.project-visual{margin:0;min-width:0;border:1px solid var(--ink-700);border-radius:12px;background:var(--ink-900);overflow:hidden;box-shadow:0 24px 58px #00000061,inset 0 0 0 1px #ece3d408}.project-visual--image{aspect-ratio:16 / 10}.project-visual--image img{display:block;width:100%;height:100%;object-fit:cover}.project-visual--meal{min-height:350px}.project-meal-visual{min-height:350px;padding:clamp(18px,3vw,28px);display:grid;grid-template-columns:minmax(150px,.68fr) minmax(0,1fr);align-items:center;gap:clamp(16px,3vw,28px);background:radial-gradient(360px 220px at 30% 0%,rgba(217,119,87,.18),transparent 68%),radial-gradient(360px 260px at 100% 100%,rgba(111,177,166,.18),transparent 70%),linear-gradient(135deg,#17130f,#221c15)}.meal-phone{align-self:center;border:1px solid rgba(236,227,212,.14);border-radius:24px;padding:14px;background:#14110dc7;box-shadow:0 20px 48px #0000005c}.meal-phone-bar,.meal-list-head{display:flex;justify-content:space-between;gap:10px;font-family:var(--font-mono);font-size:.66rem;letter-spacing:.05em;color:var(--text-mute)}.meal-vote-card{margin-top:10px;padding:12px;border:1px solid var(--hair);border-radius:12px;background:#ece3d40d}.meal-vote-card.is-winning{border-color:#d977577a;background:#d977571f}.meal-vote-card strong,.meal-vote-card small,.meal-vote-score{display:block}.meal-vote-card strong{margin-top:8px;font-size:.9rem;line-height:1.25;color:var(--text)}.meal-vote-card small{margin-top:4px;font-size:.74rem;line-height:1.35;color:var(--text-dim)}.meal-vote-score{font-family:var(--font-mono);font-size:.64rem;letter-spacing:.06em;color:var(--machine)}.meal-list{display:grid;gap:12px;border:1px solid rgba(111,177,166,.22);border-radius:16px;padding:16px;background:#0000003d}.meal-list-head strong{color:var(--machine)}.meal-aisle{display:grid;grid-template-columns:minmax(72px,.7fr) repeat(2,minmax(0,1fr));gap:8px;align-items:center;padding:10px 0;border-top:1px solid var(--hair);font-family:var(--font-mono);font-size:.72rem;color:var(--text-dim)}.meal-aisle span{min-width:0}.meal-aisle-name{color:var(--claude-bright);font-weight:700}.project-detail-hero{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);align-items:center;gap:clamp(30px,5vw,64px)}.project-detail-hero .project-visual{width:100%}.project-back{display:flex;width:fit-content;margin-bottom:24px;font-family:var(--font-mono);font-size:.76rem;letter-spacing:.04em;color:var(--text-mute);transition:color .2s ease}.project-back:hover{color:var(--machine)}.project-detail-section{margin-top:clamp(52px,8vw,84px);padding-top:clamp(28px,4vw,42px);border-top:1px solid var(--hair)}.project-section-title{margin:0;font-family:var(--font-display);font-weight:600;font-size:clamp(1.35rem,2.8vw,1.9rem);line-height:1.14;color:var(--text)}.project-detail-prose{margin-top:18px}.project-detail-prose p{margin:0 0 16px;max-width:74ch;font-size:1rem;line-height:1.78;color:var(--text-dim)}.project-detail-prose p:last-child{margin-bottom:0}.project-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.72fr);gap:clamp(22px,4vw,36px);margin-top:clamp(34px,5vw,52px)}.project-detail-panel{border:1px solid var(--ink-700);border-radius:12px;padding:clamp(22px,3vw,30px);background:var(--ink-850)}.project-stack{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 0;padding:0;list-style:none}.project-stack li{font-family:var(--font-mono);font-size:.71rem;letter-spacing:.03em;color:var(--machine);border:1px solid rgba(111,177,166,.32);border-radius:999px;padding:4px 12px}.project-meta{display:grid;gap:16px;margin:26px 0 0}.project-meta div{min-width:0}.project-meta dt{font-family:var(--font-mono);font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--text-mute)}.project-meta dd{margin:6px 0 0;color:var(--text-dim);line-height:1.55;overflow-wrap:anywhere}.project-meta a{color:var(--text);border-bottom:1px solid var(--hair-strong);transition:color .2s ease,border-color .2s ease}.project-meta a:hover{color:var(--claude);border-color:var(--claude)}.exeter-page{max-width:var(--maxw);margin:0 auto;padding:clamp(118px,16vh,168px) clamp(16px,4vw,40px) clamp(72px,12vh,120px)}.exeter-hero{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);align-items:center;gap:clamp(30px,5vw,64px)}.exeter-hero-copy{min-width:0;max-width:740px}.exeter-title{margin:18px 0 0;font-family:var(--font-display);font-weight:600;font-size:clamp(2.2rem,5.2vw,3.5rem);line-height:1.02;letter-spacing:-.018em;color:var(--text)}.exeter-status{margin:10px 0 0;font-family:var(--font-mono);font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--claude-bright)}.exeter-dek{margin:20px 0 0;max-width:64ch;font-size:1.02rem;line-height:1.75;color:var(--text-dim)}.exeter-visual{min-width:0;border:1px solid var(--ink-700);border-radius:14px;padding:clamp(18px,3vw,28px);background:radial-gradient(440px 240px at 14% 10%,rgba(111,177,166,.16),transparent 68%),radial-gradient(420px 220px at 100% 100%,rgba(217,119,87,.14),transparent 70%),linear-gradient(180deg,var(--ink-800),var(--ink-850));box-shadow:0 24px 58px #00000061,inset 0 0 0 1px #ece3d408}.exeter-visual-bar{display:flex;justify-content:space-between;gap:16px;padding-bottom:16px;border-bottom:1px solid var(--hair);font-family:var(--font-mono);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-mute)}.exeter-visual-bar strong{color:var(--machine)}.exeter-workflow{display:grid;grid-template-columns:minmax(0,.72fr) auto minmax(0,1fr);align-items:center;gap:clamp(14px,2.6vw,24px);min-height:310px;padding-top:22px}.exeter-workflow-card{border:1px solid rgba(217,119,87,.36);border-radius:12px;padding:18px;background:#d977571a}.exeter-workflow-card span{display:block;font-family:var(--font-mono);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--claude-bright)}.exeter-workflow-card strong{display:block;margin-top:12px;font-family:var(--font-display);font-size:clamp(1.15rem,2.3vw,1.6rem);line-height:1.12;color:var(--text)}.exeter-flow{display:grid;gap:12px}.exeter-flow span{display:block;width:34px;height:1px;background:linear-gradient(90deg,var(--claude),var(--machine))}.exeter-flow span:after{content:"";display:block;width:7px;height:7px;margin-left:auto;border-top:1px solid var(--machine);border-right:1px solid var(--machine);transform:translate(2px,-3px) rotate(45deg)}.exeter-solution-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.exeter-solution-grid span{display:grid;place-items:center;min-height:58px;border:1px solid rgba(111,177,166,.28);border-radius:10px;padding:10px;background:#6fb1a614;font-family:var(--font-mono);font-size:.72rem;line-height:1.35;text-align:center;color:var(--text)}.exeter-section{margin-top:clamp(52px,8vw,84px);padding-top:clamp(28px,4vw,42px);border-top:1px solid var(--hair)}.exeter-section-title{margin:0;font-family:var(--font-display);font-weight:600;font-size:clamp(1.35rem,2.8vw,1.95rem);line-height:1.14;color:var(--text)}.exeter-prose{margin-top:18px}.exeter-prose p{margin:0 0 16px;max-width:74ch;font-size:1rem;line-height:1.78;color:var(--text-dim)}.exeter-prose p:last-child{margin-bottom:0}.exeter-steps{counter-reset:none;list-style:none;margin:24px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.exeter-steps li{min-width:0;border:1px solid var(--ink-700);border-radius:12px;padding:18px;background:var(--ink-850)}.exeter-steps span{display:inline-flex;font-family:var(--font-mono);font-size:.72rem;font-weight:700;letter-spacing:.08em;color:var(--machine)}.exeter-steps strong{display:block;margin-top:12px;font-size:.98rem;line-height:1.35;color:var(--text)}.exeter-steps p{margin:10px 0 0;font-size:.88rem;line-height:1.62;color:var(--text-dim)}.exeter-grid-section{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.48fr);gap:clamp(24px,4vw,38px)}.exeter-use-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:24px}.exeter-use-card,.exeter-panel,.exeter-faq{min-width:0;border:1px solid var(--ink-700);border-radius:12px;padding:18px;background:var(--ink-850)}.exeter-use-card h3,.exeter-faq h3{margin:0;font-family:var(--font-mono);font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--claude-bright)}.exeter-use-card ul,.exeter-principles{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:9px}.exeter-use-card li,.exeter-principles li{position:relative;padding-left:20px;font-size:.9rem;line-height:1.55;color:var(--text-dim)}.exeter-use-card li:before,.exeter-principles li:before{content:"▸";position:absolute;left:0;color:var(--machine);font-family:var(--font-mono)}.exeter-panel{align-self:start;background:radial-gradient(340px 160px at 100% 0%,rgba(217,119,87,.11),transparent 70%),var(--ink-850)}.exeter-faqs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:24px}.exeter-faq p{margin:12px 0 0;font-size:.91rem;line-height:1.62;color:var(--text-dim)}.site-footer{border-top:1px solid var(--hair);padding:28px 20px;text-align:center}.site-footer p{margin:0;font-family:var(--font-mono);font-size:.74rem;letter-spacing:.05em;color:var(--text-mute)}.site-footer .wink{color:var(--text-dim)}@media(max-width:940px){.hero{grid-template-columns:1fr;gap:36px;padding-top:clamp(116px,16vh,150px)}.loop{grid-template-columns:repeat(2,1fr)}.project-card,.project-detail-hero,.project-detail-grid,.exeter-hero,.exeter-grid-section{grid-template-columns:1fr}.project-card{align-items:start}.exeter-steps,.exeter-faqs{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:820px){.site-nav{gap:14px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.site-nav::-webkit-scrollbar{display:none}.nav-link,.nav-menu-trigger{font-size:.66rem;letter-spacing:.1em}.nav-menu-panel{position:fixed;top:60px;left:16px;right:16px;width:auto}.nav-menu-panel:before{display:none}.brand{font-size:.7rem;letter-spacing:.06em}}@media(max-width:640px){.site-header-inner{flex-direction:column;align-items:flex-start;justify-content:center;height:auto;min-height:82px;padding-top:12px;padding-bottom:12px}.site-nav{width:100%}.nav-menu-panel{top:92px}.loop,.stack-grid,.awards-grid{grid-template-columns:1fr}.project-meal-visual{grid-template-columns:1fr;min-height:auto}.project-visual--meal{min-height:auto}.meal-phone{max-width:290px;width:100%;justify-self:center}.meal-aisle{grid-template-columns:1fr}.project-actions .button{width:100%}.exeter-workflow{grid-template-columns:1fr;min-height:auto}.exeter-flow{grid-template-columns:repeat(3,1fr)}.exeter-flow span{width:auto}.exeter-flow span:after{display:none}.exeter-solution-grid,.exeter-steps,.exeter-use-grid,.exeter-faqs{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-delay:0ms!important;animation-iteration-count:1!important}.term-line{opacity:1;transform:none}.term-cursor{opacity:1}}.planfile{margin:0;background:linear-gradient(180deg,var(--ink-800),var(--ink-850));border:1px solid var(--ink-700);border-radius:12px;box-shadow:0 24px 56px #00000073,0 0 0 1px #6fb1a60d;overflow:hidden;font-family:var(--font-mono)}.planfile-caption{padding:14px 16px;font-size:.78rem;font-weight:600;line-height:1.5;color:var(--text);border-bottom:1px solid var(--hair)}.planfile-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:12px 16px;background:#00000038;border-bottom:1px solid var(--hair)}.planfile-dot{width:9px;height:9px;border-radius:50%;background:var(--claude);box-shadow:0 0 10px #d97757b3;flex-shrink:0}.planfile-name{flex:1 1 15ch;min-width:0;overflow-wrap:anywhere;font-size:.78rem;letter-spacing:.04em;color:var(--text)}.planfile-status{max-width:100%;margin-left:auto;font-size:.68rem;letter-spacing:.04em;color:var(--text-dim);text-align:right;overflow-wrap:anywhere}.planfile-body{list-style:none;margin:0;padding:14px clamp(14px,2vw,20px) 18px;display:grid;gap:6px;font-size:.84rem;line-height:1.5}.planfile-row{display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:baseline;gap:12px;padding:4px 0;opacity:0;transform:translateY(6px);animation:term-in .5s ease forwards}.planfile-row:nth-child(1){animation-delay:.35s}.planfile-row:nth-child(2){animation-delay:.55s}.planfile-row:nth-child(3){animation-delay:.75s}.planfile-row:nth-child(4){animation-delay:.95s}.planfile-row:nth-child(5){animation-delay:1.15s}.planfile-row:nth-child(6){animation-delay:1.35s}.planfile-box{color:var(--text-dim);font-weight:700}.planfile-row.is-done .planfile-box{color:var(--add)}.planfile-id{color:var(--machine);font-weight:700;letter-spacing:.06em}.planfile-title{color:var(--text);overflow-wrap:anywhere}.planfile-row.is-done .planfile-title{color:var(--text-dim)}.planfile-compact .planfile-body{font-size:.8rem;padding:12px 16px 14px}.method-grid{display:grid;grid-template-columns:minmax(0,1fr);max-width:760px;align-items:center;gap:clamp(32px,5vw,64px)}.method-copy{min-width:0}.method-steps{list-style:none;margin:clamp(26px,4vw,38px) 0;padding:0;display:grid;gap:18px}.method-step{position:relative;padding-left:18px}.method-step:before{content:"";position:absolute;left:0;top:4px;bottom:4px;width:2px;border-radius:2px;background:var(--hair-strong)}.method-step.accent-claude:before{background:var(--claude)}.method-step.accent-machine:before{background:var(--machine)}.method-step-name{display:block;font-family:var(--font-mono);font-size:.82rem;font-weight:700;letter-spacing:.04em;color:var(--text)}.method-step-gloss{display:block;margin-top:5px;font-size:.92rem;line-height:1.6;color:var(--text-dim)}.method-cta{margin-top:4px}.wf{max-width:760px;margin:0 auto;padding:clamp(118px,16vh,168px) clamp(16px,4vw,40px) clamp(72px,12vh,120px)}.wf-header .eyebrow{margin-bottom:18px}.wf-title{margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;font-family:var(--font-mono);font-weight:600;font-size:clamp(1.15rem,3vw,1.7rem);line-height:1.25;letter-spacing:-.02em;color:var(--text)}.wf-command{min-width:0;display:grid;gap:14px;padding-top:18px;border-top:1px solid var(--hair-strong)}.wf-command-host{display:flex;align-items:center;gap:10px;font-family:var(--font-body);font-size:.9rem;font-weight:500;letter-spacing:0;color:var(--text-dim)}.wf-command-host>span{display:flex}.wf-command-icon{width:24px;height:24px}.wf-command--claude .wf-command-icon{color:var(--claude)}.wf-command--codex .wf-command-icon{color:var(--machine)}.wf-command code{font:inherit;white-space:nowrap}.wf-subtitle{margin:16px 0 0;font-family:var(--font-display);font-style:italic;font-size:clamp(1.1rem,2.4vw,1.45rem);line-height:1.3;color:var(--claude)}.wf-dek{margin:20px 0 0;max-width:60ch;font-size:1.02rem;line-height:1.75;color:var(--text-dim)}.wf-command-hosts,.wf-local-builder{margin:18px 0 0;font-size:.92rem;line-height:1.7;color:var(--text-dim)}.wf-local-builder{display:flex;align-items:center;gap:10px}.wf-local-builder img{flex-shrink:0;object-fit:contain}.wf-local-builder strong{font-weight:500;color:var(--text)}.wf-hero-art{margin:clamp(32px,5vw,48px) 0}.wf-lede p{font-size:1.12rem;line-height:1.8;color:var(--text);max-width:64ch}.wf-section{margin-top:clamp(44px,6vw,64px)}.wf-process{list-style:none;margin:clamp(28px,4vw,40px) 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:16px}.wf-process li{min-width:0;padding-top:12px;border-top:2px solid var(--machine);font-family:var(--font-mono);font-size:.82rem;line-height:1.6;color:var(--text);overflow-wrap:anywhere}.wf-process li:nth-child(-n+2){border-top-color:var(--claude)}.wf-process small{display:block;margin-top:6px;font-family:var(--font-body);font-size:.78rem;color:var(--text-dim)}.wf-h2{margin:0 0 18px;font-family:var(--font-display);font-weight:600;font-size:clamp(1.45rem,3vw,2rem);line-height:1.15;letter-spacing:-.01em;color:var(--text);scroll-margin-top:88px}.wf-conventions{list-style:none;margin:22px 0 0;padding:0;display:grid;gap:14px}.wf-conventions li{position:relative;padding-left:20px;font-size:.98rem;line-height:1.7;color:var(--text-dim)}.wf-conventions li:before{content:"▸";position:absolute;left:0;top:0;font-family:var(--font-mono);color:var(--machine)}.wf-conv-term{font-family:var(--font-mono);font-size:.86em;font-weight:700;letter-spacing:.02em;color:var(--machine);overflow-wrap:anywhere}.wf-conv-gloss{color:var(--text-dim)}.wf-skill{margin-top:clamp(46px,7vw,72px);padding-top:clamp(28px,4vw,40px);border-top:1px solid var(--hair)}.wf-skill.accent-claude{border-top-color:#d9775752}.wf-skill.accent-machine{border-top-color:#6fb1a64d}.wf-skill-head{display:flex;flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:18px}.wf-skill-name{display:inline-flex;align-items:center;font-family:var(--font-mono);font-size:.72rem;font-weight:700;letter-spacing:.08em;padding:4px 11px;border-radius:999px;border:1px solid var(--hair-strong);color:var(--text-dim)}.wf-skill.accent-claude .wf-skill-name{color:var(--claude-bright);border-color:#d9775766;background:#d977571a}.wf-skill.accent-machine .wf-skill-name{color:var(--machine);border-color:#6fb1a666;background:#6fb1a61a}.wf-skill-head .wf-h2{margin:0}.wf-code{margin:22px 0}.wf-code pre{margin:0;overflow-x:auto;padding:clamp(16px,2.5vw,22px);background:var(--ink-900);border:1px solid var(--ink-700);border-radius:10px;font-family:var(--font-mono);font-size:.82rem;line-height:1.7;color:var(--text)}.wf-code code{font-family:inherit;white-space:pre}.wf-code figcaption{margin-top:10px;font-family:var(--font-mono);font-size:.72rem;letter-spacing:.04em;color:var(--text-dim)}.wf-prompt{color:var(--claude);font-weight:700}.wf-steps-lead{margin:18px 0 12px;font-size:.98rem;font-weight:500;color:var(--text)}.wf-steps{counter-reset:wf-step;list-style:none;margin:0;padding:0;display:grid;gap:12px}.wf-steps li{counter-increment:wf-step;position:relative;padding-left:38px;font-size:.98rem;line-height:1.65;color:var(--text-dim)}.wf-steps li:before{content:counter(wf-step);position:absolute;left:0;top:0;display:grid;place-items:center;width:24px;height:24px;font-family:var(--font-mono);font-size:.74rem;font-weight:700;color:var(--machine);border:1px solid rgba(111,177,166,.35);border-radius:6px}.wf-loop li:before{content:"▸";border:none;width:auto;height:auto;color:var(--claude);font-size:1rem}.wf-callout{margin:18px 0;padding:14px 18px;border-left:3px solid var(--machine);border-radius:0 8px 8px 0;background:#6fb1a612;font-size:.96rem;line-height:1.65;color:var(--text-dim)}.wf-lead{margin:0 0 20px;max-width:68ch;font-size:1rem;line-height:1.7;color:var(--text-dim)}.wf-table-wrap{max-width:100%;margin:8px 0 22px;overflow-x:auto;border:1px solid var(--hair);border-radius:12px}.wf-table{width:100%;min-width:36rem;border-collapse:collapse;font-size:.9rem;line-height:1.6}.wf-table caption{padding:13px 16px;text-align:left;color:var(--text-dim)}.wf-table code{font-family:var(--font-mono);font-size:.9em;overflow-wrap:anywhere}.wf-table th,.wf-table td{padding:13px 16px;text-align:left;vertical-align:top;border-bottom:1px solid var(--hair)}.wf-table thead th{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim);background:#0003}.wf-table thead th.wf-th-impl{color:var(--machine)}.wf-table thead th.wf-th-auto{color:var(--claude-bright)}.wf-table tbody th{font-family:var(--font-body);font-weight:600;color:var(--text);overflow-wrap:anywhere}.wf-table tbody td{color:var(--text-dim)}.wf-table tbody tr:last-child th,.wf-table tbody tr:last-child td{border-bottom:none}.wf-closing{list-style:none;margin:22px 0;padding:0;display:grid;gap:14px}.wf-closing li{position:relative;padding-left:28px;font-size:.98rem;line-height:1.65;color:var(--text-dim)}.wf-closing li:before{content:"✓";position:absolute;left:0;top:0;font-family:var(--font-mono);font-weight:700;color:var(--machine)}.wf-closing-name{font-family:var(--font-mono);font-weight:700;color:var(--claude-bright)}.wf-end{display:flex;flex-wrap:wrap;gap:14px;margin-top:clamp(40px,6vw,60px);padding-top:clamp(28px,4vw,38px);border-top:1px solid var(--hair)}@media(max-width:940px){.method-grid{grid-template-columns:1fr;gap:32px}}@media(max-width:560px){.wf-title{grid-template-columns:1fr;gap:20px}.wf-process{grid-template-columns:1fr}.wf-end .button{width:100%}}@media(prefers-reduced-motion:reduce){.planfile-row{opacity:1;transform:none}}
