:root { --navy:#0f1e3d;--blue:#2563eb;--blue-dark:#1d4ed8;--white:#fff;--light:#f4f7fc;--text:#475569;--border:#e2e8f0;--radius:24px;--width:1200px;--space:8px;--font:Arial,Helvetica,sans-serif }
* { box-sizing:border-box }
html { scroll-behavior:smooth; }
body { margin:0;color:var(--navy);font:1rem/1.6 var(--font);background:var(--white) }
img { max-width:100%;height:auto;display:block }
a { color:inherit;text-decoration:none }
button,input,summary { font:inherit }
a,summary { -webkit-tap-highlight-color:transparent }
a:focus-visible,summary:focus-visible { outline:3px solid var(--blue);outline-offset:5px;border-radius:4px }
.site-footer a:focus-visible,.about-section a:focus-visible { outline-color:#fff }
h1,h2,h3,h4,p { margin:0 }
h1,h2,h3,h4 { line-height:1.12 }
h1 { font-size:clamp(2.7rem,4.45vw,4.15rem);letter-spacing:-.047em;font-weight:700 }
h1 span { display:block;color:var(--blue) }
h2 { font-size:clamp(2.1rem,3.6vw,3.35rem);letter-spacing:-.045em }
h3 { font-size:1.5rem;letter-spacing:-.025em }
h4 { font-size:1.0625rem }
p { color:var(--text) }
.container { width:min(var(--width),calc(100% - 64px));margin-inline:auto }
.section { padding-block:96px; }
.eyebrow { font-size:.875rem;font-weight:700;letter-spacing:.06em;color:var(--blue);margin-bottom:20px }
.lead { font-size:1.125rem;line-height:1.7 }
.small { font-size:.8125rem;line-height:1.6 }
.button { display:inline-flex;justify-content:center;align-items:center;gap:20px;min-height:52px;padding:14px 24px;background:var(--blue);color:var(--white);font-size:.9375rem;font-weight:700;border:1px solid var(--blue);border-radius:10px;line-height:1.45;transition:background .15s }
.button:hover { background:var(--blue-dark) }
.button span { font-size:1.2rem }
.button-outline { background:transparent;color:var(--navy);border-color:#cbd5e1 }
.button-outline:hover { background:#eaf0fb }
.button-small { min-height:44px;padding:11px 18px;font-size:.875rem }
.button-white { background:#fff;border-color:#fff;color:var(--navy) }
.button-white:hover { background:#e8efff }
.text-link { display:inline-flex;align-items:center;gap:28px;color:var(--blue);font-weight:700;min-height:44px }
.text-link:hover { text-decoration:underline }
.skip-link { position:fixed;left:16px;top:-100px;z-index:100;background:#fff;padding:12px 20px }
.skip-link:not(:focus) { clip-path:inset(50%);width:1px;height:1px;padding:0;overflow:hidden; }
.skip-link:focus { top:12px }
.hero { background:linear-gradient(110deg,#fff 48%,#f4f7fc 48%);padding-block:64px 54px }
.hero-grid { display:grid;grid-template-columns:1.1fr 1fr;gap:48px;align-items:center }
.hero-copy .eyebrow { letter-spacing:0 }
.location-mark { font-size:1.3rem;margin-right:6px }
.hero-copy .lead { max-width:530px;margin-top:26px }
.actions { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:100%;max-width:30rem;margin-top:30px }
.actions .button { min-width:0;min-height:3.25rem;padding:10px 14px;gap:10px; }
.hero-benefits { display:flex;flex-wrap:wrap;gap:12px 20px;padding:0;margin:30px 0 0;list-style:none;color:var(--text);font-size:.8125rem }
.hero-benefits li:before { content:'✓';color:var(--blue);margin-right:6px;font-weight:700 }
.hero-art { margin:0;position:relative;min-width:0 }
.hero-art>img { width:100%;aspect-ratio:1;object-fit:cover;border-radius:32px }
.hero-art figcaption { display:flex;align-items:center;gap:16px;position:relative;margin:-68px 24px 0 8px;width:max-content;max-width:calc(100% - 32px);padding:18px 24px;background:#fff;border:1px solid var(--border);border-radius:14px;box-shadow:0 12px 35px #0f1e3d0a;color:var(--text);font-size:.9375rem }
.hero-art figcaption strong { color:var(--navy) }
.figure-icon { color:var(--blue);background:var(--light);border-radius:12px;padding:3px 14px;font-size:2rem }
.section-heading { display:flex;justify-content:space-between;gap:40px;align-items:flex-end;margin-bottom:40px }
.section-heading>p { max-width:430px }
.offer-layout { display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start }
.offer-card { border:1px solid #bccdf5;border-top:5px solid var(--blue);border-radius:var(--radius);padding:32px;box-shadow:0 12px 36px #0f1e3d05;min-width:0 }
.offer-top { display:flex;align-items:start;justify-content:space-between;gap:12px }
.offer-top .eyebrow { margin-bottom:18px }
.draft-tag { font-size:.75rem;background:var(--light);color:var(--text);padding:4px 9px;border-radius:5px }
.offer-card h3 { font-size:1.25rem;overflow-wrap:anywhere }
.speed { margin-top:24px;display:grid;gap:6px;color:var(--blue);font-weight:700;font-size:clamp(1.2rem,2.1vw,1.75rem);line-height:1.3;overflow-wrap:anywhere }
.speed-unit { font-size:.875rem;color:var(--text);font-weight:400 }
.upload { font-size:.875rem;margin-top:16px }
.offer-use { margin:20px 0;padding-bottom:20px;border-bottom:1px solid var(--border) }
.price { display:flex;flex-wrap:wrap;align-items:baseline;gap:10px }
.price strong { font-size:1.6rem;overflow-wrap:anywhere }
.price span { font-size:.875rem;color:var(--text) }
.offer-terms { margin:24px 0;font-size:.8125rem }
.offer-terms>div { display:grid;grid-template-columns:1fr 1.2fr;gap:12px;padding:10px 0;border-bottom:1px solid var(--border) }
dt { color:var(--text) }
dd { margin:0;text-align:right;overflow-wrap:anywhere }
.offer-card>.button { width:100% }
.offer-card>.small { margin-top:12px }
.offer-guide { padding:16px 0 }
.outline-icon { display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:14px;width:56px;height:56px;color:var(--blue);font-size:2rem;margin-bottom:24px }
.offer-guide>h3 { font-size:2rem;max-width:390px }
.offer-guide>p { margin-top:20px }
.guide-item { display:flex;gap:20px;margin-top:28px }
.guide-item>span { font-size:.8125rem;color:var(--blue);padding-top:2px }
.guide-item p { font-size:.9375rem;margin-top:8px }
.draft-note { font-size:.8125rem;border-left:3px solid #9eb7ef;padding:8px 0 8px 14px;color:var(--text) }
.services-section { background:var(--light) }
.services-grid { display:grid;grid-template-columns:1fr 1fr;gap:24px }
.service-card { position:relative;background:var(--white);padding:36px;border:1px solid var(--border);border-radius:var(--radius) }
.service-card h3 { font-size:2.3rem }
.service-card>p:not(.eyebrow) { max-width:380px;margin-top:20px }
.service-card .text-link { margin-top:24px }
.service-symbol { position:absolute;right:32px;top:28px;font-size:2rem;color:var(--blue) }
.coming-soon { display:flex;justify-content:space-between;align-items:center;gap:24px;border-top:1px solid #d6deeb;margin-top:32px;padding-top:24px;font-size:.9375rem }
.coming-soon>span { color:var(--text) }
.coming-soon p { color:var(--navy);font-weight:700;display:flex;align-items:center;gap:16px }
.pill { border:1px solid #cad5e7;border-radius:24px;padding:4px 12px;font-size:.8125rem;color:var(--text);font-weight:400 }
.about-section { background:var(--navy);color:#fff }
.about-grid { display:grid;grid-template-columns:1.1fr 1fr;gap:90px }
.about-section .eyebrow { color:#abc5ff }
.about-section h2 { max-width:510px }
.about-section p { color:#cad5e7;margin-top:18px }
.about-section .eyebrow { margin-top:0 }
.about-section .about-lead { font-size:1.1875rem;color:#fff;margin-top:28px }
.about-section .button { margin-top:28px }
.about-values { align-self:center }
.about-values article { display:flex;gap:24px;border-top:1px solid #ffffff26;padding:28px 0 }
.about-values article:last-child { border-bottom:1px solid #ffffff26 }
.about-values article>span { flex-shrink:0;white-space:nowrap; font-size:.875rem;color:#abc5ff }
.about-values h3 { font-size:1.3rem }
.about-values p { font-size:.9375rem;margin-top:12px }
.coverage-top { display:flex;justify-content:space-between;align-items:center;gap:64px }
.coverage-top .lead { max-width:610px;margin-top:24px }
.coverage-number { display:flex;align-items:center;gap:24px }
.coverage-number strong { font-size:7rem;letter-spacing:-.06em;color:var(--blue);line-height:1 }
.coverage-number span { font-size:.875rem;color:var(--text);white-space:normal }
.towns { border:1px solid var(--border);border-radius:16px;margin-top:40px;overflow:hidden }
summary { list-style:none;cursor:pointer;min-height:56px;display:flex;justify-content:space-between;align-items:center;gap:24px;font-weight:700 }
summary::-webkit-details-marker { display:none }
.towns summary { padding:22px 28px;background:var(--light) }
.plus { display:grid;place-items:center;width:1em;height:1em;line-height:1; font-weight:400;color:var(--blue);font-size:1.5rem;flex-shrink:0 }
details[open]>summary .plus { transform:rotate(45deg) }
.towns ul { columns:4;list-style:none;padding:16px 28px 24px;margin:0;column-gap:24px }
.towns li { break-inside:avoid;font-size:.9375rem;padding:8px 0;color:var(--text) }
.coverage-action { display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:24px }
.coverage-action p { font-size:.875rem }
.steps { padding:0;margin:56px 0 0;list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:40px }
.steps li { border-top:1px solid var(--border);padding-top:24px }
.steps li>span { display:inline-flex;justify-content:center;align-items:center;width:36px;height:36px;border-radius:50%;background:var(--light);color:var(--blue);font-weight:700;margin-bottom:16px }
.steps h3 { font-size:1.125rem;max-width:290px;line-height:1.4 }
.steps p { font-size:.9375rem;margin-top:10px }
.faq-section { background:var(--light) }
.faq-grid { display:grid;grid-template-columns:1fr 1.3fr;gap:72px }
.faq-grid>div>p:not(.eyebrow) { margin-top:24px }
.faq-grid .text-link { margin-top:20px }
.faq-list details { border-bottom:1px solid #d7e0ed }
.faq-list details:first-child { border-top:1px solid #d7e0ed }
.faq-list summary { padding:20px 0;font-size:1rem }
.faq-list details>p { font-size:.9375rem;padding:0 28px 24px 0 }
.contact-grid { display:grid;grid-template-columns:1.2fr 1fr;gap:80px }
.contact-grid .lead { margin-top:24px }
.contact-grid .draft-note { max-width:440px;margin-top:32px }
.contact-card { border:1px solid var(--border);border-radius:var(--radius);padding:8px 28px }
.contact-card>div { padding:22px 0;border-bottom:1px solid var(--border);display:grid;gap:6px }
.contact-card>div:last-child { border:0 }
.contact-card span { font-size:.8125rem;color:var(--text) }
.contact-card strong { font-size:1rem;overflow-wrap:anywhere }
.site-footer { background:var(--navy);color:#fff;padding:56px 0 24px }
.footer-grid { display:grid;grid-template-columns:1.3fr .75fr 1fr;gap:48px }
.footer-grid>div { grid-row:span 2 }
.footer-grid>div:not(:first-child) { display:grid;grid-template-rows:subgrid;row-gap:0 }
.footer-logo { width:140px;height:48px;object-fit:contain;object-position:left }
.site-footer p { color:#c4d0e5;margin-top:20px;font-size:.9375rem }
.site-footer p.small { font-size:.8125rem }
.site-footer h2 { font-size:.9375rem;letter-spacing:0;margin:10px 0 20px }
.site-footer nav { display:grid;align-content:start }
.site-footer nav a, .document-list a { font-size:.875rem;min-height:44px;display:flex;align-items:center;color:#c4d0e5 }
.site-footer nav a:hover, .document-list a:hover { color:#fff;text-decoration:underline }
.document-list { margin:0;padding:0;list-style:none }

.document-list span { color:#a9bbd6;font-size:.8125rem }
.footer-bottom { display:flex;justify-content:space-between;gap:20px;border-top:1px solid #ffffff26;margin-top:40px;padding-top:24px;font-size:.75rem;color:#a9bbd6 }
@media(min-width:1600px) {
.hero { padding-block:80px }
.hero-grid { gap:64px }
}
@media(max-width:1100px) {
.header-cta { display:none }
.hero-grid { gap:24px }
.hero-copy .lead { font-size:1rem }
.hero-benefits { gap:10px }
.offer-layout { gap:36px }
.about-grid,.faq-grid,.contact-grid { gap:40px }
.towns ul { columns:3 }
.coverage-number { gap:16px }
.coverage-number strong { font-size:5rem }
}
@media(max-width:800px) {
.container { width:calc(100% - 40px) }
.section { padding-block:64px }
.hero { padding:40px 0;background:linear-gradient(180deg,#fff 60%,#f4f7fc) }
.hero-grid { grid-template-columns:1fr;gap:36px }
.hero-copy { max-width:650px }
h1 { font-size:clamp(2.7rem,7.2vw,4rem) }
.hero-copy .lead { font-size:1.0625rem;max-width:580px;margin-top:24px }
.hero-art { width:min(100%,520px);margin-inline:auto }
.hero-art>img { aspect-ratio:1.15 }
.section-heading { display:block }
.section-heading>p { margin-top:24px }
.offer-layout { grid-template-columns:1fr;gap:32px }
.offer-guide { max-width:620px }
.offer-card { padding:28px }
.offer-guide>h3 { max-width:none }
.services-grid { gap:16px }
.service-card { padding:26px }
.service-card h3 { font-size:1.85rem }
.service-symbol { right:22px;top:18px;font-size:1.5rem }
.about-grid,.faq-grid,.contact-grid { grid-template-columns:1fr;gap:36px }
.about-section h2 { max-width:590px }
.coverage-top { gap:24px }
.coverage-number { display:block }
.coverage-number span { display:block;margin-top:12px }
.coverage-action { align-items:flex-start;flex-direction:column }
.towns ul { columns:2 }
.steps { gap:24px }
.footer-grid { grid-template-columns:1fr 1fr }
.footer-grid>div:first-child { grid-column:1/-1 }
.footer-bottom { flex-direction:column;gap:8px }
}
@media(max-width:520px) {
.container { width:calc(100% - 32px) }
.section { padding-block:52px }
.hero { padding-top:32px }
.hero-copy .eyebrow { font-size:.8125rem;letter-spacing:0;margin-bottom:20px }
h1 { font-size:clamp(2.4rem,10vw,3.2rem) }
h2 { font-size:2.15rem }
.hero-copy .lead { margin-top:20px;font-size:1rem }
.actions { gap:10px;margin-top:24px }

.hero-benefits { font-size:.75rem;gap:8px 14px;margin-top:24px }
.hero-art figcaption { margin-top:-48px;padding:14px 18px;font-size:.875rem }
.section-heading { margin-bottom:28px }
.offer-card { padding:22px }
.offer-top { flex-wrap:wrap;gap:6px;margin-bottom:16px }
.offer-top .eyebrow { margin-bottom:0 }
.price strong { font-size:1.4rem }
.offer-terms>div { grid-template-columns:1fr;gap:4px }
dd { text-align:left }
.services-grid { grid-template-columns:1fr }
.service-card { padding:28px }
.service-card h3 { font-size:2rem }
.coming-soon { display:block }
.coming-soon p { margin-top:10px;flex-wrap:wrap }
.about-values article { gap:16px }
.coverage-top { display:block }
.coverage-number { display:flex;align-items:center;gap:20px;margin-top:28px }
.coverage-number span { margin-top:0 }
.coverage-number strong { font-size:4rem }
.towns { margin-top:28px }
.towns summary { padding:18px;font-size:.9375rem;gap:12px }
.towns ul { padding:12px 18px 20px;column-gap:12px }
.towns li { font-size:.875rem;overflow-wrap:anywhere }
.coverage-action .button { width:100%;text-align:left;gap:12px }
.steps { grid-template-columns:1fr;margin-top:36px;gap:24px }
.steps li { position:relative;padding:22px 0 0 52px }
.steps li>span { position:absolute;left:0;top:24px }
.steps h3 { max-width:none }
.faq-list summary { font-size:.9375rem;gap:18px }
.contact-card { padding-inline:22px }
.footer-grid { grid-template-columns:1fr;gap:28px }
.footer-grid>div:first-child { grid-column:auto }

}
@media(prefers-reduced-motion:reduce) {
html { scroll-behavior:auto }
* { transition:none!important }
}
@media print {
.skip-link { display:none }
.section { padding-block:32px }
.hero { background:#fff }
.container { width:100% }
.button { background:#fff;color:#0f1e3d;border-color:#0f1e3d }
.site-footer,.about-section { print-color-adjust:exact }
}
.hero-copy { min-width:0;container-type:inline-size }
.tv-panel { display:none }
.internet-section:has(#offer-tv:checked) .internet-panel { display:none }
.internet-section:has(#offer-tv:checked) .tv-panel { display:block }
.combined-toolbar { align-items:flex-end;padding-bottom:24px;border-bottom:1px solid var(--border) }
.service-switch .switch-options label { letter-spacing:0;min-width:0 }
.service-switch input:checked+label { background:var(--blue) }
.offer-recommendation { font-size:.875rem;margin-top:24px;color:var(--text) }
#uslugi,#telefon { scroll-margin-top:120px }
.internet-section .phone-strip { margin-top:32px;border-top:1px solid var(--border) }
.contract-heading { font-size:1.125rem;line-height:1.65 }
.tariff-toolbar { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:24px;margin-bottom:32px }
.tariff-toolbar>p { font-size:.875rem }
.building-switch { padding:0;border:0;margin:0;min-width:0 }
.building-switch legend { font-size:.875rem;font-weight:700;margin-bottom:12px }
.switch-options { display:flex;background:var(--light);border:1px solid var(--border);padding:5px;border-radius:12px;position:relative;gap:4px }
.switch-options input { position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);scroll-margin-top:140px }
.switch-options label { display:flex;align-items:center;justify-content:center;min-width:0;min-height:46px;padding:10px 20px;border-radius:8px;font-size:.875rem;letter-spacing:.06em;font-weight:700;cursor:pointer }
.switch-options input:checked+label { background:var(--navy);color:#fff;box-shadow:0 2px 4px #0f1e3d14 }
.switch-options input:focus-visible+label { outline:3px solid var(--blue);outline-offset:3px }
.price-home { display:none }
main:has(#building-home:checked) .price-block { display:none }
main:has(#building-home:checked) .price-home { display:inline }
.internet-tariffs { display:grid;gap:24px }
.tariff-card { display:flex;flex-direction:column;min-width:0;padding:28px;border:1px solid var(--border);border-radius:var(--radius);background:#fff }
.tariff-featured { border:2px solid var(--blue);padding:27px;box-shadow:0 12px 32px #2563eb0d }
.tariff-top { min-height:32px;display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:.8125rem;color:var(--text);margin-bottom:16px }
.tariff-badge { background:var(--blue);color:#fff;padding:4px 9px;border-radius:6px;font-weight:700 }
.tariff-card h3 { font-size:1.5rem }
.tariff-speed { margin-top:24px;color:var(--blue);font-size:1rem }
.tariff-speed strong { font-size:3.5rem;letter-spacing:-.05em;line-height:1.15 }
.tariff-specs { margin:16px 0 0;font-size:.875rem }
.tariff-specs>div { display:flex;justify-content:space-between;gap:12px;padding:5px 0 }
.tariff-specs dd { font-weight:700 }
.tariff-description { font-size:.9375rem;line-height:1.6;margin:20px 0;min-height:3.2em }
.tariff-price { margin-top:auto;padding-top:20px;border-top:1px solid var(--border);color:var(--navy);font-size:.875rem }
.tariff-price strong { font-size:3rem;letter-spacing:-.05em;line-height:1.2 }
.tariff-context { font-size:.8125rem;margin-top:4px }
.tariff-conditions { list-style:none;padding:0;margin:20px 0 24px;font-size:.875rem;color:var(--text) }
.tariff-conditions li { padding:5px 0 }
.tariff-conditions li:before { content:'✓';color:var(--blue);margin-right:8px }
.tariff-card .button { width:100%;gap:12px;padding-inline:14px }
.tariff-footnotes { margin-top:28px;display:grid;gap:12px }
.tariff-footnotes p { font-size:.875rem;max-width:1000px }
.tv-tariffs { display:grid;gap:20px }
.tv-tariff { padding:24px }
.tv-tariff .tariff-top { font-size:.8125rem }
.tv-base { font-size:.875rem;margin-top:8px }
.channel-count { margin-top:28px;color:var(--navy);font-size:.875rem }
.channel-count strong { font-size:2.75rem;letter-spacing:-.04em }
.hd-count { font-size:.875rem;color:var(--blue) }
.tv-speed { font-size:.875rem;margin-block:20px }
.tv-tariff .tariff-price { min-height:78px }
.tariff-price-missing { font-size:.875rem;font-weight:700;overflow-wrap:anywhere;display:flex;align-items:center }
.tv-tariff .button { margin-top:24px;font-size:.875rem }
.tv-terms { font-size:.875rem;margin-top:24px }
.tv-extras { display:grid;grid-template-columns:1fr .65fr 1.15fr;gap:32px;padding:32px 0;margin-top:32px;border-top:1px solid #d6deeb;border-bottom:1px solid #d6deeb }
.tv-extras h3 { font-size:1rem;line-height:1.4 }
.tv-extras p { font-size:.875rem;margin-top:12px }
.tv-extras strong { color:var(--navy) }
.phone-strip { display:flex;justify-content:space-between;align-items:center;gap:32px;padding-top:40px }
.phone-strip .eyebrow { margin-bottom:12px }
.phone-strip p:not(.eyebrow) { font-size:.9375rem;max-width:640px;margin-top:12px }
.phone-strip>.button { flex-shrink:0 }
.tv-choice p { font-size:.9375rem }
.tv-choice strong { color:var(--navy) }
.tv-choice a { font-size:.875rem }
@media(max-width:1100px) {
.internet-tariffs { gap:16px }
.tariff-card { padding:22px }
.tariff-featured { padding:21px }
.tv-extras { grid-template-columns:1fr 1fr }
.tv-extras>div:last-child { grid-column:1/-1 }
}
@media(max-width:800px) {
.tariff-description { min-height:0 }
.tariff-toolbar { align-items:flex-start }
.tv-choice { margin-top:24px }
.phone-strip { align-items:flex-start;flex-direction:column }
.tariff-price { margin-top:0 }
.tariff-speed strong { font-size:3rem }
}
@media(max-width:520px) {
.tariff-toolbar { flex-direction:column;gap:16px }
.building-switch,.switch-options { width:100% }
.switch-options label { flex:1;min-width:0 }
.tv-extras>div:last-child { grid-column:auto }
.tariff-top { margin-bottom:12px }
.tariff-card { padding:24px }
.tariff-featured { padding:23px }
.tariff-card h3 { font-size:1.5rem }
.tariff-price strong { font-size:2.75rem }
}
@media(max-width:520px) {
.combined-toolbar { align-items:stretch }
.service-switch .switch-options label { min-width:0;padding-inline:12px;white-space:normal }
}
.shared-offer-terms { background:var(--light);border:1px solid var(--border);border-radius:16px;padding:20px 24px;margin:0 0 28px }
.shared-offer-terms h3 { font-size:.875rem;line-height:1.4;margin-bottom:12px;color:var(--navy) }
.shared-offer-terms ul { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px 24px;list-style:none;margin:0;padding:0 }
.shared-offer-terms li { font-size:.875rem;line-height:1.5;color:var(--text);padding-left:20px;position:relative }
.shared-offer-terms li:before { content:'✓';position:absolute;left:0;color:var(--blue);font-weight:700 }
.shared-offer-terms strong { font-weight:400 }
.unified-tariffs .unified-card>.button { margin-top:24px }
@media(max-width:1000px) {
.shared-offer-terms ul { grid-template-columns:repeat(2,minmax(0,1fr)) }
}
@media(max-width:520px) {
.shared-offer-terms { padding:18px 20px }
.shared-offer-terms ul { grid-template-columns:1fr;gap:10px }
}
.unified-tariffs { display:grid;align-items:stretch;gap:20px }
.unified-tariffs .unified-card { padding:24px;border-width:1px;box-sizing:border-box }
.unified-tariffs .tariff-featured { border-color:var(--blue);box-shadow:inset 0 0 0 1px var(--blue),0 12px 32px #2563eb0d }
.unified-card .tariff-top { margin:0 0 14px;min-height:32px;font-size:.8125rem }
.unified-card h3 { font-size:1.375rem;line-height:1.25 }
.unified-card .tariff-subtitle { font-size:.875rem;margin-top:6px }
.unified-card .tariff-speed { margin-top:24px;font-size:.9375rem }
.unified-card .tariff-speed strong { font-size:3rem }
.unified-card .tariff-specs { margin-top:16px;font-size:.875rem }
.unified-card .tariff-specs>div { min-height:32px;align-items:baseline }
.unified-card .tariff-specs>div:last-child { min-height:58px }
.unified-card .spec-secondary { font-size:.8125rem;font-weight:400;color:var(--text) }
.unified-card .tariff-description { margin:20px 0;min-height:4.8em;font-size:.875rem }
.unified-card .tariff-price { display:flex;align-items:center;min-height:80px;padding-top:16px;margin-top:auto;font-size:.875rem }
.unified-card .tariff-price strong { font-size:3rem }
.unified-card .tariff-price-pending { font-size:.875rem;font-weight:700;overflow-wrap:anywhere }
.unified-card .tariff-conditions { margin:20px 0 24px;font-size:.875rem }
.unified-card .button { margin-top:0;min-height:52px;font-size:.875rem;padding-inline:10px }
@media(max-width:600px) {
.unified-card .tariff-description { min-height:0 }
.unified-card .tariff-specs>div:last-child { min-height:58px }
}
.contact-source { font-size:.8125rem;color:var(--text);border-left:3px solid #9eb7ef;padding:8px 0 8px 14px;margin-top:32px }
.contact-card a:hover { text-decoration:underline }
.contact-muted { color:var(--text);font-size:.8125rem;font-weight:400 }
.email-text { font-weight:700;letter-spacing:0 }
.contact-card .email-text { font-size:1rem;color:var(--navy);font-weight:700 }
.hero-grid { grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) }
@media(max-width:800px) {
.hero-grid { grid-template-columns:minmax(0,1fr) }
}
.business-section { background:var(--light) }
.business-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px }
.business-grid article { background:#fff;border:1px solid var(--border);border-radius:20px;padding:32px }
.business-number { display:block;color:var(--blue);font-size:.8125rem;font-weight:700;margin-bottom:24px }
.business-grid h3 { font-size:1.5rem;line-height:1.25 }
.business-grid p { margin-top:16px;max-width:48ch }
.business-contact { display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:32px }
.business-contact p { max-width:46ch }
@media(max-width:600px) {
.business-grid { grid-template-columns:1fr }
.business-grid article { padding:24px }
.business-contact { align-items:flex-start;flex-direction:column }
}
.about-section .about-anniversary { display:inline-block;margin:0 0 20px;padding:8px 14px;border:1px solid #ffffff40;border-radius:8px;color:#fff;font-size:1rem;font-weight:700 }
.about-section .about-local { margin-top:20px;color:#fff;font-size:1.05rem;line-height:1.55 }
.about-section .about-local strong { font-size:1.35rem;color:#fff }
.about-local-points { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:24px }
.about-local-points article { padding:16px;border:1px solid #ffffff33;border-radius:12px }
.about-local-points h3 { font-size:1rem;color:#fff }
.about-local-points p { margin-top:8px!important;font-size:.875rem!important;line-height:1.5 }
@media(max-width:800px) {
.about-local-points { grid-template-columns:1fr }
}
.about-rebuild { display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px 72px }
.about-rebuild-intro { grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px 72px;align-items:end }
.about-rebuild-intro h2 { max-width:700px }
.about-rebuild-intro .about-local { margin-top:0;max-width:520px }
.about-rebuild .about-local-points { grid-column:1/-1;margin-top:0 }
.about-rebuild-copy { max-width:620px }
.about-rebuild-copy p { margin-top:18px }
.about-rebuild-copy .about-lead { margin-top:0;font-size:1.1875rem;color:#fff }
.about-rebuild-copy .button { margin-top:28px }
.about-rebuild .about-values { align-self:start }
@media(max-width:800px) {
.about-rebuild { grid-template-columns:1fr;gap:32px }
.about-rebuild-intro,.about-rebuild .about-local-points,.about-rebuild-copy,.about-rebuild .about-values { grid-column:auto }
.about-rebuild-intro { grid-template-columns:1fr;gap:24px }
}
.tariff-context { display:none }
.accessibility-panel { display:grid;gap:12px;width:270px;max-width:calc(100vw - 32px);margin-top:8px;padding:12px;border:1px solid var(--border);border-radius:10px;background:#fff;box-shadow:0 10px 30px #0f1e3d20;white-space:normal }
.accessibility-panel-heading { display:grid;grid-template-columns:minmax(0,1fr) 44px;align-items:center;gap:8px; }
.accessibility-title { margin:0;font-weight:700;color:var(--navy);text-align:left;overflow-wrap:anywhere }
.accessibility-icon-row { display:grid;grid-template-columns:repeat(auto-fit,minmax(44px,1fr));gap:6px;align-items:center }
.accessibility-panel button { display:grid;place-items:center;min-width:0;width:100%;height:44px;min-height:44px;padding:0;border:1px solid var(--border);border-radius:6px;background:#fff;color:var(--navy);font:inherit;font-weight:700;text-align:center;cursor:pointer }
.accessibility-panel button svg { display:block;width:20px;height:20px;margin:0;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;fill:none }
.accessibility-panel button:hover,.accessibility-panel button:focus-visible,.accessibility-panel button[aria-pressed="true"] { border-color:var(--blue);background:var(--light);color:var(--blue) }
html.a11y-text-minus-4 { font-size:75% }
html.a11y-text-minus-3 { font-size:81.25% }
html.a11y-text-minus-2 { font-size:87.5% }
html.a11y-text-minus-1 { font-size:93.75% }
html.a11y-text-plus-1 { font-size:112.5% }
html.a11y-text-plus-2 { font-size:125% }
html.a11y-text-plus-3 { font-size:137.5% }
html.a11y-text-plus-4 { font-size:150% }
html.a11y-high-contrast { --navy:#000;--text:#000;--blue:#0037a6;--light:#fff;--border:#000;background:#fff;color:#000 }
html.a11y-high-contrast body,html.a11y-high-contrast .section { background:#fff;color:#000 }
html.a11y-high-contrast .site-footer { background:#000;color:#fff }
html.a11y-high-contrast .site-footer a,html.a11y-high-contrast .site-footer h2,html.a11y-high-contrast .site-footer p { color:#fff }
html.a11y-high-contrast .button { background:#000;color:#fff;border-color:#000 }
html.a11y-high-contrast .button-outline { background:#fff;color:#000;border-color:#000 }
html.a11y-underline-links a { text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px }

/* Intrinsic sizing: columns grow with text, without pushing the viewport. */
body { overflow-wrap: anywhere; }
:is(.hero-grid,.section-heading,.coverage-top,.coverage-action,.business-contact,.contact-grid,.footer-grid,.about-values article) > * { min-width: 0; }
button:focus-visible, input:focus-visible { outline: 3px solid var(--blue); outline-offset: 3px; }
.button { max-width: 100%; text-align: center; }
.button > span[aria-hidden] { flex-shrink: 0; }
h1 { line-height: 1.15; }
.hero-copy h1 span { white-space: normal; }
/* One size for all translations; reserve enough width for the longest sentence. */
@media (min-width: 801px) {
 .hero-copy h1 { font-size:clamp(2rem,6.8cqi,3.5rem); }
}
@media (min-width: 801px) and (max-width: 1100px) {
 .hero-grid { grid-template-columns:minmax(0,1fr); }
 .hero-copy { width:100%;max-width:800px; }
 .hero-art { width:min(100%,520px);margin-inline:auto; }
}
.hero-copy h1 .headline-first { color: var(--navy); }
.hero-location { display: flex; align-items: center; gap: 8px; margin-bottom: 26px; color: var(--blue); line-height: 1.4; }
.hero-location-icon { display: flex; flex: 0 0 24px; }
.hero-location strong { font-size: .875rem; }
.internet-tariffs.unified-tariffs, .tv-tariffs.unified-tariffs { grid-template-columns: repeat(auto-fit,minmax(min(100%,15rem),1fr)); }
.tariff-toolbar { flex-wrap: wrap; }
.switch-options { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); }
.switch-options label { text-align: center; padding-inline: 14px; }
.tariff-top { flex-wrap: wrap; }
.tariff-specs > div { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); }
.tariff-specs dd { text-align: right; }
.coverage-number { flex-wrap: wrap; }
.phone-strip > .button { flex-shrink: 1; }
.contact-card a { display: inline-flex; align-items: center; min-height: 44px; }
@media (max-width: 800px) {
  .contact-grid { grid-template-columns: minmax(0,1fr); }
  .hero-art figcaption { position: static; margin: 12px 0 0; width: 100%; max-width: none; }
}
@media (max-width: 600px) {
  h1 { font-size: 2.5rem; }
  h2 { font-size: 2rem; }
  h2 br, .contract-heading br { display: none; }
  .actions { grid-template-columns:minmax(0,1fr);max-width:20rem; }
  .actions, .actions .button, .building-switch { width: 100%; }
  .actions .button { font-size: 1rem; }
  .hero-benefits { font-size: .875rem; }
  .tariff-toolbar { grid-template-columns:minmax(0,1fr);align-items:stretch; }
  .internet-tariffs.unified-tariffs, .tv-tariffs.unified-tariffs { grid-template-columns: minmax(0,1fr); }
  .unified-card .tariff-description { min-height: 0; font-size: .9375rem; }
  .tv-extras { grid-template-columns: minmax(0,1fr); }
  .tv-extras > div:last-child { grid-column: auto; }
  .towns ul { columns: 1; }
  .footer-grid { grid-template-columns: minmax(0,1fr); }
}
