/* Final cover: centered italic thanks, a small shoal and a quiet seabed. */
#scene-cierre .closing-thanks{position:absolute;inset:0 auto 0 0;width:52.3%;display:flex;align-items:center;justify-content:center;isolation:isolate;color:#f0f4e7;z-index:6}
#scene-cierre .closing-thanks-text{display:block;position:relative;z-index:1;text-align:center;font:italic 400 clamp(28px,3.45vw,92px)/1.12 var(--serif);letter-spacing:-.04em;white-space:nowrap}
#scene-cierre .closing-fish-water{position:absolute;inset:0;width:100%;height:100%;overflow:hidden;z-index:0;pointer-events:none;fill:none;stroke:#e5f1dc;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round}
.closing-fish{--swim-time:14s;--swim-delay:0s;opacity:.65}
.closing-fish-curious{transform:translate(65px,165px);animation:closing-curious-swim var(--swim-time) ease-in-out infinite}
.closing-fish-shy{--swim-time:17s;--swim-delay:-7s;transform:translate(935px,172px);animation:closing-shy-swim var(--swim-time) ease-in-out var(--swim-delay) infinite;opacity:.56}
.closing-fish-passing{--swim-time:24s;--swim-delay:-9s;transform:translate(120px,267px);animation:closing-lower-swim var(--swim-time) ease-in-out var(--swim-delay) infinite;opacity:.42}
.closing-fish-small-one{--swim-time:29s;--swim-delay:-4s;transform:translate(110px,72px);animation:closing-upper-swim var(--swim-time) ease-in-out var(--swim-delay) infinite;opacity:.4}
.closing-fish-small-two{--swim-time:29s;--swim-delay:-3s;transform:translate(180px,85px);animation:closing-upper-swim var(--swim-time) ease-in-out var(--swim-delay) infinite;translate:35px 19px;opacity:.46}
.closing-fish-small-three{--swim-time:32s;--swim-delay:-16s;transform:translate(280px,250px);animation:closing-lower-swim var(--swim-time) ease-in-out var(--swim-delay) infinite;translate:15px -19px;opacity:.35}
.closing-fish-small-four{--swim-time:29s;--swim-delay:-1.5s;transform:translate(240px,100px);animation:closing-upper-swim var(--swim-time) ease-in-out var(--swim-delay) infinite;translate:-9px 36px;opacity:.36}
.closing-fish-facing{animation:closing-fish-turn var(--swim-time) ease-in-out var(--swim-delay) infinite}
.closing-fish-shy .closing-fish-facing{animation-name:closing-fish-turn-left}
.closing-fish-passing .closing-fish-facing,.closing-fish[class*="small-"] .closing-fish-facing{animation-name:closing-cruising-turn}
.closing-fish-tail{transform-origin:-20px 0;animation:closing-tail .65s ease-in-out infinite alternate}
.closing-fish-mouth{transform-origin:21px 0;animation:closing-mouth .44s ease-in-out infinite alternate}
.closing-fish-eye{fill:#e5f1dc;stroke:none}
.closing-fish-fin{opacity:.65}
.closing-letter-baseline{display:inline-block;width:0;height:0;vertical-align:baseline}
.closing-peck-ring{opacity:0;animation:closing-peck-impact 14s linear infinite;stroke-width:.8}
.closing-peck-impact-right .closing-peck-ring{animation-duration:17s;animation-delay:-7s}
/* Each nose lands on the measured glyph, then springs away in under 250 ms. */
@keyframes closing-curious-swim{
 0%,96%,100%{transform:translate(65px,165px)}
 24%{transform:translate(calc(var(--peck-x,170px) - 90px),calc(var(--peck-y,155px) - 20px))}
 32%,42%{transform:translate(calc(var(--peck-x,170px) - 18px),var(--peck-y,155px))}
 35.5%,36%,45.5%,46%{transform:translate(var(--peck-x,170px),var(--peck-y,155px))}
 37.5%{transform:translate(calc(var(--peck-x,170px) - 35px),calc(var(--peck-y,155px) - 12px)) rotate(-12deg)}
 47.5%{transform:translate(calc(var(--peck-x,170px) - 45px),calc(var(--peck-y,155px) + 14px)) rotate(9deg)}
 56%,65%{transform:translate(calc(var(--peck-x,170px) - 70px),calc(var(--peck-y,155px) + 24px))}
 83%{transform:translate(110px,190px)}
}
@keyframes closing-shy-swim{
 0%,96%,100%{transform:translate(935px,172px)}
 24%{transform:translate(calc(var(--peck-x,830px) + 85px),calc(var(--peck-y,190px) + 20px))}
 32%,42%{transform:translate(calc(var(--peck-x,830px) + 18px),var(--peck-y,190px))}
 35.5%,36%,45.5%,46%{transform:translate(var(--peck-x,830px),var(--peck-y,190px))}
 37.5%{transform:translate(calc(var(--peck-x,830px) + 35px),calc(var(--peck-y,190px) + 12px)) rotate(-12deg)}
 47.5%{transform:translate(calc(var(--peck-x,830px) + 45px),calc(var(--peck-y,190px) - 14px)) rotate(9deg)}
 56%,65%{transform:translate(calc(var(--peck-x,830px) + 70px),calc(var(--peck-y,190px) - 24px))}
 85%{transform:translate(920px,200px)}
}
@keyframes closing-fish-turn{0%,59%,100%{transform:scaleX(1)}65%,96%{transform:scaleX(-1)}}
@keyframes closing-fish-turn-left{0%,59%,100%{transform:scaleX(-1)}65%,96%{transform:scaleX(1)}}
@keyframes closing-cruising-turn{0%,44%,100%{transform:scaleX(1)}50%,94%{transform:scaleX(-1)}}
@keyframes closing-lower-swim{0%,100%{transform:translate(120px,267px)}25%{transform:translate(500px,252px)}44%,50%{transform:translate(875px,267px)}73%{transform:translate(500px,280px)}94%{transform:translate(120px,267px)}}
@keyframes closing-upper-swim{0%,100%{transform:translate(110px,65px)}25%{transform:translate(460px,78px)}44%,50%{transform:translate(835px,65px)}73%{transform:translate(460px,53px)}94%{transform:translate(110px,65px)}}
@keyframes closing-tail{from{transform:scaleX(.65)}to{transform:scaleX(1)}}
@keyframes closing-mouth{from{transform:scaleY(.35)}to{transform:scaleY(1)}}
@keyframes closing-peck-impact{0%,35.4%,42%,45.4%,52%,100%{opacity:0;transform:scale(.45)}35.5%,45.5%{opacity:.7;transform:scale(.45)}40%,50%{opacity:0;transform:scale(2.6)}}
#scene-cierre .closing-seabed{position:absolute;left:0;bottom:6px;width:52.3%;height:auto;z-index:5;pointer-events:none;fill:none;stroke:#e5f1dc;stroke-width:1.15;stroke-linecap:round;stroke-linejoin:round;opacity:.62}
.closing-crab{animation:closing-crab-walk var(--walk-duration) ease-in-out var(--walk-delay) infinite}
.closing-crab-1,.closing-crab-3{animation-direction:reverse}
.crab-legs{transform-origin:0 0;animation:closing-crab-steps .62s ease-in-out infinite alternate}
.crab-legs-right{animation-delay:-.62s}
.crab-claws{transform-origin:0 -10px;animation:closing-crab-claws 4s ease-in-out infinite alternate}
@keyframes closing-crab-walk{0%,100%{transform:translateX(-35px)}48%,52%{transform:translateX(35px)}}
@keyframes closing-crab-steps{from{transform:rotate(-3deg)}to{transform:rotate(3deg)}}
@keyframes closing-crab-claws{from{transform:rotate(-2deg)}to{transform:rotate(2deg)}}
.scene:not(.active) .closing-thanks *,.scene:not(.active) .closing-seabed *,.sequence-paused .closing-thanks *,.sequence-paused .closing-seabed *{animation-play-state:paused!important}
body.reduce-motion .closing-thanks *,body.reduce-motion .closing-seabed *{animation:none!important}
@media(prefers-reduced-motion:reduce){body:not(.force-motion) .closing-thanks *,body:not(.force-motion) .closing-seabed *{animation:none!important}}
@media(max-width:900px){#scene-cierre .closing-thanks-text{font-size:3.45vw}}
