.welcome-geography { color: var(--color-ink); padding-block: clamp(1.5rem, 3vw, 3rem) clamp(2rem, 4vw, 3.5rem); }
.welcome-geography__grid { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(2rem, 5vw, 5rem); align-items: center; }
.welcome-geography__copy { padding-block: .5rem; }
.welcome-geography__actions { max-width: 30rem; margin-top: 1.5rem; }
.welcome-geography__explorer { padding: clamp(1.25rem, 2.5vw, 2rem); background: #eaf4f1; border-radius: 2.5rem .3rem 2.5rem .3rem; }
.welcome-geography__eyebrow { font-size: .875rem; font-weight: 700; letter-spacing: .035em; }
.welcome-geography h1 { font-family: var(--font-profile); font-size: clamp(2.7rem, 4.7vw, 4.8rem); font-weight: 900; line-height: 1; letter-spacing: -.025em; margin: 1.5rem 0; }
.welcome-geography__copy > p { max-width: 34rem; }
.welcome-geography__lead { font-size: clamp(1.125rem, 1.4vw, 1.35rem); line-height: 1.6; }
.welcome-geography__lead strong { color: #147262; }
.welcome-geography__actions > .button { margin-top: .75rem; gap: 2rem; }
.welcome-geography__facts { display: flex; flex-wrap: wrap; gap: .4rem 1.25rem; margin-top: .6rem; }
.welcome-geography__facts p { margin: 0; font-size: .875rem; line-height: 1.5; }
.welcome-geography__facts strong { font-weight: 800; }
.welcome-geography__map-heading h2 { margin: 0; font-family: var(--font-profile); font-size: 1.4rem; }
.welcome-geography__hint { font-size: .8rem; color: var(--color-ink-soft); margin: .4rem 0 0; }
.welcome-geography__map { position: relative; }
.welcome-geography svg { display: block; width: 100%; height: clamp(19rem, 27vw, 23rem); overflow: visible; }
.welcome-geography svg path { fill: #d9ded8; stroke: #eaf4f1; stroke-width: 1.4; vector-effect: non-scaling-stroke; }
.welcome-geography svg .has-teams { fill: #84b9ab; }
.welcome-geography svg a:hover path, .welcome-geography svg a[aria-current] path { fill: var(--color-highlight); }
.welcome-geography svg a:focus-visible { outline: none; }
.welcome-geography svg a:focus-visible path { fill: var(--color-highlight); stroke: var(--color-focus); stroke-width: 3; }
.welcome-geography__selection { position: absolute; top: 35%; right: 0; width: 8rem; display: grid; gap: .2rem; pointer-events: none; }
.welcome-geography__selection > span:first-child { font-weight: 700; font-size: 1.1rem; }
.welcome-geography__selection strong { font-family: var(--font-profile); font-size: clamp(2rem, 5vw, 4rem); line-height: 1.05; }
.welcome-geography__selection > span:last-child { font-size: .85rem; max-width: 10rem; }
.welcome-geography__source, .welcome-geography__attribution { font-size: .75rem; line-height: 1.5; color: var(--color-ink-soft); margin: .7rem 0 0; }
.site-footer .welcome-geography__attribution { font-size: .7rem; color: inherit; padding-block: 0 1rem; margin-block: 0; margin-inline: auto; }
.welcome-page--geography { padding-top: 0; }
.welcome-page--geography .welcome-media-grid .welcome-recap { padding: 0; border: 0; background: transparent; }
.welcome-page--geography .welcome-gallery img { object-position: 50% 35%; }
.welcome-practical__desktop-title { display: none; }
@media(min-width: 48.001rem) {
    .welcome-page--geography .welcome-practical__grid { gap: 1.5rem; align-items: stretch; }
    .welcome-page--geography .welcome-practical details { background: var(--color-paper); border: 0; border-radius: 1.5rem .3rem 1.5rem .3rem; }
    .welcome-page--geography .welcome-practical details:nth-child(2), .welcome-page--geography .welcome-practical details:nth-child(3) { background: #eaf4f1; }
    .welcome-page--geography .welcome-practical summary { display: none; }
    .welcome-page--geography .welcome-practical__content { max-width: none; padding: clamp(1.5rem, 2.5vw, 2rem); }
    .welcome-page--geography .welcome-practical__desktop-title { display: flex; align-items: center; gap: .75rem; font-family: var(--font-profile); font-size: 1.35rem; font-weight: 800; margin: 0 0 1.25rem; }
    .welcome-practical__desktop-title img { flex: 0 0 24px; }
    .welcome-page--geography .welcome-practical__content p { margin-bottom: .9rem; line-height: 1.6; }
}
#welcome-content { scroll-margin-top: 6rem; }
@media(max-width: 48rem) {
    .welcome-geography__grid { grid-template-columns: minmax(0,1fr); min-height: 0; gap: 2rem; }
    .welcome-geography h1 { font-size: clamp(2.6rem, 9vw, 4rem); margin-block: 1.3rem; }
    .welcome-geography svg { height: auto; max-height: 33rem; }
    .welcome-geography__selection { width: 7rem; right: 0; }
}
