/* Northstar Avitech — interactive airport map edition. */
[hidden]{display:none!important}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}html:has(dialog[open]){overflow:hidden}
.airport-section{padding:68px 0 30px;background:linear-gradient(180deg,#fafcfd,#f0f4f7)}.airport-shell{max-width:1590px;padding:0 36px;margin:auto}.airport-heading{display:flex;justify-content:space-between;align-items:end;gap:35px;margin:0 8px 30px}.airport-heading .eyebrow{font-size:11px;letter-spacing:.19em}.airport-heading h2{font-size:clamp(32px,3.35vw,51px);line-height:1.15;margin-top:14px;font-weight:600;letter-spacing:-.045em}.airport-heading h2 span{font-weight:400;color:#516b80}.airport-intro{max-width:350px;padding-bottom:3px}.airport-intro p{font-size:13px;color:#6a7f90;line-height:1.65}.airport-intro p:first-child{font-weight:600;color:#193750;margin-bottom:3px;font-size:14px}.airport-card{position:relative;background:#fff;border:1px solid #cddce5;border-radius:14px;box-shadow:0 12px 45px #16364c08;isolation:isolate;overflow:hidden}.map-topbar{position:relative;z-index:4;background:#fff;border-bottom:1px solid #dce5eb;min-height:66px;padding:12px 19px;display:flex;align-items:center;justify-content:space-between;gap:15px}.map-filters{display:flex;gap:5px;overflow:auto;scrollbar-width:none}.map-filters::-webkit-scrollbar{display:none}.map-filter{border:1px solid transparent;background:transparent;border-radius:6px;padding:9px 13px;white-space:nowrap;font-size:11px;font-weight:500;color:#60778a;transition:background .15s,color .15s}.map-filter:hover{background:#edf3f7;color:#193750}.map-filter.is-active{background:#153149;color:#fff;border-color:#153149}.map-view-switch{display:flex;align-items:center;gap:3px;flex-shrink:0;border:1px solid #d9e3eb;padding:3px;border-radius:7px;background:#f5f8fa}.map-view-switch button{display:flex;align-items:center;gap:6px;padding:6px 9px;border:0;border-radius:4px;font-size:11px;color:#6b7f8e;background:none}.map-view-switch .icon{width:15px;height:15px}.map-view-switch button.is-active{color:#225f96;background:#fff;box-shadow:0 1px 4px #12365413}.map-viewport{position:relative;height:var(--map-height,650px);overflow:auto;overscroll-behavior-x:contain;background:#f4f7f8;cursor:grab;scrollbar-width:thin;scrollbar-color:#b6cad8 #edf3f6;outline-offset:-4px!important}.map-viewport.is-dragging{cursor:grabbing;user-select:none}.airport-stage{position:relative;width:var(--map-width,100%);aspect-ratio:1500 / 850;min-height:1px;transform:translateZ(0)}.airport-illustration{position:absolute;inset:0;width:100%;height:100%;display:block;pointer-events:none}.map-label{font-family:Inter,Arial,sans-serif;font-size:11px;font-weight:550;fill:#7b96a8;letter-spacing:1.8px;text-anchor:middle}.map-minor-label{font-family:Inter,Arial,sans-serif;font-size:9.5px;fill:#89a0b1;letter-spacing:1.2px;text-anchor:middle}.map-caption{font-family:Inter,Arial,sans-serif;font-size:9px;fill:#7b94a7;letter-spacing:1.1px}.runway-number{font-family:Arial,sans-serif;font-size:22px;font-weight:700;fill:#eef5f8;text-anchor:middle;dominant-baseline:central;letter-spacing:2px}.stand-number{font-family:Inter,Arial,sans-serif;font-size:8px;fill:#94a8b4}.compass-label{font-family:Arial,sans-serif;font-size:9px;font-weight:700;fill:#477a9c}.zone-aura{fill:#2c6fb7;fill-opacity:0;stroke:#2c6fb7;stroke-opacity:0;stroke-width:1.8;transition:fill-opacity .18s,stroke-opacity .18s}[data-map-region].is-highlighted .zone-aura{fill-opacity:.09;stroke-opacity:.46}.airport-pins{position:absolute;inset:0;pointer-events:none}.map-pin{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-100%);display:flex;align-items:center;flex-direction:column;padding:0;border:0;background:transparent;white-space:nowrap;z-index:2;pointer-events:auto;color:#18364f;touch-action:manipulation}.map-pin:hover,.map-pin:focus-visible{z-index:5}.map-pin.is-selected{z-index:6}.map-pin.pin-below{transform:translate(-50%,0)}.pin-tag{display:flex;align-items:center;gap:7px;padding:5px 9px 5px 5px;min-height:34px;background:#ffffffed;border:1px solid #c6d8e4;border-radius:6px;box-shadow:0 3px 9px #193c5410;transition:background .16s,border-color .16s,color .16s,box-shadow .16s}.pin-symbol{display:grid;place-items:center;width:23px;height:23px;background:#edf4fa;color:#2c6fb7;border-radius:3px;flex-shrink:0}.pin-symbol .icon{width:16px;height:16px}.pin-label{font-size:10.5px;font-weight:550;line-height:1.2;letter-spacing:-.01em}.pin-plus{display:grid;place-items:center;color:#6e91ac;font-size:16px;font-weight:400;line-height:1;width:11px;margin-left:1px}.pin-stem{display:block;width:1px;height:12px;background:#96b3c8}.pin-dot{display:block;width:7px;height:7px;background:#327caf;border:2px solid #f3f7fa;outline:1px solid #729cbb;border-radius:50%}.pin-below .pin-dot{order:0}.pin-below .pin-stem{order:1}.pin-below .pin-tag{order:2}.map-pin.pin-right{transform:translate(calc(-100% + 7px),-100%)}.pin-right .pin-stem{align-self:flex-end;margin-right:7px}.pin-right .pin-dot{align-self:flex-end;margin-right:4px}.map-pin:hover .pin-tag,.map-pin:focus-visible .pin-tag{border-color:#6799bf;box-shadow:0 5px 15px #245e8e1e;background:#fff}.map-pin.is-selected .pin-tag{background:#1e5682;border-color:#1e5682;color:#fff;box-shadow:0 4px 17px #16487326}.map-pin.is-selected .pin-symbol{background:#ffffff16;color:#d8edfc}.map-pin.is-selected .pin-plus{color:#badaf0;transform:rotate(45deg)}.map-pin.is-selected .pin-dot{background:#fff;outline:3px solid #2c6fb755}.map-tools{position:absolute;z-index:5;right:16px;top:82px;display:flex;flex-direction:column;gap:2px;background:#ffffffed;padding:5px;border-radius:8px;border:1px solid #d2dfe8;box-shadow:0 3px 14px #193c5410}.map-tools button{width:30px;height:31px;display:grid;place-items:center;border:0;border-radius:4px;background:transparent;font-size:22px;color:#294e6a;padding:5px}.map-tools button:hover{background:#eaf2f8}.map-tools button:disabled{opacity:.35;cursor:default}.map-tools .icon{width:17px;height:17px}.map-tools>span{height:1px;margin:2px 3px;background:#dbe5ed}.map-bottom{position:relative;z-index:4;min-height:48px;padding:12px 21px;display:flex;align-items:center;justify-content:space-between;gap:16px;background:#fff;border-top:1px solid #dce5eb;color:#7b8e9e;font-size:10px}.map-status{display:flex;align-items:center;gap:5px;white-space:nowrap;color:#526e82}.map-status>i{display:inline-block;width:6px;height:6px;border-radius:50%;background:#3a83b5;margin-right:4px}.map-status b{font-weight:600}.map-bottom p{font-size:10px;line-height:1.4}.map-key{white-space:nowrap}.airport-footnote{text-align:center;font-size:11px;color:#73899a;padding:18px 15px 0;line-height:1.6}.map-popover{position:absolute;z-index:12;width:322px;max-width:calc(100% - 24px);background:#fff;border:1px solid #bfcedb;border-radius:10px;box-shadow:0 16px 50px #1226382b;overflow:auto;max-height:calc(100% - 120px);animation:map-pop-in .16s ease-out}.map-popover-close{position:absolute;right:8px;top:8px;border:0;border-radius:4px;color:#71889a;background:transparent;width:31px;height:31px;font-size:24px;line-height:1;padding:0;z-index:1}.map-popover-close:hover{background:#edf3f7}.map-popover-heading{padding:19px 40px 15px 19px;background:linear-gradient(140deg,#f2f7fb,#fff);border-bottom:1px solid #e4ecf2}#popup-icon{display:block;color:#2c6fb7;margin-bottom:8px}#popup-icon .icon{width:26px;height:26px}.map-popover-location{font-size:9px!important;font-weight:550;letter-spacing:.11em;text-transform:uppercase;color:#718b9e;line-height:1.55!important;margin-bottom:7px}.map-popover-heading h3{font-size:21px;line-height:1.18;letter-spacing:-.035em;font-weight:550;color:#16354e;margin:0}.map-popover-heading h3:focus{outline:0}.map-popover-items{padding:7px 11px}.map-service-item{width:100%;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 9px;min-height:44px;border:0;border-bottom:1px solid #e9eff4;background:transparent;text-align:left;font-size:12px;line-height:1.5;color:#2e506b}.map-service-item:last-child{border-bottom:0}.map-service-item:hover,.map-service-item:focus-visible{background:#edf5fb;color:#1a6095;border-radius:4px}.map-service-item .icon{width:15px;height:15px;color:#668ba8}.map-popover-note{font-size:10px!important;color:#899ba9;text-align:left;padding:0 20px 14px}#popup-enquiry{display:flex;width:100%;align-items:center;justify-content:space-between;gap:15px;border:0;border-top:1px solid #e0e9ef;background:#edf4fa;color:#286895;padding:14px 20px;font-size:11px;font-weight:550;text-align:left}#popup-enquiry:hover{background:#e1eef8}#popup-enquiry .icon{height:16px;width:16px}.map-directory{padding:25px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;background:#f2f6f8}.map-directory-card{min-width:0;padding:21px;background:#fff;border:1px solid #d7e3eb;border-radius:7px}.directory-label{display:flex;align-items:center;gap:12px;color:#2c6fb7;margin-bottom:15px}.directory-label .icon{width:26px;height:26px}.directory-label span{font-size:10px;font-weight:600;letter-spacing:.11em;color:#8099ab}.map-directory-card h3{font-size:21px;line-height:1.2;font-weight:550}.map-directory-card>p{font-size:10px;color:#7890a1;margin:7px 0 15px}.map-directory-card .map-service-item{padding:12px 0;font-size:12px}.map-directory-card .map-service-item:hover{padding-inline:7px}.map-location-jump{padding:12px 0 0;background:none;border:0;color:#2c6fb7;font-size:10px;font-weight:550;margin-top:10px;display:flex;gap:8px;align-items:center}.map-location-jump .icon{width:13px;height:13px}.solution-back{display:flex;align-items:center;gap:9px;border:0;background:transparent;padding:0 0 20px;color:var(--blue);font-size:12px;margin-right:25px}.solution-back:hover{text-decoration:underline;text-underline-offset:3px}#solution-scope .is-map-focus{background:#f1f7fb;border-left:3px solid #2c6fb7;padding:16px 18px}.airport-card:fullscreen{display:flex;flex-direction:column;width:100vw;height:100dvh;max-height:none;border:0;border-radius:0}.airport-card:fullscreen .map-viewport{flex:1;min-height:0;height:auto}.airport-card:fullscreen .map-directory{overflow:auto;flex:1}.airport-card:fullscreen .map-tools{top:83px}.airport-card:fullscreen .map-bottom{flex-shrink:0}.airport-card:fullscreen::backdrop{background:#f4f7f8}@keyframes map-pop-in{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1600px){.pin-label{font-size:11px}.pin-tag{padding:6px 10px 6px 6px;gap:8px}.pin-stem{height:15px}}
@media(max-width:1050px){.airport-section{padding-top:45px}.airport-shell{padding-inline:24px}.airport-heading{gap:30px;align-items:start;margin-inline:2px}.airport-heading h2{font-size:37px;max-width:470px}.airport-intro{max-width:280px;padding-top:3px}.map-filter{font-size:10px;padding:9px 10px}.map-topbar{gap:10px;padding-inline:12px}.map-directory{grid-template-columns:repeat(2,minmax(0,1fr))}.map-key{display:none}}
@media(max-width:720px){.airport-heading{display:block;margin-bottom:24px}.airport-heading h2{font-size:34px;margin-top:12px}.airport-intro{margin-top:16px;max-width:450px}.airport-intro p{font-size:12px}.airport-intro p:first-child{display:none}.map-topbar{flex-wrap:wrap;gap:9px;padding:12px}.map-filters{order:2;width:100%}.map-view-switch{margin-left:auto;position:absolute;right:12px;top:11px}.map-topbar::before{content:'AIRPORT SYSTEMS EXPLORER';font-size:9px;letter-spacing:.12em;color:#72899c;padding:9px 0;margin-bottom:3px}.map-filter{padding:8px 10px;font-size:10px;flex-shrink:0}.map-tools{top:113px;right:11px}.map-bottom{gap:8px;padding:13px}.map-bottom p{font-size:9px;text-align:right;max-width:185px}.airport-footnote{font-size:10px;padding-inline:2px}.airport-card:fullscreen .map-tools{top:112px}.map-popover{max-height:calc(100% - 142px)}.airport-heading .eyebrow{font-size:10px}.airport-shell{padding-inline:17px}.airport-section{padding-top:38px;padding-bottom:24px}.map-directory{padding:16px;gap:14px}.map-directory-card{padding:17px}.map-directory-card h3{font-size:19px}}
@media(max-width:480px){.airport-heading h2{font-size:31px;max-width:320px}.airport-heading h2 span{white-space:nowrap}.airport-shell{padding-inline:12px}.airport-heading{margin-inline:7px}.airport-card{border-radius:10px}.map-filter{padding-inline:8px;font-size:9.5px}.map-filters{gap:2px}.map-directory{grid-template-columns:1fr}.map-bottom{padding-inline:11px}.map-status{font-size:9px;gap:4px}.map-bottom p{max-width:170px;font-size:8.5px}.map-popover{border-radius:8px;max-height:calc(100% - 138px)}.map-popover-heading{padding:16px 39px 12px 17px}#popup-icon{margin-bottom:5px}.map-popover-heading h3{font-size:20px}.map-popover-items{padding:5px 9px}.map-service-item{padding-block:10px;font-size:12px}.map-popover-note{padding-bottom:12px}#popup-enquiry{padding:12px 18px}.pin-label{font-size:10px}.process-inner{grid-template-columns:repeat(2,minmax(0,1fr));padding-inline:15px}.process-inner a{min-width:0;padding-inline:8px}.process-inner h2{font-size:clamp(16px,5.2vw,22px)}.process-inner p{font-size:11px;overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){.map-popover{animation:none}.zone-aura,.pin-tag{transition:none}}@media print{.map-topbar,.map-tools,.map-popover{display:none!important}.map-viewport{height:auto!important;overflow:visible}.airport-stage{width:100%!important}.airport-section{break-inside:avoid;padding:10px 0}.pin-label{font-size:7px}.airport-shell{padding:0}}

/* Fit the explorer to its container; retain readable controls at every width. */
@media screen {
  .airport-shell,
  .airport-card { width: 100%; max-width: 100%; min-width: 0; }
  .airport-shell { max-width: 1590px; }
  .airport-heading > * { min-width: 0; }
  .airport-heading h2 span { white-space: normal; }
  .map-topbar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px 14px;
    padding: 12px 16px;
  }
  .map-topbar::before { content: none; }
  .map-heading-title { display: none; }
  .map-filters {
    flex: 1 1 500px;
    min-width: 0;
    width: auto;
    order: 0;
    flex-wrap: wrap;
    gap: 5px;
    overflow: visible;
  }
  .map-filter {
    flex: 0 1 auto;
    min-height: 44px;
    padding: 9px 11px;
    font-size: 11px;
    line-height: 1.4;
    white-space: normal;
  }
  .map-view-switch {
    position: static;
    margin: 0;
    flex-shrink: 0;
  }
  .map-view-switch button { min-height: 44px; padding: 8px 10px; }
  .map-tools,
  .airport-card:fullscreen .map-tools {
    position: static;
    flex-direction: row;
    flex-shrink: 0;
    align-items: center;
    gap: 2px;
    padding: 3px;
    margin: 0;
    background: #f5f8fa;
    box-shadow: none;
  }
  .map-tools button { width: 44px; height: 44px; }
  .map-tools > span { width: 1px; height: 24px; margin: 0 3px; }
  .map-viewport {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    height: var(--map-height, auto);
    touch-action: pan-x pan-y pinch-zoom;
  }
  .airport-stage { min-width: 0; max-width: none; overflow: hidden; }
  /* One coordinate system keeps every name clear of its equipment at any zoom. */
  .airport-pins {
    inset: auto;
    left: 0;
    top: 0;
    width: 1500px;
    height: 850px;
    transform: scale(var(--map-scale, 1));
    transform-origin: top left;
  }
  .airport-card .map-pin,
  .airport-card .map-pin.pin-right,
  .airport-card .map-pin.pin-below {
    left: var(--label-x);
    top: var(--label-y);
    width: var(--label-width);
    height: 44px;
    padding: 0;
    transform: translate(-50%, -50%);
  }
  .airport-card .pin-tag {
    display: flex;
    align-items: center;
    width: 100%;
    height: 44px;
    min-height: 44px;
    padding: 6px 9px 6px 6px;
    gap: 8px;
    border-radius: 6px;
  }
  .airport-card .pin-symbol { display: grid; width: 28px; height: 28px; }
  .airport-card .pin-symbol .icon { width: 20px; height: 20px; }
  .airport-card .pin-label { display: block; flex: 1; min-width: 0; font-size: 18px; font-weight: 500; line-height: 1.2; }
  .airport-card .pin-plus { display: grid; flex: 0 0 14px; width: 14px; margin: 0; font-size: 22px; }
  .airport-card .pin-stem,
  .airport-card .pin-dot { display: none; }
  .map-callout-leaders { position: absolute; inset: 0; width: 1500px; height: 850px; pointer-events: none; color: var(--star-blue); }
  .map-callout-leaders path { fill: none; stroke: currentColor; stroke-width: 1.5; }
  .map-callout-leaders circle { fill: currentColor; stroke: #f4f7f8; stroke-width: 1.2; }
  .map-callout-leaders .is-selected { color: var(--star-blue-active); }
  .map-callout-leaders .is-selected path { stroke-width: 2.5; }
  .airport-card .map-pin:focus-visible { outline: 3px solid #16354e; outline-offset: 4px; border-radius: 6px; }
  .map-bottom { flex-wrap: wrap; }
  .map-bottom p { max-width: 100%; text-align: left; }
  .map-popover { overscroll-behavior: contain; scrollbar-gutter: stable; }
  .map-popover-close {
    width: 44px;
    height: 44px;
    font-size: 28px;
    line-height: 1;
    right: 4px;
    top: 4px;
  }
  .map-popover-heading h3,
  .map-service-item > span { overflow-wrap: anywhere; min-width: 0; }
  .map-service-item { min-height: 48px; }
  .map-service-item .icon { flex-shrink: 0; }
  .map-location-menu {
    display: none;
    padding: 16px;
    background: #f4f7fa;
    border-top: 1px solid #dce5eb;
  }
  .map-location-title {
    margin: 0 0 12px;
    color: #526e82;
    font-size: 11px;
    font-weight: 550;
    line-height: 1.5;
  }
  .map-location-options { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
  .map-location-button {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
    min-height: 56px;
    padding: 10px;
    border: 1px solid #d0dde7;
    border-radius: 6px;
    background: #fff;
    color: #244862;
    font-size: 12px;
    line-height: 1.4;
    text-align: left;
    touch-action: manipulation;
  }
  .map-location-button:hover,
  .map-location-button:focus-visible { border-color: #6799bf; background: #edf5fb; }
  .map-location-button[aria-expanded="true"] { border-color: #1e5682; background: #1e5682; color: #fff; }
  .location-symbol {
    display: grid;
    place-items: center;
    flex-shrink: 0;
    width: 28px;
    height: 28px;
    border-radius: 4px;
    background: #e8f1f8;
    color: #215e8e;
  }
  .location-symbol .icon { width: 20px; height: 20px; }
  .location-label { min-width: 0; overflow-wrap: anywhere; }
  .airport-card.is-compact .map-topbar {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px;
    padding: 12px;
  }
  .airport-card.is-compact .map-heading-title {
    display: block;
    grid-area: 1 / 1;
    max-width: 150px;
    color: #72899c;
    font-size: 10px;
    font-weight: 500;
    letter-spacing: .11em;
    line-height: 1.5;
    text-transform: uppercase;
  }
  .airport-card.is-compact .map-view-switch { grid-area: 1 / 2; justify-self: end; }
  .airport-card.is-compact .map-filters { grid-area: 2 / 1 / 3 / -1; }
  .airport-card.is-compact .map-tools { grid-area: 3 / 1 / 4 / -1; justify-self: end; }
  .airport-card.is-narrow .map-location-menu:not([hidden]) { display: block; }
  .airport-card.is-compact .map-popover {
    position: relative;
    inset: auto !important;
    width: 100% !important;
    max-width: 100%;
    margin: 0;
    max-height: min(62dvh, 520px);
    border-inline: 0;
    border-radius: 0;
    box-shadow: 0 6px 22px #12263816;
    scroll-margin-block: 12px;
  }
  .airport-card.is-compact .map-popover-close {
    position: sticky;
    float: right;
    top: 6px;
    right: auto;
    margin: 6px 6px -50px 0;
    background: #fffffff2;
  }
  .airport-card.is-compact .map-popover-heading { padding-right: 56px; }
  .airport-card.is-narrow .map-filter { flex: 1 1 calc(33.333% - 6px); padding: 8px 6px; font-size: 10.5px; }
  .airport-card.is-narrow .map-location-options { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .airport-card.is-narrow .map-location-menu { padding: 12px; }
  .airport-card.is-narrow .map-bottom { gap: 8px; padding: 12px; }
  .airport-card.is-narrow .map-bottom p { width: 100%; font-size: 10px; }
  .airport-card.is-narrow .map-status { font-size: 10px; }
  .airport-card:fullscreen {
    width: 100%;
    height: 100dvh;
    overflow: auto;
    padding-top: env(safe-area-inset-top);
    padding-bottom: env(safe-area-inset-bottom);
  }
  .airport-card:fullscreen .map-topbar,
  .airport-card:fullscreen .map-bottom,
  .airport-card:fullscreen .map-location-menu,
  .airport-card:fullscreen .map-popover { flex-shrink: 0; }
  .airport-card:fullscreen .map-viewport { flex: 1 1 auto; min-height: 0; }
  .airport-card.is-compact:fullscreen .map-viewport { flex: 0 0 auto; height: var(--map-height); }
  .airport-card:fullscreen .map-directory { min-height: 0; }
}

@media screen and (max-width: 360px) {
  .airport-heading h2 { font-size: clamp(25px, 8.6vw, 31px); }
  .airport-card.is-compact .map-topbar { padding: 10px; gap: 8px; }
  .airport-card.is-compact .map-heading-title { font-size: 9px; letter-spacing: .08em; }
  .map-view-switch button { padding-inline: 8px; }
  .map-location-button { padding: 8px; gap: 6px; font-size: 11.5px; }
}

/* Menu blue sampled from the existing logo's star. */
@media screen {
  .airport-card { --star-blue: #1970b9; --star-blue-hover: #155f9e; --star-blue-active: #104e86; }
  .airport-card .map-pin .pin-tag {
    color: #fff;
    background: var(--star-blue);
    border-color: var(--star-blue);
    box-shadow: 0 3px 9px #104e8629;
  }
  .airport-card .map-pin .pin-symbol { color: #fff; background: #ffffff20; }
  .airport-card .map-pin .pin-plus { color: #fff; }
  .airport-card .map-pin .pin-stem { background: var(--star-blue); }
  .airport-card .map-pin .pin-dot { background: var(--star-blue); outline-color: var(--star-blue); }
  .airport-card .map-pin:hover .pin-tag,
  .airport-card .map-pin:focus-visible .pin-tag { background: var(--star-blue-hover); border-color: var(--star-blue-hover); }
  .airport-card .map-pin.is-selected .pin-tag,
  .airport-card.is-compact .map-pin.is-selected .pin-tag { background: var(--star-blue-active); border-color: var(--star-blue-active); }
  .airport-card .map-location-button {
    color: #fff;
    background: var(--star-blue);
    border-color: var(--star-blue);
  }
  .airport-card .map-location-button:hover,
  .airport-card .map-location-button:focus-visible { background: var(--star-blue-hover); border-color: var(--star-blue-hover); }
  .airport-card .map-location-button[aria-expanded="true"] { background: var(--star-blue-active); border-color: var(--star-blue-active); }
  .airport-card .location-symbol { color: #fff; background: #ffffff20; }
  .map-popover-heading { padding-right: 56px; }
}

@media print { .map-callout-leaders { display: none; } }
