.project-shell{width:min(1200px,calc(100% - 3rem));margin-inline:auto;padding-block:calc(var(--header-height,80px) + 2rem) 5rem;min-width:0}.project-shell .breadcrumbs{display:flex;flex-wrap:wrap;gap:.6rem;font-size:.84rem;color:#caba9f;margin-bottom:2.5rem}.project-shell a{color:#ffd28b;text-underline-offset:.2em}.project-shell a:hover{color:#fff5e7}.project-shell :where(a,pre):focus-visible{outline:3px solid #ffd28b;outline-offset:5px}.project-shell :where(h1,h2,h3,p,li,dd,a,code){overflow-wrap:anywhere}.project-shell :where(h1,h2,h3){color:#fff5e7;line-height:1.1}.project-intro{padding-block:1rem 2.5rem;border-bottom:1px solid #665035}.projects-page .project-intro h1{font-size:clamp(2.7rem,5.5vw,5rem);letter-spacing:-.045em;max-width:18ch;margin:.6rem 0 1.25rem;text-transform:none}.project-lead{font-size:clamp(1.1rem,1.6vw,1.35rem);line-height:1.65;max-width:64ch;color:#e5d7c4}.project-meta-line{display:flex;flex-wrap:wrap;gap:.75rem 1.5rem;margin-top:1.5rem;color:#d5c2a6;font-size:.85rem}.project-status{color:#ffda9e;font-size:.8rem;font-weight:700;letter-spacing:.015em}.project-shell .button-row{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.8rem}.project-shell .button{white-space:normal;height:auto;min-height:48px;text-align:center}.project-toc{display:flex;flex-wrap:wrap;gap:.65rem;padding-block:1.5rem}.project-toc a{display:flex;align-items:center;gap:.8rem;padding:.75rem 1rem;border:1px solid #665035;background:#1e160e;text-decoration:none;min-height:44px;font-size:.88rem}.project-toc a:hover{border-color:#ffcc83;background:#352516}.project-text-link{display:inline-block;font-weight:700;padding-block:.65rem;margin-top:auto}.project-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(230px,290px);gap:3rem;align-items:start}.project-detail-main,.project-sidebar{min-width:0}.project-section{padding-block:2rem;border-bottom:1px solid #53412d;scroll-margin-top:calc(var(--header-height,80px) + 1.5rem)}.project-section h2{font-size:clamp(1.8rem,3vw,2.5rem);margin:.5rem 0 1.25rem}.project-section h3{font-size:1.2rem;margin:1.5rem 0 .75rem}.project-section :where(p,li,dd){color:#e0cfb6;line-height:1.75}.project-section p{margin-block:1rem}.project-section ul{padding-inline-start:1.25rem}.project-section li{margin-block:.7rem;padding-inline-start:.2rem}.project-feature-list li::marker{color:#ffd28b}.project-figure{margin:0;border:1px solid #665035;background:#17110b}.project-figure>a{display:block}.project-figure img{display:block;max-width:100%;width:100%;height:auto}.project-figure figcaption{padding:1rem;color:#d5c2a6;font-size:.85rem;line-height:1.65}.project-notice,.project-panel{padding:1.5rem;background:#20180f;border:1px solid #715735;margin-block:1.5rem}.project-notice h3{margin-top:0}.project-panel h2{font-size:1.45rem;margin:.5rem 0 1rem}.project-panel p{color:#e0cfb6;line-height:1.7}.project-code{white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;font-size:.82rem;line-height:1.85;padding:1.25rem;border:1px solid #7c6242;background:#0c0c0b;color:#fae7c9;max-width:100%;tab-size:2}.project-code code{font-family:ui-monospace,Consolas,monospace}.project-facts{margin:0}.project-facts>div{padding-block:.85rem;border-bottom:1px solid #57452f}.project-facts dt{font-size:.76rem;font-weight:700;color:#edba72;margin-bottom:.4rem}.project-facts dd{margin:0;font-size:.92rem;color:#e0cfb6;line-height:1.6}.project-facts code{font-size:.8rem}.project-shell .project-resource-list{list-style:none;padding:0}.project-resource-list li{padding:.75rem 0;border-bottom:1px solid #57452f;margin:0}.project-resource-list a{display:inline-block;padding-block:.2rem}.project-resource-list p{font-size:.8rem;margin:.4rem 0}@media(max-width:960px){.project-detail-grid{grid-template-columns:1fr;gap:1rem}.project-sidebar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.project-sidebar .project-panel{margin-block:1rem}}@media(max-width:760px){.project-shell{width:calc(100% - 2rem)}.project-sidebar{grid-template-columns:1fr}.project-intro{padding-top:0}.project-shell .button-row{flex-direction:column;align-items:stretch}.project-shell .button{width:100%}.project-meta-line{gap:.75rem}.project-toc{gap:.5rem}.project-toc a{padding:.6rem .75rem}}@media print{.projects-page .site-header,.projects-page .site-footer,.project-toc,.project-sidebar{display:none}.project-shell{width:100%;padding:0}.project-detail-grid{display:block}.project-section,.project-figure{break-inside:avoid}}
