/* AGLOFT · общий CSS проекта (Настройки сайта → Ещё → CSS). Источник: tilda-mcp-test/agloft/site.css.
   Общие классы элементов (Zero: на обёртке .tn-elem, внутри .tn-atom; вайб-блоки: на самом элементе):
   тексты   ag-h1 ag-h2 ag-h3 ag-h4 · ag-text · ag-lead · ag-quote · ag-caption · ag-micro · ag-value · ag-num
   крупные  ag-display («Погреб», «1827»)
   ссылки   ag-link («Подробнее», «Вся галерея», «Скачать презентацию» в hero)
   кнопки   ag-btn + ag-btn--main (заливка) / ag-btn--line (контур) / ag-btn--icon (стрелки слайдера)
   плашки   ag-pill (буквы SERVICE, AG TEAM, MSK) · ag-tag (теги карточек событий) */

/* пилюли-буквы — эллипсы, как в макете (39×27, 46×32) */
.tn-elem.ag-pill .tn-atom,
.tn-elem.ag-pill .tn-atom__button-border {
  border-radius: 50% !important;
}

/* бегущая строка DV13 (t1003) — Главная, Кейтеринг: высота 85 в настройках блока, на мобилке 50 (Антон 25.10);
   блок пишет высоту инлайном (min-height у .t1003, height у обёртки) — перебиваем important */
@media (max-width: 639px) {
  .t-rec .t1003 { min-height: 50px !important; }
  .t-rec .t1003 .t1003__content-wrapper { height: 50px !important; }
}

/* ---------- галерея GL26 (t989) в стиле AGLOFT — стр. «События», Figma 297:1068 ----------
   Клиент наполняет блок как обычную галерею. Здесь: поля и отступы по токенам, фото 2:1 (≤959 — 3:2) на всю ширину,
   стрелки (и счётчик «01 / 10» из скрипта интро) справа над фото, миниатюры 3:2 — по 10 в ряд, активная обведена.
   --g поле, --b отступ «стрелки → фото», --s нижний отступ секции, --btn размер кнопки-стрелки —
   те же токены и брейкпоинты, что у Zero-блоков (agtok.py) */
/* --b 24 / 20: стрелки поджаты к фото (Антон 25.10); --hdr высота закреплённой шапки, --th запас под миниатюры */
.t-rec .t989 { --g: 80px; --b: 24px; --s: 140px; --btn: 56px; --hdr: 72px; --th: 86px; }   /* ≥1920 */
@media (max-width: 1919px) { .t-rec .t989 { --g: 40px; --s: 120px; } }               /* 1600 */
@media (max-width: 1599px) { .t-rec .t989 { --s: 112px; } }                          /* 1440 */
@media (max-width: 1439px) { .t-rec .t989 { --s: 96px; } }                           /* 1200 */
@media (max-width: 1199px) { .t-rec .t989 { --g: 32px; --s: 88px; --hdr: 78px; } }   /* 960 */
@media (max-width: 959px)  { .t-rec .t989 { --g: 24px; --b: 20px; --s: 72px; } }     /* 640 */
@media (max-width: 639px)  { .t-rec .t989 { --g: 20px; --s: 64px; --btn: 48px; } }   /* 480 */
@media (max-width: 479px)  { .t-rec .t989 { --g: 16px; --s: 56px; } }                /* 360 */

.t-rec .t989 .t989__container { padding: 0 var(--g) var(--s) !important; max-width: none; box-sizing: border-box; }
.t-rec .t989 .t989__gallery-wrapper { height: auto !important; overflow: visible; background: transparent !important; }
.t-rec .t989 .t-slds { height: auto !important; max-height: none; }
.t-rec .t989 .t989__gallery-container { position: relative; width: 100%; max-width: none; height: auto !important;
  padding: calc(var(--btn) + var(--b)) 0 0 !important; }
.t-rec .t989 .t-slds__container { width: 100% !important; max-width: none !important; height: auto !important; }
.t-rec .t989 .t-slds__items-wrapper { height: auto !important; }
.t-rec .t989 .t989__img-width { width: 100% !important; max-width: none !important; height: 100% !important; }
/* пропорция — у самого слайда: на мобилке блок прячет содержимое дальних слайдов, и без неё они схлопываются в 0,
   а лента съезжает */
.t-rec .t989 .t989__img-item { height: auto !important; aspect-ratio: 2 / 1; }
/* ≥960 фото не выше окна: под закреплённой шапкой помещаются стрелки, фото и миниатюры целиком (Антон 25.10);
   на широком низком экране фото шире 2:1 и обрезается по высоте, но не ниже 400 */
@media (min-width: 960px) { .t-rec .t989 .t989__img-item { aspect-ratio: auto; height: min(calc((100vw - 2 * var(--g)) / 2),
  max(400px, calc(100vh - var(--hdr) - var(--btn) - var(--b) - 24px - var(--th) - 48px))) !important; } }
.t-rec .t989 .t989__img-wrapper { height: 100% !important; padding: 0 !important; border-radius: 10px; overflow: hidden;
  background: #3d2e26; }
.t-rec .t989 .t989__img { width: 100% !important; height: 100% !important; max-width: none; max-height: none !important;
  object-fit: cover; border-radius: 0 !important; }
@media (max-width: 959px) { .t-rec .t989 .t989__img-item { aspect-ratio: 3 / 2; } }
@media (max-width: 479px) { .t-rec .t989 .t989__img-wrapper { border-radius: 8px; } }

/* стрелки: на десктопе — из полосы миниатюр, ≤959 — мобильные; обе пары встают справа над фото */
/* скрипт блока ставит полосе инлайном padding 0 95px под свои стрелки — стрелки ушли наверх, поля не нужны */
.t-rec .t989 .t989__thumbsbullets { position: static; margin: 24px 0 0; padding: 0 !important; }
.t-rec .t989 .t989__thumbsbullets-container { width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0; }
.t-rec .t989 .t989__arrow, .t-rec .t989 .t989__mobile-arrows .t-slds__arrow_wrapper {
  position: absolute; top: 0 !important; bottom: auto; left: auto !important; transform: none !important;
  width: var(--btn) !important; height: var(--btn) !important; margin: 0; }
.t-rec .t989 .t989__arrow-left, .t-rec .t989 .t-slds__arrow_wrapper-left { right: calc(var(--btn) + 8px) !important; }
.t-rec .t989 .t989__arrow-right, .t-rec .t989 .t-slds__arrow_wrapper-right { right: 0 !important; }
.t-rec .t989 .t989__arrow, .t-rec .t989 .t989__mobile-arrows .t-slds__arrow {
  display: block !important; align-items: center; justify-content: center; border-radius: 8px;
  background-color: #a04913 !important; border: 0 !important; }
.t-rec .t989 .t989__mobile-arrows .t-slds__arrow { width: 100% !important; height: 100% !important;
  transform: none !important; position: relative !important; left: 0 !important; right: auto !important; top: 0 !important; }
/* галерея листается по кругу, а разметка мобильных стрелок помечена «без цикла» и прячет левую на первом фото */
.t-rec .t989 .t989__mobile-arrows .t-slds__arrow_wrapper { display: block !important; }
.t-rec .t989 .t989__arrow:hover, .t-rec .t989 .t989__mobile-arrows .t-slds__arrow:hover { background-color: #8a3e10 !important; }
/* иконка по центру кнопки абсолютно: кнопка у блока остаётся display:block, flex-центровка на неё не действует */
.t-rec .t989 .t-slds__arrow_body { position: absolute !important; left: 50% !important; top: 50% !important; margin: 0 !important;
  width: 9px !important; transform: translate(-50%, -50%) !important; }
.t-rec .t989 .t-slds__arrow_body-left { transform: translate(-50%, -50%) rotate(180deg) !important; }   /* левая — та же иконка, повёрнута */
.t-rec .t989 .t-slds__arrow_body polyline { stroke: #faf5eb !important; stroke-width: 2px; }

/* счётчик «01 / 10» (вставляет скрипт интро) — левее стрелок через 40 */
.t-rec .t989 .ag-gl-count { position: absolute; top: 0; right: calc(var(--btn) * 2 + 8px + 40px); height: var(--btn);
  display: flex; align-items: center; color: #a8978a; font-family: var(--t-text-font, Arial); font-weight: 600;
  font-size: 12px; line-height: 1.3; letter-spacing: .24px; text-transform: uppercase; white-space: nowrap; }
@media (min-width: 1920px) { .t-rec .t989 .ag-gl-count { font-size: 13px; letter-spacing: .26px; } }
@media (max-width: 479px)  { .t-rec .t989 .ag-gl-count { font-size: 10px; letter-spacing: .2px; } }

/* миниатюры 3:2 по 10 в ряд, промежуток 8; неактивные приглушены, активная — оранжевая обводка */
/* не шире 128 (≈86 по высоте); больше 10 фото — ряд листается вбок, активную подкручивает скрипт интро */
.t-rec .t989 .t-slds__thumbsbullet-wrapper { position: relative; display: flex; justify-content: flex-start !important;
  overflow-x: auto; scrollbar-width: none; }
.t-rec .t989 .t-slds__thumbsbullet-wrapper::-webkit-scrollbar { display: none; }
.t-rec .t989 .t-slds__thumbsbullet.t-slds__bullet { flex: 0 0 auto; width: min(calc((100% - 72px) / 10), 128px) !important;
  height: auto !important; aspect-ratio: 3 / 2; margin: 0 8px 0 0; transform: none !important; opacity: .35; }
@media (max-width: 959px) { .t-rec .t989 .t-slds__thumbsbullet.t-slds__bullet { width: 96px !important; } }
.t-rec .t989 .t-slds__thumbsbullet.t-slds__bullet:last-child { margin-right: 0; }
.t-rec .t989 .t-slds__thumbsbullet.t-slds__bullet:hover { opacity: .7; }
/* активную миниатюру блок помечает t-slds__bullet_active; до первого переключения — только t-slds__item_active у первой
   (и этот класс у неё потом остаётся), поэтому item_active учитываем, лишь пока bullet_active нет ни у одной */
.t-rec .t989:not(:has(.t-slds__bullet_active)) .t-slds__thumbsbullet.t-slds__item_active,
.t-rec .t989 .t-slds__thumbsbullet.t-slds__bullet_active { opacity: 1; }
.t-rec .t989 .t-slds__thumbsbullet .t-slds__img { width: 100% !important; height: 100% !important; max-height: none;
  object-fit: cover; }
.t-rec .t989 .t-slds__thumbsbullet-border { border: 2px solid transparent !important; box-sizing: border-box; }
.t-rec .t989:not(:has(.t-slds__bullet_active)) .t-slds__thumbsbullet.t-slds__item_active .t-slds__thumbsbullet-border,
.t-rec .t989 .t-slds__thumbsbullet.t-slds__bullet_active .t-slds__thumbsbullet-border { border-color: #fa9801 !important; }

/* ---------- вопрос-ответ SV503 (t1119) в стиле AGLOFT — стр. «Кейтеринг», Figma 277:847 ----------
   Клиент правит вопросы в контенте блока. Здесь: поля и отступы по токенам, шапка слева (700) | вопросы справа (756),
   ≤959 — столбиком; линии 1px, плюс/минус 24 px вместо круга, шрифты как у Zero (H2, текст, ссылка, «значение»).
   --g поле, --s отступ секции, --b между колонками, --h2/--q/--t/--a кегли заголовка, вопроса, текста, ссылки */
.t-rec .t1119 { --g: 80px; --s: 140px; --b: 72px; --h2: 54px; --q: 20px; --t: 15px; --a: 14px; --row: 28px; }
@media (max-width: 1919px) { .t-rec .t1119 { --g: 40px; --s: 120px; --b: 64px; --h2: 46px; --q: 18px; --t: 14px; --a: 13px; } }
@media (max-width: 1599px) { .t-rec .t1119 { --s: 112px; --h2: 42px; } }
@media (max-width: 1439px) { .t-rec .t1119 { --s: 96px; --b: 56px; --h2: 38px; --q: 16px; --a: 12px; --row: 24px; } }
@media (max-width: 1199px) { .t-rec .t1119 { --g: 32px; --s: 88px; --b: 48px; --h2: 34px; } }
@media (max-width: 959px)  { .t-rec .t1119 { --g: 24px; --s: 72px; --b: 44px; --h2: 30px; } }
@media (max-width: 639px)  { .t-rec .t1119 { --g: 20px; --s: 64px; --b: 42px; --h2: 27px; --t: 13px; --a: 11px; --row: 20px; } }
@media (max-width: 479px)  { .t-rec .t1119 { --g: 16px; --s: 56px; --b: 40px; --h2: 24px; --t: 12px; --a: 10px; } }

.t-rec .t1119 { padding: var(--s) 0; font-family: var(--t-text-font, Arial); }
.t-rec .t1119 .t1119__container { display: grid; grid-template-columns: minmax(0, 700fr) minmax(0, 756fr);
  column-gap: var(--b); row-gap: var(--b); max-width: none; padding: 0 var(--g); box-sizing: border-box; }
@media (max-width: 959px) { .t-rec .t1119 .t1119__container { grid-template-columns: minmax(0, 1fr); } }
/* clearfix-псевдоэлементы контейнера стали бы лишними ячейками сетки */
.t-rec .t1119 .t1119__container::before, .t-rec .t1119 .t1119__container::after { display: none; }
.t-rec .t1119 .t1119__container > .t-col { width: auto !important; max-width: none; margin: 0 !important;
  padding: 0 !important; }
.t-rec .t1119 .t1119__title { margin: 0; font-family: var(--t-text-font, Arial); font-size: var(--h2); line-height: 1.08; font-weight: 800;
  letter-spacing: -.01em; text-transform: uppercase; color: #120603; }
.t-rec .t1119 .t1119__descr { max-width: 400px; margin: 24px 0 0; font-family: var(--t-text-font, Arial); font-size: var(--t);
  line-height: 1.4; font-weight: 600; text-transform: uppercase; color: #7d6b5d; }
.t-rec .t1119 .t1119__descr a { font-size: var(--a); line-height: 1.3; letter-spacing: .02em; color: #120603;
  text-decoration: underline; transition: color .2s; }
.t-rec .t1119 .t1119__descr a:hover { color: #a04913; }
/* линии: сверху у первого вопроса, под каждым — снизу (блок рисует только верхние) */
.t-rec .t1119 .t1119__header { border-top: 0 !important; }
.t-rec .t1119 .t1119__accordion { border-bottom: 1px solid rgba(18, 6, 3, .25); }
.t-rec .t1119 .t1119__accordion:first-child { border-top: 1px solid rgba(18, 6, 3, .25); }
.t-rec .t1119 .t1119__trigger-button { display: flex; align-items: center; justify-content: space-between; gap: 24px;
  width: 100%; padding: var(--row) 0 !important; }
.t-rec .t1119 .t1119__header-title { padding: 0 !important; font-family: var(--t-text-font, Arial); font-size: var(--q); line-height: 1.35;
  font-weight: 600; text-transform: uppercase; color: #120603; transition: color .2s; }
.t-rec .t1119 .t1119__trigger-button:hover .t1119__header-title { color: #a04913; }
.t-rec .t1119 .t1119__textwrapper { padding: 0 0 var(--row) !important; }
.t-rec .t1119 .t1119__text { font-family: var(--t-text-font, Arial); font-size: var(--t); line-height: 1.4; font-weight: 600;
  text-transform: uppercase; color: #7d6b5d; }
/* значок: плюс без круга, черты 17.5 px толщиной 1.5 как в макете (у svg блока черта = 22/40 размера, поэтому svg 32
   с полем −4 — место под значок остаётся 24); у открытого вопроса — минус (вертикальная черта гаснет), без поворота */
.t-rec .t1119 .t1119__icon { position: static !important; flex: 0 0 32px; width: 32px !important; height: 32px !important;
  margin: -4px !important; transform: none !important; }
.t-rec .t1119 .t1119__icon circle { fill: transparent !important; }
.t-rec .t1119 .t1119__lines { stroke: #120603 !important; stroke-width: 1.875px !important; transform: none !important; }
.t-rec .t1119 .t1119__lines path { transition: opacity .2s; }
/* открыт = у ответа инлайн display:block; aria-expanded не годится — у первого, раскрытого по умолчанию, блок его путает */
.t-rec .t1119 .t1119__wrapper:has(.t1119__content[style*="display: block"]) .t1119__lines path:nth-child(2) { opacity: 0; }
.t-rec .t1119 .t1119__wrapper:has(.t1119__content[style*="display: block"]) .t1119__lines { stroke: #a04913 !important; }

/* ---------- лента статей FD301N (t2823) — стр. «Статьи» /articles, вид как у карточек на Главной (Figma 245:11129) ----------
   --g поле, --s отступ секции, --ph высота обложки, --dt дата, --tt заголовок, --a «Читать» / «Показать ещё», --gap между элементами */
.t-rec:has(> .t2823) { background: #faf5eb; }
.t-rec .t2823 { --g: 80px; --s: 140px; --ph: 380px; --dt: 13px; --tt: 20px; --a: 14px; --gap: 24px; --bh: 60px; --bp: 36px;
  padding: var(--s) var(--g); }
@media (max-width: 1919px) { .t-rec .t2823 { --g: 40px; --s: 120px; --ph: 320px; --dt: 12px; --tt: 18px; --a: 13px; } }
@media (max-width: 1599px) { .t-rec .t2823 { --s: 112px; --ph: 300px; } }
@media (max-width: 1439px) { .t-rec .t2823 { --s: 96px; --ph: 260px; --a: 12px; --bh: 48px; --bp: 30px; } }
@media (max-width: 1199px) { .t-rec .t2823 { --g: 32px; --s: 88px; --ph: 320px; --tt: 16px; } }
@media (max-width: 959px)  { .t-rec .t2823 { --g: 24px; --s: 72px; --ph: 260px; --gap: 20px; } }
@media (max-width: 639px)  { .t-rec .t2823 { --g: 20px; --s: 64px; --ph: 240px; --dt: 11px; --a: 11px; --gap: 18px; --bh: 47px; --bp: 24px; } }
@media (max-width: 479px)  { .t-rec .t2823 { --g: 16px; --s: 56px; --ph: 220px; --dt: 10px; --a: 10px; --gap: 16px; --bh: 46px; --bp: 18px; } }
.t-rec .t2823 .t2823__container_header:not(:has(.t-section__title, .t-section__descr)) { display: none; }
.t-rec .t2823 .t2823__container, .t-rec .t2823 .t2823__container .t-col { max-width: none !important; width: 100% !important;
  margin: 0 !important; padding: 0 !important; }
/* 4 колонки с зазором 8, на 640–1199 — 2, ≤639 — одна */
.t-rec .t2823 .t2823__items { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 40px 8px;
  margin: 0 !important; padding: 0 !important; }
@media (max-width: 1199px) { .t-rec .t2823 .t2823__items { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 639px)  { .t-rec .t2823 .t2823__items { grid-template-columns: minmax(0, 1fr); } }
.t-rec .t2823 .t-cms__card { position: relative; display: flex !important; flex-direction: column; gap: var(--gap);
  width: auto !important; max-width: none !important; margin: 0 !important; padding: 0 !important; background: none !important; }
.t-rec .t2823 .t-cms__card__cell, .t-rec .t2823 .t-cms__card__molecule { margin: 0 !important; padding: 0 !important; }
.t-rec .t2823 .t-cms__card__cell_txt { display: flex; flex-direction: column; gap: var(--gap); }
.t-rec .t2823 .t-cms__card__image { width: 100% !important; height: var(--ph) !important; padding: 0 !important;
  aspect-ratio: auto !important; border-radius: 10px; background-size: cover !important; background-position: center !important; }
.t-rec .t2823 .t-cms__card__cell_media, .t-rec .t2823 .t-cms__card__cell_media .t-cms__card__molecule,
.t-rec .t2823 .t-cms__card__cell_media .t-cms__card__atom { height: auto !important; aspect-ratio: auto !important; }
.t-rec .t2823 .t-cms__card__cell_media .t-cms__card__atom { width: 100%; border-radius: 10px; overflow: hidden; }
.t-rec .t2823 .t-cms__card__cell_txt .t-cms__card__molecule, .t-rec .t2823 .t-cms__card__cell_txt .t-cms__card__atom { display: block; }
.t-rec .t2823 .t-cms__card__separator { display: none !important; }
.t-rec .t2823 [data-style="text_typo"] { margin: 0 !important; font-family: var(--t-text-font, Arial) !important; font-size: var(--dt) !important;
  line-height: 1.3 !important; font-weight: 600 !important; letter-spacing: .02em !important; text-transform: uppercase; color: #7d6b5d !important; }
.t-rec .t2823 [data-style="title_typo"] { margin: 0 !important; font-family: var(--t-text-font, Arial) !important; font-size: var(--tt) !important;
  line-height: 1.35 !important; font-weight: 700 !important; letter-spacing: 0 !important; text-transform: uppercase; color: #120603 !important;
  transition: color .2s; }
/* «Читать» как на Главной: подчёркнутая ссылка под заголовком (вся карточка — ссылка блока) */
.t-rec .t2823 .t-cms__card__cell_txt::after { content: "Читать"; font-family: var(--t-text-font, Arial); font-size: var(--a); line-height: 1.3;
  font-weight: 600; letter-spacing: .02em; text-transform: uppercase; text-decoration: underline; color: #120603; transition: color .2s; }
.t-rec .t2823 .t-cms__card:hover [data-style="title_typo"], .t-rec .t2823 .t-cms__card:hover .t-cms__card__cell_txt::after { color: #a04913 !important; }
.t-rec .t2823 .t-cms__card__link { position: absolute; inset: 0; z-index: 2; }
/* «Показать ещё» — контурная кнопка сайта */
.t-rec .t2823 .t2823__wrapper ~ * .t-btn, .t-rec .t2823 .js-feed-btn-show-more, .t-rec .t2823 .t-btn { height: var(--bh) !important;
  padding: 0 var(--bp) !important; border: 1px solid rgba(18, 6, 3, .5) !important; border-radius: 8px !important; background: transparent !important;
  color: #120603 !important; font-family: var(--t-text-font, Arial) !important; font-size: var(--a) !important; font-weight: 700 !important;
  letter-spacing: .04em; text-transform: uppercase; transition: background .2s, color .2s, border-color .2s; }
.t-rec .t2823 .t-btn:hover { background: #120603 !important; border-color: #120603 !important; color: #faf5eb !important; }
/* страница статьи (открывается из ленты на весь экран): заголовок как H2 сайта, дата как подпись, обложка r10 */
.t-cms__page [data-style="post_title_typo"] { font-family: var(--t-text-font, Arial) !important; font-weight: 800 !important;
  text-transform: uppercase; line-height: 1.1 !important; letter-spacing: -.01em; color: #120603 !important; }
.t-cms__page [data-style="post_text_typo"] { font-family: var(--t-text-font, Arial) !important; font-size: 12px !important; font-weight: 600 !important;
  letter-spacing: .02em !important; text-transform: uppercase; color: #7d6b5d !important; }
.t-cms__page .t-cms__page__cell_media .t-cms__page__atom, .t-cms__page .t-cms__page__image { border-radius: 10px; overflow: hidden; }
.t-cms__page .t-cms__page__separator { display: none !important; }
/* текст статьи (поле-редактор «Текст статьи», блоки t-redactor): подзаголовки капсом как H4 сайта, абзацы строчными для чтения */
.t-cms__page .t-redactor__h2, .t-cms__page .t-redactor__h3 { font-family: var(--t-text-font, Arial) !important; font-weight: 800 !important;
  font-size: 22px !important; line-height: 1.2 !important; letter-spacing: -.01em; text-transform: uppercase; color: #120603 !important; }
.t-cms__page .t-redactor__text { font-family: var(--t-text-font, Arial) !important; font-weight: 600 !important; font-size: 16px !important;
  line-height: 1.55 !important; color: #120603 !important; }
@media (max-width: 639px) {
  .t-cms__page .t-redactor__h2, .t-cms__page .t-redactor__h3 { font-size: 18px !important; }
  .t-cms__page .t-redactor__text { font-size: 14px !important; }
}

/* Кейтеринг · «Дегустация» (rec 5129580301) и тот же блок AGCatering на Главной (rec 5109344201): ≥1200 колонка и карточка не выше окна под шапкой — блок целиком в экране
   на низком ноутбуке (клиент 29.10); id групп меняются при пересборке — берём верхние группы артборда; 80 — шапка, ещё 80 — поля блока 40 + 40; не ниже 520 */
@media (min-width: 1200px) {
  #rec5129580301 .t396__artboard > .tn-group, #rec5109344201 .t396__artboard > .tn-group { height: min(680px, max(520px, calc(100vh - 160px))) !important; } }
@media (min-width: 1440px) {
  #rec5129580301 .t396__artboard > .tn-group, #rec5109344201 .t396__artboard > .tn-group { height: min(700px, max(520px, calc(100vh - 160px))) !important; } }
@media (min-width: 1600px) {
  #rec5129580301 .t396__artboard > .tn-group, #rec5109344201 .t396__artboard > .tn-group { height: min(740px, max(520px, calc(100vh - 160px))) !important; } }
@media (min-width: 1920px) {
  #rec5129580301 .t396__artboard > .tn-group, #rec5109344201 .t396__artboard > .tn-group { height: min(820px, max(520px, calc(100vh - 160px))) !important; } }

/* статьи: вопрос в интервью — жирный абзац (chef_article.py) → 800 и ржавый, чтобы отличался от ответа (текст и так 600) */
.t-cms__page .t-redactor__text strong { font-weight: 800 !important; color: #a04913 !important; }

/* форма заявки в подвале (Zero «Форма заявки», все страницы): у полей нижний отступ 0 — согласие отделено от последнего поля (Антон 29.10);
   текст согласия — подписью как в попапе: 12 капсом, приглушённый, ссылка подчёркнута */
.tn-atom__form .t-input-group_cb { margin-top: 24px !important; }
.tn-atom__form .t-checkbox__control { font-size: 12px !important; line-height: 1.3 !important; font-weight: 600 !important;
  letter-spacing: .02em; text-transform: uppercase; color: #7d6b5d !important; align-items: flex-start; }
.tn-atom__form .t-checkbox__control a { color: inherit !important; text-decoration: underline; }
@media (max-width: 639px) { .tn-atom__form .t-input-group_cb { margin-top: 20px !important; } }

/* страницы документов /privacy (политика), /agreement (согласие на обработку ПДн, 10.11), /offer (оферта, 10.11) — doc_pages.py:
   текст TX01 (t004) под Zero-интро — от того же поля, что H1, не шире 820; текст как у статей (16 / 14, строчные, 600);
   заголовки разделов (жирные) — 800; списки с отступом; ссылки подчёркнуты. Блоки: 5301354201, 5301354901, 5680090501 */
#rec5301354201, #rec5301354901, #rec5680090501 { --g: 80px; background: #faf5eb; }
@media (max-width: 1919px) { #rec5301354201, #rec5301354901, #rec5680090501 { --g: 40px; } }
@media (max-width: 1199px) { #rec5301354201, #rec5301354901, #rec5680090501 { --g: 32px; } }
@media (max-width: 959px)  { #rec5301354201, #rec5301354901, #rec5680090501 { --g: 24px; } }
@media (max-width: 639px)  { #rec5301354201, #rec5301354901, #rec5680090501 { --g: 20px; } }
@media (max-width: 479px)  { #rec5301354201, #rec5301354901, #rec5680090501 { --g: 16px; } }
#rec5301354201 .t-container, #rec5301354901 .t-container, #rec5680090501 .t-container { max-width: none !important; width: 100% !important; box-sizing: border-box; padding: 0 var(--g) !important; }
#rec5301354201 .t-col, #rec5301354901 .t-col, #rec5680090501 .t-col { width: 100% !important; max-width: 820px !important; margin: 0 !important; padding: 0 !important; float: none; }
#rec5301354201 .t-text, #rec5301354901 .t-text, #rec5680090501 .t-text { font-family: var(--t-text-font, Arial) !important; font-weight: 600 !important;
  font-size: 16px !important; line-height: 1.55 !important; color: #120603 !important; overflow-wrap: anywhere; max-width: 820px; }
#rec5301354201 .t-text strong, #rec5301354901 .t-text strong, #rec5680090501 .t-text strong, #rec5301354201 .t-text b, #rec5301354901 .t-text b, #rec5680090501 .t-text b { font-weight: 800; }
#rec5301354201 .t-text ul, #rec5301354901 .t-text ul, #rec5680090501 .t-text ul { margin: 12px 0 24px; padding-left: 1.25em; }
#rec5301354201 .t-text li, #rec5301354901 .t-text li, #rec5680090501 .t-text li { margin: 0 0 8px; padding-left: 4px; }
#rec5301354201 .t-text a, #rec5301354901 .t-text a, #rec5680090501 .t-text a { color: inherit !important; text-decoration: underline; text-underline-offset: 2px; }
@media (max-width: 639px) { #rec5301354201 .t-text, #rec5301354901 .t-text, #rec5680090501 .t-text { font-size: 14px !important; } }
/* вкладки между документами в интро (build_doc_hero.py): текущая — кремовая с чертой снизу, остальные — ссылки */
.ag-doc-tab { padding-bottom: 4px; border-bottom: 1px solid transparent; }
.ag-doc-tab.is-current { border-bottom-color: currentColor; }
.ag-doc-tab a:hover, a.ag-doc-tab:hover { color: #faf5eb !important; }

/* ---------- SEO-страницы форматов (/format/…) — стандартные блоки Тильды, Figma 522:184 (v3) ----------
   Менеджер копирует страницу и меняет тексты, фото и число пунктов в «Контенте» блоков. В настройках блоков (Антон, 14.11):
   цвета, кнопки (стиль из библиотеки), фон, вопрос-ответ целиком, кегли/начертание/капс заголовков, лидов и названий
   пунктов, описаний и номеров (десктоп + мобилка). Здесь только то, чего настройки не дают: раскладка, отступы секций,
   номера фактов обложки (у CR60 нет поля), скругления фото. Привязка по классам шаблонов, а не по номерам записей, поэтому
   работает на любой копии страницы и на новых страницах из тех же блоков.
   Блоки: CR60 обложка (t3532) · FR404N пункты (t1053, 02 и 04) · AB102 заголовок+кнопка (t467) · GL13N квадраты (t1231)
   · TE210 карточки (t649). Вопрос-ответ TX16N (t4504) — только настройками блока.
   Правила для менеджера:
   — шапка блока FR404N/TE210 в две колонки (заголовок слева, описание справа) = «Выравнивание: Две колонки» в настройках;
     иначе описание встаёт НАД заголовком как подпись-кикер (блок 04);
   — номер пункта FR404N (01, 02…) пишется в поле «Подзаголовок» пункта, номера фактов обложки ставятся сами;
   — формат для заявок берётся из H1 обложки до « в » («Корпоративы в лофтах…» → «Корпоратив»), заголовок заявки в подвале
     общий: «Забронируйте лофт под ваше мероприятие».
   Токены: --g поле, --s отступ секции, --hd шапка→контент, --r скругление фото */
.t-rec .t3532, .t-rec .t1053, .t-rec .t467, .t-rec .t1231, .t-rec .t649, .t-rec .t404 {
  --g: 80px; --s: 140px; --hd: 72px; --r: 10px; --line: rgba(18, 6, 3, .2); }
@media (max-width: 1919px) { .t-rec .t3532, .t-rec .t1053, .t-rec .t467, .t-rec .t1231, .t-rec .t649, .t-rec .t404 { --g: 40px; --s: 120px; --hd: 64px; } }
@media (max-width: 1439px) { .t-rec .t3532, .t-rec .t1053, .t-rec .t467, .t-rec .t1231, .t-rec .t649, .t-rec .t404 { --s: 100px; --hd: 56px; } }
@media (max-width: 1199px) { .t-rec .t3532, .t-rec .t1053, .t-rec .t467, .t-rec .t1231, .t-rec .t649, .t-rec .t404 { --g: 32px; --s: 88px; --hd: 48px; } }
@media (max-width: 959px)  { .t-rec .t3532, .t-rec .t1053, .t-rec .t467, .t-rec .t1231, .t-rec .t649, .t-rec .t404 { --g: 24px; --s: 72px; --hd: 40px; } }
@media (max-width: 639px)  { .t-rec .t3532, .t-rec .t1053, .t-rec .t467, .t-rec .t1231, .t-rec .t649, .t-rec .t404 { --g: 20px; --s: 64px; --hd: 32px; } }
@media (max-width: 479px)  { .t-rec .t3532, .t-rec .t1053, .t-rec .t467, .t-rec .t1231, .t-rec .t649, .t-rec .t404 { --g: 16px; --s: 56px; } }

/* отступы секций — из токенов, а не из настроек блока (у блока они инлайном на .t-rec) */
.t-rec:has(> .t1053), .t-rec:has(> .t649), .t-rec:has(> .t467), .t-rec:has(> .t1231) { padding-top: 0 !important; padding-bottom: 0 !important; }
.t-rec .t1053, .t-rec .t649 { padding: var(--s) 0; }
.t-rec .t467 { padding: var(--s) 0 0; }
.t-rec .t1231 { padding: var(--hd) 0 var(--s); }
/* сетка Тильды (12 колонок 1200) → поле --g на всю ширину */
.t-rec :is(.t1053, .t467, .t1231, .t649) .t-container { max-width: none !important; padding: 0 var(--g) !important; box-sizing: border-box; }
.t-rec :is(.t1053, .t467, .t1231, .t649) .t-container::before,
.t-rec :is(.t1053, .t467, .t1231, .t649) .t-container::after { display: none; }
.t-rec :is(.t1053, .t467, .t649) .t-container > .t-col { width: auto !important; max-width: none; margin: 0 !important; float: none; }
/* колонка шапки — на всю ширину контейнера (иначе блок держит её в 1220 и описание не уходит к правому краю) */
.t-rec :is(.t1053, .t649) .js-block-header > .t-col { flex: 1 1 100%; width: 100% !important; }

/* ---------- шапки секций: раскладка (кегли и цвета — в настройках блока) ---------- */
.t-rec :is(.t1053, .t649) :is(.t-section__title, .t-section__descr), .t-rec .t467 :is(.t467__title, .t467__descr) {
  margin: 0 !important; padding: 0 !important; }
/* шапка «Две колонки» (есть .t-section__wrapper): заголовок слева, описание справа у правого края */
.t-rec :is(.t1053, .t649) .js-block-header { margin-bottom: var(--hd); }
.t-rec :is(.t1053, .t649) .js-block-header .t-col { padding: 0 !important; }
.t-rec :is(.t1053, .t649) .t-section__wrapper { display: grid !important; grid-template-columns: minmax(0, 1fr) minmax(0, 640px);
  column-gap: var(--hd); align-items: start; width: 100%; margin: 0 !important; }
.t-rec :is(.t1053, .t649) .t-section__wrapper .t-section__title { max-width: 760px !important; }
.t-rec :is(.t1053, .t649) .t-section__wrapper .t-section__descr { max-width: none !important; }
.t-rec .t649 .t-section__wrapper { align-items: end; grid-template-columns: minmax(0, 1fr) minmax(0, 460px); }
@media (max-width: 959px) { .t-rec :is(.t1053, .t649) .t-section__wrapper { grid-template-columns: minmax(0, 1fr) !important; row-gap: 24px !important; } }
/* шапка без колонок — описание становится подписью над заголовком (блок 04 «Для кого подходит») */
.t-rec .t1053 .js-block-header > .t-col:not(:has(.t-section__wrapper)) { display: flex; flex-direction: column; gap: 24px; }
.t-rec .t1053 .js-block-header > .t-col:not(:has(.t-section__wrapper)) .t-section__descr { order: -1; }
.t-rec .t1053 .js-block-header > .t-col:not(:has(.t-section__wrapper)) .t-section__title { max-width: 560px; }
/* кнопки — стиль из библиотеки (настройки блоков); здесь только ширина на мобилке, как в макете 320 */
@media (max-width: 479px) { .t-rec :is(.t1053, .t467) .t-btn { width: 100%; } }

/* ---------- 01 обложка CR60 (t3532): фото на весь экран, H1 слева, описание и кнопки справа, 4 факта снизу ---------- */
.t-rec .t3532 .t-hero { min-height: 100vh; min-height: 100svh; }
.t-rec .t3532 .t-hero__container { max-width: none; padding: 0 var(--g) !important; box-sizing: border-box; }
.t-rec .t3532 .t-hero__col { width: 100% !important; max-width: none !important; padding: 0 !important; margin: 0 !important; }
.t-rec .t3532 .t-hero__content { display: grid !important; grid-template-columns: minmax(0, 1fr) minmax(0, 500px);
  grid-template-areas: "up up" "h1 descr" "h1 btns" "cards cards"; column-gap: var(--hd); align-items: end;
  padding: calc(var(--s) + 60px) 0 calc(var(--g) * .8) !important; max-width: none !important; text-align: left; }
.t-rec .t3532 .t-hero__uptitle { grid-area: up; margin: 0 0 24px !important; }
.t-rec .t3532 .t-hero__title { grid-area: h1; align-self: end; margin: 0 !important; max-width: none !important; }
.t-rec .t3532 .t-hero__descr { grid-area: descr; max-width: none !important; margin: 0 0 24px !important; }
.t-rec .t3532 .t-hero__buttons { grid-area: btns; display: flex; align-items: center; gap: 32px; margin: 0 !important; flex-wrap: wrap; }
.t-rec .t3532 .t-hero__button { margin: 0 !important; }
/* «Скачать презентацию» (вторая кнопка в виде ссылки): без стрелки, которую Тильда дорисовывает у ссылки */
.t-rec .t3532 .t-btntext::after { content: none !important; display: none !important; }
/* факты: номера сами, линия сверху, 4 в ряд (≤959 — 2×2) */
.t-rec .t3532 .t-hero__cards { grid-area: cards; display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0 24px; margin: var(--hd) 0 0 !important; padding: 0 !important; counter-reset: fact; list-style: none; }
.t-rec .t3532 .t-hero__card { display: block !important; width: auto !important; max-width: none !important; margin: 0 !important; padding: 20px 0 0 !important;
  border: 0 !important; border-top: 1px solid rgba(250, 245, 235, .35) !important; background: none !important; counter-increment: fact; }
.t-rec .t3532 .t-hero__card::before { content: counter(fact, decimal-leading-zero); display: block; margin-bottom: 12px;
  font-family: var(--t-text-font, Arial); font-size: 11px; font-weight: 700; color: #fa9801; }
.t-rec .t3532 .t-hero__card-body { padding: 0 !important; }
.t-rec .t3532 .t-hero__card-title { margin: 0 0 6px !important; }
.t-rec .t3532 .t-hero__card-descr { margin: 0 !important; }
@media (max-width: 959px) {
  .t-rec .t3532 .t-hero__content { grid-template-columns: minmax(0, 1fr); grid-template-areas: "up" "h1" "descr" "btns" "cards"; }
  .t-rec .t3532 .t-hero__title { margin-bottom: 24px !important; }
  .t-rec .t3532 .t-hero__cards { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 24px; } }
@media (max-width: 479px) {
  .t-rec .t3532 .t-hero__buttons { flex-direction: column; align-items: stretch; gap: 20px; }
  .t-rec .t3532 .t-hero__button, .t-rec .t3532 .t-btnflex_type_button { width: 100% !important; }
  .t-rec .t3532 .t-btntext { align-self: flex-start; } }

/* ---------- 02 и 04 пункты FR404N (t1053): номер (поле «Подзаголовок») сверху, заголовок и текст снизу, линия слева ---------- */
.t-rec .t1053 .t1053__container { display: grid !important; grid-template-columns: repeat(var(--cols, 3), minmax(0, 1fr));
  row-gap: 40px; column-gap: 0; margin: 0 !important; list-style: none; }
.t-rec .t1053 .t-list__container_inrow4 { --cols: 4; column-gap: var(--hd); }
.t-rec .t1053 .t1053__col { position: relative; width: auto !important; max-width: none !important; min-height: 148px; margin: 0 !important;
  padding: 24px 16px 24px 17px !important; box-sizing: border-box; display: flex; flex-direction: column;
  border-left: 1px solid var(--line); }
.t-rec .t1053 .t1053__line { display: none !important; }
.t-rec .t1053 .t1053__col, .t-rec .t1053 .t1053__col * { text-align: left !important; }
.t-rec .t1053 .t1053__col-wrapper { flex: 1 1 auto; display: flex; flex-direction: column; padding: 0 !important; }
/* номер прижат вверх, заголовок и текст — к низу карточки */
.t-rec .t1053 .t1053__uptitle { margin: 0 0 auto !important; padding: 0 0 40px !important; }
.t-rec .t1053 .t1053__title { margin: 0 0 8px !important; }
.t-rec .t1053 .t1053__descr { margin: 0 !important; }
.t-rec .t1053 .t1053__imgwrapper { display: none !important; }
.t-rec .t1053 .t-section__bottomwrapper { margin-top: var(--hd) !important; padding: 0 !important; text-align: center !important; }
.t-rec .t1053 .t-section__container:last-child .t-col { padding: 0 !important; }
@media (max-width: 1199px) { .t-rec .t1053 .t-list__container_inrow4 { --cols: 2; column-gap: 0; } }
@media (max-width: 959px)  { .t-rec .t1053 .t1053__container { --cols: 2 !important; } }
@media (max-width: 639px)  { .t-rec .t1053 .t1053__container { --cols: 1 !important; row-gap: 16px; }
  .t-rec .t1053 .t1053__col { min-height: 0; padding: 20px 0 20px 17px !important; }
  .t-rec .t1053 .t1053__uptitle { padding-bottom: 16px !important; } }
/* тёмная секция (фон блока #120603): светлые линии */
.t-rec[style*="#120603"] .t1053 { --line: rgba(250, 245, 235, .25); }

/* ---------- 03 заголовок + текст + кнопка AB102 (t467): H2 слева, текст и кнопка справа ---------- */
.t-rec .t467 .t-container { display: block; text-align: left; }
.t-rec .t467 .t-col { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 640px); grid-template-areas: "h descr" "h btn";
  column-gap: var(--hd); align-items: start; padding: 0 !important; }
.t-rec .t467 .t467__title { grid-area: h; align-self: start; max-width: 680px !important; }
.t-rec .t467 .t467__descr { grid-area: descr; max-width: none !important; margin: 0 0 24px !important; }
.t-rec .t467 .t-btn { grid-area: btn; justify-self: start; margin: 0 !important; }
@media (max-width: 959px) { .t-rec .t467 .t-col { grid-template-columns: minmax(0, 1fr); grid-template-areas: "h" "descr" "btn"; }
  .t-rec .t467 .t467__title { margin-bottom: 24px !important; } }

/* ---------- 03 ряд квадратных фото GL13N (t1231): все в один ряд, зазор 8, скругление 10; ≤959 — лента листается свайпом ---------- */
.t-rec .t1231 .t1231__container { display: grid !important; grid-template-columns: none !important; grid-auto-flow: column !important; grid-auto-columns: minmax(0, 1fr); gap: 8px !important;
  margin: 0 !important; }
/* у блока раскладка-мозаика: первая плитка 4×2 через --desktop-grid-* — сбрасываем, все плитки одинаковые */
.t-rec .t1231 .t1231__tile { grid-column: auto !important; grid-row: auto !important; width: auto !important; height: auto !important; aspect-ratio: 1;
  margin: 0 !important; padding: 0 !important; overflow: hidden; border-radius: var(--r); }
.t-rec .t1231 .t1231__bgimg { position: absolute; inset: 0; width: 100% !important; height: 100% !important; padding: 0 !important;
  background-size: cover !important; background-position: center !important; border-radius: var(--r); }
@media (max-width: 959px) {
  .t-rec .t1231 .t1231__container { grid-auto-columns: 42%; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none;
    -webkit-overflow-scrolling: touch; }
  .t-rec .t1231 .t1231__container::-webkit-scrollbar { display: none; }
  .t-rec .t1231 .t1231__tile { scroll-snap-align: start; } }
@media (max-width: 479px) { .t-rec .t1231 .t1231__container { grid-auto-columns: 72%; } }

/* ---------- 05 карточки TE210 (t649): фото 4:3 со скруглением 10, заголовок, «лофт · гости · год»; 4 в ряд, зазор 8 ---------- */
.t-rec .t649 .t-card__container { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 32px 8px; margin: 0 !important; }
/* Тильда вставляет разделитель после каждых 4 карточек — в сетке он занимал ячейку и сдвигал ряд */
.t-rec .t649 .t-card__container > :not(.t-card__col), .t-rec .t649 .t-card__container::before, .t-rec .t649 .t-card__container::after { display: none !important; }
.t-rec .t649 .t-card__col { width: auto !important; max-width: none !important; margin: 0 !important; padding: 0 !important; float: none; }
.t-rec .t649 .t649__blockimg { margin: 0 0 20px !important; border-radius: var(--r); overflow: hidden; }
.t-rec .t649 .t649__textwrapper { padding: 0 !important; }
.t-rec .t649 .t-card__title { margin: 0 0 8px !important; }
.t-rec .t649 .t-card__descr { margin: 0 !important; opacity: 1 !important; }
@media (max-width: 1199px) { .t-rec .t649 .t-card__container { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 479px)  { .t-rec .t649 .t-card__container { grid-template-columns: minmax(0, 1fr); } }

/* ---------- «Форматы» /format: IX02 (t404) — список страниц папки одной галочкой; на всю ширину, сетка 3 / 2 / 1, фото 4:3 ---------- */
.t-rec:has(> .t404) { padding-top: 0 !important; padding-bottom: 0 !important; }
.t-rec .t404 { padding: var(--s) 0; }
.t-rec .t404 > .t-container { max-width: none !important; padding: 0 var(--g) !important; box-sizing: border-box;
  display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 40px 8px; }
.t-rec .t404 > .t-container::before, .t-rec .t404 > .t-container::after { display: none; }
.t-rec .t404 .t404__col { width: auto !important; max-width: none !important; margin: 0 !important; padding: 0 !important; float: none; }
.t-rec .t404 .t404__imgbox { width: auto !important; float: none !important; display: block !important; margin: 0 !important;
  border-radius: var(--r); overflow: hidden; }
.t-rec .t404 .t404__separator { padding-top: 75%; }
.t-rec .t404 .t404__img { transition: transform .4s ease; }
.t-rec .t404 .t404__link:hover .t404__img { transform: scale(1.03); }
.t-rec .t404 .t404__textwrapper { display: block !important; width: auto !important; margin: 20px 0 0 !important; }
.t-rec .t404 .t404__title { margin-bottom: 8px; }
@media (max-width: 1199px) { .t-rec .t404 > .t-container { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 479px)  { .t-rec .t404 > .t-container { grid-template-columns: minmax(0, 1fr); gap: 32px; } }
