.interactive-hotspots-wrapper{margin:0 auto;padding:20px 0;width:100%}.hotspots-container{margin:0 auto}.hotspots-image-wrapper{border-radius:1px;box-shadow:0 4px 20px rgba(0,0,0,.1);overflow:hidden;position:relative;width:100%}.hotspots-background-image{display:block;height:auto;width:100%}.hotspots-layer{height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%}.hotspot{pointer-events:all;position:absolute;transform:translate(-50%,-50%);z-index:10}.hotspot.active{z-index:100}.hotspot-marker{background:#faca0f;border:3px solid #fff;border-radius:50%;box-shadow:0 4px 12px rgba(0,0,0,.2);cursor:pointer;display:flex;height:28px;justify-content:center;position:relative;transition:all .3s ease;width:28px;z-index:2}.hotspot-marker:hover{background:#ffc700;transform:scale(1.1)}.hotspot-marker:focus{box-shadow:0 0 0 4px rgba(255,215,0,.3);outline:none}.hotspot-plus{color:#333;font-size:18px;font-weight:700;line-height:1;user-select:none}.hotspot-pulse,.hotspot-pulse-ring{border:3px solid gold;border-radius:50%;height:100%;left:50%;opacity:0;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);width:100%}.hotspot-pulse{animation:pulse-wave 2s ease-out infinite}.hotspot-pulse-ring{animation:pulse-wave 2s ease-out 1s infinite}@keyframes pulse-wave{0%{opacity:.7;transform:translate(-50%,-50%) scale(1)}50%{opacity:.4}to{opacity:0;transform:translate(-50%,-50%) scale(2.5)}}.hotspot.active .hotspot-pulse,.hotspot.active .hotspot-pulse-ring{animation:none;opacity:0}.hotspot-bubble{background:#fff;border-radius:8px;bottom:calc(100% + 15px);box-shadow:0 8px 32px rgba(0,0,0,.15);left:50%;max-width:90vw;opacity:0;pointer-events:none;position:absolute;transform:translateX(-50%) translateY(10px);transition:all .3s cubic-bezier(.68,-.55,.265,1.55);visibility:hidden;width:700px;z-index:1}.hotspot.active .hotspot-bubble{opacity:1;pointer-events:all;transform:translateX(-50%) translateY(0);visibility:visible}.bubble-close{background:#f5f5f5;border:none;border-radius:50%;color:#666;cursor:pointer;display:flex;font-size:24px;height:26px;justify-content:center;line-height:.9;position:absolute;right:10px;top:10px;transition:all .2s ease;width:26px;z-index:10}.bubble-close:hover{background:#e0e0e0;color:#333}.bubble-content-wrapper{display:flex;gap:0}.bubble-content{display:flex;flex:1;flex-direction:column;padding:30px 30px 30px 25px}.bubble-image{background:#f5f5f5;border-radius:8px 0 0 8px;flex:0 0 350px;overflow:hidden}.bubble-image img{display:block;height:100%!important;object-fit:cover;object-position:center;width:100%}.bubble-heading{margin:0 0 12px;padding-right:30px}.bubble-body{color:#555;flex:1;font-size:14px;line-height:1.6;margin:0 0 16px}.bubble-body p{font-size:16px}.bubble-body p:last-child{margin-bottom:0}.bubble-cta{margin-top:auto;padding-top:16px}.bubble-cta-button{display:inline-block}.hotspot[style*="left: 0%"] .hotspot-bubble,.hotspot[style*="left: 1%"] .hotspot-bubble,.hotspot[style*="left: 2%"] .hotspot-bubble,.hotspot[style*="left: 3%"] .hotspot-bubble,.hotspot[style*="left: 4%"] .hotspot-bubble,.hotspot[style*="left: 5%"] .hotspot-bubble{left:0;transform:translateX(0) translateY(10px)}.hotspot.active[style*="left: 0%"] .hotspot-bubble,.hotspot.active[style*="left: 1%"] .hotspot-bubble,.hotspot.active[style*="left: 2%"] .hotspot-bubble,.hotspot.active[style*="left: 3%"] .hotspot-bubble,.hotspot.active[style*="left: 4%"] .hotspot-bubble,.hotspot.active[style*="left: 5%"] .hotspot-bubble{transform:translateX(0) translateY(0)}.hotspot[style*="left: 100%"] .hotspot-bubble,.hotspot[style*="left: 95%"] .hotspot-bubble,.hotspot[style*="left: 96%"] .hotspot-bubble,.hotspot[style*="left: 97%"] .hotspot-bubble,.hotspot[style*="left: 98%"] .hotspot-bubble,.hotspot[style*="left: 99%"] .hotspot-bubble{left:auto;right:0;transform:translateX(0) translateY(10px)}.hotspot.active[style*="left: 100%"] .hotspot-bubble,.hotspot.active[style*="left: 95%"] .hotspot-bubble,.hotspot.active[style*="left: 96%"] .hotspot-bubble,.hotspot.active[style*="left: 97%"] .hotspot-bubble,.hotspot.active[style*="left: 98%"] .hotspot-bubble,.hotspot.active[style*="left: 99%"] .hotspot-bubble{transform:translateX(0) translateY(0)}@media (max-width:768px){.hotspot-marker{height:36px;width:36px}.hotspot-plus{font-size:24px}.hotspot-bubble{font-size:13px;width:280px}.bubble-heading{font-size:18px}.bubble-content{padding:16px}.bubble-image{margin:-16px -16px 12px}}@media (max-width:480px){.hotspot-marker{height:32px;width:32px}.hotspot-plus{font-size:20px}.hotspot-bubble{width:260px}}.hotspot-marker:focus-visible{outline:3px solid gold;outline-offset:2px}@media (prefers-reduced-motion:reduce){.hotspot-pulse,.hotspot-pulse-ring{animation:none}.bubble-cta-button,.hotspot-bubble,.hotspot-marker{transition:none}}@media (prefers-contrast:high){.hotspot-marker{border-width:4px}.hotspot-bubble{border:2px solid #000}}@media (max-width:768px){.hotspot-bubble.mobile-modal{background:#fff!important;border-radius:0!important;bottom:auto!important;height:auto!important;left:0!important;margin:0!important;max-height:none!important;max-width:100vw!important;opacity:1!important;overflow-y:scroll!important;pointer-events:all!important;position:fixed!important;right:0!important;top:50px!important;transform:none!important;transition:opacity .3s ease,visibility .3s ease!important;visibility:visible!important;width:100vw!important;z-index:99999!important}.hotspot:not(.active) .hotspot-bubble.mobile-modal{opacity:0!important;visibility:hidden!important}.hotspot-bubble.mobile-modal:after{display:none!important}.hotspot-bubble.mobile-modal .bubble-content{height:100%;padding:80px 15px 40px!important}.hotspot-bubble.mobile-modal .bubble-close{top:20px!important;z-index:10000!important}.hotspot-bubble.mobile-modal .bubble-image{border-radius:0!important;margin:-80px -24px 24px!important}.hotspot-bubble.mobile-modal .bubble-heading{font-size:18px!important}.hotspot-bubble.mobile-modal .bubble-body{font-size:16px!important;margin-bottom:24px!important}.hotspot-bubble.mobile-modal .bubble-cta-button{text-align:center}.hotspot.active .hotspot-bubble.mobile-modal{position:fixed!important;z-index:99999!important}.hotspot.active~.hotspot .hotspot-marker,body:has(.mobile-modal) .hotspot-marker{opacity:0!important;pointer-events:none!important}.hotspot-modal-backdrop{background:rgba(0,0,0,.7)!important;bottom:0!important;left:0!important;pointer-events:all!important;position:fixed!important;right:0!important;top:0!important;z-index:99998!important}}.hotspot-number{color:#333;font-size:16px;font-weight:700;line-height:1;margin-top:5px;user-select:none}.hotspot-marker.show-numbers{height:32px;width:32px}@media (max-width:768px){.hotspot-bubble{width:340px}.bubble-content-wrapper{flex-direction:column}.bubble-image{border-radius:8px 8px 0 0;flex:0 0 auto;max-height:200px}.bubble-content{padding:20px}.hotspot-bubble.mobile-modal .bubble-content-wrapper{flex-direction:column}.hotspot-bubble.mobile-modal .bubble-image{border-radius:0;flex:0 0 auto;margin:0;max-height:375px}.hotspot-bubble.mobile-modal .bubble-content{padding:30px 20px 40px!important}}.hotspot-bubble:not(.mobile-modal) .bubble-close{display:none}