/* Compact Abroad directory. Header colours share one set of customizer tokens. */
.site-header{background:var(--color-header);color:var(--color-header-text);border-bottom:1px solid var(--color-border);min-height:72px}
.site-header .nav-border,.site-header .navigation.container{background:var(--color-header)}
.site-header .brand,.site-header .navigation>a{color:var(--color-header-text)}
.site-header .navigation>a{border:0;border-radius:6px;font-size:12px;padding:10px;min-height:44px;justify-content:center}
.site-header .navigation>a:hover,.site-header .navigation>a:focus-visible,.site-header .navigation>a.active{background:var(--color-header-hover);color:var(--color-header-hover-text);border:0}
.site-header .menu-toggle,.site-header .search-toggle{background:transparent;color:var(--color-header-text);border:1px solid var(--color-border);border-radius:7px;min-height:44px;min-width:44px}
.site-header .menu-toggle:hover,.site-header .menu-toggle[aria-expanded=true],.site-header .search-toggle:hover,.site-header .search-toggle[aria-expanded=true]{background:var(--color-header-hover);color:var(--color-header-hover-text)}
.site-header .site-logo{width:196px;max-height:42px;object-fit:contain}
.site-header .search input{border:1px solid var(--color-border);border-radius:7px}
.site-header .search button{color:var(--color-header-text)}
.site-header .search-panel{background:var(--color-header);border-top:1px solid var(--color-border)}
.site-header .search-panel button{background:var(--color-button);color:var(--color-button-text);border-color:var(--color-button)}
.site-header .search-panel button:hover{background:var(--color-button-hover);color:var(--color-button-hover-text)}
.compact-intro.container{background:none;border:0;border-bottom:1px solid var(--color-border);border-radius:0;margin:0 auto;padding:20px 36px 16px;gap:16px}
.compact-intro h1{font-size:27px;line-height:1.22;letter-spacing:-.8px;margin:0 0 5px;max-width:650px}
.compact-intro p:not(.eyebrow){font-size:13px;line-height:1.55;max-width:620px;margin:0;color:var(--color-muted)}
.intro-link{font-size:12px;white-space:nowrap;color:var(--color-link);border:1px solid var(--color-border);border-radius:7px;padding:9px 12px}
.intro-link:hover{background:var(--color-hover);color:var(--color-hover-text)}
.reading-layout{padding-top:18px;padding-bottom:28px}
.section-heading h2{font-size:20px;letter-spacing:-.5px;margin:0}.section-heading .eyebrow{display:none}
.filter-chips{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 14px}
.filter-chips a{border-radius:6px;padding:7px 10px;font-size:11px;white-space:nowrap;min-height:34px;display:inline-flex;align-items:center}
.card-grid{gap:16px}.story-card{border-radius:8px;border-color:var(--color-border);box-shadow:none}.card-body{padding:16px}.card-art{background:var(--color-art)}.card-art .art-symbol{color:var(--color-art-text)}
.empty.public-empty{border:0;border-radius:0;background:transparent;padding:18px 0 24px;text-align:left;margin:0}
.empty.public-empty h3{font-size:16px;margin:0 0 6px;letter-spacing:-.2px}.empty.public-empty p{font-size:13px;line-height:1.5;margin:0 0 8px;max-width:520px}.empty.public-empty a{font-size:12px}
.pagination:empty{display:none}.pagination{padding-top:18px}.pagination a{border-radius:7px}
.site-footer{background:var(--color-footer);padding-top:24px}.site-footer .site-logo{filter:none;width:195px;max-height:46px}.footer-grid{gap:24px;padding-bottom:20px}.footer-grid strong{margin-bottom:8px}.footer-bottom{padding:14px 0}
.byline-location{background:var(--color-soft);border-color:var(--color-border)}.post-detail h1{letter-spacing:-1.1px}
@media(min-width:1025px){.compact-intro{display:flex;justify-content:space-between;align-items:center}.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.site-header .navigation.container{flex-wrap:nowrap;padding-left:18px;gap:2px}.navigation .search input{width:135px}}
@media(min-width:1025px) and (max-width:1100px){.site-header .site-logo{width:165px}.site-header .navigation.container{padding-left:10px;gap:0}.site-header .navigation>a{padding:9px 6px;font-size:11px}.navigation .search input{width:100px}}
@media(max-width:1024px){
 .site-header{min-height:0;padding:0}.site-header .header-main.container{min-height:66px;height:auto;grid-template-columns:60px minmax(0,1fr) 60px;padding:9px 16px;gap:4px}
 .site-header .site-logo{width:175px;max-width:100%;max-height:39px}.site-header .brand{max-width:100%}
 .site-header .navigation.mobile-menu{padding:8px 16px 12px;border-top:1px solid var(--color-border);gap:6px;max-height:65vh;overflow-y:auto}
 .site-header .navigation.mobile-menu.is-open{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))}
 .site-header .navigation>a{min-height:44px;padding:10px 8px;border-radius:6px;white-space:normal;text-align:center;font-size:13px;background:transparent;line-height:1.3}
 .site-header .navigation>a:hover,.site-header .navigation>a.active,.site-header .navigation>a:focus-visible{background:var(--color-header-hover);color:var(--color-header-hover-text)}
 .site-header .navigation .search{display:none}.site-header .search-panel{padding:12px 16px}.site-header .search-panel input{min-width:0}.site-header .search-panel button{min-height:44px}
 .compact-intro.container{display:block;margin:0;padding:17px 16px 14px;gap:0}.compact-intro h1{font-size:23px;letter-spacing:-.6px}.compact-intro p:not(.eyebrow){font-size:12px;line-height:1.5}.compact-intro .intro-link{display:none}
 .reading-layout{padding-top:14px;padding-bottom:22px}.section-heading h2{font-size:18px}.section-heading .muted{font-size:11px}
 .filter-chips{flex-wrap:nowrap;overflow-x:auto;max-width:100%;padding-bottom:4px;margin:9px 0 8px;scrollbar-width:thin}.filter-chips a{flex:none;min-height:40px;font-size:11px;padding:8px 10px}
 .empty.public-empty{padding:12px 0 18px}.empty.public-empty h3{font-size:15px}.empty.public-empty p{font-size:12px}
 .site-footer{padding-top:20px}.footer-grid{gap:16px;padding-bottom:16px}.footer-grid p{margin:7px 0 0;font-size:11px;line-height:1.6}.footer-grid>div>a:not(.brand){padding:6px 0;font-size:12px}.footer-bottom{font-size:10px;padding:12px 0}
}

/* Keep scrollable topic links inside the grid, rather than sizing the page. */
.reading-layout>*,.card-grid>*,.footer-grid>*,.section-heading>div,.compact-intro>div{min-width:0}
.story-card h3,.story-card p,.section-heading h2,.footer-grid a{overflow-wrap:anywhere}
.card-meta{flex-wrap:wrap}.container{width:100%}
.pagination{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:8px;padding-top:24px;margin-top:8px}
.pagination a{display:inline-flex;align-items:center;justify-content:center;min-width:42px;min-height:44px;padding:9px 13px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);color:var(--color-link);font-size:13px;font-weight:600;line-height:1.3}
.pagination a:hover,.pagination a:focus-visible{background:var(--color-hover);color:var(--color-hover-text);border-color:var(--color-primary)}
.pagination a.current{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}
.pagination .page-summary{flex-basis:100%;text-align:center;font-size:11px;color:var(--color-muted);margin-top:5px}
@media(max-width:1024px){
 .reading-layout{grid-template-columns:minmax(0,1fr);gap:0}.desktop-sidebar{display:none}
 .site-header{display:block;padding:0}.site-header .header-main.container{display:grid;width:100%;margin:0}
 .site-header .menu-toggle{display:inline-flex;justify-self:start;padding:8px;gap:5px;font-size:11px}
 .site-header .brand{justify-self:center;overflow:hidden}
 .site-header .search-toggle{display:inline-flex;justify-self:end;align-items:center;justify-content:center;padding:9px;width:44px;height:44px}
 .site-header .search-toggle svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:2}
 .site-header .navigation.mobile-menu{display:none;height:auto;min-height:0;width:100%;margin:0}
 .site-header .navigation>a{height:auto;justify-content:center}
 .site-header .search-panel form{display:flex;gap:8px;min-width:0}
 .section-heading{align-items:flex-start}.section-heading>.muted{flex-shrink:0}
}
@media(max-width:480px){.pagination{gap:6px}.pagination a{min-width:38px;padding:8px 10px;font-size:12px}.card-body{padding:0}.card-art{max-width:100%}}
