/* Guides uses the shared site palette, editorial type and accessible links. */
.guides-hub { max-width:920px; margin:0 auto 64px; }
.guides-hub .page-intro { max-width:740px; border:0; }
.guides-hub .page-intro h1 { font-size:clamp(38px,5vw,64px); }
.guide-group { margin:48px 0; }
.guide-group h2,.guide-next h2 { font:600 28px/1.25 Georgia,serif; color:var(--ink); margin:0 0 22px; }
.guide-links { list-style:none; padding:0; display:grid; grid-template-columns:1fr 1fr; gap:28px 48px; }
.guide-links li { min-width:0; }
.guide-links h3 { font:600 21px/1.35 Georgia,serif; margin:0 0 8px; }
.guide-links p,.guide-next p { font:18px/1.6 Georgia,serif; color:var(--muted); margin:0; }
.guide-links a { text-underline-offset:4px; }
.guide-next { max-width:740px; margin:56px 0 32px; }
.guide-next .kicker { font:650 12px/1.5 system-ui,sans-serif; margin-bottom:12px; }
.guide-journal-link { font:17px/1.6 Georgia,serif; }
@media(max-width:600px) { .guide-links { grid-template-columns:1fr; gap:24px; } .guide-group { margin:36px 0; } }

.prep-list { list-style:none; margin:28px 0; padding:0; }
.prep-list li { margin:0 0 30px; }
.prep-list label { display:flex; gap:12px; align-items:baseline; font:600 21px/1.4 Georgia,serif; color:var(--ink); cursor:pointer; padding:8px 0; }
.prep-list input { width:20px; height:20px; flex-shrink:0; accent-color:var(--ink); }
.prep-list input:focus-visible { outline:2px solid var(--ink); outline-offset:4px; }
.prep-list p { margin:4px 0 8px 32px; }
.prep-list .prep-source { font-size:15px; }

.guides-hub .page-heading { margin-bottom:32px; }
.guide-feature { display:grid; grid-template-columns:1.3fr 1fr; align-items:center; gap:20px 32px; padding:28px 32px; margin:0 0 48px; background:var(--soft); border-radius:12px; }
.guide-feature h2 { font:600 clamp(28px,3.4vw,40px)/1.15 Georgia,serif; margin:10px 0 16px; color:var(--ink); }
.guide-feature-copy > p:not(.kicker) { font:19px/1.6 Georgia,serif; color:var(--muted); margin:0; }
.guide-feature-art { width:100%; max-height:250px; object-fit:contain; }
.guide-checklist { grid-column:1/-1; }
.guide-checklist summary { cursor:pointer; display:list-item; font:650 17px/1.6 system-ui,sans-serif; padding:10px 0; color:var(--ink); }
.guide-checklist summary:focus-visible { outline:2px solid var(--ink); outline-offset:4px; }
.guide-checklist .prep-note { max-width:700px; color:var(--muted); font:16px/1.6 Georgia,serif; }
.guide-groups { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:36px; }
.guide-group { margin:0; }
.guide-group h2 { font-size:25px; margin-bottom:26px; }
.guide-links { grid-template-columns:1fr; gap:24px; }
.guide-links h3 { font-size:20px; }
.guide-links p { font-size:16px; }
.guide-journal-link { margin-top:42px; }
@media(max-width:760px) { .guide-groups { grid-template-columns:1fr; gap:38px; } .guide-links { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:560px) { .guide-feature { grid-template-columns:1fr; padding:24px; gap:8px; } .guide-feature-art { max-height:170px; } .guide-links { grid-template-columns:1fr; } }
.zone-directory{margin:0 0 48px;padding:28px 32px;background:var(--soft);border-radius:12px}
.zone-directory-intro{display:grid;grid-template-columns:1.3fr 1fr;align-items:center;gap:32px}.zone-directory-intro img{width:100%;max-height:180px;object-fit:contain}.zone-directory h2{font:600 34px/1.2 Georgia,serif;margin:10px 0}.zone-directory p:not(.kicker){color:var(--muted);font:18px/1.6 Georgia,serif}
.zone-guide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;margin-top:24px}.zone-guide-card{color:var(--ink);text-decoration:none;display:block;padding:16px 0}.zone-guide-card h3{font:600 25px/1.2 Georgia,serif;margin:10px 0}.zone-guide-card .read-link{text-decoration:underline;font-size:14px}.zone-guide-card:focus-visible{outline:3px solid var(--focus);outline-offset:5px}
.zone-prep-page{max-width:740px}.zone-prep-page .prep-note{font:16px/1.6 Georgia,serif;color:var(--muted)}.zone-prep-page .prep-list p{font:18px/1.65 Georgia,serif;color:var(--muted)}.zone-prep-page .prep-list .prep-source{font:14px/1.6 system-ui,sans-serif}
@media(max-width:600px){.zone-directory{padding:24px}.zone-directory-intro{grid-template-columns:1fr;gap:8px}.zone-directory-intro img{max-height:140px}.zone-guide-grid{grid-template-columns:1fr;gap:16px}.zone-prep-page .prep-list p{margin-left:0}}

.zone-directory-intro.text-only{grid-template-columns:1fr}
