.coverage-page__main { padding-bottom: 2rem; }
.coverage-page__hero { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr); align-items: center; gap: 2rem; min-height: calc(100vh - var(--header-height)); padding-block: 3rem; }
.coverage-page__breadcrumb { display: flex; gap: 0.75rem; margin-bottom: 2rem; font-size: 0.8rem; color: #d8d3e4; }
.coverage-page__eyebrow { margin: 0 0 0.8rem; color: var(--color-violet-bright); font-size: 0.75rem; font-weight: 900; letter-spacing: 0.12em; }
.coverage-page__title { margin: 0 0 1.3rem; font-size: clamp(2.5rem, 4.1vw, 4.6rem); line-height: 1.08; letter-spacing: -0.035em; }
.coverage-page__lede { margin: 0 0 1.5rem; color: #e6e0ef; font-size: 1.1rem; line-height: 1.65; }
.coverage-page__status { display: flex; align-items: start; gap: 1rem; margin-block: 1.5rem; padding-block: 1.2rem; border-block: 1px solid var(--color-line); font-size: 0.9rem; }
.coverage-page__status > i { color: var(--color-violet-bright); padding-top: 0.2rem; }
.coverage-page__status p { margin: 0.5rem 0 0; color: #d8d3e4; line-height: 1.6; }
.coverage-page__actions { display: flex; flex-wrap: wrap; gap: 0.75rem; }
.coverage-page__map { min-width: 0; margin: 0; }
.coverage-page__map-canvas { position: relative; }
.coverage-page__map svg { display: block; width: 100%; height: auto; overflow: visible; }
.coverage-page__map .coverage-map__state { fill: #61298a; fill-opacity: 0.82; stroke: #bb62ef; stroke-width: 3.5; cursor: help; transition: fill 160ms ease, stroke 160ms ease, opacity 160ms ease; }
.coverage-page__map .coverage-map__state--current { fill: #2388ff; stroke: #82c4ff; }
.coverage-page__map .coverage-map__state:hover,
.coverage-page__map .coverage-map__state:focus { fill: #d797ff; stroke: #ffffff; outline: none; }
.coverage-page__map .coverage-map__state--current:hover,
.coverage-page__map .coverage-map__state--current:focus { fill: #56a8ff; }
.coverage-page__legend { display: flex; flex-wrap: wrap; justify-content: center; gap: 0.75rem 1.5rem; margin-top: 0.75rem; color: #e6e0ef; font-size: 0.76rem; }
.coverage-page__legend span { display: inline-flex; align-items: center; gap: 0.5rem; }
.coverage-page__key { width: 0.85rem; height: 0.85rem; border: 1px solid #a85bdb; border-radius: 0.2rem; background: rgba(100, 43, 165, 0.3); }
.coverage-page__key--current { border-color: #82c4ff; background: #2388ff; }
.coverage-page__tooltip { position: absolute; z-index: 2; left: var(--coverage-tip-x, 50%); top: var(--coverage-tip-y, 50%); min-width: 11rem; padding: 0.7rem 0.85rem; border: 1px solid #6db4ff; border-radius: 0.55rem; background: rgba(5, 7, 24, 0.96); box-shadow: var(--shadow-card); color: #ffffff; font-size: 0.78rem; line-height: 1.4; pointer-events: none; opacity: 0; transform: translate(0.75rem, -50%); transition: opacity 140ms ease; }
.coverage-page__tooltip strong { display: block; margin-bottom: 0.15rem; }
.coverage-page__tooltip.is-visible { opacity: 1; }
.coverage-page__map figcaption { max-width: 28rem; margin: 1rem auto 0; text-align: center; color: #d8d3e4; font-size: 0.8rem; line-height: 1.6; }
.coverage-page__section { padding-block: 3rem; border-top: 1px solid var(--color-line); scroll-margin-top: 6rem; }
.coverage-page__heading { margin: 0 0 1rem; max-width: 45rem; font-size: clamp(1.8rem, 2.5vw, 2.7rem); line-height: 1.15; letter-spacing: -0.025em; }
.coverage-page__description { max-width: 46rem; margin: 0 0 1.5rem; color: #d8d3e4; line-height: 1.7; }
.coverage-page__regions { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; }
.coverage-page__section-heading { max-width: 54rem; }
.coverage-page__path { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; padding: 0; margin: 2rem 0 0; list-style: none; }
.coverage-page__path li { display: grid; grid-template-columns: auto 1fr; gap: 1rem; padding: 1.5rem; border: 1px solid var(--color-line); border-radius: var(--radius-md); background: rgba(10, 13, 35, 0.6); }
.coverage-page__path span { color: var(--color-violet-bright); font-weight: 900; }
.coverage-page__path h3 { margin: 0 0 0.6rem; font-size: 1rem; }
.coverage-page__path p { margin: 0; color: #d8d3e4; font-size: 0.86rem; line-height: 1.65; }
.coverage-page__region { display: flex; flex-direction: column; padding: 1.5rem; border: 1px solid var(--color-line); border-radius: var(--radius-md); background: rgba(10, 13, 35, 0.6); }
.coverage-page__label { margin: 0 0 1rem; color: var(--color-violet-bright); font-size: 0.65rem; font-weight: 800; letter-spacing: 0.06em; }
.coverage-page__region h3, .coverage-page__help h3 { margin: 0 0 0.75rem; font-size: 1.25rem; }
.coverage-page__region > p:not(.coverage-page__label), .coverage-page__help p { margin: 0 0 1.5rem; color: #d8d3e4; font-size: 0.9rem; line-height: 1.65; }
.coverage-page__availability { margin-top: auto; padding-top: 1rem; border-top: 1px solid var(--color-line); font-size: 0.75rem; color: #e6e0ef; }
.coverage-page__limits { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); gap: 3rem; }
.coverage-page__help { padding: 1.5rem; border-left: 2px solid var(--color-violet); }
.coverage-page__help-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 0.75rem; }
.coverage-page__text-link { display: inline-flex; align-items: center; gap: 0.75rem; min-height: 2.75rem; color: var(--color-focus); font-weight: 800; text-decoration: underline; text-underline-offset: 0.25rem; }
@media (max-width: 72rem) {
  .coverage-page__hero { grid-template-columns: 1fr; min-height: auto; }
  .coverage-page__copy { max-width: 42rem; }
  .coverage-page__map { width: min(100%, 42rem); justify-self: center; }
  .coverage-page__regions, .coverage-page__path { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 47.5rem) {
  .coverage-page__hero { padding-top: 2rem; gap: 2rem; }
  .coverage-page__regions, .coverage-page__path, .coverage-page__limits { grid-template-columns: 1fr; }
  .coverage-page__section { padding-block: 2rem; }
  .coverage-page__text-link { font-size: 0.85rem; }
}
@media (prefers-reduced-motion: reduce) {
  .coverage-page__map .coverage-map__state, .coverage-page__tooltip { transition: none; }
}
