.network-plans { background: #fff; padding: 72px 40px 96px; color: #333; }
.network-plans-inner { max-width: 1160px; margin: auto; }
.network-plans h2 { margin: 0 0 40px; text-align: center; font: 600 clamp(25px, 2.3vw, 32px)/1.3 Montserrat, Inter, sans-serif; letter-spacing: -.025em; text-transform: uppercase; }
.network-plans-grid { display: grid; grid-template-columns: 2fr 1fr; gap: 16px; align-items: start; }
.network-plan-group { min-width: 0; padding: 16px; border: 1px solid #e7e7e7; border-radius: 3px; background: #f9f9f9; }
.network-plan-group-label { margin-bottom: 8px; padding: 5px 8px; border: 1px solid #e9e9e9; border-radius: 3px; text-align: center; font-size: 13px; font-weight: 600; }
.network-plan-group-cards { display: grid; grid-template-columns: 1fr; gap: 8px; align-items: start; }
.network-plan-group-metered .network-plan-group-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.network-plan { min-height: 0; display: flex; flex-direction: column; min-width: 0; padding: 32px 24px 16px; border: 1px solid #e9e9e9; border-radius: 3px; background: #fff; }
.network-plan-visual { height: 168px; display: grid; place-items: center; color: #4165b8; margin: 8px 0 16px; }
.network-plan-visual svg { width: 180px; max-width: 100%; filter: drop-shadow(0 10px 10px #263f7c12); }

.network-plan h3 { margin: 8px -10px 34px; text-align: center; font: 600 23px/1.3 Montserrat, Inter, sans-serif; letter-spacing: -.04em; }
.network-plan-benefits { list-style: none; padding: 0; margin: 0 0 26px; display: grid; align-content: start; gap: 22px; min-height: 130px; font-size: 14px; line-height: 1.5; }
.network-plan-benefits li { display: flex; align-items: flex-start; gap: 9px; }
.network-plan-benefits li::before { content: '✓'; flex: 0 0 22px; height: 22px; display: grid; place-items: center; border-radius: 50%; background: #e8e8e8; color: #444; font-size: 14px; font-weight: 700; }
.network-plan-rates { margin: 16px 0 0; display: grid; gap: 11px; font-size: 12px; }
.network-plan-rates div { display: flex; justify-content: space-between; gap: 8px; }
.network-plan-rates dt { color: #777; }
.network-plan-rates dd { margin: 0; text-align: right; font-weight: 600; }
.network-plan-rates small { font-size: 10px; font-weight: 400; }
.network-plan-rates del { margin-right: 5px; color: #999; font-weight: 400; }
.network-plan-rates strong { color: #333; }
.network-plan-bottom { margin-top: 0; text-align: center; }
.network-plan-price > span { color: #555; font-size: 12px; }
.network-plan-price > div { display: flex; justify-content: center; align-items: baseline; gap: 5px; margin: 5px 0 16px; }
.network-plan-price strong { font-size: 36px; font-weight: 700; letter-spacing: -.05em; line-height: 1.2; }
.network-plan-price b { font-size: 29px; font-weight: 600; }
.network-plan-custom strong { font-size: 28px; line-height: 43px; }
.network-plan-custom { padding-bottom: 27px; }
.network-plan-link { display: inline-flex; justify-content: center; align-items: center; gap: 12px; min-height: 46px; padding: 10px 13px; border: 2px solid #444; border-radius: 3px; color: #333; background: #fff; text-decoration: none; font-size: 15px; font-weight: 600; transition: background .15s, color .15s; }
.network-plan-link:hover { background: #333; color: #fff; }
.network-plan-link > span { display: none; }
@media (max-width: 1100px) and (min-width: 761px) { .network-plans { padding-inline: 20px; } .network-plan-group { padding: 9px; } .network-plan { padding-inline: 14px; } .network-plan h3 { font-size: 20px; } .network-plan-benefits { min-height: 155px; font-size: 13px; } .network-plan-rates div { flex-wrap: wrap; } .network-plan-link { font-size: 13px; } }
@media (max-width: 760px) { .network-plans { padding: 48px 20px 64px; } .network-plans h2 { margin-bottom: 30px; } .network-plans-grid, .network-plan-group-metered .network-plan-group-cards { grid-template-columns: 1fr; } .network-plan-group-cards { height: auto; } .network-plan { padding: 26px; } .network-plan-benefits { min-height: auto; } .network-plan-visual { height: 110px; } }
.network-plan-details { margin-top: 16px; }
.network-plan-details summary { width: fit-content; margin: auto; cursor: pointer; color: #777; font-size: 11px; }
.network-plan-details[open] summary { color: #333; }

.network-plan-unit-price { display: block; margin: -8px 0 18px; color: #777; font-size: 12px; line-height: 1.4; }

.plan-geography-image { display: block; width: 240px; max-width: 100%; height: 160px; object-fit: contain; }
