/* Homepage network directory; deliberately isolated from product locations. */
#section-locations.network-section {padding:80px 0;background:#0c101d;color:#eef0f6;border-block:1px solid #ffffff10;}
.network-heading {display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:40px;}
.network-eyebrow,.network-directory-title,.network-selected>span {font-size:11px;letter-spacing:.16em;font-weight:600;color:#e0bd45;}
.network-heading h2 {font-size:clamp(30px,3vw,42px);margin:0;letter-spacing:-.035em;}
.network-heading>p {color:#a4abbd;font-size:14px;line-height:1.8;margin:0;max-width:440px;}
.network-layout {display:grid;grid-template-columns:390px minmax(0,1fr);border-block:1px solid #ffffff12;background-image:linear-gradient(#ffffff04 1px,transparent 1px);}
.network-directory {padding:30px 25px 30px 0;border-right:1px solid #ffffff12;}
.network-directory-title {display:flex;justify-content:space-between;gap:10px;margin-bottom:20px;}
.network-directory-title>span:last-child {font-size:11px;letter-spacing:0;color:#a4abbd;font-weight:400;}
.network-location-list {display:grid;gap:8px;}
.network-location {display:flex;align-items:center;gap:12px;width:100%;padding:17px 14px;text-align:left;background:transparent;border:1px solid transparent;border-radius:10px;color:#f3f4f8;font:inherit;cursor:pointer;transition:border-color .18s,background .18s;}
.network-location:hover {background:#ffffff04;border-color:#ffffff25;}
.network-location.is-selected {background:#ffc40008;border-color:#ffc40065;}
.network-location-icon {display:grid;place-items:center;width:44px;height:30px;flex-shrink:0;border:0;border-radius:0;background:transparent;box-shadow:none;}
.network-location-copy {display:grid;gap:3px;min-width:0;flex:1;}
.network-city {font-size:16px;line-height:1.5;font-weight:650;}
.network-city small {font:10px monospace;color:#a4abbd;border:1px solid #ffffff20;padding:3px 4px;border-radius:4px;margin-left:4px;}
.network-country,.network-availability {font-size:11px;color:#a4abbd;line-height:1.6;}
.network-status {font-size:10px;color:#e6c75e;white-space:nowrap;}
.network-status::before {content:'';display:inline-block;width:5px;height:5px;border-radius:50%;background:currentColor;margin-right:5px;}
.network-status.is-soon {color:#a4abbd;}
.network-map-panel {position:relative;display:flex;align-items:center;min-height:610px;overflow:hidden;background:radial-gradient(ellipse at 40% 55%,#ffc40005,transparent 60%),linear-gradient(#ffffff03 1px,transparent 1px),linear-gradient(90deg,#ffffff03 1px,transparent 1px);background-size:auto,32px 32px,32px 32px;}
.network-map {position:relative;width:100%;margin-top:-70px;}
.network-map img {width:100%;height:auto;display:block;}
.network-pin {position:absolute;left:var(--pin-x);top:var(--pin-y);transform:translate(-50%,-50%);width:26px;height:26px;padding:0;display:grid;place-items:center;border:0;background:transparent;border-radius:50%;cursor:pointer;}
.network-pin-dot {width:7px;height:7px;display:block;border-radius:50%;background:#ffc400;box-shadow:0 0 0 3px #0c101d;transition:box-shadow .18s;}
.network-pin.is-selected .network-pin-dot {box-shadow:0 0 0 3px #0c101d,0 0 0 5px #ffc40070,0 0 22px #ffc40045;}
.network-pin.is-soon .network-pin-dot {background:#0c101d;border:1px solid #a4abbd;}
.network-pin.is-soon.is-selected .network-pin-dot {box-shadow:0 0 0 3px #0c101d,0 0 0 5px #a4abbd70;}
.network-selected {position:absolute;right:24px;bottom:70px;text-align:right;background:#0c101de8;border:1px solid #ffffff20;border-radius:10px;padding:18px 22px;}
.network-selected>span {color:#929bb2;font-size:10px;}
.network-selected strong {display:block;font-size:19px;margin:7px 0 3px;}
.network-selected p {color:#b2b9ca;font-size:12px;margin:0;}
.network-legend {position:absolute;bottom:25px;left:25px;display:flex;gap:22px;font-size:10px;color:#a4abbd;}
.network-legend i {display:inline-block;width:6px;height:6px;background:#ffc400;border-radius:50%;margin-right:6px;}
.network-legend i.is-soon {background:transparent;border:1px solid #a4abbd;}
.network-note {color:#929bb2;font-size:12px;line-height:1.8;margin:22px 0 0;}
.network-location:focus-visible,.network-pin:focus-visible {outline:2px solid #ffc400;outline-offset:3px;}
@media(max-width:1100px){.network-layout{grid-template-columns:350px minmax(0,1fr);}.network-directory{padding-right:16px;}.network-location{padding-inline:8px;gap:8px;}.network-city{font-size:14px;}.network-map-panel{min-height:610px;}}
@media(max-width:767px){#section-locations.network-section{padding:50px 0;}.network-heading{display:block;margin-bottom:25px;}.network-heading>p{margin-top:16px;}.network-layout{grid-template-columns:1fr;}.network-directory{border-right:0;padding:24px 0;}.network-location{padding:14px;}.network-city{font-size:16px;}.network-map-panel{min-height:330px;border-top:1px solid #ffffff12;}.network-map{margin-top:-90px;}.network-selected{right:14px;bottom:53px;padding:12px 16px;}.network-legend{left:14px;bottom:16px;gap:16px;}.network-status{font-size:11px;}}
@media(prefers-reduced-motion:reduce){.network-location,.network-pin-dot{transition:none;}}
.network-heading h2 {line-height:1.2;}
/* Keep tightly grouped US markers individually targetable on narrow screens. */
@media(max-width:767px){.network-pin{width:16px;height:16px;}}
.network-location-icon img {width:44px;height:30px;object-fit:contain;display:block;border-radius:0;}
/* Latency belongs to the selected location, not a separate page-level panel. */
.network-selected {width:360px;max-width:calc(100% - 48px);padding:24px;text-align:left;}
.network-selected>span {font-size:11px;}
.network-selected>strong {font-size:26px;line-height:1.25;margin:10px 0;}
.network-selected>p {font-size:12px;line-height:1.7;}
.network-selected-ping {display:flex;align-items:center;gap:16px;margin-top:20px;padding-top:18px;border-top:1px solid #ffffff18;}
.network-ping-result {min-width:0;flex:1;}
.network-ping-result>span {display:block;font-size:11px;color:#bdc4d4;}
.network-ping-result strong {display:block;font-size:25px;line-height:1.25;color:#f2cf51;margin:7px 0;}
.network-ping-result small {display:block;font-size:10px;line-height:1.6;color:#a4adbf;}
.network-selected .network-ping-note {font-size:10px;color:#929bb2;line-height:1.6;margin-top:18px;}
.network-ping-retry {background:transparent;border:1px solid #ffc40060;color:#f2cf51;border-radius:6px;padding:10px 14px;font:inherit;font-size:12px;white-space:nowrap;cursor:pointer;}
.network-ping-retry:hover:not(:disabled) {background:#ffc4000c;}
.network-ping-retry:disabled {opacity:.5;cursor:default;}
.network-ping-retry:focus-visible {outline:2px solid #ffc400;outline-offset:3px;}
.network-map {margin-top:-170px;}
@media(max-width:767px){
 .network-map-panel{display:flex;flex-direction:column;align-items:stretch;min-height:0;padding:20px 0;overflow:visible;}
 .network-map{margin:0 0 20px;}
 .network-selected{position:relative;right:auto;bottom:auto;width:100%;max-width:none;padding:22px;}
 .network-legend{position:static;flex-wrap:wrap;margin:20px 0 0;}
 .network-ping-result strong{font-size:24px;}
}
