/* Virus Protection V17 — practical, mobile-ready security explorer */
body[data-service="virus-protection"] .vp12-ecosystem.vp17-security-explorer{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(45,76,82,.10)!important;
  background:linear-gradient(145deg,rgba(255,255,253,.98),rgba(239,246,242,.96) 58%,rgba(246,242,249,.94))!important;
  box-shadow:0 26px 70px rgba(29,58,64,.10)!important;
}
body[data-service="virus-protection"] .vp12-ecosystem.vp17-security-explorer:before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(circle at 18% 16%,rgba(74,185,173,.10),transparent 28%),radial-gradient(circle at 82% 22%,rgba(127,109,174,.10),transparent 29%),linear-gradient(120deg,transparent 42%,rgba(255,255,255,.68) 48%,transparent 54%);
}
body[data-service="virus-protection"] .vp12-eco-head,
body[data-service="virus-protection"] .vp12-platform-flow,
body[data-service="virus-protection"] .vp12-layer-map,
body[data-service="virus-protection"] .vp17-practical,
body[data-service="virus-protection"] .vp12-trademark-note{position:relative;z-index:1}
body[data-service="virus-protection"] .vp12-eco-head h3{max-width:760px;font-size:clamp(1.65rem,2.5vw,2.45rem)!important;line-height:1.04!important}
body[data-service="virus-protection"] .vp12-eco-head p{max-width:700px!important;font-size:1rem!important;line-height:1.65!important}

/* Vendor examples remain secondary to the business logic. */
body[data-service="virus-protection"] .vp17-platform-note{position:relative;z-index:1;display:flex;gap:10px;align-items:baseline;justify-content:space-between;margin:18px 0 10px;padding:11px 14px;border-radius:15px;background:rgba(239,246,243,.82);border:1px solid rgba(47,90,88,.09)}
body[data-service="virus-protection"] .vp17-platform-note strong{font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:#28525a}
body[data-service="virus-protection"] .vp17-platform-note span{font-size:.83rem;color:#627579;text-align:right}
body[data-service="virus-protection"] .vp12-platform{background:rgba(255,255,254,.94)!important;border-color:rgba(44,84,86,.10)!important;box-shadow:0 9px 24px rgba(31,61,66,.06)!important}

/* Existing five-layer map: stronger presence and clearer interaction. */
body[data-service="virus-protection"] .vp12-layer-map{
  min-height:600px!important;
  border:1px solid rgba(44,79,82,.10)!important;
  background:radial-gradient(circle at 50% 47%,rgba(128,205,191,.16),transparent 18%),radial-gradient(circle at 50% 47%,transparent 0 23%,rgba(70,133,128,.08) 23.5% 24%,transparent 24.5% 35%,rgba(92,119,153,.07) 35.5% 36%,transparent 36.5%),linear-gradient(145deg,rgba(250,252,250,.96),rgba(238,244,241,.92) 55%,rgba(246,244,248,.92))!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.7),0 20px 52px rgba(25,58,65,.07)!important;
}
body[data-service="virus-protection"] .vp12-map-core{box-shadow:0 18px 44px rgba(34,82,82,.13),0 0 0 12px rgba(255,255,255,.38)!important;background:rgba(255,255,253,.96)!important}
body[data-service="virus-protection"] .vp12-map-core svg{filter:drop-shadow(0 7px 14px rgba(49,145,133,.16))}
body[data-service="virus-protection"] .vp12-layer-node{
  border:1px solid rgba(39,82,82,.10)!important;
  background:rgba(255,255,254,.96)!important;
  box-shadow:0 14px 30px rgba(31,61,67,.08)!important;
  transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease,background .24s ease!important;
}
body[data-service="virus-protection"] .vp12-layer-node:hover{transform:translateY(-3px) scale(1.02)!important;box-shadow:0 20px 38px rgba(31,70,74,.14)!important}
body[data-service="virus-protection"] .vp12-layer-node.is-active{border-color:rgba(40,155,142,.45)!important;background:linear-gradient(145deg,#ffffff,#edf8f4)!important;box-shadow:0 18px 40px rgba(39,147,135,.18),0 0 0 3px rgba(66,182,168,.08)!important}
body[data-service="virus-protection"] .vp12-layer-node.is-recommended:not(.is-active){border-color:rgba(180,145,71,.38)!important;box-shadow:0 16px 34px rgba(150,119,57,.13),0 0 0 2px rgba(213,176,93,.07)!important}
body[data-service="virus-protection"] .vp12-layer-node.is-recommended:after{content:"RELEVANT";position:absolute;right:10px;top:8px;font-size:.52rem;letter-spacing:.12em;font-weight:800;color:#876b2e}
body[data-service="virus-protection"] .vp12-layer-detail{background:linear-gradient(145deg,#244d54,#315e65)!important;box-shadow:0 20px 44px rgba(25,55,62,.18)!important}
body[data-service="virus-protection"] .vp12-layer-detail *{color:#fff!important}

/* Practical explorer */
body[data-service="virus-protection"] .vp17-practical{margin-top:28px;padding:26px;border-radius:26px;border:1px solid rgba(44,82,84,.11);background:linear-gradient(145deg,rgba(255,255,254,.97),rgba(241,247,243,.95));box-shadow:0 22px 58px rgba(25,58,64,.08)}
body[data-service="virus-protection"] .vp17-practical-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:22px;align-items:end}
body[data-service="virus-protection"] .vp17-practical-head h4{margin:4px 0 8px;font-size:clamp(1.45rem,2vw,2rem);color:#173d45}
body[data-service="virus-protection"] .vp17-practical-head p{margin:0;max-width:720px;color:#607478;line-height:1.6}
body[data-service="virus-protection"] .vp17-steps{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
body[data-service="virus-protection"] .vp17-steps span{display:flex;align-items:center;gap:7px;padding:8px 10px;border-radius:999px;background:#eef5f2;color:#466066;font-size:.74rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}
body[data-service="virus-protection"] .vp17-steps b{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#2c6c70;color:#fff;font-size:.7rem}

body[data-service="virus-protection"] .vp17-presets{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0 16px}
body[data-service="virus-protection"] .vp17-presets button{appearance:none;border:1px solid rgba(49,89,90,.13);background:#fff;color:#36555a;border-radius:999px;padding:9px 13px;font:800 .76rem/1 'Exo 2',sans-serif;cursor:pointer;transition:.2s ease}
body[data-service="virus-protection"] .vp17-presets button:hover,body[data-service="virus-protection"] .vp17-presets button.is-active{border-color:rgba(40,143,132,.42);background:#eaf7f3;color:#1f5f60;box-shadow:0 8px 18px rgba(47,133,124,.10)}

body[data-service="virus-protection"] .vp17-workspace{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(310px,.95fr);gap:18px;align-items:stretch}
body[data-service="virus-protection"] .vp17-needs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
body[data-service="virus-protection"] .vp17-need{appearance:none;display:flex;gap:11px;align-items:flex-start;text-align:left;width:100%;min-height:86px;padding:13px;border:1px solid rgba(45,82,83,.11);border-radius:17px;background:#fff;cursor:pointer;box-shadow:0 8px 20px rgba(28,60,65,.04);transition:.2s ease}
body[data-service="virus-protection"] .vp17-need:hover{transform:translateY(-2px);box-shadow:0 14px 26px rgba(30,67,71,.08)}
body[data-service="virus-protection"] .vp17-need i{flex:0 0 23px;width:23px;height:23px;border:2px solid #a7b9b6;border-radius:7px;position:relative;margin-top:1px}
body[data-service="virus-protection"] .vp17-need.is-selected{border-color:rgba(41,151,139,.38);background:linear-gradient(145deg,#fff,#edf8f4);box-shadow:0 12px 28px rgba(45,139,130,.10)}
body[data-service="virus-protection"] .vp17-need.is-selected i{border-color:#2d9a8d;background:#2d9a8d}
body[data-service="virus-protection"] .vp17-need.is-selected i:after{content:"";position:absolute;width:9px;height:5px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg);left:5px;top:5px}
body[data-service="virus-protection"] .vp17-need span{display:flex;flex-direction:column;gap:4px}
body[data-service="virus-protection"] .vp17-need strong{font-size:.9rem;color:#284b51}
body[data-service="virus-protection"] .vp17-need small{font-size:.74rem;line-height:1.35;color:#738285}

body[data-service="virus-protection"] .vp17-priority{padding:18px;border-radius:20px;background:linear-gradient(150deg,#1f454d,#315d62);color:#fff;box-shadow:0 18px 40px rgba(25,58,64,.17)}
body[data-service="virus-protection"] .vp17-priority-top{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}
body[data-service="virus-protection"] .vp17-priority-top>div:first-child{display:flex;flex-direction:column;gap:5px}
body[data-service="virus-protection"] .vp17-priority-top small,body[data-service="virus-protection"] .vp17-focus small{color:#d4b76d;font-size:.65rem;letter-spacing:.12em;font-weight:900}
body[data-service="virus-protection"] .vp17-priority-top strong{color:#fff;font-size:1.06rem;line-height:1.25}
body[data-service="virus-protection"] .vp17-priority>p{color:#dce7e7!important;line-height:1.55;margin:14px 0}
body[data-service="virus-protection"] .vp17-meter{--coverage:0%;position:relative;width:74px;height:74px;flex:0 0 74px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#69c6b8 var(--coverage),rgba(255,255,255,.16) 0);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}
body[data-service="virus-protection"] .vp17-meter:before{content:"";position:absolute;inset:7px;border-radius:50%;background:#294f56}
body[data-service="virus-protection"] .vp17-meter b{position:relative;z-index:1;color:#fff;font-size:.86rem}
body[data-service="virus-protection"] .vp17-priority-chips{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 14px}
body[data-service="virus-protection"] .vp17-priority-chips button{appearance:none;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.08);color:#eaf3f2;border-radius:999px;padding:8px 10px;font:800 .7rem/1 'Exo 2',sans-serif;cursor:pointer}
body[data-service="virus-protection"] .vp17-priority-chips button.is-primary{border-color:rgba(215,185,104,.46);background:rgba(214,180,92,.14);color:#f5dfaa}
body[data-service="virus-protection"] .vp17-focus{padding:12px 13px;border-radius:14px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.08)}
body[data-service="virus-protection"] .vp17-focus p{margin:5px 0 0;color:#e7efef!important;font-size:.82rem;line-height:1.5}
body[data-service="virus-protection"] .vp17-focus strong{color:#fff!important}

body[data-service="virus-protection"] .vp17-layer-guide{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin-top:18px}
body[data-service="virus-protection"] .vp17-layer-card{appearance:none;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:8px;text-align:left;padding:13px;border-radius:16px;border:1px solid rgba(45,82,83,.10);background:#fff;cursor:pointer;transition:.2s ease}
body[data-service="virus-protection"] .vp17-layer-card:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(30,65,70,.08)}
body[data-service="virus-protection"] .vp17-layer-card svg{width:30px;height:30px;fill:none;stroke:#386c70;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
body[data-service="virus-protection"] .vp17-layer-card span{display:flex;flex-direction:column;gap:2px;min-width:0}
body[data-service="virus-protection"] .vp17-layer-card small{font-size:.58rem;letter-spacing:.09em;text-transform:uppercase;color:#8b9a9c}
body[data-service="virus-protection"] .vp17-layer-card strong{font-size:.86rem;color:#2c5055}
body[data-service="virus-protection"] .vp17-layer-card em{font-style:normal;font-size:.68rem;line-height:1.35;color:#728284}
body[data-service="virus-protection"] .vp17-layer-card>b{margin-top:auto;font-size:.66rem;color:#38847e}
body[data-service="virus-protection"] .vp17-layer-card.is-recommended{border-color:rgba(178,143,68,.34);background:#fffdf7}
body[data-service="virus-protection"] .vp17-layer-card.is-active{border-color:rgba(41,151,139,.40);background:#edf8f4;box-shadow:0 10px 28px rgba(44,144,134,.10)}

body[data-service="virus-protection"] .vp17-detail{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(220px,.42fr);gap:17px;align-items:start;margin-top:12px;padding:18px;border-radius:19px;background:linear-gradient(145deg,#f8fbf9,#eef5f2);border:1px solid rgba(45,82,83,.10)}
body[data-service="virus-protection"] .vp17-detail-icon{width:58px;height:58px;display:grid;place-items:center;border-radius:18px;background:#fff;box-shadow:0 10px 22px rgba(31,65,69,.07)}
body[data-service="virus-protection"] .vp17-detail-icon svg{width:34px;height:34px;fill:none;stroke:#357972;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
body[data-service="virus-protection"] .vp17-detail-main{display:flex;flex-direction:column;gap:4px}
body[data-service="virus-protection"] .vp17-detail-main>small,body[data-service="virus-protection"] .vp17-signals>small{font-size:.62rem;letter-spacing:.12em;font-weight:900;color:#8b6e2e}
body[data-service="virus-protection"] .vp17-detail-main h4{margin:0;color:#244b51;font-size:1.02rem}
body[data-service="virus-protection"] .vp17-detail-main p{margin:3px 0 6px;color:#627579!important;font-size:.82rem;line-height:1.5}
body[data-service="virus-protection"] .vp17-detail-main>strong{font-size:.72rem;color:#2e565a!important}
body[data-service="virus-protection"] .vp17-detail-main>span{font-size:.78rem;color:#64777b}
body[data-service="virus-protection"] .vp17-signals{display:flex;flex-wrap:wrap;gap:6px;align-content:flex-start}
body[data-service="virus-protection"] .vp17-signals>small{width:100%;margin-bottom:2px}
body[data-service="virus-protection"] .vp17-signals span{padding:6px 8px;border-radius:999px;background:#fff;border:1px solid rgba(45,82,83,.09);font-size:.67rem;color:#536a6e}

body[data-service="virus-protection"] .vp17-actions{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;margin-top:15px;padding-top:15px;border-top:1px solid rgba(45,82,83,.09)}
body[data-service="virus-protection"] .vp17-actions>div{display:flex;flex-direction:column;gap:3px}
body[data-service="virus-protection"] .vp17-actions>div strong{font-size:.9rem;color:#2c5055}
body[data-service="virus-protection"] .vp17-actions>div span{font-size:.76rem;color:#718083}
body[data-service="virus-protection"] .vp17-actions .btn{white-space:nowrap}
body[data-service="virus-protection"] .vp17-actions button:disabled{opacity:.48;cursor:not-allowed}

@media(max-width:1050px){
  body[data-service="virus-protection"] .vp17-layer-guide{grid-template-columns:repeat(3,minmax(0,1fr))}
  body[data-service="virus-protection"] .vp17-detail{grid-template-columns:auto minmax(0,1fr)}
  body[data-service="virus-protection"] .vp17-signals{grid-column:1/-1;padding-left:75px}
}

@media(max-width:900px){
  body[data-service="virus-protection"] .vp12-layer-map{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-height:0!important;padding:18px!important}
  body[data-service="virus-protection"] .vp12-map-lines{display:none!important}
  body[data-service="virus-protection"] .vp12-map-core{position:relative!important;inset:auto!important;transform:none!important;grid-column:1/-1;justify-self:center;margin:4px auto 12px}
  body[data-service="virus-protection"] .vp12-layer-node{position:relative!important;inset:auto!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;transform:none!important;width:100%!important;min-height:104px!important}
  body[data-service="virus-protection"] .vp12-layer-node:hover{transform:translateY(-2px)!important}
  body[data-service="virus-protection"] .vp12-layer-node.n5{grid-column:1/-1}
  body[data-service="virus-protection"] .vp12-layer-detail{position:relative!important;inset:auto!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;transform:none!important;grid-column:1/-1;width:100%!important;max-width:none!important;margin-top:4px}
  body[data-service="virus-protection"] .vp17-workspace{grid-template-columns:1fr}
  body[data-service="virus-protection"] .vp17-practical-head{grid-template-columns:1fr}
  body[data-service="virus-protection"] .vp17-steps{justify-content:flex-start}
  body[data-service="virus-protection"] .vp17-actions{grid-template-columns:1fr 1fr}
  body[data-service="virus-protection"] .vp17-actions>div{grid-column:1/-1}
}

@media(max-width:650px){
  body[data-service="virus-protection"] .vp17-platform-note{display:block}
  body[data-service="virus-protection"] .vp17-platform-note span{display:block;margin-top:4px;text-align:left;line-height:1.4}
  body[data-service="virus-protection"] .vp17-practical{padding:17px;border-radius:20px}
  body[data-service="virus-protection"] .vp17-steps{display:grid;grid-template-columns:repeat(3,1fr);width:100%}
  body[data-service="virus-protection"] .vp17-steps span{justify-content:center;padding:7px;font-size:.62rem}
  body[data-service="virus-protection"] .vp17-needs{grid-template-columns:1fr}
  body[data-service="virus-protection"] .vp17-layer-guide{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px;margin-right:-17px;padding-right:17px}
  body[data-service="virus-protection"] .vp17-layer-card{flex:0 0 70%;scroll-snap-align:start;min-height:158px}
  body[data-service="virus-protection"] .vp17-detail{grid-template-columns:auto 1fr;padding:14px}
  body[data-service="virus-protection"] .vp17-signals{padding-left:0;grid-column:1/-1}
  body[data-service="virus-protection"] .vp17-actions{grid-template-columns:1fr}
  body[data-service="virus-protection"] .vp17-actions .btn{width:100%;text-align:center;justify-content:center}
  body[data-service="virus-protection"] .vp12-layer-map{grid-template-columns:1fr;padding:14px!important}
  body[data-service="virus-protection"] .vp12-map-core,body[data-service="virus-protection"] .vp12-layer-node.n5,body[data-service="virus-protection"] .vp12-layer-detail{grid-column:1}
}

@media(prefers-reduced-motion:reduce){
  body[data-service="virus-protection"] .vp12-layer-node,body[data-service="virus-protection"] .vp17-need,body[data-service="virus-protection"] .vp17-layer-card{transition:none!important}
}
