@layer components{.project-page{padding-block:var(--space-16)}.project-page .project-hero{max-width:58rem}.project-page .project-eyebrow{align-items:center;gap:var(--space-3);color:var(--accent-ink);font:var(--text-xs) var(--font-mono);margin-bottom:var(--space-6);flex-wrap:wrap;display:flex}.project-page h1{letter-spacing:var(--tracking-hero);font-size:clamp(2.4rem,5.2vw,4.4rem);line-height:1.1}.project-page h1>span{background:var(--hero-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.project-page h2{font-size:clamp(1.4rem,2.6vw,1.9rem);line-height:var(--leading-snug);letter-spacing:var(--tracking-tight)}.project-page h3{font-size:var(--text-xl);line-height:var(--leading-snug);letter-spacing:var(--tracking-tight)}.project-page h4{font:600 var(--text-base)/var(--leading-snug) var(--font-body)}.project-page .project-lead{max-width:46rem;margin-top:var(--space-6);font-size:var(--text-lg);line-height:var(--leading-prose);color:var(--ink-body);text-wrap:pretty}.project-page .project-intro{max-width:44rem;margin-top:var(--space-4);color:var(--ink-muted);font-size:var(--text-md);line-height:var(--leading-prose)}.project-page .project-jumps{gap:var(--space-2);margin-top:var(--space-8);flex-wrap:wrap;display:flex}.project-page .project-jumps a{min-height:44px;padding:var(--space-2) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-pill);font-size:var(--text-base);color:var(--ink-body);align-items:center;text-decoration:none;display:inline-flex}.project-page .project-jumps a:hover{color:var(--accent-ink);background:var(--accent-soft);border-color:var(--accent-ink)}.project-page .project-position{gap:var(--space-12);border-block:1px solid var(--border);padding-block:var(--space-8);margin-top:var(--space-12);grid-template-columns:1fr 1.25fr;display:grid}.project-page .project-kicker{font:var(--text-xs)/var(--leading-body) var(--font-mono);color:var(--accent-ink);margin-bottom:var(--space-3)}.project-page .project-copy{color:var(--ink-muted);font-size:var(--text-base);line-height:var(--leading-prose)}.project-page .project-copy p+p{margin-top:var(--space-4)}.project-page .project-section{margin-block:var(--space-16);min-width:0}.project-page .project-section-intro{max-width:48rem;margin-top:var(--space-4);font-size:var(--text-base);line-height:var(--leading-prose);color:var(--ink-muted)}.project-page .project-featured{gap:var(--space-10);margin-top:var(--space-8);border:1px solid var(--border-strong);border-radius:var(--radius-xl);background:var(--panel-bg);grid-template-columns:1.4fr 1fr;padding:clamp(1.25rem,3vw,2.5rem);display:grid}.project-page .project-featured h3{font-size:var(--text-2xl)}.project-page .project-featured p:not(.project-kicker){font-size:var(--text-base);line-height:var(--leading-prose);margin-top:var(--space-4)}.project-page .project-featured .project-featured-why{color:var(--ink-muted)}.project-page .project-featured-side{padding:var(--space-5);background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-lg)}.project-page .project-loop{counter-reset:product-step;padding:0;list-style:none}.project-page .project-loop li{column-gap:var(--space-3);margin-top:var(--space-4);counter-increment:product-step;grid-template-columns:1.5rem minmax(0,1fr);display:grid}.project-page .project-loop li:before{content:counter(product-step, decimal-leading-zero);font:var(--text-xs)/var(--leading-body) var(--font-mono);color:var(--accent-ink);padding-top:var(--space-1);grid-row:span 2}.project-page .project-loop strong{font-size:var(--text-base);color:var(--ink);font-weight:500}.project-page .project-loop span{color:var(--ink-muted);font-size:var(--text-sm)}.project-page .project-button{justify-content:center;align-items:center;gap:var(--space-4);max-width:100%;min-height:44px;margin-top:var(--space-6);padding:var(--space-3) var(--space-5);border-radius:var(--radius-pill);background:var(--action-bg);color:var(--action-ink);font-size:var(--text-base);font-weight:500;text-decoration:none;display:inline-flex}.project-page .project-button:hover{background:var(--action-hover)}.project-page .project-grid{gap:var(--space-5);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.project-page .project-sketches{margin-top:var(--space-5);align-items:start}.project-page .project-card{border:1px solid var(--border);border-radius:var(--radius-xl);background:var(--surface-raised);min-width:0;padding:clamp(1.25rem,2.5vw,1.75rem)}.project-page .project-card>p:not(.project-kicker){margin-top:var(--space-3);color:var(--ink-muted);font-size:var(--text-base);line-height:var(--leading-prose)}.project-page .project-card>details{margin-top:var(--space-5)}.project-page .project-detail{font-size:var(--text-base);line-height:var(--leading-prose);color:var(--ink-muted);padding-top:var(--space-2)}.project-page .project-detail p+h4{margin-top:var(--space-5)}.project-page .project-detail p+p{margin-top:var(--space-4)}.project-page .project-detail h4+p{margin-top:var(--space-2)}.project-page .project-detail strong{color:var(--ink);font-weight:600}.project-page .project-detail a,.project-page .project-text-link,.project-page .project-back,.project-page .project-sources a{color:var(--accent-ink);text-underline-offset:4px}.project-page .project-bar{gap:var(--space-6);margin-top:var(--space-8);grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;display:grid}.project-page .project-bar-item{min-width:0;padding-top:var(--space-5);border-top:1px solid var(--border)}.project-page .project-bar-title{gap:var(--space-4);margin-bottom:var(--space-4);display:flex}.project-page .project-number{color:var(--accent-ink);font:var(--text-xs)/var(--leading-prose) var(--font-mono);flex:none}.project-page .project-bar-title>.project-number{padding-top:var(--space-1)}.project-page .project-bar-title h3{font-size:var(--text-lg)}.project-page .project-bar-title p{color:var(--ink-muted);font-size:var(--text-base);margin-top:var(--space-1)}.project-page .project-disclosure-copy{color:var(--ink-muted);font-size:var(--text-base);line-height:var(--leading-prose)}.project-page .project-chaos-callout{border:1px solid var(--border);border-left:3px solid var(--color-primary);border-radius:var(--radius-xl);background:var(--panel-bg);padding:clamp(1.25rem,3vw,2.5rem)}.project-page .project-chaos-callout>p:not(.project-kicker){max-width:48rem;margin-top:var(--space-4);color:var(--ink-muted);font-size:var(--text-base);line-height:var(--leading-prose)}.project-page .project-text-link{padding-block:var(--space-3);margin-top:var(--space-3);font-size:var(--text-base);display:inline-block}.project-page .project-evidence{gap:var(--space-6) var(--space-10);margin-top:var(--space-8);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.project-page .project-evidence>div{gap:var(--space-4);display:flex}.project-page .project-evidence h3{font-size:var(--text-lg)}.project-page .project-evidence p{color:var(--ink-muted);font-size:var(--text-base);line-height:var(--leading-prose);margin-top:var(--space-2)}.project-page .project-small{color:var(--ink-muted);font-size:var(--text-sm);line-height:var(--leading-prose)}.project-page .project-back{padding-block:var(--space-3);margin-bottom:var(--space-8);font-size:var(--text-base);display:inline-block}.project-page .project-two-up{gap:var(--space-5);margin-top:var(--space-6);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.project-page .project-list{padding-left:var(--space-5);margin-top:var(--space-4);color:var(--ink-muted);font-size:var(--text-base);line-height:var(--leading-prose)}.project-page .project-list li+li{margin-top:var(--space-3)}.project-page .project-architecture{margin-top:var(--space-6);border:1px solid var(--border);border-radius:var(--radius-xl);grid-template-columns:repeat(4,minmax(0,1fr));padding:0;list-style:none;display:grid;overflow:hidden}.project-page .project-architecture li{min-width:0;padding:var(--space-5);background:var(--surface-raised)}.project-page .project-architecture li+li{border-left:1px solid var(--border)}.project-page .project-architecture h3{margin-top:var(--space-3);font-size:var(--text-lg)}.project-page .project-architecture p{margin-top:var(--space-3);color:var(--ink-muted);font-size:var(--text-base);line-height:var(--leading-prose)}.project-page .project-contracts{gap:var(--space-3);margin-top:var(--space-6);grid-template-columns:minmax(0,1fr);display:grid}.project-page .project-requirements{gap:var(--space-3);margin-top:var(--space-6);grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;display:grid}.project-page .project-milestones{margin-top:var(--space-6);padding:0;list-style:none}.project-page .project-milestones li{gap:var(--space-4);padding-block:var(--space-6);border-top:1px solid var(--border);grid-template-columns:2rem minmax(0,1fr);display:grid}.project-page .project-milestones p{max-width:51rem;margin-top:var(--space-3);color:var(--ink-muted);font-size:var(--text-base);line-height:var(--leading-prose)}.project-page .project-milestones .project-done{padding-left:var(--space-4);border-left:2px solid var(--border-strong)}.project-page .project-done strong{color:var(--ink);font-weight:500}.project-page .project-demo{max-width:49rem;padding-left:var(--space-5);margin-top:var(--space-6);color:var(--ink-muted);font-size:var(--text-base);line-height:var(--leading-prose)}.project-page .project-demo li+li{margin-top:var(--space-4)}.project-page .project-demo strong{color:var(--ink);font-weight:500}.project-page .project-sources ul{gap:var(--space-6);margin-top:var(--space-6);font-size:var(--text-base);grid-template-columns:repeat(2,minmax(0,1fr));padding:0;list-style:none;display:grid}.project-page .project-sources p{margin-top:var(--space-2);color:var(--ink-muted);line-height:var(--leading-prose)}.project-page summary,.project-page h2,.project-page h3,.project-page .project-detail,.project-page .project-loop,.project-page .project-demo,.project-page .project-button{overflow-wrap:anywhere}@media (width<=64rem){.project-page .project-grid{grid-template-columns:minmax(0,1fr)}.project-page .project-architecture{grid-template-columns:repeat(2,minmax(0,1fr))}.project-page .project-architecture li:nth-child(3){border-left:0}.project-page .project-architecture li:nth-child(n+3){border-top:1px solid var(--border)}}@media (width<=48rem){.project-page{padding-block:var(--space-10)}.project-page .project-position,.project-page .project-featured,.project-page .project-bar,.project-page .project-two-up,.project-page .project-requirements,.project-page .project-evidence,.project-page .project-sources ul{gap:var(--space-5);grid-template-columns:minmax(0,1fr)}.project-page .project-lead{font-size:var(--text-md)}.project-page .project-section{margin-block:var(--space-12)}}@media (width<=30rem){.project-page .project-architecture{grid-template-columns:minmax(0,1fr)}.project-page .project-architecture li+li{border-left:0;border-top:1px solid var(--border)}}}
