/* Decorative cooking steam, confined to the reservation hero photograph. */
.rsv-steam-photo{isolation:isolate}
.rsv-steam{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden;
  mask-image:linear-gradient(to top,transparent,black 15%,black 78%,transparent);
  -webkit-mask-image:linear-gradient(to top,transparent,black 15%,black 78%,transparent)}
.rsv-steam i{position:absolute;bottom:5%;left:var(--x);width:25%;height:68%;
  border-radius:48% 62% 40% 55%;opacity:0;filter:blur(13px);
  background:
    radial-gradient(ellipse at 42% 72%,rgba(255,255,255,.5),transparent 48%),
    radial-gradient(ellipse at 65% 43%,rgba(255,255,255,.38),transparent 47%),
    radial-gradient(ellipse at 35% 18%,rgba(255,255,255,.3),transparent 43%);
  transform-origin:50% 90%;animation:rsv-steam-rise var(--duration) var(--delay) linear infinite}
.rsv-steam i:nth-child(1){--x:13%;--duration:8.8s;--delay:-3s;--drift:10%}
.rsv-steam i:nth-child(2){--x:36%;--duration:10.7s;--delay:-8s;--drift:-18%}
.rsv-steam i:nth-child(3){--x:58%;--duration:9.6s;--delay:-5s;--drift:20%}
.rsv-steam i:nth-child(4){--x:27%;--duration:11.8s;--delay:-1s;--drift:25%}
@keyframes rsv-steam-rise{
  0%{opacity:0;transform:translate3d(0,24%,0) scale(.65,.8) rotate(-5deg)}
  22%{opacity:.48}
  52%{opacity:.4;transform:translate3d(var(--drift),-24%,0) scale(1,1.08) rotate(7deg)}
  100%{opacity:0;transform:translate3d(0,-83%,0) scale(1.45,1.25) rotate(-9deg)}
}
@media(max-width:640px){.rsv-steam i{filter:blur(8px)}}
@media(prefers-reduced-motion:reduce){.rsv-steam{display:none}.rsv-steam i{animation:none}}
