/* Final-slide water effect and presentation controls. */
body[data-wave-phase="running"] .deck-controls,body[data-wave-phase="running"] .reveal .progress{visibility:hidden}
#water{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:1000}
#water[hidden]{display:none!important}
body[data-wave-phase="running"] .reveal{filter:brightness(.60) saturate(.75)}
.tank-water-caption{position:fixed;inset:0;z-index:1005;pointer-events:none;opacity:0;color:#ecfcff;font-family:Arial,sans-serif;text-shadow:0 2px 14px #002638,0 0 50px #a7f4ff80;transition:opacity .6s}
.tank-water-caption>span{position:absolute;top:50%;left:50%;white-space:nowrap;line-height:1.2;font-weight:600;opacity:0}
.phygital-source{font-size:clamp(16px,3.4vw,48px);letter-spacing:.08em}
.phygital-physical,.phygital-phy{color:#ffd09b}
.phygital-plus{font-size:clamp(18px,3vw,42px);color:#83d5e8;transform:translate(-50%,-50%)}
.phygital-result{font-size:clamp(32px,6.4vw,88px);letter-spacing:.025em;transform:translate(-50%,-50%)}
.phygital-acknowledgement{position:absolute;left:0;right:0;bottom:max(28px,6vh);margin:0;padding:0 24px;text-align:center;font-size:clamp(20px,2.6vw,38px);line-height:1.5;font-weight:400;letter-spacing:.035em;opacity:0}
/* The wave clock advances these paused keyframes so hidden tabs stay in sync. */
body[data-wave-phase="running"] .phygital-physical{animation:physical-approach 3.6s ease-in-out both paused}
body[data-wave-phase="running"] .phygital-digital{animation:digital-approach 3.6s ease-in-out both paused}
body[data-wave-phase="running"] .phygital-plus{animation:phygital-plus 3.6s ease-in-out both paused}
body[data-wave-phase="running"] .phygital-result{animation:phygital-merge 3.6s ease-in-out both paused}
body[data-wave-phase="running"] .phygital-acknowledgement{animation:acknowledgement-reveal 3.6s ease-out both paused;animation-delay:var(--merge-delay,0ms)}
body[data-wave-phase="running"] .tank-water-caption>span{animation-delay:var(--merge-delay,0ms)}
@keyframes physical-approach{
  0%,28%{opacity:1;transform:translate(calc(-100% - .75em),-50%)}
  62%{opacity:1;transform:translate(calc(-100% - .05em),-50%)}
  78%,100%{opacity:0;transform:translate(calc(-100% + .24em),-50%)}
}
@keyframes digital-approach{
  0%,28%{opacity:1;transform:translate(.75em,-50%)}
  62%{opacity:1;transform:translate(.05em,-50%)}
  78%,100%{opacity:0;transform:translate(-.24em,-50%)}
}
@keyframes phygital-plus{
  0%,28%{opacity:1;transform:translate(-50%,-50%) scale(1)}
  50%,100%{opacity:0;transform:translate(-50%,-50%) scale(.5)}
}
@keyframes phygital-merge{
  0%,62%{opacity:0;transform:translate(-50%,-50%) scale(.88)}
  86%,100%{opacity:1;transform:translate(-50%,-50%) scale(1)}
}
@keyframes acknowledgement-reveal{
  0%,70%{opacity:0;transform:translateY(6px)}
  90%,100%{opacity:1;transform:translateY(0)}
}
body[data-wave-subphase="immersed"] .tank-water-caption{opacity:.95}
.tank-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@media print{#water,.tank-water-caption{display:none!important}}
