body.network-page {
    --network-bg: #031326;
    --network-panel: #071d3d;
    --network-panel-2: #0b2852;
    --network-line: rgba(89, 180, 255, .34);
    --network-blue: #2d67ee;
    --network-cyan: #69eaff;
    --network-text: #f7fbff;
    --network-muted: #a9bfd8;
    background: var(--network-bg);
    color: var(--network-text);
    overflow-x: clip;
}

/* Shared Home 2 navigation geometry. Keep this route aligned with the other
   public pages instead of maintaining a smaller, route-specific header. */
body.network-page:not(.home-landing):not(.city-fullscreen) .site-navbar {
    position: relative !important;
    inset: auto !important;
    z-index: 20;
    padding: 7px 0 !important;
    border: 0 !important;
    border-bottom: 1px solid #ffffff12 !important;
    background: #0a1628 !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
}

body.network-page .site-navbar > .container {
    width: 96%;
    max-width: 1360px;
}

body.network-page:not(.home-landing):not(.city-fullscreen) .site-navbar__bar {
    position: relative;
    display: flex !important;
    align-items: center;
    flex-wrap: wrap;
    width: 100%;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: none !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    gap: 17.6px !important;
}

body.network-page:not(.home-landing):not(.city-fullscreen) .site-brand--home2-lockup {
    position: static !important;
    flex: 0 1 400px !important;
    width: auto !important;
    max-width: 400px !important;
    margin: 0 16px 0 0;
    padding: 0 0 5px !important;
    overflow: visible !important;
}

body.network-page .home2-lockup-logo {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 0;
}

body.network-page .site-navbar__map-btn { display: none !important; }

body.network-page:not(.home-landing):not(.city-fullscreen) .home-header-nav {
    position: static !important;
    display: flex !important;
    align-items: center;
    margin-left: auto;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: none;
    box-shadow: none;
    backdrop-filter: none;
    gap: 10px;
}

body.network-page:not(.home-landing):not(.city-fullscreen) .home-header-nav__item {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    height: 44px;
    padding: 12px 10px;
    border: 0;
    border-bottom: 2px solid transparent;
    border-radius: 0;
    background: none;
    color: #fff !important;
    box-shadow: none;
    font-size: .88rem;
    font-weight: 500;
    line-height: 1.1;
    text-decoration: none;
    white-space: nowrap;
    transition: border-color .2s, color .2s;
}

body.network-page:not(.home-landing):not(.city-fullscreen) .home-header-nav__item:is(:hover, :focus-visible, .is-active) {
    border-bottom-color: #426cf0;
    background: none !important;
    color: #fff !important;
    transform: none;
}

body.network-page:not(.home-landing):not(.city-fullscreen) .home-header-nav__item:focus-visible {
    outline: 2px solid var(--network-cyan);
    outline-offset: 3px;
}

.network-main { min-height: 100vh; background: var(--network-bg); }

.network-hero {
    position: relative;
    isolation: isolate;
    min-height: clamp(540px, 68vh, 680px);
    overflow: hidden;
    background:
        radial-gradient(circle at 73% 48%, rgba(31, 119, 231, .18), transparent 38%),
        linear-gradient(180deg, #03152b 0%, #041a34 52%, #031326 100%);
}

.network-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background: linear-gradient(90deg, rgba(2, 16, 34, .8) 0%, rgba(2, 16, 34, .26) 43%, transparent 68%), linear-gradient(0deg, rgba(2, 14, 30, .64), transparent 34%);
}

.network-hero__grid {
    position: absolute;
    inset: 0;
    z-index: 0;
    opacity: .14;
    background-image: linear-gradient(rgba(101, 191, 255, .16) 1px, transparent 1px), linear-gradient(90deg, rgba(101, 191, 255, .16) 1px, transparent 1px);
    background-size: 74px 74px;
    mask-image: linear-gradient(90deg, #000, rgba(0,0,0,.44) 48%, transparent 92%);
}

.network-hero__particles { position: absolute; inset: 0; z-index: 2; pointer-events: none; }
.network-hero__particles span {
    position: absolute;
    left: var(--x);
    top: var(--y);
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: var(--network-cyan);
    box-shadow: 0 0 12px var(--network-cyan);
    opacity: .45;
    animation: networkFloat 8s ease-in-out var(--delay) infinite alternate;
}

.network-hero__atlas {
    position: absolute;
    inset: -5% -1% 2%;
    z-index: 0;
    pointer-events: none;
    opacity: .94;
}

.network-hero__atlas svg { width: 100%; height: 100%; display: block; }
.network-hero__countries { opacity: .55; filter: saturate(1.18) brightness(1.16); }
.network-hero__routes path {
    fill: none;
    stroke: rgba(121, 225, 255, .72);
    stroke-width: 1.15;
    stroke-linecap: round;
    stroke-dasharray: 4 7;
    animation: networkHeroRoute 8s linear var(--route-delay) infinite;
}
.network-hero__nodes circle { fill: #b6f7ff; }
.network-hero__hub-halo { fill: url(#heroHubHalo) !important; }
.network-hero__hub-ring { fill: none !important; stroke: #84efff; stroke-width: 1.5; }
.network-hero__hub { fill: #e7fdff !important; }
.network-hero__hub-label { fill: #e9fbff; font-size: 8px; font-weight: 750; letter-spacing: .12em; }

.network-hero__inner {
    position: relative;
    z-index: 3;
    min-height: clamp(540px, 68vh, 680px);
    display: flex;
    align-items: flex-end;
    padding-top: clamp(50px, 8vh, 100px);
    padding-bottom: 104px;
}

.network-hero__copy {
    width: min(620px, 51vw);
    padding: clamp(22px, 1.9vw, 30px);
    border: 0;
    border-radius: 18px;
    background: linear-gradient(135deg, rgba(2, 20, 43, .40), rgba(3, 25, 54, .18));
    box-shadow: 0 24px 70px rgba(0, 7, 24, .12);
    -webkit-backdrop-filter: blur(7px) saturate(110%);
    backdrop-filter: blur(7px) saturate(110%);
}

.network-eyebrow,
.network-partners__eyebrow,
.network-switch-cta__eyebrow {
    margin: 0 0 12px;
    color: var(--network-cyan);
    font-size: 12px;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: .22em;
    text-transform: uppercase;
}

.network-hero h1 {
    max-width: 570px;
    margin: 0;
    color: #fff;
    font-size: clamp(48px, 4.8vw, 72px);
    font-weight: 800;
    line-height: .96;
    letter-spacing: -.052em;
}

.network-hero h1 span {
    display: inline-block;
    white-space: nowrap;
    color: transparent;
    background: linear-gradient(90deg, #fff 5%, #77e8ff 62%, #52b8ff);
    -webkit-background-clip: text;
    background-clip: text;
}

.network-hero__copy > p:last-child {
    max-width: 520px;
    margin: 18px 0 0;
    color: #d7e6f6;
    font-size: clamp(16px, 1.12vw, 18px);
    line-height: 1.52;
}

.network-stats {
    position: absolute;
    right: 0;
    bottom: 24px;
    left: 0;
    min-height: 62px;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0;
    margin: 0;
    border: 0;
    border-radius: 12px;
    background: linear-gradient(90deg, rgba(3, 22, 47, .50), rgba(3, 22, 47, .32));
    box-shadow: 0 18px 50px rgba(0, 8, 25, .12);
    -webkit-backdrop-filter: blur(10px) saturate(108%);
    backdrop-filter: blur(10px) saturate(108%);
}

.network-stats > div {
    min-width: 0;
    min-height: 62px;
    padding: 10px 24px;
    display: flex;
    align-items: center;
    gap: 14px;
    border-right: 1px solid rgba(124, 203, 255, .12);
}
.network-stats > div:last-child { border-right: 0; }

.network-stats dt { color: #d0deed; font-size: 10px; font-weight: 700; line-height: 1.25; letter-spacing: .11em; text-transform: uppercase; }
.network-stats dd { order: -1; margin: 0; color: var(--network-cyan); font-size: 28px; font-weight: 800; line-height: 1; }

.network-console-section {
    position: relative;
    padding: 28px 0 66px;
    background:
        radial-gradient(circle at 50% 20%, rgba(17, 85, 172, .18), transparent 42%),
        linear-gradient(#031326, #04162c);
}

.network-console {
    padding: 12px;
    border: 1px solid rgba(63, 160, 255, .56);
    border-radius: 18px;
    background: linear-gradient(145deg, rgba(5, 28, 59, .94), rgba(3, 20, 42, .98));
    box-shadow: 0 34px 90px rgba(0, 5, 20, .42), inset 0 1px rgba(255,255,255,.04);
}

.network-tabs {
    width: min(760px, 100%);
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    padding: 5px;
    margin-bottom: 12px;
    border: 1px solid rgba(89, 174, 255, .34);
    border-radius: 13px;
    background: rgba(5, 24, 51, .8);
}

.network-tab {
    min-height: 56px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    border: 1px solid transparent;
    border-radius: 9px;
    background: transparent;
    color: #bfd1e5;
    font: inherit;
    font-size: 16px;
    font-weight: 700;
    cursor: pointer;
    transition: color .2s ease, border-color .2s ease, background .2s ease, box-shadow .2s ease;
}

.network-tab:hover { color: #fff; background: rgba(55, 114, 214, .18); }
.network-tab.is-active { color: #fff; border-color: #3aaaff; background: linear-gradient(135deg, #1b60db, #244ecb); box-shadow: 0 0 28px rgba(53, 115, 255, .25), inset 0 1px rgba(255,255,255,.2); }
.network-tab:focus-visible, .network-switch-cta button:focus-visible, .network-contact a:focus-visible, .network-region-filter select:focus-visible, .network-map a:focus-visible { outline: 3px solid #fff; outline-offset: 3px; }
.network-tab__icon { color: var(--network-cyan); font-size: 22px; }
.network-tab.is-active .network-tab__icon { color: #fff; }

.network-panel {
    display: grid;
    grid-template-columns: minmax(0, 1.52fr) minmax(380px, .95fr);
    gap: 12px;
    min-height: 570px;
}

.network-panel[hidden] { display: none; }

.network-map-card,
.network-partners {
    position: relative;
    min-width: 0;
    overflow: hidden;
    border: 1px solid var(--network-line);
    border-radius: 14px;
    background: linear-gradient(150deg, rgba(7, 31, 66, .95), rgba(4, 22, 47, .98));
}

.network-map-card::before,
.network-partners::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    opacity: .16;
    background-image: linear-gradient(rgba(102, 185, 255, .15) 1px, transparent 1px), linear-gradient(90deg, rgba(102, 185, 255, .15) 1px, transparent 1px);
    background-size: 40px 40px;
}

.network-map-card { min-height: 570px; display: grid; place-items: center; }
.network-map { position: relative; z-index: 1; width: 94%; height: 510px; overflow: visible; }
.network-map--thailand { width: min(92%, 760px); }
.network-map:focus-visible { outline: 2px solid #8eeeff; outline-offset: -7px; }
.network-map.is-pannable { cursor: grab; }
.network-map.is-panning { cursor: grabbing; user-select: none; }

.network-map-zoom {
    position: absolute;
    z-index: 3;
    top: 18px;
    right: 18px;
    display: grid;
    grid-template-columns: 38px 58px 38px;
    min-height: 38px;
    overflow: hidden;
    border: 1px solid rgba(91, 217, 255, .4);
    border-radius: 10px;
    background: rgba(2, 20, 44, .86);
    box-shadow: 0 10px 28px rgba(0, 9, 29, .3), inset 0 0 20px rgba(43, 143, 255, .08);
    backdrop-filter: blur(12px);
}

.network-map-zoom button {
    display: grid;
    min-width: 0;
    min-height: 38px;
    place-items: center;
    padding: 0;
    border: 0;
    border-right: 1px solid rgba(91, 217, 255, .22);
    background: transparent;
    color: #dffbff;
    font: 700 20px/1 Inter, "Segoe UI", sans-serif;
    cursor: pointer;
    transition: color .18s ease, background-color .18s ease, box-shadow .18s ease;
}

.network-map-zoom button:last-child { border-right: 0; }
.network-map-zoom button:hover:not(:disabled) { color: #fff; background: rgba(51, 116, 255, .3); box-shadow: inset 0 0 16px rgba(91, 217, 255, .14); }
.network-map-zoom button:focus-visible { position: relative; z-index: 1; outline: 2px solid #8eeeff; outline-offset: -3px; }
.network-map-zoom button:disabled { color: #557492; cursor: not-allowed; }
.network-map-zoom .network-map-zoom__reset { font-size: 10px; letter-spacing: .04em; }

.network-map__country,
.network-map__continents {
    fill: rgba(19, 83, 142, .26);
    stroke: #4fcfff;
    stroke-width: 1.4;
    stroke-linejoin: round;
    vector-effect: non-scaling-stroke;
}

.network-map__country-image {
    opacity: .94;
    filter: drop-shadow(0 0 8px rgba(67, 207, 255, .16));
}

.network-map__routes path {
    fill: none;
    stroke: #63dcff;
    stroke-width: 1.35;
    stroke-linecap: round;
    opacity: .62;
    vector-effect: non-scaling-stroke;
    stroke-dasharray: 6 5;
    animation: networkRoute 13s linear infinite;
}

.network-map__node { fill: #e7fcff; stroke: #5de6ff; stroke-width: 3; filter: url(#thaiGlow); transition: r .2s ease; }
.network-map--world .network-map__node { filter: url(#worldGlow); }
.network-map__node--hub { fill: #fff; stroke-width: 5; }
.network-map__pulse { fill: rgba(94, 232, 255, .14); stroke: rgba(94, 232, 255, .6); stroke-width: 1; transform-box: fill-box; transform-origin: center; animation: networkPulse 2.8s ease-out infinite; }
.network-map a:hover .network-map__node, .network-map a:focus .network-map__node { r: 7px; }

.network-map-card__compass {
    position: absolute;
    z-index: 2;
    top: 22px;
    left: 22px;
    width: 44px;
    height: 58px;
    display: grid;
    justify-items: center;
    color: #78dcff;
    font-size: 10px;
    letter-spacing: .14em;
}
.network-map-card__compass i { width: 34px; height: 34px; border: 1px solid rgba(95, 208, 255, .3); border-radius: 50%; position: relative; }
.network-map-card__compass i::before { content: ""; position: absolute; left: 50%; top: 6px; width: 8px; height: 20px; transform: translateX(-50%); background: linear-gradient(#7ee9ff 50%, rgba(90, 163, 255, .3) 50%); clip-path: polygon(50% 0,100% 100%,50% 74%,0 100%); }
.network-map-card__label { position: absolute; z-index: 2; left: 28px; bottom: 20px; margin: 0; color: #7eeaff; font-size: 10px; font-weight: 700; letter-spacing: .28em; text-transform: uppercase; }
.network-map-card__source { position: absolute; z-index: 2; right: 24px; bottom: 18px; color: #7295b9; font-size: 8px; line-height: 1.3; text-decoration: none; letter-spacing: .04em; }
.network-map-card__source:hover, .network-map-card__source:focus-visible { color: #a8edff; text-decoration: underline; text-underline-offset: 3px; }
.network-map-card__source:focus-visible { outline: 2px solid var(--network-cyan); outline-offset: 3px; }

.network-partners { padding: 22px; display: flex; flex-direction: column; }
.network-partners__head { position: relative; z-index: 1; display: flex; justify-content: space-between; gap: 18px; align-items: end; padding-bottom: 16px; border-bottom: 1px solid rgba(90, 177, 255, .25); }
.network-partners__head h3 { margin: 0; color: #fff; font-size: clamp(25px, 2vw, 34px); font-weight: 800; letter-spacing: -.035em; }
.network-partners__eyebrow { margin-bottom: 6px; font-size: 9px; }
.network-region-filter { display: grid; gap: 5px; color: #8faac7; font-size: 10px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.network-region-filter select { min-width: 150px; height: 42px; padding: 0 36px 0 12px; border: 1px solid rgba(93, 181, 255, .4); border-radius: 9px; background: #0b2952; color: #fff; font: inherit; font-size: 12px; letter-spacing: 0; text-transform: none; cursor: pointer; }
.network-partners__count { position: relative; z-index: 1; margin: 12px 0 8px; color: #8faac7; font-size: 12px; }
.network-partners__list {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 7px;
    max-height: 405px;
    overflow-y: auto;
    padding-right: 5px;
    scrollbar-gutter: stable;
}

.network-partner {
    min-height: 66px;
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr) 20px;
    gap: 13px;
    align-items: center;
    padding: 10px 12px;
    border: 1px solid rgba(91, 180, 255, .31);
    border-radius: 11px;
    background: linear-gradient(120deg, rgba(15, 53, 105, .74), rgba(7, 31, 64, .84));
    transition: border-color .2s ease, background .2s ease, transform .2s ease;
}
.network-partner:hover, .network-partner:target { border-color: #62dfff; background: linear-gradient(120deg, rgba(24, 77, 148, .85), rgba(8, 39, 80, .9)); transform: translateX(2px); }
.network-partner[hidden] { display: none; }
.network-partner__icon { width: 42px; height: 42px; display: grid; place-items: center; border: 1px solid rgba(89, 205, 255, .44); border-radius: 50%; color: #71e8ff; background: rgba(31, 91, 165, .28); }
.network-partner__icon svg { width: 23px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.network-partner strong { display: block; color: #f8fbff; font-size: 14px; line-height: 1.25; }
.network-partner small { display: block; margin-top: 3px; color: #91aac6; font-size: 11px; }
.network-partner__arrow { color: #79dcff; font-size: 24px; }

.network-switch-cta {
    position: relative;
    overflow: hidden;
    min-height: 115px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    margin-top: 14px;
    padding: 24px 30px;
    border: 1px solid rgba(81, 173, 255, .42);
    border-radius: 16px;
    background: linear-gradient(100deg, rgba(7, 35, 72, .98), rgba(7, 31, 62, .9));
}
.network-switch-cta::after { content: ""; position: absolute; inset: 0 18% 0 40%; pointer-events: none; opacity: .23; background: radial-gradient(circle at 50% 60%, #3ccfff 0 2px, transparent 3px), repeating-linear-gradient(160deg, transparent 0 20px, rgba(94, 212, 255, .18) 21px 22px, transparent 23px 45px); }
.network-switch-cta > * { position: relative; z-index: 1; }
.network-switch-cta__eyebrow { margin-bottom: 5px; font-size: 9px; }
.network-switch-cta h2 { margin: 0; color: #fff; font-size: clamp(22px, 2vw, 31px); font-weight: 800; letter-spacing: -.03em; }
.network-switch-cta p:last-child { margin: 4px 0 0; color: #a8bfd9; }
.network-switch-cta button, .network-contact a { min-height: 48px; padding: 0 20px; display: inline-flex; align-items: center; justify-content: center; gap: 18px; border: 1px solid #45b8ff; border-radius: 10px; background: linear-gradient(135deg, #2867e9, #3150d2); color: #fff; font: inherit; font-size: 14px; font-weight: 700; text-decoration: none; white-space: nowrap; cursor: pointer; box-shadow: 0 12px 28px rgba(24, 69, 191, .25); transition: transform .2s ease, box-shadow .2s ease; }
.network-switch-cta button:hover, .network-contact a:hover { color: #fff; transform: translateY(-2px); box-shadow: 0 16px 34px rgba(24, 86, 211, .38); }

.network-contact { padding: 74px 0; background: #f5f9ff; color: #0b2343; }
.network-contact__inner { display: flex; align-items: center; justify-content: space-between; gap: 40px; }
.network-contact .network-eyebrow { color: #2458cc; }
.network-contact h2 { max-width: 760px; margin: 0; color: #0b2343; font-size: clamp(31px, 3.6vw, 55px); font-weight: 800; line-height: 1.05; letter-spacing: -.045em; }

body.network-page .atlas-home2-footer {
    position: relative;
    overflow: hidden;
    margin-top: 0;
    padding: clamp(30px, 3vw, 42px) 0 0;
    border-top: 3px solid #2b61e9;
    background: linear-gradient(180deg, #f7faff 0%, #eef4fc 100%);
    color: #0a1b3d;
}

body.network-page .atlas-home2-footer > .container {
    position: relative;
    z-index: 1;
    width: min(92%, 1640px);
    max-width: none;
}

body.network-page .atlas-home2-footer__graphic {
    position: absolute;
    right: 0;
    bottom: 36px;
    width: min(48vw, 720px);
    height: 168px;
    opacity: .16;
    pointer-events: none;
}

body.network-page .atlas-home2-footer__bars path {
    fill: none;
    stroke: #54a4ff;
    stroke-width: 2;
    stroke-dasharray: 2 7;
}

body.network-page .atlas-home2-footer__waves path {
    fill: none;
    stroke: #65adff;
    stroke-width: 1.35;
}

body.network-page .atlas-home2-footer__points { fill: #1684ed; }

body.network-page .atlas-home2-footer__grid {
    display: grid;
    grid-template-columns: minmax(320px, 1.08fr) minmax(350px, 1.08fr) minmax(230px, .72fr);
    gap: clamp(28px, 3.4vw, 52px);
    align-items: start;
}

body.network-page .atlas-home2-footer__brand {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

body.network-page .atlas-home2-footer__lockup {
    display: grid;
    grid-template-columns: 164px minmax(0, 1fr);
    align-items: center;
    width: min(100%, 370px);
    min-height: 72px;
}

body.network-page .atlas-home2-footer__mark,
body.network-page .atlas-home2-footer__mark img {
    display: block;
    width: 148px;
    height: auto;
}

body.network-page .atlas-home2-footer__lockup-text {
    display: flex;
    min-width: 0;
    min-height: 60px;
    padding-left: 16px;
    border-left: 1px solid #c9d2e2;
    flex-direction: column;
    justify-content: center;
    gap: 3px;
}

body.network-page .atlas-home2-footer__lockup-text strong {
    color: #0a1b3d;
    font-size: .86rem;
    font-weight: 750;
    line-height: 1.24;
    white-space: nowrap;
}

body.network-page .atlas-home2-footer__lockup-text > span {
    color: #2458cc;
    font-size: .76rem;
    white-space: nowrap;
}

body.network-page .atlas-home2-footer__brand > p {
    max-width: 38ch;
    margin: 0;
    color: #24364d;
    font-size: .86rem;
    line-height: 1.6;
}

body.network-page .atlas-home2-footer h2 {
    margin: 2px 0 16px;
    color: #0a1b3d;
    font-size: 1.35rem;
    font-weight: 700;
}

body.network-page .atlas-home2-footer__contact ul {
    display: grid;
    gap: 12px;
    margin: 0;
    padding: 0;
    list-style: none;
}

body.network-page .atlas-home2-footer__contact li {
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr);
    gap: 10px;
    color: #23364e;
    font-size: .88rem;
    line-height: 1.45;
}

body.network-page .atlas-home2-footer__contact a {
    color: #173f9f;
    text-decoration: none;
}

body.network-page .atlas-home2-footer__contact a:hover {
    color: #1644cb;
    text-decoration: underline;
    text-underline-offset: 3px;
}

body.network-page .atlas-home2-footer__icon {
    display: grid;
    width: 34px;
    height: 34px;
    margin-top: -4px;
    place-items: center;
    color: #2458cc;
}

body.network-page .atlas-home2-footer__icon svg {
    width: 25px;
    height: 25px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
}

body.network-page .atlas-home2-footer__socials {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

body.network-page .atlas-home2-footer__socials a {
    display: grid;
    width: 46px;
    height: 46px;
    place-items: center;
    border-radius: 50%;
    background: #2458cc;
    color: #fff;
    font-size: .86rem;
    font-weight: 700;
    text-decoration: none;
    transition: transform .2s ease, background-color .2s ease;
}

body.network-page .atlas-home2-footer__socials a:hover,
body.network-page .atlas-home2-footer__socials a:focus-visible {
    background: #113ba8;
    transform: translateY(-2px);
}

body.network-page .atlas-home2-footer__socials a[href="#"] { display: none; }

body.network-page .atlas-home2-footer__cta {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    margin-top: 19px;
    color: #1644cb;
    font-size: .88rem;
    font-weight: 700;
    text-decoration: none;
}

body.network-page .atlas-home2-footer__cta:hover {
    color: #092b87;
    text-decoration: underline;
    text-underline-offset: 4px;
}

body.network-page .atlas-home2-footer__meta {
    margin-top: clamp(24px, 2.3vw, 34px);
    padding: 13px 4px 16px;
    border-top: 1px solid #cbd8e8;
    color: #23364e;
    font-size: .8rem;
}

body.network-page .atlas-home2-footer a:focus-visible {
    outline: 3px solid rgba(36, 88, 204, .34);
    outline-offset: 4px;
}

@keyframes networkFloat { to { transform: translate3d(8px, -14px, 0); opacity: .9; } }
@keyframes networkHeroRoute { to { stroke-dashoffset: -88; } }
@keyframes networkRoute { to { stroke-dashoffset: -110; } }
@keyframes networkPulse { 0% { transform: scale(.7); opacity: .9; } 75%,100% { transform: scale(1.55); opacity: 0; } }

@media (max-width: 1199px) {
    .network-hero__atlas { inset: -2% -18% 4% -8%; }
    .network-hero__copy { max-width: 58%; }
    .network-panel { grid-template-columns: 1.3fr 1fr; }
    .network-map-card, .network-panel { min-height: 520px; }
    .network-map { height: 470px; }
}

@media (min-width: 992px) {
    body.network-page:not(.home-landing):not(.city-fullscreen) .site-navbar .navbar-collapse { display: none !important; }
    body.network-page .site-navbar .site-navbar__toggle { display: none !important; }
    body.network-page:not(.home-landing):not(.city-fullscreen) .site-navbar__bar { flex-wrap: nowrap !important; }
    body.network-page:not(.home-landing):not(.city-fullscreen) .home-header-nav { margin: 0 0 0 auto !important; transform: none !important; }
}

@media (min-width: 992px) and (max-width: 1199.98px) {
    body.network-page:not(.home-landing):not(.city-fullscreen) .site-brand--home2-lockup {
        flex-basis: 310px !important;
        max-width: 310px !important;
    }
    body.network-page:not(.home-landing):not(.city-fullscreen) .home-header-nav { gap: 2px; }
    body.network-page:not(.home-landing):not(.city-fullscreen) .home-header-nav__item { padding-inline: 9px; font-size: .8rem; }
}

@media (max-width: 991.98px) {
    body.network-page:not(.home-landing):not(.city-fullscreen) .site-navbar__bar {
        display: flex !important;
        flex-wrap: wrap;
        min-height: 62px !important;
        gap: 12px !important;
    }

    body.network-page:not(.home-landing):not(.city-fullscreen) .site-brand--home2-lockup {
        flex: 1 1 0 !important;
        min-width: 0;
        max-width: 340px !important;
        margin: 0 !important;
    }

    body.network-page .site-navbar__toggle {
        display: flex !important;
        flex: 0 0 48px;
        width: 48px;
        height: 48px;
        margin-left: auto;
    }

    body.network-page .navbar-collapse {
        flex-basis: 100%;
    }

    body.network-page .navbar-collapse.show,
    body.network-page .navbar-collapse.collapsing { display: block !important; visibility: visible !important; }
    body.network-page:not(.home-landing):not(.city-fullscreen) .home-header-nav { display: none !important; }
}

@media (min-width: 1200px) {
    body.network-page:not(.home-landing):not(.city-fullscreen) .site-navbar { padding: 4px 0 !important; }
    body.network-page:not(.home-landing):not(.city-fullscreen) .site-brand--home2-lockup {
        flex-basis: 380px !important;
        max-width: 380px !important;
    }
}

@media (max-width: 991px) {
    .network-panel { grid-template-columns: 1fr; }
    .network-map-card { min-height: 480px; }
    .network-map { height: 450px; }
    .network-partners { max-height: none; }
    .network-partners__list { max-height: 520px; }
    body.network-page .atlas-home2-footer__grid { grid-template-columns: 1fr 1fr; gap: 24px 38px; }
    body.network-page .atlas-home2-footer__brand { grid-column: 1 / -1; display: grid; grid-template-columns: minmax(250px, 300px) minmax(0, 1fr); gap: 22px; align-items: center; }
    body.network-page .atlas-home2-footer__graphic { width: 72vw; opacity: .13; }
}

@media (max-width: 767px) {
    .network-hero { min-height: 610px; }
    .network-hero::before { background: linear-gradient(0deg, rgba(2, 16, 34, .95) 0%, rgba(2, 16, 34, .58) 50%, rgba(2, 16, 34, .08) 82%); }
    .network-hero__atlas { inset: -5% -48% 28% -24%; opacity: .78; }
    .network-hero__inner { min-height: 610px; align-items: flex-end; padding-top: 230px; padding-bottom: 104px; }
    .network-hero__copy { width: 100%; max-width: 100%; padding: 0; border: 0; border-radius: 0; background: none; box-shadow: none; backdrop-filter: none; }
    .network-hero h1 { max-width: 500px; font-size: clamp(38px, 10.5vw, 46px); }
    .network-hero__copy > p:last-child { max-width: 480px; margin-top: 14px; font-size: 15px; }
    .network-stats { bottom: 16px; min-height: 66px; }
    .network-stats > div { min-height: 66px; padding: 9px 10px; justify-content: center; gap: 7px; }
    .network-stats dt { font-size: 8px; letter-spacing: .06em; }
    .network-stats dd { font-size: 22px; }
    .network-console-section { padding-top: 18px; }
    .network-tabs { grid-template-columns: 1fr; }
    .network-tab { min-height: 50px; }
    .network-map-card { min-height: 390px; }
    .network-map { height: 370px; width: 100%; }
    .network-partners { padding: 16px; }
    .network-partners__list { max-height: none; overflow: visible; padding-right: 0; }
    .network-partners__head { align-items: stretch; flex-direction: column; }
    .network-region-filter select { width: 100%; }
    .network-partner { grid-template-columns: 38px minmax(0, 1fr) 16px; gap: 10px; }
    .network-partner__icon { width: 38px; height: 38px; }
    .network-switch-cta { align-items: stretch; flex-direction: column; padding: 22px; }
    .network-switch-cta button { width: 100%; white-space: normal; }
    .network-contact { padding: 54px 0; }
    .network-contact__inner { align-items: stretch; flex-direction: column; }
    .network-contact a { align-self: flex-start; }
    body.network-page .atlas-home2-footer { padding-top: 25px; }
    body.network-page .atlas-home2-footer__grid { grid-template-columns: 1fr; gap: 22px; }
    body.network-page .atlas-home2-footer__brand { grid-column: auto; display: flex; gap: 11px; }
    body.network-page .atlas-home2-footer__graphic { width: 100%; height: 125px; bottom: 38px; opacity: .1; }
    body.network-page .atlas-home2-footer__lockup { grid-template-columns: 154px minmax(0, 1fr); width: min(100%, 350px); }
    body.network-page .atlas-home2-footer__mark,
    body.network-page .atlas-home2-footer__mark img { width: 140px; }
    body.network-page .atlas-home2-footer__lockup-text strong { white-space: normal; }
    body.network-page .atlas-home2-footer__socials a { width: 42px; height: 42px; }
    body.network-page .atlas-home2-footer__meta { margin-top: 20px; padding-bottom: 14px; }
}

@media (max-width: 420px) {
    .network-hero { min-height: 580px; }
    .network-hero__inner { min-height: 580px; padding-top: 210px; }
    .network-hero h1 { font-size: clamp(36px, 10.2vw, 42px); }
    .network-stats > div { flex-direction: column; gap: 4px; text-align: center; }
    .network-stats dt { max-width: 86px; }
    .network-map-card { min-height: 330px; }
    .network-map { height: 310px; }
    .network-map-card__compass { top: 14px; left: 12px; transform: scale(.8); transform-origin: top left; }
    .network-map-card__label { left: 16px; bottom: 14px; font-size: 8px; }
    .network-map-card__source { right: 14px; bottom: 12px; max-width: 145px; text-align: right; }
    .network-map-zoom { top: 12px; right: 12px; grid-template-columns: 34px 52px 34px; min-height: 34px; }
    .network-map-zoom button { min-height: 34px; font-size: 18px; }
    .network-map-zoom .network-map-zoom__reset { font-size: 9px; }
}

@media (prefers-reduced-motion: reduce) {
    .network-hero__particles span,
    .network-hero__routes path,
    .network-map__routes path,
    .network-map__pulse { animation: none; }
    .network-tab, .network-partner, .network-switch-cta button, .network-contact a, .network-map-zoom button { transition: none; }
}

@media (forced-colors: active) {
    .network-tab.is-active, .network-switch-cta button, .network-contact a { border: 2px solid ButtonText; }
    .network-map__country, .network-map__continents, .network-map__routes path { stroke: CanvasText; }
}

/* Map-first discovery console ------------------------------------------------ */
.network-console {
    padding: 10px;
    border-color: rgba(79, 176, 255, .42);
    border-radius: 20px;
    background: linear-gradient(145deg, rgba(4, 24, 51, .98), rgba(2, 17, 37, .99));
}

.network-console__topbar {
    min-height: 76px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    padding: 8px 10px 14px;
}

.network-console__identity {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 14px;
}

.network-console__identity p,
.network-console__identity span { margin: 0; }
.network-console__identity p { color: #fff; font-size: clamp(20px, 1.7vw, 28px); font-weight: 800; letter-spacing: -.035em; }
.network-console__identity > div > span { display: block; margin-top: 2px; color: #8faccc; font-size: 12px; }

.network-console__mark {
    position: relative;
    width: 46px;
    height: 46px;
    flex: 0 0 46px;
    border-radius: 12px;
    background: linear-gradient(145deg, rgba(24, 72, 137, .72), rgba(8, 38, 80, .9));
    box-shadow: inset 0 0 0 1px rgba(87, 210, 255, .15), 0 0 28px rgba(36, 135, 245, .12);
}

.network-console__mark::before,
.network-console__mark::after,
.network-console__mark i { content: ""; position: absolute; width: 8px; height: 8px; border-radius: 50%; background: var(--network-cyan); box-shadow: 0 0 10px rgba(105, 234, 255, .7); }
.network-console__mark::before { left: 9px; top: 19px; }
.network-console__mark::after { right: 9px; top: 19px; }
.network-console__mark i:nth-child(1) { left: 19px; top: 8px; }
.network-console__mark i:nth-child(2) { left: 19px; bottom: 8px; }
.network-console__mark i:nth-child(3) { left: 19px; top: 19px; }

.network-tabs {
    width: auto;
    min-width: min(100%, 365px);
    margin: 0;
    flex: 0 0 auto;
}

.network-tab { min-height: 48px; padding: 0 22px; font-size: 14px; }
.network-panel { display: block; min-height: 0; }
.network-panel[hidden] { display: none; }

.network-map-card {
    min-height: 690px;
    height: min(72vh, 760px);
    display: block;
    overflow: hidden;
    border-radius: 16px;
    background:
        radial-gradient(circle at 72% 42%, rgba(24, 112, 223, .14), transparent 34%),
        linear-gradient(150deg, rgba(6, 31, 66, .97), rgba(2, 18, 39, .99));
}

.network-map-card::before { opacity: .12; background-size: 54px 54px; }
.network-map {
    position: absolute;
    z-index: 1;
    inset: 62px 18px 116px;
    width: calc(100% - 36px);
    height: calc(100% - 178px);
}
.network-map--thailand { width: min(72%, 760px); left: 50%; right: auto; transform: translateX(-50%); }
.network-map--thailand.is-panning { transform: translateX(-50%); }

.network-map-card__compass { top: 78px; left: 24px; }
.network-map-card__label { left: 25px; bottom: 126px; }
.network-map-card__source { right: 25px; bottom: 124px; }

.network-map-zoom { top: 14px; right: 14px; }
.network-explorer__search {
    position: absolute;
    z-index: 4;
    top: 14px;
    right: 166px;
    width: min(280px, calc(100% - 190px));
    min-height: 40px;
    display: grid;
    grid-template-columns: 22px minmax(0, 1fr) 28px;
    align-items: center;
    gap: 8px;
    padding: 0 8px 0 12px;
    border: 1px solid rgba(91, 217, 255, .32);
    border-radius: 10px;
    background: rgba(2, 20, 44, .88);
    box-shadow: 0 10px 28px rgba(0, 9, 29, .28);
    backdrop-filter: blur(12px);
}

.network-explorer__search svg { width: 20px; fill: none; stroke: #8eeeff; stroke-width: 1.6; stroke-linecap: round; }
.network-explorer__search input { min-width: 0; height: 38px; padding: 0; border: 0; outline: 0; background: transparent; color: #fff; font: 500 12px/1 Inter, "Segoe UI", sans-serif; }
body.network-page:not(.home-landing) .network-explorer__search input[type="search"],
body.network-page:not(.home-landing) .network-explorer__search input[type="search"]:focus {
    -webkit-appearance: none !important;
    appearance: none !important;
    border-color: transparent !important;
    outline: 0 !important;
    background-color: #061a39 !important;
    background-image: none !important;
    color: #fff !important;
    box-shadow: none !important;
}
.network-explorer__search input::placeholder { color: #86a2c0; }
.network-explorer__search:focus-within { border-color: #7eeaff; box-shadow: 0 0 0 3px rgba(105, 234, 255, .13), 0 10px 28px rgba(0, 9, 29, .28); }
.network-explorer__clear { width: 28px; height: 28px; padding: 0; border: 0; border-radius: 50%; background: transparent; color: #9cb5d0; font: 20px/1 Inter, sans-serif; cursor: pointer; }
.network-explorer__clear:hover { color: #fff; background: rgba(255,255,255,.08); }
.network-explorer__clear:focus-visible { outline: 2px solid #8eeeff; outline-offset: 1px; }

.network-map-selection {
    position: absolute;
    z-index: 4;
    left: 34px;
    bottom: 155px;
    width: min(330px, calc(100% - 68px));
    min-height: 74px;
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr) 28px;
    align-items: center;
    gap: 12px;
    padding: 12px 10px 12px 14px;
    border: 1px solid rgba(84, 211, 255, .58);
    border-radius: 12px;
    background: linear-gradient(120deg, rgba(7, 31, 66, .94), rgba(6, 27, 57, .89));
    box-shadow: 0 18px 44px rgba(0, 10, 31, .42), inset 0 0 22px rgba(44, 151, 255, .08);
    backdrop-filter: blur(14px);
}
.network-map-selection[hidden] { display: none; }
.network-map-selection__signal { width: 28px; height: 28px; border: 6px solid rgba(105, 234, 255, .18); border-radius: 50%; background: #dffcff; box-shadow: 0 0 0 1px #69eaff, 0 0 16px #51dfff; }
.network-map-selection strong { display: block; color: #fff; font-size: 13px; line-height: 1.25; }
.network-map-selection span:not(.network-map-selection__signal) { display: block; margin-top: 3px; color: #93abc5; font-size: 11px; }
.network-map-selection button { width: 28px; height: 28px; padding: 0; border: 0; border-radius: 50%; background: transparent; color: #9ab5d1; font: 20px/1 Inter, sans-serif; cursor: pointer; }
.network-map-selection button:hover { color: #fff; background: rgba(255,255,255,.08); }
.network-map-selection button:focus-visible { outline: 2px solid #8eeeff; outline-offset: 2px; }

.network-discovery-dock {
    position: absolute;
    z-index: 5;
    right: 12px;
    bottom: 12px;
    left: 12px;
    min-height: 96px;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 14px;
    padding: 12px 14px;
    border: 1px solid rgba(79, 178, 255, .38);
    border-radius: 14px;
    background: linear-gradient(100deg, rgba(4, 25, 54, .96), rgba(5, 29, 61, .92));
    box-shadow: 0 -12px 38px rgba(0, 9, 28, .25), inset 0 1px rgba(255,255,255,.04);
    backdrop-filter: blur(16px);
}

.network-region-chips { display: flex; flex-wrap: wrap; gap: 7px; max-width: 330px; overflow: visible; padding: 2px; }
.network-region-chips button {
    min-height: 36px;
    padding: 0 13px;
    flex: 0 0 auto;
    border: 1px solid rgba(79, 174, 255, .35);
    border-radius: 999px;
    background: rgba(10, 39, 81, .68);
    color: #b7cbe0;
    font: 600 11px/1 Inter, sans-serif;
    cursor: pointer;
}
.network-region-chips button:is(:hover, :focus-visible) { color: #fff; border-color: #6fdfff; }
.network-region-chips button:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }
.network-region-chips button.is-active { color: #fff; border-color: #3dafff; background: linear-gradient(135deg, #1766e8, #2f55d8); box-shadow: 0 0 22px rgba(52, 122, 255, .24); }

.network-partner-previews { min-width: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.network-partner-preview {
    min-width: 0;
    min-height: 66px;
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr) 16px;
    align-items: center;
    gap: 9px;
    padding: 8px 9px;
    border: 1px solid rgba(79, 169, 255, .29);
    border-radius: 10px;
    background: rgba(9, 38, 79, .72);
    color: #7eeaff;
    text-align: left;
    cursor: pointer;
    transition: border-color .18s ease, background .18s ease, transform .18s ease;
}
.network-partner-preview[hidden] { display: none; }
.network-partner-preview:is(:hover, :focus-visible, .is-selected) { border-color: #65ddff; background: rgba(15, 57, 115, .88); transform: translateY(-2px); }
.network-partner-preview:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }
.network-partner-preview__icon { width: 32px; height: 32px; display: grid; place-items: center; border-radius: 8px; color: #74e9ff; background: rgba(36, 94, 165, .3); }
.network-partner-preview__icon svg { width: 19px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.network-partner-preview strong, .network-partner-preview small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.network-partner-preview strong { color: #fff; font-size: 11px; }
.network-partner-preview small { margin-top: 3px; color: #8da7c4; font-size: 9px; }

.network-view-all {
    min-height: 42px;
    padding: 0 10px;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    border: 0;
    background: transparent;
    color: #77e7ff;
    font: 700 11px/1 Inter, sans-serif;
    white-space: nowrap;
    cursor: pointer;
}
.network-view-all:is(:hover, :focus-visible) { color: #fff; }
.network-view-all:focus-visible { outline: 2px solid #8eeeff; outline-offset: 3px; border-radius: 6px; }

.network-partners-drawer {
    position: absolute;
    z-index: 8;
    top: 66px;
    right: 14px;
    bottom: 118px;
    width: min(430px, calc(100% - 28px));
    display: flex;
    flex-direction: column;
    padding: 20px;
    border: 1px solid rgba(88, 198, 255, .55);
    border-radius: 14px;
    background: linear-gradient(155deg, rgba(8, 35, 73, .98), rgba(3, 20, 43, .99));
    box-shadow: -22px 18px 60px rgba(0, 7, 24, .48), inset 0 1px rgba(255,255,255,.05);
    backdrop-filter: blur(18px);
}
.network-partners-drawer[hidden] { display: none; }
.network-partners-drawer__head { display: flex; align-items: start; justify-content: space-between; gap: 20px; padding-bottom: 12px; border-bottom: 1px solid rgba(90, 177, 255, .24); }
.network-partners-drawer__head p { margin: 0 0 4px; color: #70e6ff; font-size: 9px; font-weight: 800; letter-spacing: .17em; text-transform: uppercase; }
.network-partners-drawer__head h3 { margin: 0; color: #fff; font-size: 24px; font-weight: 800; letter-spacing: -.03em; }
.network-partners-drawer__head button { width: 36px; height: 36px; padding: 0; flex: 0 0 36px; border: 1px solid rgba(96, 196, 255, .35); border-radius: 50%; background: rgba(15, 55, 109, .5); color: #fff; font: 24px/1 Inter, sans-serif; cursor: pointer; }
.network-partners-drawer__head button:is(:hover, :focus-visible) { border-color: #6fe4ff; background: rgba(28, 91, 171, .58); }
.network-partners-drawer__head button:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }
.network-partners-drawer .network-partners__count { margin: 12px 0 8px; }
.network-partners-drawer .network-partners__list { max-height: none; min-height: 0; flex: 1; }
.network-partner { width: 100%; color: inherit; font-family: inherit; text-align: left; cursor: pointer; }
.network-partner:focus-visible, .network-partner.is-selected { outline: 2px solid #72e7ff; outline-offset: -2px; border-color: #72e7ff; }
.network-map [data-network-node].is-selected .network-map__node { r: 7px; fill: #fff; stroke-width: 5; }

@media (max-width: 1199px) {
    .network-map-card { min-height: 650px; }
    .network-discovery-dock { grid-template-columns: 1fr auto; }
    .network-region-chips { grid-column: 1 / -1; max-width: none; }
    .network-partner-previews { grid-column: 1; }
    .network-view-all { grid-column: 2; grid-row: 2; }
    .network-map-card__label, .network-map-card__source { bottom: 160px; }
    .network-map { bottom: 150px; height: calc(100% - 212px); }
    .network-map-selection { bottom: 190px; }
}

@media (max-width: 767px) {
    .network-console { padding: 8px; }
    .network-console__topbar { align-items: stretch; flex-direction: column; gap: 12px; padding: 8px 6px 12px; }
    .network-console__identity p { font-size: 21px; }
    .network-tabs { width: 100%; min-width: 0; grid-template-columns: 1fr 1fr; }
    .network-tab { min-height: 46px; padding-inline: 8px; font-size: 12px; }
    .network-map-card { height: auto; min-height: 0; display: flex; flex-direction: column; padding: 0 8px 8px; }
    .network-map { position: relative; inset: auto; order: 1; width: 100%; height: 340px; margin-top: 70px; }
    .network-map--thailand, .network-map--thailand.is-panning { left: auto; transform: none; width: 100%; }
    .network-map-card__compass { top: 78px; left: 18px; }
    .network-map-zoom { top: 14px; right: 12px; }
    .network-explorer { display: contents; }
    .network-explorer__search { top: 14px; right: 140px; left: 12px; width: auto; }
    .network-map-selection { position: relative; inset: auto; order: 2; width: auto; min-height: 68px; margin: -4px 4px 10px; }
    .network-discovery-dock { position: relative; inset: auto; order: 3; width: calc(100% - 8px); min-width: 0; max-width: calc(100% - 8px); align-self: center; display: flex; flex-direction: column; align-items: stretch; gap: 10px; padding: 10px; box-sizing: border-box; }
    .network-region-chips { width: 100%; min-width: 0; max-width: 100%; flex-wrap: nowrap; overflow-x: auto; scrollbar-width: thin; scrollbar-color: #315f94 rgba(3, 20, 44, .5); }
    .network-region-chips::-webkit-scrollbar { height: 5px; }
    .network-region-chips::-webkit-scrollbar-track { background: rgba(3, 20, 44, .5); }
    .network-region-chips::-webkit-scrollbar-thumb { border-radius: 999px; background: #315f94; }
    .network-partner-previews { width: 100%; min-width: 0; max-width: 100%; display: flex; overflow-x: auto; padding: 2px 2px 8px; scroll-snap-type: x proximity; scrollbar-width: thin; scrollbar-color: #315f94 rgba(3, 20, 44, .5); }
    .network-partner-previews::-webkit-scrollbar { height: 5px; }
    .network-partner-previews::-webkit-scrollbar-track { background: rgba(3, 20, 44, .5); }
    .network-partner-previews::-webkit-scrollbar-thumb { border-radius: 999px; background: #315f94; }
    .network-partner-preview { min-width: 245px; scroll-snap-align: start; }
    .network-view-all { align-self: flex-end; }
    .network-map-card__label { position: static; order: 4; margin: 12px 8px 0; }
    .network-map-card__source { position: static; order: 5; margin: 6px 8px 4px; align-self: flex-end; }
    .network-partners-drawer { position: absolute; z-index: 100; top: auto; right: 8px; bottom: 8px; left: 8px; width: auto; max-height: min(78dvh, 680px); border-radius: 16px; }
    .network-partners-drawer .network-partners__list { overflow-y: auto; }
}

@media (max-width: 420px) {
    .network-console__mark { width: 40px; height: 40px; flex-basis: 40px; transform: scale(.88); transform-origin: left center; }
    .network-console__identity p { font-size: 18px; }
    .network-console__identity > div > span { font-size: 10px; }
    .network-map { height: 300px; margin-top: 64px; }
    .network-map-card__compass { top: 70px; }
    .network-explorer__search { right: 130px; min-height: 34px; grid-template-columns: 18px minmax(0, 1fr) 24px; }
    .network-explorer__search input { height: 32px; font-size: 10px; }
    .network-partner-preview { min-width: 225px; }
}

@media (prefers-reduced-motion: reduce) {
    .network-partner-preview { transition: none; }
}

@media (forced-colors: active) {
    .network-region-chips button.is-active,
    .network-partner-preview.is-selected,
    .network-map-selection,
    .network-partners-drawer { border: 2px solid ButtonText; }
}

/* Network page cohesion pass: one map frame, open controls, consistent type. */
.network-console-section {
    padding: clamp(38px, 4.2vw, 58px) 0 clamp(54px, 6vw, 80px);
    background:
        radial-gradient(circle at 50% 14%, rgba(17, 85, 172, .14), transparent 38%),
        linear-gradient(180deg, #031326 0%, #04162c 100%);
}

.network-console {
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.network-console__topbar {
    min-height: 72px;
    margin-bottom: 20px;
    padding: 0 0 18px;
    border-bottom: 1px solid rgba(92, 186, 255, .24);
}

.network-console__identity { gap: 13px; }
.network-console__identity p {
    font-size: clamp(22px, 1.7vw, 26px);
    line-height: 1.12;
    letter-spacing: -.025em;
}
.network-console__identity > div > span {
    margin-top: 5px;
    font-size: 14px;
    line-height: 1.4;
}

.network-console__mark {
    width: 42px;
    height: 42px;
    flex-basis: 42px;
    border-radius: 10px;
    background: rgba(19, 64, 123, .62);
    box-shadow: inset 0 0 0 1px rgba(87, 210, 255, .18);
}
.network-console__mark::before { left: 7px; top: 17px; }
.network-console__mark::after { right: 7px; top: 17px; }
.network-console__mark i:nth-child(1) { left: 17px; top: 6px; }
.network-console__mark i:nth-child(2) { left: 17px; bottom: 6px; }
.network-console__mark i:nth-child(3) { left: 17px; top: 17px; }

.network-tabs {
    min-width: min(100%, 340px);
    gap: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
}

.network-tab {
    min-height: 46px;
    padding: 0 18px;
    border: 0;
    border-bottom: 2px solid rgba(106, 183, 255, .22);
    border-radius: 0;
    color: #9fb7d1;
    font-size: 14px;
    font-weight: 700;
}
.network-tab:hover { background: rgba(55, 114, 214, .08); }
.network-tab.is-active {
    border-color: #61dfff;
    background: linear-gradient(180deg, transparent, rgba(40, 97, 213, .16));
    box-shadow: none;
}
.network-tab__icon { font-size: 18px; }

.network-map-card {
    min-height: 650px;
    height: min(70vh, 710px);
    border: 1px solid rgba(77, 171, 255, .36);
    border-radius: 18px;
    box-shadow: 0 28px 80px rgba(0, 6, 23, .3), inset 0 1px rgba(255, 255, 255, .03);
}

.network-explorer__search {
    min-height: 42px;
    border-color: rgba(91, 217, 255, .24);
    border-radius: 8px;
    background: rgba(3, 24, 51, .58);
    box-shadow: none;
}
.network-explorer__search input { font-size: 14px; }

.network-map-zoom {
    min-height: 42px;
    border-color: rgba(91, 217, 255, .24);
    border-radius: 8px;
    background: rgba(3, 24, 51, .58);
    box-shadow: none;
}
.network-map-zoom button { min-height: 42px; }
.network-map-zoom .network-map-zoom__reset { font-size: 11px; }

.network-map-card__label {
    color: #88eaff;
    font-size: 11px;
    letter-spacing: .2em;
}
.network-map-card__source { font-size: 10px; }

.network-map-selection {
    min-height: 68px;
    border-radius: 10px;
    background: rgba(5, 27, 58, .76);
    box-shadow: 0 14px 36px rgba(0, 10, 31, .28);
}
.network-map-selection strong { font-size: 14px; }
.network-map-selection span:not(.network-map-selection__signal) { font-size: 12px; }

.network-discovery-dock {
    right: 1px;
    bottom: 1px;
    left: 1px;
    min-height: 104px;
    gap: 18px;
    padding: 15px 20px 16px;
    border: 0;
    border-top: 1px solid rgba(91, 181, 255, .3);
    border-radius: 0 0 17px 17px;
    background: linear-gradient(180deg, rgba(3, 22, 47, .82), rgba(3, 20, 43, .96));
    box-shadow: none;
    backdrop-filter: blur(12px);
}

.network-region-chips {
    max-width: 340px;
    gap: 5px;
}
.network-region-chips button {
    min-height: 34px;
    padding: 0 12px;
    border-color: transparent;
    border-radius: 7px;
    background: transparent;
    color: #9db6d0;
    font-size: 12px;
}
.network-region-chips button:is(:hover, :focus-visible) { background: rgba(37, 91, 159, .24); }
.network-region-chips button.is-active {
    border-color: rgba(79, 185, 255, .42);
    background: rgba(31, 91, 177, .42);
    box-shadow: none;
}

.network-partner-previews { gap: 0; }
.network-partner-preview {
    min-height: 64px;
    padding: 7px 14px;
    border: 0;
    border-left: 1px solid rgba(87, 171, 255, .22);
    border-radius: 0;
    background: transparent;
}
.network-partner-preview:last-child { border-right: 1px solid rgba(87, 171, 255, .22); }
.network-partner-preview:is(:hover, :focus-visible, .is-selected) {
    background: rgba(18, 60, 119, .48);
    transform: none;
}
.network-partner-preview__icon {
    width: 30px;
    height: 30px;
    border-radius: 7px;
}
.network-partner-preview strong { font-size: 13px; line-height: 1.25; }
.network-partner-preview small { font-size: 11px; }
.network-view-all { font-size: 13px; }

.network-contact {
    position: relative;
    isolation: isolate;
    min-height: 160px;
    overflow: hidden;
    padding: clamp(34px, 3.3vw, 46px) 0 clamp(30px, 3vw, 42px);
    background: linear-gradient(180deg, #163b60 0%, #88b8df 8%, #d6e9f8 40%, #f6f9fe 100%);
}
.network-contact::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -2;
    opacity: .34;
    background-image: radial-gradient(circle, rgba(255, 255, 255, .9) 0 1px, transparent 1.6px);
    background-size: 8px 8px;
    mask-image: linear-gradient(180deg, #000, transparent 68%);
}
.network-contact__signal {
    position: absolute;
    inset: 0;
    z-index: -1;
    pointer-events: none;
    opacity: .58;
}
.network-contact__signal svg { width: 100%; height: 100%; display: block; }
.network-contact__signal path {
    fill: none;
    stroke: rgba(232, 250, 255, .78);
    stroke-width: .8;
}
.network-contact__signal circle {
    fill: #e9fcff;
    stroke: rgba(82, 209, 255, .7);
    stroke-width: 1.2;
    filter: drop-shadow(0 0 5px rgba(76, 207, 255, .9));
}
.network-contact__inner {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: clamp(32px, 5vw, 80px);
}
.network-contact__copy { min-width: 0; }
.network-contact .network-eyebrow {
    margin-bottom: 7px;
    font-size: 10px;
    letter-spacing: .19em;
}
.network-contact h2 {
    max-width: 840px;
    font-size: clamp(28px, 2.25vw, 34px);
    line-height: 1.08;
    letter-spacing: -.04em;
}
.network-contact__description {
    margin: 7px 0 0;
    color: #425a78;
    font-size: clamp(14px, 1.08vw, 16px);
    line-height: 1.45;
}
.network-contact a { font-size: 13px; }
.network-contact a {
    min-height: 44px;
    padding-inline: 20px;
    gap: 16px;
    border-radius: 9px;
    border-color: rgba(56, 142, 255, .7);
    box-shadow: 0 12px 28px rgba(24, 69, 191, .22);
}

@media (max-width: 1199px) {
    .network-map-card { min-height: 620px; }
    .network-discovery-dock { gap: 12px; }
    .network-partner-preview { border-right: 0; }
    .network-partner-preview:last-child { border-right: 0; }
}

@media (max-width: 767px) {
    .network-console-section { padding-top: 28px; }
    .network-console__topbar { gap: 16px; margin-bottom: 14px; padding-bottom: 14px; }
    .network-console__identity p { font-size: 20px; }
    .network-console__identity > div > span { font-size: 12px; }
    .network-tabs { border-bottom: 1px solid rgba(92, 186, 255, .18); }
    .network-tab { font-size: 13px; }
    .network-map-card { border-radius: 14px; }
    .network-discovery-dock {
        width: 100%;
        max-width: 100%;
        padding: 12px 4px 8px;
        border-top: 1px solid rgba(91, 181, 255, .26);
        border-radius: 0;
        background: transparent;
        backdrop-filter: none;
    }
    .network-region-chips { padding-inline: 4px; }
    .network-partner-previews { gap: 8px; padding-inline: 4px; }
    .network-partner-preview {
        min-width: 232px;
        border: 1px solid rgba(79, 169, 255, .24);
        border-radius: 9px;
        background: rgba(9, 38, 79, .52);
    }
    .network-partner-preview:last-child { border-right: 1px solid rgba(79, 169, 255, .24); }
    .network-view-all { margin-right: 4px; }
    .network-contact__inner { grid-template-columns: 1fr; gap: 22px; }
    .network-contact { padding: 38px 0 42px; }
    .network-contact__signal { width: 180%; transform: translateX(-20%); opacity: .42; }
    .network-contact h2 { max-width: 540px; font-size: clamp(27px, 8vw, 34px); }
    .network-contact__description { max-width: 520px; font-size: 14px; }
    .network-contact a { min-height: 44px; }
}

@media (max-width: 360px) {
    .network-explorer__search {
        right: 12px;
        min-height: 38px;
    }
    .network-explorer__search input { height: 36px; font-size: 12px; }
    .network-map-zoom { top: 60px; right: 12px; }
    .network-map { height: 290px; margin-top: 108px; }
    .network-map-card__compass { top: 116px; }
}
