/* A region-neutral network overview; product-specific limits live on product pages. */
.network-overview-page .refresh-hero h1 { max-width: 19ch; }
.network-overview-page .network-overview-map { overflow: hidden; margin: 0 0 32px; border: 1px solid #dfd3f1; border-radius: 20px; background: #fff; box-shadow: var(--product-shadow); }
.network-overview-page .network-overview-map img { display: block; width: 100%; height: auto; }
.network-overview-page .network-overview-map figcaption { display: flex; align-items: center; justify-content: center; gap: 10px; padding: 16px 24px; color: var(--ink-3); font-size: .88rem; line-height: 1.5; text-align: center; }
.network-overview-page .network-overview-map figcaption i { color: #6d28d9; }
.network-overview-page .network-location-grid { display: flex; flex-wrap: wrap; justify-content: center; gap: 24px; }
.network-overview-page .network-location-card { display: grid; grid-template-rows: auto 190px 1fr auto minmax(84px,auto) auto; flex: 0 0 calc((100% - 48px) / 3); min-width: 0; gap: 22px; padding: 26px; border: 1px solid var(--product-border); border-top: 3px solid #9763ef; border-radius: 18px; background: #fff; box-shadow: var(--product-shadow); }
.network-overview-page .network-location-top { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px; }
.network-overview-page .network-location-country { display: inline-flex; align-items: center; gap: 8px; color: #4c286d; font-size: .82rem; font-weight: 700; }
.network-overview-page .network-location-country img { flex: 0 0 28px; width: 28px; height: 19px; object-fit: cover; border-radius: 3px; }
.network-overview-page .network-location-role { padding: 5px 9px; border-radius: 999px; background: #f0e7fc; color: #6427b1; font-size: .7rem; line-height: 1.4; font-weight: 700; }
.network-overview-page .network-location-art { display: grid; place-items: center; border-radius: 14px; background: linear-gradient(135deg,#f1e8fc,#f9f6fc); }
.network-overview-page .network-location-art img { display: block; width: 100%; max-width: 240px; height: 170px; object-fit: contain; object-position: center; }
.network-overview-page .network-location-copy h3 { margin: 0 0 8px; color: var(--ink); font-size: 1.4rem; line-height: 1.3; letter-spacing: -.02em; }
.network-overview-page .network-location-copy p { margin: 0; color: var(--ink-3); font-size: .98rem; line-height: 1.7; }
.network-overview-page .network-location-copy .network-location-facility { display: flex; align-items: flex-start; gap: 8px; margin-bottom: 14px; font-size: .8rem; line-height: 1.6; }
.network-overview-page .network-location-facility i { color: #6d28d9; margin-top: 3px; }
.network-overview-page .network-location-services { display: grid; grid-template-rows: minmax(150px,auto) auto minmax(190px,auto); gap: 20px; padding: 20px 0; border-block: 1px solid #ece4f4; }
.network-overview-page .network-location-services h4 { margin: 0 0 10px; color: #67607a; font-size: .7rem; line-height: 1.4; text-transform: uppercase; letter-spacing: .075em; }
.network-overview-page .network-location-services ul { display: flex; flex-wrap: wrap; gap: 8px; padding: 0; margin: 0; list-style: none; }
.network-overview-page .network-location-services a { display: inline-flex; align-items: center; padding: 7px 10px; border: 1px solid #e6dcf1; border-radius: 8px; background: #faf7fd; color: #542383; font-size: .81rem; line-height: 1.5; font-weight: 600; text-decoration: none; }
.network-overview-page .network-location-services a:hover { border-color: #b991ed; background: #f0e7fc; color: #45147b; }
.network-overview-page .network-service-soon { display: inline-flex; align-items: center; gap: 8px; padding: 7px 10px; border: 1px solid #e6dcf1; border-radius: 8px; background: #faf7fd; color: #542383; font-size: .81rem; line-height: 1.5; font-weight: 600; }
.network-overview-page .network-service-soon small { padding: 2px 6px; border-radius: 5px; background: #eee5fc; color: #6f568a; font-size: .65rem; font-weight: 650; }
.network-overview-page .network-location-extra { margin: 0; color: var(--ink-3); font-size: .86rem; line-height: 1.65; }
.network-overview-page .network-location-actions { display: grid; gap: 16px; }
.network-overview-page .network-location-actions > a:last-child { display: flex; align-items: center; justify-content: center; gap: 10px; color: #6323b5; font-size: .86rem; line-height: 1.5; font-weight: 650; text-align: center; }
.network-overview-page .network-facility-links { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 10px; margin: 28px auto 0; color: var(--ink-3); font-size: .88rem; line-height: 1.7; text-align: center; }
.network-overview-page .network-facility-links i { color: #6d28d9; }
.network-overview-page .network-facility-pending { flex-basis: 100%; color: #777088; font-size: .8rem; }
.network-overview-page .network-capability-grid .bento-box { display: flex; flex-direction: column; align-items: flex-start; border-top: 3px solid #d7c3f3; gap: 0; padding: 28px; }
.network-overview-page .network-capability-grid .ic { display: grid; place-items: center; width: 48px; height: 48px; margin: 0 0 20px; border-radius: 13px; background: #eee5fc; color: #6623ce; }
.network-overview-page .network-capability-grid .ic i { color: inherit; font-size: 1.2rem; }
.network-overview-page .network-capability-grid p { flex: 1; margin-bottom: 22px; }
.network-overview-page .network-capability-grid a { display: inline-flex; align-items: center; gap: 10px; color: #6323b5; font-size: .9rem; font-weight: 650; line-height: 1.5; }
.network-overview-page .network-policy-note { display: grid; grid-template-columns: 48px minmax(0,1fr) auto; align-items: center; gap: 20px; margin: 32px 0 0; padding: 26px; border: 1px solid #dfd0f2; border-radius: 16px; background: #f7f2fd; }
.network-overview-page .network-policy-icon { display: grid; place-items: center; width: 48px; height: 48px; border-radius: 13px; background: #eaddfb; color: #6623ce; font-size: 1.2rem; }
.network-overview-page .network-policy-note h3 { margin: 0 0 8px; font-size: 1.1rem; line-height: 1.4; }
.network-overview-page .network-policy-note p { margin: 0; color: var(--ink-3); font-size: .92rem; line-height: 1.7; }
.network-overview-page .network-policy-note > a { display: inline-flex; align-items: center; gap: 8px; color: #6323b5; font-size: .88rem; font-weight: 650; white-space: nowrap; }
.network-overview-page .network-tool-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; }
.network-overview-page .network-tool-card { display: grid; grid-template-columns: 48px minmax(0,1fr) 20px; align-items: center; gap: 18px; padding: 26px; border: 1px solid var(--product-border); border-radius: 16px; background: #fff; color: var(--ink); box-shadow: var(--product-shadow); text-decoration: none; }
.network-overview-page .network-tool-card:hover { border-color: #b991ed; }
.network-overview-page .network-tool-card .ic { display: grid; place-items: center; width: 48px; height: 48px; margin: 0; border-radius: 13px; background: #eee5fc; color: #6623ce; }
.network-overview-page .network-tool-card i { color: #6623ce; }
.network-overview-page .network-tool-card h3 { margin: 0 0 8px; font-size: 1.1rem; line-height: 1.4; }
.network-overview-page .network-tool-card p { margin: 0; color: var(--ink-3); font-size: .92rem; line-height: 1.6; }
.network-overview-page .network-tools-note { margin: 26px auto 0; color: var(--ink-3); font-size: .88rem; line-height: 1.7; text-align: center; }
@media (max-width: 1000px) {
  .network-overview-page .network-location-card { flex-basis: calc((100% - 24px) / 2); }
  .network-overview-page .network-policy-note { grid-template-columns: 48px minmax(0,1fr); }
  .network-overview-page .network-policy-note > a { grid-column: 2; }
}
@media (max-width: 680px) {
  .network-overview-page .network-location-card { flex-basis: 100%; padding: 24px; grid-template-rows: auto 180px auto auto auto auto; }
  .network-overview-page .network-location-services { grid-template-rows: auto auto auto; }
  .network-overview-page .network-overview-map { border-radius: 14px; }
  .network-overview-page .network-overview-map figcaption { padding: 14px 18px; font-size: .78rem; }
  .network-overview-page .network-tool-grid { grid-template-columns: 1fr; gap: 16px; }
  .network-overview-page .network-tool-card { gap: 14px; padding: 22px; }
  .network-overview-page .network-policy-note { padding: 22px; gap: 14px; }
  .network-overview-page .network-policy-note h3 { font-size: 1rem; }
}
