/* Новая главная (демо-редизайн дизайнера + правки): подключается только на /home-v2/ */
body.home-v2 .occ-btn, body.home-v2 .book-panel--v1 .btn-primary{
  background:linear-gradient(135deg,#e3c796 0%,#c9a572 50%,#ab8d60 100%) !important;
  color:#150e05 !important; border:0 !important; font-weight:700;
  box-shadow:0 8px 22px rgba(171,141,96,.32);
  transition:transform .25s var(--ease-soft), box-shadow .25s var(--ease-soft), filter .25s, background-position .4s;
  background-size:160% 100% !important; background-position:0 0 !important;
}
body.home-v2 .occ-btn:hover, body.home-v2 .book-panel--v1 .btn-primary:hover{
  transform:translateY(-3px) scale(1.02) !important; filter:brightness(1.1);
  background-position:100% 0 !important;
  box-shadow:0 0 0 5px rgba(227,199,150,.18), 0 14px 34px rgba(227,199,150,.5) !important;
}
body.home-v2 .occ-btn:active, body.home-v2 .book-panel--v1 .btn-primary:active{ transform:translateY(0) scale(.99) !important; }
body.home-v2 /* ---------- концепция: два блока ---------- */
#concept .concept-grid{ align-items:center; }
body.home-v2 #concept .concept-grid h2{ max-width:20ch; }
body.home-v2 .concept-facts{ margin-top:clamp(40px,5vw,70px); display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
body.home-v2 .fact{
  display:flex; gap:16px; align-items:flex-start; padding:24px 26px; border-radius:18px;
  background:linear-gradient(160deg,rgba(171,141,96,.14),rgba(18,18,18,.65)); border:1px solid var(--line-strong);
  transition:transform .3s var(--ease-soft), border-color .3s, box-shadow .3s;
}
body.home-v2 .fact:hover{ transform:translateY(-4px); border-color:var(--accent); box-shadow:0 16px 36px rgba(0,0,0,.45); }
body.home-v2 .fact-ico{ flex:0 0 48px; width:48px; height:48px; border-radius:50%; display:grid; place-items:center; background:var(--accent-muted); color:var(--accent); }
body.home-v2 .fact-ico svg, body.home-v2 .ico-svg{ width:24px; height:24px; stroke:currentColor; fill:none; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
body.home-v2 .fact b{ display:block; font-size:26px; font-weight:600; color:#fff; line-height:1.15; }
body.home-v2 .fact .sub{ display:block; color:var(--accent); font-size:18px; margin-top:2px; }
body.home-v2 .fact small{ display:block; color:var(--text-secondary); font-size:15px; margin-top:8px; line-height:1.45; }
body.home-v2 .fact-cta{
  grid-column:1/-1; display:flex; align-items:center; justify-content:space-between; gap:20px; flex-wrap:wrap;
  padding:22px 28px; border-radius:18px; border:1px dashed var(--line-strong); background:rgba(171,141,96,.05);
}
body.home-v2 .fact-cta p{ margin:0; font-size:20px; max-width:58ch; }
@media (max-width:900px){body.home-v2 .concept-facts{ grid-template-columns:1fr; }
body.home-v2 .fact-cta{ flex-direction:column; align-items:stretch; }
body.home-v2 .fact-cta .btn{ justify-content:center; }}
body.home-v2 /* ---------- «почему к нам приходят»: фото и иконки ---------- */
#why{ background:linear-gradient(180deg,transparent 0%,rgba(122,22,48,.16) 45%,transparent 100%); }
body.home-v2 .why-card--media{ padding:0 !important; overflow:hidden; display:flex; flex-direction:column; transition:transform .35s var(--ease-soft), border-color .35s, box-shadow .35s; }
body.home-v2 .why-card--media:hover{ transform:translateY(-6px); border-color:var(--accent); box-shadow:0 22px 44px rgba(0,0,0,.5); }
body.home-v2 .why-media{ position:relative; aspect-ratio:16/10; }
body.home-v2 .why-media img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; display:block; transition:transform .7s var(--ease-soft); }
body.home-v2 .why-media{ overflow:visible; }
body.home-v2 .why-media img{ border-radius:0; }
body.home-v2 .why-card--media:hover .why-media img{ transform:scale(1.07); }
body.home-v2 .why-media::after{ content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(0,0,0,0) 45%,rgba(10,8,14,.85) 100%); pointer-events:none; }
body.home-v2 .why-ico{
  position:absolute; left:24px; bottom:-27px; z-index:2; width:58px; height:58px; border-radius:50%; display:grid; place-items:center;
  background:linear-gradient(135deg,#e3c796,#ab8d60); color:#150e05; box-shadow:0 10px 24px rgba(0,0,0,.55);
}
body.home-v2 .why-ico svg{ width:28px; height:28px; stroke:currentColor; fill:none; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
body.home-v2 .why-card--media h3{ margin:46px 26px 10px; }
body.home-v2 .why-card--media p{ margin:0 26px 28px !important; }
body.home-v2 /* ---------- зал: свой фон, body.home-v2 рамки и чипы ---------- */
#gallery{
  background:radial-gradient(ellipse 80% 70% at 50% 0%,rgba(122,22,48,.38),transparent 72%), linear-gradient(180deg,#0b0508,#050305);
  border-top:1px solid var(--line-strong); border-bottom:1px solid var(--line-strong);
}
body.home-v2 .gallery-strip{ margin-top:6px; }
body.home-v2 .gallery-strip img{ border-radius:18px; border:1px solid rgba(171,141,96,.28); box-shadow:0 18px 40px rgba(0,0,0,.5); }
body.home-v2 /* ---------- вопросы: на всю ширину, body.home-v2 карточками ---------- */
.faq-list{ max-width:none !important; width:100%; display:grid; gap:12px; }
body.home-v2 .faq-item{
  border:1px solid var(--line); border-radius:16px; padding:0 26px; background:rgba(255,255,255,.025);
  transition:border-color .25s, background .25s, box-shadow .25s;
}
body.home-v2 .faq-item:hover{ border-color:var(--line-strong); }
body.home-v2 .faq-item.open{ border-color:var(--accent); background:rgba(171,141,96,.07); box-shadow:0 12px 30px rgba(0,0,0,.35); }
body.home-v2 .faq-q{ font-size:clamp(18px,1.6vw,21px); padding:22px 0; font-weight:500; }
body.home-v2 .faq-q svg{ width:34px; height:34px; padding:9px; border-radius:50%; background:var(--accent-muted); box-sizing:border-box; }
body.home-v2 .faq-item.open .faq-q svg{ background:var(--accent); color:#150e05; }
body.home-v2 .faq-a p{ max-width:none; color:var(--text-secondary); }
body.home-v2 /* ---------- бронирование: форма поинтереснее ---------- */
#book{ background:radial-gradient(ellipse 70% 80% at 80% 50%,rgba(122,22,48,.30),transparent 70%); }
body.home-v2 .book-panel--v1{
  position:relative; overflow:hidden; border:1px solid var(--line-strong) !important; border-radius:28px !important;
  background:linear-gradient(150deg,rgba(26,14,18,.96),rgba(10,8,12,.98)) !important;
  box-shadow:0 30px 80px rgba(0,0,0,.55), inset 0 1px 0 rgba(255,255,255,.06);
}
body.home-v2 .book-panel--v1::before{
  content:""; position:absolute; right:-80px; top:-80px; width:320px; height:320px; border-radius:50%;
  background:radial-gradient(circle,rgba(227,199,150,.22),transparent 68%); pointer-events:none;
}
body.home-v2 .book-panel--v1 .xf-photo{ box-shadow:0 20px 50px rgba(0,0,0,.5); }
body.home-v2 .book-panel--v1 .xf-photo::after{ content:""; position:absolute; inset:0; border-radius:18px; background:linear-gradient(180deg,transparent 45%,rgba(8,5,8,.9)); }
body.home-v2 .book-contacts{ position:absolute; left:20px; right:20px; bottom:18px; z-index:2; display:grid; gap:8px; }
body.home-v2 .book-contacts a, body.home-v2 .book-contacts span{ display:flex; align-items:center; gap:10px; color:#fff; text-decoration:none; font-size:16px; }
body.home-v2 .book-contacts svg{ width:18px; height:18px; flex:0 0 18px; stroke:var(--accent); fill:none; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
body.home-v2 .book-contacts a:hover{ color:var(--accent-hover); }
body.home-v2 .book-panel--v1 .field{ position:relative; }
body.home-v2 .book-panel--v1 .field input{
  background:rgba(255,255,255,.04) !important; border:1px solid rgba(171,141,96,.45) !important; border-radius:12px !important;
  padding:16px 18px !important; transition:border-color .2s, box-shadow .2s, background .2s;
}
body.home-v2 .book-panel--v1 .field input:focus{ border-color:var(--accent-hover) !important; background:rgba(171,141,96,.08) !important; box-shadow:0 0 0 4px rgba(171,141,96,.2); }
body.home-v2 .book-panel--v1 .field label{ font-size:14px; letter-spacing:.1em; text-transform:uppercase; color:var(--accent); }
body.home-v2 .book-panel--v1 .btn-primary{ font-size:18px; padding:1.05em; text-transform:uppercase; letter-spacing:.06em; }
body.home-v2 .lp-form .btn-primary, body.home-v2 .ny-b-panel .btn-primary{ width:100%; justify-content:center; }
body.home-v2 footer{ position:relative; margin-top:0; padding-top:clamp(34px,5vw,64px); border-top:0;
  background:linear-gradient(180deg,rgba(0,0,0,0),rgba(20,10,14,.75)); }
body.home-v2 footer::before{ content:""; position:absolute; top:0; left:0; right:0; height:1px; background:linear-gradient(90deg,transparent,var(--accent),transparent); opacity:.5; }
body.home-v2 .footer-brand{ display:block; }
body.home-v2 .footer-brand img{ height:64px; width:auto; display:block; }
body.home-v2 .footer-col h4{ color:var(--accent); font-size:13px; }
body.home-v2 .footer-col a{ transition:color .2s, transform .2s; }
body.home-v2 .footer-col a:hover{ transform:translateX(4px); }
body.home-v2 .footer-bottom{ border-top:1px solid var(--line-strong); }
body.home-v2 /* меньше пустого места */
section{ padding:clamp(34px,5vh,52px) 0; }
body.home-v2 #concept h2{ line-height:1.2 !important; margin-bottom:.5em; }
body.home-v2 #concept .concept-grid{ align-items:center; }
body.home-v2 .concept-slide{ aspect-ratio:4/3; }
@media (max-width:900px){body.home-v2 .concept-slide{ aspect-ratio:4/5; }}
body.home-v2 .concept-facts{ margin-top:clamp(22px,3vw,38px); }
body.home-v2 .section-head{ margin-bottom:24px; }
body.home-v2 .fact{ padding:20px 24px; }
body.home-v2 /* ===== «День рождения» и «Банкеты»: карточки поинтереснее ===== */
.occ-grid{ gap:22px; }
body.home-v2 .occ-card{ min-height:clamp(440px,38vw,560px); display:flex; align-items:flex-end; border:1px solid var(--line-strong); border-radius:24px; overflow:hidden; box-shadow:0 24px 60px rgba(0,0,0,.5); transition:transform .35s var(--ease-soft), box-shadow .35s, border-color .35s; }
body.home-v2 .occ-card:hover{ transform:translateY(-6px); border-color:var(--accent); box-shadow:0 30px 70px rgba(0,0,0,.6); }
body.home-v2 .occ-card::before{ background:linear-gradient(180deg,rgba(10,6,10,.25) 0%,rgba(10,6,10,.78) 38%,rgba(10,6,10,.97) 100%) !important; }
body.home-v2 .occ-card > div{ padding:clamp(22px,3vw,36px); width:100%; }
body.home-v2 .occ-card h3{ font-size:clamp(28px,3vw,40px); margin:0 0 .5em; }
body.home-v2 .occ-badge{
  position:absolute; top:22px; right:22px; z-index:3; width:108px; height:108px; border-radius:50%; display:grid; place-content:center; text-align:center;
  background:linear-gradient(135deg,#e3c796,#ab8d60); color:#150e05; box-shadow:0 12px 30px rgba(0,0,0,.55), 0 0 0 6px rgba(227,199,150,.2);
  transform:rotate(-8deg); transition:transform .4s var(--ease-soft);
}
body.home-v2 .occ-card:hover .occ-badge{ transform:rotate(4deg) scale(1.06); }
body.home-v2 .occ-badge b{ font-size:34px; line-height:1; font-weight:800; }
body.home-v2 .occ-badge small{ font-size:12px; letter-spacing:.06em; text-transform:uppercase; font-weight:700; margin-top:4px; }
body.home-v2 .occ-perks{ list-style:none; display:flex; flex-wrap:wrap; gap:8px; margin:0 0 16px; padding:0; }
body.home-v2 .occ-perks li{ display:flex; align-items:center; gap:8px; padding:.5em 1em; border-radius:99px; background:rgba(8,6,14,.78); border:1px solid rgba(227,199,150,.4); backdrop-filter:blur(6px); color:#fff; font-size:15px; }
body.home-v2 .occ-perks svg{ width:16px; height:16px; stroke:var(--accent); fill:none; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; flex:0 0 16px; }
body.home-v2 .occ-card .occ-promo{ background:rgba(12,8,10,.78); border:1px dashed var(--line-strong); border-radius:12px; padding:12px 16px; color:#f3e3c4; font-size:16px; margin:0 0 18px; text-shadow:none; }
body.home-v2 .occ-card .occ-btn{ display:inline-flex; width:auto; }
body.home-v2 .occ-card .occ-btn svg{ width:16px; height:16px; margin-left:4px; stroke:currentColor; fill:none; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
@media (max-width:640px){body.home-v2 .occ-badge{ width:104px; height:104px; top:14px; right:12px; }
body.home-v2 .occ-badge b{ font-size:28px; }
body.home-v2 .occ-badge small{ font-size:10px; letter-spacing:.02em; }
body.home-v2 .occ-card .occ-btn{ width:100%; justify-content:center; }}
body.home-v2 /* ======================================================================
   ТИПОГРАФИКА: одна шкала на весь сайт
   H1 — первый экран и шапка страницы · H2 — заголовок раздела · H3 — заголовок карточки
   H4 — малый заголовок · текст — один размер · подписи — 15px
   ====================================================================== */
{
  --fs-h1:clamp(28px,3.4vw,42px);
  --fs-h2:clamp(26px,2.9vw,38px);
  --fs-h3:clamp(22px,2.1vw,29px);
  --fs-h4:clamp(17px,1.4vw,19px);
  --fs-body:clamp(17px,1.3vw,20px);
  --fs-small:15px;
}
body.home-v2 h1, body.home-v2 .hero-static h1, body.home-v2 .page-hero h1, body.home-v2 .legal-wrap h1{ font-size:var(--fs-h1) !important; line-height:1.2 !important; font-weight:500; }
body.home-v2 main h2, body.home-v2 .section-head h2, body.home-v2 #concept h2, body.home-v2 .xf-text h2, body.home-v2 .book-panel--v1 .xf-text h2, body.home-v2 .ny-b-panel h2{
  font-size:var(--fs-h2) !important; line-height:1.2 !important; font-weight:500; margin:0 0 .5em; text-wrap:balance;
}
body.home-v2 main h3, body.home-v2 .why-card h3, body.home-v2 .format-card h3, body.home-v2 .occ-card h3, body.home-v2 .menu-card-title, body.home-v2 .book-panel--v1.ny-b-panel .xf-text h3, body.home-v2 .fmt-card h3{
  font-size:var(--fs-h3) !important; line-height:1.25 !important; font-weight:500; margin:0 0 .45em;
}
body.home-v2 main h4, body.home-v2 .step h4, body.home-v2 .footer-col h4{ font-size:var(--fs-h4) !important; line-height:1.3 !important; }
body.home-v2 .footer-col h4{ font-size:13px !important; }
body.home-v2 .occ-card h3{ margin-bottom:.5em; }
body.home-v2 .why-card--media h3{ margin:46px 26px 10px; }
body.home-v2 /* основной текст */
main p, body.home-v2 main li, body.home-v2 .why-card p, body.home-v2 .section-head p, body.home-v2 .faq-a p, body.home-v2 .step p, body.home-v2 .format-card ul, body.home-v2 .format-card li, body.home-v2 .list-check li, body.home-v2 .menu-card-sub, body.home-v2 .page-hero p, body.home-v2 .xf-text p, body.home-v2 #concept p{
  font-size:var(--fs-body) !important; line-height:1.6 !important;
}
body.home-v2 .hero-static p{ font-size:clamp(17px,1.5vw,21px) !important; }
body.home-v2 .fact small, body.home-v2 .consent-line, body.home-v2 .form-note, body.home-v2 .form-error, body.home-v2 .dish-desc, body.home-v2 .bar-desc, body.home-v2 .occ-perks li, body.home-v2 .hall-chips li, body.home-v2 .fact .sub{ font-size:var(--fs-small) !important; }
body.home-v2 .fact b{ font-size:var(--fs-h3) !important; }
body.home-v2 .fact .sub{ font-size:17px !important; }
body.home-v2 .occ-card .occ-promo{ font-size:15.5px !important; }
body.home-v2 .dish-name{ font-size:18px !important; }
body.home-v2 .faq-q{ font-size:clamp(17px,1.4vw,20px) !important; }
body.home-v2 .kicker{ font-size:14px !important; }
body.home-v2 /* на узких экранах значок не должен налезать на пункты карточки */
@media (max-width:640px){ .occ-card > div{ padding-top:132px; }
body.home-v2 }
/* ===== «Праздники»: обе карточки устроены одинаково ===== */
.occ-card > div{ display:flex; flex-direction:column; align-items:flex-start; min-height:clamp(330px,26vw,380px); }
body.home-v2 .occ-perks{ flex-direction:column; align-items:flex-start; }
body.home-v2 .occ-card .occ-promo{ width:100%; }
body.home-v2 .occ-card .occ-btn{ margin-top:auto; }
body.home-v2 .occ-badge{ width:122px; height:122px; }
body.home-v2 .occ-badge small{ font-size:10.5px; letter-spacing:.02em; }
body.home-v2 .occ-badge b{ font-size:36px; }
@media (max-width:640px){body.home-v2 .occ-card > div{ min-height:0; padding-top:132px; }
body.home-v2 .occ-badge{ width:104px; height:104px; }
body.home-v2 .occ-badge b{ font-size:28px; }
body.home-v2 .occ-badge small{ font-size:10px; }
body.home-v2 .occ-card .occ-btn{ margin-top:6px; }}
body.home-v2 .occ-card .occ-promo{ min-height:calc(2 * 1.55em + 26px); display:flex; align-items:center; }
@media (max-width:640px){body.home-v2 .occ-card .occ-promo{ min-height:0; }}
body.home-v2 /* ===== «Праздники»: убрали двойные отступы (у карточки 32px + у текста 36px) ===== */
.occ-card{ padding:0 !important; min-height:0 !important; }
body.home-v2 .occ-card > div{ padding:clamp(150px,13vw,190px) clamp(22px,2.2vw,30px) clamp(20px,2vw,26px) !important; min-height:0 !important; }
body.home-v2 .occ-perks{ margin-bottom:12px; }
body.home-v2 .occ-card .occ-promo{ margin-bottom:14px; padding:10px 14px; min-height:calc(2 * 1.5em + 20px); }
body.home-v2 .occ-card .occ-btn{ margin-top:4px; }
@media (max-width:640px){body.home-v2 .occ-card > div{ padding:132px 18px 20px !important; }}
@media (min-width:641px){body.home-v2 .occ-card .occ-promo{ min-height:76px; }}
body.home-v2 .book-panel--v1 .xf-photo::after{ background:linear-gradient(180deg,transparent 25%,rgba(8,5,8,.78) 62%,rgba(8,5,8,.96) 100%) !important; }
body.home-v2 .book-panel--v1 .xf-photo::after{ background:linear-gradient(180deg,transparent 25%,rgba(8,5,8,.78) 62%,rgba(8,5,8,.96) 100%) !important; }
body.home-v2 .book-contacts a, body.home-v2 .book-contacts span{ text-shadow:0 1px 8px rgba(0,0,0,.9); }

/* --- Телефон: крупная шкала шрифтов (повторена в конце, чтобы перебить шкалу выше) --- */
/* ================= Читаемость на телефоне: единая крупная шкала шрифтов (ПК не меняется) ================= */
@media (max-width:860px){
  :root{ --text-secondary:#f2f2f2; --text-dim:#d6d6d6; }
  body{ font-weight:400; }

  /* Основной текст: 20px, обычная толщина, межстрочный 1.6, белый */
  .concept-grid p, .concept-grid li, .why-card p, .act p, .fmt-body p, .section-head p, .lp-lead, .lp-sub, .list-check li,
  .faq-a p, .legal-wrap p, .legal-wrap li, .xf-text p, .occ-card p, .step p, .format-card p, .book-panel p, .form-success p,
  #about p, #about li, .encore p, main ul:not([class]) li, main ol:not([class]) li{
    font-size:20px !important; font-weight:400 !important; line-height:1.6 !important; color:#fff;
  }
  /* Акцентные строки: тоже 20px, бронза, чуть плотнее */
  .concept-hl, .act p.act-hl, .fmt-body p.fmt-note, .ny-b-panel .xf-note, .occ-promo, #about .care-end{
    font-size:20px !important; font-weight:500 !important; line-height:1.55 !important; color:var(--accent) !important;
  }
  /* Первый экран новогодней страницы: подпись и абзац крупнее */
  .hero-stage .hero-static .hero-textbox.ny-b-box p.ny-tagline{ font-size:22px !important; line-height:1.35 !important; }
  .hero-stage .hero-static .hero-textbox.ny-b-box p.ny-b-lead{ font-size:18px !important; line-height:1.55 !important; font-weight:400 !important; }
  .hero-textbox.ny-b-box .ny-h1, .hero-textbox .ny-h1{ font-size:clamp(30px,8.6vw,36px) !important; }

  /* Подписи, описания, меню, подвал: 18px (мельче не бывает) */
  .dish-desc, .menu-card-sub, .reel-caption span, .format-more, .occ-cta, .footer-col a, .footer-bottom span, .footer-bottom a,
  .footer-grid p, .footer-grid span, .nav-addr, .form-note{
    font-size:18px !important; font-weight:400 !important; line-height:1.5 !important;
  }
  .reel-caption strong{ font-size:19px !important; }
  .bar-desc{ font-size:16.5px !important; font-weight:400 !important; line-height:1.45 !important; }
  .bar-name{ font-size:19px !important; font-weight:400 !important; }
  .dish-name{ font-size:20px !important; font-weight:400 !important; }
  .dish-tab, .menu-card-cta-text, .book-tab, .footer-col h4, .dish-subhead{ font-size:16px !important; }
  .hero-sound-label{ font-size:14px !important; }

  /* Формы: подписи и согласие читаемы, поля не меньше 17px */
  .consent-line, .consent-line span, .consent-line a, .field label{ font-size:16px !important; font-weight:400 !important; color:#ececec; }
  .consent-line a{ color:var(--accent); }
  .field label{ color:#fff; }
  .field input, .field select, .field textarea{ font-size:18px !important; }
  .btn{ font-size:17px; }

  /* Заголовки: единая лесенка */
  .section-head h2, section h2{ font-size:30px !important; line-height:1.22 !important; }
  .why-card h3, .act h3, .fmt-body h3, .occ-card h3, .format-card h3, .ny-b-panel h3{ font-size:25px !important; line-height:1.25 !important; }
  .faq-q{ font-size:20px !important; font-weight:500 !important; line-height:1.4 !important; }
  .faq-col h3{ font-size:22px !important; }
}
@media (max-width:860px){
  .inline-reel-caption span, .inline-reel-caption strong, .reel-caption span{ font-size:17px !important; }
  footer span[style*="font-size:14.5px"]{ font-size:17px !important; }
}

/* ---------- Первый экран главной: плашка как в макете, кнопка «Забронировать» под ней ---------- */
body.home-v2 .hero-stage.hero-text-compact .hero-textbox{ width:min(100%,480px); max-width:none; padding:clamp(18px,2vw,26px) clamp(20px,2.4vw,30px); }
body.home-v2 .hero-stage.hero-text-compact .hero-static h1{ font-size:clamp(30px,3.3vw,44px) !important; line-height:1.12 !important; margin:0; max-width:none; }
body.home-v2 .hero-stage.hero-text-compact .hero-h1-sub{ display:block; font-size:clamp(20px,1.9vw,25px); line-height:1.15; font-weight:500; color:#fff; margin-top:.1em; white-space:nowrap; }
body.home-v2 .hero-stage.hero-text-compact .hero-static p{ font-size:clamp(16px,1.35vw,18px) !important; line-height:1.4 !important; max-width:none; margin:.9em 0 0 !important; color:#fff; }
body.home-v2 .hero-static .hero-book{ margin-top:14px; width:min(100%,480px); justify-content:center; padding:.95em 1.4em; font-size:16px; letter-spacing:.08em; text-transform:uppercase; }
@media (max-width:640px){
  body.home-v2 .hero-stage.hero-text-compact .hero-textbox{ width:100%; padding:0; }
  body.home-v2 .hero-stage.hero-text-compact .hero-static h1{ font-size:clamp(30px,9vw,38px) !important; }
  body.home-v2 .hero-stage.hero-text-compact .hero-h1-sub{ font-size:clamp(20px,6vw,24px); white-space:normal; }
  body.home-v2 .hero-static .hero-book{ width:100%; }
}

/* Три причины: увеличенное при наведении фото не вылезает за свою рамку (чёрная подложка больше не «съезжает») */
body.home-v2 .why-media{ overflow:visible; }
body.home-v2 .why-pic{ position:absolute; inset:0; overflow:hidden; }
body.home-v2 .why-media img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transform-origin:center; }
body.home-v2 .why-media::after{ z-index:1; }
body.home-v2 .why-ico{ z-index:3; }
body.home-v2 .why-card--media{ overflow:visible; }
body.home-v2 .why-pic img{ transition:transform .7s var(--ease-soft); }
body.home-v2 .why-card--media:hover .why-pic img{ transform:scale(1.1); }
body.home-v2 .why-pic{ border-radius:17px 17px 0 0; }

/* Увеличение фото при наведении: слайдер «Официанты поют…» и фото в форме бронирования */
body.home-v2 .concept-slide{ overflow:hidden; }
body.home-v2 .concept-slide img{ transition:transform .7s var(--ease-soft); transform-origin:center; }
body.home-v2 .concept-slider:hover .concept-slide img{ transform:scale(1.08); }
body.home-v2 .book-panel--v1 .xf-photo{ overflow:hidden; border-radius:18px; }
body.home-v2 .book-panel--v1 .xf-photo img{ transition:transform .7s var(--ease-soft); transform-origin:center; }
body.home-v2 .book-panel--v1 .xf-photo:hover img{ transform:scale(1.08); }

/* фото формы не должно менять высоту рамки: высоту задаёт форма */
body.home-v2 .book-panel--v1 .xf-photo img{ position:absolute; top:0; left:0; width:100%; height:auto; aspect-ratio:5/4; object-fit:cover; -webkit-mask-image:linear-gradient(180deg,#000 82%,transparent); mask-image:linear-gradient(180deg,#000 82%,transparent); }
@media (max-width:980px){
  body.home-v2 .book-panel--v1 .xf-photo{ min-height:300px; }
  body.home-v2 .book-panel--v1 .xf-photo img{ height:100%; aspect-ratio:auto; object-position:center 40%; -webkit-mask-image:linear-gradient(180deg,#000 62%,transparent); mask-image:linear-gradient(180deg,#000 62%,transparent); }
}

/* заголовок на плашке героя: крупнее при той же рамке */
body.home-v2 .hero-stage.hero-text-compact .hero-static h1{ font-size:clamp(36px,4.1vw,48px) !important; }
body.home-v2 .hero-stage.hero-text-compact .hero-h1-sub{ font-size:clamp(23px,2.5vw,31px); }
@media (max-width:640px){
  body.home-v2 .hero-stage.hero-text-compact .hero-static h1{ font-size:clamp(34px,10.5vw,42px) !important; }
  body.home-v2 .hero-stage.hero-text-compact .hero-h1-sub{ font-size:clamp(22px,6.8vw,27px); }
}

/* плашка героя: ещё крупнее заголовок, рамка прежнего размера (480 px, ~159 px) */
@media (min-width:641px){
  body.home-v2 .hero-stage.hero-text-compact .hero-textbox{ padding-top:11px !important; padding-bottom:12px !important; }
  body.home-v2 .hero-stage.hero-text-compact .hero-static h1{ font-size:clamp(44px,5.9vw,60px) !important; line-height:1.02 !important; }
  body.home-v2 .hero-stage.hero-text-compact .hero-h1-sub{ font-size:clamp(27px,3.5vw,36px); line-height:1.02; margin-top:.02em; }
  body.home-v2 .hero-stage.hero-text-compact .hero-static p{ margin-top:.55em !important; }
}
@media (max-width:640px){
  body.home-v2 .hero-stage.hero-text-compact .hero-static h1{ font-size:clamp(38px,11.5vw,46px) !important; }
  body.home-v2 .hero-stage.hero-text-compact .hero-h1-sub{ font-size:clamp(24px,7.4vw,29px); }
}

/* авторские коктейли с фото */
.cocktail-grid{ grid-template-columns:repeat(3,1fr); gap:20px; margin-bottom:30px; }
.cocktail-card .dish-photo{ height:auto; aspect-ratio:4/5; object-position:center 55%; background:#0a0c0b; }
.cocktail-card .dish-body{ flex:1; display:flex; flex-direction:column; }
.cocktail-card .dish-name{ font-size:20px; }
.cocktail-card .dish-desc{ margin-bottom:.8em; }
.cocktail-card .dish-divider{ margin-top:auto; }
@media (max-width:860px){
  .cocktail-grid{ gap:12px; }
  .cocktail-card .dish-body{ padding:12px 12px 14px; }
  .cocktail-card .dish-name{ font-size:17px !important; }
  .cocktail-card .dish-desc{ font-size:13.5px !important; }
  .cocktail-card .dish-price{ font-size:17px; }
}
@media (max-width:560px){ .cocktail-grid{ grid-template-columns:repeat(2,1fr); } }
body.home-v2 .cocktail-card .dish-name{ font-size:22px !important; letter-spacing:.01em; margin-bottom:.4em; }
body.home-v2 .cocktail-card .dish-desc{ font-size:15px !important; line-height:1.45; }
body.home-v2 .cocktail-card .dish-price{ font-size:22px; }
.cocktail-grid + .bar-list{ margin-top:8px; }
@media (max-width:860px){
  body.home-v2 .cocktail-card .dish-name{ font-size:17px !important; }
  body.home-v2 .cocktail-card .dish-desc{ font-size:13px !important; }
  body.home-v2 .cocktail-card .dish-price{ font-size:17px; }
}

/* приближение фото в меню кухни и бара */
.dish-card .dish-photo{ transition:transform .6s cubic-bezier(.2,.7,.2,1); will-change:transform; }
@media (hover:hover){
  .dish-card:hover .dish-photo{ transform:scale(1.09); }
}
@media (hover:none){
  .dish-card:active .dish-photo{ transform:scale(1.06); }
}
@media (prefers-reduced-motion:reduce){
  .dish-card .dish-photo{ transition:none; }
  .dish-card:hover .dish-photo, .dish-card:active .dish-photo{ transform:none; }
}
