/* Gallery transition and leaf direction. */
.room { position:relative; }
.room__stage { position:relative; width:100%; }
.room__gallery { position:relative; z-index:2; }
.room__bottom { justify-content:center; }
.room__source { margin-inline:auto; text-align:center; }

/* Anchor the hanging lounge foliage cleanly behind the bottom-right of the gallery frame */
.tropical-edge--hookah-hanging {
  position:absolute;
  top:calc(100% - 14px);
  bottom:auto;
  right:0;
  left:auto;
  width:240px;
  height:160px;
  z-index:1;
  pointer-events:none;
  overflow:visible;
  -webkit-mask-image:linear-gradient(180deg, transparent 0%, #000 8%, #000 100%);
  mask-image:linear-gradient(180deg, transparent 0%, #000 8%, #000 100%);
}
.tropical-edge--hookah-hanging img {
  position:static;
  display:block;
  width:240px;
  height:auto;
}

.tropical-edge--visit { position:absolute; right:0; left:auto; bottom:-140px; top:auto; width:420px; height:280px; z-index:2; pointer-events:none; overflow:visible; }
.tropical-edge--visit img { position:static; display:block; width:420px; height:auto; transform:none; }

/* Equal-weight kitchen list with a quiet, transient preview. */
.food-table__plate { width:260px; height:210px; left:0; margin:16px auto 0; opacity:0!important; visibility:hidden; transform:none!important; transition:opacity 160ms ease; }
.food-table.has-preview .food-table__plate { opacity:1!important; visibility:visible; }
.food-table__plate img { width:100%; height:100%; object-fit:contain; }
.food-table__tag { padding:0; min-height:20px; text-align:center; }
.food-table__content { gap:0; padding-top:4px; }
.food-table__alternatives details { border:0; }
.food-table__alternatives summary { min-height:60px; padding:18px 0; border:0; font-size:20px; }
.food-table__alternatives summary i { display:none; }
.food-table__alternatives details.is-preview summary { color:#7a7951; }
.food-table__alternatives details p { max-width:52ch; font-size:14px; }

/* A second instance of the supplied cloud shader behind the footer. */
.afterhours { background:var(--linen); }
.afterhours > .footer-sky { display:block; position:absolute; inset:0; z-index:0; pointer-events:none; background:linear-gradient(var(--linen),#bdd8e8); mask-image:linear-gradient(transparent,#000 35%); -webkit-mask-image:linear-gradient(transparent,#000 35%); }
.footer-sky canvas { display:block; width:100%; height:100%; opacity:0; }
.footer-sky canvas.is-ready { opacity:.8; }

@media(max-width:700px) {
  .room__source { display:inline-block; padding:12px; font-size:12px; }
  .room__bottom { padding-bottom:36px; }
  .tropical-edge--hookah-hanging { width:140px; height:95px; top:calc(100% - 8px); bottom:auto; right:0; }
  .tropical-edge--hookah-hanging img { width:140px; }
  .tropical-edge--visit { width:190px; height:127px; bottom:-60px; right:-8px; }
  .tropical-edge--visit img { width:190px; }
  .food-table { display:block; }
  .food-table h2 { margin-bottom:20px; }
  .food-table__plate { display:none; }
  .food-table__tag { display:none; }
  .food-table__alternatives summary { font-size:17px; min-height:60px; gap:12px; }
  .food-table__alternatives summary > span:last-child { white-space:nowrap; font-size:14px; }
  .dish-phone-preview { display:block; width:150px; height:120px; object-fit:contain; margin:4px auto 12px; }
  .afterhours { color:var(--forest); }
  .phone-footer .header-logo img { filter:brightness(0) saturate(100%) invert(20%) sepia(15%) saturate(1000%) hue-rotate(105deg); }
  .phone-footer__actions a { background:var(--forest); color:var(--linen); }
  .phone-footer__actions a + a { background:rgba(36,62,53,.1); color:var(--forest); }
}

@media(min-width:701px) { .dish-phone-preview { display:none; } }
.afterhours > .footer-sky[aria-hidden] { display:block; }
