/* svpn-protocols-heatmap-v21 | scoped, accessible; preserve all metric cell background classes */
/* Protocol page: only designated V21 pages; authentic site header/footer from existing Elementor source. */
body.svpn-v21-protocol{margin:0!important;--p21-ink:#103944;--p21-muted:#476574;--p21-green:#0b7156;--p21-paper:#fff;background:#f6faf8!important;color:var(--p21-ink)!important}
body.svpn-v21-protocol .svpn-v2-main,body.svpn-v21-protocol .svpn-v2-main *{box-sizing:border-box!important}
body.svpn-v21-protocol .svpn-v2-main{width:100%!important;max-width:1220px!important;min-width:0!important;margin:0 auto!important;padding:22px clamp(13px,3vw,28px) 62px!important;background:transparent!important}
body.svpn-v21-protocol .svpn-v2-content{width:100%!important;max-width:100%!important;min-width:0!important;color:#153c45!important;-webkit-text-fill-color:initial}
body.svpn-v21-protocol .svpn-v2-content :is(.seo-growth-page,.protocol-page,.page-shell,.container,main){max-width:100%!important;min-width:0!important;width:100%!important;margin-inline:auto!important}
body.svpn-v21-protocol .svpn-v2-content :is(.seo-growth-hero,.protocol-hero,.page-intro,.protocol-intro){position:relative!important;display:block!important;isolation:isolate!important;overflow:hidden!important;background:linear-gradient(116deg,#082432 0%,#0c4341 55%,#0b7556 100%)!important;background-image:linear-gradient(116deg,#082432 0%,#0c4341 55%,#0b7556 100%)!important;color:#f5fff9!important;-webkit-text-fill-color:#f5fff9!important;border:1px solid #21695a!important;border-radius:22px!important;margin:0 0 21px!important;padding:clamp(24px,4vw,48px)!important;box-shadow:0 10px 28px rgba(5,54,47,.11)!important}
body.svpn-v21-protocol .svpn-v2-content :is(.seo-growth-hero,.protocol-hero,.page-intro,.protocol-intro) :is(h1,h2,h3,p,small,span,strong){color:#f2fff9!important;-webkit-text-fill-color:#f2fff9!important;opacity:1!important;line-height:1.6!important}
body.svpn-v21-protocol .svpn-v2-content :is(.seo-growth-hero,.protocol-hero,.page-intro,.protocol-intro) h1{font-size:clamp(29px,4.4vw,48px)!important;line-height:1.15!important;font-weight:800!important;letter-spacing:-.03em!important;margin:0 0 16px!important;max-width:960px!important}
body.svpn-v21-protocol .svpn-v2-content :is(.seo-growth-hero,.protocol-hero,.page-intro,.protocol-intro) :is(.seo-growth-kicker,.eyebrow,.kicker){color:#b7f4d6!important;-webkit-text-fill-color:#b7f4d6!important;font-size:12px!important;font-weight:800!important;letter-spacing:.1em!important}
body.svpn-v21-protocol .svpn-v2-content :is(.seo-growth-grid,.protocol-stats,.stats-grid){display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px!important;min-width:0!important;margin:0 0 20px!important}
body.svpn-v21-protocol .svpn-v2-content :is(.seo-growth-stat,.protocol-stat,.stat-card){min-width:0!important;padding:clamp(16px,2vw,24px)!important;border:1px solid #d5e7de!important;border-radius:15px!important;background:#fff!important;color:#163e46!important;box-shadow:0 3px 15px rgba(9,61,53,.045)!important}
body.svpn-v21-protocol .svpn-v2-content :is(.seo-growth-stat,.protocol-stat,.stat-card) :is(small,span){color:#4b6771!important;-webkit-text-fill-color:#4b6771!important;line-height:1.55!important}
body.svpn-v21-protocol .svpn-v2-content :is(.seo-growth-stat,.protocol-stat,.stat-card) strong{color:#096249!important;-webkit-text-fill-color:#096249!important;font-size:clamp(21px,2.7vw,34px)!important;line-height:1.25!important;overflow-wrap:anywhere!important}
body.svpn-v21-protocol .svpn-v2-content :is(.seo-growth-section,.protocol-section,.section-card,.card:not(.seo-growth-hero):not(.protocol-hero):not(.page-intro):not(.protocol-intro)){min-width:0!important;max-width:100%!important;background:#fff!important;color:#183c48!important;border:1px solid #d8e7e0!important;border-radius:17px!important;padding:clamp(17px,2.3vw,30px)!important;margin:0 0 18px!important;box-shadow:0 3px 17px rgba(5,51,48,.045)!important}
body.svpn-v21-protocol .svpn-v2-content :is(.seo-growth-section,.protocol-section,.section-card,.card:not(.seo-growth-hero):not(.protocol-hero):not(.page-intro):not(.protocol-intro)) :is(h2,h3){color:#103842!important;-webkit-text-fill-color:#103842!important;line-height:1.28!important;font-weight:800!important}
body.svpn-v21-protocol .svpn-v2-content :is(p,li,td,dd){font-size:clamp(14px,1.1vw,16px)!important;line-height:1.65!important;opacity:1!important}
body.svpn-v21-protocol .svpn-v2-content :is(.seo-growth-table-wrap,.table-wrap,.table-responsive){display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch;border:1px solid #dce9e3!important;border-radius:12px!important}
body.svpn-v21-protocol .svpn-v2-content table{border-collapse:separate!important;border-spacing:0!important;width:100%!important;min-width:610px!important;max-width:none!important;font-size:14px!important;color:#133943!important;background:#fff!important}
body.svpn-v21-protocol .svpn-v2-content table :is(thead,thead tr){background:#0d3441!important}
body.svpn-v21-protocol .svpn-v2-content table th{display:table-cell!important;background:#0d3441!important;color:#fff!important;-webkit-text-fill-color:#fff!important;opacity:1!important;font-size:12px!important;letter-spacing:.035em!important;text-transform:uppercase!important;padding:14px 13px!important;white-space:nowrap!important;text-align:left!important}
body.svpn-v21-protocol .svpn-v2-content table td{display:table-cell!important;color:#163e49!important;-webkit-text-fill-color:#163e49!important;background:#fff!important;padding:15px 12px!important;white-space:normal!important;vertical-align:middle!important;border-bottom:1px solid #e1ece7!important}
body.svpn-v21-protocol .svpn-v2-content table tr:nth-child(even) td{background:#f2f8f5!important}
body.svpn-v21-protocol .svpn-v2-content a{color:#09634c!important;-webkit-text-fill-color:#09634c!important;text-decoration-thickness:1px!important;text-underline-offset:3px!important}
body.svpn-v21-protocol .svpn-v2-content :is(.seo-growth-hero,.protocol-hero,.page-intro,.protocol-intro) a{color:#b8f5d5!important;-webkit-text-fill-color:#b8f5d5!important}
body.svpn-v21-protocol .svpn-v2-content :is(.seo-growth-links,.protocol-links){display:flex!important;flex-wrap:wrap!important;gap:9px!important}
body.svpn-v21-protocol .svpn-v2-content :is(.seo-growth-links,.protocol-links) a{display:inline-flex!important;align-items:center!important;min-height:43px!important;padding:10px 15px!important;background:#e8f6ee!important;border:1px solid #b5dac7!important;border-radius:10px!important;font-weight:700!important}
body.svpn-v21-protocol .svpn-theme-shell .spv-footer .spv-footer-inner{width:100%!important;max-width:1180px!important;min-width:0!important;margin:auto!important;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr)!important;gap:20px!important;align-items:center!important}
body.svpn-v21-protocol .svpn-theme-shell .spv-footer .spv-footer-inner img{width:auto!important;max-width:200px!important;max-height:43px!important;object-fit:contain!important}
body.svpn-v21-protocol .svpn-theme-shell .spv-footer .spv-footer-links{display:flex!important;flex-wrap:wrap!important;justify-content:flex-end!important;gap:9px!important;min-width:0!important}
body.svpn-v21-protocol .svpn-theme-shell .spv-footer .spv-footer-links a{width:auto!important;min-width:105px!important;min-height:40px!important;padding:9px 13px!important}
/* Heatmap content sections only: never alter .hm-cell backgrounds/values, selections or handlers. */
body.heatmap-page.svpn-v21-heatmap #heatmap .auto-best-recommendation{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:14px 20px!important;min-width:0!important;padding:19px 22px!important;background:#eaf7f0!important;border:1px solid #abdcc8!important;border-radius:16px!important;color:#0e453a!important}
body.heatmap-page.svpn-v21-heatmap #heatmap .auto-best-recommendation>div:first-child{min-width:0!important;display:flex!important;flex-direction:column!important;gap:7px!important}
body.heatmap-page.svpn-v21-heatmap #heatmap .auto-best-recommendation strong{font-size:clamp(16px,1.7vw,21px)!important;font-weight:800!important;line-height:1.35!important;color:#0c513e!important;-webkit-text-fill-color:#0c513e!important;opacity:1!important}
body.heatmap-page.svpn-v21-heatmap #heatmap .auto-best-recommendation span:not(.auto-best-badge){font-size:14px!important;line-height:1.65!important;color:#28594f!important;-webkit-text-fill-color:#28594f!important;opacity:1!important;overflow-wrap:anywhere!important}
body.heatmap-page.svpn-v21-heatmap #heatmap .auto-best-recommendation span:not(.auto-best-badge) :is(b,a){color:#075b47!important;-webkit-text-fill-color:#075b47!important;font-weight:750!important}
body.heatmap-page.svpn-v21-heatmap #heatmap .auto-best-badge{display:inline-flex!important;vertical-align:middle!important;align-items:center!important;margin-left:8px!important;padding:5px 11px!important;background:#fff!important;color:#165944!important;-webkit-text-fill-color:#165944!important;border:1px solid #93ceb1!important;border-radius:99px!important;font-size:12px!important;font-weight:700!important;line-height:1.4!important;letter-spacing:0!important}
body.heatmap-page.svpn-v21-heatmap #heatmap .auto-best-score{color:#07583e!important;-webkit-text-fill-color:#07583e!important;font-size:clamp(31px,4.2vw,47px)!important;font-weight:850!important;line-height:1.1!important;white-space:nowrap!important;text-align:right!important}
body.heatmap-page.svpn-v21-heatmap .svpn-v2-evidence{display:block!important;max-width:1180px!important;width:100%!important;margin:22px auto!important;padding:clamp(20px,3vw,32px)!important;text-align:left!important;background:#e9f7f0!important;border:1px solid #b6ddca!important;border-radius:17px!important;color:#143d3d!important}
body.heatmap-page.svpn-v21-heatmap .svpn-v2-evidence>*{display:block!important;max-width:980px!important;width:auto!important;margin-left:0!important;margin-right:0!important;text-align:left!important}
body.heatmap-page.svpn-v21-heatmap .svpn-v2-evidence .svpn-v2-eyebrow{font-size:12px!important;font-weight:800!important;letter-spacing:.09em!important;color:#076750!important;-webkit-text-fill-color:#076750!important;margin-bottom:8px!important}
body.heatmap-page.svpn-v21-heatmap .svpn-v2-evidence h2{font-size:clamp(21px,2.4vw,29px)!important;color:#0d3a42!important;-webkit-text-fill-color:#0d3a42!important;margin:0 0 12px!important;line-height:1.3!important}
body.heatmap-page.svpn-v21-heatmap .svpn-v2-evidence p{font-size:15px!important;line-height:1.72!important;color:#2e5460!important;-webkit-text-fill-color:#2e5460!important;opacity:1!important;margin:0 0 11px!important}
body.heatmap-page.svpn-v21-heatmap .svpn-v2-evidence a{color:#086f54!important;-webkit-text-fill-color:#086f54!important;text-decoration:underline!important}
body.heatmap-page.svpn-v21-heatmap #heatmap .seo-columns{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important;align-items:stretch!important;max-width:100%!important}
body.heatmap-page.svpn-v21-heatmap #heatmap .seo-columns>div{min-width:0!important;margin:0!important;padding:clamp(17px,2vw,24px)!important;background:#fff!important;border:1px solid #dae9e3!important;border-radius:15px!important;box-shadow:0 3px 13px rgba(9,51,51,.045)!important;text-align:left!important}
body.heatmap-page.svpn-v21-heatmap #heatmap .seo-columns>div h3{font-size:clamp(16px,1.5vw,19px)!important;line-height:1.35!important;font-weight:800!important;color:#123d47!important;-webkit-text-fill-color:#123d47!important;opacity:1!important;margin:0 0 10px!important}
body.heatmap-page.svpn-v21-heatmap #heatmap .seo-columns>div p{font-size:14px!important;line-height:1.7!important;color:#385c67!important;-webkit-text-fill-color:#385c67!important;opacity:1!important;margin:0!important}
body.heatmap-page.svpn-v21-heatmap #heatmap .summary-grid>.detail-card{grid-column:1/-1!important;max-width:100%!important;min-width:0!important;width:100%!important}
body.heatmap-page.svpn-v21-heatmap #heatmap .detail-card dl{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important;max-width:100%!important;width:100%!important}
body.heatmap-page.svpn-v21-heatmap #heatmap .detail-card dl>div{min-width:0!important;overflow-wrap:anywhere!important}
body.heatmap-page.svpn-v21-heatmap #heatmap .detail-card dl>div:has(#detail-exit-ip){grid-column:1/-1!important}
body.heatmap-page.svpn-v21-heatmap #heatmap .detail-card dt{font-size:12px!important;color:#46636d!important;-webkit-text-fill-color:#46636d!important;font-weight:750!important}
body.heatmap-page.svpn-v21-heatmap #heatmap .detail-card dd{font-size:14px!important;line-height:1.6!important;color:#123e47!important;-webkit-text-fill-color:#123e47!important;overflow-wrap:anywhere!important}
@media(max-width:900px){body.svpn-v21-protocol .svpn-v2-content :is(.seo-growth-grid,.protocol-stats,.stats-grid){grid-template-columns:repeat(2,minmax(0,1fr))!important}body.heatmap-page.svpn-v21-heatmap #heatmap .seo-columns{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:690px){body.svpn-v21-protocol .svpn-v2-main{padding:13px 12px 42px!important}body.svpn-v21-protocol .svpn-v2-content :is(.seo-growth-section,.protocol-section,.section-card,.card:not(.seo-growth-hero):not(.protocol-hero):not(.page-intro):not(.protocol-intro)){padding:17px 13px!important}body.svpn-v21-protocol .svpn-theme-shell .spv-footer .spv-footer-inner{grid-template-columns:minmax(0,1fr)!important;gap:15px!important}body.svpn-v21-protocol .svpn-theme-shell .spv-footer .spv-footer-links{justify-content:flex-start!important}body.heatmap-page.svpn-v21-heatmap #heatmap .auto-best-recommendation{grid-template-columns:minmax(0,1fr)!important;padding:17px!important}body.heatmap-page.svpn-v21-heatmap #heatmap .auto-best-score{justify-self:start!important;text-align:left!important;font-size:34px!important}body.heatmap-page.svpn-v21-heatmap #heatmap .seo-columns{grid-template-columns:minmax(0,1fr)!important}body.heatmap-page.svpn-v21-heatmap #heatmap .detail-card dl{grid-template-columns:minmax(0,1fr)!important}body.heatmap-page.svpn-v21-heatmap #heatmap .auto-best-badge{margin-top:7px!important}}
