.guide-page { font:var(--t-body)/var(--lh-body) var(--serif); }
.guide-page main { max-width:var(--page-max); padding:var(--s-6) var(--gutter) var(--s-8); margin:auto; }
.guide-page h1,.guide-page h2,.guide-page h3 { font-family:var(--serif); font-weight:500; letter-spacing:var(--track-display); color:var(--ink); }
.guide-page h1 { font-size:var(--t-display); line-height:var(--lh-display); margin:var(--s-4) 0 var(--s-5); max-width:var(--measure); }
.guide-page h2 { font-size:var(--t-head); line-height:var(--lh-head); margin:0 0 var(--s-4); }
.guide-page h3 { font-size:var(--t-sub); line-height:var(--lh-head); margin:0 0 var(--s-2); }
.guide-page p { max-width:var(--measure); margin:0 0 var(--s-4); }
.g-eyebrow { text-transform:uppercase; letter-spacing:var(--track-label); font:700 var(--t-label)/var(--lh-dense) var(--sans); color:var(--ochre); margin:0 0 var(--s-3); }
.g-lede { font:var(--t-sub)/var(--lh-body) var(--serif); color:var(--ink-2); max-width:var(--measure); }
.g-breadcrumb { font:var(--t-dense)/var(--lh-dense) var(--sans); color:var(--ink-2); display:flex; gap:var(--s-3); flex-wrap:wrap; align-items:center; }
.g-breadcrumb a { display:inline-flex; align-items:center; min-height:var(--hit); }
.g-section { padding:var(--s-6) 0; border-top:1px solid var(--rule); margin-top:var(--s-6); }
.g-actions { display:flex; flex-wrap:wrap; gap:var(--s-3); align-items:center; margin:var(--s-5) 0; }
.g-detail { display:grid; grid-template-columns:minmax(0,7fr) minmax(0,4fr); gap:var(--col-gap); align-items:start; margin:var(--s-5) 0; }
.g-detail aside { padding:var(--s-2) 0; }
.g-detail aside .g-button { width:100%; }
.g-map { background:var(--lime-sunken); overflow:hidden; border-radius:var(--radius); border:1px solid var(--rule); border-bottom:var(--zocalo-h) solid var(--zocalo-band); margin:0; }
.g-map svg { display:block; width:100%; height:auto; min-height:240px; max-height:520px; }
.g-map figcaption { padding:var(--s-2) var(--s-3); font:var(--t-dense)/var(--lh-dense) var(--sans); color:var(--ink-3); background:var(--lime-raised); }
.g-note { font:var(--t-dense)/var(--lh-dense) var(--sans); color:var(--ink-2); }
.g-list { list-style:none; padding:0; margin:0; border-top:1px solid var(--rule); }
.g-list>li { padding:var(--s-5) 0; border-bottom:1px solid var(--rule); }
.g-list a { display:inline-flex; align-items:center; min-height:var(--hit); font:500 var(--t-head)/var(--lh-head) var(--serif); text-decoration:none; color:var(--ink); }
.g-list p { margin:var(--s-2) 0 0; color:var(--ink-2); }
.g-list a:hover { color:var(--celeste); text-decoration:underline; }
.g-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--col-gap); }
.g-grid .g-map svg { min-height:0; max-height:220px; }
.g-grid a { font:500 var(--t-head)/var(--lh-head) var(--serif); display:inline-flex; align-items:center; min-height:var(--hit); margin:var(--s-4) 0 0; text-decoration:none; color:var(--ink); }
.g-grid p { margin:var(--s-2) 0; color:var(--ink-2); }
.g-grid a:hover { text-decoration:underline; color:var(--celeste); }
.g-discovery { position:relative; isolation:isolate; display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); column-gap:var(--col-gap); min-height:480px; padding:var(--s-7) var(--page-edge); background:var(--lime); overflow:hidden; margin:calc(-1 * var(--s-6)) var(--page-bleed) var(--s-6); border-bottom:var(--zocalo-h) solid var(--zocalo-band); }
.g-discovery> :not(.g-map) { grid-column:1/7; position:relative; z-index:1; }
.g-discovery .g-map { position:absolute; inset:0 0 0 52%; border:0; }
.g-discovery .g-map svg { min-height:100%; height:100%; max-height:none; width:100%; object-fit:cover; }
.g-discovery .g-map figcaption { display:none; }
.g-discovery h1 { margin-top:var(--s-2); }
.g-discovery .g-lede { max-width:32ch; }
.g-search { display:block; max-width:var(--measure); font:var(--t-dense)/var(--lh-dense) var(--sans); }
.g-search input { display:block; width:100%; min-height:var(--hit); border:1px solid var(--rule); background:var(--lime-raised); border-radius:var(--radius-ctl); padding:var(--s-4); color:var(--ink); margin-top:var(--s-2); font:var(--t-body)/var(--lh-dense) var(--sans); }
.g-search-results { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--col-gap); margin-top:var(--s-5); }
.g-search-results:empty { display:none; }
.g-search-results ul { list-style:none; margin:0; padding:0; }
.g-search-results a { display:block; text-decoration:none; padding:var(--s-4) var(--s-3); border-bottom:1px solid var(--rule); min-height:var(--hit); }
.g-search-results a:hover { background:var(--ochre-pale); }
.g-search-results strong,.g-search-results span { display:block; }
.g-search-results span { font:var(--t-dense)/var(--lh-dense) var(--sans); color:var(--ink-2); margin-top:var(--s-1); }
.g-feature { display:grid; grid-template-columns:7fr 4fr; gap:var(--s-7); align-items:center; margin:var(--s-6) 0 var(--s-7); }
.g-feature .g-eyebrow { margin-bottom:var(--s-4); }
.g-steps { list-style:none; padding:0; counter-reset:visit; }
.g-steps li { counter-increment:visit; display:grid; grid-template-columns:var(--hit) 1fr; gap:var(--s-4); padding:var(--s-5) 0; border-bottom:1px solid var(--rule); }
.g-steps li:before { content:counter(visit); width:var(--hit); height:var(--hit); display:grid; place-items:center; background:var(--ochre-pale); color:var(--ink); font:var(--t-head)/var(--lh-head) var(--serif); }
.g-steps p { color:var(--ink-2); }
.g-sources { padding:var(--s-5) 0; border-top:1px solid var(--rule); }
.g-sources summary { font:600 var(--t-body)/var(--lh-dense) var(--sans); min-height:var(--hit); }
.g-sources li { margin:var(--s-4) 0; }
.g-source-dialog { background:var(--lime); color:var(--ink); border:1px solid var(--rule); border-radius:var(--radius); padding:var(--s-6); width:min(var(--measure),calc(100vw - var(--s-6))); max-height:90dvh; overflow-wrap:anywhere; box-shadow:var(--shadow-overlay); }
.g-source-dialog::backdrop { background:var(--scrim); }
.g-source-dialog [data-close-dialog] { float:right; }
.g-line-directions { display:grid; grid-template-columns:1fr 1fr; gap:var(--s-7); }
.g-stop-list { padding-left:var(--s-6); font-family:var(--sans); }
.g-stop-list li { padding:var(--s-2) 0 var(--s-2) var(--s-2); border-bottom:1px solid var(--rule); }
.g-stop-list a { display:inline-flex; align-items:center; min-height:var(--hit); }
.g-line-heading { padding-top:var(--s-5); border-top:2px solid var(--rule-strong); }
.g-line-badge { display:inline-flex; min-width:var(--hit); min-height:var(--hit); align-items:center; justify-content:center; border:1px solid var(--rule); font:700 var(--t-sub)/var(--lh-dense) var(--sans); border-radius:var(--radius-ctl); margin-right:var(--s-3); }
.g-inline-links { display:flex; gap:var(--s-4); flex-wrap:wrap; font:var(--t-dense)/var(--lh-dense) var(--sans); }
.g-inline-links a { display:inline-flex; align-items:center; min-height:var(--hit); }
.guide-page.map-page main { max-width:none; margin:0; padding:0; }
.guide-page.map-page .g-map-fallback { padding:var(--s-4) var(--gutter); }
.g-anchor, section[id] { scroll-margin-top:var(--s-8); }
.g-research { max-width:var(--measure); }
.g-citations { white-space:nowrap; font-family:var(--sans); }
.g-cite { font:600 var(--t-dense)/var(--lh-dense) var(--sans); vertical-align:super; text-decoration:none; }
.g-evidence-list { list-style:none; padding:0; max-width:var(--measure); }
.g-evidence-list>li { padding:var(--s-5) 0; border-bottom:1px solid var(--rule); scroll-margin-top:var(--s-8); overflow-wrap:anywhere; }
.g-evidence-list>li>a { font-weight:600; }
.g-evidence-list p { margin:var(--s-2) 0; }
.g-source-dialog h3 { margin-top:var(--s-5); }
@media(max-width:850px) {
 .guide-page main { padding-top:var(--s-5); padding-bottom:var(--s-7); }
 .g-detail,.g-feature,.g-line-directions { grid-template-columns:1fr; gap:var(--s-5); }
 .g-detail aside { padding:0; }
 .g-grid { grid-template-columns:1fr; gap:var(--s-5); }
 .g-grid article { display:grid; grid-template-columns:1fr 2fr; gap:0 var(--s-4); border-top:1px solid var(--rule); padding-top:var(--s-4); }
 .g-grid article .g-map { grid-row:1/3; }
 .g-grid article .g-map svg { height:100%; min-height:120px; }
 .g-grid article figcaption { display:none; }
 .g-grid article>a { margin:0; font-size:var(--t-sub); }
 .g-grid article>p { margin:var(--s-1) 0; font:var(--t-dense)/var(--lh-dense) var(--sans); }
 .g-search-results { grid-template-columns:1fr; }
 .g-discovery { margin-top:calc(-1 * var(--s-5)); padding:var(--s-6) var(--gutter) 0; display:flex; flex-direction:column; gap:0; min-height:0; }
 .g-discovery .g-map { position:relative; inset:auto; order:1; margin:0 calc(-1 * var(--gutter)); height:180px; flex:none; }
 .g-discovery .g-map svg { width:100%; min-height:0; }
 .g-discovery .g-lede { max-width:var(--measure); }
 .g-map svg { min-height:220px; }
 .g-actions .g-button { flex-grow:1; }
 .g-line-directions section { min-width:0; }
 .g-section { padding-top:var(--s-5); margin-top:var(--s-5); }
}
@media(prefers-reduced-motion:no-preference) {
 .g-discovery> :not(.g-map) { animation:guide-arrive var(--dur) var(--ease) both; }
 .g-grid a { transition:transform var(--dur) var(--ease); }
 .g-grid a:hover { transform:translateX(4px); }
 @keyframes guide-arrive { from { opacity:0; transform:translateY(8px); } to { opacity:1; transform:none; } }
}

/* Seven reading columns, one breathing column, four apparatus columns. */
.g-reading-heading { max-width:var(--measure); padding-bottom:var(--s-5); }
.g-reading { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:var(--col-gap); align-items:start; }
.g-reading-content { grid-column:1/8; min-width:0; max-width:var(--measure); }
.g-apparatus { grid-column:9/13; min-width:0; font:var(--t-dense)/var(--lh-dense) var(--sans); color:var(--ink-2); }
.g-apparatus .g-actions { display:grid; gap:var(--s-2); margin:var(--s-4) 0; }
.g-apparatus .g-actions .g-button { text-align:center; }
.g-apparatus .g-provenance { border-top:2px solid var(--rule-strong); padding-top:var(--s-5); margin-top:var(--s-5); }
.g-apparatus .g-provenance:first-child { margin-top:0; }
.g-apparatus .g-provenance>.g-eyebrow { color:var(--ochre); }
.g-apparatus h3 { font:600 var(--t-sub)/var(--lh-head) var(--sans); }
.g-apparatus p { margin:0 0 var(--s-4); }
.g-apparatus ul { padding-left:var(--s-4); }
.g-apparatus .g-evidence-list { padding:0; margin:0 0 var(--s-5); }
.g-apparatus .g-evidence-list>li { padding:var(--s-4) 0; }
.g-apparatus .g-evidence-list>li>a { display:block; color:var(--celeste); }
.g-source-number { font-variant-numeric:lining-nums tabular-nums; }
.g-reading .g-detail { display:block; margin-top:0; }
.g-reading-content>.g-section:first-child { margin-top:0; }
.g-reading-content .g-cite { display:inline; }
.guide-page.g-centered main { max-width:calc(var(--measure) + var(--gutter) * 2); }
@media(max-width:850px) {
 .g-reading { display:block; }
 .g-reading-heading { padding-bottom:var(--s-4); }
 .g-apparatus { margin-top:var(--s-7); }
 .g-apparatus .g-provenance { padding-top:var(--s-5); }
}
