/* Owner-approved hero/corridors refinement only. Later modules are untouched. */
.hero{height:100svh;min-height:0}
.hero .hero-event-action{left:73%;top:52%}
.corridors-v2{height:100svh;min-height:700px;box-sizing:border-box;padding-block:24px;display:flex;flex-direction:column;gap:0}
.corridors-v2 .module-heading{margin-bottom:12px;flex-shrink:0}
.corridors-v2 .module-heading h2{font-size:30px;margin:6px 0}
.corridors-v2 .module-heading p:not(.eyebrow){font-size:15px}
.corridors-v2 .region-tabs{margin-bottom:10px;flex-shrink:0}
.corridors-v2 .region-tabs button{padding:9px 0}
.corridors-v2 #corridor-tile-panel{flex-shrink:0}
.corridors-v2 .corridor-tiles{padding-bottom:5px;gap:12px}
.corridors-v2 .corridor-tile{min-height:108px;padding:12px 16px;gap:3px;flex-basis:calc((100% - 48px)/5)}
.corridors-v2 .corridor-tile .line-icon{width:26px;height:26px;margin-bottom:3px}
.corridors-v2 .corridor-tile .tile-arrow{font-size:14px}
.corridors-v2 .tile-navigation{margin:4px 0 8px}
.corridors-v2 .tile-navigation button{height:30px;width:30px}
.corridors-v2 .world-panel{flex:1;min-height:0;display:flex;flex-direction:column}
.corridors-v2 .map-topline{padding:7px 16px;flex-shrink:0}
.corridors-v2 .world-panel #map{position:relative;flex:1;min-height:0;aspect-ratio:auto;padding:0 12px}
.corridors-v2 .world-panel #map svg{overflow:hidden}
.corridors-v2 .world-panel .country.anchor{fill:url(#uk-union-jack)!important;stroke:#61788c;stroke-width:.3}
.corridors-v2 .map-selection{padding:10px 16px;flex-shrink:0}
.corridors-v2 .map-selection h3{font-size:19px;margin-bottom:3px}
.corridors-v2 .map-selection p{font-size:12px;line-height:1.4}
.corridors-v2 .map-scope{padding:0 16px 8px;font-size:10px;flex-shrink:0}
.corridors-v2 .country-flags{position:absolute;bottom:10px;left:12px;margin:0;display:flex;flex-direction:column;gap:3px;background:#ffffffee;border:1px solid var(--border);border-radius:8px;padding:9px 12px;max-width:225px;box-shadow:0 2px 8px #102d4808}
.corridors-v2 .country-flags[hidden]{display:none}
.corridors-v2 .country-label{font-size:12px;line-height:1.3;white-space:nowrap}
.corridors-v2 .country-label .flag{font-size:17px}
.corridors-v2 .key-navigation{display:flex;align-items:center;gap:6px;margin-top:4px;font-size:10px;color:var(--muted)}
.corridors-v2 .key-navigation button{width:28px;height:26px;border:1px solid var(--border);border-radius:4px;background:white;color:var(--blue)}
.corridors-v2 .key-navigation button:disabled{opacity:.3}
@media(min-width:1101px){.corridors-v2{min-height:0}}
@media(min-width:701px) and (max-width:1100px){.hero .hero-event-action{left:auto;right:var(--gutter);top:auto;bottom:65px}.corridors-v2 .corridor-tile{flex-basis:calc((100% - 36px)/4)}}
@media(max-width:700px){.hero{height:auto;min-height:max(860px,100svh)}.hero .hero-event-action{left:var(--gutter);top:auto;bottom:68px}.corridors-v2{height:auto;min-height:0;padding-block:32px;display:block}.corridors-v2 .module-heading h2{font-size:27px}.corridors-v2 .corridor-tile{flex-basis:68%;min-height:110px}.corridors-v2 .world-panel #map{flex:none;height:340px;padding:0}.corridors-v2 .map-selection{display:block;padding:14px}.corridors-v2 .selection-link{margin-top:12px}.corridors-v2 .map-topline{padding:9px}.corridors-v2 .country-flags{bottom:9px;left:9px;padding:8px 10px}.corridors-v2 .map-scope{padding:0 14px 12px}}
@media(max-width:350px){.hero{min-height:max(920px,100svh)}}

/* Compact horizontal corridor buttons give the freed height to the complete map. */
.corridors-v2 .corridor-tile{display:grid;grid-template-columns:26px minmax(0,1fr) 12px;align-items:center;gap:10px;height:65px;min-height:65px;padding:8px 12px}
.corridors-v2 .corridor-tile .line-icon{margin:0;width:26px;height:26px}
.corridors-v2 .corridor-tile-copy{display:flex;flex-direction:column;gap:2px;min-width:0}
.corridors-v2 .corridor-tile strong{font-size:13px;line-height:1.25}
.corridors-v2 .corridor-tile small{font-size:12px;line-height:1.3}
.corridors-v2 .corridor-tile .tile-arrow{margin:0;align-self:center}

/* Ten-row country keys, more map height and automatic geographic framing. */
.corridors-v2{padding-block:14px}
.corridors-v2 .module-heading{margin-bottom:6px}
.corridors-v2 .module-heading .eyebrow{display:none}
.corridors-v2 .module-heading h2{margin:0 0 4px}
.corridors-v2 .module-heading p:not(.eyebrow){margin-top:0}
.corridors-v2 .region-tabs{margin-bottom:6px}
.corridors-v2 .region-tabs button{min-height:38px;padding:6px 0}
.corridors-v2 #corridor-tile-panel{position:relative;padding-right:76px;margin-bottom:6px}
.corridors-v2 .tile-navigation{position:absolute;right:0;top:17px;margin:0}
.corridors-v2 .country-label{font-size:13px;line-height:1.35}
.corridors-v2 .country-flags{gap:4px}
@media(max-width:700px){.corridors-v2{padding-block:24px}.corridors-v2 .module-heading .eyebrow{display:block}.corridors-v2 .module-heading .quiet-link{margin-top:10px}.corridors-v2 #corridor-tile-panel{padding-right:0;margin-bottom:40px}.corridors-v2 .tile-navigation{top:auto;bottom:-34px}.corridors-v2 .world-panel #map{height:560px}.corridors-v2 .world-panel #map.has-corridor svg{height:260px}.corridors-v2 .country-flags{max-width:calc(100% - 18px);gap:4px}.corridors-v2 .country-label{font-size:13px;white-space:normal}.corridors-v2 .country-label .flag{flex-shrink:0}}
@media(min-width:701px){.corridors-v2{padding-block:12px}.corridors-v2 .map-topline{padding-block:3px}.corridors-v2 .map-tools button{width:30px;height:30px}}
@media(max-width:700px){.corridors-v2 .world-panel #map.has-corridor svg{height:220px}}


@media(max-width:700px){.corridors-v2 .world-panel #map.has-corridor svg{height:calc(100% - var(--country-key-height,320px) - 24px);width:100%;margin-left:0}}
/* Owner-marked lower desktop event action position. */
@media(min-width:1101px){.hero .hero-event-action{top:72%}}
/* Reduce the approved masthead logo by 15%, retaining its aspect ratio. */
.hero .identity img{width:212.5px}
@media(max-width:700px){.hero .identity img{width:127.5px}}

/* Give the corridor heading breathing room after removing its supporting line. */
.corridors-v2 .module-heading h2{margin-top:22px;margin-bottom:12px}
