:root{
  --bg:#071820;
  --ivory:#f3ece1;
  --sand:#eadbc7;
  --ink:#0d2230;
  --teal:#0b6076;
  --teal-deep:#07495a;
  --line:rgba(255,255,255,.18);
  --ease:cubic-bezier(.2,.75,.25,1);
  --safe-top:max(16px,env(safe-area-inset-top));
  --safe-bottom:max(14px,env(safe-area-inset-bottom));
  --pad-x:clamp(18px,4.6vw,48px);
  --media-opacity:.985;
  --media-blur:.18px;
  --media-brightness:.87;
  --media-saturation:.83;
  --media-scale:1.003;
  --overlay-top:.09;
  --overlay-middle:.18;
  --overlay-bottom:.31;
  --overlay-vignette:.045;
  --overlay-desktop-sides:.035;
}
*{box-sizing:border-box}
html,body{width:100%;height:100%;margin:0;background:var(--bg)}
body{
  overflow:hidden;
  color:#fff;
  font-family:"Vazirmatn",sans-serif;
  -webkit-font-smoothing:antialiased;
  text-rendering:geometricPrecision;
}
button,a{font:inherit;color:inherit;-webkit-tap-highlight-color:transparent}
a{text-decoration:none}
button{cursor:pointer}
.landing{position:relative;isolation:isolate;width:100%;height:100svh;min-height:680px;overflow:hidden;background:var(--bg)}
.media,.media__visual,.media__poster,.media__poster img,.media__video,.media__overlay,.media__grain{position:absolute;inset:0;width:100%;height:100%}
.media{z-index:-3;overflow:hidden}
.media__visual{
  opacity:var(--media-opacity);
  filter:blur(var(--media-blur)) brightness(var(--media-brightness)) saturate(var(--media-saturation));
  transform:scale(var(--media-scale));
  transform-origin:center;
}
.media__poster img,.media__video{object-fit:cover;object-position:center}
.media__video{z-index:1;opacity:0;transition:opacity .8s var(--ease)}
.media__video.is-ready{opacity:1}
.media__overlay{
  z-index:2;
  pointer-events:none;
  background:
    linear-gradient(180deg,
      rgba(4,25,34,var(--overlay-top)) 0%,
      rgba(2,20,28,var(--overlay-middle)) 46%,
      rgba(2,18,26,var(--overlay-bottom)) 100%),
    radial-gradient(ellipse at 50% 44%,transparent 36%,rgba(0,0,0,var(--overlay-vignette)) 100%);
}
.media__grain{
  z-index:3;
  pointer-events:none;
  opacity:.045;
  mix-blend-mode:soft-light;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.5'/%3E%3C/svg%3E")
}
.shell{
  position:relative;
  z-index:2;
  width:100%;
  height:100%;
  max-width:1260px;
  margin:0 auto;
  padding:calc(var(--safe-top) + 4px) var(--pad-x) calc(var(--safe-bottom) + 10px);
  display:grid;
  grid-template-rows:auto minmax(0,1fr);
}
.topbar{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  direction:ltr;
  opacity:0;
  transform:translateY(-8px);
  animation:reveal .65s .08s var(--ease) forwards;
}
.language{display:inline-flex;align-items:center;gap:12px;direction:ltr}
.language__item{appearance:none;border:0;background:transparent;padding:5px 0;font-family:Inter,sans-serif;font-size:12px;font-weight:600;letter-spacing:.26em;opacity:.55}
.language__item.is-active{opacity:1}
.language__divider{width:1px;height:14px;background:rgba(255,255,255,.48)}
.topline{
  display:grid;
  text-align:right;
  direction:ltr;
  color:rgba(255,255,255,.95);
  font-family:"Allura","Segoe Script",cursive;
  font-size:clamp(24px,2.75vw,33px);
  font-style:normal;
  font-weight:400;
  line-height:1;
  letter-spacing:.01em;
  text-shadow:0 2px 18px rgba(0,0,0,.18);
}
.experience{align-self:center;width:100%;display:grid;justify-items:center;gap:clamp(12px,1.55vh,18px);min-height:0}
.main-stage{width:100%;display:grid;justify-items:center;align-content:center;gap:clamp(12px,1.7vh,18px);min-height:0}
.editorial{
  position:relative;
  justify-self:center;
  text-align:center;
  direction:ltr;
  padding:clamp(8px,1.1vh,12px) clamp(12px,2vw,24px) clamp(6px,.8vh,10px);
  opacity:0;
  transform:translateY(10px);
  animation:reveal .8s .16s var(--ease) forwards;
}
.editorial::before{
  content:"";
  position:absolute;
  left:50%;
  top:48%;
  transform:translate(-50%,-50%);
  width:min(100vw,860px);
  height:clamp(160px,24vh,270px);
  background:radial-gradient(ellipse at center, rgba(255,248,236,.12) 0%, rgba(17,53,67,.18) 34%, rgba(6,24,34,.10) 54%, rgba(6,24,34,0) 74%);
  filter:blur(16px);
  z-index:-1;
  pointer-events:none;
}
.editorial__eyebrow{
  font-family:Inter,sans-serif;
  font-size:clamp(10px,1.18vw,13.8px);
  font-weight:600;
  letter-spacing:.30em;
  color:#0d4454;
  white-space:nowrap;
}
.editorial__wave{height:16px;margin:6px auto 2px;color:rgba(15,87,106,.92);filter:drop-shadow(0 2px 10px rgba(0,0,0,.10))}
.editorial__wave svg{width:48px;height:16px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round}
.editorial__title{
  margin:0;
  display:grid;
  gap:0;
  font-family:"Cormorant Garamond",serif;
  font-size:clamp(35px,min(5.4vw,6.2vh),67px);
  font-weight:400;
  line-height:.84;
  letter-spacing:-.025em;
  color:#14586b;
  text-transform:uppercase;
  text-shadow:0 1px 0 rgba(255,255,255,.08),0 6px 18px rgba(0,0,0,.20);
}
.editorial__title span{display:block}
.editorial__subtitle{
  margin:16px 0 0;
  font-family:Inter,sans-serif;
  font-size:clamp(9.3px,1.02vw,11.6px);
  font-weight:650;
  letter-spacing:.17em;
  color:#0f4457;
  white-space:nowrap;
  text-shadow:0 1px 8px rgba(255,255,255,.06),0 2px 12px rgba(0,0,0,.12);
}
.editorial__subtitle b{font-weight:700;padding:0 .55em}
.venues{
  justify-self:center;
  direction:ltr;
  width:min(100%,760px);
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:clamp(14px,1.7vw,22px);
  padding:clamp(26px,3.2vh,32px) 0 clamp(16px,2vh,22px);
  opacity:0;
  transform:translateY(14px);
  animation:reveal .9s .28s var(--ease) forwards;
}
.venue-card{
  position:relative;
  direction:rtl;
  min-width:0;
  aspect-ratio:1.28;
  border:1px solid rgba(255,255,255,.76);
  border-radius:26px;
  padding:0;
  overflow:hidden;
  background:#0c3b4d;
  box-shadow:0 18px 44px rgba(0,0,0,.24);
  transition:transform .22s var(--ease),box-shadow .22s ease,border-color .22s ease;
}
.venue-card:hover{transform:translateY(-3px)}
.venue-card.is-active{border-color:rgba(255,255,255,.95);box-shadow:0 22px 52px rgba(4,69,88,.35)}
.venue-card__photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(1.015)}
.venue-card__shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(3,26,36,.18) 0%,rgba(3,28,38,.08) 40%,rgba(2,22,30,.60) 100%)}
.venue-card__brand{position:absolute;top:11%;left:50%;transform:translateX(-50%);width:min(84%,260px);display:grid;justify-items:center;gap:3px;text-align:center;color:#fff;z-index:2;text-shadow:0 2px 12px rgba(0,0,0,.34)}
.venue-card__brand::before{content:"";position:absolute;inset:-18px -24px -14px;border-radius:50%;background:rgba(5,45,58,.20);filter:blur(18px);z-index:-1}
.venue-card__logo{display:block;object-fit:contain;filter:brightness(0) invert(1) drop-shadow(0 3px 10px rgba(0,0,0,.22));opacity:.98;margin-bottom:1px}
.venue-card__logo--dolphin{width:52px;height:52px}
.venue-card__logo--palm{width:53px;height:63px}
.venue-card__name{max-width:100%;font-family:"Vazirmatn",sans-serif;font-size:clamp(13.8px,1.66vw,21px);font-weight:500;line-height:1.15;white-space:nowrap}
.venue-card__name.is-latin{font-family:"Cormorant Garamond",serif;font-size:clamp(18px,2vw,27px);font-weight:600;letter-spacing:-.01em}
.venue-card__english{direction:ltr;font-family:Inter,sans-serif;font-size:clamp(6.8px,.76vw,9px);font-weight:600;letter-spacing:.16em;color:rgba(255,255,255,.90);white-space:nowrap}
.venue-card[data-venue="palm-plaza"] .venue-card__brand{top:8%}
.venue-card__caption{position:absolute;left:50%;bottom:14px;transform:translateX(-50%);z-index:2;width:80%;text-align:center;font-family:"Vazirmatn",sans-serif;font-size:clamp(9.4px,1.08vw,12px);font-weight:400;color:rgba(255,255,255,.94);white-space:nowrap;text-shadow:0 2px 10px rgba(0,0,0,.45)}
.venue-card__caption.is-latin{font-family:Inter,sans-serif;font-size:clamp(7px,.75vw,9px);letter-spacing:.10em;text-transform:uppercase}
.venue-card__select{position:absolute;left:50%;bottom:5px;transform:translateX(-50%);z-index:3;width:44px;height:2px;border-radius:999px;background:rgba(255,255,255,.18)}
.venue-card__select i{display:block;width:0;height:100%;margin:auto;background:#fff;border-radius:999px;transition:width .2s ease}
.venue-card.is-active .venue-card__select i{width:100%}
.actions{
  position:relative;
  justify-self:center;
  width:min(100%,820px);
  display:grid;
  justify-items:center;
  gap:clamp(10px,1.45vh,16px);
  opacity:0;
  transform:translateY(12px);
  animation:reveal .85s .42s var(--ease) forwards;
}
.actions::before{
  content:"";
  position:absolute;
  z-index:-1;
  left:-20px;
  right:-20px;
  top:42px;
  bottom:-26px;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(6,25,33,0) 0%,rgba(6,25,33,.18) 26%,rgba(6,25,33,.38) 62%,rgba(6,25,33,.60) 100%);
  filter:blur(14px);
  border-radius:34px;
}
.menu-cta{
    direction: rtl !important;
  width:min(100%,568px);
  min-height:54px;
  border-radius:999px;
  padding:0 20px;
  display:grid;
  grid-template-columns:28px minmax(0,1fr) 28px;
  grid-template-rows:1fr;
  align-items:center;
  column-gap:12px;
  direction:ltr;
  background:linear-gradient(180deg,var(--teal),var(--teal-deep));
  box-shadow:0 14px 34px rgba(2,36,48,.28),inset 0 0 0 1px rgba(255,255,255,.24);
  color:#f8fbfb;
  transition:transform .2s var(--ease),box-shadow .2s ease;
}
.menu-cta:hover{transform:translateY(-2px);box-shadow:0 18px 40px rgba(2,36,48,.34),inset 0 0 0 1px rgba(255,255,255,.3)}
.menu-cta>span{grid-column:2;grid-row:1;text-align:center;font-family:"Vazirmatn",sans-serif;font-size:clamp(13px,1.45vw,15.5px);font-weight:700;line-height:1}
.menu-cta>span.is-latin{font-family:Inter,sans-serif;font-size:12px;letter-spacing:.1em;text-transform:uppercase}
.menu-cta svg{display:block;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;line-height:0}
.menu-cta__icon,.menu-cta__arrow{width:28px;height:28px;display:block;align-self:center;justify-self:center}
.menu-cta__icon{grid-column:3;grid-row:1}
.menu-cta__arrow{grid-column:1;grid-row:1;transform:scaleX(-1)}
html[dir="ltr"] .menu-cta__arrow{transform:none;grid-column:3}
html[dir="ltr"] .menu-cta__icon{grid-column:1}
.signature{display:inline-flex;align-items:center;gap:12px;direction:ltr;color:rgba(255,255,255,.96)}
.signature span{width:44px;height:1px;background:rgba(255,255,255,.42)}
.signature em{font-family:Inter,sans-serif;font-size:10px;font-style:normal;font-weight:500;letter-spacing:.22em}
.quick-actions{width:min(100%,680px);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));direction:rtl}
.quick-action{position:relative;min-width:0;min-height:60px;display:flex;align-items:center;justify-content:center;gap:9px;padding:7px 11px;color:rgba(255,255,255,.95);transition:color .18s ease,background .18s ease}
.quick-action:not(:last-child){border-inline-end:1px solid rgba(255,255,255,.07)}
.quick-action:hover{color:#fff;background:rgba(255,255,255,.05)}
.quick-action svg{flex:0 0 auto;width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round}
.quick-action svg .fill{fill:currentColor;stroke:none}
.quick-action>span{min-width:0;display:grid;gap:1px;text-align:start}
.quick-action strong,.quick-action small{font-family:"Vazirmatn",sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.quick-action strong{font-size:13.2px;font-weight:600;line-height:1.3}
.quick-action small{font-size:9.8px;font-weight:400;line-height:1.25;color:rgba(255,255,255,.82)}
.quick-action strong.is-latin,.quick-action small.is-latin{font-family:Inter,sans-serif;letter-spacing:.06em;text-transform:uppercase}
.quick-action strong.is-latin{font-size:8.9px}
.quick-action small.is-latin{font-size:7.1px}
.closing{display:grid;justify-items:center;gap:5px;color:rgba(255,255,255,.94);direction:ltr}
.closing svg{width:44px;height:15px;fill:none;stroke:#4fc1d8;stroke-width:2;stroke-linecap:round}
.closing span{font-family:Inter,sans-serif;font-size:9px;font-weight:500;letter-spacing:.16em}
.toast{position:absolute;z-index:30;left:50%;bottom:max(18px,env(safe-area-inset-bottom));max-width:calc(100% - 32px);padding:9px 14px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(5,29,39,.9);box-shadow:0 10px 26px rgba(0,0,0,.26);backdrop-filter:blur(10px);font-family:"Vazirmatn",sans-serif;font-size:10px;opacity:0;pointer-events:none;transform:translate(-50%,8px);transition:opacity .18s ease,transform .18s ease}
.toast.is-visible{opacity:1;transform:translate(-50%,0)}
.transition{position:absolute;z-index:20;inset:0;pointer-events:none;background:#081a23;opacity:0;transition:opacity .24s ease}
.transition.is-active{opacity:1}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@keyframes reveal{to{opacity:1;transform:translateY(0)}}

@media (max-width:767px){
  :root{--pad-x:clamp(14px,4.5vw,22px)}
  .experience{gap:18px}
  .landing{min-height:720px}
  .shell{padding-top:calc(var(--safe-top) + 2px);padding-bottom:calc(var(--safe-bottom) + 8px)}
  .topline{font-size:clamp(22px,5.8vw,28px);line-height:1;margin-right:8px;text-shadow:0 3px 16px rgba(0,0,0,.24)}
  .editorial{padding-top:2px}
  .editorial__eyebrow{font-size:9px;letter-spacing:.20em;color:#0d4454;text-shadow:0 1px 8px rgba(255,255,255,.05),0 2px 10px rgba(0,0,0,.10)}
  .editorial__wave{height:12px;margin:2px auto 0}
  .editorial__wave svg{width:38px;height:12px}
  .editorial__title{font-size:clamp(30px,min(8.3vw,5.3vh),43px);line-height:.87;color:#14586b;text-shadow:0 1px 0 rgba(255,255,255,.08),0 6px 18px rgba(0,0,0,.20)}
  .editorial__subtitle{margin-top:13px;font-size:clamp(8.5px,1.45vw,10px);letter-spacing:.11em;color:#0f4457;text-shadow:0 1px 8px rgba(255,255,255,.05),0 2px 10px rgba(0,0,0,.10)}
  .venues{gap:10px;padding:26px 0 14px;width:min(100%,600px)}
  .venue-card{border-radius:18px;aspect-ratio:1.12}
  .venue-card__brand{top:9%;width:86%}
  .venue-card__brand::before{inset:-10px -16px -9px;filter:blur(14px)}
  .venue-card__logo--dolphin{width:38px;height:38px}
  .venue-card__logo--palm{width:40px;height:50px}
  .venue-card__name{font-size:clamp(10.2px,2.8vw,12.8px)}
  .venue-card__name.is-latin{font-size:clamp(13px,3.7vw,17px)}
  .venue-card__english{font-size:clamp(7.1px,1.18vw,8.2px);letter-spacing:.11em}
  .venue-card__caption{bottom:10px;font-size:clamp(7.2px,2vw,8.7px)}
  .venue-card__caption.is-latin{font-size:5.6px}
  .actions{gap:8px}
  .actions::before{left:-14px;right:-14px;top:38px;bottom:-22px;filter:blur(12px)}
  .menu-cta{min-height:50px;width:min(100%,560px);padding:0 22px;grid-template-columns:30px minmax(0,1fr) 30px;column-gap:10px}
  .menu-cta>span{font-size:12px}
  .menu-cta svg{width:18px;height:18px}
  .menu-cta__icon,.menu-cta__arrow{width:30px;height:30px}
  .signature{gap:10px}
  .signature span{width:44px}
  .signature em{font-size:8.6px;letter-spacing:.17em}
  .quick-actions{position:relative;width:min(100%,580px);grid-template-columns:repeat(2,minmax(0,1fr));border:0}
  .quick-actions::before{content:"";position:absolute;z-index:1;left:28px;right:28px;top:50%;height:1px;background:rgba(255,255,255,.09);pointer-events:none}
  .quick-actions::after{content:"";position:absolute;z-index:1;top:10px;bottom:10px;left:50%;width:1px;background:rgba(255,255,255,.08);pointer-events:none}
  .quick-action{min-height:50px;padding:7px 8px;gap:8px;border:0!important}
  
  
  
  .quick-action svg{width:20px;height:20px}
  .quick-action strong{font-size:12px}
  .quick-action small{font-size:9.2px}
  .closing{gap:4px;margin:1px 0 8px}
  .closing svg{width:42px;height:14px}
  .closing span{font-size:8px;letter-spacing:.14em}
}

@media (max-height:760px) and (max-width:767px){
  .landing{min-height:650px}
  .topline{font-size:18px}
  .editorial__title{font-size:min(9vw,44px)}
  .editorial__subtitle{margin-top:6px}
  .venues{padding:8px 0 8px}
  .venue-card{aspect-ratio:1.12}
  .menu-cta{min-height:48px}
  .quick-action{min-height:42px}
  .closing{transform:scale(.96);transform-origin:center}
}

@media (min-width:768px){
  :root{--pad-x:clamp(32px,4vw,62px)}
  .media__overlay{
    background:
      linear-gradient(90deg,rgba(0,0,0,var(--overlay-desktop-sides)) 0%,transparent 20%,transparent 80%,rgba(0,0,0,var(--overlay-desktop-sides)) 100%),
      linear-gradient(180deg,rgba(4,25,34,var(--overlay-top)) 0%,rgba(2,20,28,var(--overlay-middle)) 46%,rgba(2,18,26,var(--overlay-bottom)) 100%),
      radial-gradient(ellipse at 50% 44%,transparent 36%,rgba(0,0,0,var(--overlay-vignette)) 100%);
  }
  .venues{width:min(100%,720px)}
  .venue-card{aspect-ratio:1.24}
}

@media (min-width:1200px){
  .venues{width:720px}
  .menu-cta{width:560px}
  .quick-actions{width:650px}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
  .media__video{display:none}
}

/* Action-state helpers: these are controlled by landing.config.js. */
[hidden] { display: none !important; }
.quick-action.is-disabled,
.menu-cta.is-disabled {
  opacity: .38;
  cursor: default;
  filter: saturate(.55);
}
.quick-action.is-unconfigured,
.menu-cta.is-unconfigured {
  cursor: not-allowed;
}

/* Adaptive quick-action layout when actions are enabled/disabled per venue. */
.quick-actions[data-visible-count="1"] { grid-template-columns: minmax(0, 1fr); width: min(100%, 220px); }
.quick-actions[data-visible-count="2"] { grid-template-columns: repeat(2, minmax(0, 1fr)); width: min(100%, 390px); }
.quick-actions[data-visible-count="3"] { grid-template-columns: repeat(3, minmax(0, 1fr)); width: min(100%, 540px); }
.quick-actions[data-visible-count="4"] { grid-template-columns: repeat(4, minmax(0, 1fr)); }

@media (max-width: 767px) {
  .quick-actions[data-visible-count="1"] { grid-template-columns: minmax(0, 1fr); width: min(100%, 250px); }
  .quick-actions[data-visible-count="2"] { grid-template-columns: repeat(2, minmax(0, 1fr)); width: min(100%, 430px); }
  .quick-actions[data-visible-count="3"] { grid-template-columns: repeat(3, minmax(0, 1fr)); width: min(100%, 560px); }
  .quick-actions[data-visible-count="4"] { grid-template-columns: repeat(2, minmax(0, 1fr)); width: min(100%, 580px); }

  .quick-actions[data-visible-count="1"]::before,
  .quick-actions[data-visible-count="1"]::after,
  .quick-actions[data-visible-count="2"]::before,
  .quick-actions[data-visible-count="3"]::before { display: none; }

  .quick-actions[data-visible-count="2"]::after,
  .quick-actions[data-visible-count="3"]::after {
    top: 8px;
    bottom: 8px;
  }

  .quick-actions[data-visible-count="3"]::after { display: none; }
  .quick-actions[data-visible-count="3"] .quick-action:not(:last-child) {
    border-inline-end: 1px solid rgba(255,255,255,.08) !important;
  }
}
.quick-action.is-last-visible { border-inline-end: 0 !important; }
