/* ─────────────────────────────────────────────────────────────────────
   ДУБАЙ — основные стили темы.
   Перенесены один в один из макета prototype-deploy/index.html.
   Секционные селекторы вида [data-screen-label="…"] заменены на классы
   .sec-* — их печатают блоки WPBakery.
   ───────────────────────────────────────────────────────────────────── */

html,body{margin:0;padding:0;background:#1B1510;color:#EFE6D4;font-family:'Onest',sans-serif;-webkit-font-smoothing:antialiased}
a{color:#CBA35C;text-decoration:none;transition:color .3s}
a:hover{color:#E4C688}
::selection{background:#CBA35C;color:#1B1510}
@keyframes kenburns{from{transform:scale(1.08)}to{transform:scale(1)}}
@keyframes fadeUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}
@keyframes bob{0%,100%{transform:translateY(0)}50%{transform:translateY(7px)}}
input::placeholder{color:#8A8074}

/* premium-layer */
:root{
  --gold:#CBA35C; --gold-lt:#E4C688; --ink:#1B1510; --cream:#F7F0E1;
  --surface:rgba(255,255,255,.038); --surface-hi:rgba(255,255,255,.065);
  --hairline:rgba(203,163,92,.16);
  --r-lg:24px; --r-md:16px; --r-sm:12px;
  --ease:cubic-bezier(.22,1,.36,1);
}
.btn-gold{background:var(--gold);color:var(--ink);box-shadow:0 8px 26px rgba(203,163,92,.20)}
.btn-gold:hover{background:var(--gold-lt);color:var(--ink);box-shadow:0 16px 38px rgba(203,163,92,.30)}
.btn-ghost{background:rgba(255,255,255,.05);border-color:rgba(203,163,92,.38);color:var(--gold);backdrop-filter:blur(10px)}
.btn-ghost:hover{background:rgba(203,163,92,.13);border-color:rgba(203,163,92,.7);color:var(--gold-lt)}
.ico{background:rgba(255,255,255,.08);color:rgba(247,240,225,.78)}
.ico:hover{background:var(--gold);color:var(--ink)}
.card{box-shadow:0 14px 44px rgba(0,0,0,.30)}
.card:hover{box-shadow:0 34px 78px rgba(0,0,0,.48)}
.field{background:rgba(255,255,255,.05);border:1px solid rgba(203,163,92,.22);color:var(--cream)}
.field:focus{border-color:rgba(203,163,92,.6);background:rgba(255,255,255,.08)}

*,*::before,*::after{box-sizing:border-box}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:999px;
  padding:15px 30px;border:1px solid transparent;font:600 11px 'Onest',sans-serif;
  letter-spacing:.16em;text-transform:uppercase;white-space:nowrap;cursor:pointer;text-decoration:none;
  transition:background .4s var(--ease),color .4s var(--ease),border-color .4s var(--ease),
             box-shadow .4s var(--ease),transform .4s var(--ease)}
.btn:hover{transform:translateY(-2px)}
.btn:active{transform:translateY(0)}
.btn-sm{padding:11px 21px;font-size:10px;letter-spacing:.18em}
.btn-lg{padding:19px 42px;font-size:12px}
.btn-block{width:100%}
.ico{width:42px;height:42px;padding:0;border-radius:50%;border:none;display:inline-flex;
  align-items:center;justify-content:center;font-size:15px;line-height:1;cursor:pointer;
  transition:background .35s var(--ease),color .35s var(--ease),transform .35s var(--ease)}
.ico:hover{transform:scale(1.06)}
.lnk{display:inline-flex;align-items:center;gap:8px;font:600 11px 'Onest',sans-serif;
  letter-spacing:.2em;text-transform:uppercase;padding:0 0 5px;background:none;color:var(--gold);
  border:0;border-bottom:1px solid color-mix(in srgb,var(--gold) 38%,transparent);cursor:pointer;
  transition:border-color .35s var(--ease),gap .35s var(--ease),color .35s var(--ease)}
.lnk:hover{gap:13px;border-bottom-color:var(--gold)}

.lnk-lg{display:inline-flex;align-items:center;gap:9px;font:500 22px 'Cormorant Garamond',serif;
  color:var(--cream);padding:0 0 6px;background:none;cursor:pointer;
  border:0;border-bottom:1px solid color-mix(in srgb,var(--gold) 40%,transparent);
  transition:border-color .35s var(--ease),gap .35s var(--ease),color .35s var(--ease)}
.lnk-lg:hover{gap:14px;border-bottom-color:var(--gold);color:var(--gold-lt)}
.tab{display:inline-block;padding:0 0 5px;background:none;border:0;
  border-bottom:1px solid transparent;cursor:pointer;
  transition:color .3s,border-color .3s}
.tab:hover{border-bottom-color:var(--gold)}
.btn-dark{background:#221A11;color:#F2EADB;box-shadow:0 8px 26px rgba(0,0,0,.25)}
.btn-dark:hover{background:#3A3025;color:#F2EADB;box-shadow:0 16px 38px rgba(0,0,0,.32)}
.card{border-radius:var(--r-lg);overflow:hidden;background:var(--surface);
  transition:transform .55s var(--ease),box-shadow .55s var(--ease),background .55s var(--ease)}
.card:hover{transform:translateY(-8px);background:var(--surface-hi)}
.field{border-radius:var(--r-sm);padding:14px 16px;width:100%;font:400 15px 'Onest',sans-serif;
  outline:none;transition:border-color .3s,background .3s}
.lbl{display:block;font:500 10px 'Onest',sans-serif;letter-spacing:.22em;text-transform:uppercase;
  opacity:.55;margin-bottom:9px}
@keyframes riseIn{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}
@supports (animation-timeline:view()){
  .rise{animation:riseIn 1s linear both;animation-timeline:view();animation-range:entry 3% cover 22%}
}
@media (max-width:820px){
  header{display:flex!important;align-items:center;gap:12px}
  header nav{display:none!important}
  header>*{min-width:0;flex:0 0 auto}
  header>*:last-child{flex:1 1 auto;display:flex!important;align-items:center;justify-content:flex-end}
  header img{height:22px!important}
  header .btn{padding:9px 15px;font-size:9px;letter-spacing:.12em}
}

/* мягкий переход между тёмными секциями и кремовым блоком банкетов */
.sec-bankety{position:relative;isolation:isolate}
.sec-bankety::before,.sec-bankety::after{
  content:'';position:absolute;left:0;right:0;height:110px;pointer-events:none;z-index:0}
.sec-bankety::before{top:0;
  background:linear-gradient(180deg,#1B1510 0%,rgba(239,231,216,0) 100%)}
.sec-bankety::after{bottom:0;
  background:linear-gradient(0deg,#1B1510 0%,rgba(239,231,216,0) 100%)}
.sec-bankety>div{position:relative;z-index:1}
/* ───────────────── мобильная версия ───────────────── */
.mnav-btn,.mnav,.fab,.mcar-hint{display:none}
.mnav-cb,.fab-cb{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none;margin:-1px}

@media (max-width:820px){
  :root{--pad:22px}

  /* ── шапка: лого слева, бургер справа, лишнее убрано ── */
  /* шапка — стекло: герой проходит под ней, без плашки и жёсткой линии */
  header{height:62px!important;display:flex!important;align-items:center;
    padding-left:var(--pad)!important;padding-right:72px!important;
    background:color-mix(in srgb,var(--ink) 26%,transparent)!important;
    backdrop-filter:blur(16px) saturate(1.35)!important;
    -webkit-backdrop-filter:blur(16px) saturate(1.35)!important;
    border-bottom:0!important;box-shadow:none!important}
  header::after{content:'';position:absolute;left:0;right:0;top:100%;height:22px;pointer-events:none;
    background:linear-gradient(180deg,color-mix(in srgb,var(--ink) 22%,transparent),transparent)}
  header nav{display:none!important}
  header>*:last-child{display:none!important}
  header img{height:21px!important}
  .mnav-btn{display:flex;flex-direction:column;justify-content:center;gap:5px;
    position:fixed;top:10px;right:14px;width:42px;height:42px;border-radius:50%;cursor:pointer;z-index:70;
    background:color-mix(in srgb,var(--ink) 74%,transparent);backdrop-filter:blur(12px);
    border:1px solid color-mix(in srgb,var(--gold) 45%,transparent)}
  .mnav-btn span{display:block;width:16px;height:1.5px;margin:0 auto;background:var(--gold);
    transition:transform .38s var(--ease),opacity .25s ease}
  .mnav-cb:checked~.mnav-btn{z-index:160}
  .mnav-cb:checked~.mnav-btn span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
  .mnav-cb:checked~.mnav-btn span:nth-child(2){opacity:0}
  .mnav-cb:checked~.mnav-btn span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}

  .mnav{position:fixed;inset:0;z-index:150;display:none;
    background:color-mix(in srgb,var(--ink) 96%,transparent);
    backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)}
  .mnav-cb:checked~.mnav{display:block;animation:mnavIn .32s var(--ease) both}
  @keyframes mnavIn{from{opacity:0}to{opacity:1}}
  .mnav-inner{position:absolute;inset:0;display:flex;flex-direction:column;
    padding:74px var(--pad) 32px;overflow-y:auto;overscroll-behavior:contain}
  .mnav-head{padding-bottom:24px;margin-bottom:6px}
  .mnav-cb:checked~.mnav .mnav-head{animation:mnavItem .5s var(--ease) .03s both}
  .mnav-head img{height:22px;display:block;margin-bottom:20px}
  .mnav-addr{font:500 10px 'Onest',sans-serif;letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}
  .mnav-hours{font:300 13px 'Onest',sans-serif;margin-top:8px;
    color:color-mix(in srgb,var(--cream) 55%,transparent)}
  .mnav-tel{display:inline-block;margin-top:14px;font:500 22px 'Cormorant Garamond',serif;
    color:var(--cream);text-decoration:none;
    border-bottom:1px solid color-mix(in srgb,var(--gold) 45%,transparent);padding-bottom:4px}
  .mnav-links{display:flex;flex-direction:column}
  .mnav-link{display:flex;align-items:center;justify-content:space-between;gap:16px;
    padding:13px 0;border-bottom:1px solid color-mix(in srgb,var(--gold) 14%,transparent);
    font:500 27px/1.15 'Cormorant Garamond',serif;color:var(--cream);text-decoration:none}
  @keyframes mnavItem{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
  .mnav-link::after{content:'→';font:400 15px 'Onest',sans-serif;color:color-mix(in srgb,var(--gold) 65%,transparent)}
  .mnav-cb:checked~.mnav .mnav-link{animation:mnavItem .5s var(--ease) both}
  .mnav-cb:checked~.mnav .mnav-link:nth-child(1){animation-delay:.08s}
  .mnav-cb:checked~.mnav .mnav-link:nth-child(2){animation-delay:.13s}
  .mnav-cb:checked~.mnav .mnav-link:nth-child(3){animation-delay:.18s}
  .mnav-cb:checked~.mnav .mnav-link:nth-child(4){animation-delay:.23s}
  .mnav-cb:checked~.mnav .mnav-link:nth-child(5){animation-delay:.28s}
  .mnav-cb:checked~.mnav .mnav-link:nth-child(6){animation-delay:.33s}
  .mnav-foot{margin-top:auto;padding-top:30px;display:grid;gap:14px}
  .mnav-cb:checked~.mnav .mnav-foot{animation:mnavItem .5s var(--ease) .4s both}

  /* ── ритм: воздух между блоками и явная граница ── */
  section+section{border-top:1px solid color-mix(in srgb,var(--gold) 13%,transparent)}
  footer{padding:36px var(--pad) 104px!important;
    border-top:1px solid color-mix(in srgb,var(--gold) 13%,transparent)}

  /* ── всё по левому краю: центрованный серифный текст на 390px рвётся ── */
  section:not(.mcenter) [style*="text-align: center"]{text-align:left!important}
  section:not(.mcenter) h1,section:not(.mcenter) h2,section:not(.mcenter) h3,
  section:not(.mcenter) p,section:not(.mcenter) blockquote{margin-left:0!important;margin-right:0!important;
    max-width:none!important;text-wrap:pretty}
  .mcenter [style*="text-align: center"]{text-align:center!important}

  /* ── типографика ── */
  h1{font-size:clamp(34px,8.8vw,46px)!important;line-height:1.08!important}
  h2{font-size:clamp(26px,6.6vw,34px)!important;line-height:1.18!important}
  h3{font-size:24px!important;line-height:1.2!important}
  blockquote{font-size:20px!important;line-height:1.5!important}
  section p{font-size:15px!important;line-height:1.75!important}
  /* разрядка в надзаголовках рвала строку на две */
  [style*="letter-spacing: 0.5em"]{letter-spacing:.22em!important;font-size:10px!important}
  [style*="letter-spacing: 0.46em"],[style*="letter-spacing: 0.4em"]{letter-spacing:.2em!important}
  [style*="letter-spacing: 0.3em"]{letter-spacing:.18em!important}
  [style*="letter-spacing: 0.26em"],[style*="letter-spacing: 0.24em"]{letter-spacing:.16em!important}

  /* ── первые экраны ── */
  #top{padding:0!important;height:100svh!important;min-height:520px!important}
  .sec-afisha-head{padding-top:120px!important;padding-bottom:70px!important}
  .sec-menu-head{padding-top:116px!important}
  .sec-bankety-hero{padding-top:108px!important}
  .mstrip{aspect-ratio:4/5!important;min-height:0!important;margin-top:30px!important;
    border-radius:20px!important}

  /* строка цифр — отдельный блок, а не продолжение секции */
  .sec-numbers>div{grid-template-columns:1fr 1fr!important;
    gap:34px 12px!important;padding:44px var(--pad)!important}
  .sec-numbers>div>div{border-left:0!important;text-align:left!important}
  .sec-numbers>div>div>div:first-child{font-size:32px!important}

  /* подсказки про наведение на телефоне бессмысленны */
  .sec-afisha h2+div{display:none!important}
  .sec-evenings h2+div,
  .sec-evenings>div>div:last-child{display:none!important}
  /* портрет шефа ещё не снят — пустая плашка на телефоне только мешает */
  .sec-chef>div>div:first-child{display:none!important}

  #zayavka{padding:0!important;margin:88px 12px 0!important;border-radius:24px!important;border-top:0!important}

  /* ── карусели ── */
  .mcar{display:flex!important;gap:12px!important;overflow-x:auto;overscroll-behavior-x:contain;
    scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;
    margin-left:calc(var(--pad)*-1);margin-right:calc(var(--pad)*-1);
    padding:0 var(--pad) 10px;scroll-padding-left:var(--pad)}
  .mcar::-webkit-scrollbar{display:none}
  .mcar>*{flex:0 0 86%;min-width:0;scroll-snap-align:start}
  .mcar.mcar-sm>*{flex:0 0 72%}
  .mcar .card:hover,.mcar .card:active{transform:none;box-shadow:none}
  .mcar-hint{display:flex;align-items:center;gap:8px;margin:0 0 14px;
    font:500 9px 'Onest',sans-serif;letter-spacing:.2em;text-transform:uppercase;
    color:color-mix(in srgb,var(--gold) 72%,transparent)}
  .mcar-hint::after{content:'→';animation:mcarNudge 2.4s var(--ease) infinite}
  @keyframes mcarNudge{0%,60%,100%{transform:translateX(0)}75%{transform:translateX(5px)}}

  .mgrid2{display:grid!important;grid-template-columns:1fr 1fr!important;gap:30px 18px!important}
  /* воздух между блоками был избыточен — ужимаем ритм */
  section{padding:40px var(--pad)!important}
  section [style*="margin-bottom: 90px"],
  section [style*="margin: 0px 0px 90px"],
  section [style*="margin: 0px auto 90px"],
  section [style*="margin-bottom: 80px"],
  section [style*="margin: 0px 0px 80px"],
  section [style*="margin: 0px auto 80px"],
  section [style*="margin-bottom: 70px"],
  section [style*="margin: 0px 0px 70px"],
  section [style*="margin: 0px auto 70px"],
  section [style*="margin-bottom: 64px"],
  section [style*="margin: 0px 0px 64px"],
  section [style*="margin: 0px auto 64px"],
  section [style*="margin-bottom: 60px"],
  section [style*="margin: 0px 0px 60px"],
  section [style*="margin: 0px auto 60px"],
  section [style*="margin-bottom: 56px"],
  section [style*="margin: 0px 0px 56px"],
  section [style*="margin: 0px auto 56px"],
  section [style*="margin-bottom: 52px"],
  section [style*="margin: 0px 0px 52px"],
  section [style*="margin: 0px auto 52px"],
  section [style*="margin-bottom: 50px"],
  section [style*="margin: 0px 0px 50px"],
  section [style*="margin: 0px auto 50px"],
  section [style*="margin-bottom: 46px"],
  section [style*="margin: 0px 0px 46px"],
  section [style*="margin: 0px auto 46px"],
  section [style*="margin-bottom: 44px"],
  section [style*="margin: 0px 0px 44px"],
  section [style*="margin: 0px auto 44px"],
  section [style*="margin-bottom: 42px"],
  section [style*="margin: 0px 0px 42px"],
  section [style*="margin: 0px auto 42px"],
  section [style*="margin-bottom: 40px"],
  section [style*="margin: 0px 0px 40px"],
  section [style*="margin: 0px auto 40px"]{margin-bottom:28px!important}
  #zayavka{margin:24px 12px 0!important}
  /* крупные внутренние паддинги десктопа на телефоне давали провалы */
  section [style*="padding: 70px 0px"]{padding-top:24px!important;padding-bottom:24px!important}
  [style*="padding: 60px 52px"],[style*="padding: 56px 48px"],
  [style*="padding: 48px 48px 40px"],[style*="padding: 44px 48px"],
  [style*="padding: 52px"],[style*="padding: 44px"]{padding:24px 20px!important}
  .sec-numbers>div{padding:34px var(--pad)!important}
  .mcar-hint{margin-bottom:12px}
  /* лого на светлой странице — тёмным, без подложки */
  .mnote span{display:block;margin-top:7px}
  #menyu>div>div:first-of-type{margin-bottom:18px!important}
  .mnote{margin-bottom:30px!important}
  /* футер: колонкой и плотно, без провалов */
  footer>div{flex-direction:column!important;align-items:flex-start!important;
    justify-content:flex-start!important;gap:22px!important}
  footer>div>div{flex-direction:column!important;gap:11px!important;align-items:flex-start!important}
  .sec-bankety{border-top:0!important}
  .sec-bankety::before,.sec-bankety::after{height:80px}
  #kontakty{padding-top:76px!important;padding-bottom:64px!important}
  /* текстовые блоки в карусели выглядят карточками, а не колонками */
  .mcar-txt>*{background:var(--surface);border:1px solid color-mix(in srgb,var(--gold) 16%,transparent)!important;
    border-radius:18px;padding:24px 20px!important}
  .mcar-txt.mcar-sm>*{flex:0 0 78%}
  /* строка цифр на телефоне только удлиняет полосу */
  .sec-numbers{display:none!important}

  /* ── афиша на главной: на телефоне это карточки, а не строки таблицы ── */
  .mrow{grid-template-columns:1fr auto!important;gap:9px 12px!important;padding:20px!important;
    align-items:baseline!important;border-top:0!important;border-radius:18px;margin-bottom:12px;
    background:var(--surface);border:1px solid color-mix(in srgb,var(--gold) 16%,transparent)}
  .mrow>*:nth-child(1){grid-area:1/1/2/2}
  .mrow>*:nth-child(3){grid-area:1/2/2/3;justify-self:end}
  .mrow>*:nth-child(2){grid-area:2/1/3/3}
  .mrow>*:nth-child(4){grid-area:3/1/4/3;justify-self:start;margin-top:2px}
  .mrow>*:nth-child(2)>span:first-child{display:block;font-size:23px!important}
  .mrow>*:nth-child(2)>span:last-child{display:block!important;margin-left:0!important;margin-top:7px!important}

  /* ── модалки и баннеры ── */
  .dubai-modal>div{padding:28px 20px!important;border-radius:20px!important}
  /* баннер согласия рисует плагин dubai-consent — поднимаем его над
     плавающей кнопкой, иначе они перекрываются на телефоне */
  .dbc{bottom:84px!important;left:12px!important;right:12px!important;
    width:auto!important}
  .dbc__actions{flex-wrap:wrap}

  /* ── плавающий спид-дайл ── */
  .fab{position:fixed;right:14px;bottom:14px;z-index:70;display:flex;flex-direction:column;
    align-items:flex-end;gap:10px;animation:fabIn .6s var(--ease) .5s backwards}
  .fab-menu{display:none;flex-direction:column;align-items:stretch;gap:8px}
  .fab-cb:checked~.fab-menu{display:flex}
  .fab-item{display:flex;align-items:center;gap:11px;min-width:196px;padding:13px 17px;
    border-radius:14px;font:500 13px 'Onest',sans-serif;letter-spacing:.03em;text-align:left;
    color:var(--cream);text-decoration:none;cursor:pointer;
    background:color-mix(in srgb,var(--ink) 93%,transparent);
    border:1px solid color-mix(in srgb,var(--gold) 32%,transparent);
    backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);
    box-shadow:0 16px 40px -20px rgba(0,0,0,.6)}
  .fab-item svg{flex:none;color:var(--gold)}
  .fab-cb:checked~.fab-menu .fab-item{animation:fabItem .34s var(--ease) both}
  .fab-cb:checked~.fab-menu .fab-item:nth-last-child(1){animation-delay:.02s}
  .fab-cb:checked~.fab-menu .fab-item:nth-last-child(2){animation-delay:.07s}
  .fab-cb:checked~.fab-menu .fab-item:nth-last-child(3){animation-delay:.12s}
  .fab-cb:checked~.fab-menu .fab-item:nth-last-child(4){animation-delay:.17s}
  @keyframes fabItem{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
  .fab-toggle{display:grid;place-items:center;width:54px;height:54px;border-radius:17px;
    cursor:pointer;color:var(--gold);
    background:color-mix(in srgb,var(--ink) 90%,transparent);
    border:1px solid color-mix(in srgb,var(--gold) 42%,transparent);
    backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);
    box-shadow:0 16px 40px -18px rgba(0,0,0,.65)}
  .fab-ic{grid-area:1/1;transition:opacity .25s ease,transform .35s var(--ease)}
  .fab-cb:not(:checked)~.fab-toggle .fab-ic-bell{transform-origin:50% 15%;
    animation:fabRing 7s ease-in-out 3s infinite}
  .fab-ic-x{opacity:0;transform:rotate(-45deg) scale(.6)}
  .fab-cb:checked~.fab-toggle .fab-ic-bell{opacity:0;transform:rotate(45deg) scale(.6)}
  .fab-cb:checked~.fab-toggle .fab-ic-x{opacity:1;transform:none}
  @keyframes fabIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
  @keyframes fabRing{0%,14%,100%{transform:rotate(0)}2%{transform:rotate(14deg)}
    4%{transform:rotate(-12deg)}6%{transform:rotate(9deg)}8%{transform:rotate(-7deg)}
    10%{transform:rotate(4deg)}12%{transform:rotate(-2deg)}}
}

@media (max-width:820px) and (prefers-reduced-motion:reduce){
  .fab,.fab-ic-bell,.mcar-hint::after{animation:none}
  .mnav-link,.fab-item,.fab-ic{transition:none;animation:none}
}
@media (prefers-reduced-motion:reduce){
  .rise{animation:none}
  .btn,.card,.ico,.lnk{transition:none}
}

/* ─────────────────────────────────────────────────────────────────────
   Дополнения для WordPress: их не было в макете
   ───────────────────────────────────────────────────────────────────── */

/* Админ-бар не должен наезжать на фиксированную шапку */
body.admin-bar .dubai-header{top:32px}
@media screen and (max-width:782px){body.admin-bar .dubai-header{top:46px}}
@media (max-width:820px){body.admin-bar .mnav-btn{top:56px}}

/* Светлая страница (страница банкетов в макете шла на кремовом фоне).
   Класс вешается на body шаблоном или галочкой в блоке «Секция». */
body.dubai-light{background:#EFE7D8;color:#221A11}
body.dubai-light a{color:#8A6B36}
body.dubai-light a:hover{color:#6B5228}
body.dubai-light ::selection{background:#8A6B36;color:#EFE7D8}
body.dubai-light input::placeholder{color:#9A8F7E}
body.dubai-light{
  --gold:#8A6B36; --gold-lt:#6B5228; --ink:#EFE7D8; --cream:#221A11;
  --surface:rgba(34,26,17,.035); --surface-hi:rgba(34,26,17,.062);
  --hairline:rgba(34,26,17,.13);
}
body.dubai-light .btn-gold{background:#221A11;color:#EFE7D8;box-shadow:0 8px 26px rgba(34,26,17,.16)}
body.dubai-light .btn-gold:hover{background:#3D3122;color:#EFE7D8;box-shadow:0 16px 38px rgba(34,26,17,.24)}
body.dubai-light .btn-ghost{background:rgba(34,26,17,.035);border-color:rgba(34,26,17,.22);color:#221A11;backdrop-filter:blur(10px)}
body.dubai-light .btn-ghost:hover{background:rgba(34,26,17,.075);border-color:rgba(34,26,17,.5);color:#221A11}
body.dubai-light .ico{background:rgba(34,26,17,.07);color:rgba(34,26,17,.7)}
body.dubai-light .ico:hover{background:#221A11;color:#EFE7D8}
body.dubai-light .card{box-shadow:0 14px 40px rgba(34,26,17,.09)}
body.dubai-light .card:hover{box-shadow:0 30px 70px rgba(34,26,17,.16)}
body.dubai-light .field{background:#FFFDF8;border:1px solid rgba(34,26,17,.16);color:#221A11}
body.dubai-light .field:focus{border-color:rgba(138,107,54,.6)}
/* тёмный блок заявки внутри светлой страницы: кнопка золотая, а не «тёмное на тёмном» */
body.dubai-light #zayavka .btn-gold{background:#CBA35C;color:#221A11;box-shadow:0 8px 26px rgba(203,163,92,.22)}
body.dubai-light #zayavka .btn-gold:hover{background:#E4C688;color:#221A11}
body.dubai-light #menyu .card>div>div>div:last-child{border-bottom:0!important}
/* Шапка тёмная и на светлых страницах, поэтому её кнопки остаются в тёмной палитре:
   иначе на банкетах ghost-кнопка красится в #221A11 и подпись пропадает. */
body.dubai-light .dubai-header .btn-ghost{background:rgba(255,255,255,.05);border-color:rgba(203,163,92,.38);color:#CBA35C}
body.dubai-light .dubai-header .btn-ghost:hover{background:rgba(203,163,92,.13);border-color:rgba(203,163,92,.7);color:#E4C688}
body.dubai-light .dubai-header .btn-gold{background:#CBA35C;color:#1B1510}
body.dubai-light .dubai-header .btn-gold:hover{background:#E4C688;color:#1B1510}
body.dubai-light .dubai-header a{color:rgba(239,230,212,.8)}
body.dubai-light .dubai-header a:hover{color:#E4C688}
/* Логотип — одна картинка на все случаи: в тёмной шапке белым, в кремовом подвале тёмным. */
.dubai-header img{filter:brightness(0) invert(1);opacity:.92}
@media (max-width:820px){
  body.dubai-light .dubai-footer img{filter:brightness(0);opacity:.86}
}

/* Строка афиши: на страницах «Афиша» и «Меню» это таблица, а не карточки */
@media (max-width:820px){
  .mrow--plain{grid-template-columns:1fr auto!important;gap:10px 12px!important;padding:24px 0!important;
    align-items:baseline!important;border-radius:0;margin-bottom:0;background:none;border:0}
}

/* Модальные окна: в макете их рисовал React, здесь — обычный <dialog>-подобный слой */
.dubai-modal{position:fixed;inset:0;z-index:80;display:none;align-items:center;justify-content:center;
  background:rgba(12,9,6,.78);backdrop-filter:blur(10px);padding:24px}
.dubai-modal.is-open{display:flex}
.dubai-modal__box{width:540px;max-width:100%;max-height:calc(100vh - 48px);overflow:auto;background:#241C13;
  border:1px solid rgba(203,163,92,.28);border-radius:26px;box-shadow:0 40px 110px rgba(0,0,0,.6);
  padding:52px;box-sizing:border-box;text-align:center;animation:riseIn .4s var(--ease) both}
.dubai-modal__close{display:flex;justify-content:flex-end}
.dubai-modal__title{margin:0 0 10px;font:500 36px 'Cormorant Garamond',serif;color:#F7F0E1}
.dubai-modal__lead{margin:0 0 34px;font:300 14px/1.5 'Onest',sans-serif;color:rgba(239,230,212,.55)}
.dubai-modal__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr));
  gap:16px;margin-bottom:16px;text-align:left}
.dubai-modal__consent{display:flex;gap:12px;align-items:flex-start;font:300 13px/1.5 'Onest',sans-serif;
  color:rgba(239,230,212,.55);margin:12px 0 28px;cursor:pointer;text-align:left}
.dubai-modal__consent input{margin-top:2px;accent-color:#CBA35C}
.dubai-modal__done{display:none}
.dubai-modal.is-sent .dubai-modal__form{display:none}
.dubai-modal.is-sent .dubai-modal__done{display:block}
.dubai-modal__check{width:64px;height:64px;border:1px solid #CBA35C;border-radius:50%;display:flex;
  align-items:center;justify-content:center;margin:0 auto 28px;color:#CBA35C;font-size:28px}
.dubai-modal__error{color:#E5A0A0;font:400 13px/1.5 'Onest',sans-serif;margin:0 0 16px;display:none}
.dubai-modal.has-error .dubai-modal__error{display:block}
.dubai-modal input[type=date],.dubai-modal input[type=tel],.dubai-modal input[type=text],
.dubai-modal input[type=email],.dubai-modal select,.dubai-modal textarea{
  width:100%;box-sizing:border-box;padding:14px 16px;background:#2C2318;border:1px solid #453823;
  color:#EFE6D4;font:400 15px 'Onest',sans-serif;outline:none;color-scheme:dark;border-radius:12px}
.dubai-modal .lbl{display:block;font:500 10px 'Onest',sans-serif;letter-spacing:.22em;
  color:rgba(239,230,212,.5);text-transform:uppercase;margin-bottom:8px}
.dubai-modal__widget{text-align:left}
body.dubai-modal-open{overflow:hidden}

/* Соцсети, мессенджеры и PDF из центра управления */
.dubai-socials{display:flex;gap:18px;justify-content:center;flex-wrap:wrap;font:500 14px 'Onest',sans-serif}
.dubai-messengers{display:flex;gap:10px;flex-wrap:wrap}
.dubai-pdfs{display:flex;gap:10px;flex-wrap:wrap}

/* Ленивое видео первого экрана: пока не загрузилось — виден постер */
.dubai-hero__video{width:100%;height:100%;object-fit:cover;display:block}

/* WPBakery: убираем её отступы у наших секций — вся геометрия в макете своя */
.wpb_content_element{margin-bottom:0}
.dubai-section .vc_column-inner,.dubai-section .wpb_wrapper{padding:0}
.vc_row.dubai-row{margin-left:0;margin-right:0}

/* Редактор WPBakery во фронтенде: подпись блока, чтобы секции различались */
.vc_editor .dubai-section{outline:1px dashed rgba(203,163,92,.35)}

/* Скринридеры */
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);
  clip-path:inset(50%);white-space:nowrap}
.skip-link:focus{position:fixed;top:12px;left:12px;z-index:200;padding:12px 18px;background:var(--gold);
  color:var(--ink);border-radius:10px;clip:auto;clip-path:none;width:auto;height:auto}

/* Стандартный контент WP (юридические страницы, посты) */
.dubai-prose{max-width:820px;margin:0 auto;padding:150px clamp(24px,4vw,64px) 120px;
  font:300 17px/1.75 'Onest',sans-serif;color:rgba(239,230,212,.78)}
.dubai-prose h1,.dubai-prose h2,.dubai-prose h3{font-family:'Cormorant Garamond',serif;color:#F7F0E1;font-weight:500}
.dubai-prose h1{font-size:clamp(38px,4vw,64px);line-height:1.1;margin:0 0 28px}
.dubai-prose h2{font-size:clamp(28px,2.4vw,40px);margin:48px 0 18px}
.dubai-prose h3{font-size:24px;margin:34px 0 14px}
.dubai-prose img{max-width:100%;height:auto;border-radius:16px}
.dubai-prose ul,.dubai-prose ol{padding-left:22px}
.dubai-prose li{margin-bottom:8px}
@media (max-width:820px){.dubai-prose{padding:96px 22px 64px}}

/* Вкладки банкетного меню */
.dubai-tab{padding:12px 22px;border-radius:999px;cursor:pointer;border:1px solid rgba(34,26,17,.2);
  background:transparent;color:rgba(34,26,17,.65);font:600 11px 'Onest',sans-serif;letter-spacing:.16em;
  text-transform:uppercase;transition:background .3s,color .3s,border-color .3s}
.dubai-tab:hover{border-color:rgba(34,26,17,.45)}
.dubai-tab.is-active{background:#221A11;border-color:#221A11;color:#EFE7D8}
body:not(.dubai-light) .dubai-tab{border-color:rgba(203,163,92,.32);color:rgba(239,230,212,.7)}
body:not(.dubai-light) .dubai-tab.is-active{background:var(--gold);border-color:var(--gold);color:var(--ink)}

/* Аккордеон вопросов */
.dubai-acc__head{display:flex;justify-content:space-between;align-items:center;gap:20px;width:100%;
  padding:24px 0;background:none;border:0;cursor:pointer;text-align:left}
.dubai-acc__q{font:500 21px 'Cormorant Garamond',serif;color:#221A11;text-align:left}
.dubai-acc__sign{font:300 26px 'Onest',sans-serif;color:#8A6B36;flex-shrink:0;line-height:1;
  transition:transform .35s var(--ease)}
.dubai-acc__item.is-open .dubai-acc__sign{transform:rotate(45deg)}
.dubai-acc__body{padding:0 0 26px;font:300 15px/1.75 'Onest',sans-serif;color:rgba(34,26,17,.62);max-width:64ch}
body:not(.dubai-light) .dubai-acc__q{color:#F7F0E1}
body:not(.dubai-light) .dubai-acc__sign{color:var(--gold)}
body:not(.dubai-light) .dubai-acc__body{color:rgba(239,230,212,.62)}
