

/* Start:/local/templates/leto_new/template_styles.css?1793385108142283*/
/* Собрано build_template.py из прототипа витрины – руками не править: правка в 05_agents/vitrina_proto/src или template_extra.css, затем сборка */
/* Токены витрины Leto Flowers – прототип 08.10.2026.
   Все цвета, шрифты и размеры живут только здесь. Решения ветки фирменного стиля
   подставляются заменой значений (имена совпадают с шаблоном leto_new там, где он их уже завёл:
   --ink, --muted, --wash, --accent, --accent-deep, --r, --pad, --max, --head, --body).

   Шрифты: Quant Antiqua Light – Copyright © 1990 ParaGraph Intl, © 1998 ParaType Inc., ParaType Ltd. All rights reserved.
   Revival 565 Regular – Copyright 1990-2003 Bitstream Inc. Partial Copyright ParaType Inc. 2008. All rights reserved.
   Используются по веб-лицензии ParaType (договор №24085210 от 26.08.2024), www.paratype.com
   (строка – как в 05_agents/photo_catalog/catalog_template.html; условие договора п. 2.2.2 а). */

@font-face{font-family:'Quant Antiqua';src:url(/local/templates/leto_new/fonts/quant-antiqua_light.woff2) format('woff2');font-weight:300 500;font-display:swap}
@font-face{font-family:'Revival 565';src:url(/local/templates/leto_new/fonts/revival-565_regular.woff2) format('woff2');font-weight:400;font-display:swap}

:root{
  /* цвет – стартовые значения из гайда стиля (ветка «Фирменный стиль», 08.10.2026) */
  --bg:#F4F3EF;            /* фон страницы – выбор Аиды 08.10 (варианты гайда: #FFFFFF, #F1F1EF) */
  --wash:#F1F1EF;          /* светлая подложка: подвал, плитка до загрузки фото */
  --surface:#E9EAE8;       /* подложка блоков по гайду */
  --photo:#8E8B88;         /* цвет под фото, пока фото грузится: медиана краёв 24 фото раздела 08.10 – (136,126,124) */
  --ink:#232420;           /* основной текст */
  --muted:#65665C;         /* второстепенный текст */
  --line:rgba(35,36,32,.14);/* тонкие разделители */
  --accent:#C63663;        /* фирменный розовый: кнопка + не больше одного крупного жеста на странице (Аида 09.10, «Один акцент») */
  --accent-deep:#A82951;
  --tint:#F6E7EC;          /* нежно-розовый: НЕ фоном, НЕ плашками, НЕ бейджами – только мелкие детали (ленты); оттенок не утверждён
                              (Аида 09.10, палитра «Один акцент», через ветку «Фирменный стиль») */
  --on-ink:#FFFFFF;
  --btn-bg:var(--accent);  /* главная кнопка – фирменный розовый (Аида 08.10: «разве чёрный – наш фирменный цвет?») */
  --btn-bg-hover:var(--accent-deep);

  /* шрифты: тексты – Revival 565; названия – НЕ РЕШЕНО (Аида 09.10: «это ещё не финал»), по умолчанию фаворит
     Revival 565, в прототипе переключатель Quant Antiqua / Revival; интерфейс – Jost (выбор Аиды 09.10) */
  --head:'Revival 565',Georgia,'Times New Roman',serif;   /* названия – фаворит Аиды 08.10, не финал (09.10) */
  --body:'Revival 565',Georgia,'Times New Roman',serif;
  --ui:'Jost',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;
  /* интерфейс: Jost (Owen Earl, indestructible type; SIL OFL 1.1) – выбор Аиды 09.10 «давай выберем бесплатный»,
     запасной – Onest. Роли: меню, цены, размеры, кнопки, фильтры, формы, подписи, заголовки блоков; веса 400 и 500;
     цифры – tabular-nums. В прототипе – с Google Fonts; на боевом сайте woff2 класть к себе (google/fonts, ofl/jost)
     вместе с файлом лицензии OFL – не тянуть с fonts.googleapis.com. */

  /* форма */
  --r:12px;                /* скругление кнопок и полей – 12 px, выбор Аиды 08.10 (как в тесте 10.09) */
  --r-ph:12px;             /* скругление фото в плитках и галерее компьютера */
  --ph-ratio:4/5;          /* формат фото: вытянутый 4:5 (Аида 08.10: «не квадратами, а вытянутыми»);
                              на сайте фото квадратные – пока это обрезка квадрата по бокам */
  --pad:16px;              /* поле страницы на телефоне */
  --gap:4px;               /* зазор между фото в сетке */
  --max:1440px;
  --hd:56px;               /* высота шапки */
  --btn:52px;              /* высота главной кнопки */

  /* шкала текста */
  --t-kicker:11px;  --t-ui:13px;  --t-small:13px; /* 27.10: шкала Jost 11/13/15 (type_scale_snap.py) */  --t-body:16px;
  --t-name:30px;    --t-price:19px; --t-h2:22px;
}
@media (min-width:900px){
  :root{--pad:32px;--gap:6px;--hd:68px;--t-name:42px;--t-price:21px;--t-h2:28px}
}

/* Витрина Leto Flowers – прототип 08.10.2026: «Модный магазин» + «Тёплая классика».
   Правила вида (решения Аиды 08.10): пустое место и единый фон фото; без текста поверх фото;
   без кнопок-плашек; шапка в одну строку, телефон и мессенджеры тихо; цена без знака рубля. */

*,*::before,*::after{box-sizing:border-box}
*{margin:0;padding:0}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{font:var(--t-body)/1.6 var(--body);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer;-webkit-tap-highlight-color:transparent}
ul,ol{list-style:none}
:focus-visible{outline:1.5px solid var(--ink);outline-offset:3px}
.vh{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.ui{font-family:var(--ui)}
.caps{font-family:var(--ui);font-size:var(--t-ui);text-transform:uppercase;letter-spacing:.14em}
.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--pad)}
.ico{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}

/* ---------- полоска прототипа (не часть дизайна) ---------- */
.proto{background:#1b1c19;color:#d9d9d4;font:11px/1.3 var(--ui);letter-spacing:.04em}
.proto-in{display:flex;align-items:center;gap:10px;max-width:var(--max);margin:0 auto;padding:6px var(--pad)}
.proto b{color:#fff;font-weight:600;letter-spacing:.12em}
.proto .sp{flex:1}
.proto .pl{display:none}
@media (min-width:900px){.proto .pl{display:inline}}
.proto button{color:#fff;text-decoration:underline;text-underline-offset:2px;font-size:11px}
.proto-panel{background:#1b1c19;color:#fff;font:13px/1.45 var(--ui);padding:4px var(--pad) 14px}
.proto-panel[hidden]{display:none}
.proto-panel .row{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;max-width:var(--max);margin:8px auto 0}
.proto-panel .lbl{color:#a9aaa2;min-width:120px}
.proto-panel button{border:1px solid #55564f;border-radius:999px;padding:4px 12px;color:#e9e9e4}
.proto-panel button[aria-pressed="true"]{background:#fff;color:#1b1c19;border-color:#fff}
.proto-panel a{color:#fff;text-decoration:underline}
.note{display:inline-block;font:11px/1.35 var(--ui);color:#6a4b00;background:#fff3c4;border-radius:3px;padding:2px 6px;margin:4px 0;letter-spacing:0;text-transform:none}
body.no-notes .note{display:none}

/* ---------- шапка: одна строка ---------- */
.hd{position:sticky;top:0;z-index:30;background:var(--bg);transition:box-shadow .2s}
.hd.scrolled{box-shadow:0 1px 0 var(--line)}
.hd-in{display:flex;align-items:center;height:var(--hd);max-width:var(--max);margin:0 auto;padding:0 calc(var(--pad) - 10px)}
.hd .ib{width:40px;height:40px;display:grid;place-items:center;color:var(--ink);position:relative}
.hd .ib.quiet{color:var(--muted)}
.hd .ib .ico{width:21px;height:21px}
.hd .ib.quiet .ico{width:19px;height:19px}
.logo{display:block;margin:0 6px}
.logo img{height:22px;width:auto}
.hd-nav,.hd-phone,.hd .search-btn{display:none}
.hd .sp{flex:1}
.bag-n{position:absolute;top:6px;right:4px;min-width:15px;height:15px;border-radius:8px;background:var(--ink);color:#fff;font:600 11px/15px var(--ui);text-align:center;padding:0 3px}
.bag-n[hidden]{display:none}

/* меню-шторка */
.drawer{position:fixed;inset:0;z-index:60;background:var(--bg);overflow-y:auto;padding:0 var(--pad) 40px;transform:translateX(-100%);transition:transform .28s ease;visibility:hidden}
.drawer.open{transform:none;visibility:visible}
.drawer-top{display:flex;align-items:center;justify-content:space-between;height:var(--hd)}
.drawer nav a{display:block;padding:11px 0;font-family:var(--head);font-size:24px;line-height:1.2}
.drawer nav a.sm{font-family:var(--ui);font-size:15px;color:var(--muted);padding:7px 0}
.drawer .contacts{margin-top:22px;padding-top:18px;border-top:1px solid var(--line);font:15px/1.6 var(--ui);color:var(--muted)}
.drawer .contacts a{color:var(--ink)}

/* хлебные крошки – тихо */
.crumbs{display:flex;flex-wrap:wrap;gap:4px 8px;font:13px/1.4 var(--ui);color:var(--muted);letter-spacing:.02em}
.crumbs a:hover{color:var(--ink)}
.crumbs .s{opacity:.5}

/* ---------- работа (карточка букета) ---------- */
.work{display:block}
.gal{position:relative;background:var(--photo)}
.gal-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.gal-track::-webkit-scrollbar{display:none}
.gal-track figure{flex:0 0 100%;scroll-snap-align:start;aspect-ratio:var(--ph-ratio);background:var(--photo)}
.gal-track img{width:100%;height:100%;object-fit:cover}
.gal-dots{display:flex;gap:4px;padding:10px var(--pad) 0}
.gal-dots i{flex:1;height:1.5px;background:var(--line);transition:background .2s}
.gal-dots i.on{background:var(--ink)}
.gal-grid{display:none}

/* верх карточки сжат (Аида 09.10, ночь: «от крошек до "Пришлём фото" много места»): размеры и диаметр в одну
   строку, без лишних линеек. Крошки на телефоне вернули по её просьбе («хлебные крошки всё-таки верни») – тесно, одной строкой */
.info{padding:12px var(--pad) 0}
.info .crumbs{margin-bottom:10px}
.crumbs-bar{display:none}
.title{margin:0 0 4px}
.title .kicker{margin-bottom:5px}
.kicker{display:block;font:500 var(--t-kicker)/1.4 var(--ui);text-transform:uppercase;letter-spacing:.2em;color:var(--muted);margin-bottom:8px}
.name{display:block;font-family:var(--head);font-weight:300;font-size:var(--t-name);line-height:1.08;letter-spacing:-.005em}
.price-row{display:flex;align-items:baseline;gap:10px;margin:10px 0 4px}
.price{font:400 var(--t-price)/1 var(--ui);letter-spacing:.02em;font-variant-numeric:tabular-nums}
.price-note{font:13px/1.3 var(--ui);color:var(--muted)}

.opt{padding:0 0 8px}
.opt-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:0 12px}
.diam{font:var(--t-small)/1.4 var(--ui);color:var(--muted);white-space:nowrap}
.diam b{font-weight:400;color:var(--ink)}
.sizes{display:flex;flex-wrap:wrap;gap:2px 4px;margin:0 -10px}
.size{min-width:44px;height:44px;padding:0 10px;font:400 15px/44px var(--ui);letter-spacing:.06em;color:var(--muted);position:relative}
.size::after{content:'';position:absolute;left:10px;right:10px;bottom:8px;height:1px;background:transparent;transition:background .15s}
.size:hover{color:var(--ink)}
.size.on{color:var(--ink)}
.size.on::after{background:var(--ink)}
.on-photo{font:13px/1.4 var(--ui);color:var(--muted);margin-top:4px}
.on-photo b{font-weight:500;color:var(--ink)}

.today{display:flex;align-items:center;gap:9px;font:var(--t-small)/1.4 var(--ui);padding:14px 0;border-top:1px solid var(--line)}
.today .dot{width:7px;height:7px;border-radius:50%;background:var(--accent);flex:0 0 auto}

.addons{border-top:1px solid var(--line)}
.addon{display:flex;align-items:center;gap:12px;padding:12px 0;font:var(--t-small)/1.35 var(--ui);width:100%;text-align:left}
.addon+.addon{border-top:1px solid var(--line)}
.addon img{width:44px;height:44px;object-fit:cover;background:var(--wash);flex:0 0 auto;border-radius:var(--r)}
.addon .t{flex:1}
.addon .t small{display:block;color:var(--muted);font-size:13px}
.addon .p{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}
.chk{width:20px;height:20px;border:1px solid var(--muted);border-radius:var(--r);flex:0 0 auto;display:grid;place-items:center}
.chk svg{width:12px;height:12px;stroke:var(--on-ink);stroke-width:2;fill:none;opacity:0}
.addon[aria-pressed="true"] .chk{background:var(--ink);border-color:var(--ink)}
.addon[aria-pressed="true"] .chk svg{opacity:1}
.addon.static .chk{border-color:var(--line);background:var(--wash)}
.addon.static .chk svg{opacity:1;stroke:var(--muted)}

.cta{padding:6px 0 4px}
.btn{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;height:var(--btn);border-radius:var(--r);font:500 var(--t-ui)/1 var(--ui);text-transform:uppercase;letter-spacing:.16em;transition:background .15s,color .15s}
.btn-main{background:var(--btn-bg);color:var(--on-ink)}
.btn-main:hover{background:var(--btn-bg-hover)}
.btn-main .sum{font-variant-numeric:tabular-nums;letter-spacing:.06em;opacity:.92}
.btn-main .sep{width:1px;height:14px;background:rgba(255,255,255,.35)}
.btn-line{border:1px solid var(--ink);color:var(--ink)}
.ask{display:flex;justify-content:center;gap:6px;font:var(--t-small)/1.4 var(--ui);color:var(--muted);padding:12px 0 6px}
.ask a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:3px}
.ask a:hover{text-decoration-color:var(--ink)}

.ritual{margin:0;padding:12px 0;border-top:1px solid var(--line);display:grid;gap:7px}
.ritual li{display:flex;gap:10px;align-items:flex-start;font:13px/1.4 var(--ui)}
.ritual .ico{flex:0 0 auto;width:18px;height:18px;color:var(--ink);margin-top:0}

.lead{font-size:16px;line-height:1.6;padding:4px 0 2px}
.lead .txt{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.lead.open .txt{display:block}
.lead .txt p+p{margin-top:10px}
.lead-more{font:500 11px/1 var(--ui);text-transform:uppercase;letter-spacing:.16em;padding:10px 0 18px;color:var(--muted)}
.lead.open+.lead-more{display:none}

.acc{border-top:1px solid var(--line)}
.acc details{border-bottom:1px solid var(--line)}
.acc summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:17px 0;font:500 13px/1.3 var(--ui);text-transform:uppercase;letter-spacing:.16em}
.acc summary::-webkit-details-marker{display:none}
.acc summary::after{content:'';width:11px;height:11px;flex:0 0 auto;background:linear-gradient(var(--ink),var(--ink)) center/11px 1px no-repeat,linear-gradient(var(--ink),var(--ink)) center/1px 11px no-repeat;transition:transform .2s}
.acc details[open] summary::after{background:linear-gradient(var(--ink),var(--ink)) center/11px 1px no-repeat}
.acc .body{padding:0 0 18px;font-size:15.5px;line-height:1.65}
.acc .body p+p{margin-top:10px}
.acc .body ul{display:grid;gap:4px}
.acc .body li::before{content:'– ';color:var(--muted)}
.dl{display:grid;grid-template-columns:auto 1fr;gap:6px 18px;font:15px/1.5 var(--ui)}
.dl dt{color:var(--muted)}
.dl dd.on{font-weight:500}
.small{font:13px/1.55 var(--ui);color:var(--muted);margin-top:10px}
.tbl{width:100%;border-collapse:collapse;font:13px/1.4 var(--ui);margin:6px 0 4px}
.tbl th,.tbl td{text-align:left;padding:7px 8px 7px 0;border-bottom:1px solid var(--line);vertical-align:top;font-weight:400}
.tbl th{color:var(--muted)}
.tbl td.n{font-variant-numeric:tabular-nums;white-space:nowrap}

/* ряд работ ниже */
.more{padding:44px 0 0}
.more h2,.sec-title{font-family:var(--head);font-weight:300;font-size:var(--t-h2);line-height:1.15;margin:0 var(--pad) 16px}
.rail{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - var(--pad) - var(--gap)) / 1.7);gap:var(--gap);overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:0 var(--pad);scroll-padding:0 var(--pad)}
.rail::-webkit-scrollbar{display:none}
.rail .tile{scroll-snap-align:start}

/* плитка работы – общая для раздела и рядов */
.tile{display:block}
.tile .ph{aspect-ratio:var(--ph-ratio);background:var(--photo);overflow:hidden;position:relative;border-radius:var(--r-ph)}
.tile .ph img{width:100%;height:100%;object-fit:cover;transition:opacity .35s}
.tile .ph img.alt{position:absolute;inset:0;opacity:0}
.tile .cap{padding:10px 2px 18px}
.tile .k{display:block;font:500 11px/1.4 var(--ui);text-transform:uppercase;letter-spacing:.18em;color:var(--muted);margin-bottom:3px}
.tile .n{display:block;font-family:var(--head);font-weight:300;font-size:17px;line-height:1.2}
.tile .p{display:block;font:13px/1.4 var(--ui);color:var(--ink);margin-top:5px;font-variant-numeric:tabular-nums}
.tile .p span{color:var(--muted)}
@media (hover:hover){.tile:hover .ph img.alt{opacity:1}}
/* 24.10 (ревизия сайта 22.10, perf-5): на сенсорном экране наведения нет – второе фото не нужно; прозрачное ленивое фото
   браузер всё равно качал (половина фото первого экрана раздела), скрытое display:none – не качает */
@media (hover:none){.tile .ph img.alt{display:none}}

/* прилипшая кнопка на телефоне */
.stick{position:fixed;left:0;right:0;bottom:0;z-index:40;background:var(--bg);box-shadow:0 -1px 0 var(--line);padding:10px var(--pad) calc(10px + env(safe-area-inset-bottom))}
body.has-stick{padding-bottom:calc(70px + env(safe-area-inset-bottom))}
.cta{display:none}
.stick .btn{height:48px}

.toast{position:fixed;left:50%;bottom:86px;transform:translateX(-50%);z-index:70;width:max-content;max-width:min(92vw,420px);background:var(--ink);color:#fff;border-radius:var(--r);padding:12px 16px;font:13px/1.45 var(--ui)}
.toast[hidden]{display:none}

/* подвал */
.ft{background:var(--surface);margin-top:56px;padding:40px 0 48px;font:15px/1.7 var(--ui)}
.ft-cols{display:grid;grid-template-columns:1fr 1fr;gap:34px 20px}
.ft-contacts{grid-column:1/-1}
.ft h3{font:500 11px/1.4 var(--ui);text-transform:uppercase;letter-spacing:.18em;margin-bottom:10px}
.ft a{display:block;padding:2px 0;color:var(--muted)}
.ft a:hover{color:var(--ink)}
.ft-contacts{color:var(--muted);line-height:1.9}
.ft-contacts a{color:var(--muted);display:inline}
.ft-contacts a:hover{color:var(--ink)}
.ft-contacts .ph{font-size:17px;color:var(--ink);letter-spacing:.02em}
.ft-logo img{height:26px;width:auto;margin-bottom:16px}
.ft-bottom{display:flex;flex-wrap:wrap;gap:6px 20px;margin-top:30px;padding-top:16px;border-top:1px solid var(--line);font-size:13px;color:var(--muted)}
.ft-bottom a{display:inline;color:var(--muted)}

/* ---------- компьютер ---------- */
@media (min-width:900px){
  .hd-in{padding:0 var(--pad)}
  .logo{margin:0 28px 0 0}
  .logo img{height:28px}
  .burger{display:none!important}
  .hd-nav{display:flex;gap:26px;font:500 11px/1 var(--ui);text-transform:uppercase;letter-spacing:.16em}
  .hd-nav a{padding:6px 0;border-bottom:1px solid transparent}
  .hd-nav a:hover,.hd-nav a.on{border-bottom-color:var(--ink)}
  .hd-phone{display:block;font:13px/1 var(--ui);color:var(--muted);letter-spacing:.04em;margin-right:6px;white-space:nowrap}
  .hd-phone:hover{color:var(--ink)}
  .hd .search-btn{display:grid}
  .hd .phone-ico{display:none}

  .crumbs-bar{display:flex;padding:6px var(--pad) 20px;max-width:var(--max);margin:0 auto}
  .info .crumbs{display:none}
  .work{display:grid;grid-template-columns:minmax(0,1.32fr) minmax(360px,1fr);gap:56px;max-width:var(--max);margin:0 auto;padding:0 var(--pad);align-items:start}
  .gal{display:none}
  .gal-dots{display:none}
  .gal-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--gap)}
  .gal-grid figure{aspect-ratio:var(--ph-ratio);background:var(--photo);border-radius:var(--r-ph);overflow:hidden}
  .gal-grid.sq figure:first-child{grid-column:1/-1}
  .gal-grid img{width:100%;height:100%;object-fit:cover}
  .info{position:sticky;top:calc(var(--hd) + 24px);padding:6px 0 0;max-width:520px}
  .stick{display:none}
  .more h2,.sec-title{margin:0 0 22px}
  .more{max-width:var(--max);margin:0 auto;padding:80px var(--pad) 0}
  .rail{grid-auto-flow:row;grid-template-columns:repeat(4,1fr);overflow:visible;padding:0}
  .tile .n{font-size:20px}
  .ft{padding:56px 0 44px}
  .ft-cols{grid-template-columns:1.7fr repeat(3,1fr) 1.2fr;gap:28px 36px}
  .ft-contacts{grid-column:auto}
  body.has-stick{padding-bottom:0}
  .cta{display:block}
  .drawer{max-width:440px;box-shadow:0 0 40px rgba(0,0,0,.12)}
}
@media (min-width:900px) and (max-width:1100px){.work{gap:32px}}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* ---------- раздел каталога ---------- */
.sec-head{padding:18px var(--pad) 6px;max-width:var(--max);margin:0 auto}
.sec-h1{font-family:var(--head);font-weight:300;font-size:calc(var(--t-name) + 2px);line-height:1.08;margin-top:12px}
/* подразделы (Аида 09.10, ночь): полоса поводов обрывалась и не листалась – теперь кнопки переносятся, всё
   видно сразу; «Фильтр» – последним в том же потоке, справа. На телефоне полоса не прилипает (в две строки
   она закрывала бы плитки), на компьютере – прилипает */
.sec-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;max-width:var(--max);margin:0 auto;padding:8px var(--pad) 10px}
.chip{height:34px;padding:0 13px;border:1px solid var(--line);border-radius:var(--r);font:13px/32px var(--ui);color:var(--ink);white-space:nowrap;transition:border-color .15s,background .15s}
.chip:hover{border-color:var(--ink)}
.chip[aria-pressed="true"]{border-color:var(--ink);background:#fff}   /* выбранное – линией, без заливки (палитра «Один акцент») */
.fl-btn{flex:0 0 auto;margin-left:auto;display:flex;align-items:center;gap:6px;font:500 11px/1 var(--ui);text-transform:uppercase;letter-spacing:.16em;padding:11px 0 11px 12px}
.fl-n{display:inline-grid;place-items:center;min-width:16px;height:16px;border-radius:8px;background:var(--ink);color:#fff;font-size:10px;letter-spacing:0}
.fl-n[hidden]{display:none}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--gap);max-width:var(--max);margin:6px auto 0}
.grid .cap{padding:9px var(--pad) 22px 10px}
.grid .tile:nth-child(2n+1) .cap{padding-left:var(--pad)}
.grid .tile[hidden]{display:none}
/* бейдж «Сезонное» – тонкой линией цвета текста, без заливки и без розового (Аида 09.10, палитра «Один акцент») */
.tile .k.hl{display:block;width:max-content;border:1px solid var(--ink);color:var(--ink);padding:3px 7px 2px;border-radius:4px;line-height:1.2;box-sizing:border-box;height:19px}
.tile .k:empty::before{content:'\00a0'}
.grid .tile .k{min-height:19px;margin-bottom:5px}   /* строка бейджа одной высоты – названия в ряду на одной линии */
.grid-more{max-width:400px;margin:10px auto 0;padding:0 var(--pad)}
.grid-more[hidden]{display:none}
.seo{max-width:760px;margin:48px auto 0;padding:0 var(--pad)}
.seo-in{font-size:15.5px;line-height:1.7;color:var(--ink);max-height:12.5em;overflow:hidden;position:relative}
.seo-in::after{content:'';position:absolute;left:0;right:0;bottom:0;height:4em;background:linear-gradient(transparent,var(--bg))}
.seo-in.open{max-height:none}
.seo-in.open::after{display:none}
.seo h2{font-family:var(--head);font-weight:300;font-size:21px;line-height:1.2;margin:22px 0 8px}
.seo p{margin-bottom:10px}
.seo ul{display:grid;gap:8px;margin:6px 0 12px}
.seo li{padding-left:16px;position:relative}
.seo li::before{content:'–';position:absolute;left:0;color:var(--muted)}
.seo-more{font:500 11px/1 var(--ui);text-transform:uppercase;letter-spacing:.16em;padding:14px 0;border-bottom:1px solid var(--ink)}
.seo-more[hidden]{display:none}

/* выезжающая панель фильтра */
.fl{position:fixed;top:0;right:0;bottom:0;z-index:65;width:min(420px,100%);background:var(--bg);display:flex;flex-direction:column;box-shadow:0 0 40px rgba(0,0,0,.14);animation:flIn .25s ease}
.fl[hidden]{display:none}
@keyframes flIn{from{transform:translateX(100%)}to{transform:none}}
.fl-top{display:flex;align-items:center;justify-content:space-between;height:var(--hd);padding:0 calc(var(--pad) - 10px) 0 var(--pad);border-bottom:1px solid var(--line);font:500 13px/1 var(--ui);text-transform:uppercase;letter-spacing:.16em}
.fl .ib{width:40px;height:40px;display:grid;place-items:center}
.fl-body{flex:1;overflow-y:auto;padding:6px var(--pad) 20px}
.fl-body h3{font:500 11px/1.4 var(--ui);text-transform:uppercase;letter-spacing:.18em;color:var(--muted);margin:22px 0 6px}
.fl-opt{display:flex;align-items:center;gap:12px;padding:9px 0;font:15px/1.3 var(--ui);cursor:pointer}
.fl-opt input{appearance:none;-webkit-appearance:none;width:18px;height:18px;border:1px solid var(--muted);border-radius:var(--r);margin:0;flex:0 0 auto;display:grid;place-items:center}
.fl-opt input[type=radio]{border-radius:50%}
.fl-opt input:checked{border-color:var(--ink);background:radial-gradient(circle,var(--ink) 0 45%,transparent 50%)}
.fl-opt input[type=checkbox]:checked{background:var(--ink) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2.2 6.3l2.4 2.4 5.2-5.4' fill='none' stroke='%23fff' stroke-width='2'/%3E%3C/svg%3E") center/12px no-repeat}
.fl-opt span{flex:1}
.fl-opt i{font-style:normal;color:var(--muted);font-size:13px}
.fl-foot{display:grid;grid-template-columns:1fr 1.4fr;gap:8px;padding:12px var(--pad) calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--line)}
.fl-foot .btn{height:48px}
.fl-shade{position:fixed;inset:0;z-index:64;background:rgba(35,36,32,.32)}
.fl-shade[hidden]{display:none}

@media (min-width:900px){
  .sec-head{padding-top:10px}
  .sec-h1{font-size:48px;margin-top:18px}
  .sec-bar{position:sticky;top:var(--hd);z-index:20;background:var(--bg);padding:10px var(--pad);margin-bottom:6px}
  .grid{grid-template-columns:repeat(4,1fr);padding:0 var(--pad);gap:var(--gap)}
  .grid .cap,.grid .tile:nth-child(2n+1) .cap{padding:12px 2px 30px}
  .seo{margin-top:72px}
}

/* ---------- главная ---------- */
.hero{position:relative;display:flex;flex-direction:column;height:calc(100svh - var(--hd) - 26px);min-height:520px;max-height:1100px}
.hero-d{display:none}
.hero-ph{position:relative;flex:1;min-height:0;background:var(--photo);overflow:hidden}
.hero-track{display:flex;height:100%;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}
.hero-track::-webkit-scrollbar{display:none}
.hero-track figure{flex:0 0 100%;height:100%;scroll-snap-align:start}
.hero-track img{width:100%;height:100%;object-fit:cover}
.hero-over{display:none}
.hero-cap{padding:12px var(--pad) 18px;background:var(--bg)}
.hero-bars{display:flex;gap:4px;margin-bottom:14px}
.hero-bars i{flex:1;height:1.5px;background:var(--line);position:relative;overflow:hidden;cursor:pointer}
.hero-bars i b{position:absolute;inset:0;background:var(--ink);transform:scaleX(0);transform-origin:left}
.hero-bars i.done b{transform:scaleX(1)}
.hero-bars i.on b{animation:heroBar var(--hero-t,6s) linear forwards}
.hero.paused .hero-bars i.on b{animation:none;transform:scaleX(1)}
@keyframes heroBar{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.cap-s{display:none}
.cap-s.on{display:block;animation:capIn .5s ease}
@keyframes capIn{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
.cap-s .kicker{margin-bottom:6px}
.hero-t{font-family:var(--head);font-weight:300;font-size:26px;line-height:1.12;margin:0 0 6px}
.hero-x{font:15px/1.45 var(--ui);color:var(--muted);margin-bottom:10px}
.hero-a{display:inline-block;font:500 11px/1 var(--ui);text-transform:uppercase;letter-spacing:.16em;padding:6px 0;border-bottom:1px solid var(--ink)}
/* подпись поверх фото – только для сравнения (Настройки) */
body.cap-over .hero-cap{position:absolute;left:0;right:0;bottom:0;background:none;color:#fff;padding-bottom:26px}
body.cap-over .hero-over{display:block;position:absolute;inset:auto 0 0 0;height:55%;background:linear-gradient(transparent,rgba(0,0,0,.45));pointer-events:none}
body.cap-over .hero-x,body.cap-over .cap-s .kicker{color:rgba(255,255,255,.85)}
body.cap-over .hero-a{border-bottom-color:#fff}
body.cap-over .hero-bars i{background:rgba(255,255,255,.35)}
body.cap-over .hero-bars i b{background:#fff}

.blk{max-width:var(--max);margin:0 auto;padding:44px 0 0}
.blk-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:0 var(--pad);margin-bottom:16px}
.blk-head .sec-title,.blk-head h2{margin:0}
.more .blk-head{padding:0 var(--pad)}
.more-a{font:500 11px/1 var(--ui);text-transform:uppercase;letter-spacing:.16em;color:var(--muted);white-space:nowrap;border-bottom:1px solid var(--line);padding-bottom:4px}
.more-a:hover{color:var(--ink);border-bottom-color:var(--ink)}
.grid.sects .cap{padding:10px var(--pad) 20px 10px}
.grid.sects .tile:nth-child(2n+1) .cap{padding-left:var(--pad)}
.tile.sect .n{font-size:18px}

.occ-blk{display:grid;gap:0}
.occ-ph{display:none}
.occ-list .sec-title{margin:0 var(--pad) 10px}
.occ-list ul{border-top:1px solid var(--line);margin:0 var(--pad)}
.occ-list li{border-bottom:1px solid var(--line)}
.occ-list a{display:flex;justify-content:space-between;align-items:center;padding:15px 0;font-family:var(--head);font-weight:300;font-size:21px;line-height:1.2}
.occ-list a i{font-style:normal;font-family:var(--ui);font-size:16px;color:var(--muted);transition:transform .2s}
.occ-list a:hover i{transform:translateX(4px);color:var(--ink)}

.promise{padding-top:56px}
.promise-in{display:grid;grid-template-columns:1fr 1fr;gap:22px 18px;padding:26px var(--pad) 0;border-top:1px solid var(--line);margin:0 var(--pad)}
.promise h3{font-family:var(--head);font-weight:300;font-size:18px;line-height:1.2;margin-bottom:6px}
.promise p{font:13px/1.5 var(--ui);color:var(--muted)}
.promise-in{padding-left:0;padding-right:0}

@media (min-width:900px){
  .hero-m{display:none}
  .hero-d{display:flex;height:calc(100vh - var(--hd) - 26px)}
  .hero-cap{display:grid;grid-template-columns:1fr auto;align-items:end;column-gap:40px;padding:18px var(--pad) 22px}
  .hero-bars{grid-column:1/-1;margin-bottom:16px}
  .hero-t{font-size:40px;margin-bottom:4px}
  .cap-s.on{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;column-gap:40px;grid-column:1/-1}
  .cap-s .kicker,.cap-s .hero-t,.cap-s .hero-x{grid-column:1}
  .cap-s .hero-a{grid-column:2;grid-row:1/4;align-self:end;margin-bottom:12px}
  .hero-x{font-size:15px;margin-bottom:0}
  body.cap-over .hero-cap{padding:0 var(--pad) 30px}
  .blk{padding:80px var(--pad) 0}
  .blk-head{padding:0;margin-bottom:22px}
  .more .blk-head{padding:0}
  .grid.sects{padding:0}
  .grid.sects .cap,.grid.sects .tile:nth-child(2n+1) .cap{padding:12px 2px 26px}
  .tile.sect .n{font-size:21px}
  .occ-blk{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:center}
  .occ-ph{display:block;aspect-ratio:var(--ph-ratio);background:var(--photo);overflow:hidden;border-radius:var(--r-ph)}
  .occ-ph img{width:100%;height:100%;object-fit:cover}
  .occ-list .sec-title{margin:0 0 18px}
  .occ-list ul{margin:0}
  .occ-list a{font-size:28px;padding:18px 0}
  .promise-in{grid-template-columns:repeat(4,1fr);gap:32px;margin:0}
}

/* фильтр: группы фильтра сайта (Аида 08.10: «фильтр очень маленький, убрал всё удобное») */
.fg{border-bottom:1px solid var(--line)}
.fg summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;padding:15px 0;font:500 11px/1.3 var(--ui);text-transform:uppercase;letter-spacing:.16em}
.fg summary::-webkit-details-marker{display:none}
.fg summary::after{content:'';width:10px;height:10px;background:linear-gradient(var(--ink),var(--ink)) center/10px 1px no-repeat,linear-gradient(var(--ink),var(--ink)) center/1px 10px no-repeat}
.fg[open] summary::after{background:linear-gradient(var(--ink),var(--ink)) center/10px 1px no-repeat}
.fg-in{padding:0 0 14px}
.fg .fl-opt{padding:7px 0}
.fg .fl-opt[hidden]{display:none}
.fl-all{font:13px/1.4 var(--ui);color:var(--muted);text-decoration:underline;text-underline-offset:3px;padding:6px 0}
.fl-range{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.fl-range label{display:flex;align-items:center;gap:8px;font:13px/1 var(--ui);color:var(--muted)}
.fl-range input{width:100%;min-width:0;height:42px;border:1px solid var(--line);border-radius:var(--r);background:var(--bg);padding:0 10px;font:15px var(--ui);color:var(--ink)}
.fl-body{padding-top:0}
.fl-body>.fg:first-child summary{padding-top:18px}

/* главная v2: легче на телефоне – разделы лентой */
@media (max-width:899px){
  .grid.sects{display:grid;grid-auto-flow:column;grid-auto-columns:42%;grid-template-columns:none;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:0 var(--pad);gap:var(--gap)}
  .grid.sects::-webkit-scrollbar{display:none}
  .grid.sects .tile{scroll-snap-align:start}
  .grid.sects .cap,.grid.sects .tile:nth-child(2n+1) .cap{padding:9px 2px 6px}
  .tile.sect .n{font-size:15.5px}
}

.empty{max-width:var(--max);margin:24px auto;padding:0 var(--pad);font:15px/1.5 var(--ui);color:var(--muted)}
.empty[hidden]{display:none}
.empty button{color:var(--ink);text-decoration:underline;text-underline-offset:3px}


/* v3 (09.10): подпись размера на фото – «как было у нас»; блок «Соберём похожий»; упаковка; подвал телефона */
.gal-track figure,.gal-grid figure{position:relative}
.sz{position:absolute;left:10px;bottom:10px;padding:4px 9px;border-radius:999px;background:rgba(255,255,255,.88);color:var(--ink);font:500 11px/1.2 var(--ui);letter-spacing:.04em;pointer-events:none}
.similar{border-top:1px solid var(--line);padding:14px 0 6px}
.similar b{display:block;font:500 11px/1.4 var(--ui);text-transform:uppercase;letter-spacing:.16em;color:var(--ink);margin-bottom:4px}
.similar p{font:15px/1.5 var(--ui);color:var(--ink)}
.lead[data-lead]{cursor:pointer}
.pack-blk{max-width:var(--max);margin:0 auto;padding:44px 0 0}
.pack-blk .sec-title{margin:0 var(--pad) 16px}
.pack-row{display:grid;grid-auto-flow:column;grid-auto-columns:56%;gap:var(--gap);overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:0 var(--pad)}
.pack-row::-webkit-scrollbar{display:none}
.pk{scroll-snap-align:start}
.pk img{width:100%;aspect-ratio:var(--ph-ratio);object-fit:cover;border-radius:var(--r-ph);background:var(--photo)}
.pk figcaption{font:13px/1.4 var(--ui);color:var(--ink);padding:8px 2px 0}
@media (min-width:900px){
  .pack-blk{padding:80px var(--pad) 0}
  .pack-blk .sec-title{margin:0 0 22px}
  .pack-row{grid-auto-flow:row;grid-template-columns:repeat(6,1fr);overflow:visible;padding:0}
  .sz{left:12px;bottom:12px}
}
@media (max-width:899px){
  .ft{padding:28px 0 22px;font-size:15px}
  .ft-cols{display:block}
  .ft-contacts{margin-bottom:14px;line-height:1.75}
  .ft-cols>div:not(.ft-contacts) h3{margin:0;padding:13px 0;border-top:1px solid var(--line);cursor:pointer;display:flex;justify-content:space-between}
  .ft-cols>div:not(.ft-contacts) h3::after{content:'+';font-weight:400;color:var(--muted)}
  .ft-cols>div.open h3::after{content:'–'}
  .ft-cols>div:not(.ft-contacts) a{display:none}
  .ft-cols>div.open a{display:block;padding:4px 0}
  .ft-cols>div.open{padding-bottom:10px}
  .ft-bottom{margin-top:14px}
}

.fl-opt.off{opacity:.45}

/* главная v3: о нас, контроль качества, отзывы, подборки, вопросы */
.about .about-in{padding:0 var(--pad);max-width:760px}
.about blockquote{font-family:var(--head);font-weight:300;font-size:24px;line-height:1.3;margin:10px 0 8px}
.about .sign{font:13px/1.4 var(--ui);color:var(--muted);margin-bottom:16px}
.about .about-t{font-size:16px;line-height:1.65;margin-bottom:12px}
.about-why{display:grid;gap:6px;margin:0 0 18px;font:15px/1.5 var(--ui)}
.about-why li{padding-left:16px;position:relative}
.about-why li::before{content:'';position:absolute;left:0;top:.62em;width:6px;height:1px;background:var(--muted)}
.qc-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px var(--gap);padding:0 var(--pad)}
.qc img{width:100%;aspect-ratio:var(--ph-ratio);object-fit:cover;border-radius:var(--r-ph);background:var(--photo)}
/* переписка вместо скриншота – та же плитка 4:5, текст не режется */
.qc-chat{aspect-ratio:var(--ph-ratio);border-radius:var(--r-ph);background:var(--surface);display:flex;flex-direction:column;justify-content:center;gap:8px;padding:14px 12px;overflow:hidden}
.qc-chat p{max-width:88%;padding:8px 11px;border-radius:12px;font:13px/1.38 var(--ui);color:var(--ink);background:#fff}
.qc-chat .us{align-self:flex-start;border-bottom-left-radius:4px}
.qc-chat .them{align-self:flex-end;background:transparent;border:1px solid var(--line);border-bottom-right-radius:4px}
.qc figcaption{font:13px/1.4 var(--ui);color:var(--muted);padding-top:8px}
.qc figcaption b{display:block;font-weight:500;color:var(--ink);margin-bottom:2px}
.rv-row{display:grid;grid-auto-flow:column;grid-auto-columns:78%;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:0 var(--pad)}
.rv-row::-webkit-scrollbar{display:none}
.rv{scroll-snap-align:start;background:var(--wash);border-radius:var(--r);padding:18px 18px 16px;display:flex;flex-direction:column;justify-content:space-between}
.rv blockquote{font-size:15.5px;line-height:1.55;margin-bottom:14px}
.rv figcaption{font:500 13px/1.4 var(--ui)}
.rv figcaption span{display:block;font-weight:400;color:var(--muted);font-size:12px}
.pick-in{padding:0 var(--pad);display:grid;gap:12px}
.pick-row{display:flex;flex-wrap:wrap;gap:4px 14px;font:15px/1.6 var(--ui)}
.pick-t{flex-basis:100%;font:500 11px/1.4 var(--ui);text-transform:uppercase;letter-spacing:.16em;color:var(--muted)}
.pick-row a{border-bottom:1px solid var(--line)}
.pick-row a:hover{border-bottom-color:var(--ink)}
.faq-in{padding:0 var(--pad)}
.faq-tabs{display:flex;gap:18px;overflow-x:auto;scrollbar-width:none;margin-bottom:6px}
.faq-tab{font:500 13px/1 var(--ui);text-transform:uppercase;letter-spacing:.14em;color:var(--muted);padding:10px 0;border-bottom:1px solid transparent;white-space:nowrap}
.faq-tab.on{color:var(--ink);border-bottom-color:var(--ink)}
.faq-pane[hidden]{display:none}
.faq .acc summary{text-transform:none;letter-spacing:0;font:16px/1.4 var(--body);padding:16px 0}
@media (min-width:900px){
  .about .about-in{padding:0}
  .about blockquote{font-size:34px}
  .qc-grid{grid-template-columns:repeat(4,1fr);gap:var(--gap);padding:0}
  .rv-row{grid-auto-flow:row;grid-template-columns:repeat(5,1fr);overflow:visible;padding:0}
  .pick-in,.faq-in{padding:0}
  .pick-row{flex-wrap:wrap}
  .pick-t{flex-basis:auto;min-width:120px;padding-top:2px}
  .faq-in{max-width:860px}
}

/* подвал v4 (09.10): вариант «Колонки» и «Минимальный»; «Кому» вместо «Подарить» */
.ft[hidden]{display:none}
.ft-top{display:grid;gap:12px;margin-bottom:22px}
.ft .ft-contacts{display:flex;flex-direction:column;gap:2px;color:var(--muted);line-height:1.6}
.ft .ft-contacts .ph{font-size:18px;color:var(--ink);letter-spacing:.02em;margin-bottom:2px}
.ft-line a{color:var(--muted)}
.ft-line a:hover{color:var(--ink)}
.ft-b{text-align:left}
.ft-b .ft-contacts{margin-bottom:18px}
.ft-links{display:flex;flex-wrap:wrap;gap:6px 18px;padding:16px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.ft-links a{display:inline;color:var(--ink);font-size:15px}
.ft-b .ft-bottom{border-top:0;margin-top:14px;padding-top:0}
@media (min-width:900px){
  .ft-top{grid-template-columns:1fr 2fr;align-items:start;margin-bottom:36px}
  .ft-a .ft-cols{grid-template-columns:repeat(4,1fr)}
  .ft-b .wrap{display:grid;grid-template-columns:1fr 2fr;gap:12px 40px;align-items:start}
  .ft-b .ft-logo{grid-row:1/3}
  .ft-b .ft-links,.ft-b .ft-bottom{grid-column:2}
}
@media (max-width:899px){
  .ft-a .ft-cols{display:block;border-bottom:1px solid var(--line)}
  .ft-col h3{margin:0;padding:13px 0;border-top:1px solid var(--line);cursor:pointer;display:flex;justify-content:space-between}
  .ft-col h3::after{content:'+';font-weight:400;color:var(--muted)}
  .ft-col.open h3::after{content:'–'}
  .ft-col a{display:none}
  .ft-col.open a{display:block;padding:4px 0}
  .ft-col.open{padding-bottom:10px}
}

/* главная v4 на телефоне: контроль качества – лентой крупных фото; подборки свёрнуты */
@media (max-width:899px){
  .qc-grid{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:72%;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;gap:10px}
  .qc-grid::-webkit-scrollbar{display:none}
  .qc{scroll-snap-align:start}
  .qc figcaption{font-size:15px;padding-top:10px}
  .about-ph img{border-radius:0}
}
.about-ph{margin:0 0 20px}
.about-ph img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:var(--r-ph);background:var(--photo)}
@media (min-width:900px){
  .about{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
  .about-ph{margin:0}
  .about-ph img{aspect-ratio:4/5}
  .about .note{grid-column:1/-1}
}
.pick-row{border-top:1px solid var(--line);display:block}
.pick-row:last-of-type{border-bottom:1px solid var(--line)}
.pick-row summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;padding:14px 0;color:var(--ink)}
.pick-row summary::-webkit-details-marker{display:none}
.pick-row summary::after{content:'+';color:var(--muted);font-weight:400}
.pick-row[open] summary::after{content:'–'}
.pick-links{display:flex;flex-wrap:wrap;gap:4px 14px;padding:0 0 14px;font:15px/1.6 var(--ui)}
.pick-links a{border-bottom:1px solid var(--line)}
.pick-in{gap:0}
@media (min-width:900px){
  .pick-row{display:grid;grid-template-columns:160px 1fr;border-top:1px solid var(--line)}
  .pick-row summary{pointer-events:none;padding:14px 0}
  .pick-row summary::after{display:none}
  .pick-links{padding:14px 0}
}
/* пресса – логотипы изданий одним цветом (Аида 09.10, ночь). На телефоне переносятся строками, без ленты:
   обрезанные полосы Аида не любит (раздел, 09.10). Размер – по площади знака (home.py, --w/--h) */
.pr-row{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:22px 30px;padding:4px var(--pad) 0}
.pr{display:block;padding:6px 2px;color:var(--ink);opacity:.72;transition:opacity .2s}
.pr:hover{opacity:1}
.pr-logo{display:block;width:var(--w1);height:var(--h1);background:currentColor;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-position:center;mask-position:center}
@media (min-width:900px){.pr-row{justify-content:space-between;padding:8px 0 0}.pr-logo{width:var(--w2);height:var(--h2)}}

/* ---------- оформление заказа (09.10): шаги КОГДА → КУДА → КОМУ, выбранное – линией на белом, без заливки ---------- */
.co-top{max-width:var(--max);margin:0 auto;padding:14px var(--pad) 0}
.co{display:flex;flex-direction:column;max-width:var(--max);margin:0 auto;padding:0 var(--pad) 40px;gap:18px}
.co-main{min-width:0}
.co-h1{font-family:var(--head);font-weight:300;font-size:var(--t-name);line-height:1.08;margin:8px 0 14px}
.co-side{order:-1}
.co-sum{border:1px solid var(--line);border-radius:var(--r);background:#fff;padding:12px}
.co-item{display:grid;grid-template-columns:56px 1fr auto;gap:12px;align-items:center}
.co-item img{width:56px;aspect-ratio:4/5;object-fit:cover;border-radius:8px;background:var(--photo)}
.co-k{font:500 11px/1.4 var(--ui);text-transform:uppercase;letter-spacing:.18em;color:var(--muted)}
.co-nm{font-family:var(--head);font-size:18px;line-height:1.2}
.co-sz{font:13px/1.4 var(--ui);color:var(--muted)}
.co-pr{font:400 15px/1 var(--ui);font-variant-numeric:tabular-nums}
.co-sim{font:13px/1.45 var(--ui);color:var(--muted);margin-top:8px}
.co-sim[hidden]{display:none}
.co-lines{margin-top:10px;border-top:1px solid var(--line);padding-top:8px;display:grid;gap:4px;font:13px/1.4 var(--ui)}
.co-lines div{display:flex;justify-content:space-between;gap:12px}
.co-lines dt{color:var(--muted)}
.co-lines dd{font-variant-numeric:tabular-nums;text-align:right}
.co-tot{padding-top:6px;margin-top:2px;border-top:1px solid var(--line);font-size:15px}
.co-tot dt{color:var(--ink)}
.co-promo{margin-top:8px}
.co-note{margin:10px 0 0}

.st{border-top:1px solid var(--line);padding:16px 0}
.st:last-child{border-bottom:1px solid var(--line)}
.st-h{display:flex;align-items:baseline;gap:12px}
.st-h h2{flex:1;font-family:var(--head);font-weight:300;font-size:22px;line-height:1.2}
.st-n{font:500 13px/1 var(--ui);color:var(--muted);width:16px;font-variant-numeric:tabular-nums}
.st.todo .st-h h2,.st.todo .st-n{color:var(--muted);opacity:.7}
.st-edit{font:500 11px/1 var(--ui);text-transform:uppercase;letter-spacing:.16em;color:var(--muted);border-bottom:1px solid var(--line);padding:4px 0}
.st-edit:hover{color:var(--ink);border-color:var(--ink)}
.st-edit[hidden],.st-sum[hidden],.st-b[hidden]{display:none}
.st-sum{margin:6px 0 0 28px;font:15px/1.45 var(--ui);color:var(--ink)}
.st-b{padding:12px 0 0 28px}
.st-next{margin-top:18px}
.co-lbl{font:500 11px/1.4 var(--ui);text-transform:uppercase;letter-spacing:.16em;color:var(--muted);margin:14px 0 8px}
.st-b > .co-lbl:first-child{margin-top:0}   /* 10.10: подпись внутри блока вида доставки наезжала на кнопки выше */
.co-hint{font:13px/1.45 var(--ui);color:var(--muted);margin-top:8px}
.co-hint:empty{display:none}
.co-txt{font:15px/1.55 var(--ui);margin:10px 0 0}
.co-txt b{font-weight:500}

.days{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;border-radius:var(--r)}
/* телефон: даты одной строкой – сегодня, завтра, послезавтра и «Другая» (Аида 10.10: «в две строки – много места») */
.days .day[data-day="3"],.days .day[data-day="4"],.days .day[data-day="5"],.days .day[data-day="6"]{display:none}
.day,.opt-b,.kind{border:1px solid var(--line);border-radius:var(--r);background:transparent;color:var(--ink);transition:border-color .15s,background .15s}
.day{display:grid;gap:2px;padding:8px 4px;text-align:center;font:13px/1.25 var(--ui)}
.day b{font-weight:500}
.day span{color:var(--muted);font-size:12px}
.day:hover,.opt-b:hover:not(:disabled),.kind:hover:not(:disabled){border-color:rgba(35,36,32,.4)}
.day.on,.opt-b.on,.kind.on{border-color:var(--ink);background:#fff}
.co-other{display:grid;gap:6px;margin-top:10px;font:13px/1.4 var(--ui);color:var(--muted)}
.co-other[hidden]{display:none}
.co-other input,.co-sel select{height:46px;border:1px solid var(--line);border-radius:var(--r);padding:0 12px;font:15px var(--ui);background:#fff;color:var(--ink);width:100%}
.kinds{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.kinds.k3{grid-template-columns:1fr}
.kind{display:grid;gap:3px;padding:11px 12px;text-align:left;font:13px/1.35 var(--ui)}
.kind b{font-weight:500;font-size:14px}
.kind span{color:var(--muted)}
.kind:disabled{opacity:.4;cursor:not-allowed}
.slots{display:grid;grid-template-columns:1fr 1fr;gap:6px;border-radius:var(--r)}
.opt-b{height:44px;font:15px/1 var(--ui);font-variant-numeric:tabular-nums}
.opt-b:disabled{opacity:.35;text-decoration:line-through;cursor:not-allowed}
.days.err,.slots.err{outline:1px solid #B3261E;outline-offset:3px}
/* свой интервал (Аида 09.10): начало вписывают сами, конец – +4 часа */
.slot-own{grid-column:1/-1}
.own-iv{display:flex;align-items:flex-end;gap:14px;margin-top:4px}
.own-iv[hidden]{display:none}
.own-iv .fld{flex:0 0 130px}
.tm{font-variant-numeric:tabular-nums;letter-spacing:.04em}
.own-to{font:15px/46px var(--ui);color:var(--muted)}
.own-to b{font-weight:400;color:var(--ink);font-variant-numeric:tabular-nums}
.own-iv.err input{border-color:#B3261E}
[data-exact-box]{margin-top:14px}
.co-warn{color:#B3261E}
/* «Как с вами связаться» – в одну строку (Аида 09.10) */
.seg{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.seg-b{height:40px;border:1px solid var(--line);border-radius:var(--r);font:13px/1 var(--ui);color:var(--ink);padding:0 2px;white-space:nowrap}
.seg-b:hover{border-color:rgba(35,36,32,.4)}
.seg-b.on{border-color:var(--ink);background:#fff}

.fld{display:grid;gap:5px;margin-top:10px;font:13px/1.3 var(--ui);color:var(--muted)}
.fld input,.fld textarea{width:100%;border:1px solid var(--line);border-radius:var(--r);background:#fff;padding:12px;font:15px/1.4 var(--ui);color:var(--ink)}
.fld input{height:46px}
.fld input:focus,.fld textarea:focus,.co-sel select:focus{border-color:var(--ink);outline:none}
.fld.err input{border-color:#B3261E}
.fld.err span::after{content:' – заполните';color:#B3261E}
.fld-row{display:grid;grid-template-columns:1fr 1fr;gap:0 8px}
.fld-row .fld{margin-top:10px}
.tgl{display:flex;gap:10px;align-items:flex-start;margin-top:14px;font:13px/1.45 var(--ui);cursor:pointer}
.tgl input{appearance:none;-webkit-appearance:none;width:18px;height:18px;border:1px solid var(--muted);border-radius:4px;margin:1px 0 0;flex:0 0 auto;background:#fff}
.tgl input:checked{border-color:var(--ink);background:var(--ink) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2.2 6.3l2.4 2.4 5.2-5.4' fill='none' stroke='%23fff' stroke-width='2'/%3E%3C/svg%3E") center/12px no-repeat}
.tgl b{font-weight:500;display:block}
.tgl small{display:block;color:var(--muted);font-size:13px;margin-top:2px}
.add{border-bottom:1px solid var(--line)}
.add summary{list-style:none;cursor:pointer;padding:13px 0;font:15px/1.3 var(--ui);display:flex;justify-content:space-between}
.add summary::-webkit-details-marker{display:none}
.add summary::after{content:'+';color:var(--muted)}
.add[open] summary::after{content:'–'}
.add .fld{margin:0 0 14px}
.co-promo{border-bottom:0}
.co-promo .fld-row{grid-template-columns:1fr auto;align-items:end}
.co-promo .fld{margin:0}
.co-rit{border-top:0;padding:12px 0 2px}
.co-total-m{display:flex;justify-content:space-between;align-items:baseline;margin:24px 0 12px;font:15px/1 var(--ui)}
.co-total-m b{font-weight:400;font-size:19px;font-variant-numeric:tabular-nums}
.co-err{color:#B3261E;font:13px/1.4 var(--ui);margin-top:8px}
.co-err[hidden]{display:none}
.co-legal{font:13px/1.5 var(--ui);color:var(--muted);margin-top:10px}

@media (min-width:900px){
  .co{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,1fr);gap:56px;align-items:start}
  .co-top{padding-top:10px}
  .co-side{order:0;position:sticky;top:calc(var(--hd) + 24px)}
  .co-sum{padding:18px}
  .co-item{grid-template-columns:72px 1fr auto}
  .co-item img{width:72px}
  .co-h1{font-size:42px;margin:14px 0 18px}
  .days{grid-template-columns:repeat(8,1fr)}
  .days .day[data-day]{display:grid}
  .slots{grid-template-columns:repeat(5,1fr)}
  .slot-own{grid-column:auto}
  .seg{max-width:440px}
  .kinds.k3{grid-template-columns:repeat(3,1fr)}
  .fld-row{grid-template-columns:repeat(4,1fr)}
  .fld-row.r2{grid-template-columns:1fr 1fr}
  .co-total-m{display:none}
  .co [data-submit]{max-width:360px;margin-top:28px}   /* 10.10: «мало места перед кнопкой» */
}


/* ---------- дополнения шаблона Битрикса к стилям прототипа (05_agents/site_lab/vitrina_transfer/template_extra.css) ---------- */
/* Jost – шрифт интерфейса (выбор Аиды 09.10), на своём сервере: на копии сторонние источники закрыты, на боевом – без запросов
   к Google. Файлы скачаны 10.10.2026 с fonts.gstatic.com (Google Fonts, v20, переменный шрифт – один файл на веса 400 и 500),
   лицензия SIL OFL 1.1 – fonts/OFL-Jost.txt (github.com/google/fonts, ofl/jost). Copyright 2020 The Jost Project Authors. */
@font-face{font-family:'Jost';src:url(/local/templates/leto_new/fonts/jost-cyrillic.woff2) format('woff2');font-weight:400 500;font-display:swap;
  unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Jost';src:url(/local/templates/leto_new/fonts/jost-latin.woff2) format('woff2');font-weight:400 500;font-display:swap;
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
/* крошки: Битрикс отдаёт список ol/li с микроразметкой */
.crumbs ol{display:flex;flex-wrap:wrap;gap:4px 8px;list-style:none;margin:0;padding:0}
.crumbs li{display:flex;gap:8px;align-items:baseline}
/* строка крошек под шапкой: на телефоне видна везде, кроме карточки (там крошки под фото, как в прототипе) */
.crumbs-bar{display:flex;padding:12px var(--pad) 0;max-width:var(--max);margin:0 auto}
body:has(.work) .crumbs-bar{display:none}
@media (min-width:900px){
  .crumbs-bar,body:has(.work) .crumbs-bar{display:flex;padding:6px var(--pad) 20px}
}
/* меню Битрикса: выбранный пункт */
.hd-nav a.is-active{border-bottom-color:var(--ink)}
/* кнопка «в корзину» – форма POST (не ссылка ?action=ADD2BASKET: такие ссылки попадали в индекс Google, разбор 08.10) */
.buy-form{margin:0}
.buy-form .btn{width:100%}
/* ---------- корзина (Аида 10.10: «корзина страшная – исправляй»): как сводка заказа в прототипе оформления ---------- */
.bk{max-width:var(--max);margin:0 auto;padding:6px var(--pad) 48px}
.bk-grid{display:grid;gap:22px}
/* линии – у самого списка (верх и низ), между позициями – своя: на компьютере список тянется на высоту сводки, низ на одной линии с кнопкой */
.bk-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.bk-item{display:grid;grid-template-columns:72px 1fr auto;gap:14px;align-items:start;padding:14px 0}
.bk-item+.bk-item{border-top:1px solid var(--line)}
.bk-ph{display:block;width:72px;aspect-ratio:4/5;border-radius:8px;overflow:hidden;background:var(--photo)}
.bk-ph img{width:100%;height:100%;object-fit:cover}
.bk-i{display:grid;gap:2px;min-width:0}
.bk-qty{display:inline-flex;align-items:center;gap:0;margin-top:8px;border:1px solid var(--line);border-radius:var(--r);width:max-content}
.bk-qty button{width:36px;height:34px;font:16px/1 var(--ui);color:var(--ink)}
.bk-qty button:disabled{opacity:.3}
.bk-qty span{min-width:28px;text-align:center;font:15px/1 var(--ui);font-variant-numeric:tabular-nums}
.bk-r{display:grid;justify-items:end;gap:10px}
.bk-del{font:13px/1.2 var(--ui);color:var(--muted);border-bottom:1px solid var(--line);padding:2px 0}
.bk-del:hover{color:var(--ink);border-color:var(--ink)}
/* сводка – без белой плашки (Аида 10.10: «вся белая часть супер не изящная»): итог, тихая подсказка, кнопка, промокод ссылкой */
.bk-sum{display:flex;flex-direction:column;gap:14px;min-width:0}
.bk-order{margin:0}
.bk-tot{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin:0;font:15px/1 var(--ui);color:var(--muted)}
.bk-tot dd{margin:0;font:400 22px/1 var(--ui);color:var(--ink);letter-spacing:.02em;font-variant-numeric:tabular-nums}
.bk-note{margin:0;font:13px/1.5 var(--ui);color:var(--muted)}
.bk-promo{margin:0}
.bk-promo summary{list-style:none;cursor:pointer;width:max-content;font:13px/1.3 var(--ui);color:var(--muted);border-bottom:1px solid var(--line);padding-bottom:2px}
.bk-promo summary::-webkit-details-marker{display:none}
.bk-promo summary:hover{color:var(--ink);border-color:var(--ink)}
.bk-promo details[open] summary{color:var(--ink)}
.bk-code{display:flex;align-items:center;gap:12px;margin:12px 0 6px;border-bottom:1px solid var(--ink)}
.bk-code input{flex:1;min-width:0;border:0;background:transparent;padding:9px 0;font:15px/1.4 var(--ui);color:var(--ink);border-radius:0}
.bk-code input:focus{outline:none}
.bk-code input::placeholder{color:var(--muted)}
.bk-code button{flex:none;font:500 11px/1 var(--ui);text-transform:uppercase;letter-spacing:.16em;color:var(--ink);padding:10px 0 10px 4px}
@media (min-width:900px){
  .bk{padding-top:10px}
  .bk-grid{grid-template-columns:minmax(0,1fr) 340px;gap:72px}
  .bk-item{grid-template-columns:96px 1fr auto;gap:18px}
  .bk-ph{width:96px}
  /* Аида 10.10: низ кнопки и нижняя линия списка – «на одной линии»: колонки одной высоты, кнопка прижата к низу */
  .bk-grid{align-items:stretch}
  .bk-sum{border-top:1px solid var(--line);padding-top:18px;gap:16px}
  .bk-order{margin-top:auto;padding-top:8px}
}
@media (max-width:899px){ .bk-sum{padding-top:4px} }
/* тексты из включаемых областей (/include/leto/, правятся в админке): абзацы внутри подписей – без отступов */
.bk-note p,.leto-when-note p{margin:0}
.bk-note p+p,.leto-when-note p+p{margin-top:6px}
.drawer .contacts a{color:inherit}
/* ---------- текстовые страницы (12.10, Аида: «надо визуал остальных страниц делать») ----------
   Доставка, оплата, возврат, вопросы, оферта, политика, страницы из админки: колонка чтения, текст – Revival как описание
   в карточке, таблицы и подписи – Jost. Типографика отменяет сброс отступов и маркеров прототипа и чужие инлайн-шрифты. */
.wa-text{max-width:var(--max);margin:0 auto;padding:4px var(--pad) 56px}
.wa-text>*{max-width:760px}
.wa-text h1{font-family:var(--head);font-weight:300;font-size:var(--t-name);line-height:1.1;margin:6px 0 18px}
.wa-text h2{font-family:var(--head);font-weight:300;font-size:var(--t-h2);line-height:1.2;margin:34px 0 12px}
.wa-text h3,.wa-text h4{font:500 13px/1.4 var(--ui);text-transform:uppercase;letter-spacing:.14em;color:var(--muted);margin:26px 0 10px}
.wa-text p{margin:0 0 12px}
.wa-text ul,.wa-text ol{margin:0 0 14px;padding-left:1.25em}
.wa-text ul{list-style:disc}.wa-text ol{list-style:decimal}
.wa-text li{margin:4px 0}
.wa-text li::marker{color:var(--muted)}
.wa-text a{text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:3px}
.wa-text a:hover{text-decoration-color:var(--ink)}
.wa-text b,.wa-text strong{font-weight:600}
.wa-text img{max-width:100%;height:auto;border-radius:var(--r);margin:12px 0}
.wa-text table{width:100%;max-width:760px;border-collapse:collapse;margin:8px 0 18px;font:15px/1.45 var(--ui);font-variant-numeric:tabular-nums}
.wa-text th,.wa-text td{text-align:left;vertical-align:top;padding:9px 12px 9px 0;border-bottom:1px solid var(--line)}
.wa-text tr:first-child td,.wa-text th{font-weight:500}
.wa-text hr{border:0;border-top:1px solid var(--line);margin:24px 0}
.wa-text blockquote{border-left:2px solid var(--line);padding-left:14px;color:var(--muted);margin:0 0 14px}
/* чужое оформление из визуального редактора (шрифты, цвета, фон в span) – к стилю витрины */
.wa-text span[style],.wa-text font,.wa-text p[style]{font-family:inherit!important;font-size:inherit!important;color:inherit!important;background:none!important}
@media (max-width:899px){.wa-text table{display:block;overflow-x:auto;white-space:nowrap}}
/* «Контакты» (12.10): слева – данные (область contacts_info), справа – карта; на телефоне – друг под другом */
.wa-text>.ct{max-width:none}
.ct{display:grid;gap:22px}
.ct-list{display:grid;grid-template-columns:1fr;gap:2px 0;margin:0}
.ct-list dt{font:500 11px/1.4 var(--ui);text-transform:uppercase;letter-spacing:.16em;color:var(--muted);margin-top:14px}
.ct-list dt:first-child{margin-top:0}
.ct-list dd{margin:0;font-size:17px;line-height:1.5}
.ct-map iframe{display:block;width:100%;aspect-ratio:4/3;border:0;border-radius:var(--r);background:var(--photo)}
/* 21.10: карта – JS API с ключом сайта вместо виджета с рекламой (include/pages/contacts.php) */
.ct-ymap{display:block;width:100%;aspect-ratio:4/3;border:0;border-radius:var(--r);background:var(--photo);overflow:hidden;object-fit:cover}
.ct-map .more-a{display:inline-block;margin-top:12px}
@media (min-width:900px){.ct{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:56px;align-items:start}.ct-map iframe,.ct-ymap{aspect-ratio:16/10}}
/* 404 */
.nf{padding:24px 0 40px}
.nf-a{display:flex;flex-wrap:wrap;align-items:center;gap:22px;margin-top:22px}
.nf-a .btn{width:auto;padding:0 34px}
/* ---------- «Помощь» и «О нас» (12.10): вопросы, отзывы, команда, вакансии, акции ---------- */
.wa-text>.faq-page,.wa-text>.rv-list,.wa-text>.team,.wa-text>.promo-list{max-width:860px}
.faq-page .faq-tabs{margin:4px 0 8px}
.faq-page .acc summary{text-transform:none;letter-spacing:0;font:16px/1.4 var(--body);padding:16px 0}
.faq-page .acc .body p{margin:0}
.faq-page .acc .body p+p{margin-top:10px}
.rv-list{display:grid;gap:14px;margin-top:6px}
.rv{border:1px solid var(--line);border-radius:var(--r);background:#fff;padding:18px;margin:0}
.rv img{width:96px;aspect-ratio:1;object-fit:cover;border-radius:50%;margin:0 0 12px}
.rv blockquote{border:0;padding:0;margin:0;color:var(--ink)}
.rv blockquote p{margin:0 0 8px}
.rv figcaption{display:flex;align-items:baseline;gap:12px;font:13px/1.4 var(--ui);color:var(--muted)}
.rv figcaption b{font-weight:500;color:var(--ink)}
.rv-r{letter-spacing:.12em;font-size:12px}
.team{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 12px;margin-top:6px}
.tm{margin:0}
.tm-ph{aspect-ratio:4/5;border-radius:var(--r);overflow:hidden;background:var(--photo)}
.tm-ph img{width:100%;height:100%;object-fit:cover;margin:0;border-radius:0}
.tm figcaption{display:grid;gap:2px;margin-top:10px}
.tm figcaption b{font-family:var(--head);font-weight:400;font-size:18px;line-height:1.2}
.tm figcaption span{font:13px/1.4 var(--ui);color:var(--muted)}
.vac summary span{display:grid;gap:4px;text-transform:none;letter-spacing:0;font:17px/1.35 var(--body)}
.vac summary small{font:13px/1.4 var(--ui);color:var(--muted)}
.vac-apply{margin-top:18px}
.promo-list{display:grid;gap:22px}
.promo{display:grid;gap:6px;text-decoration:none!important}
.promo img{width:100%;aspect-ratio:16/9;object-fit:cover;margin:0 0 6px}
.promo b{font-family:var(--head);font-weight:400;font-size:22px}
.leto-btn-auto{display:inline-flex;width:auto;padding:0 34px;text-decoration:none!important}
@media (min-width:900px){.team{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 22px}.rv-list{grid-template-columns:1fr 1fr}.promo-list{grid-template-columns:1fr 1fr}}
/* в текстах вакансий тире уже стоит в начале пункта – без своих маркеров */
.vac .body ul{list-style:none;padding-left:0}
/* ---------- подменю раздела (12.10): «О нас», «Помощь» – пункты из меню раздела в админке (menu/leto_sub) ---------- */
.subnav{display:flex;gap:6px 22px;overflow-x:auto;scrollbar-width:none;white-space:nowrap;margin:0 calc(-1 * var(--pad)) 18px;padding:2px var(--pad) 12px;border-bottom:1px solid var(--line);max-width:none!important}
.subnav::-webkit-scrollbar{display:none}
.wa-text .subnav a{font:500 11px/1.4 var(--ui);text-transform:uppercase;letter-spacing:.16em;color:var(--muted);text-decoration:none;padding:4px 0}
.wa-text .subnav a:hover{color:var(--ink)}
.wa-text .subnav a[aria-current]{color:var(--ink);box-shadow:inset 0 -1px 0 var(--ink)}
@media (min-width:900px){.subnav{margin:0 0 26px;padding:2px 0 14px}}
/* ---------- страницы, перенесённые из Тильды (12.10, решение Аиды «да»): О нас, Компаниям, Услуги, Подписка, Как заказать.
   Текст и фото блока – область /include/leto/<код>.php (правится в админке), раскладка – здесь; блоки собирает
   vitrina_transfer/build_tilda_pages.py, страницы – include/pages/*.php, формы – include/leto_form.php ---------- */
.wa-text>.lp{max-width:none}
.lp-sec{padding-top:48px}
.lp-sec.lp-top,.lp>.lp-sec:first-child{padding-top:0}
.wa-text .lp h2{margin:0 0 12px}
.wa-text .lp h1{margin-bottom:14px}
.lp .lp-lead{font-size:18px;line-height:1.55;max-width:680px}
.lp .lp-sub{color:var(--muted);max-width:680px;margin:-2px 0 20px}
.lp .lp-sub p{margin:0 0 8px}
.wa-text .lp .lp-kick{font:500 11px/1.4 var(--ui);text-transform:uppercase;letter-spacing:.16em;color:var(--muted);margin:0 0 10px}
.wa-text .lp img{margin:0;border-radius:var(--r)}
.lp .lp-txt{max-width:680px}
.lp .lp-txt>:last-child{margin-bottom:0}
.wa-text .lp .lp-txt h3{font:400 18px/1.35 var(--head);text-transform:none;letter-spacing:0;color:var(--ink);margin:18px 0 8px}
.lp .lp-ph img{width:100%;aspect-ratio:4/5;object-fit:cover;background:var(--photo)}
.lp .lp-btns{display:flex;flex-wrap:wrap;align-items:center;gap:14px 26px;margin:22px 0 0}
.lp .lp-btns .btn{width:auto;padding:0 34px;text-decoration:none}
.wa-text .lp .lp-btns .more-a{text-decoration:none}
/* текст + фото; первый экран – текст и широкое фото */
.lp-split,.lp-hero{display:grid;gap:22px;align-items:start}
.lp-hero .lp-ph img{aspect-ratio:3/2}
/* определения с жирным началом (ценности, «через менеджера») */
.wa-text .lp ul.lp-def{list-style:none;padding:0;margin:0;display:grid;gap:12px}
.wa-text .lp ul.lp-def li{margin:0;padding-left:18px;position:relative}
.wa-text .lp ul.lp-def li::before{content:'–';position:absolute;left:0;color:var(--muted)}
/* пункты без фото: преимущества */
.wa-text .lp ul.lp-points{list-style:none;padding:0;margin:0;display:grid;border-top:1px solid var(--line)}
.wa-text .lp .lp-points li{margin:0;padding:16px 0 15px;border-bottom:1px solid var(--line)}
.wa-text .lp .lp-points h3,.wa-text .lp .lp-steps h3,.wa-text .lp .lp-cards h3{font:400 19px/1.3 var(--head);text-transform:none;letter-spacing:0;color:var(--ink);margin:0 0 6px}
.lp .lp-points p,.lp .lp-steps p,.lp .lp-cards p{margin:0;font-size:15.5px;line-height:1.6}
/* шаги с номерами */
.wa-text .lp ol.lp-steps{list-style:none;padding:0;margin:0;display:grid;gap:0;counter-reset:lps;border-top:1px solid var(--line)}
.wa-text .lp .lp-steps>li{counter-increment:lps;margin:0;padding:14px 0 14px 46px;border-bottom:1px solid var(--line);position:relative}
.wa-text .lp .lp-steps>li::before{content:counter(lps,decimal-leading-zero);position:absolute;left:0;top:16px;font:500 13px/1.4 var(--ui);letter-spacing:.12em;color:var(--muted);font-variant-numeric:tabular-nums}
/* шаги со скриншотами («Компаниям: как мы работаем»): белый фон картинки уходит в фон страницы */
.wa-text .lp ol.lp-shots{border-top:0;grid-auto-flow:column;grid-auto-columns:64%;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin:0 calc(-1 * var(--pad));padding:0 var(--pad)}
.wa-text .lp .lp-shots>li{border:0;padding:0;scroll-snap-align:start}
.wa-text .lp .lp-shots>li::before{position:static;display:block;margin:0 0 8px}
.wa-text .lp .lp-shots img{mix-blend-mode:multiply;border-radius:0;margin:0 0 10px;max-height:460px;width:auto}
/* карточки с фото: на телефоне – лента, на компьютере – сетка */
.wa-text .lp .lp-cards{list-style:none;margin:0 calc(-1 * var(--pad));padding:0 var(--pad);display:grid;grid-auto-flow:column;grid-auto-columns:72%;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;counter-reset:lpc}
.lp .lp-cards::-webkit-scrollbar,.lp .lp-gal::-webkit-scrollbar,.lp .lp-shots::-webkit-scrollbar{display:none}
.wa-text .lp .lp-cards>li{margin:0;scroll-snap-align:start;counter-increment:lpc}
.lp .lp-cards img{width:100%;aspect-ratio:4/5;object-fit:cover;background:var(--photo);margin:0 0 12px}
.lp .lp-cards.lp-land img{aspect-ratio:4/3}
.wa-text .lp .lp-cards a{text-decoration:none;display:block}
.wa-text .lp .lp-cards a:hover h3{text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:3px}
.wa-text .lp .lp-num h3::before{content:counter(lpc,decimal-leading-zero);display:block;font:500 13px/1.4 var(--ui);letter-spacing:.12em;color:var(--muted);margin-bottom:4px}
/* галерея работ: на телефоне – лента, на компьютере – сетка 4 в ряд, длинная – «Ещё фото»; увеличение – js/leto_pages.js */
.lp .lp-gal{display:grid;grid-auto-flow:column;grid-auto-columns:62%;gap:var(--gap);overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin:22px calc(-1 * var(--pad)) 0;padding:0 var(--pad)}
.wa-text .lp .lp-gal a{display:block;scroll-snap-align:start;text-decoration:none;cursor:zoom-in}
.lp .lp-gal img{width:100%;aspect-ratio:4/5;object-fit:cover;background:var(--photo)}
.lp .lp-gal-more{margin-top:16px}
/* описания подписок под плитками */
.lp .lp-dl{display:grid;gap:4px 0;margin:20px 0 0;max-width:760px}
.lp .lp-dl dt{font:400 18px/1.35 var(--head);margin-top:12px}
.lp .lp-dl dt:first-child{margin-top:0}
.lp .lp-dl dd{margin:0;font-size:15.5px;line-height:1.6}
.wa-text .lp-types .more{padding:0;max-width:none;margin:0}
.wa-text .lp-types .rail{margin:0 calc(-1 * var(--pad))}
.wa-text .lp a.tile{text-decoration:none}
.wa-text .lp .tile img{margin:0;border-radius:0}
/* отзывы */
.wa-text .lp ul.lp-quotes{list-style:none;padding:0;margin:0;display:grid;gap:14px}
.wa-text .lp .lp-quotes li{margin:0;border:1px solid var(--line);border-radius:var(--r);background:#fff;padding:18px}
.wa-text .lp .lp-quotes blockquote{border:0;padding:0;margin:0 0 10px;color:var(--ink)}
.lp .lp-quotes blockquote p{margin:0}
.lp .lp-who{margin:0;font:13px/1.4 var(--ui);color:var(--muted)}
.lp .lp-who b{font-weight:500;color:var(--ink);margin-right:8px}
/* вопросы: в области – заголовок вопроса и ответ, скрипт собирает раскрывашки как на /help/faq/ */
.lp .lp-faq{max-width:860px}
.wa-text .lp .lp-faq h3{font:16px/1.4 var(--body);text-transform:none;letter-spacing:0;color:var(--ink);margin:18px 0 6px}
.lp .lp-faq .acc summary{text-transform:none;letter-spacing:0;font:16px/1.4 var(--body);padding:16px 0}
.lp .lp-faq .acc .body p{margin:0}
.lp .lp-faq .acc .body p+p,.lp .lp-faq .acc .body ul{margin-top:10px}
.wa-text .lp .lp-faq .body ul{list-style:none;padding:0}
.wa-text .lp .lp-faq .body li{margin:2px 0}
/* персональный менеджер */
.lp .lp-person{display:grid;grid-template-columns:112px 1fr;gap:18px;align-items:center;max-width:620px}
.wa-text .lp .lp-person img{width:112px;height:112px;object-fit:cover;border-radius:50%}
.lp .lp-person p{margin:0 0 4px}
.lp .lp-name{font:400 22px/1.25 var(--head)}
/* логотипы клиентов: одним тоном, белый фон картинок уходит в фон страницы */
.lp .lp-logos{display:grid;grid-template-columns:repeat(3,1fr);gap:22px 18px;align-items:center}
/* 21.10 (Аида с телефона: у части логотипов белый фон – «белая рамка», некрасиво): блок логотипов – на белой подложке,
   белый фон файлов с ней сливается; раньше белое убирало mix-blend-mode, на iPhone (Safari) оно не срабатывало */
.lp .lp-logos{background:#fff;border-radius:var(--r);padding:24px 20px}
.wa-text .lp .lp-logos img{width:100%;height:56px;object-fit:contain;border-radius:0;filter:grayscale(1) contrast(1.1);opacity:.85}
.lp-sec:has(.lp-logos){padding-top:72px}
/* оглавление «Услуг» */
.lp .lp-toc{display:flex;flex-wrap:wrap;gap:8px;margin:0}
.wa-text .lp .lp-toc a{height:34px;padding:0 13px;border:1px solid var(--line);border-radius:var(--r);font:13px/32px var(--ui);text-decoration:none;white-space:nowrap}
.wa-text .lp .lp-toc a:hover{border-color:var(--ink)}
.lp [id]{scroll-margin-top:calc(var(--hd) + 16px)}
/* блок с формой заявки */
.lp-formsec{display:grid;gap:18px}
.lp .lp-fhead>:last-child{margin-bottom:0}
.wa-text .lp .lp-fhead h3{font:400 18px/1.35 var(--head);text-transform:none;letter-spacing:0;color:var(--ink);margin:18px 0 6px}
.lp .lp-fimg{width:100%;aspect-ratio:3/2;object-fit:cover;margin:0 0 18px!important}
.lf{max-width:620px}
.lf-grid{display:grid;gap:0 10px}
.lf .fld{margin-top:10px}
.lf .fld span{display:block}
.lf .lf-btn{margin-top:16px}
.lf-hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.lp .lf-legal{font:13px/1.45 var(--ui);color:var(--muted);margin:12px 0 0}
.lp .lf-ok{font:400 19px/1.45 var(--head);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0;margin:0;max-width:620px}
.lf.is-busy .lf-btn{opacity:.6;pointer-events:none}
/* увеличенное фото галереи */
.lp-zoom{position:fixed;inset:0;z-index:200;background:rgba(20,20,18,.92);display:flex;align-items:center;justify-content:center}
.lp-zoom[hidden]{display:none}
.lp-zoom img{max-width:94vw;max-height:88vh;width:auto;height:auto;object-fit:contain;border-radius:4px}
.lp-zoom button{position:absolute;color:#fff;font:300 34px/1 var(--ui);width:52px;height:52px}
.lp-zoom .z-x{top:10px;right:10px}
.lp-zoom .z-p{left:6px;top:50%;transform:translateY(-50%)}
.lp-zoom .z-n{right:6px;top:50%;transform:translateY(-50%)}
.lp-zoom .z-c{position:absolute;bottom:14px;left:0;right:0;text-align:center;color:rgba(255,255,255,.7);font:13px/1 var(--ui)}
@media (min-width:900px){
  .lp-sec{padding-top:88px}
  .lp .lp-lead{font-size:20px}
  .lp-split{grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:64px;align-items:center}
  .lp-split.lp-rev{grid-template-columns:minmax(0,6fr) minmax(0,5fr)}
  .lp-split.lp-rev .lp-ph{order:2}
  .lp-split>.lp-txt:first-child{order:0}
  .lp-hero{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:56px;align-items:center}
  .wa-text .lp ul.lp-points{grid-template-columns:repeat(3,1fr);gap:0 40px;border-top:0}
  .wa-text .lp .lp-points li{border-top:1px solid var(--line);border-bottom:0;padding:18px 0 22px}
  .wa-text .lp ol.lp-steps.lp-steps-4{grid-template-columns:repeat(4,1fr);gap:0 32px;border-top:0}
  .wa-text .lp .lp-steps-4>li{border-top:1px solid var(--line);border-bottom:0;padding:44px 0 0}
  .wa-text .lp .lp-steps-4>li::before{top:16px}
  .wa-text .lp ol.lp-shots{grid-auto-flow:row;grid-template-columns:repeat(3,1fr);gap:40px;overflow:visible;margin:0;padding:0}
  .wa-text .lp .lp-cards{grid-auto-flow:row;grid-template-columns:repeat(3,1fr);gap:40px 24px;overflow:visible;margin:0;padding:0}
  .wa-text .lp .lp-cards.lp-c4{grid-template-columns:repeat(4,1fr)}
  .lp .lp-gal{grid-auto-flow:row;grid-template-columns:repeat(4,1fr);overflow:visible;margin:28px 0 0;padding:0}
  .lp .lp-gal.is-cut a:nth-child(n+9){display:none}
  .wa-text .lp-types .rail{margin:0;grid-template-columns:repeat(5,1fr)}
  .wa-text .lp ul.lp-quotes{grid-template-columns:1fr 1fr;gap:18px}
  .lp .lp-logos{grid-template-columns:repeat(5,1fr);gap:34px 40px}
  .wa-text .lp .lp-logos img{height:64px}
  .lp .lp-logos{padding:40px 44px}
  .lp-sec:has(.lp-logos){padding-top:112px}
  .lp-formsec{grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:64px;align-items:start}
  .lf-grid{grid-template-columns:1fr 1fr}
  .lf .lf-wide{grid-column:1/-1}
  .lf .lf-btn{width:auto;padding:0 44px}
  .lp .lp-person{grid-template-columns:160px 1fr;gap:28px}
  .wa-text .lp .lp-person img{width:160px;height:160px}
}
@media (max-width:899px){.lp .lp-gal-more{display:none}}
/* правки по снимкам 12.10: длинные строки шагов и списков – не шире колонки чтения; короткий текст рядом с фото – фото пониже */
.wa-text .lp ol.lp-steps:not(.lp-steps-4):not(.lp-shots),.wa-text .lp ul.lp-def{max-width:860px}
@media (min-width:900px){.lp-short .lp-ph img{aspect-ratio:3/2}.lp-short .lp-txt p{font-size:20px;line-height:1.55}}
@media (min-width:900px){.lp-cover .lp-ph img{aspect-ratio:3/2}}
/* ---------- корень каталога /catalog/ (12.10, Аида: «тесно и очень широко»): плитки с фото + все разделы колонками ---------- */
.cat-root{padding-bottom:56px}
.cat-root .grid.sects{margin-top:10px}
.cat-all{padding-top:40px}
.cat-list{display:grid;grid-template-columns:1fr 1fr;gap:0 18px;padding:0 var(--pad)}
.cat-list a{display:block;padding:11px 0;border-bottom:1px solid var(--line);font:16px/1.35 var(--body)}
.cat-list a:hover{color:var(--accent-deep)}
@media (min-width:900px){
  .cat-root .grid.sects{padding:0 var(--pad)}
  .cat-all{padding:72px var(--pad) 0}
  .cat-list{grid-template-columns:repeat(4,1fr);gap:0 40px;padding:0}
  .cat-list a{font-size:17px;padding:12px 0}
}
/* 404 (12.10, Аида: «тесно, прижато к левому краю», и на телефоне): свои поля, по центру, воздух сверху и снизу */
.nf{max-width:640px;margin:0 auto;padding:56px var(--pad) 72px;text-align:center}
.wa-text>.nf{max-width:640px}
.nf .nf-code{font:500 11px/1.4 var(--ui);text-transform:uppercase;letter-spacing:.18em;color:var(--muted);margin:0 0 14px}
.nf h1{font-family:var(--head);font-weight:300;font-size:var(--t-name);line-height:1.1;margin:0 0 14px}
.nf p{margin:0 auto;max-width:440px}
.nf-a{justify-content:center;margin-top:30px}
@media (min-width:900px){.nf{padding:120px var(--pad) 140px}}
/* ---------- правки Аиды 12.10 по копии (второй круг) ---------- */
/* ленты на телефоне «наползают на левый край»: прокрутка с привязкой сдвигала первый кадр к краю экрана – отступ прокрутки = поле */
.lp .lp-cards,.lp .lp-gal,.wa-text .lp ol.lp-shots{scroll-padding-inline:var(--pad)}
/* подзаголовки блоков – во всю ширину («как будто в одну колонку») */
.lp .lp-sub{max-width:none}
/* «Философия разными шрифтами»: вступление и текст блоков – одного размера */
.lp .lp-lead,.lp .lp-txt p,.wa-text .lp ul.lp-def li,.lp .lp-dl dd{font-size:16px;line-height:1.65}
.wa-text .lp ul.lp-points.lp-one{grid-template-columns:1fr}
/* жирный: у Revival 565 нет жирного начертания, браузер дорисовывал – «очень сильно чёрный» («Доставка»); выделение – обычным весом */
.wa-text b,.wa-text strong{font-weight:400;font-synthesis:none}
/* «Компаниям»: карточка менеджера – на компьютере в левой колонке под заголовком формы, на телефоне после формы */
.lp-faside{margin-top:28px}
@media (min-width:900px){
  .lp .lp-lead,.lp .lp-txt p,.wa-text .lp ul.lp-def li,.lp .lp-dl dd,.lp-short .lp-txt p{font-size:17px;line-height:1.65}
  .lp-formsec.has-aside{grid-template-areas:"h f" "a f";grid-template-rows:auto 1fr}
  .lp-formsec.has-aside .lp-fhead{grid-area:h}
  .lp-formsec.has-aside .lp-fbody{grid-area:f}
  .lp-formsec.has-aside .lp-faside{grid-area:a;align-self:start;margin-top:44px}
  .wa-text .lp ul.lp-points.lp-one{grid-template-columns:1fr;gap:0}
}
/* второй и следующие заголовки внутри блока – с отступом сверху («Сроки» прилипал к списку, 12.10) */
.wa-text .lp h2:not(:first-child){margin-top:36px}
/* ---------- корень каталога, второй вариант (12.10, Аида: «товары сразу, меню разделов сверху изящнее»): строка разделов
   без плашек – подписи интерфейса; на телефоне листается вбок, на компьютере одна строка; «Все разделы» раскрывает остальные ---------- */
.cat-nav{display:flex;align-items:flex-start;gap:6px 24px;max-width:var(--max);margin:2px auto 12px;padding:0 var(--pad)}
.cat-nav-row{flex:1 1 auto;min-width:0;display:flex;flex-wrap:nowrap;gap:0 24px;overflow-x:auto;scrollbar-width:none;
  scroll-padding-inline:var(--pad);-webkit-mask-image:linear-gradient(90deg,#000 82%,transparent);mask-image:linear-gradient(90deg,#000 82%,transparent)}
.cat-nav-row::-webkit-scrollbar{display:none}
.cat-nav-row a{font:500 11px/34px var(--ui);text-transform:uppercase;letter-spacing:.14em;color:var(--muted);white-space:nowrap;transition:color .15s}
.cat-nav-row a:hover{color:var(--ink)}
.cat-nav-all{flex:0 0 auto;font:500 11px/34px var(--ui);text-transform:uppercase;letter-spacing:.14em;color:var(--ink);white-space:nowrap}
.cat-nav-all::after{content:'';display:inline-block;width:6px;height:6px;margin:0 0 3px 8px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:rotate(45deg);transition:transform .2s}
.cat-nav.open .cat-nav-all::after{transform:rotate(-135deg);margin-bottom:-1px}
.cat-nav.open .cat-nav-row{flex-wrap:wrap;overflow:visible;-webkit-mask-image:none;mask-image:none}
@media (min-width:900px){
  .cat-nav{margin:6px auto 16px}
  .cat-nav-row{flex-wrap:wrap;max-height:34px;overflow:hidden;-webkit-mask-image:none;mask-image:none;gap:0 28px}
  .cat-nav.open .cat-nav-row{max-height:none}
}
/* телефон: строка разделов во всю ширину и листается вбок; «Все разделы» – только на компьютере (на телефоне съедала строку) */
@media (max-width:899px){
  .cat-nav{padding-right:0}
  .cat-nav-row{padding-right:var(--pad)}
  .cat-nav-all{display:none!important}
}
/* ---------- блог (12.10): список и разделы – строка разделов как в каталоге, карточки: фото 4:3, раздел, название, дата;
   статья – колонка чтения, обложка, разметка Article; блоки «Букеты из статьи» и «Читайте также» ---------- */
.wa-text>.bl,.wa-text>.bla{max-width:none}
.bl-h1{font-family:var(--head);font-weight:300;font-size:var(--t-name);line-height:1.1;margin:6px 0 14px}
.wa-text .bl .cat-nav{padding:0;margin:0 0 22px}
.wa-text .bl .cat-nav a{text-decoration:none}
.wa-text .bl .cat-nav-row a[aria-current]{color:var(--ink);box-shadow:inset 0 -1px 0 var(--ink)}
.bl-grid{display:grid;grid-template-columns:1fr;gap:34px 24px}
.wa-text a.bl-card{display:block;text-decoration:none}
.bl-ph{aspect-ratio:4/3;border-radius:var(--r);overflow:hidden;background:var(--photo);margin-bottom:12px}
.wa-text .bl-ph img{width:100%;height:100%;object-fit:cover;margin:0;border-radius:0;transition:transform .5s}
@media (hover:hover){.bl-card:hover .bl-ph img{transform:scale(1.025)}.bl-card:hover .bl-t{text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:3px}}
.wa-text .bl-k{font:500 11px/1.4 var(--ui);text-transform:uppercase;letter-spacing:.16em;color:var(--muted);margin:0 0 6px;min-height:15px}
.wa-text .bl-t{font:400 20px/1.3 var(--head);margin:0 0 6px;letter-spacing:0;text-transform:none;color:var(--ink)}
.wa-text .bl-d{font:13px/1.4 var(--ui);color:var(--muted);margin:0}
.bl-desc{margin-top:48px;max-width:760px}
.pg{display:flex;justify-content:center;align-items:center;gap:6px;margin:44px 0 0;font:500 13px/1 var(--ui)}
.wa-text .pg a{text-decoration:none}
.pg .pg-n,.pg .pg-a{min-width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--r);color:var(--muted)}
.pg a:hover{color:var(--ink);background:var(--wash)}
.pg .pg-n[aria-current]{color:var(--ink);border:1px solid var(--ink)}
.pg .pg-a{font-size:20px;font-weight:300}
.pg-gap{color:var(--muted);padding:0 4px}
/* ---------- статья блога – «современный журнал» (13.10, Аида: «очень некрасивая верстка… как современный журнал»;
   без текста поверх фото – 08.10). Шапка по центру, обложка во всю ширину экрана (вариант А, выбран Аидой 13.10).
   Колонка текста – 80% ширины страницы (13.10: «хочется… чуть ли не во всю ширину или просто шире, там в 80%»);
   фото, галереи и букеты – по краям той же колонки, вертикальные фото – сбоку с обтеканием. Буквица, выносные цитаты,
   содержание в начале статьи, живые карточки букетов. Ширина колонки – одно число: --col-k ---------- */
.wa:has(.bla){overflow-x:clip}
.wa-text>.bla{max-width:none}
.bla{--col-k:.8;--col:100%;margin:0 auto}
.wa-text .bla-k{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 18px;font:500 11px/1.4 var(--ui);text-transform:uppercase;letter-spacing:.16em;color:var(--muted);margin:0 0 18px}
.wa-text .bla-k a{text-decoration:none;color:var(--ink)}
.wa-text .bla-k a:hover{color:var(--accent-deep)}
.bla-k span+span::before,.bla-k a+span::before{content:'';display:inline-block;width:3px;height:3px;border-radius:50%;background:currentColor;vertical-align:middle;margin:0 14px 2px 0;opacity:.6}
/* шапка: раздел · дата · время чтения, заголовок, вводный абзац – по центру; обложка во всю ширину экрана */
.bla-hero-txt{max-width:960px;margin:10px auto 0;text-align:center}
.wa-text .bla-h1{font-family:var(--head);font-weight:300;font-size:clamp(34px,5.2vw,66px);line-height:1.04;letter-spacing:-.01em;margin:0;text-wrap:balance}
.bla-dek{font:300 19px/1.55 var(--head);color:var(--ink);max-width:820px;margin:22px auto 0;text-wrap:pretty}
.wa-text .bla-dek p{margin:0}
.bla-cover{width:100vw;margin:44px 0 0 calc(50% - 50vw);height:min(76vh,780px);background:var(--photo)}
.wa-text .bla-cover img{display:block;width:100%;height:100%;object-fit:cover;margin:0;border-radius:0}
/* обложка меньше 1400 px (картинка анонса, нет обложки в полном размере) – не растягиваем: по её размеру, по центру (13.10) */
.bla-cover.is-small{width:auto;max-width:min(var(--cw),100%);height:auto;aspect-ratio:auto;max-height:none;margin:44px auto 0;background:none}
.wa-text .bla-cover.is-small img{height:auto;border-radius:var(--r)}
/* содержание – в начале статьи, под обложкой */
.bla-toc{max-width:var(--col);margin:40px auto 0;padding:22px 0 20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.wa-text .bla-toc summary{list-style:none;font:500 11px/1.4 var(--ui);text-transform:uppercase;letter-spacing:.18em;color:var(--muted);margin-bottom:14px;cursor:default}
.bla-toc summary::-webkit-details-marker{display:none}
.wa-text .bla-toc ol{list-style:none;padding:0;margin:0;counter-reset:tc}
.wa-text .bla-toc li{counter-increment:tc;margin:0 0 10px;display:grid;grid-template-columns:30px 1fr;font:15px/1.4 var(--ui);break-inside:avoid}
.wa-text .bla-toc li::before{content:counter(tc,decimal-leading-zero);color:var(--accent);font-size:11px;letter-spacing:.1em;padding-top:3px}
.wa-text .bla-toc a{text-decoration:none;color:var(--ink)}
.wa-text .bla-toc a:hover{color:var(--accent-deep)}
/* колонка текста */
.bla-body{width:100%;max-width:var(--col);margin:40px auto 0;font:400 18px/1.75 var(--body);color:var(--ink);counter-reset:blsec}
.bla-toc+.bla-body{margin-top:48px}
.wa-text .bla-body p{margin:0 0 1.15em}
.wa-text .bla-body a{text-decoration:underline;text-decoration-color:rgba(198,54,99,.35);text-underline-offset:4px;text-decoration-thickness:1px}
.wa-text .bla-body a:hover{text-decoration-color:var(--accent)}
.bla-body .bl-first::first-letter{float:left;font:300 4.6em/.82 var(--head);margin:.08em .1em 0 0;color:var(--ink)}
.wa-text .bla-body h2{counter-increment:blsec;font:300 clamp(26px,3vw,36px)/1.18 var(--head);letter-spacing:-.005em;margin:2.4em 0 .7em;scroll-margin-top:calc(var(--hd) + 24px)}
.wa-text .bla-body h2::before{content:counter(blsec,decimal-leading-zero);display:block;font:500 11px/1 var(--ui);letter-spacing:.2em;color:var(--accent);margin-bottom:14px}
.wa-text .bla-body h3{font:400 clamp(22px,2vw,26px)/1.3 var(--head);text-transform:none;letter-spacing:0;color:var(--ink);margin:1.9em 0 .55em}
.wa-text .bla-body h3::first-letter,.wa-text .bla-body h2::first-letter{text-transform:uppercase}
.wa-text .bla-body ul,.wa-text .bla-body ol{padding:0;margin:0 0 1.2em;list-style:none}
.wa-text .bla-body ul li{position:relative;padding-left:26px;margin:.35em 0}
.wa-text .bla-body ul li::before{content:'';position:absolute;left:4px;top:.82em;width:10px;height:1px;background:var(--ink)}
.wa-text .bla-body ol{counter-reset:blol}
.wa-text .bla-body ol li{counter-increment:blol;position:relative;padding-left:30px;margin:.35em 0}
.wa-text .bla-body ol li::before{content:counter(blol)'.';position:absolute;left:0;font:500 13px/2.1 var(--ui);color:var(--muted)}
.wa-text .bla-body hr{border:0;margin:3em 0;text-align:center;height:auto}
.wa-text .bla-body hr::before{content:'· · ·';font:500 15px/1 var(--ui);letter-spacing:.6em;color:var(--muted)}
/* список «название – пояснение» (уход: «Чистая ваза», «Свежая вода»…) – строки с тонкими линиями, на компьютере в две колонки */
.wa-text .bla-body ul.bl-tips{margin:1.4em 0 2em;border-top:1px solid var(--line)}
.wa-text .bla-body ul.bl-tips li{display:grid;gap:4px;padding:18px 0 18px 30px;margin:0;border-bottom:1px solid var(--line)}
.wa-text .bla-body ul.bl-tips li::before{left:2px;top:calc(18px + .78em);width:14px;background:var(--accent)}
.bla-body .bl-tips-t{font:400 21px/1.3 var(--head)}
/* цитаты: длинная – вводная крупнее; короткая – выносная, по центру, с розовой линией; надпись-подводка над цитатой */
.wa-text .bla-body blockquote{border:0;padding:0;margin:0 0 1.4em;color:var(--ink)}
.wa-text .bla-body blockquote.bl-lead{font:inherit}
.wa-text .bla-body blockquote.bl-pull{font:300 clamp(22px,2.3vw,30px)/1.42 var(--head);text-align:center;margin:2.4em auto;padding:28px 0 0;position:relative;max-width:760px;text-wrap:balance}
.wa-text .bla-body blockquote.bl-pull::before{content:'';position:absolute;top:0;left:50%;width:44px;height:1px;background:var(--accent);transform:translateX(-50%)}
.wa-text .bla-body blockquote p{margin:0 0 .6em}
.wa-text .bla-body blockquote p:last-child{margin-bottom:0}
.wa-text .bla-body blockquote em,.wa-text .bla-body blockquote i{font-style:normal}
.wa-text .bla-body .bl-q-k{display:block;font:500 11px/1.4 var(--ui);text-transform:uppercase;letter-spacing:.18em;color:var(--muted);margin:0 0 14px}
.wa-text .bla-body blockquote.bl-lead .bl-q-k{margin-bottom:10px}
.wa-text .bla-body .bl-q-k+p::first-letter{text-transform:uppercase}
/* фото и галереи: на телефоне – во всю ширину экрана, на компьютере – по краям колонки */
.bla-body figure{margin:0}
.bla-body>figure,.bla-body>.bl-gal{width:100vw;position:relative;left:50%;transform:translateX(-50%)}
.bla-body>figure.bl-wide,.bla-body>.bl-gal,.bla-body>.bl-shop{margin:2.6em 0}
.wa-text .bla-body h2,.wa-text .bla-body hr,.bla-body>.bl-gal,.bla-body>.bl-shop,.bla-body>figure.bl-wide,.bla-body .lp-faq{clear:both}
.wa-text .bla-body img{display:block;width:100%;height:auto;margin:0;border-radius:var(--r);background:var(--photo)}
.wa-text .bla-body>figure img{max-height:88vh;width:auto;max-width:100%;margin:0 auto}
.bla-body figcaption{font:13px/1.5 var(--ui);color:var(--muted);margin-top:10px;text-align:center}
.wa-text .bla-body figcaption a{text-decoration:none;color:var(--ink)}
.bla-body .bl-gal{display:grid;gap:4px}
.wa-text .bla-body .bl-gal img{aspect-ratio:4/5;object-fit:cover;height:100%}
.bla-body .bl-gal.g2{grid-template-columns:1fr 1fr}
.bla-body .bl-gal.g3{grid-template-columns:1fr 1fr}
.bla-body .bl-gal.g3>figure:first-child{grid-column:1/-1}
.wa-text .bla-body .bl-gal.g3>figure:first-child img{aspect-ratio:4/3}
.bla-body .bl-gal.g4,.bla-body .bl-gal.g5{grid-template-columns:1fr 1fr}
/* вертикальное фото сбоку, текст обтекает (справа и слева по очереди) */
.bla-body>figure.bl-side{width:auto;left:auto;transform:none;margin:.3em 0 1.4em;clear:both}
.wa-text .bla-body>figure.bl-side img{max-height:none;width:100%}
.bla-body>figure.bl-side figcaption{text-align:left}
/* букеты из статьи – живые карточки каталога, по центру */
.bl-shop{padding:6px 0 0}
.wa-text .bla-body .bl-shop-k{font:500 11px/1.4 var(--ui);text-transform:uppercase;letter-spacing:.18em;color:var(--muted);text-align:center;margin:0 0 16px}
.wa-text .bla-body .bl-shop .more{padding:0;max-width:none;margin:0}
.wa-text .bla-body .bl-shop .rail{margin:0}
.wa-text .bla-body .tile img{aspect-ratio:auto;border-radius:0;background:none;height:100%}
.wa-text .bla-body a.tile{text-decoration:none}
.bla-body .tile .cap{font-size:initial;line-height:normal}
/* кнопки статьи («Выбрать ранункулюсы из каталога») и «Написать в WhatsApp / Telegram» вместо форм Тильды */
.wa-text .bla-body a.more-a{display:inline-block;text-decoration:none;color:var(--ink);border:1px solid var(--ink);border-radius:999px;padding:14px 24px;white-space:normal;text-align:center;line-height:1.3;transition:background .15s,color .15s}
.wa-text .bla-body a.more-a:hover{background:var(--ink);color:var(--bg)}
.wa-text .bla-body .bl-cta{display:flex;flex-wrap:wrap;gap:12px;margin:1.6em 0 2em}
/* карточки с текстом (фото, заголовок, описание) – сеткой */
.bla-body .bl-cards{display:grid;gap:36px 28px;margin:2.6em 0;clear:both}
.bla-body .bl-card figure{margin:0 0 16px}
.wa-text .bla-body .bl-card img{aspect-ratio:4/5;object-fit:cover}
.wa-text .bla-body .bl-card h3{font-size:21px;margin:0 0 .45em}
.wa-text .bla-body .bl-card h3 a{text-decoration:none;color:var(--ink)}
.wa-text .bla-body .bl-card p{font-size:16px;line-height:1.62;margin:0 0 .7em}
@media (min-width:600px){.bla-body .bl-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:900px){.bla-body .bl-cards{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}}
/* вопросы в статье – раскрывашки */
.bla-body .lp-faq{margin:1em 0 2em}
.bla-body .lp-faq .acc summary{text-transform:none;letter-spacing:0;font:17px/1.45 var(--body);padding:18px 0}
/* низ статьи */
.bla-foot{max-width:var(--col);margin:64px auto 0;padding-top:22px;border-top:1px solid var(--line);display:grid;gap:14px}
.wa-text .bla-share{display:flex;flex-wrap:wrap;align-items:center;gap:8px 22px;margin:0;font:500 11px/1.4 var(--ui);text-transform:uppercase;letter-spacing:.16em}
.bla-share span{color:var(--muted)}
.wa-text .bla-share a,.bla-share button{text-decoration:none;color:var(--ink);font:inherit;text-transform:inherit;letter-spacing:inherit;border-bottom:1px solid var(--line);padding-bottom:3px}
.wa-text .bla-back{margin:0}
.wa-text .bla-back a{text-decoration:none}
/* полоса прочитанного */
.bla-progress{position:fixed;left:0;right:0;top:var(--hd);height:2px;z-index:40;pointer-events:none}
.bla-progress i{display:block;height:100%;width:0;background:var(--ink);opacity:.55}
/* статья ещё в Тильде */
.bla.is-tilda .bla-k-tilda{justify-content:center;margin:10px 0 0}
.bla-body.is-tilda{max-width:none;width:auto;font:inherit;margin-top:0}
@media (min-width:700px){
  .bla-body>figure.bl-side{width:44%}
  .bla-body>figure.bl-side.bl-r{float:right;margin:.35em 0 1.2em 36px}
  .bla-body>figure.bl-side.bl-l{float:left;margin:.35em 36px 1.2em 0}
}
@media (min-width:900px){
  .bla{--col:max(680px, calc((min(100vw, var(--max)) - 2 * var(--pad)) * var(--col-k)))}
  .bla-body{font-size:19px;margin-top:56px}
  .bla-toc+.bla-body{margin-top:64px}
  .bla-dek{font-size:22px;margin-top:28px}
  .bla-cover{margin-top:56px}
  .bla-toc{margin-top:56px;padding:26px 0 18px}
  .wa-text .bla-toc ol{column-count:2;column-gap:56px}
  .bla-body>figure,.bla-body>.bl-gal{width:auto;left:auto;transform:none}
  .bla-body .bl-gal{gap:14px}
  .bla-body .bl-gal.g3{grid-template-columns:2fr 1fr;grid-template-rows:1fr 1fr}
  .bla-body .bl-gal.g3>figure:first-child{grid-column:1;grid-row:1/3}
  .wa-text .bla-body .bl-gal.g3>figure:first-child img{aspect-ratio:auto;height:100%}
  .wa-text .bla-body .bl-gal.g3>figure:not(:first-child) img{aspect-ratio:1/1;object-position:50% 35%}
  .bla-body .bl-gal.g4{grid-template-columns:repeat(4,1fr)}
  .bla-body .bl-gal.g5{grid-template-columns:repeat(3,1fr)}
  .bla-body .bl-shop .rail{grid-template-columns:repeat(auto-fit,minmax(200px,250px));justify-content:center}
  .wa-text .bla-body ul.bl-tips li{grid-template-columns:minmax(200px,32%) 1fr;column-gap:40px;align-items:baseline;padding:20px 0 20px 34px}
  .wa-text .bla-body ul.bl-tips li::before{top:calc(20px + .78em)}
  .wa-text:has(>.bla)>.bl-also,.wa-text:has(>.bla)>.bl-goods{max-width:max(680px, calc((min(100vw, var(--max)) - 2 * var(--pad)) * .8))}
}
@media (min-width:1240px){
  .bla-body{font-size:20px}
  .bla-body>figure.bl-side{width:42%}
  .bla-body>figure.bl-side.bl-r{margin-left:48px}
  .bla-body>figure.bl-side.bl-l{margin-right:48px}
}
@media (max-width:899px){
  .bla-cover{height:auto;aspect-ratio:4/5;max-height:72vh}
  .bla-cover.is-small{aspect-ratio:auto;max-height:none}
  .wa-text .bla-body>figure img,.wa-text .bla-body .bl-gal img{border-radius:0}
  .bla-body figcaption{padding:0 var(--pad)}
  .bla-body>figure.bl-side figcaption{padding:0}
}
/* список статей и блоки под статьёй (вернула 13.10 – вырезались вместе со старыми стилями статьи) */
.wa-text .bl-goods{max-width:1120px;margin:0 auto;padding-top:72px}
.wa-text .bl-goods h2{margin:0 0 18px;text-align:center}
.wa-text .bl-goods .rail{margin:0 calc(-1 * var(--pad))}
.bl-also{max-width:1120px;margin:0 auto;padding-top:64px}
.wa-text .bl-also .sec-title{margin:0 0 20px;text-align:center}
@media (min-width:640px){.bl-grid{grid-template-columns:repeat(2,1fr)}}
@media (min-width:900px){
  .bl-grid{grid-template-columns:repeat(3,1fr);gap:48px 28px}
  .wa-text .bl-goods .rail{margin:0}
  .bl-also{padding-top:96px}
}
/* ---------- поиск (13.10): поле запроса крупно по центру, букеты – плитками каталога, статьи – карточками блога ---------- */
.srch{max-width:1120px;margin:0 auto;padding-bottom:24px}
.wa-text .srch-h1{font:300 clamp(34px,4.4vw,56px)/1.05 var(--head);text-align:center;margin:12px 0 26px;letter-spacing:-.01em}
.srch-form{display:flex;align-items:center;gap:12px;max-width:720px;margin:0 auto;border-bottom:1px solid var(--ink)}
.wa-text .srch-form input{flex:1;min-width:0;border:0;border-radius:0;background:none;font:300 clamp(21px,2.4vw,30px)/1.3 var(--head);padding:10px 0;color:var(--ink);outline:none;-webkit-appearance:none;appearance:none}
.srch-form input::placeholder{color:var(--muted);opacity:.7}
.srch-form input::-webkit-search-cancel-button{display:none}
.wa-text .srch-form button{border:0;background:none;font:500 11px/1 var(--ui);letter-spacing:.16em;text-transform:uppercase;padding:12px 0 12px 8px;cursor:pointer;color:var(--ink)}
.wa-text .srch-note{text-align:center;color:var(--muted);max-width:720px;margin:18px auto 0}
.wa-text .srch-h2{font:300 clamp(24px,2.6vw,32px)/1.2 var(--head);margin:56px 0 20px}
.wa-text .srch .more{padding:0;max-width:none;margin:0}
.wa-text .srch-goods .rail{grid-auto-flow:row;grid-template-columns:1fr 1fr;overflow:visible;padding:0;margin:0}
.wa-text .srch-list{list-style:none;padding:0;margin:0;border-top:1px solid var(--line)}
.wa-text .srch-list li{padding:16px 0;margin:0;border-bottom:1px solid var(--line)}
.wa-text .srch-list a{font:400 20px/1.35 var(--head);text-decoration:none;color:var(--ink)}
.wa-text .srch-list p{margin:6px 0 0;color:var(--muted);font-size:15px}
.wa-text .srch b{font-weight:inherit;background:rgba(198,54,99,.12);border-radius:2px;padding:0 1px}
.srch-empty{max-width:640px;margin:36px auto 0;text-align:center}
.wa-text .srch-links{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 26px;margin-top:22px}
.wa-text .srch-links .more-a{text-decoration:none}
.srch-pager{margin-top:40px}
@media (min-width:900px){.wa-text .srch-goods .rail{grid-template-columns:repeat(4,1fr)}}
/* плитки букетов внутри текстовых страниц (поиск, «Подписка» и др., 13.10): общие правила текста (подчёркнутые ссылки,
   отступ и скругление у картинок) на плитку не действуют – иначе подчёркнутые названия и серая полоса над фото */
.wa-text a.tile{text-decoration:none}
.wa-text .tile .ph img{margin:0;border-radius:0;height:100%;max-width:none}
/* ---------- вход, регистрация, пароль (13.10): узкая колонка по центру, поля как в оформлении заказа ---------- */
.au{max-width:440px;margin:0 auto;padding:8px 0 48px}
.wa-text .au-h1{font:300 clamp(32px,4vw,48px)/1.08 var(--head);text-align:center;margin:12px 0 12px;letter-spacing:-.01em}
.wa-text .au-lead{text-align:center;color:var(--muted);margin:0 0 26px;font-size:16px;text-wrap:balance}
.au .lf{max-width:none}
.wa-text .au-msg{border:1px solid rgba(179,38,30,.35);background:rgba(179,38,30,.05);border-radius:var(--r);padding:12px 14px;margin:0 0 14px;font:15px/1.45 var(--ui);color:var(--ink)}
.wa-text .au-msg.is-ok{border-color:var(--line);background:#fff}
.au-req{font-style:normal;color:var(--accent)}
.au-row{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:16px 0 0}
.wa-text .au-check{display:flex;gap:10px;align-items:flex-start;font:15px/1.4 var(--ui);color:var(--ink);cursor:pointer;margin:0}
.au-check input{width:18px;height:18px;flex:none;margin:1px 0 0;accent-color:var(--ink)}
.wa-text .au-link{font:15px/1.4 var(--ui);color:var(--muted)}
.au-consent{margin-top:18px!important}
.au .au-btn{margin-top:20px}
.wa-text .au-alt{text-align:center;font:15px/1.5 var(--ui);color:var(--muted);margin:20px 0 0}
.wa-text .au-alt+.au-alt{margin-top:8px}
.wa-text .au-note{font:13px/1.45 var(--ui);color:var(--muted);margin:10px 0 0}
.au-captcha img{display:block;margin:14px 0 0;border-radius:6px}
.au .lf .au-btn{width:100%;padding:0}
@media (min-width:700px){.wa-text .au-h1{margin-left:-120px;margin-right:-120px}}
/* ---------- карта сайта /sitemap/ (13.10): меню страниц и дерево каталога – колонками, без маркеров ---------- */
.wa-text .smap-menu,.wa-text .catalog-section-list>ul{list-style:none;padding:0;margin:0 0 28px;columns:1;column-gap:48px}
.wa-text .smap-menu li,.wa-text .catalog-section-list li{list-style:none;margin:0;padding:3px 0;break-inside:avoid}
.wa-text .smap-menu ul,.wa-text .catalog-section-list ul ul{list-style:none;padding:2px 0 8px 16px;margin:0}
.wa-text .smap-menu a,.wa-text .catalog-section-list a{text-decoration:none;color:var(--ink);font:15px/1.45 var(--ui)}
.wa-text .smap-menu>li>a,.wa-text .catalog-section-list>ul>li>a{font:400 18px/1.4 var(--head)}
.wa-text .smap-menu ul a,.wa-text .catalog-section-list ul ul a{color:var(--muted)}
.wa-text .smap-menu a:hover,.wa-text .catalog-section-list a:hover{color:var(--accent-deep)}
.wa-text .catalog-section-list>ul>li{padding:6px 0 10px}
@media (min-width:700px){.wa-text .smap-menu,.wa-text .catalog-section-list>ul{columns:2}}
@media (min-width:1100px){.wa-text .smap-menu,.wa-text .catalog-section-list>ul{columns:3}}
.wa-text .smap-menu .smap-h{font:400 18px/1.4 var(--head);color:var(--ink)}
.wa-text .au-bd-note{margin-top:6px}
/* день рождения – три списка «день · месяц · год» в стиле полей (13.10, Аида: календарь браузера – «поизящнее хочется») */
.au-bd-row{display:grid;grid-template-columns:1fr 1.7fr 1.25fr;gap:8px}
.au-bd .sel{display:block;position:relative;margin:0}
.au-bd .sel::after{content:'';position:absolute;right:14px;top:50%;width:7px;height:7px;border-right:1.2px solid var(--muted);border-bottom:1.2px solid var(--muted);transform:translateY(-70%) rotate(45deg);pointer-events:none}
.au-bd select{width:100%;height:46px;border:1px solid var(--line);border-radius:var(--r);background:#fff;padding:0 30px 0 12px;font:15px/1.2 var(--ui);color:var(--muted);-webkit-appearance:none;appearance:none;cursor:pointer}
.au-bd select.is-set{color:var(--ink)}
.au-bd select:focus{border-color:var(--ink);outline:none}
.au-bd select option{color:var(--ink)}
/* ---------- личный кабинет (13.10): шапка с разделами, обзор карточками, заказы, заказ подробно, формы ---------- */
.cab{max-width:1120px;margin:0 auto;padding:4px 0 56px}
.cab-head{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:6px 20px;margin:10px 0 18px}
.wa-text .cab-h1{font:300 clamp(30px,3.6vw,46px)/1.1 var(--head);margin:0;letter-spacing:-.01em}
.wa-text .cab-hi{color:var(--muted);margin:0;font-size:16px}
.cab-nav{display:flex;gap:4px 24px;overflow-x:auto;scrollbar-width:none;border-bottom:1px solid var(--line);margin:0 calc(-1 * var(--pad)) 28px;padding:0 var(--pad)}
.cab-nav::-webkit-scrollbar{display:none}
.wa-text .cab-nav a{font:500 11px/1.4 var(--ui);text-transform:uppercase;letter-spacing:.14em;color:var(--muted);text-decoration:none;padding:12px 0;white-space:nowrap;box-shadow:inset 0 -1px 0 transparent}
.wa-text .cab-nav a:hover{color:var(--ink)}
.wa-text .cab-nav a[aria-current]{color:var(--ink);box-shadow:inset 0 -1px 0 var(--ink)}
.cab-nav .cab-out{margin-left:auto}
.cab-st{display:inline-block;font:500 11px/1 var(--ui);text-transform:uppercase;letter-spacing:.12em;color:var(--ink);border:1px solid var(--line);border-radius:999px;padding:5px 10px;vertical-align:middle;background:#fff}
.cab-st+.cab-st{margin-left:6px}
.cab-st.is-done{border-color:rgba(198,54,99,.35);color:var(--accent-deep)}
.cab-st.is-off{color:var(--muted)}
/* обзор */
.cab-cards{display:grid;gap:12px}
.wa-text a.cab-card{display:flex;flex-direction:column;gap:6px;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:22px 22px 18px;text-decoration:none;color:var(--ink);transition:border-color .15s}
.wa-text a.cab-card:hover{border-color:var(--ink)}
.wa-text .cab-card p{margin:0}
.wa-text .cab-k{font:500 11px/1.4 var(--ui);text-transform:uppercase;letter-spacing:.16em;color:var(--muted);margin-bottom:6px!important}
.wa-text .cab-big{font:300 28px/1.15 var(--head)}
.wa-text .cab-name{font-size:24px}
.wa-text .cab-sub{font:15px/1.5 var(--ui);color:var(--muted)}
.wa-text .cab-more{margin-top:auto!important;padding-top:14px;font:500 11px/1.4 var(--ui);text-transform:uppercase;letter-spacing:.14em;color:var(--ink)}
.wa-text .cab-help,.wa-text .cab-note{font:15px/1.5 var(--ui);color:var(--muted);margin:22px 0 0}
.cab-empty{border:1px solid var(--line);border-radius:var(--r);background:#fff;padding:28px;text-align:center}
.wa-text .cab-empty p{margin:0 0 12px}
/* заказы */
.cab-order{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:18px 20px;margin:0 0 14px}
.cab-order.is-off{opacity:.75}
.cab-oh,.cab-od-head{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px}
.cab-oh{border-bottom:1px solid var(--line);padding-bottom:12px}
.wa-text .cab-on{font:400 21px/1.25 var(--head);color:var(--ink);text-decoration:none}
.cab-od{font:15px/1.4 var(--ui);color:var(--muted)}
.cab-od-head{margin:-10px 0 22px}
.wa-text .cab-items{list-style:none;padding:0;margin:14px 0;display:grid;gap:12px}
.wa-text .cab-items li{display:grid;grid-template-columns:60px 1fr;gap:14px;align-items:center;margin:0;padding:0}
.wa-text .cab-items li::before{display:none}
.cab-ph{display:block;width:60px;aspect-ratio:4/5;border-radius:6px;overflow:hidden;background:var(--photo)}
.wa-text .cab-ph img{width:100%;height:100%;object-fit:cover;margin:0;border-radius:0}
.cab-in{display:grid;gap:3px}
.wa-text .cab-in a{font:400 17px/1.3 var(--head);color:var(--ink);text-decoration:none}
.cab-in span{font:15px/1.4 var(--ui);color:var(--muted)}
.cab-of{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px 24px;border-top:1px solid var(--line);padding-top:14px}
.wa-text .cab-sum{margin:0;display:grid;gap:4px;min-width:240px}
.cab-sum div{display:flex;justify-content:space-between;gap:24px;font:15px/1.5 var(--ui);color:var(--muted)}
.cab-sum dt,.cab-sum dd{margin:0;font:inherit}
.cab-sum .cab-total{color:var(--ink);font-size:17px;padding-top:4px}
.cab-act{display:flex;flex-wrap:wrap;align-items:center;gap:10px 20px}
.cab .cab-btn{width:auto;height:44px;padding:0 28px}
.wa-text .cab-link{font:500 11px/1.4 var(--ui);text-transform:uppercase;letter-spacing:.14em;color:var(--ink);text-decoration:none;border-bottom:1px solid var(--line);padding-bottom:3px}
.wa-text .cab-link:hover{border-bottom-color:var(--ink)}
.wa-text .cab-link-off{color:var(--muted)}
/* заказ подробно */
.cab-detail{display:grid;gap:22px}
.cab-main .cab-items{margin-top:0}
.cab-blk{border-top:1px solid var(--line);padding-top:14px;margin-top:18px}
.wa-text .cab-blk h2{font:500 11px/1.4 var(--ui);text-transform:uppercase;letter-spacing:.16em;color:var(--muted);margin:0 0 10px}
.wa-text .cab-blk dl{margin:0;display:grid;gap:8px}
.cab-blk dl div{display:grid;grid-template-columns:150px 1fr;gap:12px;font:15px/1.5 var(--ui)}
.cab-blk dt{color:var(--muted);margin:0}
.cab-blk dd{margin:0;color:var(--ink);overflow-wrap:anywhere}
.cab-side{display:grid;gap:18px;align-content:start}
.cab-side .cab-blk{margin-top:0}
.cab-act-col{flex-direction:column;align-items:flex-start}
/* формы */
.cab-form{max-width:640px}
.cab-form-narrow{max-width:440px}
.cab-form .cab-btn{margin-top:20px}
.cab-cancel{max-width:560px}
.wa-text .cab-cancel p{margin:0 0 12px}
.cab-bonus{max-width:820px}
@media (min-width:700px){
  .cab-cards{grid-template-columns:repeat(3,1fr)}
  .cab-nav{margin-left:0;margin-right:0;padding:0}
}
@media (min-width:900px){
  .cab-detail{grid-template-columns:minmax(0,1fr) 340px;gap:48px}
  .cab-side{position:sticky;top:calc(var(--hd) + 24px)}
}
@media (max-width:699px){
  .cab-blk dl div{grid-template-columns:1fr;gap:2px}
  .cab-of{flex-direction:column;align-items:stretch}
  .cab .cab-btn{width:100%}
}
/* бонусы – таблица модуля logictim в тоне сайта (страницу «сейчас правят» – только вид, разметку модуля не трогаем) */
.cab-bonus{font:15px/1.5 var(--ui);color:var(--ink)}
.cab-bonus table{width:100%;border-collapse:collapse!important;border:0!important;font:15px/1.45 var(--ui)!important;background:none!important}
.cab-bonus th{background:none!important;color:var(--muted)!important;font:500 11px/1.3 var(--ui)!important;text-transform:uppercase;letter-spacing:.12em;border:0!important;border-bottom:1px solid var(--line)!important;padding:10px 10px 10px 0!important;text-align:left!important}
.cab-bonus td{border:0!important;border-bottom:1px solid var(--line)!important;padding:12px 10px 12px 0!important;vertical-align:top;text-align:left!important;background:none!important}
.cab-bonus h1,.cab-bonus h2,.cab-bonus h3,.cab-bonus h4{font:400 20px/1.3 var(--head)!important;margin:24px 0 12px!important}
.cab-bonus .tabs,.cab-bonus [class*=tab]{border-color:var(--line)!important;background:none!important}
@media (max-width:699px){.cab-bonus{overflow-x:auto}.cab-bonus table{min-width:560px}}
/* бонусы CRM (28.10.2026): шаблон «leto» компонента Кислорода o2k:loyalty.history – баланс, уровень, история */
.loy p{margin:0 0 6px}
.loy-bal b{font:400 22px/1 var(--head);color:var(--accent-deep);margin:0 2px}
.loy-lvl,.loy-note{color:var(--muted)}
.loy-sub{display:block;font:13px/1.45 var(--ui);color:var(--muted)}
.loy-plus{color:var(--ink)}
.loy-minus{color:var(--muted)}
/* «За этот букет / за заказ начислим N бонусов» – карточка и корзина, сумма из CRM (js/leto_loyalty.js) */
.loy-line{margin:12px 0 0;font:13px/1.45 var(--ui);color:var(--muted)}
.loy-line b{font-weight:500;color:var(--ink)}
.loy-line[hidden]{display:none}
.bk-sum .loy-line{margin:0 0 10px}
/* ---------- личный кабинет, вторая версия (13.10, Аида: «посовременнее… обзор с переходами по разделам – это битрикс»):
   одна страница «Ваши заказы» (было «Ваши букеты») – приветствие, «Сейчас», архив фотографиями с фильтром «кому дарили», заказ – боковой панелью ---------- */
.cab2{max-width:1120px}
.cab2-head{margin:8px 0 34px}
.wa-text .cab2-k{font:500 11px/1.4 var(--ui);text-transform:uppercase;letter-spacing:.18em;color:var(--muted);margin:0 0 12px}
.wa-text .cab2-h1{font:300 clamp(36px,5vw,64px)/1.04 var(--head);letter-spacing:-.01em;margin:0;text-wrap:balance}
.wa-text .cab2-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px 24px;margin:22px 0 0;font:500 11px/1.4 var(--ui);text-transform:uppercase;letter-spacing:.14em}
.wa-text .cab2-row a{color:var(--ink);text-decoration:none;border-bottom:1px solid var(--line);padding-bottom:3px}
.wa-text .cab2-row a.cab2-chip{border:1px solid var(--line);border-radius:999px;padding:8px 14px;background:#fff;letter-spacing:.1em}
.cab2-chip b{font:400 15px/1 var(--head);letter-spacing:0;margin-right:4px;color:var(--accent-deep)}
.wa-text .cab2-back{font:500 11px/1.4 var(--ui);text-transform:uppercase;letter-spacing:.14em;color:var(--muted);text-decoration:none;display:inline-block;margin-bottom:16px}
.cab2-sub .cab2-head{margin-bottom:28px}
.cab2-sub .cab2-h1{font-size:clamp(32px,4vw,48px)}
/* карточки-кнопки без вида кнопки */
.cab2-now-in,.cab2-card{display:block;width:100%;border:0;background:none;padding:0;margin:0;text-align:left;font:inherit;color:inherit;cursor:pointer}
.cab2-ph{position:relative;aspect-ratio:4/5;border-radius:var(--r-ph,10px);overflow:hidden;background:var(--photo)}
.wa-text .cab2-ph img{display:block;width:100%;height:100%;object-fit:cover;margin:0;border-radius:0;transition:transform .5s ease}
.cab2-card:hover .cab2-ph img,.cab2-now-in:hover .cab2-ph img{transform:scale(1.03)}
.cab2-plus{position:absolute;right:10px;bottom:10px;background:rgba(255,255,255,.92);border-radius:999px;font:500 11px/1 var(--ui);padding:6px 9px;color:var(--ink)}
.wa-text .cab2-sub{font:13px/1.45 var(--ui);color:var(--muted);margin:4px 0 0}
/* «Сейчас» */
.cab2-now{margin:0 0 56px}
.cab2-now-in{display:grid;grid-template-columns:120px 1fr;gap:18px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:14px;transition:border-color .15s}
.cab2-now-in:hover{border-color:var(--ink)}
.wa-text .cab2-now-h{font:400 22px/1.25 var(--head);margin:0}
.wa-text .cab2-now-d{font:15px/1.45 var(--ui);margin:6px 0 0;color:var(--ink)}
.cab2-now .cab2-k{color:var(--accent-deep)}
.cab2-more{display:inline-block;margin-top:12px;font:500 11px/1.4 var(--ui);text-transform:uppercase;letter-spacing:.14em;border-bottom:1px solid var(--line);padding-bottom:3px}
/* архив */
.cab2-arch-h{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:12px 24px;margin:0 0 20px}
.wa-text .cab2-arch-h h2{font:300 clamp(26px,3vw,36px)/1.15 var(--head);margin:0}
.cab2-who{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;max-width:100%}
.cab2-who::-webkit-scrollbar{display:none}
.cab2-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px 8px}
.cab2-card[hidden]{display:none}
.cab2-card.is-off .cab2-ph{opacity:.55}
.wa-text .cab2-t{font:400 17px/1.3 var(--head);margin:10px 0 0;color:var(--ink)}
.cab2-showall{display:block;margin:32px auto 0;background:none;border:0;cursor:pointer}
/* боковая панель заказа */
.cab2-dr{position:fixed;inset:0 0 0 auto;margin:0;width:min(520px,100vw);max-width:100vw;height:100%;max-height:100%;border:0;padding:0;background:var(--bg);color:var(--ink);box-shadow:-20px 0 60px rgba(0,0,0,.12);overflow-y:auto}
.cab2-dr::backdrop{background:rgba(20,20,20,.32)}
.cab2-dr[open]{animation:cab2in .28s ease}
@keyframes cab2in{from{transform:translateX(40px);opacity:0}to{transform:none;opacity:1}}
html.cab2-lock{overflow:hidden}
.cab2-x{position:sticky;top:0;float:right;margin:10px 10px 0 0;width:44px;height:44px;border:0;border-radius:50%;background:var(--bg);font:300 28px/1 var(--ui);cursor:pointer;color:var(--ink);z-index:1}
.cab2-dr-in{padding:34px 28px 40px;font:15px/1.5 var(--ui)}
.cab2-dr .cab2-k{font:500 11px/1.4 var(--ui);text-transform:uppercase;letter-spacing:.16em;color:var(--muted);margin:0 0 10px}
.cab2-dr-h{font:300 30px/1.12 var(--head);margin:0 0 12px}
.cab2-dr .cab-st{margin:0 0 6px}
.cab2-items{list-style:none;padding:0;margin:20px 0;display:grid;gap:12px}
.cab2-items li{display:grid;grid-template-columns:56px 1fr;gap:12px;align-items:center;margin:0;padding:0}
.cab2-items li::before{display:none}
.cab2-iph{display:block;width:56px;aspect-ratio:4/5;border-radius:6px;overflow:hidden;background:var(--photo)}
.cab2-iph img{width:100%;height:100%;object-fit:cover}
.cab2-in{display:grid;gap:2px;font:400 16px/1.3 var(--head)}
.cab2-in small{font:13px/1.4 var(--ui);color:var(--muted)}
.cab2-dl{margin:0;padding:16px 0 0;border-top:1px solid var(--line);display:grid;gap:10px}
.cab2-dl div{display:grid;grid-template-columns:110px 1fr;gap:12px}
.cab2-dl dt{color:var(--muted);margin:0}
.cab2-dl dd{margin:0;overflow-wrap:anywhere}
.cab2-sum{margin-top:18px}
.cab2-sum .cab-total{font-size:17px}
.cab2-dr-act{display:grid;gap:14px;justify-items:start;margin-top:26px}
.cab2-dr-act .cab-btn{width:100%}
@media (min-width:700px){
  .cab2-now-in{grid-template-columns:200px 1fr;gap:28px;padding:16px}
  .wa-text .cab2-now-h{font-size:28px}
}
@media (min-width:900px){
  .cab2-grid{grid-template-columns:repeat(4,1fr);gap:40px 16px}
  .cab2-head{margin-bottom:44px}
}
.cab2-grid{align-items:start}
.wa-text .cab2-items,.cab2-dr .cab2-items{padding:0;margin:20px 0}
.cab2-dl div{grid-template-columns:150px 1fr}

/* ---------- 13.10 (вечер, замечания Аиды по копии) ----------
   значок кабинета в шапке: на компьютере рядом с поиском; на телефоне шапка его не вмещает – пункт «Личный кабинет» в меню */
.hd .acc-btn{display:none}
@media (min-width:900px){.hd .acc-btn{display:grid}}
/* «Заказать снова» в панели заказа – форма с кнопкой и пояснением */
.cab2-again{display:grid;gap:8px;width:100%;margin:0}
.wa-text .cab2-again .cab-note{margin:0;font-size:13.5px;color:var(--muted)}
.cab2 .au-msg{margin:0 0 28px}
/* итог оформления: строка бонусов модуля бонусов лежит во вложенном div – раскладываем как остальные строки */
#bonus_add_sum,#bonus_add_sum_mobile{display:flex;justify-content:space-between;align-items:baseline;gap:12px;width:100%}
/* 14.10: служебные формы модуля CRM (/lp-register/, /sub-register/) – галочка рассылок сразу после поля кода не прилипает к нему */
.au-form .fld + .au-check,.au-form .au-captcha + .au-check{margin-top:14px}
/* «Каталог» в подвале (14.10, решение Аиды): все разделы и подборки – тихим списком в несколько колонок, ссылки для поисковиков */
.ft-cat-wrap{padding-top:0}
.ft-cat{border-top:1px solid var(--line);padding:22px 0 6px}
.ft-cat-h{font:500 11px/1.4 var(--ui);text-transform:uppercase;letter-spacing:.16em;color:var(--muted);margin:0 0 12px}
.ft-cat-l,.ft-cat-s{list-style:none;margin:0;padding:0;columns:2;column-gap:20px}
.ft-cat-l li,.ft-cat-s li{break-inside:avoid;margin:0 0 6px;font:13px/1.35 var(--ui)}
.ft-cat a{color:var(--ink);opacity:.72;text-decoration:none}
.ft-cat a:hover{opacity:1;text-decoration:underline}
/* 14.10, вечер (Аида: «футер стал громоздким»): список свёрнут – одна тихая строка с «+», раскрывается по нажатию */
.ft-cat-more summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:10px;font:500 11px/1.4 var(--ui);text-transform:uppercase;letter-spacing:.16em;color:var(--muted)}
.ft-cat-more summary::-webkit-details-marker{display:none}
.ft-cat-more summary::after{content:'+';font:300 18px/1 var(--ui);transition:transform .2s}
.ft-cat-more[open] summary::after{transform:rotate(45deg)}
.ft-cat-more summary:hover{color:var(--ink)}
.ft-cat-more[open] summary{margin-bottom:18px}
.ft-cat-more .ft-cat-h{font-size:11px;opacity:.8}
@media (min-width:700px){.ft-cat-l,.ft-cat-s{columns:3}}
@media (min-width:1100px){.ft-cat-l,.ft-cat-s{columns:5}}
.ft-b .wrap.ft-cat-wrap{display:block;grid-template-columns:none}
.ft-cat-wrap .ft-cat{margin-top:22px}
.ft-cat-l + .ft-cat-h{margin-top:18px}
/* 24.10 (ревизия 22.10, seo-1): подразделы каталога вложенным списком под разделом – ссылки на них со всех страниц, как в меню Аспро */
.ft-cat-sub{list-style:none;margin:5px 0 2px 10px;padding:0}
.ft-cat-sub li{font-size:13px;margin:0 0 4px}
.ft-cat-l>li:has(.ft-cat-sub){break-inside:auto}
.ft-cat{padding:16px 0 4px}
/* 14.10, вечер (Аида): пустая строка крошек на главной давала зазор 26 px под шапкой – «неадекватно большое расстояние» */
.crumbs-bar:empty{display:none}
/* 14.10, вечер (Аида: SEO-текст «очень узкой колонкой… вся остальная информация широкая»): по общей сетке блоков, от левого края,
   строка не длиннее 1100 px – и на главной, и в разделах */
.seo{max-width:var(--max);padding:0 var(--pad)}
.seo-in{max-width:1100px}
/* 14.10, вечер – правки по независимой оценке сайта (04_outputs/site_lab/premium_review_2026-10-14/) */
/* таблицы на телефоне: заголовки переносятся, мелкий кегль – таблица доставки помещается в экран (была обрезана справа);
   широкие таблицы по-прежнему листаются вбок */
@media (max-width:899px){.wa-text table{white-space:normal;font-size:13px}.wa-text th,.wa-text td{padding:8px 10px 8px 0}.wa-text td{white-space:nowrap}}
/* вкладки «Помощи» и «О нас» на телефоне: правый край растворяется – видно, что строку можно листать (было «УС…» обрубком) */
@media (max-width:899px){.subnav{-webkit-mask-image:linear-gradient(to right,#000 calc(100% - 40px),transparent);mask-image:linear-gradient(to right,#000 calc(100% - 40px),transparent);padding-right:48px}}
/* короткие страницы (пустая корзина): под подвалом не остаётся полосы фона страницы – холст цвета подвала */
html{background:var(--surface)}
/* дата отзыва – тихой строкой под именем */
.rv figcaption .rv-d{display:block;font:400 13px/1.4 var(--ui);color:var(--muted);margin-top:2px}
/* EN / RU в шапке – тихой подписью рядом с телефоном (компьютер); на телефоне – строкой в меню */
.hd-lang{display:none}
@media (min-width:900px){.hd-lang{display:block;font:500 11px/1 var(--ui);letter-spacing:.14em;color:var(--muted);margin:0 10px 0 4px;padding:6px 0}.hd-lang:hover{color:var(--ink)}}
/* 14.10, ночь (решения Аиды по независимой оценке) */
/* плитки на телефоне – с полями, как у заголовков («после»); подписи – по линии фото */
@media (max-width:899px){.grid{padding:0 var(--pad);column-gap:10px}.grid .cap,.grid .tile:nth-child(2n+1) .cap{padding-left:2px;padding-right:2px}}
/* подпись к фото в карточке: телефон – под фото и точками, компьютер – над сеткой фото; тихо, мелко */
.gal-note{font:400 13px/1.5 var(--ui);color:var(--muted);letter-spacing:.01em}
.gal-note p{margin:0}
.gal-note-m{padding:10px var(--pad) 0}
.gal-note-d{display:none}
@media (min-width:900px){.gal-note-m{display:none}.gal-note-d{display:block;font-size:13px;margin:0 0 12px}}
/* отзывы: ссылка на отзывы на Яндекс Картах – тихой строкой, без звёзд и плашек (Аида 14.10: «ок») */
.rv-ext{font:500 11px/1.4 var(--ui);text-transform:uppercase;letter-spacing:.14em;margin:0 0 18px}
.rv-ext p{margin:0}
.rv-ext a{color:var(--muted);text-decoration:none;border-bottom:1px solid var(--line)}
.rv-ext a:hover{color:var(--ink)}
/* плашка согласия на cookie (15.10): тихая полоса внизу экрана */
.ck{position:fixed;left:0;right:0;bottom:0;z-index:60;background:var(--bg);border-top:1px solid var(--line);box-shadow:0 -6px 24px rgba(0,0,0,.05)}
.ck[hidden]{display:none}
.ck-in{max-width:var(--max);margin:0 auto;padding:12px var(--pad);display:flex;align-items:center;gap:16px;justify-content:space-between}
.ck-t{flex:1 1 auto;min-width:0;font:13px/1.45 var(--ui);color:var(--ink)}
.ck-t p{margin:0}
.ck-t a{color:inherit;text-decoration:underline;text-underline-offset:2px}
/* 16.10: .btn в витрине – width:100%, кнопка «Хорошо» забирала всю строку и уходила за край, текст сжимался в узкий столбец */
.ck-ok{flex:0 0 auto;width:auto;height:40px;padding:0 24px}
/* 16.10 (Аида, iPhone 16): ленты на телефоне прилипали к краю экрана – привязка прокрутки (scroll-snap) без scroll-padding
   ставила первую карточку на край и съедала левый отступ (разделы и «Контроль качества» на главной, упаковка в карточке);
   фото «О нас» – во всю ширину со скруглением и с обрезанной головой (кадр 2:3 в окне 3:2) */
@media (max-width:899px){
  .grid.sects,.qc-grid,.pack-row{scroll-padding-inline:var(--pad)}
  .about-ph{margin:0 var(--pad) 20px}
  .about-ph img{aspect-ratio:4/5;object-position:50% 22%;border-radius:var(--r-ph)}
}
/* 16.10: на iPhone поле ввода со шрифтом мельче 16px при нажатии увеличивает всю страницу (вход – 15px); на телефоне поля – 16px */
@media (max-width:899px){
  input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=hidden]),select,textarea{font-size:16px!important}   /* !important: у полей оформления заказа свои правила 15px */
}
/* 16.10 (Аида: «давай» на рекомендацию по просьбе Андрея): «Выбрать» на главном слайдере – тонкая рамка тем же шрифтом
   (на фото – белая), высота 44px для пальца; раньше – подчёркнутое слово 11,5px */
.hero-a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 24px;border:1px solid currentColor;border-radius:var(--r);transition:background .15s}
body.cap-over .hero-a{color:#fff;border-color:#fff}
.hero-a:hover{background:rgba(255,255,255,.14)}
/* 16.10 (то же решение): иконки шапки на телефоне – область нажатия 44×44 (было 40×40); рисунок и расстояния прежние –
   лишние 4px съедает отрицательное поле */
@media (max-width:899px){
  .hd .ib{width:44px;height:44px;margin:0 -2px}
}

/* ---------- 16.10: «Звонок менеджера» (= «Купить в 1 клик» Аспро, Аида 16.10, п. 101) ----------
   ссылка под кнопкой карточки + боковая панель (как панель заказа кабинета .cab2-dr); поля .fld и флажки .tgl – как в оформлении */
/* 21.10 (Аида с телефона: кнопка «поставлена очень странно и невыразительно, как будто ошибка с вёрсткой») – вторая кнопка
   во всю ширину с тонкой рамкой, той же высоты и шрифта, что «В корзину»; на телефоне – сразу под размерами (корзина – внизу экрана) */
.ocb-link{display:flex;align-items:center;justify-content:center;width:100%;height:var(--btn);margin:14px 0 4px;padding:0 16px;
  background:transparent;border:1px solid rgba(35,36,32,.32);border-radius:var(--r);font:500 var(--t-ui)/1 var(--ui);
  text-transform:uppercase;letter-spacing:.16em;color:var(--ink);cursor:pointer;transition:border-color .15s,background .15s}
.ocb-link:hover{border-color:var(--ink);background:rgba(255,255,255,.5)}
/* 21.10: воздух в карточке между видом, названием, ценой и размерами (Аида: «тоже очень тесно») */
.info .title{margin-bottom:8px}
.info .title .kicker{margin-bottom:8px}
.info .price-row{margin:14px 0 12px}
.info .opt{padding-bottom:6px}
.info .ritual{margin-top:18px}
.ocb-dr .ocb-note{color:var(--muted);margin:0 0 6px}
.ocb-dr .ocb-note p{margin:0}
.ocb-form{display:grid;gap:2px}
.ocb-form .fld{margin-top:12px}
.ocb-form textarea{resize:vertical;min-height:84px}
.ocb-form .btn{width:100%;margin-top:22px}
.ocb-small{font:13px/1.45 var(--ui);color:var(--muted);margin:12px 0 0}
.ocb-small a,.ocb-dr .tgl a{color:inherit;border-bottom:1px solid var(--line)}
.ocb-err{margin:16px 0 0;padding:12px 14px;border-radius:var(--r);background:var(--wash);font:13px/1.45 var(--ui);color:var(--ink)}
.ocb-err[hidden],.ocb-ok[hidden],.ocb-form[hidden]{display:none}
.ocb-form .btn:disabled{opacity:.6;cursor:progress}
/* браузер без <dialog> (Safari до 15.4): закрытая панель не должна висеть поверх страницы (опровергающая проверка 16.10) */
dialog.cab2-dr:not([open]){display:none}
.ocb-ok .ocb-note{font-size:15px}
/* 16.10: «Оставить отзыв» (страница отзывов) и «Товар под заказ» (карточка) – панели как у «Звонка менеджера» (Аида 16.10, п. 102) */
.rv-add{margin:0 0 26px}
.rv-add .btn{width:auto;padding:0 28px}
.lf-prod{font:400 18px/1.3 var(--head);margin:4px 0 2px}
.lf-rate{border:0;margin:12px 0 0;padding:0;min-width:0}
.lf-rate legend{font:13px/1.3 var(--ui);color:var(--muted);padding:0;margin:0 0 4px}
.lf-stars{display:inline-flex;flex-direction:row-reverse;gap:2px}
.lf-stars input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.lf-stars label{font-size:28px;line-height:1;color:var(--line);cursor:pointer;padding:2px 3px}
.lf-stars input:checked~label,.lf-stars label:hover,.lf-stars label:hover~label{color:var(--ink)}
.lf-stars input:focus-visible+label{outline:2px solid var(--ink);outline-offset:2px;border-radius:4px}
.ocb-form input[type=file]{padding:9px;font-size:13px}
.ocb-dr .lf-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.lf-vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
/* 17.10, п. 105: состав выбранного размера из инфоблока 45 – под выбором размера, на месте диаметра */
.size-note{font:var(--t-small)/1.45 var(--ui);color:var(--ink);margin:8px 0 0;max-width:46ch}
.size-note[hidden]{display:none}
/* ---------- 19.10.2026 (Аида, п. 108): ещё 4 страницы из Тильды – «Новый год для компаний» .ru, Subscription / For companies /
   New Year .com. Блоки – build_tilda_pages.py (corpny_*, comsub_*, comcorp_*, comny_*), страницы – include/pages/*.php ---------- */
.lp .lp-note{font-size:14px;line-height:1.55;color:var(--muted);margin:14px 0 0}
.wa-text .lp ol.lp-ol{margin:0 0 14px;padding-left:22px}
.wa-text .lp ol.lp-ol li{margin:2px 0}
/* заголовок нужного уровня для SEO (как на живой странице), вид – как у соседей: H1 в середине страницы (.com New Year), h2 первым экраном (.com For companies) */
.wa-text .lp h1.lp-as-h2{font-size:var(--t-h2);line-height:1.2;margin:0 0 12px}
.wa-text .lp h1.lp-as-h2:not(:first-child){margin-top:36px}
.wa-text .lp h2.lp-as-h1{font-size:var(--t-name);line-height:1.1;margin:0 0 14px}
.wa-text .lp ul.lp-sizes{margin-top:28px}
/* цифры («Leto Flowers в цифрах») */
.wa-text .lp ul.lp-stats{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:22px 18px}
.wa-text .lp .lp-stats li{margin:0;padding-top:14px;border-top:1px solid var(--line)}
.lp .lp-stat{display:block;font:300 34px/1.1 var(--head);color:var(--ink);margin-bottom:6px}
.lp .lp-stats p{margin:0;font-size:15.5px;line-height:1.5;color:var(--muted)}
/* логотипы одной картинкой (.com For companies): белый фон уходит в фон страницы */
.wa-text .lp img.lp-logoimg{width:100%;height:auto;max-width:620px;mix-blend-mode:multiply;border-radius:0;margin-top:18px}
.lp .lp-gap{margin-top:40px}
@media (min-width:900px){
  .wa-text .lp ul.lp-stats{grid-template-columns:repeat(4,1fr);gap:0 40px}
  .lp .lp-stat{font-size:44px}
  .lp .lp-gap{margin-top:72px}
}
/* 21.10: метка букета в каталоге – плашкой на фото, сверху слева (вид букета – над названием) */
.tile .ph-tag{top:8px;bottom:auto;left:8px;z-index:2;font-size:11px;padding:4px 8px}
@media (min-width:900px){.tile .ph-tag{top:10px;left:10px;font-size:11px}}
/* 25.10: та же метка в карточке – под названием, над ценой (ux-8; Аида: «Уточните наличие» – важная метка) */
.info .info-tag{margin:10px 0 0}
.info .info-tag span{display:inline-block;padding:4px 10px;border:1px solid var(--line);border-radius:999px;font:500 11px/1.2 var(--ui);letter-spacing:.04em;color:var(--ink)}
/* 24.10: поиск первой строкой меню на телефоне (Аида, п. 112) */
.drawer-search{display:flex;align-items:center;gap:6px;margin:4px 0 10px;border:1px solid var(--line);border-radius:var(--r);padding:0 4px 0 14px;background:#fff}
.drawer-search input{flex:1;min-width:0;border:0;background:transparent;font:16px/1.3 var(--ui);height:46px;outline:none;-webkit-appearance:none;appearance:none}
.drawer-search input::-webkit-search-cancel-button{-webkit-appearance:none}
.drawer-search:focus-within{border-color:var(--ink)}
/* 24.10: число на значке корзины (ревизия 22.10, ux-5) – обёртка области композита на всю кнопку, в сетку кнопки не встаёт;
   само число – .bag-n прототипа */
#leto-bag-n{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}
/* 24.10: главная – вопросы после первых шести под «Ещё вопросы» (ревизия 22.10, arch-4; п. 33 – на телефоне блок тяжёлый) */
.faq-more>summary{display:inline-block;list-style:none;cursor:pointer;padding:22px 0 4px}
.faq-more>summary::-webkit-details-marker{display:none}
.faq-more[open]>summary{display:none}
/* 24.10: фото слайдера главной и первое фото карточки – в <picture> с пустой картинкой для другого экрана (ревизия 22.10, perf-1);
   обёртка не участвует в раскладке, стили img (.hero-track img, .gal-track img, .gal-grid img) работают как раньше */
picture.ph-pic{display:contents}

/* ===== Типографика 27.10.2026: роли шрифтов (вопрос Ксении «два шрифта выглядят мусорно, как будто не доделали»).
   Замер копии 27.10 (probes/font_roles_probe.py): целые фразы стояли то Revival, то Jost – шрифт менялся почти на каждой строке.
   Правило (Practical Typography, «Mixing fonts»: у каждого шрифта постоянная работа, шрифт меняется только между абзацами):
   Revival 565 – всё, что читают как фразу или заголовок; Jost – только короткий интерфейс (кнопки, цены, размеры, меню,
   крошки, метки, подписи заглавными). Размеры Jost сведены к 11 / 13 / 15 px скриптом vitrina_transfer/type_scale_snap.py. */
.hero-x{font:16px/1.45 var(--body)}
@media (min-width:900px){.hero-x{font-size:17px}}
.about-why li{font:16px/1.55 var(--body)}
.gal-note{font:15px/1.5 var(--body)}
/* .info .ritual li (три преимущества в карточке) – остаётся Jost 13 px из vitrina.css: решение Аиды 27.10.2026 «здесь такой шрифт верни» */
.pk figcaption,.qc figcaption{font:15px/1.45 var(--body)}
.qc figcaption b{font-weight:400}
.acc summary{font:18px/1.35 var(--head);text-transform:none;letter-spacing:0}
.wa-text h3{font:20px/1.3 var(--head);text-transform:none;letter-spacing:0;color:var(--ink)}
.ck .ck-t{font:15px/1.45 var(--body)}

/* End */
/* /local/templates/leto_new/template_styles.css?1793385108142283 */
