.topic-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:24px 0 30px}
.topic-land{--topic-accent:var(--ref,#087f82)}.topic-demography{--topic-accent:light-dark(#355fd0,#87a8ff)}.topic-economy{--topic-accent:light-dark(#a34b09,#ffad61)}
.topic-waste{--topic-accent:light-dark(#6550a5,#bcabf3)}
.topic-strategy{--topic-accent:light-dark(#876114,#e9c978)}
.topic-national{--topic-accent:light-dark(#8b3549,#f1a8b9)}
.topic-newspaper{--topic-accent:light-dark(#ad2927,#ffaaa3)}
.topic-choices a{display:flex;flex-direction:column;border:1px solid var(--border,var(--line));border-top:3px solid var(--topic-accent);border-radius:6px;padding:18px 16px;color:var(--fg);background:var(--soft);text-decoration:none;min-width:0;transition:transform .18s,box-shadow .18s}
.topic-choices strong{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:1.15rem;line-height:1.4}.topic-choices strong span{color:var(--topic-accent)}
.topic-choices small{display:block;margin-top:10px;color:var(--muted);font-size:.875rem;line-height:1.6}.topic-choices a:hover{border-color:var(--topic-accent);background:var(--bg);transform:translateY(-3px);box-shadow:0 8px 20px #102d4810}
.topic-choices .topic-strategy{background:#102d48;color:#fff;border-color:#102d48;border-top-color:#bda267}.topic-choices .topic-strategy small{color:#d2deea}.topic-choices .topic-strategy strong span{color:#d9c189}.topic-choices .topic-strategy:hover{background:#1b3d5c}
.portal-heading{display:flex;align-items:center;justify-content:space-between;gap:24px}.portal-heading h1{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:clamp(2.2rem,4vw,3.3rem);letter-spacing:-.025em}.portal-heading .eyebrow{font-size:.875rem;font-weight:700;color:var(--ref);letter-spacing:.12em}.portal-access-note{font-size:.875rem;line-height:1.7;color:var(--muted);margin:0;text-align:right}.public-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--ref);margin-right:8px}
.site-header{border-top:0}.primary-nav a{border-radius:20px}.region-summary{background:var(--soft);padding:20px;border:1px solid var(--border);border-radius:8px}.topic-links{font-size:.95rem}.access-strip{border-radius:5px}.access-strip button{min-height:40px}
.topic-choices a:focus-visible,.topic-links a:focus-visible{outline:3px solid var(--topic-accent);outline-offset:4px}
.topic-heading{scroll-margin-top:20px;padding-top:18px;border-top:1px solid var(--border,var(--line));margin-top:20px}.topic-heading h2{font-size:1.5rem}.topic-economy-heading{border-top:4px solid light-dark(#a34b09,#ffad61);margin-top:0;margin-bottom:28px}.topic-heading>a{font-size:.875rem}
.topic-links{display:flex;gap:8px;flex-wrap:wrap;margin:0;font-size:.875rem}.topic-links a{color:var(--fg);text-decoration:none;padding:9px 14px;border:1px solid var(--border,var(--line));border-radius:5px;min-height:44px}.topic-links a:hover,.topic-links a[aria-current]{border-color:var(--topic-accent);box-shadow:inset 0 -3px var(--topic-accent)}
.map-topic-header .topic-links{margin-left:auto}.map-topic-header h1{width:100%;margin:0}.map-topic-header>span{display:none}
@media(max-width:1000px){.topic-choices{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.portal-heading{align-items:flex-start;gap:12px;flex-direction:column}.portal-access-note{text-align:left}.region-summary{padding:14px}.topic-links{gap:7px}.topic-links a{min-width:130px}}
@media(max-width:640px){.topic-choices{grid-template-columns:1fr;gap:10px;margin:16px 0 22px}.topic-choices a{padding:11px 14px}.topic-choices small{margin-top:3px}.map-topic-header .topic-links{margin-left:0;width:100%}.topic-links a{flex:1;text-align:center;padding:9px 8px}}
@media print{.topic-choices,.topic-links,.topic-heading>a{display:none}}
.access-strip{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:10px 16px;margin:12px 0;background:#edf5f7;font:16px/1.5 system-ui,sans-serif;color:#163747}
.access-strip button{font:inherit;padding:6px 14px;border:1px solid #087f8c;border-radius:5px;background:white;color:#087786;cursor:pointer}
.access-strip button:focus-visible{outline:3px solid #246ad0;outline-offset:3px}
@media(prefers-reduced-motion:reduce){.topic-choices a{transition:none}.topic-choices a:hover{transform:none}}
@media print{.access-strip,.portal-access-note{display:none}}
