/* Giravento 1.2: content-owned tracks; no slots for removed labels. */
html { font-size:100%; }
h1,h2,h3 { letter-spacing:-.035em; }
.header-inner { display:grid;grid-template-columns:auto minmax(0,1fr);gap:1.5rem;min-height:5.25rem; }
.site-header .brand { font-size:1.9rem;gap:.5rem;letter-spacing:-.05em; }
.site-header nav { justify-self:end;gap:1.25rem; }
.site-header .nav-link { font-size:.9375rem;line-height:1.4;white-space:normal; }
#menu-toggle:not([hidden]) { padding:.6rem;background:#172528;color:#f1f0e8;border:0;border-radius:.5rem;width:2.875rem;height:2.875rem;align-items:center;justify-content:center; }
#menu-toggle svg { display:block;flex:none;width:1.5rem;height:1.5rem;stroke:currentColor;stroke-width:2;fill:none;stroke-linecap:round; }
#menu-toggle .menu-cross { display:none; }
#menu-toggle[aria-expanded=true] .menu-bars { display:none; }
#menu-toggle[aria-expanded=true] .menu-cross { display:block; }
.format-atlas { grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1.5rem 2.5rem;padding-block:2.5rem; }
.atlas-intro { align-self:start; }
.atlas-intro p { margin:0 0 1.25rem; }
.format-atlas>header h2 { max-width:19ch;line-height:1.12; }
.atlas-folds { display:grid;gap:1.5rem; }
.atlas-fold .fold-content { display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr)!important;gap:2rem!important;padding:1.5rem;background:#e5e5d8;align-items:stretch!important; }
.atlas-fold:nth-child(2) .fold-content { background:#e8e3d8; }
.atlas-fold:nth-child(3) .fold-content { background:#e1e7df; }
.atlas-fold h3 { width:auto;max-width:none;font-size:clamp(1.75rem,2.5vw,2.5rem);line-height:1.16;margin:0 0 1rem;overflow-wrap:normal; }
.fold-description p { line-height:1.7; }
.format-fieldnotes p:last-child { margin-bottom:0; }
.atlas-fold .fold-content>picture { display:block;position:relative!important;align-self:stretch;min-height:22rem;height:auto;overflow:hidden; }
.atlas-fold .fold-content>picture>img { display:block;position:absolute;inset:0;width:100%;height:100%;min-height:0;object-fit:cover; }
.question-wall>.wrap { align-items:start; }
.question-wall>.wrap>h2 { grid-column:1;grid-row:1;margin:0; }
.question-wall>.wrap>dl { grid-column:2;grid-row:1; }
.club-interlude { display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:stretch;gap:2rem; }
.interlude-reading { align-self:center; }
.club-interlude figure { grid-column:2;grid-row:1;position:relative;min-height:25rem; }
.club-interlude figure picture { display:block;height:100%;min-height:0; }
.club-interlude figure img { position:absolute;inset:0;width:100%;height:100%;min-height:0;object-fit:cover; }
.last-call { grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
.last-call h2 { grid-column:1;grid-row:1/3;max-width:none;line-height:1.15; }
.last-call p,.last-call>.last-link { grid-column:2; }
.last-call>.last-link { justify-self:start;align-self:start; }
main a.text-link:hover,main a.last-link:hover,main a.button:hover,.inner-page .related>a:hover { background:#355052!important;color:#fff!important;opacity:1; }
.cookie-notice a,.cookie-notice p,.cookie-notice button { font-size:.875rem!important;line-height:1.6; }
.cookie-notice a { display:inline-flex;align-items:center;min-height:2.75rem;padding:.6rem .9rem;background:#e1e4d5;border-radius:.35rem;font-weight:600; }
.cookie-notice a:hover { background:#cbd1bb;opacity:1; }
.gv-footer-grid { grid-template-columns:minmax(0,1fr) minmax(0,1.6fr) minmax(0,.9fr) minmax(0,.8fr);gap:1.5rem; }
.gv-footer .brand { font-size:1.75rem;letter-spacing:-.05em; }
.gv-footer-nav,.gv-footer-legal { gap:.35rem; }
.gv-footer-rights { font-size:.875rem; }
@media(max-width:64rem){
 .header-inner { grid-template-columns:minmax(0,1fr) auto;gap:0 1rem; }
 #menu-toggle:not([hidden]) { display:flex; }
 .site-header nav { grid-column:1/-1;justify-self:stretch;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;padding:.75rem 0 1rem; }
 .site-header .nav-link { display:flex;align-items:center;min-height:2.75rem;padding:.75rem;background:#e2e4d7;border-radius:.4rem;margin:0;font-size:1rem; }
 .site-header .nav-link:hover { background:#d3d8c4; }
 .atlas-fold .fold-content { grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:1.5rem!important; }
 .fold-content>* { grid-column:auto!important;grid-row:auto!important; }
 .format-atlas>header h2 { max-width:none; }
 .club-interlude { display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
 .club-interlude figure { min-height:24rem; }
 .route-map ol { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .route-map li { padding:1rem; }
 .route-map h3 { font-size:1.35rem!important; }
 .gv-footer-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .gv-footer-brand { grid-column:1/-1; }
 .gv-footer-contact { grid-column:1;grid-row:2/4; }
 .gv-footer-nav,.gv-footer-legal { grid-column:2; }
 .last-call { display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important; }
 .last-call h2 { grid-column:1!important;grid-row:1/3!important; }
 .last-call p,.last-call>.last-link { grid-column:2!important; }
}
@media(max-width:48rem){
 .wrap,.club-interlude { width:calc(100% - 2rem); }
 .header-inner { min-height:4.75rem; }
 .site-header .brand { font-size:1.75rem; }
 .format-atlas { display:block!important;padding-block:1.75rem; }
 .format-atlas>header { margin-bottom:1rem; }
 .atlas-intro { margin-bottom:1.5rem; }
 .atlas-fold .fold-content { grid-template-columns:minmax(0,1fr)!important;gap:1.25rem!important;padding:1.25rem; }
 .atlas-fold .fold-content>picture { grid-column:1!important;min-height:0;height:auto;aspect-ratio:3/2; }
 .atlas-fold h3 { font-size:1.75rem!important;line-height:1.18!important; }
 .question-wall>.wrap>dl { margin-top:1.25rem; }
 .club-interlude { grid-template-columns:minmax(0,1fr);margin-block:1.75rem;gap:1.25rem; }
 .club-interlude figure { grid-column:1;grid-row:auto;min-height:0;aspect-ratio:3/2; }
 .club-interlude figure picture { height:100%; }
 .route-map ol { grid-template-columns:minmax(0,1fr); }
 .last-call { grid-template-columns:minmax(0,1fr)!important;padding-block:1.75rem;gap:1rem!important; }
 .last-call h2,.last-call p,.last-call>.last-link { grid-column:1!important;grid-row:auto!important; }
 .last-call h2,.last-call p { margin:0; }
 .field-guide .ticket textarea { min-height:17rem!important; }
 .gv-footer-grid { gap:1.25rem; }
 .gv-footer-nav,.gv-footer-legal { flex-direction:column;align-items:flex-start; }
}
@media(max-width:25rem){
 .site-header nav { grid-template-columns:minmax(0,1fr); }
 .gv-footer-grid { grid-template-columns:minmax(0,1fr);gap:1rem; }
 .gv-footer-contact,.gv-footer-nav,.gv-footer-legal { grid-column:1;grid-row:auto; }
 .gv-footer-nav,.gv-footer-legal { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem 1rem;width:100%; }
}

.cookie-settings{padding-block:.5rem 1rem}.cookie-settings .button{white-space:normal;background:#172528;color:#fff;font-size:1rem}.cookie-settings .button:hover{background:#355052}

/* Stable header anchor: logo keeps its left/top offsets across every breakpoint. */
.site-header .header-inner { width:100%;max-width:none;margin:0;padding:0 1rem;min-height:5rem;grid-template-columns:max-content minmax(0,1fr);grid-template-rows:5rem;gap:0 1rem;align-items:center; }
.site-header .brand { grid-column:1;grid-row:1;justify-self:start;align-self:center;width:max-content;max-width:100%;font-size:1.75rem;line-height:1.25;gap:.5rem;margin:0;transform:none; }
.site-header .brand svg { width:2.25rem;height:2.25rem;flex:none; }
.site-header #menu-toggle { grid-column:2;grid-row:1;justify-self:end;align-self:center;margin:0; }
.site-header #primary-nav { grid-column:2;grid-row:1; }
@media(max-width:64rem){
 .site-header .header-inner { grid-template-columns:minmax(0,1fr) auto;grid-template-rows:5rem; }
 .site-header #primary-nav { grid-column:1/-1;grid-row:2; }
}

/* Compact footer after removing supplementary content navigation. */
.gv-footer-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.8fr) minmax(0,1.1fr);gap:1.25rem 2rem;}
.gv-footer-brand{grid-column:1;grid-row:1;}
.gv-footer-contact{grid-column:2;grid-row:1;}
.gv-footer-legal{grid-column:3;grid-row:1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem 1.25rem;width:100%;}
@media(max-width:64rem){.gv-footer-grid{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:1.25rem 1.5rem;}.gv-footer-brand{grid-column:1/-1;grid-row:1;}.gv-footer-contact{grid-column:1;grid-row:2;}.gv-footer-legal{grid-column:2;grid-row:2;}}
@media(max-width:38rem){.gv-footer-grid{grid-template-columns:minmax(0,1fr);gap:1.1rem;}.gv-footer-brand,.gv-footer-contact,.gv-footer-legal{grid-column:1;grid-row:auto;}.gv-footer-legal{gap:.6rem 1rem;}}
