.city-hero{position:relative;min-height:440px;display:flex;align-items:flex-end;overflow:hidden;background:var(--green-deep);color:#fff}
.city-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 35%}
.city-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(16,17,16,.82),rgba(16,17,16,.15) 70%)}
.city-hero-copy{position:relative;z-index:1;padding-block:60px 54px}
.city-hero-copy h1{font-family:var(--serif);font-weight:500;font-size:52px;line-height:1.1;margin:0 0 14px;color:#fff}
.city-hero-copy h1 em{color:#e6dfc9}
.city-hero-copy p{max-width:520px;margin:0;font-size:15px;color:#ece8de}
.city-block{display:grid;grid-template-columns:1.15fr .85fr;gap:70px;align-items:center;padding-block:76px}
.city-block h2{font-family:var(--serif);font-weight:500;font-size:34px;line-height:1.2;margin:0 0 20px}
.city-block h2 em{color:var(--gold)}
.city-block p{font-size:13px;line-height:1.9;margin:0 0 16px}
.city-facts{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin:26px 0 0}
.city-facts div{border:1px solid var(--line);border-radius:8px;padding:14px 16px;background:#fff}
.city-facts dt{font-family:var(--serif);font-size:24px;color:var(--green)}
.city-facts dd{margin:2px 0 0;font-size:11px;color:var(--muted)}
.city-figure{margin:0}
.city-figure img{display:block;width:100%;height:auto;border-radius:9px;box-shadow:0 14px 34px #1818151a}
.city-figure figcaption{margin-top:10px;font-size:11px;color:var(--muted);text-align:center}
.city-flag img{max-width:420px;margin-inline:auto}
.city-history{background:var(--green-soft);border-block:1px solid var(--line)}
.city-timeline{list-style:none;margin:0;padding:0 0 0 22px;border-left:2px solid var(--gold);display:grid;gap:22px}
.city-timeline li{position:relative;display:grid;gap:3px}
.city-timeline li:before{content:"";position:absolute;left:-30px;top:6px;width:12px;height:12px;border-radius:50%;background:var(--cream);border:2px solid var(--gold)}
.city-timeline li:last-child:before{background:var(--gold)}
.city-timeline strong{font-family:var(--serif);font-size:19px;font-weight:500;color:var(--green)}
.city-timeline span{font-size:12px;line-height:1.7;color:var(--muted)}
.city-access{grid-template-columns:.8fr 1.2fr}
.city-access .city-figure img{max-width:380px;margin-inline:auto}
.city-roads{list-style:none;margin:20px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.city-roads li{display:grid;gap:2px;padding:12px 14px;border:1px solid var(--line);border-radius:8px;background:#fff}
.city-roads strong{font-size:12px;letter-spacing:1px;color:var(--gold)}
.city-roads span{font-size:12px}
.city-welcome{background:var(--green);color:#fff;text-align:center;padding-block:72px}
.city-welcome h2{font-family:var(--serif);font-weight:500;font-size:36px;margin:0 0 16px;color:#fff}
.city-welcome h2 em{color:#e6dfc9}
.city-welcome p{max-width:620px;margin:0 auto 28px;font-size:13px;line-height:1.9;color:#e7e4dc}
.city-welcome .eyebrow.light{justify-content:center}
.city-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}
.city-button-gold{background:var(--gold);border-color:var(--gold)}
.city-button-gold:hover{background:#92794d}
.city-sources{padding-block:22px;font-size:10px;color:var(--muted);text-align:center}
.city-sources a{text-decoration:underline}
@media(max-width:850px){.city-block,.city-access{grid-template-columns:1fr;gap:40px;padding-block:56px}.city-access .city-figure{order:2}.city-hero{min-height:380px}.city-hero-copy h1{font-size:40px}}
@media(max-width:560px){.city-hero-copy h1{font-size:34px}.city-block h2,.city-welcome h2{font-size:28px}.city-roads,.city-facts{grid-template-columns:1fr}}
