/* Secure-VPN Elementor-first theme rebuild V2. Original Elementor CSS remains primary. */
html.svpn-v2,body.svpn-v2{width:100%;max-width:100%;overflow-x:clip}
body.svpn-v2{margin:0!important;background:#f9fcfd;color:#0c2942;font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif}
body.svpn-v2 *,body.svpn-v2 *:before,body.svpn-v2 *:after{box-sizing:border-box}
body.svpn-v2 .svpn-theme-shell{--sp-ink:#0c2942;--sp-deep:#061b2d;--sp-navy:#082b3d;--sp-mint:#b1f5d0;--sp-green:#0b765c;--sp-border:#dbe9e5;--sp-bg:#f9fcfd;color:#0c2942}
body.svpn-v2 .svpn-v2-skip{position:absolute;left:12px;top:-70px;z-index:99999;background:#b1f5d0;color:#06392f;border-radius:7px;padding:9px 12px;font-weight:800}
body.svpn-v2 .svpn-v2-skip:focus{top:10px}
body.svpn-v2 .svpn-v2-main{display:block;max-width:1160px;margin:0 auto;padding:32px 22px 72px;min-width:0}
body.svpn-v2 .svpn-v2-main :is(img,video,iframe,svg,canvas){max-width:100%}
body.svpn-v2 .svpn-v2-main :is(table,.table-scroll,.table-wrap,.heatmap-scroll){max-width:100%}
body.svpn-v2 .svpn-v2-main table{border-collapse:separate;border-spacing:0;width:100%}
body.svpn-v2 .svpn-v2-main :is(input,select,textarea,button){font:inherit;max-width:100%}
body.svpn-v2 .svpn-v2-main :is(input:not([type=checkbox]):not([type=radio]),select,textarea){min-height:43px;border-radius:11px;border:1px solid #cbded9;color:#0c2942;background:#fff}
body.svpn-v2 .svpn-v2-main :is(button,.btn,[role=button]){border-radius:11px;cursor:pointer}
body.svpn-v2 .svpn-v2-main :is(button,.btn,[role=button]):focus-visible,
body.svpn-v2 :is(a,summary):focus-visible{outline:3px solid #0b765c;outline-offset:3px}
body.svpn-v2 .svpn-v2-main :is(h2,h3,h4){color:#0c2942;letter-spacing:-.025em;line-height:1.23}
body.svpn-v2 .svpn-v2-main :is(p,li){line-height:1.73}
body.svpn-v2 .svpn-v2-main a{color:#096e55;text-underline-offset:3px}
body.svpn-v2 .svpn-v2-main :is(.card,.panel,.section-card,.provider-card,.stat-card,.filters-panel,.filter-panel,.controls-panel){background:#fff;border:1px solid #dae8e2;border-radius:17px;box-shadow:0 8px 28px rgba(7,46,45,.055)}
/* Turn old page furniture into the same rounded, airy content system as Elementor. */
body.svpn-v2 .svpn-v2-content :is(.page-shell,.c4-page,.analytics-page,.provider-page,.comparison-page,.protocol-page,.report-page,.container){max-width:100%;min-width:0}
body.svpn-v2 .svpn-v2-content :is(.c4-landing-hero,.analytics-hero-suite,.page-intro,.section-intro,.filters-panel,.filter-panel,.controls-panel){background:#fff!important;background-image:none!important;color:#0c2942!important;border:1px solid #dbe9e2!important;border-radius:18px!important;box-shadow:0 10px 30px rgba(6,35,38,.055)!important;padding:clamp(18px,2.8vw,32px)!important;margin-bottom:22px}
body.svpn-v2 .svpn-v2-content :is(.c4-landing-hero,.analytics-hero-suite,.page-intro,.section-intro) :is(h2,h3,h4,p,small,strong){color:#0c2942!important}
body.svpn-v2 .svpn-v2-content :is(.sidebar,.heatmap-sidebar,.c4-card,.c4-section,.analytics-panel,.analytics-card,.provider-card,.protocol-card,.report-card){border:1px solid #dbe9e2!important;border-radius:17px!important;background:#fff!important;background-image:none!important;color:#0c2942!important;box-shadow:0 8px 25px rgba(5,46,42,.05)!important}
body.svpn-v2 .svpn-v2-content :is(.filter-group,.c4-field,.control-group,.field-group){min-width:0}
body.svpn-v2 .svpn-v2-content :is(.filter-group,.c4-field,.control-group,.field-group) label{display:block;font-size:12px;font-weight:750;color:#35536a;margin-bottom:6px}
body.svpn-v2 .svpn-v2-content :is(select,input:not([type=checkbox]):not([type=radio]),textarea){width:100%;max-width:100%;background:#fff!important;color:#0c2942!important;border-color:#ccddd6!important;min-height:43px;border-radius:10px}
body.svpn-v2 .svpn-v2-content :is(.heatmap-table-wrap,.c4-results-scroll,.result-table-wrap,.table-responsive){overflow-x:auto;max-width:100%;-webkit-overflow-scrolling:touch}
body.svpn-v2 .svpn-v2-content :is(.kicker,.c4-kicker,.eyebrow,.section-kicker,.suite-kicker){font-size:11px!important;font-weight:800!important;letter-spacing:.12em;color:#0b765c!important;text-transform:uppercase}
body.svpn-v2 .svpn-v2-content :is(.c4-pill,.tag,.chip,.source-chip){border-radius:50px!important}
body.svpn-v2 .svpn-v2-content :is(button,.btn,.button){transition:filter .16s ease,border-color .16s ease}
body.svpn-v2 .svpn-v2-content :is(button,.btn,.button):hover{filter:brightness(.97)}
body.svpn-v2 .svpn-v2-content :is(.muted,.hint,.helper-text,.text-muted){color:#5c7580}
/* Preserve the data-specific heatmap palette, cell backgrounds, legends and chart colours. */
body.svpn-v2 [class*=heatmap-cell],body.svpn-v2 [class*=hm-cell],body.svpn-v2 [data-retention],
body.svpn-v2 [data-heatmap]{background-color:revert-layer}
body.svpn-v2 .svpn-v2-intro{color:#f0fff8;background:radial-gradient(circle at 85% 15%,rgba(25,151,110,.35),transparent 45%),linear-gradient(112deg,#061b2d,#0a3440 62%,#08624d);border-radius:22px;padding:clamp(26px,5vw,60px);margin:0 0 32px;overflow:hidden;position:relative}
body.svpn-v2 .svpn-v2-intro-inner{max-width:790px;position:relative;z-index:1}
body.svpn-v2 .svpn-v2-eyebrow{font-size:11px!important;text-transform:uppercase;letter-spacing:.16em;font-weight:800!important;color:#0b765c;margin:0 0 16px}
body.svpn-v2 .svpn-v2-intro .svpn-v2-eyebrow{color:#a1efc7}
body.svpn-v2 .svpn-v2-heading{font-size:clamp(29px,4.4vw,52px)!important;line-height:1.09!important;letter-spacing:-.04em;color:#fff!important;margin:0 0 20px;font-weight:850;max-width:770px}
body.svpn-v2 .svpn-v2-lede{font-size:clamp(16px,1.7vw,19px);line-height:1.67;color:#e0f4ed;max-width:710px;margin:0 0 25px}
body.svpn-v2 .svpn-v2-points{display:flex;flex-wrap:wrap;gap:8px}
body.svpn-v2 .svpn-v2-points span{font-size:12px;font-weight:700;color:#dcfff0;border:1px solid rgba(170,238,207,.38);border-radius:100px;padding:7px 12px;background:rgba(255,255,255,.06)}
body.svpn-v2 .svpn-v2-content{min-width:0;isolation:isolate}
body.svpn-v2 .svpn-v2-content > :is(main,article,.container,.wrapper){max-width:100%}
body.svpn-v2 .svpn-v2-evidence{margin-top:36px;padding:28px 32px;background:#edf9f3;border:1px solid #c7e7d5;border-radius:19px;max-width:1160px}
body.svpn-v2 .svpn-v2-evidence h2{font-size:clamp(22px,2.8vw,30px);margin:0 0 10px}
body.svpn-v2 .svpn-v2-evidence p{color:#335264;margin:0 0 12px}
body.svpn-v2 .svpn-v2-evidence p:last-child{margin-bottom:0}
body.svpn-v2 .svpn-v2-main :is(.grid,.cards,.metrics){max-width:100%}
/* Body-level old utilities may define a fixed dark backdrop; this canvas is authoritative. */
body.svpn-v2 .svpn-v2-content{color:#0c2942}
body.svpn-v2 .svpn-v2-retained-legacy-chrome{display:none!important;visibility:hidden!important}
/* WP/Elementor tools: align form controls and surface tokens without altering site header. */
.spv-page .svpn-v19-tool{--bg:#f9fcfd;--bg2:#eff9f4;--panel:#fff;--panel2:#f4fbf7;--text:#0c2942;--muted:#506b79;--blue:#0b765c;--cyan:#16a079;--green:#0b765c;--line:#d8e8e1;color:#0c2942}
.spv-page .svpn-v19-tool :is(.r4-history-section,.r4-panel,.r4-controls,.r4-stat,.r4-table-card){border-color:#d9e9e1;border-radius:16px}
.spv-page .svpn-v19-tool :is(input,select){min-height:42px}
.spv-page .svpn-v19-tool :is(.r4-history-table-wrap,.r4-table-scroll){overflow-x:auto;max-width:100%}
/* Mobile navigation uses the existing Elementor toggle, not an invented header. */
.svpn-v2 .spv-header .spv-menu-toggle::before{content:"☰";display:block;color:#0b765c;font-size:21px;line-height:1}
.svpn-v2 .spv-header.spv-nav-open .spv-menu-toggle::before{content:"×";font-size:25px}
@media(max-width:1150px){
 .svpn-v2 .spv-page .spv-header.spv-nav-enhanced.spv-nav-open .spv-header-inner.e-con>.spv-menu.e-con{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:7px!important;width:100%!important;padding:12px!important;border:1px solid #d7ebe3!important;border-radius:14px!important;background:#fff!important;box-shadow:0 12px 28px rgba(5,45,42,.1)!important}
 .svpn-v2 .spv-header .spv-menu-toggle{display:inline-flex!important;visibility:visible!important}
}
/* Existing Elementor header/footer stays as-is; only add menu behaviour on legacy URLs. */
.svpn-v2 .spv-header,.svpn-v2 .spv-footer{width:100%}
@media(max-width:900px){body.svpn-v2 .svpn-v2-main{padding:22px 15px 46px}body.svpn-v2 .svpn-v2-intro{border-radius:16px;padding:30px 21px}body.svpn-v2 .svpn-v2-evidence{padding:21px}body.svpn-v2 .svpn-theme-shell .spv-menu-toggle{display:block!important;visibility:visible!important}}
@media(max-width:640px){body.svpn-v2 .svpn-v2-points{display:grid;grid-template-columns:1fr}body.svpn-v2 .svpn-v2-heading{font-size:31px!important}body.svpn-v2 .svpn-v2-main table{font-size:13px}body.svpn-v2 .svpn-v2-main :is(.table-scroll,.table-wrap,.heatmap-scroll){overflow-x:auto;-webkit-overflow-scrolling:touch}}
@media(prefers-reduced-motion:reduce){body.svpn-v2 *,body.svpn-v2 *::before,body.svpn-v2 *::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
