/* Motion layer, inspired by the Atlantis Pads site: depth gauge, light rays, marine snow, scroll reveals, route map */
.progress{position:fixed;top:0;left:0;height:2px;width:0;background:linear-gradient(90deg,#8de4eb,#38bfd0);z-index:60;box-shadow:0 0 12px #8de4eb}
.hero{isolation:isolate}
.hero .rays{position:absolute;inset:-20% -10% 0;z-index:1;pointer-events:none;background:repeating-linear-gradient(100deg,rgba(180,240,255,0) 0 60px,rgba(180,240,255,.07) 80px,rgba(180,240,255,0) 130px);mask-image:linear-gradient(180deg,#000 0%,rgba(0,0,0,.6) 35%,transparent 75%);-webkit-mask-image:linear-gradient(180deg,#000 0%,rgba(0,0,0,.6) 35%,transparent 75%);animation:rays 14s ease-in-out infinite alternate;transform-origin:50% 0}
@keyframes rays{0%{transform:translateX(-3%) skewX(-4deg);opacity:.75}100%{transform:translateX(3%) skewX(4deg);opacity:1}}
.hero .snow{position:absolute;inset:0;z-index:1;pointer-events:none}
.rv{opacity:0;transform:translateY(28px);transition:opacity 1.1s cubic-bezier(.2,.7,.2,1),transform 1.1s cubic-bezier(.2,.7,.2,1)}
.rv.in{opacity:1;transform:none}
.gauge{position:fixed;right:22px;top:50%;transform:translateY(-50%);z-index:40;display:flex;flex-direction:column;gap:46px;font:9px Inter,sans-serif;letter-spacing:.2em;color:rgba(110,165,175,.85);text-transform:uppercase;text-align:right}
.gauge:before{content:"";position:absolute;right:3px;top:0;bottom:0;width:1px;background:rgba(110,165,175,.4)}
.gauge span{padding-right:14px;position:relative}
.gauge .mk{position:absolute;right:-1px;width:9px;height:9px;border-radius:50%;background:#8de4eb;box-shadow:0 0 0 4px rgba(141,228,235,.18),0 0 18px #8de4eb;transition:top .25s linear}
.gauge .rd{position:absolute;right:118px;white-space:nowrap;color:#38bfd0;font-weight:700;background:rgba(2,21,34,.72);padding:3px 8px;border-radius:20px;transition:top .25s linear}
@media(max-width:1100px){.gauge{display:none}}
.atl-map{position:relative;margin:44px 0 6px;border:1px solid rgba(255,255,255,.12);border-radius:18px;overflow:hidden;background:radial-gradient(ellipse at 50% 40%,rgba(56,191,208,.12),transparent 70%),#021522}
.atl-map svg{display:block;width:100%;height:auto}
.atl-map .land{fill:#0d3a4c;stroke:#14566b;stroke-width:.4}
.atl-map .grat{fill:none;stroke:rgba(141,228,235,.06)}
.atl-map .route{fill:none;stroke:#e9c46a;stroke-width:1.6;stroke-dasharray:4 6;animation:dash 2.4s linear infinite}
@keyframes dash{to{stroke-dashoffset:-20}}
.atl-map .pulse{fill:#8de4eb;opacity:.5;transform-box:fill-box;transform-origin:center;animation:pulse 2.6s ease-out infinite}
@keyframes pulse{0%{transform:scale(.4);opacity:.7}100%{transform:scale(3.4);opacity:0}}
.atl-map .dot{fill:#e8fbfc}.atl-map .home{fill:#e9c46a}
.atl-map text{fill:#dff6f7;font:600 11px Inter,sans-serif;letter-spacing:.08em}
.atl-map .cap{position:absolute;left:18px;bottom:14px;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:#8de4eb}
.card,.place,.panel{transition:transform .5s cubic-bezier(.2,.7,.2,1),border-color .5s,box-shadow .5s}
.card:hover,.place:hover,.panel:hover{transform:translateY(-6px);border-color:rgba(141,228,235,.5);box-shadow:0 18px 40px rgba(0,30,45,.25)}
.brand-mark{transition:transform .8s cubic-bezier(.2,.7,.2,1)}.brand:hover .brand-mark{transform:rotate(-4deg) scale(1.06)}
@media(prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}.hero .rays,.atl-map .route,.atl-map .pulse{animation:none}}
