/* SanVic precision modules: local Archivo/Plex, steel, corporate blue and deep navy. */
.svp-module{--svp-night:#0e1729;--svp-steel:#a2c7e3;--svp-white:#f4f7f9;--svp-blue:#1773ba;--svp-line:#466277;box-sizing:border-box;font-family:"IBM Plex Sans",sans-serif;color:var(--svp-white);background:var(--svp-night);max-width:100%;text-align:left}
.svp-module *{box-sizing:border-box;min-width:0}.svp-module [hidden]{display:none!important}.svp-module h3,.svp-module p,.svp-module figure{margin:0}.svp-module h3{font-family:Archivo,sans-serif;color:var(--svp-white);font-weight:650;letter-spacing:-.035em;line-height:1.09;text-wrap:balance}.svp-module p{font-size:18px;line-height:1.6;color:#d8e0e7}.svp-module a{color:var(--svp-white)}.svp-module a:focus-visible{outline:3px solid #fff;outline-offset:5px}.svp-module .svp-kicker{font-size:12px;line-height:1.4;font-family:"IBM Plex Mono",monospace;text-transform:uppercase;letter-spacing:.09em;color:var(--svp-steel)}.svp-module .svp-index{font-family:"IBM Plex Mono",monospace;font-size:12px;line-height:1.2;letter-spacing:.04em;color:var(--svp-steel)}.svp-text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-height:48px;width:fit-content;font-weight:600;text-decoration:none;border-bottom:1px solid var(--svp-steel);font-size:17px;transition:color .2s,border-color .2s}.svp-text-link:hover{color:var(--svp-steel);border-color:#fff}.svp-text-link>span{font-size:26px;font-weight:400}.svp-sr-only{position:absolute!important;width:1px;height:1px;padding:0!important;margin:-1px!important;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.svp-explorer{display:grid;grid-template-columns:minmax(260px,.72fr) minmax(0,1.65fr);gap:0;border:1px solid var(--svp-line)}.svp-family-choices{padding:24px;align-self:start;position:sticky;top:120px}.svp-family-choice{display:grid;grid-template-columns:28px 1fr 20px;gap:14px;align-items:center;padding:17px 12px;min-height:62px;border-top:1px solid var(--svp-line);text-decoration:none;font-size:17px;line-height:1.3;cursor:pointer;transition:background-color .2s,color .2s}.svp-family-choice:last-child{border-bottom:1px solid var(--svp-line)}.svp-family-choice:hover{background:#1a2a49}.svp-family-choice.is-active{background:var(--svp-blue);color:#fff;border-top-color:var(--svp-blue)}.svp-family-choice.is-active .svp-index{color:#fff}.svp-choice-arrow{font-size:24px}.svp-family-panel{border-left:1px solid var(--svp-line);background:#101c2e;scroll-margin-top:130px}.svp-family-visual{position:relative;aspect-ratio:1.7;overflow:hidden;background:#0a1423}.svp-family-visual img{width:100%;height:100%;object-fit:contain;display:block}.svp-family-visual .svp-family-photo{object-fit:cover}.svp-family-stamp{position:absolute;right:24px;top:24px;padding:6px 10px;font:12px/1.4 "IBM Plex Mono",monospace;letter-spacing:.06em;color:#fff;background:#0e1729;border:1px solid var(--svp-line)}.svp-family-copy{padding:32px 42px 36px;display:grid;gap:18px;border-top:1px solid var(--svp-line)}.svp-module .svp-family-copy h3{font-size:clamp(34px,3.5vw,54px)}.svp-family-copy>p:not(.svp-kicker){max-width:52ch}.svp-family-panel+.svp-family-panel{border-top:1px solid var(--svp-line)}
.svp-system{border:1px solid var(--svp-line);padding:38px;display:grid;grid-template-columns:minmax(0,1.75fr) minmax(280px,1fr);gap:44px}.svp-system-drawing{align-self:center}.svp-system-drawing>svg{display:block;width:100%;height:auto;margin:26px 0 10px;overflow:visible}.svp-module .svp-diagram-caption{font-size:14px;color:var(--svp-steel);max-width:65ch}.svp-system-choices{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:32px}.svp-system-choice{display:flex;gap:12px;align-items:center;text-decoration:none;border:1px solid var(--svp-line);padding:14px;min-height:52px;font-size:15px;line-height:1.3;cursor:pointer;transition:background-color .2s,border-color .2s}.svp-system-choice:hover{border-color:#fff}.svp-system-choice.is-active{background:#1773ba;border-color:#1773ba}.svp-system-choice.is-active .svp-index{color:#fff}.svp-system-note{display:grid;gap:18px;scroll-margin-top:130px}.svp-system-note+.svp-system-note{margin-top:32px;padding-top:32px;border-top:1px solid var(--svp-line)}.svp-module .svp-system-note h3{font-size:clamp(27px,2.4vw,36px)}.svp-system.is-enhanced .svp-system-note{margin:0;padding:0;border:0}.svp-system-piece{transition:opacity .25s}.svp-system.is-enhanced .svp-system-piece{opacity:.58}.svp-system.is-enhanced .svp-system-piece.is-active{opacity:1}
.svp-coverage{padding:40px;display:grid;grid-template-columns:minmax(0,1.75fr) minmax(280px,1fr);gap:48px;align-items:center}.svp-coverage-figure svg{display:block;width:100%;height:auto}.svp-coverage-figure figcaption{display:flex;flex-wrap:wrap;gap:12px 24px;color:var(--svp-steel);font-size:13px;line-height:1.5;margin-top:4px}.svp-map-legend{display:inline-flex;align-items:center;gap:8px}.svp-map-legend i{display:inline-block;width:12px;height:12px;background:#1773ba;border:1px solid #a2c7e3}.svp-coverage-copy{display:grid;gap:22px}.svp-module .svp-coverage-copy h3{font-size:clamp(36px,3.6vw,54px)}.svp-sedes{margin:0;display:grid;gap:16px;border-top:1px solid var(--svp-line);padding-top:20px}.svp-sedes>div{display:grid;grid-template-columns:120px 1fr;gap:12px}.svp-sedes dt{font-size:12px;font-family:"IBM Plex Mono",monospace;line-height:1.7;color:var(--svp-steel)}.svp-sedes dd{font-size:17px;margin:0;color:#fff;line-height:1.5}.svp-module .svp-coverage-label{font-size:14px;color:var(--svp-steel);margin-bottom:-10px}.svp-coverage-states{display:flex;gap:8px;flex-wrap:wrap;list-style:none;padding:0!important;margin:0}.svp-coverage-states li{padding:7px 11px;border:1px solid var(--svp-line);font-size:14px;color:#fff}.svp-module .svp-map-source{font-size:12px;line-height:1.6;color:var(--svp-steel)}.svp-map-source a{color:var(--svp-steel);text-underline-offset:3px}
@media(min-width:1000px){.svp-explorer.is-enhanced .svp-family-panel{min-height:100%}.svp-explorer.is-enhanced .svp-family-visual{aspect-ratio:auto;height:408px}.svp-explorer.is-enhanced .svp-family-copy{min-height:280px}}
@media(max-width:1100px){.svp-system{padding:28px;gap:28px;grid-template-columns:minmax(0,1.3fr) minmax(250px,1fr)}.svp-coverage{padding:28px;gap:28px;grid-template-columns:minmax(0,1.25fr) minmax(270px,1fr)}.svp-family-choices{padding:16px}.svp-family-choice{font-size:16px;gap:8px;padding:16px 8px}.svp-family-copy{padding:28px}}
@media(max-width:800px){.svp-explorer{grid-template-columns:1fr}.svp-family-choices{position:static;display:grid;grid-template-columns:1fr 1fr;gap:0 14px;padding:20px}.svp-family-choice{font-size:15px;grid-template-columns:20px 1fr 16px;min-height:58px}.svp-family-choice:last-child{border-bottom:0}.svp-family-panel{border-left:0;border-top:1px solid var(--svp-line)}.svp-family-visual{aspect-ratio:1.5}.svp-family-copy{padding:28px;gap:15px}.svp-module .svp-family-copy h3{font-size:36px}.svp-system,.svp-coverage{grid-template-columns:1fr;padding:28px;gap:32px}.svp-system-content{border-top:1px solid var(--svp-line);padding-top:28px}.svp-system-drawing>svg{margin-top:10px}.svp-module .svp-system-note h3{font-size:32px}.svp-coverage-figure{order:1}.svp-coverage-copy{order:0}.svp-module .svp-coverage-copy h3{font-size:42px}.svp-coverage-figure figcaption{font-size:12px}}
@media(max-width:440px){.svp-module p{font-size:16px}.svp-family-choices{padding:12px;gap:0 8px}.svp-family-choice{grid-template-columns:1fr 15px;font-size:14px;padding:13px 8px;min-height:61px}.svp-family-choice .svp-index{display:none}.svp-family-copy{padding:24px 20px}.svp-module .svp-family-copy h3{font-size:32px}.svp-family-stamp{top:12px;right:12px}.svp-system,.svp-coverage{padding:24px 18px}.svp-system-choices{gap:7px;margin-bottom:24px}.svp-system-choice{padding:11px 8px;font-size:14px;gap:8px}.svp-system-drawing>svg{width:calc(100% + 16px);max-width:none;margin-left:-8px}.svp-module .svp-system-note h3{font-size:29px}.svp-module .svp-coverage-copy h3{font-size:36px}.svp-sedes>div{grid-template-columns:105px 1fr}.svp-sedes dd{font-size:16px}}
@media(prefers-reduced-motion:reduce){.svp-module *{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
/* Keep graphic labels readable after the deliberate single-column mobile layout. */
@media(max-width:600px){.svp-system-drawing svg text{font-size:30px}.svp-coverage-figure .svp-map-city text{font-size:30px;stroke:#0e1729;stroke-width:6px;paint-order:stroke fill}}
@media(max-width:800px){.svp-coverage{gap:22px}.svp-coverage-copy{display:contents}.svp-coverage-copy>*{order:3}.svp-coverage-copy>.svp-kicker{order:0}.svp-coverage-copy>h3{order:1}.svp-coverage-figure{order:2}.svp-coverage-figure figcaption{margin-top:12px}}
