/* Product system: six functional paths into the full line card. */
.product-explorer{background:#e7eff2;padding-block:96px 76px}
.product-explorer .section-heading>p{max-width:340px}
.explorer-shell{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(330px,.82fr);min-height:470px;box-shadow:0 26px 55px rgba(12,41,58,.14)}
.explorer-map{position:relative;min-height:470px;overflow:hidden;isolation:isolate;color:#e9f7fa;background:radial-gradient(circle at 50% 50%,#285870 0,#153c53 27%,#102c41 63%,#0c2437 100%)}
.explorer-map:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(157,218,233,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(157,218,233,.055) 1px,transparent 1px);background-size:34px 34px;pointer-events:none}
.explorer-map__topline,.explorer-map__foot{position:absolute;z-index:3;left:27px;right:27px;font-size:10px;font-weight:850;letter-spacing:.13em;color:#a9d1dd;pointer-events:none}
.explorer-map__topline{top:18px;display:flex;justify-content:space-between;gap:12px}
.explorer-map__topline span:last-child{color:#7eaaba;text-align:right}
.explorer-map__foot{bottom:17px;display:flex;justify-content:space-between;border-top:1px solid rgba(164,217,232,.23);padding-top:12px}
.explorer-map__foot span{font-size:16px;line-height:10px;color:#b7ecf5}
.explorer-traces{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.explorer-traces path{fill:none;stroke:#5b94aa;stroke-width:1.5;stroke-dasharray:3 7;opacity:.55;transition:stroke .35s,stroke-width .35s,opacity .35s}
.explorer-traces path.is-active{stroke:#b5eef7;stroke-width:2.8;stroke-dasharray:6 8;opacity:1;filter:drop-shadow(0 0 5px #79d4e8);animation:explorer-flow 10s linear infinite}
.explorer-hub{position:absolute;z-index:1;left:50%;top:50%;width:120px;height:120px;transform:translate(-50%,-50%);display:grid;place-items:center;text-align:center;border:1px solid #b0e5ee;border-radius:50%;background:#103247;box-shadow:0 0 0 12px rgba(133,215,233,.06),0 0 34px rgba(104,218,240,.3);pointer-events:none}
.explorer-hub:before{content:"";position:absolute;inset:-9px;border:1px solid rgba(160,231,244,.28);border-radius:50%;animation:explorer-breathe 5s ease-in-out infinite}
.explorer-hub span{font-size:12px;line-height:1.35;font-weight:850;letter-spacing:.15em;color:#d9f7fc}
.explorer-node{position:absolute;z-index:2;transform:translate(-50%,-50%);width:158px;min-height:76px;display:flex;align-items:center;gap:12px;text-align:left;padding:13px 14px;border:1px solid #6897a9;border-radius:3px;background:#14394d;color:#e7f5f8;box-shadow:0 8px 18px rgba(2,14,25,.18);transition:background .28s,border-color .28s,box-shadow .28s,transform .28s}
.explorer-node:hover{transform:translate(-50%,-50%) translateY(-3px);border-color:#c6edf4;background:#24546b}
.explorer-node.is-active,.explorer-node.is-active:hover{background:#d8f5fa;color:#10364a;border-color:#fff;box-shadow:0 0 0 4px rgba(144,224,239,.16),0 15px 32px rgba(4,23,35,.28)}
.explorer-node svg{width:25px;height:25px;flex:none;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;color:#9de4f2}
.explorer-node.is-active svg{color:#16788f}
.explorer-node span{display:grid;gap:3px;min-width:0}
.explorer-node small{font-size:9px;line-height:1.2;letter-spacing:.1em;font-weight:800;color:#93bcca;white-space:nowrap}
.explorer-node.is-active small{color:#427987}
.explorer-node strong{font-size:18px;line-height:1.1;letter-spacing:-.025em}
.explorer-node--sense{left:15%;top:26%}.explorer-node--connect{left:50%;top:17%}.explorer-node--compute{left:85%;top:26%}
.explorer-node--store{left:15%;top:74%}.explorer-node--power{left:50%;top:83%}.explorer-node--interface{left:85%;top:74%}
.explorer-detail{min-width:0;display:flex;flex-direction:column;padding:clamp(34px,4vw,61px);background:#fff;border:1px solid #ccdde4;border-left:0}
.explorer-detail__eyebrow{font-size:11px;letter-spacing:.15em;font-weight:850;color:#208096;margin-bottom:45px}
.explorer-detail h3{font-size:clamp(2rem,3vw,3.35rem);font-weight:650;line-height:1.07;max-width:420px;margin:0 0 22px}
.explorer-detail__copy{font-size:16px;line-height:1.65;color:#526879;margin:0 0 22px;max-width:420px}
.explorer-detail__links{margin-top:auto;border-top:1px solid #cedde3}
.explorer-detail__links a{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:12px 0;border-bottom:1px solid #cedde3;font-size:13px;font-weight:750;color:#1b5065;line-height:1.35;transition:color .2s,padding-left .2s}
.explorer-detail__links a:hover,.explorer-detail__links a:focus-visible{color:#0789a2;padding-left:5px}
.explorer-detail__links span{font-size:18px;line-height:1;flex:none}
.explorer-detail__count{margin-top:22px;font-size:10px;letter-spacing:.13em;font-weight:850;color:#78909d}
.explorer-all{display:inline-flex;align-items:center;gap:17px;margin-top:28px;padding-bottom:6px;border-bottom:1px solid #215a6d;color:#215a6d;font-size:14px;font-weight:800}
.explorer-all:hover{color:#0a8da8;border-color:currentColor}
.explorer-all span{font-size:20px;line-height:1}
.products-section{scroll-margin-top:86px}
.product-index-heading{margin-bottom:32px}
.product-index-heading .eyebrow{margin-bottom:12px}
.product-index-heading h2{font-size:clamp(2.3rem,4vw,4rem);margin-bottom:12px}
.product-index-heading>p:last-child{color:#526879;font-size:16px;margin:0}
@keyframes explorer-flow{to{stroke-dashoffset:-140}}
@keyframes explorer-breathe{50%{opacity:.45;transform:scale(1.09)}}
@media(max-width:1000px){
  .explorer-shell{grid-template-columns:1fr}
  .explorer-detail{border-left:1px solid #ccdde4;border-top:0;min-height:355px}
  .explorer-detail__eyebrow{margin-bottom:22px}
  .explorer-detail__links{margin-top:8px}
}
@media(max-width:760px){
  .product-explorer{padding-block:70px 62px}
  .explorer-map{min-height:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:54px 18px 45px}
  .explorer-map__topline{top:16px;left:18px;right:18px}
  .explorer-map__foot{left:18px;right:18px;bottom:13px}
  .explorer-traces,.explorer-hub{display:none}
  .explorer-node,.explorer-node:hover,.explorer-node.is-active:hover{position:static;width:auto;min-width:0;min-height:75px;transform:none;padding:11px;gap:9px;box-shadow:none}
  .explorer-node svg{width:22px;height:22px}
  .explorer-node strong{font-size:16px}
  .explorer-detail{padding:32px 26px;min-height:0}
  .explorer-detail h3{font-size:clamp(2rem,7vw,3rem)}
}
@media(max-width:400px){.explorer-node svg{display:none}.explorer-node small{font-size:8px}.explorer-node strong{font-size:15px}}
@media(prefers-reduced-motion:reduce){
  .explorer-traces path.is-active,.explorer-hub:before{animation:none}
  .explorer-node,.explorer-traces path,.explorer-detail__links a{transition:none}
}
