.pov-product-pin{position:absolute;z-index:4;left:48.4%;top:32.7%;transform:translate(-50%,-50%);width:6%;min-width:44px;height:4%;min-height:36px;border:0;border-radius:24px;background:transparent;cursor:pointer}
.pov-product-pin:hover{box-shadow:0 0 0 2px #f36b21,0 0 22px #f36b2155}
.pov-product-pin[hidden]{display:none}
.product-open{overflow:hidden}
.product-dialog{width:min(880px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:0;border:1px solid #46505a;border-radius:22px;background:#171c22;color:#f7f7f8;box-shadow:0 28px 100px #000a;overflow:auto}
.product-dialog::backdrop{background:#050b13bb;backdrop-filter:blur(6px)}
.product-dialog[open]{animation:product-in .28s ease-out}
@keyframes product-in{from{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}
.product-close{position:absolute;z-index:1;right:14px;top:14px;width:42px;height:42px;border-radius:50%;border:1px solid #ffffff30;background:#1c242e;color:white;font-size:28px;cursor:pointer}
.product-layout{display:grid;grid-template-columns:42% 58%}
.product-visual{position:relative;display:flex;align-items:center;justify-content:center;padding:36px;background:radial-gradient(ellipse at center,#35414e,#10151b 75%);min-height:480px}








/* When 3D is active, the image-anchored numbered callouts (tied to flat x/y%
   coordinates) don't apply to the rotating model, so hide them and let the
   viewer use the full panel; switching back to Image restores them. */

@media(max-width:640px){}
.product-visual img{display:block;width:100%;max-height:510px;object-fit:contain}
.product-copy{padding:48px 36px 32px}
.product-eyebrow{font-size:12px;letter-spacing:.13em;color:#f58b50;margin:0 0 12px}
.product-copy h2{font-size:44px;letter-spacing:-1px;margin:0 0 12px}
.product-intro,.product-control{font-size:16px;line-height:1.55;color:#c9d0d8}
.product-specs{display:grid;grid-template-columns:1fr 1fr;gap:0 20px;margin:24px 0}
.product-specs div{padding:13px 0;border-top:1px solid #ffffff20}
.product-specs dt{font-size:14px;color:#a8b3bf;margin-bottom:6px}
.product-specs dd{margin:0;font-size:18px;font-weight:600}
.product-control strong{color:white}
.product-note{font-size:12px;line-height:1.5;color:#a8b3bf}
.product-explore{margin:24px 0 0}
.product-explore-link{display:inline-flex;align-items:center;gap:10px;padding:14px 22px;border-radius:10px;background:#f36b21;color:#fff;font:700 15px Arial;text-transform:uppercase;text-decoration:none;letter-spacing:.04em;transition:background .15s ease,transform .15s ease}
.product-explore-link:hover{background:#f58b50}
.product-explore-link:focus-visible{outline:2px solid white;outline-offset:3px}
.product-explore-link span{font-size:16px;line-height:1}
@media(max-width:640px){.product-layout{grid-template-columns:1fr}.product-visual{min-height:0;height:230px;padding:20px}.product-visual img{height:100%}.product-copy{padding:24px}.product-copy h2{font-size:34px}}
@media(prefers-reduced-motion:reduce){.product-dialog[open]{animation:none}}
 .product-copy{min-width:0}.product-copy h2{overflow-wrap:break-word}.product-eyebrow{text-transform:uppercase}.pov-product-pin:focus-visible{box-shadow:0 0 0 2px #f36b21}
.moon-stage{position:relative;width:100%;max-width:270px;--light:.6;isolation:isolate}
.moon-stage img{position:relative;z-index:1;width:100%;height:auto;max-height:none}
.moon-stage::before{content:'';position:absolute;inset:8% -25% 22%;z-index:0;pointer-events:none;background:radial-gradient(ellipse,#eaf3ff55 0%,#daeaff1a 35%,transparent 70%);opacity:var(--light);transition:opacity .15s linear}
.moon-glow{position:absolute;z-index:2;left:12%;top:20%;width:76%;height:44%;pointer-events:none;background:radial-gradient(ellipse at 50% 20%,#ffffffcc 0%,#f2f6ff66 35%,#eaf2ff11 68%,transparent 75%);clip-path:polygon(0 0,100% 0,75% 100%,25% 100%);mix-blend-mode:screen;opacity:var(--light);transition:opacity .15s linear}
.moon-controls{padding:18px 0 8px;border-top:1px solid #ffffff20;border-bottom:1px solid #ffffff20;margin:22px 0}
.moon-control-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;font-size:16px;font-weight:600}.moon-control-heading output{color:#f58b50;font-variant-numeric:tabular-nums}
.moon-controls input{display:block;width:100%;height:40px;margin:8px 0;accent-color:#f36b21;cursor:pointer}.moon-controls input:focus-visible{outline:2px solid white;outline-offset:4px}
.moon-presets{display:flex;gap:8px}.moon-presets button{flex:1;min-height:38px;border-radius:8px;border:1px solid #ffffff30;background:#202933;color:#dbe0e5;font-size:14px;cursor:pointer}.moon-presets button[aria-pressed=true]{background:#a93f0b;border-color:#f58b50;color:white}.moon-demo-note{font-size:12px;color:#a8b3bf;margin:12px 0 4px}
@media(max-width:640px){.moon-demo .product-visual{height:270px}.moon-stage{width:auto;height:100%}.moon-stage img{height:100%;width:auto;max-width:100%}}
.lamp-dome,.lamp-mesina{max-width:330px}
.lamp-dome .moon-glow{left:8%;top:10%;width:84%;height:66%;clip-path:polygon(0 0,100% 0,62% 100%,42% 100%);background:radial-gradient(ellipse at 50% 5%,#ffffffcc,#f2f6ff66 35%,transparent 75%)}
.lamp-mesina .moon-glow{left:5%;top:2%;width:66%;height:50%;clip-path:polygon(54% 0,100% 54%,47% 100%,0 48%);background:radial-gradient(ellipse,#ffffffcc,#f2f6ff77 50%,transparent 80%)}
.experience-controls{margin:22px 0;padding:18px 0;border-block:1px solid #ffffff20}.experience-controls h3{font-size:17px;margin:0 0 14px}.experience-actions{display:flex;flex-wrap:wrap;gap:8px}.experience-actions button,.experience-primary,.report-reset{min-height:42px;padding:10px 14px;border:1px solid #ffffff35;border-radius:9px;background:#25303b;color:#fff;font:inherit;font-size:14px;cursor:pointer}.experience-actions button[aria-pressed=true],.experience-primary{background:#a93f0b;border-color:#f58b50}.experience-controls button:disabled{opacity:.6;cursor:wait}.experience-controls [role=status]{font-size:14px;line-height:1.5;color:#c9d0d8;margin:14px 0 8px}.experience-note,.demo-caption{font-size:12px;color:#a8b3bf}.experience-stage{position:relative;width:100%;isolation:isolate}.experience-stage img{width:100%;height:auto;max-height:none;position:relative;z-index:1}.experience-sentinal{width:30px;height:510px}.experience-sentinal img{height:100%;width:100%}.bench-light,.pole-light,.shelter-light{position:absolute;z-index:2;pointer-events:none;opacity:0;transition:opacity .4s;mix-blend-mode:screen}.light-on .bench-light,.light-on .pole-light,.light-on .shelter-light{opacity:1}.bench-light{left:7%;top:55%;width:88%;height:35%;background:radial-gradient(ellipse,#b7e9ffb3,transparent 70%);transform:rotate(-9deg)}.pole-light{left:50%;top:10%;width:240%;height:17%;transform:translateX(-50%);border-radius:50%;background:radial-gradient(ellipse,rgba(245,249,255,.65),rgba(231,242,255,.3) 30%,rgba(218,235,255,.1) 55%,transparent 75%);filter:blur(9px);box-shadow:none;transition:opacity .65s ease}.shelter-light{left:8%;top:6%;width:83%;height:25%;background:radial-gradient(ellipse,#eaf5ff88,transparent 70%)}.charge-indicator{position:absolute;z-index:3;left:50%;top:48%;transform:translate(-50%,-50%);width:max-content;max-width:100%;padding:10px;border:1px solid #9ce2ff66;border-radius:10px;background:#111d2bef;font-size:13px;color:#e9f8ff;opacity:0;transition:opacity .3s}.charging .charge-indicator{opacity:1}.charge-pulse{display:inline-block;color:#9ce2ff;font-size:20px}.charging .charge-pulse{animation:charge-pulse 1.3s ease-in-out infinite}@keyframes charge-pulse{50%{opacity:.35}}
.coverage-field{position:absolute;z-index:0;top:14%;left:50%;width:260px;height:260px;transform:translateX(-50%);border:1px solid #9ce2ff88;border-radius:50%;background:repeating-radial-gradient(circle,#9ce2ff18 0 2px,transparent 3px 42px);opacity:0;transition:opacity .4s}.coverage-label{position:absolute;z-index:3;left:50%;top:73%;transform:translateX(-50%);width:170px;text-align:center;font-size:13px;padding:8px;border-radius:8px;background:#172a3d;opacity:0}.coverage-on .coverage-field,.coverage-on .coverage-label{opacity:1}
.arrival-board,.document-demo,.report-result{margin-top:14px;padding:14px;border:1px solid #ffffff26;border-radius:10px;background:#111820;font-size:14px}.arrival-board>div{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid #ffffff18}.arrival-board>div:last-child{border:0}.arrival-board span{flex:1}.arrival-board .board-title{font-weight:600}.board-title span{text-align:right;color:#f58b50;font-size:12px}.arrival-board strong{color:#9ce2ff}.document-demo{position:relative;overflow:hidden}.demo-caption{display:block;margin-bottom:10px}.document-demo>strong,.report-result>strong{display:block;font-size:16px}.document-demo dl{opacity:.35;transition:opacity .4s}.document-demo.extracted dl{opacity:1}.document-demo dl div{display:flex;justify-content:space-between;gap:10px;margin-top:8px}.document-demo dd{margin:0}.document-result{color:#b4e4d0}.scan-line{display:none;position:absolute;left:0;right:0;top:0;height:2px;background:#9ce2ff;box-shadow:0 0 18px 5px #9ce2ff55}.scanning .scan-line{display:block;animation:scan 1s linear}@keyframes scan{to{top:100%}}.workflow-steps{display:flex;justify-content:space-between;gap:8px;padding:0;list-style:none;font-size:13px;color:#8e9dab}.workflow-steps li.complete{color:#f58b50}.citizen-demo label{display:block;font-size:14px;margin-bottom:8px}.citizen-demo select{width:100%;background:#111820;color:white;border:1px solid #526272;border-radius:8px;font:inherit;font-size:14px;padding:10px}.sample-location{font-size:13px;color:#a8b3bf}.report-state{display:block;color:#b4e4d0;margin:12px 0}.report-reset{display:block}.experience-controls [hidden]{display:none!important}
@media(max-width:640px){.experience-stage{width:auto;height:100%;max-width:100%}.experience-stage img{height:100%;width:auto;max-width:100%;object-fit:contain}.experience-sentinal{width:13px}.coverage-field{width:160px;height:160px}.coverage-label{top:65%}}
@media(prefers-reduced-motion:reduce){.charging .charge-pulse,.scanning .scan-line{animation:none}.experience-stage *{transition:none}}

.pov-product-pin.named-product-pin{width:max-content!important;max-width:32%;height:auto;padding:10px 12px;background:#0c141df5;color:white;border:1px solid #ffffff50;font:500 14px Arial;text-align:center}
