/* Focused refinements of the existing workshop, using its paper/ink/accent tokens. */
.hero-contact { font-size:.875rem; }
.proof-links { display:flex; align-items:center; flex-wrap:wrap; gap:8px 20px; margin:18px 0 0; font-size:.8125rem; }
.proof-links>span { color:var(--muted); font-family:Consolas,'Courier New',monospace; font-size:.6875rem; }
.scope-note { margin:20px 0 0; max-width:72ch; font-size:.875rem; color:var(--muted); }
.scope-note a { display:inline-block; color:var(--ink); }
.buyer-faq { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.6fr); gap:48px; margin-top:38px; padding-top:32px; border-top:1px solid var(--line); }
.buyer-faq h3 { font-family:Georgia,'Times New Roman',serif; font-size:clamp(1.5rem,2.2vw,2rem); line-height:1.2; letter-spacing:-.035em; max-width:16ch; margin-bottom:14px; }
.buyer-faq>div>p:not(.eyebrow),.buyer-faq>div>a { font-size:.875rem; line-height:1.65; }
.buyer-faq>div>p:not(.eyebrow) { color:var(--muted); max-width:30ch; }
.buyer-answers details { border-bottom:1px solid var(--line); }
.buyer-answers summary { display:flex; align-items:center; justify-content:space-between; gap:16px; list-style:none; padding:15px 0; min-height:48px; font-size:1rem; font-weight:600; cursor:pointer; }
.buyer-answers summary::-webkit-details-marker { display:none; }
.buyer-answers summary::after { content:'+'; color:var(--accent); font:1.375rem/1 monospace; flex-shrink:0; }
.buyer-answers details[open]>summary::after { content:'−'; }
.buyer-answers details p { font-size:.9375rem; line-height:1.7; max-width:65ch; margin:0 24px 20px 0; color:var(--muted); }
.project-context { display:grid; grid-template-columns:1fr 1fr; gap:20px; margin:22px 0 26px; padding-block:16px; border-block:1px solid var(--line); }
.project-context>div { min-width:0; }
.project-context dt { font:700 .6875rem/1.5 Consolas,'Courier New',monospace; color:var(--muted); margin-bottom:6px; }
.project-context dd { margin:0; font-size:.875rem; line-height:1.55; }
.project-next-step { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:24px; padding:28px 0; margin-top:36px; border-block:1px solid var(--line); }
.project-next-step h2 { font-size:clamp(1.75rem,3vw,2.5rem); margin-bottom:12px; }
.project-next-step p { max-width:55ch; margin-bottom:0; }
.project-next-step .eyebrow { margin-bottom:12px; }
.site-header nav>a,.project-menu>summary { display:inline-flex; align-items:center; min-height:44px; }
.theme-control { min-width:44px; min-height:44px; }
.case-chapters button,.case-select>a,.feedback-select button,.press-filters button,.work-filters button { min-height:44px; }
.project-menu>div a { display:flex; align-items:center; min-height:44px; }
.hero-actions { flex-wrap:wrap; }
.hero-actions>a { max-width:100%; }
.site-header nav { min-width:0; flex-wrap:wrap; }
.email-row>a { overflow-wrap:anywhere; }
.service-panel,.case-page,.page-intro,.page-body { overflow-wrap:break-word; }
.service-select a,.service-select strong { min-width:0; }
.service-select strong { overflow-wrap:anywhere; }
.service-sign { flex-shrink:0; }
.workshop-home,.reading-page { overflow-wrap:anywhere; }
.project-archive>summary>span:first-child { min-width:0; flex:1 1 220px; }
.copy-email { width:auto; min-width:44px; min-height:44px; padding:8px; }
[role="tabpanel"]:focus-visible { outline:2px solid var(--accent); outline-offset:3px; }
@media(max-width:650px) {
 .buyer-faq { grid-template-columns:1fr; gap:20px; margin-top:28px; padding-top:24px; }
 .buyer-faq h3 { max-width:none; }
 .buyer-faq>div>p:not(.eyebrow) { max-width:none; }
 .buyer-answers summary { padding:14px 0; }
 .project-context { grid-template-columns:1fr; gap:12px; }
 .hero-contact { flex-basis:100%; }
 .project-next-step { gap:20px; }
 .project-archive>summary { flex-wrap:wrap; }
 .archive-action { white-space:normal; }
 .case-chapters { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
 .service-select { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .work-filters,.handover ol { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .person-evidence { grid-template-columns:110px minmax(0,1fr); }
 .workshop-home .press-entry { grid-template-columns:minmax(0,1fr) auto; }
}
@media(prefers-reduced-motion:reduce) {
 *,*::before,*::after { scroll-behavior:auto !important; transition:none !important; animation:none !important; }
}
