
:root{--wine:#6C0F1D;--wine-d:#4B0912;--wine-l:#8E1E30;--cream:#F1E8D6;--sand:#E7D9BF;--gold:#B58E4B;--gold-l:#D6B574;--sage:#6B7260;--rose:#B94A5A;--ink:#2B1517;
  --f-d:"Oranienbaum","Prata",serif;--f-s:"Marck Script","Bad Script",cursive;--f-b:"Ledger","Bona Nova",Georgia,serif}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--cream);color:var(--ink);font:400 19px/1.65 var(--f-b);--dm-left:14px;overflow-x:hidden}
img{max-width:100%;display:block}a{color:inherit}
.skip{position:absolute;left:-999px;top:8px;background:var(--wine);color:#fff;padding:8px 14px;z-index:99}.skip:focus{left:8px}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
h1,h2,h3,h4{font-family:var(--f-d);font-weight:400;margin:0;line-height:1.12}
.in{width:min(980px,100% - 48px);margin-inline:auto}
.u{color:var(--wine);text-underline-offset:4px;text-decoration-color:rgba(108,15,29,.4)}.u-c{color:var(--gold-l)}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:.7em 1.8em;border-radius:999px;border:0;cursor:pointer;
  font:400 14.5px/1 var(--f-d);letter-spacing:.22em;text-transform:uppercase;text-decoration:none;transition:.25s}
.btn-wine{background:var(--wine);color:var(--cream);box-shadow:0 10px 26px rgba(108,15,29,.3)}.btn-wine:hover{background:var(--wine-l);transform:translateY(-2px)}
.btn-line{background:transparent;color:var(--wine);box-shadow:inset 0 0 0 1.5px var(--wine)}.btn-line:hover{background:rgba(108,15,29,.07)}
.btn-cream{background:var(--cream);color:var(--wine-d)}.btn-cream:hover{background:#fff;transform:translateY(-2px)}
.btn-line-c{background:transparent;color:var(--cream);box-shadow:inset 0 0 0 1.5px rgba(241,232,214,.7)}.btn-line-c:hover{background:rgba(241,232,214,.12)}
.btn-sm{min-height:42px;padding:.55em 1.3em;font-size:12.5px}
.cta{display:flex;gap:12px;flex-wrap:wrap;margin:26px 0 0}.c-c{justify-content:center}.cta .btn+.btn{margin:0}
.status{margin:14px 0 0;font:400 13px var(--f-d);letter-spacing:.2em;text-transform:uppercase;display:inline-flex;align-items:center;gap:.7em}
.status::before{content:"";width:9px;height:9px;border-radius:50%;background:#aaa}.status.is-open::before{background:#2f9a55;box-shadow:0 0 0 4px rgba(47,154,85,.22)}
.note{font-size:15px;opacity:.78}

/* шапка */
.top{position:sticky;top:0;z-index:50;background:rgba(241,232,214,.92);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid rgba(108,15,29,.2)}
.top-in{display:grid;grid-template-columns:auto 1fr auto;gap:20px;align-items:center;padding:8px clamp(16px,3vw,44px)}
.brand{display:flex;gap:12px;align-items:center;text-decoration:none;font:400 28px var(--f-d);letter-spacing:.06em;text-transform:uppercase}.brand img{width:46px;height:auto;border-radius:50%}
.nav{display:flex;gap:clamp(8px,1.4vw,22px);justify-content:center;flex-wrap:wrap}
.nav a{text-decoration:none;font:400 13.5px var(--f-d);letter-spacing:.18em;text-transform:uppercase;padding:8px 2px;position:relative}
.nav a:hover{color:var(--wine)}.nav a::after{content:"◆";position:absolute;left:50%;bottom:-4px;transform:translateX(-50%) scale(0);font-size:8px;color:var(--wine);transition:.25s}.nav a:hover::after{transform:translateX(-50%) scale(1)}
.burger{display:none;width:48px;height:48px;border:1.5px solid var(--wine);border-radius:50%;background:transparent;place-content:center;gap:5px;padding:0;cursor:pointer}
.burger i{display:block;width:20px;height:2px;background:var(--wine)}

/* hero */
.hero{position:relative;text-align:center;display:grid;grid-template-columns:minmax(0,300px) minmax(0,720px) minmax(0,300px);gap:clamp(20px,4vw,64px);
  justify-content:center;align-items:center;padding:clamp(40px,6vw,86px) 24px clamp(50px,7vw,96px);background:radial-gradient(circle at 50% 0,rgba(255,255,255,.65),transparent 60%),var(--cream);overflow:hidden}
.h-arch{margin:0;aspect-ratio:3/4;border-radius:999px 999px 14px 14px;overflow:hidden;border:6px solid var(--cream);box-shadow:0 0 0 2px var(--gold),0 0 0 9px var(--sand),0 24px 48px rgba(75,9,18,.25);background:var(--sand)}
.h-arch img{width:100%;height:100%;object-fit:cover}.h-l{transform:rotate(-2deg)}.h-r{transform:rotate(2deg)}
.hero-c{position:relative;z-index:2}
.orn{display:block;width:150px;height:auto;margin-inline:auto;overflow:visible}.orn-top{margin-bottom:6px}
.date{margin:0 0 26px;font:400 14px var(--f-d);letter-spacing:.34em;text-transform:uppercase;color:var(--wine)}
h1{color:var(--wine);text-transform:uppercase;letter-spacing:.06em}.h1-a{display:block;font-size:clamp(54px,9vw,128px)}.h1-b{display:block;font-size:clamp(28px,4.6vw,64px);letter-spacing:.2em;margin-top:.15em}
.sc{margin:0;font:400 clamp(22px,2.4vw,32px)/1.2 var(--f-s);color:var(--rose)}.sc-big{font-size:clamp(32px,4.2vw,56px);margin-top:14px}
.sub{margin:10px 0 0;font:italic 400 clamp(18px,1.8vw,24px) var(--f-b);color:var(--ink);opacity:.8}
.hero .cta{justify-content:center}.hero .status{display:flex;justify-content:center}

/* полосы */
.band{padding:clamp(56px,7vw,100px) 0;position:relative;text-align:center;overflow:hidden;overflow:clip}
.b-cream{background:var(--cream);color:var(--ink)}.b-sand{background:var(--sand);color:var(--ink)}
.b-wine{background:var(--wine);color:var(--cream);background-image:radial-gradient(900px 400px at 50% 0,rgba(142,30,48,.55),transparent 70%)}
.hd{margin-bottom:34px}
.k{margin:0 0 12px;font:400 13px var(--f-d);letter-spacing:.34em;text-transform:uppercase;color:var(--rose)}
.b-wine .k{color:var(--gold-l)}
.hd h2{font-size:clamp(34px,5vw,68px);text-transform:uppercase;letter-spacing:.1em}
.hd h2 span::before,.hd h2 span::after{content:"◆";font-size:.28em;vertical-align:.9em;margin:0 .9em;color:var(--gold)}
.hd .sc{margin-top:10px;color:var(--rose)}.b-wine .hd .sc{color:var(--gold-l)}
.hd-line{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:16px;color:var(--gold)}
.hd-line i{width:min(120px,22vw);height:1px;background:currentColor;opacity:.7}.hd-line b{width:8px;height:8px;transform:rotate(45deg);background:currentColor}
.lead{font:400 clamp(21px,2.2vw,28px)/1.5 var(--f-b);max-width:700px;margin:0 auto 34px}
.foot{margin:34px 0 0;font-size:16px;opacity:.85}.foot a{color:inherit}
.mh3{font:italic 400 clamp(21px,2.2vw,30px) var(--f-b);margin:0 0 34px;opacity:.85}

/* программа */
.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:8px;position:relative}
.steps::before{content:"";position:absolute;left:10%;right:10%;top:44px;border-top:1.5px dashed var(--gold)}
.steps li{position:relative;display:flex;flex-direction:column;align-items:center;gap:4px;padding:0 6px}
.ico{display:grid;place-items:center;width:88px;height:88px;border-radius:50%;background:var(--cream);box-shadow:0 0 0 1.5px var(--gold),0 0 0 7px var(--sand);color:var(--wine)}
.ic{width:46px;height:46px}.ico-s{width:72px;height:72px}.ico-s .ic{width:38px;height:38px}
.steps b{font:400 19px var(--f-d);letter-spacing:.1em;color:var(--wine);margin-top:10px}.steps small{font-size:15px;line-height:1.35;opacity:.85}

/* about */
.meds{list-style:none;margin:0 auto;padding:0;display:flex;gap:clamp(10px,2vw,24px);justify-content:center;flex-wrap:wrap}
.meds li{width:clamp(130px,19vw,200px);aspect-ratio:1;border-radius:50%;overflow:hidden;box-shadow:0 0 0 2px var(--gold),0 0 0 8px var(--wine),0 0 0 9.5px rgba(214,181,116,.7)}
.meds img{width:100%;height:100%;object-fit:cover;transition:transform .9s}.meds li:hover img{transform:scale(1.08)}

/* меню */
.feat{list-style:none;margin:0 0 34px;padding:0;display:grid;grid-template-columns:repeat(6,1fr);gap:18px 14px}
.round{width:min(130px,100%);aspect-ratio:1;border-radius:50%;margin:0 auto 10px;overflow:hidden;box-shadow:0 0 0 2px var(--gold),0 0 0 6px var(--cream),0 0 0 7.5px var(--wine)}
.round img{width:100%;height:100%;object-fit:cover}
.feat h3{font:400 15px/1.25 var(--f-b);color:var(--ink);margin:0 0 4px}
.pr{font:400 17px var(--f-d);letter-spacing:.04em;color:var(--wine)}
.mtabs{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:0 0 22px}
.mtab{font:400 12.5px var(--f-d);letter-spacing:.14em;text-transform:uppercase;color:var(--wine);background:transparent;border:1.5px solid var(--wine);border-radius:999px;padding:10px 16px;cursor:pointer;display:inline-flex;gap:8px;align-items:center;transition:.2s}
.mtab small{font:400 11px var(--f-b);opacity:.6}
.mtab:hover{background:rgba(108,15,29,.08)}.mtab.is-active{background:var(--wine);color:var(--cream)}
.mpanels{background:#FBF6EA;border-radius:8px 44px 8px 44px;box-shadow:0 0 0 1.5px var(--gold);padding:clamp(20px,3vw,34px);text-align:left}
.mpanel h3{font-size:clamp(24px,2.4vw,32px);text-transform:uppercase;letter-spacing:.14em;color:var(--wine);text-align:center;margin:0 0 10px;display:flex;gap:12px;align-items:center}
.mpanel h3::before,.mpanel h3::after{content:"";flex:1;height:1px;background:var(--gold)}
.mpanel ul{list-style:none;margin:0;padding:0;columns:2 300px;column-gap:44px}
.mpanel li{break-inside:avoid;display:grid;grid-template-columns:1fr auto;gap:0 14px;padding:9px 0;border-bottom:1px dotted rgba(108,15,29,.35)}
.mn{font-size:17.5px;line-height:1.3}.mp{font:400 18px var(--f-d);color:var(--wine);white-space:nowrap;letter-spacing:.04em}
.mpanel em{grid-column:1/-1;font-style:italic;font-size:14.5px;opacity:.78;line-height:1.4}
/* паротейли */
.hk{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(24px,5vw,70px);align-items:center;text-align:left}
.hk-ph{position:relative;max-width:380px;margin-inline:auto}
.hk-ph>img{width:100%;border-radius:999px 999px 14px 14px;border:6px solid var(--cream);box-shadow:0 0 0 2px var(--gold),0 26px 50px rgba(0,0,0,.4)}
.bq-c{position:absolute;pointer-events:none}.bq-tl{left:-26px;top:-34px}.bq-br{right:-26px;bottom:-34px}.bq-c .orn{width:120px}
.hk-t h3{font-size:clamp(28px,3vw,42px);margin-bottom:10px;color:var(--gold-l)}
.brands{font:400 16px var(--f-d);letter-spacing:.14em;text-transform:uppercase;line-height:2}.brands i{font-style:normal;color:var(--gold-l);margin:0 6px;font-size:.6em;vertical-align:.2em}
.stm{list-style:none;margin:18px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.stm li{border:1px solid rgba(214,181,116,.6);padding:14px 8px;text-align:center;border-radius:60px 60px 8px 8px}
.stm b{display:block;font:400 26px var(--f-d);color:var(--gold-l)}.stm span{font-size:14.5px;line-height:1.3;display:block;margin-top:2px}

/* акции */
.medals{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
.medal{width:min(210px,100%);aspect-ratio:1;border-radius:50%;margin:0 auto 18px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;
  background:var(--wine);color:var(--cream);box-shadow:0 0 0 2px var(--gold),0 0 0 8px var(--sand),0 0 0 9.5px var(--wine)}
.medal .ico{width:56px;height:56px;box-shadow:none;background:transparent;color:var(--gold-l)}.medal .ic{width:36px;height:36px}
.mb{font:400 clamp(26px,3vw,40px) var(--f-d);letter-spacing:.04em}
.medals h3{font-size:28px;color:var(--wine);text-transform:uppercase;letter-spacing:.14em}.when{margin:4px 0;font:400 13px var(--f-d);letter-spacing:.2em;text-transform:uppercase;color:var(--rose)}
.medals p{margin:0 0 12px}
.code{font:400 13px var(--f-d);letter-spacing:.18em;text-transform:uppercase;background:var(--wine);color:var(--cream);border:0;border-radius:999px;padding:12px 20px;cursor:pointer;transition:.25s}.code:hover{background:var(--wine-l)}
.code-s{cursor:default;background:transparent!important;color:var(--wine)!important;box-shadow:inset 0 0 0 1.5px var(--wine)}

/* караоке, мафия */
.kr{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(24px,5vw,70px);align-items:center;text-align:left}
.arch{margin:0;border-radius:999px 999px 12px 12px;overflow:hidden;border:6px solid var(--cream);box-shadow:0 0 0 2px var(--gold),0 24px 48px rgba(0,0,0,.35);background:#000}
.arch img{width:100%;height:100%;object-fit:cover;aspect-ratio:3/4}.kr .arch{max-width:340px;margin-inline:auto}
.kr .arch img{object-fit:contain}
.kr-t h3{font-size:clamp(28px,3.2vw,44px);color:var(--gold-l)}
.facts{margin:18px 0 0}.facts div{display:grid;grid-template-columns:150px 1fr;gap:14px;padding:9px 0;border-bottom:1px dotted rgba(241,232,214,.4)}
.facts dt{font:400 12.5px/1.7 var(--f-d);letter-spacing:.18em;text-transform:uppercase;color:var(--gold-l)}.facts dd{margin:0}.facts a{color:inherit}
.arches{list-style:none;margin:0 auto 40px;padding:0;display:flex;justify-content:center;gap:clamp(12px,3vw,34px)}
.arches .arch{width:min(240px,30%);}.arches li:nth-child(2){margin-top:-24px}
.det{list-style:none;margin:0 auto;padding:0;max-width:720px;display:grid;gap:14px;text-align:left}
.det li{display:grid;grid-template-columns:72px 1fr;gap:18px;align-items:center;padding:6px 0;border-bottom:1px dotted rgba(108,15,29,.35)}
.det b{display:block;font:400 14px var(--f-d);letter-spacing:.2em;text-transform:uppercase;color:var(--wine)}.det span span,.det div>span{font-size:18px}

/* зал */
.hall-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,1fr);gap:clamp(20px,4vw,50px);align-items:start;text-align:left}
.hall-fig{margin:0;padding:16px;background:var(--cream);color:var(--ink);border-radius:8px 44px 8px 44px;box-shadow:0 0 0 2px var(--gold)}
.hall-fig figcaption{text-align:center;font-size:14.5px;opacity:.75;padding-top:8px}
.hall-svg{width:100%;height:auto;display:block}
.h-floor{fill:#FBF6EA}.h-wall{fill:var(--wine)}.h-door{fill:var(--gold)}.h-mirror{fill:#8aa6b4}.h-window{fill:rgba(138,166,180,.25);stroke:#8aa6b4;stroke-width:1}
.h-bar{fill:var(--wine-d)}.h-tv{fill:var(--sage)}
.h-label{fill:var(--wine);font:400 17px "Oranienbaum",serif;letter-spacing:.16em}.h-label-lg{fill:var(--cream);font-size:24px;letter-spacing:.36em}.h-label-sm{font-size:13.5px;fill:#6b5a58}
.h-tv+text{fill:#fff}
.h-table{cursor:pointer;outline:none}
.h-table-box{fill:var(--sand);stroke:var(--wine);stroke-width:2;transition:.25s}
.h-sofa{fill:var(--rose)}.h-table-top{fill:#FBF6EA;stroke:var(--wine);stroke-width:2}
.h-num{fill:var(--wine-d);font:400 34px "Oranienbaum",serif;text-anchor:middle;pointer-events:none}.h-seats{fill:#5b4745;font:400 16px "Ledger",serif;pointer-events:none}
.h-table:hover .h-table-box,.h-table:focus-visible .h-table-box{fill:#f0cfd2}
.h-table.is-selected .h-table-box{fill:var(--wine);stroke:var(--gold);stroke-width:3.5}.h-table.is-selected .h-seats{fill:var(--cream)}.h-table.is-selected .h-sofa{fill:var(--wine-d)}
.h-table.is-selected .h-num{fill:var(--cream)}
.hall-panel{padding:26px;border:1.5px solid var(--gold-l);border-radius:44px 8px 44px 8px;background:rgba(75,9,18,.45)}
.hp-t{font-size:clamp(34px,3.4vw,46px);margin:4px 0;color:var(--gold-l)}.hp-s{margin:0 0 10px;opacity:.9;font-style:italic}
.hp-cta{margin:14px 0}.chips{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}
.hall-chip{width:46px;height:46px;border-radius:50%;border:1.5px solid rgba(241,232,214,.7);background:transparent;color:var(--cream);font:400 20px var(--f-d);cursor:pointer;transition:.2s}
.hall-chip:hover{background:rgba(241,232,214,.14)}.hall-chip.is-selected{background:var(--cream);color:var(--wine-d)}
.legend{font-size:14px;margin:6px 0 12px;opacity:.9}.lg{display:inline-block;width:12px;height:12px;border-radius:3px;margin:0 6px 0 12px;vertical-align:-1px;border:1.5px solid var(--cream)}
.legend .lg:first-child{margin-left:0}.lg-s{background:var(--rose)}.lg-tv{background:var(--sage)}.lg-c{border-radius:50%}

/* афиша */
.pos{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:36px 22px}
.mat-f{position:relative;padding:12px;background:#fff;box-shadow:0 0 0 2px var(--gold),0 18px 34px rgba(75,9,18,.22)}
.mat-f img{width:100%}.po.is-past img{filter:grayscale(1) sepia(.2)}
.tg{position:absolute;left:50%;top:-12px;transform:translateX(-50%);background:var(--wine);color:var(--cream);font:400 12px var(--f-d);letter-spacing:.2em;text-transform:uppercase;padding:6px 14px;border-radius:999px;white-space:nowrap}
.tg-g{background:#6b6b6b}
.po h3{font-size:24px;margin:16px 0 2px;color:var(--wine)}.po-tag{margin:0 0 6px;font-size:16px;opacity:.85}
.po summary{cursor:pointer;font:400 12.5px var(--f-d);letter-spacing:.2em;text-transform:uppercase;color:var(--wine);padding:8px 0;list-style:none}
.po summary::-webkit-details-marker{display:none}.po summary::after{content:" +"}.po details[open] summary::after{content:" –"}
.po .facts{text-align:left}.po .facts div{grid-template-columns:96px 1fr;font-size:15px;border-color:rgba(108,15,29,.25)}.po .facts dt{color:var(--wine)}

/* вакансии, faq, контакты */
.vcs{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:26px;text-align:left}
.vc{display:grid;grid-template-columns:minmax(110px,38%) 1fr;gap:20px;align-items:center;padding:18px;background:var(--cream);border-radius:8px 44px 8px 44px;box-shadow:0 0 0 1.5px var(--gold)}
.vc img{width:100%;height:100%;object-fit:cover;border-radius:8px 30px 8px 30px}.vc h3{font-size:30px;color:var(--wine);margin:4px 0 8px}
.vc .facts div{grid-template-columns:96px 1fr;font-size:15px;border-color:rgba(108,15,29,.25)}.vc .facts dt{color:var(--wine)}
.faq-l{text-align:left}.faq-l details{border-bottom:1px dotted rgba(108,15,29,.45)}
.faq-l summary{cursor:pointer;list-style:none;font:400 clamp(20px,2.2vw,26px)/1.3 var(--f-d);padding:18px 40px 18px 4px;position:relative;color:var(--wine)}
.faq-l summary::-webkit-details-marker{display:none}
.faq-l summary::after{content:"◆";position:absolute;right:8px;top:50%;transform:translateY(-50%);color:var(--gold);transition:.3s}.faq-l details[open] summary::after{transform:translateY(-50%) rotate(90deg);color:var(--wine)}
.faq-l details p{margin:0 0 18px 4px;opacity:.85}
.tel-b{font:400 clamp(30px,5vw,64px)/1.15 var(--f-d);letter-spacing:.04em;margin:0 0 40px}.tel-b a{text-decoration:none;color:var(--cream)}.tel-b a:hover{color:var(--gold-l)}
.ct{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:30px;text-align:center}
.ct h3{font-size:26px;text-transform:uppercase;letter-spacing:.14em;color:var(--gold-l);margin-bottom:10px}.ct p{margin:.3em 0}
.hrs{list-style:none;margin:0;padding:0}.hrs li{display:flex;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px dotted rgba(241,232,214,.4);font-size:19px}
.ct .btn{margin-top:12px}.b-wine .status{color:var(--cream)}.b-wine .status::before{background:#d3a1a8}.b-wine .status.is-open::before{background:#7be39d}

/* подвал */
.foot-w{background:var(--wine-d);color:var(--cream);padding:46px 0 70px;text-align:left}
.fw-g{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:30px;padding-bottom:26px;width:min(1100px,100% - 48px)}
.foot-w h3{font-size:22px;margin-bottom:12px;color:var(--gold-l)}.foot-w a{display:block;text-decoration:none;color:#e8d8c9;padding:5px 0}.foot-w a:hover{color:var(--gold-l)}
.fb img{width:80px;height:auto;border-radius:50%;margin-bottom:10px;background:var(--cream);padding:3px}.fb p{opacity:.85}
.fw-b{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;border-top:1px solid rgba(241,232,214,.22);padding-top:18px;font-size:14px;color:#e8d8c9;width:min(1100px,100% - 48px)}
.fw-b p{margin:0}.credit a{display:inline;color:var(--gold-l)}

@media (max-width:1020px){
  .nav{display:none}.top-in{grid-template-columns:auto 1fr auto}.burger{display:grid;justify-self:end}.top-cta{display:none}
  body.nav-open .nav{display:flex;position:fixed;inset:68px 0 0 0;background:var(--cream);flex-direction:column;justify-content:flex-start;padding:24px;gap:0;overflow:auto;z-index:70}
  body.nav-open .nav a{font-size:26px;letter-spacing:.1em;padding:14px 4px;border-bottom:1px dotted rgba(108,15,29,.4)}
  .hero{grid-template-columns:1fr 1fr}.hero-c{grid-column:1/-1;order:3}.h-l,.h-r{max-width:240px;justify-self:center;width:100%;transform:none}
  .steps{grid-template-columns:1fr 1fr;row-gap:24px}.steps::before{display:none}
  .feat{grid-template-columns:repeat(3,1fr)}
  .hk,.kr,.hall-grid{grid-template-columns:1fr}.kr-t,.hk-t{text-align:center}.kr .arch{max-width:300px}
  .medals{grid-template-columns:1fr;max-width:360px;margin-inline:auto}
  .fw-g{grid-template-columns:1fr 1fr}.vc{grid-template-columns:1fr}.vc img{max-height:260px}
}
@media (max-width:560px){
  body{font-size:17.5px}.feat{grid-template-columns:repeat(2,1fr)}.steps{grid-template-columns:1fr}.mpanel ul{columns:1}
  .facts div{grid-template-columns:1fr;gap:2px}.fw-g{grid-template-columns:1fr}.stm{grid-template-columns:1fr}
  .arches .arch{width:32%}.det li{grid-template-columns:56px 1fr}.ico{width:72px;height:72px}.hd h2 span::before,.hd h2 span::after{display:none}
}

/* ---- мобильная версия ---- */

body{--mb-bg:#4B0912;--mb-fg:#F1E8D6;--mb-ac:#D6B574;--mb-ac-fg:#3a0710;--mb-line:rgba(214,181,116,.45);--mb-font:"Ledger",serif;
  --mb-card:#FBF6EA;--mb-card-fg:#2B1517;--mb-r:8px 36px 8px 36px;--mb-btn-r:999px}
@media (max-width:768px){
  .top-in{padding:6px 14px}.brand{font-size:23px}.brand img{width:40px}
  /* первый экран: сначала название и кнопка, ниже — пара арок с фото */
  .hero{padding:26px 16px 36px;gap:14px 12px}
  .hero-c{order:-1}.orn-top{width:96px}
  .date{font-size:11px;letter-spacing:.18em;margin-bottom:14px}
  .h1-a{font-size:clamp(46px,14.4vw,62px)}.h1-b{font-size:clamp(22px,7vw,30px);letter-spacing:.16em}
  .sc-big{font-size:clamp(28px,8.4vw,36px);margin-top:8px}.sub{font-size:17px}
  .hero .cta{margin-top:18px}.hero .cta .btn{flex:1 1 100%}
  .h-l,.h-r{max-width:100%}
  .band{padding:44px 0}
  .in{width:calc(100% - 32px)}
  .hd{margin-bottom:22px}.hd h2{font-size:clamp(30px,9.4vw,42px);letter-spacing:.06em}.hd .sc{font-size:20px}
  .k{font-size:11px}
  .lead{font-size:19px;margin-bottom:22px}
  /* программа вечера — вертикальная лента */
  .steps{grid-template-columns:1fr;row-gap:0;text-align:left}
  .steps li{flex-direction:row;align-items:center;gap:14px;padding:12px 0;border-bottom:1px dotted rgba(108,15,29,.35)}
  .steps li:last-child{border-bottom:0}
  .ico{width:60px;height:60px;flex:none;box-shadow:0 0 0 1.5px var(--gold),0 0 0 5px var(--sand)}.ic{width:32px;height:32px}
  .steps b{margin-top:0;font-size:17px;min-width:96px;text-align:left}.steps small{font-size:15px;text-align:left}
  /* атмосфера */
  .meds li{width:calc(50% - 14px)}
  /* меню: блюда — свайп, категории — полоса вкладок */
  .feat{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 16px 12px;margin:0 -16px 20px;-webkit-overflow-scrolling:touch}
  .feat li{flex:0 0 132px;scroll-snap-align:start}
  .round{width:112px;box-shadow:0 0 0 2px var(--gold),0 0 0 5px var(--cream),0 0 0 6.5px var(--wine)}
  .feat h3{font-size:14px}
  .mh3{font-size:19px;margin-bottom:20px}
  .mtabs{flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;margin:0 -16px 14px;padding:0 16px 8px;-webkit-overflow-scrolling:touch}
  .mtab{flex:0 0 auto;padding:10px 14px}
  .mpanels{padding:16px 14px;border-radius:8px 28px 8px 28px}
  .mpanel h3{font-size:22px}.mn{font-size:16.5px}.mp{font-size:16px}
  /* паротейли */
  .stm{grid-template-columns:1fr;gap:8px}
  .stm li{display:flex;justify-content:space-between;align-items:center;text-align:left;border-radius:10px;padding:12px 14px}
  .stm b{order:2;font-size:22px}.stm span{margin:0;font-size:15px}
  .hk-ph{max-width:270px}
  /* акции — медали-свайп */
  .medals{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;max-width:none;margin:0 -16px;padding:6px 16px 14px;-webkit-overflow-scrolling:touch}
  .medals li{flex:0 0 74%;scroll-snap-align:center}
  .medal{width:170px}
  /* афиша — свайп */
  .pos{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;margin:0 -16px;padding:10px 16px 14px;-webkit-overflow-scrolling:touch}
  .po{flex:0 0 70%;scroll-snap-align:center}
  .arches .arch{width:31%}
  .det li{gap:12px}
  .tel-b{font-size:clamp(26px,8.6vw,36px);margin-bottom:26px}
  .feat,.mtabs,.medals,.pos{scrollbar-width:none}
  .feat::-webkit-scrollbar,.mtabs::-webkit-scrollbar,.medals::-webkit-scrollbar,.pos::-webkit-scrollbar{display:none}
}

@media (max-width:768px){.vac-grid,.vcs,.ads,.pos,.ct-grid,.ct-g,.cards{grid-template-columns:minmax(0,1fr)}.vac,.vc,.ad,.patch,.card{min-width:0}}
