.guide-shell,.guide-home { width:min(1160px,calc(100% - 3rem)); margin-inline:auto; color:var(--text); }
.guide-breadcrumb { display:flex; flex-wrap:wrap; align-items:center; gap:.65rem; padding-block:1.5rem; color:var(--muted); font-size:.8rem; }
.guide-breadcrumb a { text-underline-offset:.2em; }
.guide-heading { padding:clamp(2rem,5vw,4.5rem) 0 3rem; border-bottom:1px solid var(--line); margin-bottom:2.5rem; }
.guide-kicker { margin:0 0 1rem; color:var(--accent); font-size:.72rem; font-weight:800; text-transform:uppercase; letter-spacing:.11em; }
.guide-heading h1 { max-width:21ch; font-size:clamp(2.35rem,5.1vw,4.5rem); font-weight:750; line-height:1.07; letter-spacing:-.045em; text-wrap:balance; }
.guide-intro { max-width:70ch; margin-top:1.5rem; font-size:1.12rem; color:var(--muted); line-height:1.8; }
.guide-meta { display:flex; flex-wrap:wrap; gap:.65rem 1.5rem; margin-top:1.75rem; font-size:.82rem; color:var(--muted); }
.guide-disclosure { margin:1rem 0 0; font-size:.8rem; color:var(--muted); }
.guide-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.2rem; }
.guide-card { min-width:0; display:flex; flex-direction:column; padding:1.65rem; border:1px solid var(--line); border-radius:var(--radius); background:var(--surface); }
.guide-card :is(h2,h3) { font-size:1.65rem; line-height:1.2; font-weight:700; letter-spacing:-.025em; }
.guide-card :is(h2,h3) a { text-decoration:none; }
.guide-card :is(h2,h3) a:hover { text-decoration:underline; text-underline-offset:.2em; }
.guide-card > p:not(.guide-kicker) { color:var(--muted); font-size:.94rem; line-height:1.75; }
.guide-card-link { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding-top:1.25rem; margin-top:auto; font-size:.85rem; font-weight:750; text-underline-offset:.25rem; }
.guide-layout { display:grid; grid-template-columns:250px minmax(0,1fr); grid-template-areas:"toc answer" "toc body"; align-items:start; column-gap:clamp(2rem,5vw,5rem); row-gap:0; margin-bottom:6rem; }
.guide-toc { grid-area:toc; position:sticky; top:100px; padding:1.4rem; border:1px solid var(--line); border-radius:var(--radius); background:var(--surface); }
.guide-toc nav > p { font-size:.75rem; text-transform:uppercase; letter-spacing:.1em; font-weight:800; }
.guide-toc ol { padding-left:1.2rem; margin:0 0 1.5rem; }
.guide-toc li { margin-bottom:.8rem; font-size:.84rem; line-height:1.5; }
.guide-toc a { text-underline-offset:.2rem; }
.guide-toc .btn { width:100%; font-size:.85rem; }
.guide-body { grid-area:body; min-width:0; max-width:800px; font-size:1rem; line-height:1.85; }
.guide-body > p,.guide-section > p,.guide-section li { color:var(--text); }
.guide-answer { grid-area:answer; padding:clamp(1.3rem,3vw,2rem); margin-bottom:2rem; border:1px solid var(--line); border-left:5px solid var(--accent); border-radius:var(--radius); background:var(--surface); }
.guide-answer > p:last-child { margin:0; font-size:1.08rem; line-height:1.85; }
.guide-section { padding-top:2.5rem; margin-top:2.5rem; border-top:1px solid var(--line); scroll-margin-top:100px; }
.guide-section h2,.guide-cta h2,.guide-related h2,.guide-hub-next h2 { font-size:clamp(1.6rem,2.5vw,2.2rem); line-height:1.2; font-weight:700; letter-spacing:-.025em; margin-bottom:1.1rem; }
.guide-section li { margin-bottom:.7rem; padding-left:.25rem; }
.guide-section ul,.guide-section ol { padding-left:1.35rem; }
.guide-link-row { display:flex; flex-wrap:wrap; gap:.6rem 1.5rem; margin-top:1.25rem; font-size:.9rem; font-weight:650; }
.guide-link-row a,.guide-sources a { text-underline-offset:.25em; }
.guide-table { max-width:100%; overflow-x:auto; margin:1.5rem 0; border:1px solid var(--line); border-radius:var(--radius); background:var(--surface); }
.guide-table:focus-visible,.guide-body a:focus-visible,.guide-toc a:focus-visible { outline:3px solid var(--accent); outline-offset:3px; }
.guide-table table { width:100%; min-width:540px; border-collapse:collapse; font-size:.86rem; line-height:1.65; }
.guide-table caption { padding:1rem; text-align:left; font-weight:750; color:var(--text); border-bottom:1px solid var(--line); }
.guide-table th,.guide-table td { text-align:left; vertical-align:top; padding:.9rem 1rem; border-bottom:1px solid var(--line); }
.guide-table thead th { background:color-mix(in srgb,var(--text) 7%,var(--surface)); color:var(--text); font-weight:750; }
.guide-table tbody th { min-width:140px; font-weight:700; }
.guide-table tr:last-child td,.guide-table tr:last-child th { border-bottom:0; }
.guide-faq details { border-bottom:1px solid var(--line); padding:1rem 0; }
.guide-faq summary { cursor:pointer; font-weight:700; line-height:1.6; }
.guide-faq details p { margin:1rem 0 0; }
.guide-sources li p { font-size:.84rem; line-height:1.65; color:var(--muted); margin:.25rem 0 1rem; }
.guide-cta { padding:2rem; margin-top:3rem; border:1px solid var(--line); border-radius:var(--radius); background:var(--surface); }
.guide-cta p { color:var(--muted); }
.guide-related { margin-top:3rem; }
.guide-related a { display:flex; justify-content:space-between; gap:1rem; padding:1rem 0; border-bottom:1px solid var(--line); font-size:.92rem; font-weight:650; text-underline-offset:.3em; }
.guide-hub-next { padding:2rem; margin:3rem 0 5rem; border:1px solid var(--line); border-radius:var(--radius); background:var(--surface); }
.guide-hub-next p { color:var(--muted); max-width:68ch; }
.guide-hub-nav { display:flex; flex-wrap:wrap; gap:.75rem; margin-bottom:3rem; }
.guide-hub-nav a { display:flex; align-items:center; gap:.8rem; padding:.75rem 1rem; border:1px solid var(--line); background:var(--surface); border-radius:var(--radius); font-size:.88rem; font-weight:650; text-decoration:none; }
.guide-hub-nav a:hover { text-decoration:underline; text-underline-offset:.2em; }
.guide-hub-nav span { color:var(--muted); font-size:.8rem; }
.guide-hub-nav a:focus-visible,.guide-card a:focus-visible { outline:3px solid var(--accent); outline-offset:3px; }
.guide-hub-group { margin-block:3rem; scroll-margin-top:110px; }
.guide-hub-group .guide-grid { grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr)); }
.guide-hub-group .guide-card :is(h2,h3) { max-width:34ch; }
.guide-hub-group .guide-card>p { max-width:80ch; }
.guide-group-heading { margin-bottom:1.25rem; }
.guide-group-heading h2 { font-size:clamp(1.65rem,3vw,2.35rem); line-height:1.2; font-weight:700; }
.guide-group-heading p { color:var(--muted); line-height:1.75; max-width:75ch; }
.guide-home { padding-block:3rem; margin-bottom:3rem; }
.guide-home-heading { display:flex; align-items:end; justify-content:space-between; gap:2rem; margin-bottom:2rem; }
.guide-home-heading h2 { font-size:clamp(1.8rem,3vw,2.75rem); font-weight:700; line-height:1.15; max-width:24ch; }
.guide-home-heading > a { flex-shrink:0; margin-bottom:.7rem; font-size:.85rem; font-weight:700; text-underline-offset:.3em; }
body[data-brand="site-a"] .guide-heading h1 { max-width:27ch; font-weight:400; letter-spacing:.005em; text-transform:uppercase; }
body[data-brand="site-a"] .guide-card :is(h2,h3),body[data-brand="site-a"] .guide-section h2,body[data-brand="site-a"] .guide-cta h2,body[data-brand="site-a"] .guide-related h2,body[data-brand="site-a"] .guide-hub-next h2,body[data-brand="site-a"] .guide-home-heading h2,body[data-brand="site-a"] .guide-group-heading h2 { font-weight:400; letter-spacing:.01em; text-transform:uppercase; }
@media(max-width:950px) { .guide-layout { grid-template-columns:210px minmax(0,1fr); gap:2rem; }.guide-grid { grid-template-columns:1fr; }.guide-card { padding:1.5rem; }.guide-card :is(h2,h3) { max-width:40ch; }.guide-card > p { max-width:75ch; } }
@media(max-width:720px) { .guide-shell,.guide-home { width:calc(100% - 2rem); }.guide-layout { grid-template-columns:minmax(0,1fr); grid-template-areas:"answer" "toc" "body"; gap:0; }.guide-toc { position:static; margin-bottom:2rem; }.guide-toc ol { columns:2; column-gap:2rem; }.guide-toc .btn { width:auto; }.guide-heading { padding-top:1.75rem; padding-bottom:2rem; }.guide-heading h1 { font-size:clamp(2.2rem,8.5vw,3.2rem); }.guide-home-heading { display:block; }.guide-home-heading > a { display:inline-block; margin-top:.5rem; } }
@media(max-width:440px) { .guide-toc ol { columns:1; }.guide-meta { gap:.4rem 1rem; }.guide-cta,.guide-hub-next { padding:1.4rem; }.guide-body { font-size:.96rem; }.guide-section h2 { overflow-wrap:anywhere; } }
