/* v2 — развороты 04–11 по грамматике Ж01–Ж03.
   Правила: сгиб на 720; текстовая полоса — поля 80 от сгиба и от края,
   колонка 560; шапка Cormorant 64 с курсивной красной второй строкой;
   действие — строка между двух линеек (класс из Ж03); ни теней, ни
   скруглений, ни наложенных карточек. */

.v2 figure { margin: 0; }
.v2 .v2-media { overflow: hidden; background: #1A1210; }
.v2 .v2-media img, .v2 .v2-media video { width: 100%; height: 100%; object-fit: cover; display: block; }

.v2-title { margin: 0; font: 400 calc(64 * var(--u))/.98 var(--fh, "Cormorant Garamond"), Georgia, serif; letter-spacing: -.025em; color: #1E1715; }
.v2-title em { color: #92252B; }
.v2-sub { margin: 0; font: 400 calc(40 * var(--u))/1 var(--fh, "Cormorant Garamond"), Georgia, serif; letter-spacing: -.02em; color: #1E1715; }
.v2-sub em { color: #92252B; }
.v2-lead { margin: 0; font: 400 calc(22 * var(--u))/1.2 var(--fh, "Cormorant Garamond"), Georgia, serif; color: #2D2420; }
.v2-body { margin: 0; font: calc(14 * var(--u))/1.5 var(--ft, "PT Serif"), Georgia, serif; color: #4A3B35; }
.v2-body a { color: #92252B; text-decoration: none; border-bottom: 1px solid currentColor; }
.v2-credit { font: 500 calc(10 * var(--u))/1 "HK Grotesk", Arial, sans-serif; letter-spacing: .15em; color: #8E242A; }

/* Список с подменой кадра на соседней полосе. */
.v2-list { margin: 0; padding: 0; list-style: none; border-top: 1px solid #D9D2CE; }
.v2-list li { border-bottom: 1px solid #D9D2CE; }
.v2-list button {
  all: unset; box-sizing: border-box; cursor: pointer; width: 100%;
  display: grid; grid-template-columns: calc(44 * var(--u)) 1fr; column-gap: 0;
  padding: calc(14 * var(--u)) 0 calc(13 * var(--u));
}
.v2-list__n { grid-row: span 2; padding-top: calc(7 * var(--u)); font: 500 calc(10 * var(--u))/1 "HK Grotesk", Arial, sans-serif; letter-spacing: .15em; color: #92252B; }
.v2-list__t { font: 400 calc(28 * var(--u))/1.05 var(--fh, "Cormorant Garamond"), Georgia, serif; color: #1E1715; transition: color .25s; }
.v2-list__d { margin-top: calc(4 * var(--u)); font: calc(12 * var(--u))/1.3 var(--ft, "PT Serif"), Georgia, serif; color: #8A7D77; }
.v2-list button:hover .v2-list__t,
.v2-list button[aria-current="true"] .v2-list__t { color: #92252B; font-style: italic; }
.v2-list button:focus-visible { outline: 2px solid #92252B; outline-offset: 2px; }

.v2-stack { overflow: hidden; background: #1A1210; }
.v2-stack img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: 0; transition: opacity .45s ease; }
.v2-stack img.is-on { opacity: 1; }
.v2-stack--over { background: transparent; pointer-events: none; }

/* Ж06 · фотоистория */
.v2-story__shade { background: linear-gradient(0deg, #0E0B0ACC, #0E0B0A00); pointer-events: none; }
.v2-story__title { margin: 0; font: 400 calc(96 * var(--u))/.9 var(--fh, "Cormorant Garamond"), Georgia, serif; letter-spacing: -.035em; color: #FFF6EC; }
.v2-story__title em { display: block; color: #F0B9B4; }
.v2-story__cap { margin: 0; font: 500 calc(10 * var(--u))/1.5 "HK Grotesk", Arial, sans-serif; letter-spacing: .15em; text-transform: uppercase; color: #E6D8C6; }

/* Ж07 · программка */
.v2-prog { margin: 0; padding: 0; list-style: none; border-top: 1px solid #D9D2CE; }
.v2-prog li { padding: calc(14 * var(--u)) 0; border-bottom: 1px solid #D9D2CE; font: calc(14 * var(--u))/1.35 var(--ft, "PT Serif"), Georgia, serif; color: #4A3B35; }
.v2-prog span { display: block; margin-bottom: calc(4 * var(--u)); font: 400 calc(34 * var(--u))/1 var(--fh, "Cormorant Garamond"), Georgia, serif; color: #92252B; }

/* Ж08 · ссылка без верхней линейки, чтобы две строки делили одну */
.v2-link--top0 { border-top: 0 !important; }

/* Ж09 · цифры залов */
.v2-nums { display: flex; gap: calc(36 * var(--u)); margin: 0; }
.v2-nums div { display: flex; align-items: baseline; gap: calc(8 * var(--u)); }
.v2-nums dt { font: 400 calc(36 * var(--u))/1 var(--fh, "Cormorant Garamond"), Georgia, serif; color: #92252B; }
.v2-nums dd { margin: 0; font: calc(13 * var(--u))/1 var(--ft, "PT Serif"), Georgia, serif; color: #4A3B35; }

/* Ж10 · карточка брони */
.v2-card { box-sizing: border-box; display: flex; flex-direction: column; gap: calc(14 * var(--u)); padding: calc(26 * var(--u)) calc(30 * var(--u)) calc(28 * var(--u)); border: 1px solid #92252B; outline: 1px solid #92252B; outline-offset: calc(-7 * var(--u)); }
.v2-card__head { display: flex; justify-content: space-between; align-items: center; font: 500 calc(11 * var(--u))/1 "HK Grotesk", Arial, sans-serif; letter-spacing: .2em; color: #92252B; }
.v2-card__head .fly { color: #92252B; }
.v2-card__where { display: flex; gap: calc(28 * var(--u)); margin: 0; padding: 0 0 calc(4 * var(--u)); border: 0; }
.v2-card__where legend { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.v2-card__where label { display: flex; align-items: center; gap: calc(8 * var(--u)); cursor: pointer; font: 400 calc(22 * var(--u))/1 var(--fh, "Cormorant Garamond"), Georgia, serif; color: #1E1715; }
.v2-card__where input { accent-color: #92252B; width: calc(15 * var(--u)); height: calc(15 * var(--u)); margin: 0; }
.v2-card__f { display: grid; grid-template-columns: calc(110 * var(--u)) 1fr; align-items: end; border-bottom: 1px solid #CDBFBA; padding-bottom: calc(6 * var(--u)); }
.v2-card__f span { font: 500 calc(10 * var(--u))/1 "HK Grotesk", Arial, sans-serif; letter-spacing: .16em; text-transform: uppercase; color: #8A7D77; padding-bottom: calc(4 * var(--u)); }
.v2-card__f input, .v2-card__f select { all: unset; box-sizing: border-box; width: 100%; cursor: pointer; font: 400 calc(24 * var(--u))/1.1 var(--fh, "Cormorant Garamond"), Georgia, serif; color: #1E1715; }
.v2-card__f input::-webkit-calendar-picker-indicator { opacity: .5; cursor: pointer; }
.v2-card__f:focus-within { border-color: #92252B; }
.v2-card__go { all: unset; box-sizing: border-box; cursor: pointer; margin-top: auto; display: flex; justify-content: space-between; align-items: center; height: calc(52 * var(--u)); padding: 0 calc(20 * var(--u)); background: #92252B; color: #FFF6EC; font: 500 calc(14 * var(--u))/1 "HK Grotesk", Arial, sans-serif; letter-spacing: .12em; }
.v2-card__go span { font-size: calc(22 * var(--u)); }
.v2-card__go:hover { background: #7A1C22; }
.v2-card__go:focus-visible { outline: 2px solid #92252B; outline-offset: 3px; }

/* Ж11 · задняя обложка */
.v2-back__name { margin: 0; display: flex; flex-direction: column; font: 400 calc(118 * var(--u))/.95 "Druzhok", "Cormorant Garamond", serif; color: #FFF6EC; }
.v2-back__name span:last-child { color: #F0B9B4; }
.v2-back__map { overflow: hidden; background: #3B332F; }
.v2-back__map img { width: 100%; height: 100%; object-fit: cover; display: block; }
.v2-back__map figcaption { position: absolute; right: calc(14 * var(--u)); bottom: calc(10 * var(--u)); font: calc(10 * var(--u)) "HK Grotesk", Arial, sans-serif; color: #FFF; }
.v2-link--light { color: #FFF6EC !important; border-color: #FFF6EC80 !important; }
.v2-link--light:hover { border-color: #FFF6EC !important; }

/* Журнальные приёмы на шаблоне «список» (Ж04, Ж05). */
.v2-stack img { opacity: 1; clip-path: inset(100% 0 0 0); transform: scale(1.06); transition: clip-path .7s cubic-bezier(.7,0,.2,1), transform 1.6s ease-out; }
.v2-stack img.is-on { clip-path: inset(0 0 0 0); transform: scale(1); z-index: 2; }
.v2-stack img.was-on { clip-path: inset(0 0 0 0); transform: scale(1); z-index: 1; }
.v2-stack__num, .v2-stack__cap, .v2-stack__credit { position: absolute; z-index: 3; pointer-events: none; color: #FFF6EC; }
.v2-stack__num { left: calc(36 * var(--u)); bottom: calc(10 * var(--u)); font: italic 400 calc(260 * var(--u))/.8 var(--fh, "Cormorant Garamond"), Georgia, serif; letter-spacing: -.04em; text-shadow: 0 0 calc(40 * var(--u)) #0006; transition: opacity .3s; }
.v2-stack__cap { left: calc(44 * var(--u)); bottom: calc(232 * var(--u)); font: 500 calc(11 * var(--u))/1 "HK Grotesk", Arial, sans-serif; letter-spacing: .2em; text-transform: uppercase; text-shadow: 0 1px 6px #0008; }
.v2-stack__credit { right: calc(16 * var(--u)); top: calc(36 * var(--u)); writing-mode: vertical-rl; font: 500 calc(9 * var(--u))/1 "HK Grotesk", Arial, sans-serif; letter-spacing: .22em; opacity: .75; }
.v2-stack--over .v2-stack__num:empty, .v2-stack--over .v2-stack__cap:empty { opacity: 0; }

.v2-list button { position: relative; }
.v2-list button::after { content: "→"; position: absolute; right: 0; top: 50%; transform: translate(calc(-12 * var(--u)), -50%); opacity: 0; color: #92252B; font: 400 calc(26 * var(--u))/1 var(--fh, "Cormorant Garamond"), Georgia, serif; transition: opacity .25s, transform .35s; }
.v2-list button[aria-current="true"]::after { opacity: 1; transform: translate(0, -50%); }
.v2-co { width: calc(16 * var(--u)); height: calc(16 * var(--u)); margin-left: calc(8 * var(--u)); vertical-align: super; color: #C0272D; }
.v2-note { display: flex; align-items: center; gap: calc(6 * var(--u)); font: calc(12 * var(--u))/1 var(--ft, "PT Serif"), Georgia, serif; color: #C0272D; }
.v2-note .fly { width: calc(14 * var(--u)); height: calc(14 * var(--u)); }
.v2-folio { color: #8A7D77; }

/* ── Vogue-грамматика (Ж05–Ж07) ───────────────────────────────────── */
.v2-ed__section { font: 400 calc(13 * var(--u))/1 var(--fh, "Cormorant Garamond"), Georgia, serif; letter-spacing: .14em; color: #1E1715; }
.v2-ed__title { margin: 0; text-align: center; font: 400 calc(76 * var(--u))/.95 var(--fh, "Cormorant Garamond"), Georgia, serif; letter-spacing: -.035em; color: #120D0C; }
.v2-ed__title em { color: #92252B; }
.v2-ed__title--big { font-size: calc(92 * var(--u)); }
.v2-ed__stand { margin: 0; text-align: center; font: 400 calc(22 * var(--u))/1.22 var(--fh, "Cormorant Garamond"), Georgia, serif; color: #2D2420; }
.v2-ed__by { text-align: center; font: 700 calc(10 * var(--u))/1 "HK Grotesk", Arial, sans-serif; letter-spacing: .16em; color: #1E1715; }
.v2-ed__body { margin: 0; text-align: justify; hyphens: auto; font: calc(13.5 * var(--u))/1.5 var(--ft, "PT Serif"), Georgia, serif; color: #2B2320; }
.v2-ed__drop { float: left; margin: calc(4 * var(--u)) calc(8 * var(--u)) 0 0; font: 400 calc(64 * var(--u))/.78 var(--fh, "Cormorant Garamond"), Georgia, serif; color: #92252B; }
.v2-ed__sub b { display: block; font: 700 calc(15 * var(--u))/1.2 "HK Grotesk", Arial, sans-serif; color: #1E1715; }
.v2-ed__sub span { display: block; margin-top: calc(4 * var(--u)); font: calc(13 * var(--u))/1.45 var(--ft, "PT Serif"), Georgia, serif; color: #4A3B35; }
.v2-ed__folio { font: 500 calc(9 * var(--u))/1 "HK Grotesk", Arial, sans-serif; letter-spacing: .16em; color: #8A7D77; }
.v2-ed__folio b { margin: 0 calc(14 * var(--u)); font: 400 calc(13 * var(--u))/1 var(--fh, "Cormorant Garamond"), Georgia, serif; letter-spacing: 0; color: #1E1715; }
.v2-ed__vcredit { writing-mode: vertical-rl; transform: rotate(180deg); font: 500 calc(7.5 * var(--u))/1 "HK Grotesk", Arial, sans-serif; letter-spacing: .18em; color: #8A7D77; z-index: 4; }
.v2-ed__vcredit--light { color: #FFF6ECB0; }

/* Подписи-блоки, как «BLOOM IN LOVE»: жирный капс, под ним мелко. */
.v2-caps { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: 1fr 1fr; column-gap: calc(32 * var(--u)); row-gap: calc(30 * var(--u)); }
.v2-caps li:last-child { grid-column: 1 / -1; }
.v2-caps button { all: unset; box-sizing: border-box; cursor: pointer; display: block; width: 100%; padding-left: calc(12 * var(--u)); border-left: 2px solid transparent; transition: border-color .25s; }
.v2-caps b { display: block; font: 700 calc(11 * var(--u))/1.2 "HK Grotesk", Arial, sans-serif; letter-spacing: .14em; color: #1E1715; }
.v2-caps span { display: block; margin-top: calc(5 * var(--u)); font: calc(12 * var(--u))/1.4 var(--fm, var(--ft, "PT Serif")), Georgia, serif; color: #6A5C56; }
.v2-caps button:hover, .v2-caps button[aria-current="true"] { border-color: #92252B; }
.v2-caps button:hover b, .v2-caps button[aria-current="true"] b { color: #92252B; }
.v2-caps button:focus-visible { outline: 2px solid #92252B; outline-offset: 3px; }

/* «Рекламная» полоса: имя раздела шрифтом дома на белой плашке. */
.v2-ad__mark { display: flex; align-items: flex-end; justify-content: center; padding-bottom: calc(14 * var(--u)); box-sizing: border-box; background: #FFF; font: 400 calc(138 * var(--u))/1 "Druzhok", "Cormorant Garamond", serif; letter-spacing: .04em; color: #120D0C; }
.v2-ad__tag { writing-mode: vertical-rl; font: 500 calc(9 * var(--u))/1 "HK Grotesk", Arial, sans-serif; letter-spacing: .16em; color: #FFF6ECCC; z-index: 4; }
.v2-ad__cap { left: calc(36 * var(--u)) !important; bottom: calc(24 * var(--u)) !important; font: 400 calc(14 * var(--u))/1 "HK Grotesk", Arial, sans-serif !important; letter-spacing: .04em !important; text-transform: none !important; }

/* Центрированная страница (Sleeping Beauties). */
.v2-centre__t1, .v2-centre__t2 { margin: 0; text-align: center; font: 500 calc(64 * var(--u))/1 var(--fh, "Cormorant Garamond"), Georgia, serif; letter-spacing: -.01em; color: #120D0C; }
.v2-centre__t2 { font-size: calc(40 * var(--u)); letter-spacing: .02em; }
.v2-centre__cap { text-align: center; font: calc(11 * var(--u))/1.45 var(--fc, "HK Grotesk"), Arial, sans-serif; color: #3A3430; }
.v2-centre__cap b { display: block; margin-bottom: calc(3 * var(--u)); font-weight: 700; letter-spacing: .12em; color: #1E1715; }
.v2-centre__pull { margin: 0; text-align: center; font: 400 calc(23 * var(--u))/1.22 var(--fh, "Cormorant Garamond"), Georgia, serif; color: #1E1715; }

/* Коллаж с рваными краями (Sound of the city). */
.v2-collage__shade { background: linear-gradient(0deg, #0B0506D0, #0B050600); pointer-events: none; }
.v2-collage__cap { margin: 0; font: italic calc(15 * var(--u))/1.35 "Old Standard TT", Georgia, serif; color: #FFF6EC; }
.v2-torn { rotate: var(--rot, 0deg); filter: drop-shadow(0 calc(6 * var(--u)) calc(12 * var(--u)) #0007); }
.v2-torn--top { z-index: 3; }
.v2-torn > img, .v2-torn > video { position: absolute; inset: 0; display: block; width: 100%; height: 100%; object-fit: cover; }
.v2-torn__paper { position: absolute; inset: 0; background: #F4EFE7; }
.v2-torn figcaption { position: absolute; right: calc(16 * var(--u)); bottom: calc(18 * var(--u)); text-align: right; font: calc(12 * var(--u))/1.25 var(--ft, "PT Serif"), Georgia, serif; color: #FFF; text-shadow: 0 1px 6px #000A; }


/* ── Голоса разворотов ─────────────────────────────────────────────
   Как в Vogue: гарнитура шапки и текста меняется от материала
   к материалу. Номер держат общие вещи — сетка, рубрики капсом
   (HK Grotesk), колонтитул, линейки, красный, подписи и кредиты.
   --fh шапка, --ft текст, --fm мелкие составы, --fc подписи. */
.vz-food   { --fh: "Prata"; --ft: "EB Garamond"; }
.vz-food em, .vz-food .v2-list__t { font-style: normal; } /* у Prata нет курсива — выделяем цветом */
.vz-food .v2-list button[aria-current="true"] .v2-list__t, .vz-food .v2-list button:hover .v2-list__t { font-style: normal; }
.vz-food .v2-title { font-size: calc(56 * var(--u)); line-height: 1.05; letter-spacing: -.01em; }
.vz-food .v2-list__t { font-size: calc(24 * var(--u)); }
.vz-food .v2-list__d { font-size: calc(13.5 * var(--u)); }
.vz-food .v2-lead { font-family: "EB Garamond", Georgia, serif; font-style: italic; font-size: calc(21 * var(--u)); }

.vz-bar    { --fh: "Playfair Display"; --ft: "Spectral"; --fm: "IBM Plex Mono"; }
.vz-bar .v2-ed__title { font-style: italic; font-size: calc(68 * var(--u)); letter-spacing: -.02em; }
.vz-bar .v2-ed__title em { font-style: italic; }
.vz-bar .v2-ed__stand { font-size: calc(19 * var(--u)); line-height: 1.35; }
.vz-bar .v2-ed__body { font-weight: 300; font-size: calc(14 * var(--u)); line-height: 1.55; }
.vz-bar .v2-caps span { font-size: calc(10.5 * var(--u)); line-height: 1.5; letter-spacing: -.01em; }
.vz-bar .v2-ed__drop { font-style: italic; }

.vz-story  { --fh: "Oranienbaum"; --ft: "Noto Serif Display"; --fc: "Tenor Sans"; }
.vz-story .v2-centre__t1 { font-size: calc(82 * var(--u)); font-weight: 400; letter-spacing: 0; line-height: .95; }
.vz-story .v2-centre__t2 { font-size: calc(50 * var(--u)); font-weight: 400; letter-spacing: .03em; }
.vz-story .v2-centre__pull { font-family: "Noto Serif Display", Georgia, serif; font-weight: 300; font-style: italic; font-stretch: 85%; font-size: calc(22 * var(--u)); line-height: 1.3; }
.vz-story .v2-centre__cap b { font-family: "Tenor Sans", Arial, sans-serif; font-weight: 400; letter-spacing: .18em; }

.vz-salon  { --fh: "Noto Serif Display"; --ft: "Old Standard TT"; }
.vz-salon .v2-ed__title { font-weight: 300; font-stretch: 70%; font-size: calc(84 * var(--u)); letter-spacing: -.02em; line-height: .9; }
.vz-salon .v2-ed__title em { font-style: italic; font-weight: 300; }
.vz-salon .v2-ed__stand { font-family: "Old Standard TT", Georgia, serif; font-style: italic; font-weight: 400; font-size: calc(18 * var(--u)); line-height: 1.4; color: #1E1715; }
.vz-salon .v2-ed__body, .vz-salon .v2-ed__sub span { font-size: calc(14 * var(--u)); line-height: 1.55; }
.vz-salon .v2-ed__drop { font-weight: 300; font-stretch: 70%; font-size: calc(84 * var(--u)); margin-top: calc(6 * var(--u)); }
.vz-salon .v2-torn figcaption { font-family: "Old Standard TT", Georgia, serif; font-style: italic; }

.vz-events { --fh: "HK Grotesk"; --ft: "Literata"; }
.vz-events .v2-title { font-weight: 700; font-size: calc(58 * var(--u)); letter-spacing: -.035em; line-height: .98; }
.vz-events .v2-title em { font-style: normal; font-weight: 400; }
.vz-events .sr { font-family: "Literata", Georgia, serif !important; }

.vz-halls  { --fh: "Forum"; --ft: "Literata"; }
.vz-halls .v2-sub { font-size: calc(42 * var(--u)); letter-spacing: .01em; line-height: 1.05; }
.vz-halls .v2-sub em { font-style: normal; }
.vz-halls .v2-nums dt { font-size: calc(40 * var(--u)); }
.vz-halls .v2-body { font-size: calc(14 * var(--u)); }
.vz-food .v2-stack__num { font-style: normal; font-size: calc(200 * var(--u)); letter-spacing: -.02em; }
.vz-bar .v2-ad__cap { font-family: "Playfair Display", Georgia, serif !important; font-style: italic; font-size: calc(17 * var(--u)) !important; text-transform: none; }

/* Ж06 · программа салона под кадром — по центру, как вся правая полоса. */
.v2-centre__body { margin: 0; text-align: center; font: 400 calc(14.5 * var(--u))/1.5 var(--ft, "PT Serif"), Georgia, serif; color: #2B2320; }
.v2-centre__prog { display: flex; justify-content: center; gap: calc(44 * var(--u)); padding: calc(12 * var(--u)) 0; border-top: 1px solid #D9D2CE; }
.v2-centre__prog div { text-align: center; }
.v2-centre__prog b { display: block; font: 400 calc(28 * var(--u))/1 var(--fh, "Cormorant Garamond"), Georgia, serif; color: #92252B; }
.v2-centre__prog span { display: block; margin-top: calc(5 * var(--u)); font: 400 calc(10 * var(--u))/1.2 var(--fc, "HK Grotesk"), Arial, sans-serif; letter-spacing: .16em; text-transform: uppercase; color: #3A3430; }

/* ── Ж07 · Афиша как журнальная страница ─────────────────────────
   Шапка, лид, даты на полях, вечера абзацами, квартет вырезкой. */
.v2-ag2__kicker, .v2-ag2__folio { font: 500 calc(10 * var(--u))/1 "HK Grotesk", Arial, sans-serif; letter-spacing: .2em; color: #A51C1F; }
.v2-ag2__folio { color: #8A7D77; }
.v2-ag2__folio b { margin-right: calc(12 * var(--u)); font: 300 calc(13 * var(--u))/1 "Noto Serif Display", Georgia, serif; letter-spacing: 0; color: #1E1715; }
.v2-ag2__h { margin: 0; font: 300 calc(76 * var(--u))/1 "Noto Serif Display", Georgia, serif; font-stretch: 70%; letter-spacing: -.02em; color: #1E1715; }
.v2-ag2__h em { color: #A51C1F; }
.v2-ag2__lead { margin: 0; font: italic 300 calc(21 * var(--u))/1.3 "Noto Serif Display", Georgia, serif; color: #2D2420; }
.v2-ag2__rule { border-top: 1px solid #1E171540; }
.v2-ag2__date { display: flex; flex-direction: column; gap: calc(4 * var(--u)); color: #A51C1F; }
.v2-ag2__date span { font: 500 calc(10 * var(--u))/1 "HK Grotesk", Arial, sans-serif; letter-spacing: .2em; text-transform: uppercase; color: #1E1715; }
.v2-ag2__date b { font: 300 calc(120 * var(--u))/.82 "Noto Serif Display", Georgia, serif; font-stretch: 62.5%; letter-spacing: -.03em; }
.v2-ag2__ev button { all: unset; cursor: pointer; display: block; margin-bottom: calc(6 * var(--u)); }
.v2-ag2__ev button:focus { outline: none; }
.v2-ag2__ev button:focus-visible { outline: 1px solid #A51C1F; outline-offset: 3px; }
.v2-ag2__t { font: 300 calc(24 * var(--u))/1 "Noto Serif Display", Georgia, serif; font-stretch: 75%; color: #A51C1F; margin-right: calc(10 * var(--u)); }
.v2-ag2__n { font: italic 300 calc(26 * var(--u))/1.1 "Noto Serif Display", Georgia, serif; color: #1E1715; transition: color .25s; }
.v2-ag2__ev button[aria-current="true"] .v2-ag2__n, .v2-ag2__ev button:hover .v2-ag2__n { color: #A51C1F; }
.v2-ag2__ev p { margin: 0; text-align: justify; hyphens: auto; font: calc(13.5 * var(--u))/1.5 "Literata", Georgia, serif; color: #2B2320; }
.v2-ag2__drop { float: left; margin: calc(5 * var(--u)) calc(7 * var(--u)) 0 0; font: 300 calc(52 * var(--u))/.8 "Noto Serif Display", Georgia, serif; font-stretch: 70%; color: #A51C1F; }
/* Квартет вырезкой: фон рисунка дотягивается до белого и растворяется. */
.v2-ag2__art img { width: 100%; height: 100%; object-fit: contain; object-position: 50% 100%; display: block; filter: brightness(1.05) contrast(1.06); mix-blend-mode: multiply; }
.v2-ag2__cap { margin: 0; font: italic 300 calc(16 * var(--u))/1.3 "Noto Serif Display", Georgia, serif; color: #1E1715; }
.v2-ag2__book { margin: 0; font: calc(12.5 * var(--u))/1.5 "Literata", Georgia, serif; color: #4A3B35; }
.v2-ag2__book a { color: #A51C1F; text-decoration: none; border-bottom: 1px solid #A51C1F66; }
.v2-ag2__book a:hover { border-color: #A51C1F; }
.v2-ag2__book a[href^="tel"] { white-space: nowrap; }

/* Промо выбранного вечера — без растяжения. */
.v2-ag__media { overflow: hidden; background: #120D0C; }
.v2-ag__media figure { position: absolute; inset: 0; margin: 0; opacity: 0; transition: opacity .6s ease; }
.v2-ag__media figure.is-on { opacity: 1; }
.v2-ag__media img, .v2-ag__media video { width: 100%; height: 100%; object-fit: cover; display: block; }

/* ── Ж07 · Афиша, «статья + реклама» ────────────────────────────
   Левая полоса — программа, правая — живописный коллаж с именем дома.
   Две гарнитуры: Cormorant Garamond (шапка, числа, названия) и
   Spectral (текст, подписи, кнопка). Druzhok — только логотип. Капса с разрядкой нет, текст от 16 единиц. Красный — только
   числа дат, стрекоза, платье на картине и наведение. */
.v2-ag3 { --ease-out: cubic-bezier(0.23, 1, 0.32, 1); --red: #A51C1F; --ink: #1E1715; --muted: #6E625C; }
.v2-ag3 ::selection { background: var(--red); color: #FFF; }

/* Шапка раздела по центру — как подпись дома на главной. */
.v2-ag3__head { display: flex; flex-direction: column; align-items: center; text-align: center; }
.v2-ag3__head .fly { width: calc(30 * var(--u)); height: calc(30 * var(--u)); color: var(--red); }
.v2-ag3__head h2 { margin: calc(10 * var(--u)) 0 0; font: 400 calc(56 * var(--u))/1 "Cormorant Garamond", Georgia, serif; letter-spacing: .14em; text-transform: uppercase; color: var(--ink); padding-left: .14em; }
.v2-ag3__head p { margin: calc(12 * var(--u)) 0 0; font: 400 calc(11 * var(--u))/1 "Spectral", Georgia, serif; letter-spacing: .2em; text-transform: uppercase; color: var(--muted); padding-left: .2em; }

/* Кадры — одна обработка: монохром, тёплый, как живопись справа. */
.v2-ag3__shot { display: block; margin: 0; overflow: hidden; background: #1A120E; cursor: pointer; -webkit-tap-highlight-color: transparent; transition: transform .16s var(--ease-out); }
.v2-ag3__shot img { width: 100%; height: 100%; object-fit: cover; display: block; filter: grayscale(1) sepia(.42) contrast(1.08) brightness(var(--br, .9)); transition: transform .5s var(--ease-out), filter .3s ease; }
.v2-ag3__shot:active { transform: scale(.98); }
.v2-ag3__shot:focus { outline: none; }
.v2-ag3__shot:focus-visible { outline: 2px solid var(--red); outline-offset: 3px; }

.v2-ag3__item { display: flex; flex-direction: column; justify-content: space-between; }
.v2-ag3__date { display: flex; align-items: center; gap: calc(12 * var(--u)); color: var(--red); }
.v2-ag3__date b { font: 400 calc(92 * var(--u))/.72 "Cormorant Garamond", Georgia, serif; font-variant-numeric: lining-nums; letter-spacing: -.02em; }
.v2-ag3__date span { font: 400 calc(16 * var(--u))/1.3 "Spectral", Georgia, serif; color: var(--ink); }
.v2-ag3__n { margin: 0; font: italic 400 calc(30 * var(--u))/1.1 "Cormorant Garamond", Georgia, serif; color: var(--ink); }
.v2-ag3__d { margin: calc(6 * var(--u)) 0 0; font: 300 calc(16 * var(--u))/1.5 "Spectral", Georgia, serif; color: var(--ink); }

.v2-ag3__btn { display: inline-flex; align-items: center; justify-content: center; gap: calc(10 * var(--u)); height: calc(48 * var(--u)); min-height: 40px; padding: 0 calc(20 * var(--u)); box-sizing: border-box; background: var(--ink); color: #FFF; text-decoration: none; font: 400 calc(16 * var(--u))/1 "Spectral", Georgia, serif; cursor: pointer; transition: background-color .2s ease, transform .16s var(--ease-out); -webkit-tap-highlight-color: transparent; }
.v2-ag3__btn span { transition: transform .2s var(--ease-out); }
.v2-ag3__btn:active { transform: scale(.97); }
.v2-ag3__btn:focus { outline: none; }
.v2-ag3__btn:focus-visible { outline: 2px solid var(--red); outline-offset: 3px; }
.v2-ag3__live { margin: 0; display: flex; align-items: center; font: 300 calc(16 * var(--u))/1.35 "Spectral", Georgia, serif; color: var(--ink); }
.v2-ag3__live b { font-weight: 400; color: var(--ink); }
.v2-ag3__folio { font: 400 calc(12 * var(--u))/1 "Spectral", Georgia, serif; color: var(--muted); }
.v2-ag3 .v2-ed__vcredit { font: 400 calc(10 * var(--u))/1 "Spectral", Georgia, serif; letter-spacing: 0; color: var(--muted); }

@media (hover: hover) {
  .v2-ag3__btn:hover { background: var(--red); }
  .v2-ag3__btn:hover span { transform: translateX(calc(4 * var(--u))); }
  .v2-ag3__shot:hover img { transform: scale(1.04); filter: grayscale(.2) sepia(.15) contrast(1.05) brightness(.95); }
}

.v2-ag3__ad { margin: 0; overflow: hidden; background: #0A0707; }
.v2-ag3__ad img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 85%; display: block; }
.v2-ag3__mark { text-align: center; font: 400 calc(138 * var(--u))/1 "Druzhok", "Cormorant Garamond", serif; letter-spacing: .04em; color: #FFF; z-index: 3; }
/* Один авторский момент: имя дома поднимается на тёмное поле картины. */
@media (prefers-reduced-motion: no-preference) {
  .spread[data-reveal] .v2-ag3__mark[data-rv] { transform: translateY(calc(70 * var(--u))); transition: opacity .4s ease .15s, transform .9s var(--ease-out) .15s; }
  .spread[data-reveal][data-in] .v2-ag3__mark[data-rv] { transform: none; }
}

/* Карточка брони на Ж09 подсвечивается, когда в неё пришли с афиши:
   переход, а не ключевые кадры — повторный клик не обрывает его. */
.v2-card { transition: box-shadow .5s ease; }
.v2-card.is-picked { box-shadow: 0 0 0 calc(3 * var(--u)) #A51C1F; transition-duration: .15s; }

/* ── Ж08 · Залы: каждый зал — фото в обрез на свою полосу ─────────
   Текст на тёмной вуали внизу кадра (единственный градиент — вуаль
   под текстом). Шрифты Ж07: Cormorant Garamond + Spectral. */
.v2-hl { --ease-out: cubic-bezier(0.23, 1, 0.32, 1); --red: #A51C1F; }
.v2-hl ::selection { background: var(--red); color: #FFF; }
.v2-hl__ph { margin: 0; overflow: hidden; background: #0E0B0A; }
.v2-hl__ph img { width: 100%; height: 100%; object-fit: cover; display: block; }
.v2-hl__ph::after { content: ""; position: absolute; inset: 0; background: linear-gradient(to top, #0B0706F2 0%, #0B0706B3 28%, #0B070600 56%), linear-gradient(to bottom, #0B070699 0%, #0B070600 22%); pointer-events: none; }
.v2-hl__head { display: flex; flex-direction: column; align-items: center; text-align: center; color: #FFF; z-index: 3; }
.v2-hl__head .fly { width: calc(30 * var(--u)); height: calc(30 * var(--u)); color: #E04A44; }
.v2-hl__head h2 { margin: calc(10 * var(--u)) 0 0; padding-left: .14em; font: 400 calc(56 * var(--u))/1 "Cormorant Garamond", Georgia, serif; letter-spacing: .14em; text-transform: uppercase; }
.v2-hl__head p { margin: calc(12 * var(--u)) 0 0; padding-left: .2em; font: 400 calc(11 * var(--u))/1 "Spectral", Georgia, serif; letter-spacing: .2em; text-transform: uppercase; color: #FFFFFFCC; }
.v2-hl__txt { display: flex; flex-direction: column; align-items: flex-start; color: #FFF; z-index: 3; }
.v2-hl__txt h3 { margin: 0; font: 400 calc(64 * var(--u))/1 "Cormorant Garamond", Georgia, serif; letter-spacing: -.005em; }
.v2-hl__d { margin: calc(12 * var(--u)) 0 0; max-width: calc(470 * var(--u)); font: 300 calc(17 * var(--u))/1.5 "Spectral", Georgia, serif; color: #FFFFFFE6; }
.v2-hl__nums { display: flex; gap: calc(36 * var(--u)); margin: calc(22 * var(--u)) 0 0; }
.v2-hl__nums div { display: flex; align-items: baseline; gap: calc(8 * var(--u)); }
.v2-hl__nums dt { font: 400 calc(46 * var(--u))/1 "Cormorant Garamond", Georgia, serif; font-variant-numeric: lining-nums; }
.v2-hl__nums dd { margin: 0; font: 300 calc(15 * var(--u))/1 "Spectral", Georgia, serif; color: #FFFFFFCC; }
.v2-hl__row { display: flex; align-items: center; gap: calc(24 * var(--u)); }
.v2-hl__btn { display: inline-flex; align-items: center; gap: calc(10 * var(--u)); margin-top: calc(26 * var(--u)); height: calc(48 * var(--u)); min-height: 40px; padding: 0 calc(20 * var(--u)); box-sizing: border-box; background: #FFF; color: #1E1715; text-decoration: none; font: 400 calc(16 * var(--u))/1 "Spectral", Georgia, serif; cursor: pointer; transition: background-color .2s ease, color .2s ease, transform .16s var(--ease-out); -webkit-tap-highlight-color: transparent; }
.v2-hl__row .v2-hl__btn { margin-top: 0; }
.v2-hl__row { margin-top: calc(26 * var(--u)); }
.v2-hl__btn span { transition: transform .2s var(--ease-out); }
.v2-hl__btn:active { transform: scale(.97); }
.v2-hl__btn:focus { outline: none; }
.v2-hl__btn:focus-visible { outline: 2px solid #FFF; outline-offset: 3px; }
.v2-hl__more { font: 300 calc(16 * var(--u))/1 "Spectral", Georgia, serif; color: #FFF; text-decoration: none; border-bottom: 1px solid #FFFFFF80; padding-bottom: 2px; transition: border-color .2s ease; }
.v2-hl__folio { font: 400 calc(12 * var(--u))/1 "Spectral", Georgia, serif; color: #FFFFFFB3; z-index: 3; }
@media (hover: hover) {
  .v2-hl__btn:hover { background: var(--red); color: #FFF; }
  .v2-hl__btn:hover span { transform: translateX(calc(4 * var(--u))); }
  .v2-hl__more:hover { border-color: #FFF; }
}

/* ── Ж05 · левая полоса по одной оси ─────────────────────────────
   Журнал центрует страницу жёстко: всё стоит на оси листа (x=360),
   поля слева и справа равны (64). Абзац — по ширине с центрованной
   последней строкой, без буквицы: буквица ломает симметрию. */
.vz-bar .v2-ed__section, .vz-bar .v2-ed__folio { text-align: center; }
.vz-bar .v2-ed__body { text-align: justify; text-align-last: center; }
.vz-bar .v2-caps { text-align: center; }
.vz-bar .v2-caps button { padding-left: 0; border-left: 0; }
.vz-bar .v2-caps b { display: inline-block; padding-bottom: calc(3 * var(--u)); border-bottom: 1px solid transparent; transition: border-color .25s, color .25s; }
.vz-bar .v2-caps button:hover b, .vz-bar .v2-caps button[aria-current="true"] b { border-color: #92252B; }
.vz-bar .rm-restaurant-chef__menu { justify-content: center; gap: calc(14 * var(--u)); }
.vz-bar .v2-ed__folio b { margin-left: 0; }

/* ── Ж07 · материал дома (по референсу Divino) ──────────────────
   Тёплая бумага с облачной фактурой, стрекоза-водяной знак, золото
   стрекозы из брендбука (#B5995D) для орнамента и печать брони. */
.v2-ag3 { --gold: #B5995D; --paper: #EFE8DF; }
.v2-ag3__paper { overflow: hidden; background:
  radial-gradient(60% 40% at 20% 15%, #FFFFFF73 0%, #FFFFFF00 70%),
  radial-gradient(50% 35% at 85% 60%, #FFFFFF59 0%, #FFFFFF00 70%),
  radial-gradient(70% 45% at 40% 95%, #D9CFC233 0%, #D9CFC200 70%),
  var(--paper); }
.v2-ag3__paper::after { content: ""; position: absolute; inset: 0; opacity: .35; mix-blend-mode: multiply; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .55 0 0 0 0 .48 0 0 0 0 .40 0 0 0 .18 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E"); }
.v2-ag3__mono { position: absolute; left: 50%; top: 52%; width: calc(760 * var(--u)); height: auto; transform: translate(-50%, -50%) rotate(-8deg); color: var(--gold); opacity: .07; }
.v2-ag3__crest { position: relative; display: block; width: calc(96 * var(--u)); height: calc(50 * var(--u)); }
.v2-ag3__rays { position: absolute; left: 0; bottom: calc(-6 * var(--u)); width: 100%; height: auto; color: var(--gold); }
.v2-ag3__crest .fly { position: absolute; left: 50%; bottom: 0; transform: translateX(-50%); width: calc(30 * var(--u)); height: calc(30 * var(--u)); color: var(--gold); }
.v2-ag3__head .fly { color: var(--gold); }
.v2-ag3__star { color: var(--gold); }
.v2-ag3__btn { background: var(--ink); }

.v2-ag3__seal { display: grid; place-items: center; border-radius: 50%; background: var(--paper); color: var(--ink); text-decoration: none; z-index: 6; box-shadow: 0 calc(6 * var(--u)) calc(22 * var(--u)) #0000004D; transition: transform .16s var(--ease-out), background-color .25s ease, color .25s ease; -webkit-tap-highlight-color: transparent; }
.v2-ag3__ring { position: absolute; inset: 0; width: 100%; height: 100%; animation: v2-seal-spin 28s linear infinite; }
.v2-ag3__ring text { font: 500 11px/1 "Spectral", Georgia, serif; letter-spacing: .12em; fill: currentColor; }
.v2-ag3__seal .fly { width: calc(40 * var(--u)); height: calc(40 * var(--u)); color: var(--gold); transition: color .25s ease; }
.v2-ag3__seal:active { transform: scale(.96); }
.v2-ag3__seal:focus { outline: none; }
.v2-ag3__seal:focus-visible { outline: 2px solid var(--gold); outline-offset: 4px; }
@keyframes v2-seal-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .v2-ag3__ring { animation: none; } }
@media (hover: hover) {
  .v2-ag3__seal:hover { background: var(--red); color: #FFF; }
  .v2-ag3__seal:hover .fly { color: #FFF; }
  .v2-ag3__seal:hover .v2-ag3__ring { animation-duration: 9s; }
}

/* Ж07 · настоящие подложки (сгенерированы в Codex, 18.10):
   бумага плиткой, гравюра стрекозы водяным знаком, веер лучей. */
.v2-ag3__paper { background: url("media/v2/paper/paper.jpg") 0 0 / calc(560 * var(--u)) auto repeat, var(--paper); }
.v2-ag3__paper::after { display: none; }
.v2-ag3__mono { position: absolute; left: 50%; top: 56%; width: calc(820 * var(--u)); height: auto; transform: translate(-50%, -50%) rotate(-10deg); opacity: .11; mix-blend-mode: multiply; }
.v2-ag3__crest { position: relative; display: block; width: calc(220 * var(--u)); height: calc(110 * var(--u)); }
.v2-ag3__rays { position: absolute; left: 0; top: 0; width: 100%; height: auto; }
.v2-ag3__crestfly { position: absolute; left: 50%; top: calc(18 * var(--u)); width: calc(56 * var(--u)); height: auto; transform: translateX(-50%); }
.v2-ag3__head h2 { margin-top: calc(2 * var(--u)); }
.v2-ag3__sealfly { width: calc(56 * var(--u)); height: auto; transition: filter .25s ease; }
@media (hover: hover) { .v2-ag3__seal:hover .v2-ag3__sealfly { filter: brightness(0) invert(1); } }
.v2-ag3__crest { width: calc(150 * var(--u)); height: calc(70 * var(--u)); }
.v2-ag3__crestfly { top: calc(12 * var(--u)); width: calc(40 * var(--u)); }

/* ── Ж05 · Бар в материале дома ─────────────────────────────────
   Бумага и шрифты как на Ж07 (Cormorant + Spectral), но свои приёмы:
   стрекоза в полёте вместо герба — летит к бокалу на правой полосе;
   коктейли — как строки винной карты (золотой номер, имя антиквой,
   состав курсивом); переход в карту — кнопка в двойной золотой рамке;
   плашка LE BAR — та же бумага, а не белый лист. */
.vz-bar { --gold: #B5995D; --paper: #EFE8DF; --ink: #1E1715; --red: #A51C1F; }
.vz-bar ::selection { background: var(--red); color: #FFF; }
.v2-bar__paper { overflow: hidden; background: url("media/v2/paper/paper.jpg") 0 0 / calc(560 * var(--u)) auto repeat, var(--paper); }
.vz-bar .v2-ed__section { font: 400 calc(12 * var(--u))/1 "Spectral", Georgia, serif; letter-spacing: .24em; color: var(--ink); }
.vz-bar .v2-ed__title { font: italic 400 calc(80 * var(--u))/.95 "Cormorant Garamond", Georgia, serif; letter-spacing: -.01em; color: var(--ink); }
.vz-bar .v2-ed__title em { color: var(--red); }
.vz-bar .v2-ed__stand { font: 400 calc(22 * var(--u))/1.3 "Cormorant Garamond", Georgia, serif; color: #2D2420; }
.vz-bar .v2-ed__by { font: italic 300 calc(14 * var(--u))/1 "Spectral", Georgia, serif; letter-spacing: .02em; color: #6E625C; }
.vz-bar .v2-ed__body { font: 300 calc(15 * var(--u))/1.6 "Spectral", Georgia, serif; color: var(--ink); }
.v2-bar__sep { color: var(--gold); }
.vz-bar .v2-caps { row-gap: calc(26 * var(--u)); }
.vz-bar .v2-caps b { font: 500 calc(21 * var(--u))/1.15 "Cormorant Garamond", Georgia, serif; letter-spacing: .01em; text-transform: none; color: var(--ink); }
.vz-bar .v2-caps b i { display: block; margin-bottom: calc(4 * var(--u)); font: italic 400 calc(14 * var(--u))/1 "Cormorant Garamond", Georgia, serif; color: var(--gold); }
.vz-bar .v2-caps span { font: italic 300 calc(13.5 * var(--u))/1.45 "Spectral", Georgia, serif; letter-spacing: 0; color: #4A3F3A; }
.vz-bar .v2-caps button:hover b, .vz-bar .v2-caps button[aria-current="true"] b { color: var(--red); border-color: transparent; }
/* Двойная золотая рамка: внешняя линия — border, внутренняя — outline с отступом внутрь. */
.vz-bar .rm-restaurant-chef__menu { justify-content: center; gap: calc(12 * var(--u)); border: 1px solid var(--gold); outline: 1px solid var(--gold); outline-offset: calc(-5 * var(--u)); color: var(--ink); font: 400 calc(15 * var(--u))/1 "Spectral", Georgia, serif; letter-spacing: .06em; transition: background-color .2s ease, color .2s ease; }
.vz-bar .rm-restaurant-chef__menu span { font-size: calc(18 * var(--u)); color: var(--gold); }
.vz-bar .rm-restaurant-chef__menu:hover { background: var(--ink); color: #FFF; border-color: var(--ink); }
.vz-bar .v2-ed__folio { font: 400 calc(12 * var(--u))/1 "Spectral", Georgia, serif; letter-spacing: .04em; color: #6E625C; }
.vz-bar .v2-ed__folio b { font: 400 calc(13 * var(--u))/1 "Cormorant Garamond", Georgia, serif; color: var(--ink); }
.vz-bar .v2-ed__vcredit { font: 400 calc(10 * var(--u))/1 "Spectral", Georgia, serif; letter-spacing: 0; color: #6E625C; }
.vz-bar .v2-ad__mark { background: url("media/v2/paper/paper.jpg") 0 0 / calc(560 * var(--u)) auto repeat, var(--paper); }
.vz-bar .v2-ad__cap { font-family: "Cormorant Garamond", Georgia, serif !important; }
.vz-bar .v2-caps { row-gap: calc(20 * var(--u)); }
.vz-bar .v2-caps b i { font-size: calc(15 * var(--u)); color: #9C7F45; }
/* Стрекоза — не водяной знак, а акцент: в углу у сгиба, летит к бокалу.
   Селектор с .vz-bar — иначе .remix img растягивает картинку на 100%. */
.vz-bar .v2-bar__fly { position: absolute; right: calc(18 * var(--u)); top: calc(34 * var(--u)); width: calc(124 * var(--u)); height: auto; object-fit: contain; transform: rotate(-10deg); mix-blend-mode: multiply; }

/* 18.10 · крем светлее и нежнее: та же бумага, но под молочной вуалью.
   LE BAR — на бордовой подложке с фактурой той же бумаги. */
.v2-ag3, .vz-bar { --paper: #F8F4EE; }
.v2-ag3__paper, .v2-bar__paper { background: linear-gradient(#FCFAF6B8, #FCFAF6B8), url("media/v2/paper/paper.jpg") 0 0 / calc(560 * var(--u)) auto repeat, var(--paper); }
.vz-bar .v2-ad__mark { background: url("media/v2/paper/paper.jpg") 0 0 / calc(560 * var(--u)) auto repeat, #6B171D; background-blend-mode: multiply; color: #F8F2E8; }

/* 18.10 · кнопки — тот же бордо, что под LE BAR: заметные, одного цвета
   на всех разворотах. Наведение — темнее. */
:root { --wine: #6B171D; --wine-dark: #4A0E13; }
.v2-ag3__btn, .v2-hl__btn { background: var(--wine); color: #F8F2E8; }
.vz-bar .rm-restaurant-chef__menu { background: var(--wine); color: #F8F2E8; border-color: var(--wine); outline-color: #F8F2E866; }
.vz-bar .rm-restaurant-chef__menu span { color: #F8F2E8; }
@media (hover: hover) {
  .v2-ag3__btn:hover, .v2-hl__btn:hover { background: var(--wine-dark); color: #F8F2E8; }
  .vz-bar .rm-restaurant-chef__menu:hover { background: var(--wine-dark); border-color: var(--wine-dark); color: #F8F2E8; }
}
/* На тёмном фото залов бордо сливается — кремовая рамка отделяет кнопку. */
.v2-hl__btn { box-shadow: inset 0 0 0 1px #F8F2E8B3; }

/* ── Материал дома для Ж02, Ж03, Ж06 (18.10) ────────────────────
   Та же система, что на Ж05/Ж07: нежный крем с фактурой бумаги,
   Cormorant Garamond (заголовки, числа) + Spectral (текст, подписи),
   золото стрекозы для орнамента, бордо для кнопок. Композиция
   разворотов не менялась. */
.mr-house { --gold: #B5995D; --paper: #F8F4EE; --ink: #1E1715; --wine: #6B171D; --wine-dark: #4A0E13; --muted: #6E625C; }
.mr-house ::selection { background: #A51C1F; color: #FFF; }
.mr-paper { background: linear-gradient(#FCFAF6B8, #FCFAF6B8), url("media/v2/paper/paper.jpg") 0 0 / calc(560 * var(--u)) auto repeat, var(--paper); }
/* бордовая кнопка вместо красной строки между линиями */
.mr-house .rm-restaurant-chef__menu { justify-content: center; gap: calc(12 * var(--u)); border: 0; background: var(--wine); color: #F8F2E8; font: 400 calc(16 * var(--u))/1 "Spectral", Georgia, serif; letter-spacing: .02em; transition: background-color .2s ease, transform .16s cubic-bezier(.23,1,.32,1); }
.mr-house .rm-restaurant-chef__menu span { font-size: calc(18 * var(--u)); color: #F8F2E8; }
.mr-house .rm-restaurant-chef__menu:active { transform: scale(.97); }
@media (hover: hover) { .mr-house .rm-restaurant-chef__menu:hover { background: var(--wine-dark); color: #F8F2E8; } }
.mr-house .v2-ed__folio, .mr-house .v2-ed__vcredit, .mr-house .cr { font-family: "Spectral", Georgia, serif; letter-spacing: .02em; text-transform: none; }

/* Ж02 · письмо директора */
.mr-letter h2.pf { font-family: "Cormorant Garamond", Georgia, serif; font-weight: 400; color: var(--ink); }
.mr-letter .sr { font-family: "Spectral", Georgia, serif; font-weight: 300; color: var(--ink); font-size: calc(14 * var(--u)); line-height: 1.6; }
.mr-letter .sr .it { font-family: "Cormorant Garamond", Georgia, serif; font-style: italic; font-size: 1.15em; }
.mr-letter .drop { font-family: "Cormorant Garamond", Georgia, serif !important; color: var(--wine) !important; }
.mr-letter .cap { font: italic 300 calc(14 * var(--u))/1 "Spectral", Georgia, serif; letter-spacing: .02em; text-transform: none; color: var(--muted); }
.mr-letter .sign-credit { font-style: italic; color: var(--muted); }
.mr-letter .cr { color: var(--muted); }

/* Ж03 · кухня и шеф */
.mr-chef .rm-restaurant-chef__lead em { color: #A51C1F; }
.mr-chef .rm-restaurant-chef__path { font: 300 calc(15 * var(--u))/1.45 "Spectral", Georgia, serif; color: var(--ink); }
.mr-chef .rm-restaurant-chef__signature { color: var(--ink); }
.mr-chef .rm-restaurant-chef__signature span { font: italic 300 calc(14 * var(--u))/1 "Spectral", Georgia, serif; letter-spacing: .02em; color: var(--muted); }
.mr-chef .rm-restaurant-chef__signature strong { font-size: calc(28 * var(--u)); }
.mr-chef .mr-chef__fly { height: auto; object-fit: contain; transform: rotate(8deg); mix-blend-mode: multiply; }

/* Ж06 · вечерний выход — шапка капителями с разрядкой, как «СОБЫТИЯ» */
.mr-salon .v2-centre__t1 { font: 400 calc(60 * var(--u))/1 "Cormorant Garamond", Georgia, serif; letter-spacing: .12em; text-transform: uppercase; color: var(--ink); padding-left: .12em; }
.mr-salon .v2-centre__t2 { font: italic 400 calc(40 * var(--u))/1 "Cormorant Garamond", Georgia, serif; letter-spacing: 0; text-transform: none; color: #A51C1F; }
.mr-salon .v2-centre__body { font: 300 calc(15 * var(--u))/1.55 "Spectral", Georgia, serif; color: var(--ink); }
.mr-salon .v2-centre__prog { border-top: 1px solid #B5995D99; }
.mr-salon .v2-centre__prog b { font-family: "Cormorant Garamond", Georgia, serif; font-variant-numeric: lining-nums; color: #A51C1F; }
.mr-salon .v2-centre__prog span { font: 400 calc(13 * var(--u))/1.2 "Spectral", Georgia, serif; letter-spacing: .02em; text-transform: none; color: var(--ink); }
.mr-chef .mr-chef__fly, .mr-letter .mr-letter__fly { height: auto; object-fit: contain; mix-blend-mode: multiply; }
.mr-letter .mr-letter__fly { transform: rotate(-6deg); }
.mr-chef img.mr-chef__fly { width: calc(110 * var(--u)); }

/* Ж07 · левая полоса — тёмная живопись со стрекозами (Codex, 18.10),
   события на светлой полупрозрачной плашке поверх неё. */
.v2-ag3__paper--night { background: #2A0B0E url("media/v2/paper/night-dragonflies.jpg") 50% 50% / cover no-repeat; }
.v2-ag3__veil { background: #FCFAF6EB; box-shadow: 0 calc(10 * var(--u)) calc(40 * var(--u)) #0000004D; }
.v2-ag3 .v2-ed__vcredit { color: #F8F2E8B3; }
/* Плашка — лист бумаги от сгиба: без тени, плотная; у внешнего края
   открыта полоса живописи. Текст под узкую колонку. */
.v2-ag3__veil { background: #FCFAF6F2; box-shadow: none; }
.v2-ag3 .v2-ag3__n { font-size: calc(26 * var(--u)); }
.v2-ag3 .v2-ag3__d { font-size: calc(14.5 * var(--u)); line-height: 1.45; }
.v2-ag3 .v2-ag3__date b { font-size: calc(80 * var(--u)); }
.v2-ag3 .v2-ag3__date span { font-size: calc(14.5 * var(--u)); }
.v2-ag3 .v2-ag3__live { font-size: calc(14.5 * var(--u)); }
.v2-ag3 .v2-ag3__btn { padding: 0 calc(12 * var(--u)); }
/* Ж03 · правая полоса по одной оси с портретом (центр 1080). */
.mr-chef .rm-restaurant-chef__lead, .mr-chef .rm-restaurant-chef__path { text-align: center; }
.mr-chef .rm-restaurant-chef__signature { align-items: center; text-align: center; }

/* Ж05 · плашка LE BAR — бордовый бархат со стрекозами тон в тон (Codex, 18.10). */
.vz-bar .v2-ad__mark { background: #6B171D url("media/v2/paper/wine-dragonflies.jpg") 50% 40% / calc(520 * var(--u)) auto repeat; background-blend-mode: normal; }
/* LE BAR ниже, а граница с роликом размыта: плашка заходит на видео
   на 90 единиц и проявляется маской сверху вниз. */
.vz-bar .v2-ad__mark { padding-bottom: calc(2 * var(--u)); line-height: .92; z-index: 3;
  -webkit-mask-image: linear-gradient(to bottom, transparent 0, #000 calc(110 * var(--u))); mask-image: linear-gradient(to bottom, transparent 0, #000 calc(110 * var(--u))); }
/* 18.10 · золотые гравюры стрекоз сняты с разворотов; в центре печати — звезда. */
.v2-ag3__sealstar { width: calc(22 * var(--u)); height: calc(22 * var(--u)); color: var(--gold); transition: color .25s ease; }
@media (hover: hover) { .v2-ag3__seal:hover .v2-ag3__sealstar { color: #F8F2E8; } }

/* ── Ж05 · бар как журнальная статья (18.10) ────────────────────── */
.vz-bar .bj-kicker { text-align: center; font: 400 calc(12 * var(--u))/1 "Spectral", Georgia, serif; letter-spacing: .24em; text-transform: uppercase; color: var(--ink); }
.vz-bar .bj-title { margin: 0; text-align: center; font: italic 400 calc(96 * var(--u))/.95 "Cormorant Garamond", Georgia, serif; letter-spacing: -.01em; color: var(--ink); }
.vz-bar .bj-title em { color: var(--red); }
.vz-bar .bj-by { text-align: center; font: italic 300 calc(14 * var(--u))/1 "Spectral", Georgia, serif; color: #6E625C; }
.vz-bar .bj-rule { border-top: 1px solid #B5995D; }
.vz-bar .bj-quote { margin: 0; display: flex; align-items: center; justify-content: center; height: calc(150 * var(--u)); text-align: center; font: italic 400 calc(33 * var(--u))/1.18 "Cormorant Garamond", Georgia, serif; color: #2D2420; }
.vz-bar .bj-quote span { color: var(--red); font-size: 1.35em; line-height: 0; }
.vz-bar .bj-body { columns: 2; column-gap: calc(36 * var(--u)); font: 300 calc(14.5 * var(--u))/1.55 "Spectral", Georgia, serif; color: var(--ink); text-align: justify; hyphens: auto; }
.vz-bar .bj-body p { margin: 0; }
.vz-bar .bj-body p + p { text-indent: 1.4em; }
.vz-bar .bj-drop { float: left; margin: calc(4 * var(--u)) calc(8 * var(--u)) 0 0; font: 400 calc(62 * var(--u))/.78 "Cormorant Garamond", Georgia, serif; color: var(--red); }
/* врезка: двойная золотая рамка, мелкий кегль, как справка на полях */
.vz-bar .bj-side { box-sizing: border-box; padding: calc(18 * var(--u)) calc(28 * var(--u)); border: 1px solid #B5995D; outline: 1px solid #B5995D; outline-offset: calc(-6 * var(--u)); display: flex; flex-direction: column; align-items: center; text-align: center; }
.vz-bar .bj-side__h { margin: 0 0 calc(10 * var(--u)); font: italic 400 calc(22 * var(--u))/1 "Cormorant Garamond", Georgia, serif; color: var(--ink); }
.vz-bar .bj-side__list { margin: 0; padding: 0; list-style: none; width: 100%; display: flex; flex-direction: column; gap: calc(5 * var(--u)); }
.vz-bar .bj-side__list button { all: unset; box-sizing: border-box; width: 100%; cursor: pointer; display: flex; align-items: baseline; gap: calc(10 * var(--u)); transition: opacity .2s ease; }
.vz-bar .bj-side__list b { font: 500 calc(18 * var(--u))/1.25 "Cormorant Garamond", Georgia, serif; color: var(--ink); white-space: nowrap; transition: color .2s ease; }
.vz-bar .bj-side__list span { flex: 1; text-align: right; font: italic 300 calc(13 * var(--u))/1.25 "Spectral", Georgia, serif; color: #6E625C; }
.vz-bar .bj-side__list b::after { content: ""; }
.vz-bar .bj-side__list:has(button[aria-current]) button:not([aria-current]) { opacity: .45; }
.vz-bar .bj-side__list button[aria-current] b { color: var(--red); }
.vz-bar .bj-side__list button:focus { outline: none; }
.vz-bar .bj-side__list button:focus-visible b { text-decoration: underline; text-decoration-color: #B5995D; text-underline-offset: 4px; }
.vz-bar .bj-side__more { margin-top: calc(12 * var(--u)); font: 400 calc(14 * var(--u))/1 "Spectral", Georgia, serif; letter-spacing: .04em; color: var(--wine); text-decoration: none; border-bottom: 1px solid #6B171D66; padding-bottom: 2px; transition: border-color .2s ease; }
@media (hover: hover) { .vz-bar .bj-side__more:hover { border-color: var(--wine); } }
.vz-bar .v2-ed__folio { text-transform: none; }
.vz-bar .bj-photo img { object-position: 50% 45%; }
.vz-bar .bj-quote p { margin: 0; }
/* Ж05 по грамматике 2/3/6 */
.vz-bar .bj-frame { margin: 0; overflow: hidden; }
.vz-bar .bj-frame img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 55%; }
.vz-bar .bj-lead { margin: 0; text-align: center; font: 300 calc(16 * var(--u))/1.55 "Spectral", Georgia, serif; color: var(--ink); }
.vz-bar .bj-col { text-align: center; }
.vz-bar .bj-col h4 { margin: 0; font: italic 400 calc(30 * var(--u))/1 "Cormorant Garamond", Georgia, serif; color: var(--ink); }
.vz-bar .bj-col h4 i { font-style: normal; font-size: .7em; color: var(--red); font-variant-numeric: lining-nums; margin-left: calc(4 * var(--u)); }
.vz-bar .bj-col p { margin: calc(10 * var(--u)) 0 0; font: 300 calc(14.5 * var(--u))/1.5 "Spectral", Georgia, serif; color: var(--ink); }
/* Заголовок бара — капители с разрядкой, как «СОБЫТИЯ» и «ВЕЧЕРНИЙ ВЫХОД». */
.vz-bar .bj-title { font: 400 calc(64 * var(--u))/1 "Cormorant Garamond", Georgia, serif; letter-spacing: .12em; text-transform: uppercase; padding-left: .12em; }
.vz-bar .bj-title em { font-style: normal; color: var(--red); }
/* Ж06 · правая полоса на белом с рамкой из бордовых пионов и стрекоз. */
.mr-floral { background: #FFF url("media/v2/paper/floral-frame.jpg") 50% 50% / 100% 100% no-repeat; }
.mr-salon .v2-ed__vcredit, .mr-salon .v2-ed__folio { z-index: 3; }
/* Ж06 на цветочной рамке — всё в белом центре (≈330u). */
.mr-salon .v2-centre__t1 { font-size: calc(50 * var(--u)); line-height: 1.02; }
.mr-salon .v2-centre__t2 { font-size: calc(32 * var(--u)); }
.mr-salon .v2-centre__body { font-size: calc(14 * var(--u)); line-height: 1.5; }
.mr-salon .v2-centre__prog { gap: calc(22 * var(--u)); }
.mr-salon .v2-centre__prog b { font-size: calc(26 * var(--u)); }
.mr-salon .v2-centre__prog span { font-size: calc(12 * var(--u)); }
/* Герой — девушка и заголовок, цветы — фон: рамка увеличена (уходит
   к краям) и приглушена молочной вуалью. */
.mr-floral { background: linear-gradient(#FFFFFF73, #FFFFFF73), #FFF url("media/v2/paper/floral-frame.jpg") 50% 50% / 150% 150% no-repeat; }
.mr-salon .v2-centre__t1 { font-size: calc(64 * var(--u)); line-height: 1; }
.mr-salon .v2-centre__t2 { font-size: calc(36 * var(--u)); }
.mr-salon .v2-centre__body { font-size: calc(14.5 * var(--u)); line-height: 1.45; }
.mr-salon .v2-centre__prog { padding: calc(8 * var(--u)) 0 0; gap: calc(36 * var(--u)); }
.mr-floral { background: linear-gradient(#FFFFFF59, #FFFFFF59), #FFF url("media/v2/paper/floral-frame.jpg") 50% 50% / 122% 122% no-repeat; }
/* Лёгкая рамка (Codex, 18.10): цветы узкой полосой по краям, центр белый. */
.mr-floral { background: #FFF url("media/v2/paper/floral-frame-light.jpg") 50% 50% / 100% 100% no-repeat; }

/* 18.10 · все страницы снова белые: кремовая бумага снята. */
.mr-paper, .v2-bar__paper, .v2-ag3__paper:not(.v2-ag3__paper--night) { background: #FFF; }
.v2-ag3__veil { background: #FFFFFFF2; }
.v2-ag3, .vz-bar, .mr-house { --paper: #FFFFFF; }

/* ── Ж05 · огромное LE BAR через сгиб + точная сетка (18.10) ────── */
.vz-bar .bj-txt h3 { margin: 0; font: italic 400 calc(24 * var(--u))/1 "Cormorant Garamond", Georgia, serif; color: var(--ink); }
.vz-bar .bj-txt h3 i { font-style: normal; font-size: .75em; color: var(--red); font-variant-numeric: lining-nums; margin-left: calc(4 * var(--u)); }
.vz-bar .bj-txt p { margin: calc(8 * var(--u)) 0 0; text-align: justify; hyphens: auto; font: 300 calc(12.5 * var(--u))/1.5 "Spectral", Georgia, serif; color: var(--ink); }
.vz-bar .bj-txt a { color: var(--wine); text-decoration: none; border-bottom: 1px solid #6B171D66; white-space: nowrap; }
.vz-bar .bj-giant { text-align: center; font: 400 calc(300 * var(--u))/1 "Druzhok", serif; letter-spacing: .03em; color: #A51C1F; z-index: 6; pointer-events: none; }
.vz-bar .v2-ed__folio { text-align: center; }
/* Как в Vogue: текст плотнее, заход абзаца жирным, подписи — жирный гротеск. */
.vz-bar .bj-txt h3 { font: 700 calc(13 * var(--u))/1 "HK Grotesk", Arial, sans-serif; font-style: normal; letter-spacing: .1em; text-transform: uppercase; }
.vz-bar .bj-txt h3 i { font-style: normal; font-weight: 700; font-size: 1em; }
.vz-bar .bj-txt p { font: 400 calc(13 * var(--u))/1.5 "Spectral", Georgia, serif; color: #1A1311; }
.vz-bar .bj-txt p b { font-weight: 700; }
.vz-bar .bj-kicker { font: 700 calc(12 * var(--u))/1 "HK Grotesk", Arial, sans-serif; letter-spacing: .2em; }

/* ── 18.10 · плотность как в Vogue на всех разворотах ────────────
   Текст Spectral 400 вместо 300, заход абзаца жирным, служебные
   подписи (рубрики, дни, подписи к людям, программа) — HK Grotesk 700
   капсом с разрядкой. */
.mr-house b, .v2-ag3 b, .v2-hl b { font-weight: 700; }
/* текст */
.mr-letter .sr, .mr-chef .rm-restaurant-chef__path, .mr-salon .v2-centre__body,
.v2-ag3 .v2-ag3__d, .v2-ag3 .v2-ag3__live, .v2-hl__d, .vz-bar .bj-lead { font-weight: 400 !important; color: #1A1311; }
.v2-hl__d { color: #FFFFFFF0; }
/* жирные подписи */
.mr-letter .cap, .mr-letter .sign-credit,
.mr-chef .rm-restaurant-chef__signature span,
.mr-salon .v2-centre__prog span,
.v2-ag3__head p, .v2-ag3 .v2-ag3__date span,
.v2-hl__head p, .v2-hl__nums dd,
.rm-kicker, .vz-bar .bj-kicker {
  font-family: "HK Grotesk", Arial, sans-serif !important; font-style: normal !important; font-weight: 700 !important;
  letter-spacing: .12em !important; text-transform: uppercase !important; }
.mr-letter .cap, .mr-letter .sign-credit, .mr-chef .rm-restaurant-chef__signature span { font-size: calc(11 * var(--u)) !important; color: #1E1715 !important; }
.mr-salon .v2-centre__prog span, .v2-hl__nums dd { font-size: calc(10.5 * var(--u)) !important; }
.v2-ag3 .v2-ag3__date span { font-size: calc(11.5 * var(--u)) !important; line-height: 1.45 !important; }
.v2-ag3__head p, .v2-hl__head p { font-size: calc(11 * var(--u)) !important; }
.vz-bar .bj-btn { z-index: 7; }

/* ── Ж04 · блюда в системе журнала (18.10) ──────────────────────
   Ось листа, капители + красный курсив, Cormorant + Spectral, жирные
   подписи гротеском, бордовая кнопка. Свой ход разворота остаётся:
   наведение на блюдо меняет кадр и огромный номер справа. */
.mr-plates { --fh: "Cormorant Garamond"; --ft: "Spectral"; }
.mr-plates .rm-kicker { text-align: center; color: #1E1715; font-size: calc(11 * var(--u)) !important; }
.mr-plates .v2-title { display: flex; flex-direction: column; align-items: center; text-align: center; font: 400 calc(60 * var(--u))/1 "Cormorant Garamond", Georgia, serif; letter-spacing: .12em; text-transform: uppercase; padding-left: .12em; }
.mr-plates .v2-title em { margin-top: calc(12 * var(--u)); font: italic 400 calc(38 * var(--u))/1 "Cormorant Garamond", Georgia, serif; letter-spacing: 0; text-transform: none; color: #A51C1F; }
.mr-plates .v2-lead { text-align: center; font: 400 calc(15 * var(--u))/1.5 "Spectral", Georgia, serif; font-style: normal; color: #1A1311; }
.mr-plates .v2-list { border-top: 0; }
.mr-plates .v2-list li { border-bottom: 0; }
.mr-plates .v2-list li + li { border-top: 1px solid #B5995D59; }
.mr-plates .v2-list button { display: flex; flex-direction: column; align-items: center; text-align: center; padding: calc(11 * var(--u)) 0; }
.mr-plates .v2-list button::after { display: none; }
.mr-plates .v2-list__t { font: 500 calc(26 * var(--u))/1.1 "Cormorant Garamond", Georgia, serif; font-style: normal; color: #1E1715; }
.mr-plates .v2-list__d { margin-top: calc(4 * var(--u)); font: 400 calc(13 * var(--u))/1.35 "Spectral", Georgia, serif; color: #6E625C; }
.mr-plates .v2-list button[aria-current="true"] .v2-list__t, .mr-plates .v2-list button:hover .v2-list__t { color: #A51C1F; font-style: italic; }
.mr-plates .v2-list:has(button[aria-current]) button:not([aria-current]) .v2-list__t { color: #1E1715B3; }
.mr-plates .v2-co { width: calc(14 * var(--u)); height: calc(14 * var(--u)); margin-left: calc(6 * var(--u)); vertical-align: super; color: #A51C1F; }
.mr-plates .v2-note { justify-content: center; font: 700 calc(10.5 * var(--u))/1 "HK Grotesk", Arial, sans-serif; letter-spacing: .12em; text-transform: uppercase; color: #A51C1F; }
.mr-plates .rm-restaurant-chef__menu { justify-content: center; gap: calc(12 * var(--u)); border: 0; background: var(--wine, #6B171D); color: #F8F2E8; font: 400 calc(16 * var(--u))/1 "Spectral", Georgia, serif; letter-spacing: .02em; }
.mr-plates .rm-restaurant-chef__menu span { font-size: calc(18 * var(--u)); color: #F8F2E8; }
@media (hover: hover) { .mr-plates .rm-restaurant-chef__menu:hover { background: #4A0E13; color: #F8F2E8; } }
.mr-plates .v2-folio { text-align: center; font-family: "Spectral", Georgia, serif; letter-spacing: .02em; text-transform: none; color: #6E625C; }
.mr-plates .v2-stack__num { font: 400 calc(220 * var(--u))/.8 "Cormorant Garamond", Georgia, serif; font-variant-numeric: lining-nums; letter-spacing: -.02em; }
.mr-plates .v2-stack__cap { font-family: "HK Grotesk", Arial, sans-serif !important; font-weight: 700; letter-spacing: .14em; }
.mr-plates .v2-stack__credit { font-family: "Spectral", Georgia, serif; letter-spacing: .02em; text-transform: none; }
/* Ж04 · гравюра-виньетка над списком (Codex, 18.10); список плотнее. */
.mr-plates img.mr-engr { height: auto; object-fit: contain; mix-blend-mode: multiply; }
.mr-plates .v2-list button { padding: calc(6 * var(--u)) 0; }
.mr-plates .v2-list__t { font-size: calc(22 * var(--u)); }
.mr-plates .v2-list__d { font-size: calc(12 * var(--u)); margin-top: calc(2 * var(--u)); }
.remix.mr-plates img.mr-engr { width: calc(420 * var(--u)); height: calc(210 * var(--u)); object-fit: contain; }
/* Герой разворота — LA CUISINE шрифтом вывески, как LE BAR и LE SALON. */
.mr-plates .mr-cuisine { margin: 0; text-align: center; font: 400 calc(96 * var(--u))/1 "Druzhok", serif; letter-spacing: .03em; color: #A51C1F; }
.mr-plates .v2-title em { margin-top: 0; font-size: calc(30 * var(--u)); color: #1E1715; }
/* без гравюры: список крупнее, героем остаётся LA CUISINE; номер на фото убран — не спорит с героем */
.mr-plates .mr-cuisine { font-size: calc(104 * var(--u)); }
.mr-plates .v2-list button { padding: calc(10 * var(--u)) 0; }
.mr-plates .v2-list__t { font-size: calc(26 * var(--u)); }
.mr-plates .v2-list__d { font-size: calc(13 * var(--u)); }
.mr-plates .v2-stack__num { display: none; }
/* LA CUISINE в полях колонки (592), ритм: 32 между группами, 12 внутри. */
.mr-plates .mr-cuisine { font-size: calc(78 * var(--u)); line-height: 1; }
.mr-plates .v2-title em { font-size: calc(26 * var(--u)); }
.mr-plates .v2-list button { padding: calc(12 * var(--u)) 0; }

/* ── Ж04 · меню-предмет (идея Артёма, 18.10) ─────────────────────
   Настоящая страница меню дома лежит карточкой с наклоном и тенью;
   поверх — пять блюд крупно. Бумага меню видна, но не спорит. */
.remix.mr-plates .mr-card { transform: rotate(-2.5deg); background: #FFF; box-shadow: 0 calc(18 * var(--u)) calc(40 * var(--u)) #2A180E40, 0 0 0 1px #2A180E14; overflow: hidden; }
.remix.mr-plates .mr-card img { width: 100%; height: 100%; object-fit: cover; opacity: .32; }
.mr-plates .mr-card__over { transform: rotate(-2.5deg); display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; z-index: 3; }
.mr-plates .mr-card__h { margin: 0 0 calc(18 * var(--u)); font: 700 calc(11 * var(--u))/1 "HK Grotesk", Arial, sans-serif; letter-spacing: .22em; text-transform: uppercase; color: #A51C1F; }
.mr-plates .mr-card__list { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: calc(14 * var(--u)); }
.mr-plates .mr-card__list button { all: unset; cursor: pointer; font: 500 calc(30 * var(--u))/1.1 "Cormorant Garamond", Georgia, serif; color: #1E1715; transition: color .2s ease; }
.mr-plates .mr-card__list button[aria-current="true"] { color: #A51C1F; font-style: italic; }
@media (hover: hover) { .mr-plates .mr-card__list button:hover { color: #A51C1F; } }
.mr-plates .mr-card__list button:focus-visible { outline: 1px solid #A51C1F; outline-offset: 4px; }
.mr-plates .mr-dish { text-align: center; }
.mr-plates .mr-dish p { margin: 0; }
.mr-plates .mr-dish__n { font: 700 calc(11.5 * var(--u))/1 "HK Grotesk", Arial, sans-serif; letter-spacing: .14em; text-transform: uppercase; color: #1E1715; }
.mr-plates .mr-dish__d { margin-top: calc(10 * var(--u)) !important; font: 400 calc(15 * var(--u))/1.5 "Spectral", Georgia, serif; color: #1A1311; }
/* Карточка — обложка меню дома: красный картон, золото (по фото обложки). */
.remix.mr-plates .mr-card--red { background: #A3181B url("media/v2/paper/paper.jpg") 0 0 / calc(400 * var(--u)) auto; background-blend-mode: multiply; display: flex; flex-direction: column; align-items: center; padding-top: calc(36 * var(--u)); box-sizing: border-box; }
.mr-plates .mr-card--red .fly { width: calc(28 * var(--u)); color: #D9B877; }
.mr-plates .mr-card__mark { margin-top: calc(8 * var(--u)); font: 400 calc(22 * var(--u))/1 "Druzhok", serif; letter-spacing: .06em; color: #D9B877; }
.mr-plates .mr-card__over { justify-content: flex-start; padding-top: calc(140 * var(--u)); box-sizing: border-box; }
.mr-plates .mr-card__h { color: #E8CF98; }
.mr-plates .mr-card__list button { color: #F3E6CC; }
.mr-plates .mr-card__list button[aria-current="true"] { color: #E8C477; }
@media (hover: hover) { .mr-plates .mr-card__list button:hover { color: #E8C477; } }
.mr-plates .mr-card__list button:focus-visible { outline-color: #E8C477; }
/* LA CUISINE — капители Cormorant с разрядкой, как «СОБЫТИЯ» и «ВСЁ У СТОЙКИ». */
.mr-plates .mr-cuisine2 { margin: 0; text-align: center; font: 400 calc(52 * var(--u))/1 "Cormorant Garamond", Georgia, serif; letter-spacing: .16em; text-transform: uppercase; padding-left: .16em; color: #1E1715; }
.mr-plates .mr-card__over { padding-top: calc(128 * var(--u)); }
.mr-plates .mr-card__list button { font-size: calc(28 * var(--u)); }
/* Настоящая обложка меню (фото с кисточкой, фон вырезан). Имя дома уже
   на обложке — названия блюд встают ниже золотого тиснения. */
.remix.mr-plates img.mr-cover { width: calc(380 * var(--u)); height: calc(520 * var(--u)); object-fit: contain; filter: drop-shadow(0 calc(16 * var(--u)) calc(26 * var(--u)) #2A180E40); }
.mr-plates .mr-card__over { padding-top: calc(190 * var(--u)); }
.mr-plates .mr-card__list { gap: calc(12 * var(--u)); }
.mr-plates .mr-card__list button { font-size: calc(26 * var(--u)); }
/* LA CUISINE крупнее; обложка сдвинута так, чтобы по оси листа стоял сам картон, а не картон с кисточкой. */
.mr-plates .mr-cuisine2 { font-size: calc(76 * var(--u)); letter-spacing: .14em; padding-left: .14em; }
/* Ж04: подпись блюда на фото снята — внизу теперь подпись дома. */
.mr-plates .v2-stack__cap { display: none; }
/* Ж05: подписи «Коктейли» / «Вино» крупнее. */
.vz-bar .bj-txt h3 { font-size: calc(20 * var(--u)); letter-spacing: .12em; }
.vz-bar .bj-logo { color: #1E1715; }
.vz-bar .bj-logo .fly { color: #A51C1F; }

/* ── Ж10 · последний разворот: бархат со стрекозами, всё на оси ── */
.mr-end__velvet { background: #6B171D url("media/v2/paper/wine-dragonflies.jpg") 50% 50% / calc(520 * var(--u)) auto repeat; }
.mr-end .rm-kicker { text-align: center; color: #F3E6CC !important; font-size: calc(11 * var(--u)) !important; }
.mr-end .v2-back__name { display: flex; flex-direction: column; align-items: center; text-align: center; }
.mr-end .v2-back__name span { color: #F8F2E8 !important; }
.mr-end .rm-back__address { text-align: center; font: 400 calc(30 * var(--u))/1.25 "Cormorant Garamond", Georgia, serif; color: #F8F2E8; }
.mr-end .rm-back__details { display: flex; flex-direction: column; align-items: center; gap: calc(12 * var(--u)); text-align: center; font: 700 calc(12 * var(--u))/1 "HK Grotesk", Arial, sans-serif; letter-spacing: .14em; color: #F3E6CC; }
.mr-end .rm-back__details a { color: #F8F2E8; }
.mr-end .rm-restaurant-chef__menu { justify-content: center; gap: calc(12 * var(--u)); border: 0; background: #F8F2E8; color: #6B171D; font: 400 calc(16 * var(--u))/1 "Spectral", Georgia, serif; letter-spacing: .02em; }
.mr-end .rm-restaurant-chef__menu span { color: #6B171D; font-size: calc(18 * var(--u)); }
@media (hover: hover) { .mr-end .rm-restaurant-chef__menu:hover { background: #FFF; color: #4A0E13; } }
.mr-end .rm-back__address { font-size: calc(26 * var(--u)); }
.mr-end .rm-back__details { gap: calc(10 * var(--u)); }
.mr-end .rm-back__details span { text-transform: none; letter-spacing: .06em; font-weight: 500; font-family: "HK Grotesk", Arial, sans-serif; font-size: calc(13 * var(--u)); }
.mr-end .rm-back__details a { text-decoration: none; border-bottom: 1px solid #F8F2E866; }
.mr-end .mr-end__social { display: flex; justify-content: center; gap: calc(22 * var(--u)); }
.mr-end .mr-end__social img { width: calc(40 * var(--u)); height: calc(40 * var(--u)); filter: brightness(0) invert(.94) sepia(.2); transition: opacity .2s ease; }
@media (hover: hover) { .mr-end .mr-end__social a:hover img { opacity: .75; } }
.mr-end .mr-end__legal { display: flex; justify-content: center; gap: calc(28 * var(--u)); font: 400 calc(12 * var(--u))/1 "Spectral", Georgia, serif; }
.mr-end .mr-end__legal a { color: #F3E6CCCC; text-decoration: none; border-bottom: 1px solid #F3E6CC55; }
.mr-end .mr-end__folio { text-align: center; font: 400 calc(11 * var(--u))/1 "Spectral", Georgia, serif; color: #F3E6CC99; }
.mr-end a.rm-restaurant-chef__menu.v2-link--light { color: #6B171D !important; background: #F8F2E8 !important; border: 0 !important; }
.mr-end a.rm-restaurant-chef__menu.v2-link--light span { color: #6B171D !important; }

/* ── Ж08 · Залы: рисунок + типографика / два снимка (19.10) ────── */
.remix .mr-halls2__draw, .mr-halls2 img.mr-halls2__draw { height: auto; object-fit: contain; mix-blend-mode: multiply; }
.mr-halls2__kicker { text-align: center; font: 700 calc(11 * var(--u))/1 "HK Grotesk", Arial, sans-serif; letter-spacing: .2em; text-transform: uppercase; color: #1E1715; }
.mr-halls2__h { margin: 0; display: flex; flex-direction: column; align-items: center; text-align: center; font: 400 calc(76 * var(--u))/.98 "Cormorant Garamond", Georgia, serif; letter-spacing: .1em; text-transform: uppercase; padding-left: .1em; color: #1E1715; }
.mr-halls2__h em { margin-top: calc(16 * var(--u)); font: italic 400 calc(36 * var(--u))/1 "Cormorant Garamond", Georgia, serif; letter-spacing: 0; text-transform: none; color: #A51C1F; }
.mr-halls2__txt p { margin: 0 0 calc(14 * var(--u)); font: 400 calc(14.5 * var(--u))/1.55 "Spectral", Georgia, serif; color: #1A1311; }
.mr-halls2__txt b { font-weight: 700; }
.mr-halls2__cap { margin: calc(22 * var(--u)) 0 0; padding-top: calc(16 * var(--u)); border-top: 1px solid #B5995D; display: flex; flex-direction: column; gap: calc(14 * var(--u)); }
.mr-halls2__cap dt { font: 700 calc(11 * var(--u))/1 "HK Grotesk", Arial, sans-serif; letter-spacing: .14em; text-transform: uppercase; color: #A51C1F; }
.mr-halls2__cap dd { margin: calc(5 * var(--u)) 0 0; font: 400 calc(13.5 * var(--u))/1.35 "Spectral", Georgia, serif; color: #1A1311; }
.mr-halls2__folio { text-align: left !important; }
.mr-halls2__ph { margin: 0; overflow: hidden; background: #120D0C; }
.mr-halls2__ph img { width: 100%; height: 100%; object-fit: cover; display: block; }
.mr-halls2__phcap { margin: 0; text-align: center; font: 400 calc(13 * var(--u))/1.4 "Spectral", Georgia, serif; color: #1A1311; }
.mr-halls2__phcap b { display: block; margin-bottom: calc(4 * var(--u)); font: 700 calc(11 * var(--u))/1 "HK Grotesk", Arial, sans-serif; letter-spacing: .14em; text-transform: uppercase; color: #1E1715; }
.mr-halls2__more { text-align: center; font: 400 calc(15 * var(--u))/1 "Spectral", Georgia, serif; color: #6B171D; text-decoration: none; }
.mr-halls2__more::after { content: ""; display: block; width: calc(150 * var(--u)); margin: calc(6 * var(--u)) auto 0; border-bottom: 1px solid #6B171D66; }
@media (hover: hover) { .mr-halls2__more:hover { color: #A51C1F; } }

/* Ж08 · левая полоса «Who's that girl?» */
.mr-h2__h { margin: 0; font: 400 calc(140 * var(--u))/.8 "Cormorant Garamond", Georgia, serif; letter-spacing: -.035em; color: #1E1715; }
.mr-h2__lead { margin: 0; font: 400 calc(15 * var(--u))/1.45 "Spectral", Georgia, serif; color: #1A1311; }
.mr-h2__lead b { font-weight: 700; }
.mr-h2__body p { margin: 0; text-align: justify; hyphens: auto; font: 400 calc(13 * var(--u))/1.5 "Spectral", Georgia, serif; color: #1A1311; }
.mr-h2__body p + p { text-indent: 1.4em; }
.mr-h2__drop { float: left; margin: calc(4 * var(--u)) calc(8 * var(--u)) 0 0; font: 400 calc(72 * var(--u))/.76 "Cormorant Garamond", Georgia, serif; color: #1E1715; }
.mr-halls2 img.mr-h2__cut { height: auto; object-fit: contain; object-position: 50% 100%; filter: drop-shadow(0 calc(10 * var(--u)) calc(14 * var(--u)) #2A180E26); }
/* три рисунка-фигуры на белом, текст между ними */
.mr-halls2 img.mr-h2__fig { height: auto; object-fit: contain; object-position: 50% 0; }
.mr-h2__h { font-size: calc(108 * var(--u)); line-height: .8; }
.mr-h2__body { columns: 2; column-gap: calc(28 * var(--u)); }
.mr-h2__body p { font-size: calc(12.5 * var(--u)); line-height: 1.5; }
.mr-h2__drop { font-size: calc(58 * var(--u)); }
.mr-h2__cap { margin: 0; display: flex; flex-direction: column; gap: calc(18 * var(--u)); text-align: center; }
.mr-h2__cap dt { font: 700 calc(10.5 * var(--u))/1 "HK Grotesk", Arial, sans-serif; letter-spacing: .14em; text-transform: uppercase; color: #A51C1F; }
.mr-h2__cap dd { margin: calc(6 * var(--u)) 0 0; font: 400 calc(13 * var(--u))/1.4 "Spectral", Georgia, serif; color: #1A1311; }

/* Ж08 · «Who's that girl?» — дидона Playfair, плотный набор */
.mr-h3__h { margin: 0; font: 400 calc(172 * var(--u))/.76 "Playfair Display", Georgia, serif; letter-spacing: -.045em; color: #111; z-index: 2; }
.mr-halls2 img.mr-h3__fig { height: auto; object-fit: contain; object-position: 50% 100%; z-index: 1; }
.mr-h3__deck { margin: 0; font: 600 calc(15 * var(--u))/1.32 "Spectral", Georgia, serif; color: #111; z-index: 2; }
.mr-h3__deck span { font-variant: small-caps; letter-spacing: .04em; font-weight: 700; }
.mr-h3__deck i { font-style: italic; font-weight: 400; }
.mr-h3__body { z-index: 2; }
.mr-h3__body p { margin: 0; text-align: justify; hyphens: auto; font: 400 calc(12 * var(--u))/1.45 "Spectral", Georgia, serif; color: #111; }
.mr-h3__drop { float: left; margin: calc(2 * var(--u)) calc(8 * var(--u)) 0 0; font: 400 calc(84 * var(--u))/.74 "Playfair Display", Georgia, serif; color: #111; }
.mr-h3__caps { margin-top: calc(12 * var(--u)) !important; text-align: left !important; font-size: calc(11.5 * var(--u)) !important; }
.mr-h3__caps b { font: 700 calc(10 * var(--u))/1 "HK Grotesk", Arial, sans-serif; letter-spacing: .12em; text-transform: uppercase; margin-right: calc(6 * var(--u)); color: #A51C1F; }
.mr-h3__h { font-size: calc(160 * var(--u)); }
.mr-halls2 img.mr-h3__fig { object-position: 50% 100%; height: calc(var(--h) * var(--u)); object-fit: contain; }
.mr-h3__h { font-size: calc(124 * var(--u)); line-height: .8; }
.mr-h3__h em { font: italic 400 calc(42 * var(--u))/1 "Playfair Display", Georgia, serif; letter-spacing: -.01em; color: #A51C1F; margin-left: calc(10 * var(--u)); }

/* ── Ж01 · обложка в системе журнала ─────────────────────────── */
.cv-shade { background: linear-gradient(to bottom, #0008 0%, #0000 22%, #0000 62%, #000A 100%); z-index: 3; pointer-events: none; }
.cv-sign { display: flex; flex-direction: column; align-items: center; text-align: center; color: #F8F2E8; z-index: 4; }
.cv-sign span { font: 400 calc(40 * var(--u))/1 "Cormorant Garamond", Georgia, serif; letter-spacing: .2em; padding-left: .2em; text-transform: uppercase; }
.cv-sign small { margin-top: calc(12 * var(--u)); font: 700 calc(11 * var(--u))/1 "HK Grotesk", Arial, sans-serif; letter-spacing: .2em; text-transform: uppercase; }
.cv-name { margin: 0; text-align: center; font: 400 calc(176 * var(--u))/1 "Druzhok", serif; letter-spacing: .04em; color: #F8F2E8; text-transform: uppercase; white-space: nowrap; z-index: 4; }
.cv-addr { text-align: center; font: 700 calc(10 * var(--u))/1 "HK Grotesk", Arial, sans-serif; letter-spacing: .24em; text-transform: uppercase; color: #F8F2E8CC; z-index: 4; }
a.cv-seal { display: grid; place-items: center; padding: 0; border-radius: 50%; background: #F8F2E8; color: #1E1715; text-decoration: none; z-index: 5; box-shadow: 0 calc(8 * var(--u)) calc(26 * var(--u)) #0006; transition: background-color .25s ease, color .25s ease, transform .16s cubic-bezier(.23,1,.32,1); }
.cv-seal__ring { position: absolute; inset: 0; width: 100%; height: 100%; animation: v2-seal-spin 28s linear infinite; }
.cv-seal__ring text { font: 500 11px/1 "Spectral", Georgia, serif; letter-spacing: .12em; fill: currentColor; }
.cv-seal__star { width: calc(22 * var(--u)); height: calc(22 * var(--u)); color: #A51C1F; transition: color .25s ease; }
a.cv-seal:active { transform: scale(.96); }
a.cv-seal:focus-visible { outline: 2px solid #F8F2E8; outline-offset: 4px; }
@media (prefers-reduced-motion: reduce) { .cv-seal__ring { animation: none; } }
@media (hover: hover) { a.cv-seal:hover { background: #6B171D; color: #F8F2E8; } a.cv-seal:hover .cv-seal__star { color: #F8F2E8; } a.cv-seal:hover .cv-seal__ring { animation-duration: 9s; } }
.cv-name { display: flex; font-size: calc(164 * var(--u)); }
.cv-name span { flex: 0 0 50%; text-align: center; }

/* ── Ж08 правая полоса: залы на всю страницу (20.10) ── */
.hl8-slider { overflow: hidden; background: #0E0B0A; }
.hl8-slider figure { position: absolute; inset: 0; margin: 0; opacity: 0; transition: opacity 1s ease; }
.hl8-slider figure.is-on { opacity: 1; }
.remix .hl8-slider img, .hl8-slider img { width: 100%; height: 100%; object-fit: cover; display: block; transform: scale(1.04); transition: transform 6s linear; }
.hl8-slider figure.is-on img { transform: scale(1); }
.hl8-shade { background: linear-gradient(#000A 0%, #0000 22%, #0000 62%, #000C 100%); pointer-events: none; z-index: 2; }
.hl8-tabs { display: flex; justify-content: center; gap: calc(48 * var(--u)); z-index: 3; }
.hl8-tabs button { all: unset; cursor: pointer; display: flex; flex-direction: column; align-items: center; gap: calc(6 * var(--u)); padding-bottom: calc(8 * var(--u)); border-bottom: 2px solid transparent; font: 400 calc(30 * var(--u))/1 "Playfair Display", serif; color: #F8F2E8B3; transition: color .2s ease, border-color .2s ease; }
.hl8-tabs button small { font: 700 calc(10 * var(--u))/1 "HK Grotesk", sans-serif; letter-spacing: .18em; text-transform: uppercase; }
.hl8-tabs button[aria-current="true"] { color: #F8F2E8; border-color: #F8F2E8; }
.hl8-tabs button:focus-visible { outline: 1px solid #F8F2E8; outline-offset: 4px; }
.hl8-btn { display: flex; align-items: center; justify-content: center; gap: calc(10 * var(--u)); background: #F8F2E8; color: #6B171D; text-decoration: none; font: 400 calc(17 * var(--u))/1 "Spectral", serif; z-index: 3; transition: background-color .2s ease, transform .16s cubic-bezier(.23,1,.32,1); }
.hl8-btn:active { transform: scale(.97); }
@media (hover: hover) { .hl8-btn:hover { background: #FFF; } }
.hl8-more { text-align: center; font: 400 calc(15 * var(--u))/1 "Spectral", serif; color: #F8F2E8; text-decoration: none; z-index: 3; }
.hl8-more:hover { text-decoration: underline; text-underline-offset: 4px; }

/* ── Ж08 левая полоса, уровень Vogue (20.10) ── */
.vh8-by { margin: 0; padding-top: calc(8 * var(--u)); border-top: 1px solid #111; font: 700 calc(10 * var(--u))/1 "HK Grotesk", sans-serif; letter-spacing: .16em; text-transform: uppercase; color: #111; }
.vh8-by i { font: italic 400 calc(12 * var(--u))/1 "Spectral", serif; letter-spacing: 0; text-transform: none; color: #6E625C; }
.mr-halls2 .vh8-deck { font: 700 calc(16.5 * var(--u))/1.28 "Spectral", serif; }
.mr-halls2 .vh8-body p { font-size: calc(13 * var(--u)); line-height: 1.48; }
.mr-halls2 .vh8-body .mr-h3__drop { font-size: calc(92 * var(--u)); margin-top: calc(4 * var(--u)); }
.vh8-cap { border-collapse: collapse; font: 400 calc(12.5 * var(--u))/1 "Spectral", serif; color: #111; }
.vh8-cap th { padding: 0 0 calc(6 * var(--u)); text-align: right; font: 700 calc(9 * var(--u))/1 "HK Grotesk", sans-serif; letter-spacing: .12em; text-transform: uppercase; color: #A51C1F; }
.vh8-cap td { padding: calc(7 * var(--u)) 0; border-top: 1px solid #1113; text-align: right; white-space: nowrap; font: 400 calc(20 * var(--u))/1 "Playfair Display", serif; font-variant-numeric: lining-nums; }
.vh8-cap td:first-child { text-align: left; font: 700 calc(10 * var(--u))/1 "HK Grotesk", sans-serif; letter-spacing: .12em; text-transform: uppercase; }
.vh8-cap tbody tr:last-child td { border-bottom: 1px solid #111; }
.vh8-folio { margin: 0; font: 400 calc(11 * var(--u))/1 "Spectral", serif; color: #6E625C; }
.mr-halls2 img.vh8-fig { object-position: 50% 100%; }

/* ── Ж08 левая: «Letter from the Editor» (20.10) ── */
.le8-h { margin: 0; font: 400 calc(54 * var(--u))/1 "Playfair Display", serif; letter-spacing: -.03em; color: #111; white-space: nowrap; }
.le8-h em { font-style: italic; color: #A51C1F; }
.le8-ph { margin: 0; overflow: hidden; }
.mr-halls2 .le8-ph img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 45%; display: block; }
.le8-cap { margin: 0; text-align: center; font: 400 calc(11 * var(--u))/1.4 "HK Grotesk", sans-serif; letter-spacing: .08em; text-transform: uppercase; color: #3A3430; }
.le8-cap b { display: block; font-weight: 700; letter-spacing: .14em; color: #111; }
.le8-cols { columns: 2; column-gap: calc(30 * var(--u)); }
.le8-cols p { margin: 0; text-align: justify; hyphens: auto; text-indent: 1.4em; font: 400 calc(12.5 * var(--u))/1.45 "Spectral", serif; color: #111; }
.le8-cols b { font-weight: 700; }
.le8-h { font-size: calc(46 * var(--u)); letter-spacing: -.035em; }
.le8-h { font-size: calc(40 * var(--u)); }
.mr-halls2 .le8-ph img { filter: grayscale(1) contrast(1.12) brightness(1.05); }

/* ── Ж03 · текст кубиком по центру, по ширине портрета (20.10, как в Vogue) ── */
.mr-chef .rm-restaurant-chef__lead { text-align: center; font: 500 calc(26 * var(--u))/1.06 "Cormorant Garamond", Georgia, serif; letter-spacing: -.012em; color: #111; text-wrap: balance; }
.mr-chef .rm-restaurant-chef__lead em { font-style: italic; font-weight: 500; color: #A51C1F; }
.mr-chef .rm-restaurant-chef__path { text-align: center; font-size: calc(14 * var(--u)) !important; line-height: 1.4; color: #1A1311 !important; text-wrap: balance; }
.mr-chef .rm-restaurant-chef__signature { align-items: center; text-align: center; gap: calc(7 * var(--u)); }
.mr-chef .rm-restaurant-chef__signature strong { font: 500 calc(50 * var(--u))/.95 "Cormorant Garamond", Georgia, serif; letter-spacing: -.01em; color: #111; white-space: nowrap; }

/* ── Ж08 левая: заголовок узкой дидоной по центру, текст кубиком по центру (20.10) ── */
.le8-h { text-align: center; white-space: normal; font: 300 calc(62 * var(--u))/.98 "Noto Serif Display", Georgia, serif; font-stretch: 72%; letter-spacing: -.01em; color: #111; }
.le8-h em { display: block; font-style: italic; font-weight: 300; color: #A51C1F; }
.le8-cols { columns: auto; }
.le8-cols p { text-align: center; hyphens: manual; text-indent: 0; text-wrap: balance; font: 500 calc(17 * var(--u))/1.17 "Cormorant Garamond", Georgia, serif; color: #111; }
.le8-cols b { font-weight: 700; }
/* текст Ж08 — ровным квадратом: выключка по формату, последняя строка по центру */
.le8-cols p { text-align: justify; text-align-last: center; hyphens: auto; -webkit-hyphens: auto; text-wrap: wrap; word-spacing: -.02em; }
/* Ж03 · тексты Вероники (21.10) длиннее — абзац чуть мельче, тот же кубик по центру */
.mr-chef .rm-restaurant-chef__lead { font-size: calc(21.5 * var(--u)); line-height: 1.12; }

/* ── Ж09 · бронирование (21.10) ── */
.mr-book .bk-ph img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 40%; display: block; }
.bk-kick { margin: 0; text-align: center; font: 700 calc(11 * var(--u))/1 "HK Grotesk", sans-serif; letter-spacing: .2em; text-transform: uppercase; color: #A51C1F; }
.bk-h { margin: 0; text-align: center; font: 300 calc(70 * var(--u))/.98 "Noto Serif Display", Georgia, serif; font-stretch: 72%; letter-spacing: -.01em; color: #111; }
.bk-h em { font-style: italic; color: #A51C1F; }
.bk-txt { margin: 0; text-align: justify; text-align-last: center; hyphens: auto; font: 500 calc(19 * var(--u))/1.2 "Cormorant Garamond", Georgia, serif; color: #111; }
.bk-opts { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid #111; border-bottom: 1px solid #111; }
.bk-opts a { display: flex; flex-direction: column; align-items: center; gap: calc(10 * var(--u)); padding: calc(26 * var(--u)) calc(8 * var(--u)); text-decoration: none; color: #111; transition: background-color .2s, color .2s; }
.bk-opts a + a { border-left: 1px solid #1113; }
.bk-opts b { font: italic 500 calc(32 * var(--u))/1 "Cormorant Garamond", Georgia, serif; color: #A51C1F; }
.bk-opts span { text-align: center; font: 700 calc(10 * var(--u))/1.5 "HK Grotesk", sans-serif; letter-spacing: .14em; text-transform: uppercase; color: #3A302C; }
@media (hover: hover) { .bk-opts a:hover { background: #6B171D; } .bk-opts a:hover b, .bk-opts a:hover span { color: #F8F2E8; } }
.bk-opts a:focus-visible { outline: 2px solid #A51C1F; outline-offset: -2px; }
.bk-tel { margin: 0; text-align: center; font: 400 calc(15 * var(--u))/1 "Spectral", serif; color: #3A302C; }
.bk-tel a { color: #111; text-underline-offset: 3px; }
.mr-chef .rm-restaurant-chef__path a { color: inherit; text-decoration: underline; text-decoration-color: #A51C1F; text-underline-offset: 3px; }
@media (hover: hover) { .mr-chef .rm-restaurant-chef__path a:hover { color: #A51C1F; } }

/* ── Ж09 (контакты) · слоган внизу карты (21.10; отдельный разворот брони снят) ── */
.end-shade { background: linear-gradient(0deg, #140B0DF2 0%, #140B0DB0 45%, transparent 100%); pointer-events: none; z-index: 2; }
.end-slogan { margin: 0; text-align: center; font: 300 calc(56 * var(--u))/1 "Noto Serif Display", Georgia, serif; font-stretch: 72%; letter-spacing: -.01em; color: #F8F2E8; z-index: 3; pointer-events: none; }
.end-slogan em { font-style: italic; color: #F0B9B4; }
/* подпись OSM обязательна по лицензии — уводим наверх, из-под затемнения слогана */
.mr-end .v2-back__map figcaption { top: calc(12 * var(--u)); bottom: auto; color: #FFFFFFCC; }

/* ── Ж08 · вместимость: блок фактов вместо таблицы (21.10) ── */
.le8-nums { display: grid; grid-template-columns: 1fr 1fr; border-top: 1px solid #111; padding-top: calc(16 * var(--u)); }
.le8-hall { text-align: center; }
.le8-hall + .le8-hall { border-left: 1px solid #1114; }
.le8-hall p { margin: 0 0 calc(10 * var(--u)); font: italic 500 calc(24 * var(--u))/1 "Cormorant Garamond", Georgia, serif; color: #A51C1F; }
.le8-hall dl { margin: 0; display: flex; justify-content: center; gap: calc(26 * var(--u)); }
.le8-hall dl div { display: flex; flex-direction: column; align-items: center; gap: calc(6 * var(--u)); }
.le8-hall dd { margin: 0; font: 300 calc(50 * var(--u))/.9 "Noto Serif Display", Georgia, serif; font-stretch: 72%; font-variant-numeric: lining-nums; color: #111; }
.le8-hall dt { font: 700 calc(9 * var(--u))/1 "HK Grotesk", sans-serif; letter-spacing: .16em; text-transform: uppercase; color: #6E625C; }
.le8-nums { border-top: 0; padding-top: 0; }
.le8-hall dd { font-size: calc(46 * var(--u)); }

/* ── Ж03 · портреты шефа на прокрутку (21.10) ── */
.ch-slider img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: 0; transition: opacity 1s ease; }
.ch-slider img.is-on { opacity: 1; }
.ch-dots { position: absolute; left: 0; right: 0; bottom: calc(14 * var(--u)); display: flex; justify-content: center; gap: calc(8 * var(--u)); z-index: 2; }
.ch-dots i { width: calc(22 * var(--u)); height: 2px; background: #FFFFFF66; transition: background-color .3s; }
.ch-dots i.on { background: #FFF; }
/* Ж03 · текст прямоугольником, как в журнале (21.10): выключка по формату, последняя строка по центру */
.mr-chef .rm-restaurant-chef__lead, .mr-chef .rm-restaurant-chef__path { text-align: justify; text-align-last: center; hyphens: auto; -webkit-hyphens: auto; text-wrap: wrap; }
.mr-chef .rm-restaurant-chef__lead .drop { font-family: "Cormorant Garamond", Georgia, serif !important; color: var(--wine, #6B171D) !important; font-weight: 500; }
.mr-chef .rm-restaurant-chef__lead { font-size: calc(20.5 * var(--u)); }
.mr-chef .rm-restaurant-chef__lead { letter-spacing: -.018em; word-spacing: -.03em; }
/* Ж07 · афиша реального вечера на правой полосе (21.10) */
.v2-ag3__ad--poster a { display: block; width: 100%; height: 100%; }
.v2-ag3__ad--poster img { width: 100%; height: 100%; object-fit: cover; display: block; filter: none !important; }

/* ── Ж07 · левая кромка всегда в цвет афиши (21.10) ──
   Кромка берёт ту же картинку, что стоит справа (--poster на разделе), сильно
   увеличенную и размытую: остаются только цвет и фактура афиши. Сменили афишу
   в одном месте — кромка перекрасилась сама. */
.v2-ag3__paper--poster { background: #2A0B0E; }
.v2-ag3__paper--poster::before { content: ""; position: absolute; inset: -40px; background: var(--poster) 70% 30% / 340% auto no-repeat; filter: blur(14px) saturate(1.15) brightness(.92); }
.v2-ag3__paper--poster::after { display: block !important; content: ""; position: absolute; inset: 0; opacity: .5; mix-blend-mode: multiply; background: linear-gradient(90deg, rgba(0,0,0,.18), rgba(0,0,0,0) 60%); }
.v2-ag3__paper--poster::before { background-position: 100% 34%; background-size: 420% auto; filter: blur(18px) saturate(1.2) brightness(.95); }
/* Ж07 · кадры колонкой слева, текст справа (21.10): текст идёт сверху вниз одинаково — дата по верху кадра, ровные отступы */
.v2-ag3__item { justify-content: flex-start; gap: calc(12 * var(--u)); }
.v2-ag3__item .v2-ag3__date { margin-top: calc(-2 * var(--u)); }

/* ── Обложка · ближайший вечер, затягивается в печать (21.10, funnel.js) ── */
.cv-next { left: calc(720 * var(--u)); width: calc(720 * var(--u)); top: calc(250 * var(--u)); z-index: 4; display: flex; flex-direction: column; align-items: center; gap: calc(10 * var(--u)); text-align: center; color: #F8F2E8; pointer-events: none; opacity: 0; }
.cv-next i { font-style: normal; display: inline-block; white-space: pre; will-change: transform; }
.cv-next__d { font: 700 calc(11 * var(--u))/1 "HK Grotesk", sans-serif; letter-spacing: .24em; text-transform: uppercase; color: #F0B9B4; }
.cv-next__t { font: italic 400 calc(54 * var(--u))/1 "Cormorant Garamond", Georgia, serif; letter-spacing: -.005em; text-shadow: 0 2px 24px rgba(0,0,0,.45); }
.cv-next__n { max-width: calc(440 * var(--u)); font: 400 calc(15 * var(--u))/1.4 "Spectral", Georgia, serif; color: #F8F2E8E0; }
.cv-next.is-in { opacity: 1; }
.cv-next.is-in i { animation: cv-next-in .9s cubic-bezier(.22,1,.36,1) both; animation-delay: calc(var(--k, 0) * 1ms); }
.cv-next.is-in .cv-next__t i { animation-delay: .25s; }
.cv-next.is-in .cv-next__n i { animation-delay: .5s; }
.cv-next.is-gone { opacity: 0; transition: none; visibility: hidden; }
@keyframes cv-next-in { from { opacity: 0; filter: blur(8px); transform: translateY(10px); } to { opacity: 1; filter: none; transform: none; } }
a.cv-seal { transition: transform .35s cubic-bezier(.34,1.56,.64,1), background-color .25s; }
a.cv-seal.is-gulp { transform: scale(1.14); }
a.cv-seal.cv-seal--event .cv-seal__ring text { letter-spacing: .06em; }
/* воронка: чем быстрее крутится кольцо, тем сильнее тянет внутрь — тень-«горизонт» вокруг печати */
a.cv-seal { --whirl: 0; box-shadow: 0 calc(8 * var(--u)) calc(26 * var(--u)) #0006, 0 0 calc(var(--whirl) * 60px) calc(var(--whirl) * 14px) rgba(10,4,4,.55); }
a.cv-seal .cv-seal__ring { filter: blur(calc(var(--whirl) * 1.4px)); }
a.cv-seal .cv-seal__star { transform: rotate(calc(var(--whirl) * 180deg)) scale(calc(1 + var(--whirl) * .35)); }
/* вихрь вокруг печати: светлые рукава закручиваются, пока кольцо разогнано */
a.cv-seal { box-shadow: 0 calc(8 * var(--u)) calc(26 * var(--u)) #0006; }
a.cv-seal::before { content: ""; position: absolute; inset: -38%; border-radius: 50%; pointer-events: none; z-index: -1;
  background: conic-gradient(from 0deg, transparent 0 8%, rgba(248,242,232,.55) 18%, transparent 30%, transparent 42%, rgba(240,185,180,.45) 52%, transparent 64%, transparent 76%, rgba(248,242,232,.4) 86%, transparent 96%);
  -webkit-mask: radial-gradient(circle, transparent 0 34%, #000 42%, transparent 70%); mask: radial-gradient(circle, transparent 0 34%, #000 42%, transparent 70%);
  filter: blur(5px); opacity: var(--whirl); transform: rotate(var(--wa, 0deg)) scale(calc(1.15 - var(--whirl) * .15)); }
a.cv-seal .cv-seal__ring { filter: blur(calc(var(--whirl) * 2.2px)); }
/* смаз надписи — только на самом пике, не всю анимацию */
a.cv-seal .cv-seal__ring { filter: blur(calc(max(0, var(--whirl) - .6) * 4px)); }

/* 22.10 · водоворот снят: кольцо снова крутит CSS, вихря нет; вечер растворяется по буквам, печать меняет надпись через затухание */
a.cv-seal::before { display: none; }
a.cv-seal .cv-seal__ring { filter: none; }
a.cv-seal .cv-seal__star { transform: none; }
.cv-next.is-out i { animation: cv-next-out .8s cubic-bezier(.55,0,.75,.2) both; }
.cv-next.is-out .cv-next__t i { animation-delay: .12s; }
.cv-next.is-out .cv-next__n i { animation-delay: .24s; }
@keyframes cv-next-out { from { opacity: 1; filter: none; transform: none; } to { opacity: 0; filter: blur(8px); transform: translateY(-8px); } }
a.cv-seal .cv-seal__ring text { transition: opacity .4s ease; }
a.cv-seal.is-swap .cv-seal__ring text { opacity: 0; }

/* ── Ж07 · три афиши на правой полосе (22.10) ──
   Сменяются сами и при наведении на вечер в списке. На салонных вечерах внизу
   имя салона, как было; у главного вечера своя типографика — без подписи.
   Левая кромка берёт цвет текущей афиши (--poster ставит скрипт). */
.v2-ag3__ad--poster > a { position: absolute; inset: 0; opacity: 0; transition: opacity .9s ease; }
.v2-ag3__ad--poster > a.is-on { opacity: 1; z-index: 1; }
.v2-ag3__ad--poster > a::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 32%; background: linear-gradient(0deg, rgba(14,8,8,.6), transparent); opacity: 0; transition: opacity .9s; }
.v2-ag3__ad--poster > a[data-salon="1"]::after { opacity: 1; }
.v2-ag3__mark--poster { pointer-events: none; transition: opacity .6s ease; }
#zh07:not([data-salon-on]) .v2-ag3__mark--poster { opacity: 0; }
.v2-ag3__paper--poster::before { transition: background-image .9s; }
.v2-ag3__item[data-poster], .v2-ag3__shot[data-poster] { transition: opacity .4s; }
#zh07[data-cur] .v2-ag3__shot[data-poster]:not(.is-cur) img { filter: grayscale(.9) brightness(.85); }

/* 25.10 · контакты: связь (Telegram-аккаунт, WhatsApp) отдельно от новостей (канал, VK) */
.mr-end__msg a { color: inherit; }
.mr-end__social { align-items: center; }
.mr-end__soclbl { font: 400 calc(13 * var(--u))/1 "Spectral", Georgia, serif; letter-spacing: .08em; text-transform: uppercase; color: rgba(255,246,236,.7); margin-right: calc(6 * var(--u)); }
