/* Moonlit Lanai: styles are confined to the menu; the live sky keeps its own palette. */
#menu{--ink:#f6edd7;--muted:#b9ced5;--line:#41616e;--blue:#a6dcd8;--sea:#d6c397;max-width:none;background:radial-gradient(ellipse at 5% 40%,#416f7124,transparent 50%),#102f43;color:var(--ink)}
#menu .section-heading{position:relative;gap:35px}
#menu .section-heading>p{padding-right:95px;max-width:430px;font-size:14px}
#menu .section-heading h2{font:400 52px/1.1 Georgia,serif;letter-spacing:-2px}
#menu .section-heading h2 em{color:#e2c993}
#menu .heading-art{position:absolute;right:0;bottom:0;width:90px;height:90px;color:var(--sea);opacity:.8}
#menu .island-drawing{width:120px;height:110px;color:var(--sea);display:block;margin-bottom:20px}
#menu .menu-tabs{margin-bottom:34px}
#menu .menu-tabs button{color:#c5dbe0;border-color:#4a707c}
#menu .menu-tabs button:hover{border-color:#e2c993}
#menu .menu-tabs button.active{color:#102f43;background:#e2c993;border-color:#e2c993}
#menu .menu-block{position:relative}
#menu .menu-label{padding-top:0}
#menu .menu-label h3{font:italic 400 34px/1.25 Georgia,serif;color:#e2c993}
#menu .menu-label p{color:#a9c9ce}
#menu .menu-label>span{font-size:72px;color:#668c98;opacity:.35}
#menu .menu-label:after{content:'';display:block;width:130px;height:46px;margin-top:24px;opacity:.6;background:repeating-radial-gradient(ellipse at 50% 130%,transparent 0 9px,#96b8b52a 10px 11px,transparent 12px 20px)}
#menu .menu-items{border-top:1px solid #69868b}
#menu .menu-item{position:relative;isolation:isolate;align-items:start;min-height:158px;padding:26px 0 58px;border-color:#41616e}
#menu .menu-item>div{position:relative;z-index:2;flex:1;min-width:0;padding-right:5px}
#menu .menu-item h4{font:500 25px/1.3 Georgia,serif;color:#f6edd7}
#menu .menu-item p{font-size:15px}
#menu .menu-item small{color:#a6dcd8}
#menu .tag{background:#315462;color:#c2e8df}
#menu .menu-price{position:relative;z-index:2;display:grid;grid-template-columns:auto auto auto;align-items:start;align-self:start;column-gap:2px;line-height:1;flex-shrink:0;text-align:center;font-variant-numeric:tabular-nums;color:#e2c993;border:1px solid #a89d7970;padding:14px 9px 12px;min-width:78px;border-radius:6px 6px 24px 24px}
#menu .menu-price .dollar{font-size:12px;margin-top:6px}
#menu .menu-price .whole{font:400 34px/1 Georgia,serif}
#menu .menu-price .cents{font-size:12px;border-bottom:1px solid currentColor;margin-top:5px;padding-bottom:2px}
#menu .menu-price .price-unit{grid-column:1/-1;font:500 8px 'DM Sans',sans-serif;text-transform:uppercase;letter-spacing:1.5px;margin-top:5px}
#menu .featured{background:linear-gradient(125deg,#264d5d,#1d3d50);border:1px solid #8a937066;border-radius:10px;padding:26px 26px 64px!important}
#menu .featured .eyebrow{color:#e2c993}
#menu .menu-foot a{color:#c2e8df}
/* Layered swells occupy their own band, clear of descriptions and prices. */
#menu .character-tide{position:absolute;pointer-events:none;z-index:0;right:0;bottom:1px;width:min(66%,365px);height:49px;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 18%,#000 87%,transparent)}
#menu .character-tide svg{display:block;width:100%;height:100%;overflow:visible}
#menu .swell-back{fill:#62bcb6;fill-opacity:.15;animation:menu-swell-back 16s ease-in-out infinite;animation-delay:var(--item-delay,0s)}
#menu .swell-front{fill:#82c9c1;fill-opacity:.15;animation:menu-swell-front 11s ease-in-out infinite;animation-delay:var(--item-delay,0s)}
#menu .foam-crest{fill:none;stroke:#c4e9de;stroke-opacity:.52;stroke-width:1.3;animation:menu-swell-front 11s ease-in-out infinite;animation-delay:var(--item-delay,0s)}
#menu .foam-specks{fill:#d8efe2;opacity:.45;animation:menu-foam-drift 11s ease-in-out infinite;animation-delay:var(--item-delay,0s)}
#menu .featured .character-tide{right:25px;bottom:5px}
@keyframes menu-swell-back{0%,100%{transform:translate(-18px,1px)}50%{transform:translate(15px,-2px)}}
@keyframes menu-swell-front{0%,100%{transform:translate(17px,2px)}50%{transform:translate(-21px,-2px)}}
@keyframes menu-foam-drift{0%,100%{transform:translate(14px,1px);opacity:.2}50%{transform:translate(-18px,-2px);opacity:.65}}
.motion-paused #menu .character-tide *,#menu .scene-resting .character-tide *{animation-play-state:paused!important}
@media(max-width:700px){
 #menu .section-heading h2{font-size:42px}
 #menu .section-heading>p{font-size:13px;padding-right:70px;margin-top:20px}
 #menu .heading-art{width:67px;height:67px}
 #menu .menu-tabs{gap:7px;margin-bottom:28px}
 #menu .menu-tabs button{font-size:14px;padding:9px 13px}
 #menu .menu-block{grid-template-columns:1fr;gap:16px}
 #menu .menu-label{min-height:78px;padding:10px 76px 12px 0}
 #menu .menu-label .island-drawing{position:absolute;right:0;top:0;width:65px;height:70px}
 #menu .menu-label>span{display:none}
 #menu .menu-label h3{font-size:28px}
 #menu .menu-label p{font-size:10px;margin-bottom:0}
 #menu .menu-item{gap:15px;padding-bottom:54px;min-height:160px}
 #menu .menu-item h4{font-size:22px}
 #menu .menu-item p{font-size:13px}
 #menu .menu-price{min-width:67px;padding:12px 7px}
 #menu .menu-price .whole{font-size:30px}
 #menu .menu-price .cents,#menu .menu-price .dollar{font-size:10px}
 #menu .menu-price .price-unit{font-size:7px}
 #menu .character-tide{height:43px;width:78%}
 #menu .featured .character-tide{right:24px;width:76%}
 #menu .menu-foot a,#menu .menu-foot p{font-size:11px}
}
@media(prefers-reduced-motion:reduce){#menu .character-tide *{animation:none!important}#menu .foam-specks{opacity:.4}}
