/* Surface motion layers: the cursor is visual-only; wake, bubbles and particles live in world space. */
.surface-art,.dive-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.surface-scene-layers{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none}
.surface-scene-layer{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center;pointer-events:none;transition:filter 1.9s ease,opacity 1.9s ease}
.surface-planet-layer{inset:auto;left:13.3%;top:1.6%;width:16.7%;height:auto;aspect-ratio:1 / 1;object-fit:contain;z-index:0;isolation:isolate}
.surface-planet-layer::before{content:"";position:absolute;inset:0;z-index:2;display:block;border-radius:50%;pointer-events:none;background:radial-gradient(ellipse 44% 40% at 30% 30%,rgba(255,236,184,.76) 0%,rgba(255,222,170,.4) 34%,rgba(255,210,165,.16) 58%,transparent 80%);mix-blend-mode:screen;opacity:.52;transition:opacity .5s ease;animation:planet-local-warm-breathe 7.2s ease-in-out infinite alternate}
.surface-planet-frame{position:absolute;inset:0;z-index:1;display:block;width:100%;height:100%;object-fit:contain;pointer-events:none}
.surface-hero.is-planet-hover .surface-planet-layer::before{opacity:.68;animation:none}
.surface-hero[data-time="blue-hour"] .surface-planet-layer::before{opacity:.1;animation:none}
.surface-hero[data-time="blue-hour"].is-planet-hover .surface-planet-layer::before{opacity:.28}
.surface-jellyfish-layer{z-index:0}
.surface-whale-layer{display:none!important;inset:auto;left:56%;top:12%;width:clamp(390px,36vw,600px);height:auto;aspect-ratio:1575 / 685;object-fit:contain;z-index:0;pointer-events:none;opacity:.88;animation:none!important}
.surface-time-lighting{position:absolute;inset:0;z-index:1;overflow:hidden;pointer-events:none}
.surface-time-lighting>i{position:absolute;inset:0;display:block;pointer-events:none;opacity:0;transition:opacity 2s cubic-bezier(.2,.75,.2,1);will-change:opacity}
.surface-sunset-horizon{background:linear-gradient(180deg,transparent 0 29%,rgba(244,166,160,.08) 37%,rgba(255,138,98,.34) 49%,rgba(247,154,120,.22) 56%,transparent 72%),radial-gradient(ellipse at 50% 49%,rgba(255,124,92,.4),rgba(244,166,160,.18) 22%,transparent 55%);mix-blend-mode:screen;transition-delay:.08s!important}
.surface-sunset-sea-reflection{background:radial-gradient(ellipse at 50% 53%,rgba(255,180,143,.3) 0 7%,rgba(249,164,151,.16) 25%,transparent 62%);mix-blend-mode:screen;transition-delay:.2s!important}
.surface-sunset-cloud-wash{background:linear-gradient(180deg,transparent 0 22%,rgba(213,153,211,.08) 35%,rgba(255,174,157,.18) 49%,rgba(248,183,185,.08) 64%,transparent 80%);mix-blend-mode:soft-light;transition-delay:.02s!important}
.surface-blue-hour-sky-glow{background:radial-gradient(ellipse at 20% 10%,rgba(188,202,255,.2),transparent 34%),linear-gradient(180deg,rgba(86,106,159,.44) 0%,rgba(102,121,173,.3) 34%,rgba(117,134,180,.2) 55%,rgba(130,144,187,.1) 72%,transparent 100%);mix-blend-mode:normal;transition-delay:.12s!important}
.surface-blue-hour-water-fill{background:radial-gradient(ellipse at 52% 52%,rgba(186,225,255,.18),transparent 34%),linear-gradient(180deg,transparent 0 46%,rgba(105,145,200,.1) 54%,rgba(79,124,186,.12) 72%,rgba(90,92,160,.08) 100%);mix-blend-mode:normal;transition-delay:.26s!important}
.surface-hero[data-time="sunset"] .surface-sunset-horizon,.surface-hero[data-time="sunset"] .surface-sunset-sea-reflection,.surface-hero[data-time="sunset"] .surface-sunset-cloud-wash,.surface-hero[data-time="blue-hour"] .surface-blue-hour-sky-glow,.surface-hero[data-time="blue-hour"] .surface-blue-hour-water-fill{opacity:1}
.surface-hero[data-time="sunset"] .surface-sky-layer{filter:saturate(1.04) hue-rotate(-8deg) brightness(.96)}
.surface-hero[data-time="sunset"] .surface-sea-layer{filter:saturate(1.05) hue-rotate(-5deg) brightness(.95)}
.surface-hero[data-time="sunset"] .surface-clouds-layer{opacity:.95;filter:saturate(1.08) hue-rotate(-6deg) brightness(1.02)}
.surface-hero[data-time="sunset"] .surface-planet-layer{filter:saturate(1.12) brightness(1.08) drop-shadow(0 0 16px rgba(255,190,177,.38))}
.surface-hero[data-time="blue-hour"] .surface-sky-layer{filter:saturate(1.06) hue-rotate(8deg) contrast(1.02)}
.surface-hero[data-time="blue-hour"] .surface-sea-layer{filter:saturate(1.12) hue-rotate(8deg) contrast(1.02)}
.surface-hero[data-time="blue-hour"] .surface-clouds-layer{opacity:.9;filter:saturate(1.02) hue-rotate(8deg)}
.surface-hero[data-time="blue-hour"] .surface-planet-layer{filter:brightness(1.12) saturate(1.18) drop-shadow(0 0 14px rgba(215,220,255,.42)) drop-shadow(0 0 28px rgba(142,168,245,.26))}
.surface-hero[data-time="sunset"] .cursor-light{background:#ffe5bb;box-shadow:0 0 0 3px rgba(255,227,190,.34),0 0 16px 6px rgba(255,202,202,.68),0 0 34px 15px rgba(237,177,226,.32)}
.surface-hero[data-time="blue-hour"] .cursor-light{background:#e9ecff;box-shadow:0 0 0 3px rgba(216,225,255,.38),0 0 18px 7px rgba(185,211,255,.62),0 0 38px 16px rgba(145,151,244,.3)}
.surface-hero[data-time="blue-hour"] .cursor-layer .glow{opacity:.74}
.surface-hero.is-planet-hover .cursor-layer .glow{opacity:.98;filter:brightness(1.08) drop-shadow(0 0 18px rgba(255,224,176,.24))}
.surface-art{animation:none}
.surface-hero{background:#b8d9e7}
.dive-world{background:#aab9dc}
.hero-diver-art{width:clamp(150px,18vw,250px);height:auto;left:31%;top:44%;filter:drop-shadow(0 8px 7px rgba(65,77,130,.2))}
.swimmer-art{width:clamp(92px,10vw,152px);height:auto;object-fit:contain;filter:drop-shadow(0 8px 6px rgba(91,75,140,.18))}
.surface-static-line-mask{position:absolute;left:0;right:0;top:48.5%;height:16%;z-index:1;pointer-events:none;background:linear-gradient(180deg,rgba(181,231,236,0) 0%,rgba(181,231,236,.5) 22%,rgba(158,220,230,.74) 48%,rgba(137,207,221,.38) 78%,rgba(137,207,221,0) 100%);-webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.56) 5%,#000 12%,#000 88%,rgba(0,0,0,.56) 95%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.56) 5%,#000 12%,#000 88%,rgba(0,0,0,.56) 95%,transparent 100%);filter:blur(1.6px);opacity:.9}
.surface-wave-layer{position:absolute;left:-2%;right:-2%;top:47.5%;width:104%;height:17%;z-index:2;pointer-events:none;overflow:visible;filter:url(#surface-wave-distort);mix-blend-mode:normal;opacity:.96}
.surface-wave-fill{fill:url(#surface-wave-water);transform-origin:50% 0%}
.surface-wave-sheen{fill:rgba(247,255,255,.38);opacity:.72;transform-origin:50% 0%}
.surface-hero[data-time="day"] .surface-sea-layer{opacity:.86;-webkit-mask-image:linear-gradient(180deg,transparent 0 47%,rgba(0,0,0,.54) 49%,#000 56%,#000 100%);mask-image:linear-gradient(180deg,transparent 0 47%,rgba(0,0,0,.54) 49%,#000 56%,#000 100%);animation:surface-sea-drift 14s ease-in-out infinite alternate}
.surface-hero[data-time="day"] .surface-wave-fill{animation:surface-wave-fill 6.8s ease-in-out infinite alternate}
.surface-hero[data-time="day"] .surface-wave-sheen{animation:surface-wave-sheen 8.2s ease-in-out infinite alternate}
.title-underwater{animation:title-refract 4.8s ease-in-out infinite alternate}
.surface-hero .home-copy{z-index:4}
.surface-hero .title-surface{clip-path:none}
.surface-hero .title-underwater{clip-path:inset(63% 0 12% 0);-webkit-mask:linear-gradient(180deg,transparent 0 60%,rgba(0,0,0,.62) 64%,rgba(0,0,0,.42) 72%,rgba(0,0,0,.1) 82%,transparent 90%);mask:linear-gradient(180deg,transparent 0 60%,rgba(0,0,0,.62) 64%,rgba(0,0,0,.42) 72%,rgba(0,0,0,.1) 82%,transparent 90%)}
.sky-details{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:visible}
.sky-details::after{content:"";position:absolute;left:var(--sky-hover-x,50%);top:var(--sky-hover-y,18%);width:clamp(100px,14vw,220px);height:clamp(100px,14vw,220px);border-radius:50%;background:radial-gradient(circle,rgba(255,248,211,.3),rgba(201,236,255,.14) 34%,transparent 72%);filter:blur(8px);opacity:0;transform:translate(-50%,-50%) scale(.72);transition:opacity .6s ease,transform .8s ease;mix-blend-mode:screen}
.surface-hero.is-sky-hotspot .sky-details::after{opacity:.72;transform:translate(-50%,-50%) scale(1)}
.sky-cloud{position:absolute;left:var(--cloud-x);top:var(--cloud-y);width:clamp(70px,10vw,170px);height:clamp(18px,2.8vw,44px);border-radius:50%;background:rgba(255,248,239,.2);filter:blur(11px);opacity:.46;animation:cloud-drift 12s ease-in-out infinite alternate}
.sky-cloud::before,.sky-cloud::after{content:"";position:absolute;border-radius:50%;background:inherit}
.sky-cloud::before{width:48%;height:160%;left:18%;top:-55%}.sky-cloud::after{width:38%;height:130%;right:15%;top:-35%}
.sky-star{position:absolute;width:var(--star-size,1.5px);height:var(--star-size,1.5px);border-radius:50%;background:rgba(255,247,218,.92);box-shadow:0 0 5px .8px rgba(255,244,206,.46);opacity:calc(.28 * var(--star-strength,1));transition:opacity 1.7s ease,background-color 1.45s ease,box-shadow 1.45s ease;animation:star-breathe var(--star-twinkle-duration,8s) ease-in-out var(--star-twinkle-phase,0s) infinite alternate;will-change:opacity,transform}
.surface-hero[data-time="sunset"] .sky-star{opacity:calc(.72 * var(--star-strength,1));background:rgba(255,231,220,.96);box-shadow:0 0 6px .9px rgba(255,220,213,.54)}
.surface-hero[data-time="blue-hour"] .sky-star{opacity:calc(.96 * var(--star-strength,1));background:rgba(232,238,255,1);box-shadow:0 0 7px 1.3px rgba(226,235,255,.66)}
.sky-meteor{position:absolute;left:var(--meteor-x);top:var(--meteor-y);width:var(--meteor-length,40px);height:1.2px;border-radius:999px;pointer-events:none;opacity:0;background:linear-gradient(90deg,transparent 0%,rgba(228,237,255,.12) 18%,rgba(239,243,255,.9) 72%,rgba(255,255,255,.14) 100%);filter:blur(.2px);box-shadow:0 0 7px rgba(211,228,255,.38);transform-origin:100% 50%;transform:rotate(var(--meteor-angle,22deg)) translate3d(0,0,0) scaleX(.16);will-change:opacity,transform}
.surface-hero[data-time="blue-hour"] .sky-meteor{animation:sky-meteor-pass var(--meteor-duration,20s) ease-in-out var(--meteor-delay,0s) infinite}
.surface-blue-hour-motes{position:absolute;inset:0;z-index:5;pointer-events:none;overflow:hidden;opacity:0;transition:opacity 1.2s ease}
.surface-blue-hour-motes i{position:absolute;display:block;width:5px;height:5px;border-radius:50%;background:#e8f1ff;box-shadow:0 0 11px 3px rgba(174,220,255,.62);opacity:0;transform:translate3d(0,0,0);will-change:transform,opacity}
.surface-hero[data-time="blue-hour"] .surface-blue-hour-motes.is-revealing{opacity:1}
.surface-water-particles{position:absolute;left:0;right:0;top:50%;bottom:0;z-index:1;overflow:hidden;pointer-events:none;background:linear-gradient(180deg,rgba(235,255,251,.075) 0%,rgba(196,237,236,.035) 30%,rgba(86,151,172,.06) 66%,rgba(42,99,137,.1) 100%)}
.surface-water-particles::before,.surface-water-particles::after{content:"";position:absolute;inset:-12% -18%;display:block;border-radius:50%;pointer-events:none;filter:blur(32px);mix-blend-mode:soft-light;will-change:transform,opacity,background-position,background-size;-webkit-mask-image:linear-gradient(180deg,#000 0%,#000 38%,rgba(0,0,0,.68) 70%,transparent 100%);mask-image:linear-gradient(180deg,#000 0%,#000 38%,rgba(0,0,0,.68) 70%,transparent 100%)}
.surface-water-particles::before{opacity:.48;background:radial-gradient(ellipse 82% 44% at 18% 18%,rgba(233,253,247,.46),transparent 78%),radial-gradient(ellipse 96% 54% at 72% 56%,rgba(204,241,237,.28),transparent 82%),radial-gradient(ellipse 72% 50% at 42% 88%,rgba(174,221,224,.16),transparent 84%),linear-gradient(118deg,rgba(220,247,242,.12),transparent 56%);background-size:150% 138%,172% 154%,138% 148%,130% 136%;background-position:0% 8%,100% 92%,42% 52%,8% 52%;animation:surface-diffuse-luminance-a 9.6s ease-in-out infinite}
.surface-water-particles::after{opacity:.4;background:radial-gradient(ellipse 92% 48% at 76% 24%,rgba(224,249,245,.38),transparent 80%),radial-gradient(ellipse 90% 60% at 26% 68%,rgba(193,232,231,.24),transparent 84%),radial-gradient(ellipse 76% 46% at 58% 94%,rgba(154,211,218,.14),transparent 86%),linear-gradient(62deg,transparent 34%,rgba(201,237,234,.1),transparent 74%);background-size:164% 146%,148% 162%,176% 142%,142% 150%;background-position:100% 12%,0% 88%,58% 44%,92% 18%;animation:surface-diffuse-luminance-b 12.7s ease-in-out -3.2s infinite}
.surface-water-particle{position:absolute;display:block;border-radius:50%;background:rgba(216,247,245,.28);opacity:.12;will-change:transform,opacity;pointer-events:none}
.surface-wake-field{display:none!important;position:absolute;left:0;right:0;top:50%;bottom:0;z-index:4;overflow:hidden;pointer-events:none}
.surface-wake-trace{position:absolute;display:block;border-radius:55% 45% 52% 48%;background:repeating-linear-gradient(176deg,transparent 0 6px,rgba(110,220,222,.56) 7px 9px,transparent 10px 15px),linear-gradient(90deg,transparent 0 15%,rgba(61,167,187,.2) 28%,rgba(103,215,217,.38) 45%,rgba(67,177,193,.24) 60%,transparent 86%);filter:blur(var(--wake-blur,.38px));mix-blend-mode:normal;transform-origin:center;will-change:transform,opacity;pointer-events:none;overflow:hidden}
.surface-wake-trace.is-active{animation:surface-wake-trace-fade var(--wake-duration,1.35s) ease-out forwards}
.surface-wake-trace::before{content:"";position:absolute;inset:5% 34% 5% 28%;border-radius:48%;background:repeating-linear-gradient(174deg,rgba(144,236,231,.7) 0 1.5px,transparent 2.5px 9px,rgba(86,201,208,.3) 10px 11.5px,transparent 12.5px 19px);filter:blur(.35px);opacity:.82;transform:skewX(-7deg)}
.surface-wake-trace::after{content:"";position:absolute;inset:15% 14% 10% 52%;border-radius:50%;background:repeating-linear-gradient(177deg,transparent 0 8px,rgba(101,218,220,.42) 9px 10.5px,transparent 11.5px 18px);filter:blur(.6px);opacity:.68;transform:rotate(8deg)}
.surface-bubbles{position:absolute;left:0;right:0;top:50%;bottom:0;z-index:4;pointer-events:none;overflow:hidden}
.surface-bubble{position:absolute;left:0;top:0;border:2px solid rgba(185,244,239,.88);border-radius:50%;background:radial-gradient(circle at 30% 26%,rgba(236,255,248,.86),rgba(151,224,226,.5) 42%,rgba(87,174,199,.22) 68%,transparent 78%);box-shadow:inset -3px -3px 5px rgba(72,142,183,.26),0 0 14px rgba(132,224,225,.58);will-change:transform,opacity}
.surface-diver-bubble.is-active{animation:surface-diver-bubble-rise 2s ease-out forwards}
.drift-bottle-float{will-change:transform}
.surface-hero.is-drift-bottle-open .drift-bottle-float{will-change:transform}
.surface-fish-prototype-field{display:none;position:absolute;inset:0;z-index:3;overflow:hidden;pointer-events:none}
.surface-hero[data-fish-prototype="true"] .surface-fish-prototype-field{display:block}
.surface-fish-prototype{position:absolute;left:0;top:0;display:block;width:clamp(64px,5.8vw,94px);height:auto;object-fit:contain;transform-origin:center;pointer-events:none;will-change:transform;filter:saturate(.82) contrast(.88)}
/* Depth order stays inside the ecology field (z-index 3): the distant shark
   and loose school sit behind the two authored subjects. */
.surface-fish-prototype[data-depth="mid"]{z-index:2;width:clamp(64px,5.8vw,94px);opacity:.54;filter:saturate(.72) contrast(.82)}
.surface-fish-prototype[data-depth="mid-lower"]{z-index:3;width:clamp(54px,4.8vw,82px);opacity:.48;filter:saturate(.7) contrast(.84)}
.surface-fish-prototype[data-species="fish-slender"]{width:clamp(64px,5.8vw,94px)}
.surface-fish-prototype[data-species="jelly"]{width:clamp(54px,4.8vw,82px);opacity:.48;filter:saturate(.7) contrast(.84)}
.surface-shark-shadow{display:none!important;position:absolute;left:70%;top:78%;z-index:0;width:clamp(170px,12.5vw,240px);aspect-ratio:1672 / 941;height:auto;transform:translate3d(-125vw,-50%,0);opacity:0;filter:saturate(.22) contrast(.72) brightness(.82) blur(1.6px);pointer-events:none;mix-blend-mode:normal;will-change:transform,opacity;animation:surface-shark-drift 84s linear -34s infinite}
.surface-shark-shadow>img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain;pointer-events:none}
.surface-shark-body{clip-path:inset(0 19% 0 0)}
.surface-shark-tail{clip-path:inset(0 0 0 69%);transform-origin:70% 52%;animation:surface-shark-tail-wag 1.8s ease-in-out infinite alternate}
.surface-fish-distant-group{position:absolute;inset:0;z-index:1;overflow:hidden;pointer-events:none}
.surface-fish-distant{position:absolute;left:0;top:0;display:block;width:clamp(30px,2.5vw,46px);height:auto;opacity:.24;filter:saturate(.28) contrast(.86) brightness(.78);transform-origin:center;pointer-events:none;will-change:transform;}
.distant-fish-a{left:18%;top:67%;animation:surface-distant-school-drift 36s linear -3s infinite}
.distant-fish-b{left:32%;top:68.5%;width:clamp(26px,2.2vw,40px);opacity:.2;animation:surface-distant-school-drift 38s linear -5s infinite}
.distant-fish-c{left:24%;top:70%;width:clamp(28px,2.3vw,42px);opacity:.22;animation:surface-distant-school-drift 40s linear -7s infinite}
.distant-fish-d{left:44%;top:71.5%;width:clamp(24px,2vw,36px);opacity:.18;animation:surface-distant-school-drift 42s linear -9s infinite}
.distant-fish-e{left:29%;top:73%;width:clamp(24px,2vw,36px);opacity:.17;animation:surface-distant-school-drift 35s linear -11s infinite}
.distant-fish-f{left:51%;top:75%;width:clamp(25px,2.1vw,38px);opacity:.2;animation:surface-distant-school-drift 39s linear -13s infinite}
.distant-fish-g{left:38%;top:77%;width:clamp(23px,1.9vw,34px);opacity:.16;animation:surface-distant-school-drift 43s linear -15s infinite}
.distant-fish-h{left:57%;top:79%;width:clamp(26px,2.1vw,38px);opacity:.18;animation:surface-distant-school-drift 37s linear -17s infinite}
.surface-hero[data-time="sunset"] .surface-bubble{border-color:rgba(255,235,219,.55);box-shadow:inset -2px -2px 4px rgba(126,170,207,.16),0 0 12px rgba(250,206,222,.3)}
.surface-hero[data-time="blue-hour"] .surface-bubble{border-color:rgba(214,236,255,.6);box-shadow:inset -2px -2px 4px rgba(89,126,190,.18),0 0 12px rgba(175,225,255,.3)}
.dive-entry::after{content:"";position:absolute;z-index:-1;left:16px;top:16px;width:104px;height:96px;border-radius:50%;background:radial-gradient(ellipse,rgba(193,245,242,.38) 0,rgba(167,220,240,.14) 42%,transparent 72%);filter:blur(10px);opacity:.48;animation:jelly-glow 2.8s ease-in-out infinite}
.transition-layer{display:block;position:absolute;inset:0;z-index:9999;pointer-events:none;overflow:hidden;visibility:visible;opacity:0;contain:paint;background:rgba(36,43,103,.08);transform:translateZ(0);backface-visibility:hidden;will-change:opacity}
.transition-morph{position:absolute;inset:-30%;width:160%;height:160%;overflow:visible;transform:translateZ(0);backface-visibility:hidden}
.transition-wave{transform-box:fill-box;transform-origin:50% 100%;opacity:0;will-change:opacity}
.transition-emoji{position:absolute;left:50%;top:52%;z-index:2;width:clamp(120px,17vw,245px);height:auto;object-fit:contain;opacity:0;will-change:transform,opacity;filter:drop-shadow(0 18px 22px rgba(41,42,97,.24))}
.surface-hero.is-dive-transitioning .surface-scene-layer,
.surface-hero.is-dive-transitioning .sky-cloud,
.surface-hero.is-dive-transitioning .sky-star,
.surface-hero.is-dive-transitioning .sky-meteor,
.surface-hero.is-dive-transitioning .surface-water-particle,
.surface-hero.is-dive-transitioning .surface-wave-fill,
.surface-hero.is-dive-transitioning .surface-wave-sheen,
.surface-hero.is-dive-transitioning .surface-fish-prototype,
.surface-hero.is-dive-transitioning .surface-fish-distant,
.surface-hero.is-dive-transitioning .surface-bubble,
.surface-hero.is-dive-transitioning .title-underwater{animation-play-state:paused!important}
.surface-hero.is-dive-transitioning .site-nav,
.surface-hero.is-dive-transitioning .home-copy,
.surface-hero.is-dive-transitioning .caption,
.surface-hero.is-dive-transitioning .dive-trigger{will-change:opacity,filter}
.jelly-return{will-change:transform}
@keyframes lifeline-ring-drift{0%,100%{transform:rotate(-8deg) scaleY(.78) translate3d(0,0,0)}50%{transform:rotate(-5.5deg) scaleY(.74) translate3d(1px,2px,0)}78%{transform:rotate(-9.5deg) scaleY(.8) translate3d(-1px,1px,0)}}
@keyframes lifeline-rope-drift{0%,100%{transform:rotate(-1.2deg) translateX(-.5px)}50%{transform:rotate(1.4deg) translateX(1.3px)}78%{transform:rotate(-.4deg) translateX(-.8px)}}
@keyframes lifeline-art-ring-drift{0%,100%{transform:rotate(-4deg) scaleY(.9)}50%{transform:rotate(-1.8deg) scaleY(.86) translate3d(1px,2px,0)}78%{transform:rotate(-5deg) scaleY(.93) translate3d(-1px,1px,0)}}
@keyframes lifeline-art-rope-drift{0%,100%{transform:rotate(-1deg) scaleY(calc(1 + var(--rope-stretch) * .16))}50%{transform:rotate(1.15deg) scaleY(calc(1 + var(--rope-stretch) * .16))}78%{transform:rotate(-.35deg) scaleY(calc(1 + var(--rope-stretch) * .16))}}
@keyframes surface-look-up-shimmer{0%,100%{transform:translate3d(-2%,0,0) skewX(-8deg)}50%{transform:translate3d(3%,3px,0) skewX(-5deg)}}
@keyframes ascent-bubble-rise{0%{opacity:0;transform:translate3d(0,0,0) scale(.52)}18%{opacity:.64}100%{opacity:0;transform:translate3d(var(--bubble-drift-x,12px),-92vh,0) scale(1.12)}}
.descent-lifeline .lifeline-ring{animation:lifeline-ring-drift 8.6s ease-in-out infinite}
.descent-lifeline .lifeline-rope-sway{animation:lifeline-rope-drift 6.8s ease-in-out infinite}
.descent-lifeline .lifeline-ring-art{animation:lifeline-art-ring-drift 8.6s ease-in-out infinite}
.descent-lifeline .lifeline-rope-art{animation:lifeline-art-rope-drift 6.8s ease-in-out infinite}
.descent-lifeline.is-near .lifeline-rope-sway,.descent-lifeline.is-pulling .lifeline-rope-sway{animation-duration:3.6s}
@keyframes cloud-drift{0%{transform:translate3d(-64px,-3px,0)}100%{transform:translate3d(72px,6px,0)}}
@keyframes surface-wave-fill{0%{transform:translateY(-1px) scaleY(.92)}100%{transform:translateY(8px) scaleY(1.1)}}
@keyframes surface-wave-sheen{0%{transform:translate3d(-8px,-2px,0) scaleY(.96)}100%{transform:translate3d(18px,6px,0) scaleY(1.08)}}
@keyframes surface-diffuse-luminance-a{0%{transform:translate3d(-3.5%,-1.5%,0) scale(1.01);background-position:0% 8%,100% 92%,42% 52%,8% 52%;background-size:150% 138%,172% 154%,138% 148%,130% 136%}30%{transform:translate3d(2.8%,3.5%,0) scale(1.045);background-position:22% 24%,80% 72%,60% 42%,26% 68%;background-size:164% 148%,160% 148%,146% 154%,136% 140%}63%{transform:translate3d(6.5%,-2.5%,0) scale(.985);background-position:46% 0%,62% 88%,30% 72%,48% 30%;background-size:142% 132%,184% 162%,130% 142%,146% 132%}100%{transform:translate3d(-3.5%,-1.5%,0) scale(1.01);background-position:0% 8%,100% 92%,42% 52%,8% 52%;background-size:150% 138%,172% 154%,138% 148%,130% 136%}}
@keyframes surface-diffuse-luminance-b{0%{transform:translate3d(4%,2%,0) scale(1.015);background-position:100% 12%,0% 88%,58% 44%,92% 18%;background-size:164% 146%,148% 162%,176% 142%,142% 150%}27%{transform:translate3d(-2.5%,-3%,0) scale(.985);background-position:76% 30%,24% 68%,40% 64%,66% 36%;background-size:176% 154%,140% 170%,188% 150%,136% 158%}61%{transform:translate3d(-6%,1.8%,0) scale(1.045);background-position:54% 0%,42% 100%,78% 30%,30% 6%;background-size:154% 140%,160% 150%,164% 136%,150% 144%}100%{transform:translate3d(4%,2%,0) scale(1.015);background-position:100% 12%,0% 88%,58% 44%,92% 18%;background-size:164% 146%,148% 162%,176% 142%,142% 150%}}
@keyframes planet-local-warm-breathe{0%,100%{opacity:.48}50%{opacity:.64}}
@keyframes surface-distant-school-drift{0%{transform:translate3d(-8vw,2px,0) scaleX(-1)}32%{transform:translate3d(16vw,-2px,0) scaleX(-1)}68%{transform:translate3d(40vw,3px,0) scaleX(-1)}100%{transform:translate3d(68vw,-1px,0) scaleX(-1)}}
@keyframes surface-shark-drift{0%{opacity:0;transform:translate3d(72vw,-50%,0)}12%{opacity:.1;transform:translate3d(55vw,-50%,0)}42%{opacity:.18;transform:translate3d(24vw,-50%,0)}68%{opacity:.12;transform:translate3d(-26vw,-50%,0)}86%{opacity:.04;transform:translate3d(-84vw,-50%,0)}100%{opacity:0;transform:translate3d(-125vw,-50%,0)}}
@keyframes surface-shark-tail-wag{0%{transform:rotate(-5deg)}50%{transform:rotate(0deg)}100%{transform:rotate(5deg)}}
@keyframes title-refract{0%{transform:translate(-1px,-20%) skewX(-3.6deg) scaleY(.94)}32%{transform:translate(2px,-19.4%) skewX(-1.2deg) scaleY(.98)}68%{transform:translate(-2px,-19.8%) skewX(-2.8deg) scaleY(.96)}100%{transform:translate(3px,-19%) skewX(-.8deg) scaleY(.99)}}
@keyframes star-breathe{0%{transform:scale(.9)}100%{transform:scale(1.07)}}
@keyframes sky-meteor-pass{0%,78%{opacity:0;transform:rotate(var(--meteor-angle,22deg)) translate3d(-5px,3px,0) scaleX(.16)}80.5%{opacity:.82;transform:rotate(var(--meteor-angle,22deg)) translate3d(0,0,0) scaleX(1)}82.5%{opacity:.2;transform:rotate(var(--meteor-angle,22deg)) translate3d(24px,18px,0) scaleX(.68)}84%,100%{opacity:0;transform:rotate(var(--meteor-angle,22deg)) translate3d(38px,28px,0) scaleX(.3)}}
@keyframes surface-particle-drift{0%{transform:translate3d(0,0,0);opacity:.08}100%{transform:translate3d(var(--particle-drift-x),var(--particle-drift-y),0);opacity:.16}}
@keyframes surface-wake-trace-fade{0%{opacity:var(--wake-start-opacity,.2);transform:translate(-50%,-50%) rotate(var(--wake-angle)) scale(.78)}12%{opacity:var(--wake-opacity,.5)}100%{opacity:0;transform:translate(-50%,-50%) rotate(var(--wake-angle)) scale(1.14)}}
@keyframes surface-diver-bubble-rise{0%{opacity:.42;transform:translate(-50%,-50%) scale(.64)}18%{opacity:.95}100%{opacity:0;transform:translate(calc(-50% + var(--bubble-dx)),calc(-50% + var(--bubble-dy))) scale(var(--bubble-end-scale))}}
@keyframes jelly-float{0%{transform:translateY(0)}100%{transform:translateY(-15px)}}
@keyframes jelly-glow{0%,100%{opacity:.3;transform:scale(.86)}50%{opacity:.72;transform:scale(1.12)}}
@keyframes jelly-ripple{0%{opacity:0;transform:translate(-50%,-50%) scale(.55)}18%{opacity:.8}100%{opacity:0;transform:translate(-50%,-50%) scale(2.2)}}
body.is-transitioning .transition-layer{display:block;opacity:1}
body.is-transitioning .transition-wave{opacity:.96;animation:transition-wave-in 2.2s cubic-bezier(.2,.8,.2,1) forwards}
body.is-transitioning .transition-wave:nth-of-type(2){animation-delay:.24s}
body.is-transitioning .transition-wave:nth-of-type(3){animation-delay:.48s}
body.is-transitioning .transition-emoji{opacity:1;animation:transition-emoji-in 1.5s cubic-bezier(.2,.8,.2,1) forwards}
@keyframes transition-wave-in{0%{transform:translateY(100%) scaleY(1.05)}68%{transform:translateY(-3%) scaleY(1.14)}82%{transform:translateY(1%) scaleY(1.04)}100%{transform:translateY(0) scaleY(1)}}
@keyframes transition-emoji-in{0%{transform:translate(-50%,-50%) scale(.25) rotate(-10deg)}28%{transform:translate(-50%,-50%) scale(.92) rotate(0)}62%{transform:translate(-50%,-62%) scale(1.02) rotate(3deg)}100%{transform:translate(-50%,-72%) scale(.22) rotate(10deg);opacity:0}}
@keyframes deep-sea-light-sway{0%,100%{opacity:.43;transform:rotate(calc(var(--beam-angle) - 1deg)) translate3d(-1%,0,0)}50%{opacity:.6;transform:rotate(calc(var(--beam-angle) + 1.5deg)) translate3d(2%,5px,0)}}
@keyframes deep-sea-caustic-drift{0%,100%{opacity:.12;transform:translate3d(-2%,0,0) skewX(-8deg)}50%{opacity:.21;transform:translate3d(3%,12px,0) skewX(-5deg)}}
@media(prefers-reduced-motion:reduce){.surface-scene-layer,.sky-cloud,.sky-star,.sky-meteor,.surface-bubble,.surface-water-particle,.surface-water-particles::before,.surface-water-particles::after,.surface-wake-trace,.surface-wave-layer,.surface-wave-fill,.surface-wave-sheen,.surface-fish-distant,.surface-shark-shadow,.surface-shark-tail,.title-underwater,.jelly-return,.jelly-float,.drift-bottle-float,.dive-rays,.transition-wave,.transition-emoji,.dive-vortex,.dive-vortex-ring,.dive-vortex-core,.sea-light-beam,.sea-caustic-suggestion,.descent-lifeline .lifeline-ring,.descent-lifeline .lifeline-rope-sway,.descent-lifeline .lifeline-ring-art,.descent-lifeline .lifeline-rope-art{animation:none!important;transition:none!important}.sky-details::after{transition:none!important}.surface-blue-hour-motes{transition:none!important}.dive-entry{transition:none!important}.drift-contact-note{transition:none!important}}
@media(max-width:980px){.surface-whale-layer{left:42%;top:12%;width:clamp(330px,42vw,500px)}}
@media(max-width:700px){.surface-whale-layer{left:7%;top:11%;width:min(90vw,420px)}}
@media(prefers-reduced-motion:reduce){.surface-lifebuoy-float{animation:none!important}}
@keyframes deep-entry-fish-pass-a{0%{transform:translate3d(-9vw,6px,0) rotate(-2deg)}22%{transform:translate3d(-4vw,-8px,0) rotate(-4deg)}47%{transform:translate3d(2vw,1px,0) rotate(1deg)}72%{transform:translate3d(8vw,12px,0) rotate(5deg)}100%{transform:translate3d(14vw,0,0) rotate(1deg)}}
@keyframes deep-entry-fish-pass-b{0%{transform:scaleX(-1) translate3d(-11vw,3px,0) rotate(2deg)}24%{transform:scaleX(-1) translate3d(-5vw,10px,0) rotate(5deg)}51%{transform:scaleX(-1) translate3d(1vw,-2px,0) rotate(-1deg)}77%{transform:scaleX(-1) translate3d(7vw,-10px,0) rotate(-4deg)}100%{transform:scaleX(-1) translate3d(12vw,2px,0) rotate(-1deg)}}
@keyframes deep-open-water-drift{0%,100%{background-position:50% 0%}48%{background-position:50.6% 1.2%}73%{background-position:49.4% -.7%}}
@keyframes deep-surface-haze-drift{0%,100%{transform:translate3d(-50%,0,0) scale(1)}38%{transform:translate3d(-48.5%,1.4vh,0) scale(1.035)}72%{transform:translate3d(-51.2%,-.8vh,0) scale(.985)}}
@keyframes deep-open-light-zone-a{0%{transform:translate3d(-2.8%,-.5vh,0) rotate(-4.6deg) scale(1.02)}27%{transform:translate3d(-.4%,.5vh,0) rotate(-2.3deg) scale(1.035)}54%{transform:translate3d(2.2%,1.4vh,0) rotate(-1deg) scale(1.055)}78%{transform:translate3d(.3%,.2vh,0) rotate(-3.8deg) scale(1.018)}100%{transform:translate3d(-2.8%,-.5vh,0) rotate(-4.6deg) scale(1.02)}}
@keyframes deep-open-light-zone-b{0%{transform:translate3d(2.4%,-.4vh,0) rotate(5.4deg) scale(.99)}31%{transform:translate3d(.6%,.8vh,0) rotate(3.2deg) scale(1.025)}59%{transform:translate3d(-2.1%,1.7vh,0) rotate(7deg) scale(1.045)}82%{transform:translate3d(-.2%,.1vh,0) rotate(4.1deg) scale(1.01)}100%{transform:translate3d(2.4%,-.4vh,0) rotate(5.4deg) scale(.99)}}
@keyframes deep-scroll-cue-breathe{0%,100%{opacity:.68;transform:translate3d(-50%,0,0)}50%{opacity:.9;transform:translate3d(-50%,5px,0)}}
@keyframes deep-water-flow-a{0%{transform:translate3d(-3.5%,-1.2%,0) scale(1.02) rotate(-1deg);background-position:5% 14%,92% 72%,44% 90%}28%{transform:translate3d(1.8%,2.6%,0) scale(1.045) rotate(.4deg);background-position:21% 26%,76% 61%,56% 73%}61%{transform:translate3d(4.2%,-.8%,0) scale(1.015) rotate(1.1deg);background-position:38% 9%,62% 83%,33% 59%}82%{transform:translate3d(-.8%,1.7%,0) scale(1.04) rotate(-.25deg);background-position:16% 34%,84% 49%,61% 82%}100%{transform:translate3d(-3.5%,-1.2%,0) scale(1.02) rotate(-1deg);background-position:5% 14%,92% 72%,44% 90%}}
@keyframes deep-water-flow-b{0%{transform:translate3d(3.4%,1.6%,0) scale(1.03) rotate(.8deg);background-position:82% 8%,12% 86%}34%{transform:translate3d(-1.6%,-2.2%,0) scale(1.055) rotate(-.7deg);background-position:64% 24%,31% 68%}67%{transform:translate3d(-4.1%,1.2%,0) scale(1.018) rotate(-1.2deg);background-position:49% 5%,44% 91%}100%{transform:translate3d(3.4%,1.6%,0) scale(1.03) rotate(.8deg);background-position:82% 8%,12% 86%}}
