/* Interactive product explorer: hover zoom + feature callouts */
.product-stage.interactive-product-stage{
  cursor:zoom-in;
  isolation:isolate;
}
.product-stage.interactive-product-stage .product-stage-bg{
  transition:transform .8s cubic-bezier(.2,.7,.2,1),filter .6s ease,opacity .6s ease;
}
.product-stage.interactive-product-stage .product-core-image{
  transition:transform .72s cubic-bezier(.16,1,.3,1),filter .55s ease;
  transform-origin:50% 56%;
  will-change:transform;
}
.product-stage.interactive-product-stage:hover .product-stage-bg,
.product-stage.interactive-product-stage:focus-within .product-stage-bg,
.product-stage.interactive-product-stage.is-exploring .product-stage-bg{
  transform:scale(1.045);
  filter:saturate(1.02) brightness(.72);
}
.product-stage.interactive-product-stage:hover .product-core-image,
.product-stage.interactive-product-stage:focus-within .product-core-image,
.product-stage.interactive-product-stage.is-exploring .product-core-image{
  transform:translateX(-50%) translateY(-1.8%) scale(var(--product-hover-scale,1.15));
  filter:drop-shadow(0 42px 42px rgba(0,0,0,.92)) drop-shadow(0 0 34px rgba(243,179,36,.22));
}
.product-explorer-hint{
  position:absolute;z-index:9;right:24px;top:24px;display:flex;align-items:center;gap:9px;
  border:1px solid rgba(255,255,255,.15);border-radius:999px;background:rgba(0,0,0,.56);
  padding:10px 13px;color:#dfe5db;font:900 9px/1 'Courier New',monospace;letter-spacing:.13em;
  text-transform:uppercase;backdrop-filter:blur(12px);box-shadow:0 14px 36px rgba(0,0,0,.28);
  pointer-events:none;
}
.product-explorer-hint::before{
  content:'◎';color:var(--acid);font-size:13px;text-shadow:0 0 14px rgba(243,179,36,.65);
}
.product-explorer-hint .touch-copy{display:none}
.product-hotspot{
  --hotspot-x:50%;--hotspot-y:50%;
  position:absolute;z-index:10;left:var(--hotspot-x);top:var(--hotspot-y);display:flex;align-items:center;
  min-width:30px;min-height:30px;padding:0;border:0;background:transparent;color:#fff;cursor:pointer;
  opacity:0;transform:translate(-50%,-50%) scale(.72);transition:opacity .28s ease,transform .42s cubic-bezier(.16,1,.3,1);
  font:inherit;text-align:left;
}
.product-stage.interactive-product-stage:hover .product-hotspot,
.product-stage.interactive-product-stage:focus-within .product-hotspot,
.product-stage.interactive-product-stage.is-exploring .product-hotspot{
  opacity:1;transform:translate(-50%,-50%) scale(1);
}
.product-hotspot:nth-of-type(2){transition-delay:.04s}.product-hotspot:nth-of-type(3){transition-delay:.08s}.product-hotspot:nth-of-type(4){transition-delay:.12s}
.product-hotspot-dot{
  position:relative;z-index:3;display:grid;place-items:center;width:30px;height:30px;flex:0 0 30px;border-radius:50%;
  border:1px solid rgba(255,255,255,.72);background:var(--acid);color:#050704;font:1000 15px/1 Inter,Arial,sans-serif;
  box-shadow:0 0 0 7px rgba(243,179,36,.12),0 0 24px rgba(243,179,36,.72),0 8px 24px rgba(0,0,0,.5);
  transition:transform .25s ease,box-shadow .25s ease,background .25s ease;
}
.product-hotspot-dot::after{
  content:'';position:absolute;inset:-10px;border:1px solid rgba(243,179,36,.45);border-radius:50%;
  animation:productHotspotPulse 2.2s ease-out infinite;
}
@keyframes productHotspotPulse{0%{transform:scale(.62);opacity:.78}75%,100%{transform:scale(1.55);opacity:0}}
.product-hotspot-card{
  position:absolute;top:50%;display:block;width:188px;min-height:42px;padding:10px 12px;border-radius:14px;
  border:1px solid rgba(243,179,36,.28);background:linear-gradient(135deg,rgba(6,8,7,.94),rgba(11,13,10,.82));
  backdrop-filter:blur(14px);box-shadow:0 16px 42px rgba(0,0,0,.48),inset 0 0 28px rgba(243,179,36,.025);
  transform:translateY(-50%);transition:width .28s ease,border-color .28s ease,background .28s ease,box-shadow .28s ease;
  pointer-events:none;
}
.product-hotspot.side-right .product-hotspot-card{left:42px}
.product-hotspot.side-left .product-hotspot-card{right:42px;text-align:right}
.product-hotspot-card strong{
  display:block;color:#fff;font:1000 11px/1.2 Inter,Arial,sans-serif;letter-spacing:.035em;text-transform:uppercase;
}
.product-hotspot-card span{
  display:block;max-height:0;overflow:hidden;opacity:0;margin-top:0;color:#cbd4c7;font:600 11px/1.48 Inter,Arial,sans-serif;
  transition:max-height .3s ease,opacity .25s ease,margin-top .25s ease;
}
.product-hotspot:hover .product-hotspot-dot,
.product-hotspot:focus-visible .product-hotspot-dot,
.product-hotspot[aria-expanded="true"] .product-hotspot-dot{
  transform:scale(1.12);background:#fff;box-shadow:0 0 0 8px rgba(243,179,36,.16),0 0 34px rgba(243,179,36,.88),0 10px 28px rgba(0,0,0,.54);
}
.product-hotspot:hover .product-hotspot-card,
.product-hotspot:focus-visible .product-hotspot-card,
.product-hotspot[aria-expanded="true"] .product-hotspot-card{
  width:250px;border-color:rgba(243,179,36,.7);background:linear-gradient(135deg,rgba(6,8,7,.98),rgba(18,15,7,.94));
  box-shadow:0 20px 52px rgba(0,0,0,.56),0 0 34px rgba(243,179,36,.10);
}
.product-hotspot:hover .product-hotspot-card span,
.product-hotspot:focus-visible .product-hotspot-card span,
.product-hotspot[aria-expanded="true"] .product-hotspot-card span{
  max-height:88px;opacity:1;margin-top:6px;
}
.product-hotspot:focus-visible{outline:none}
.product-stage[data-product-explorer="tankwatch"] .product-core-image{transform-origin:50% 50%}
.product-stage[data-product-explorer="tankwatch"]{--product-hover-scale:1.22}
.product-stage[data-product-explorer="ft4000ap-twin"]{--product-hover-scale:1.12}
.product-stage[data-product-explorer="ft4000-hsp"]{--product-hover-scale:1.12}
.product-stage[data-product-explorer="ft4000ab"]{--product-hover-scale:1.13}

@media(max-width:1180px){
  .product-hotspot-card{width:158px}.product-hotspot:hover .product-hotspot-card,.product-hotspot:focus-visible .product-hotspot-card,.product-hotspot[aria-expanded="true"] .product-hotspot-card{width:210px}
  .product-hotspot-card strong{font-size:10px}.product-hotspot-card span{font-size:10px}
}
@media(max-width:1050px){
  .product-stage.interactive-product-stage{min-height:590px}
  .product-explorer-hint{top:22px;right:22px}
}
@media(max-width:720px){
  .product-stage.interactive-product-stage{min-height:500px;cursor:default}
  .product-explorer-hint{left:14px;right:auto;top:14px;padding:9px 11px;font-size:8px}
  .product-explorer-hint .desktop-copy{display:none}.product-explorer-hint .touch-copy{display:inline}
  .product-stage.interactive-product-stage .stage-label{display:none}
  .product-stage.interactive-product-stage:hover .product-core-image{transform:translateX(-50%)}
  .product-stage.interactive-product-stage.is-exploring .product-core-image,
  .product-stage.interactive-product-stage:focus-within .product-core-image{transform:translateX(-50%) translateY(-1%) scale(1.07)}
  .product-hotspot{opacity:1;transform:translate(-50%,-50%) scale(.9)}
  .product-hotspot-card{width:126px;padding:8px 9px;border-radius:11px}
  .product-hotspot.side-right .product-hotspot-card{left:36px}.product-hotspot.side-left .product-hotspot-card{right:36px}
  .product-hotspot-card strong{font-size:8px;line-height:1.25}.product-hotspot-card span{font-size:9px;line-height:1.38}
  .product-hotspot:hover .product-hotspot-card,.product-hotspot:focus-visible .product-hotspot-card,.product-hotspot[aria-expanded="true"] .product-hotspot-card{width:174px}
  .product-hotspot-dot{width:26px;height:26px;flex-basis:26px;font-size:13px;box-shadow:0 0 0 5px rgba(243,179,36,.12),0 0 18px rgba(243,179,36,.62)}
}
@media(max-width:460px){
  .product-stage.interactive-product-stage{min-height:470px}
  .product-hotspot-card{width:106px}.product-hotspot:hover .product-hotspot-card,.product-hotspot:focus-visible .product-hotspot-card,.product-hotspot[aria-expanded="true"] .product-hotspot-card{width:150px}
  .product-hotspot-card span{font-size:8px}
}
@media(prefers-reduced-motion:reduce){
  .product-stage.interactive-product-stage .product-core-image,.product-stage.interactive-product-stage .product-stage-bg,.product-hotspot,.product-hotspot-card,.product-hotspot-card span{transition:none!important}
  .product-hotspot-dot::after{animation:none!important}
}


/* v6.9.5 — accessibility and contrast upgrades for the product explorer */
.product-explorer-hint{
  border-color:rgba(243,179,36,.26)!important;
  background:rgba(8,10,9,.82)!important;
  color:#f3f6ef!important;
  font-size:10px!important;
  letter-spacing:.12em!important;
  box-shadow:0 14px 36px rgba(0,0,0,.30)!important;
}
.product-hotspot{min-width:34px;min-height:34px}
.product-hotspot:focus-visible{outline:3px solid #f3b324;outline-offset:4px;border-radius:20px}
.product-hotspot-dot{
  width:34px;height:34px;flex-basis:34px;
  border-color:rgba(255,255,255,.88)!important;
  box-shadow:0 0 0 7px rgba(243,179,36,.14),0 0 24px rgba(243,179,36,.56),0 8px 24px rgba(0,0,0,.5)!important;
}
.product-hotspot-card{
  width:220px;min-height:56px;padding:14px 15px 13px;
  border-color:rgba(243,179,36,.38)!important;
  background:linear-gradient(135deg,rgba(8,10,9,.97),rgba(15,16,13,.94))!important;
  box-shadow:0 18px 40px rgba(0,0,0,.42),inset 0 0 0 1px rgba(255,255,255,.04)!important;
}
.product-hotspot-card strong{
  color:#fff!important;
  font-size:13px!important;line-height:1.18!important;letter-spacing:.02em!important;
  text-shadow:none!important;
}
.product-hotspot-card span{
  color:#eef3ea!important;
  font-size:12px!important;line-height:1.5!important;font-weight:600!important;
  text-shadow:none!important;
}
.product-hotspot:hover .product-hotspot-card,
.product-hotspot:focus-visible .product-hotspot-card,
.product-hotspot[aria-expanded="true"] .product-hotspot-card{
  width:290px;
  border-color:rgba(243,179,36,.76)!important;
  background:linear-gradient(135deg,rgba(6,8,7,.99),rgba(25,20,9,.96))!important;
}
.product-hotspot:hover .product-hotspot-card span,
.product-hotspot:focus-visible .product-hotspot-card span,
.product-hotspot[aria-expanded="true"] .product-hotspot-card span{max-height:120px}
html[data-theme="light"] .product-explorer-hint,
html[data-theme="light"] .product-hotspot-card{background:linear-gradient(135deg,rgba(10,12,10,.96),rgba(18,16,11,.94))!important}
html[data-theme="light"] .product-hotspot-card strong{color:#fff!important}
html[data-theme="light"] .product-hotspot-card span{color:#f2f4ee!important}
html[data-theme="light"] .product-hotspot-dot{border-color:rgba(255,255,255,.9)!important}
@media(max-width:1180px){
  .product-hotspot-card{width:186px;padding:12px 13px}.product-hotspot:hover .product-hotspot-card,.product-hotspot:focus-visible .product-hotspot-card,.product-hotspot[aria-expanded="true"] .product-hotspot-card{width:246px}
  .product-hotspot-card strong{font-size:12px!important}.product-hotspot-card span{font-size:11px!important}
}
@media(max-width:720px){
  .product-explorer-hint{font-size:9px!important}
  .product-hotspot-card{width:150px;padding:10px 11px}.product-hotspot:hover .product-hotspot-card,.product-hotspot:focus-visible .product-hotspot-card,.product-hotspot[aria-expanded="true"] .product-hotspot-card{width:198px}
  .product-hotspot-card strong{font-size:10px!important}.product-hotspot-card span{font-size:10px!important;line-height:1.42!important}
}
@media(prefers-contrast:more){
  .product-hotspot-card,.product-explorer-hint{background:#000!important;border-color:#ffd35d!important}
  .product-hotspot-card strong,.product-hotspot-card span,.product-explorer-hint{color:#fff!important}
}


/* FT4000AP Twin: keep the extra component callouts compact around the cabinet. */
.product-stage[data-product-explorer="ft4000ap-twin"] .product-hotspot-card{max-width:220px}
.product-stage[data-product-explorer="ft4000ap-twin"] .product-hotspot:nth-of-type(5){transition-delay:.16s}
.product-stage[data-product-explorer="ft4000ap-twin"] .product-hotspot:nth-of-type(6){transition-delay:.20s}
@media(max-width:720px){
  .product-stage[data-product-explorer="ft4000ap-twin"] .product-hotspot-card{max-width:168px}
}

/* v6.9.31 — expanded component detail and lockable close-up viewer */
.product-hotspot-card em{display:block;margin-top:6px;color:var(--acid);font-style:normal;font-size:9px;letter-spacing:.08em;text-transform:uppercase}
.product-detail-viewer{position:absolute;z-index:30;right:22px;bottom:22px;width:min(390px,calc(100% - 44px));padding:14px;border:1px solid rgba(243,179,36,.64);border-radius:20px;background:linear-gradient(155deg,rgba(5,7,6,.98),rgba(18,15,8,.96));box-shadow:0 28px 80px rgba(0,0,0,.7),0 0 42px rgba(243,179,36,.13);backdrop-filter:blur(16px);opacity:1;transform:translateY(0) scale(1);transition:opacity .24s ease,transform .3s cubic-bezier(.16,1,.3,1);cursor:default}
.product-detail-viewer[aria-hidden="true"]{opacity:0;transform:translateY(16px) scale(.96);pointer-events:none}
.product-detail-viewer-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:11px}
.product-detail-viewer-head small{display:block;color:var(--acid);font:900 9px/1 'Courier New',monospace;letter-spacing:.14em;text-transform:uppercase;margin-bottom:5px}
.product-detail-viewer-head strong{display:block;color:#fff;font:1000 14px/1.2 Inter,Arial,sans-serif;text-transform:uppercase}
.product-detail-close{display:grid;place-items:center;width:34px;height:34px;flex:0 0 34px;border:1px solid rgba(243,179,36,.48);border-radius:50%;background:rgba(255,255,255,.05);color:#fff;font:400 24px/1 Arial;cursor:pointer}
.product-detail-close:hover,.product-detail-close:focus-visible{background:var(--acid);color:#071000;outline:none;box-shadow:0 0 24px rgba(243,179,36,.35)}
.product-detail-image{height:210px;border:1px solid rgba(255,255,255,.12);border-radius:14px;background-color:#060806;background-repeat:no-repeat;box-shadow:inset 0 0 34px rgba(0,0,0,.48);transition:background-position .35s ease,background-size .35s ease}
.product-detail-viewer p{margin:11px 2px 0;color:#eef3ea;font:600 12px/1.5 Inter,Arial,sans-serif}
.product-detail-note{margin:9px 2px 0;padding-top:8px;border-top:1px solid rgba(255,255,255,.09);color:#9ca69a;font:600 9px/1.4 Inter,Arial,sans-serif}
.product-stage.detail-locked .product-core-image{filter:drop-shadow(0 42px 42px rgba(0,0,0,.92)) drop-shadow(0 0 34px rgba(243,179,36,.22)) brightness(.72)}
.product-stage.detail-locked .product-hotspot:not([aria-expanded="true"]){opacity:.5}
.product-stage[data-product-explorer] .product-hotspot:nth-of-type(n+5){transition-delay:.16s}
.product-stage[data-product-explorer] .product-hotspot:nth-of-type(n+6){transition-delay:.20s}
.product-stage[data-product-explorer] .product-hotspot:nth-of-type(n+7){transition-delay:.24s}
@media(max-width:900px){.product-detail-viewer{width:min(340px,calc(100% - 28px));right:14px;bottom:14px}.product-detail-image{height:180px}}
@media(max-width:720px){.product-detail-viewer{left:12px;right:12px;bottom:12px;width:auto;padding:11px}.product-detail-image{height:155px}.product-detail-viewer p{font-size:11px}.product-detail-note{display:none}.product-hotspot-card em{display:none}}
@media(prefers-reduced-motion:reduce){.product-detail-viewer,.product-detail-image{transition:none!important}}
