/* ==========================================================================
   DAGAMY, версия 4_1. Пересобрана по правкам Лины от 10.08.2026.
   Дословник: ../../../Правки клиента/2026-08-10_сайт-рекомендации-по-v4.md

   Три жёстких требования правки, на которых держится вся таблица:
   1. Зелёного нет нигде. Палитра пастельная, тёплая, с золотом.
   2. Один шрифт Golos, шесть ступеней кегля, два цвета текста. Минимум 16.5 px.
      Второй шрифт убран 11.08 по правке Лины, ступени сведены в токены ниже.
   3. Мобильный первичен: 95% трафика с телефона.
   ========================================================================== */

@font-face{font-family:Golos;src:url(fonts/golos-400.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:Golos;src:url(fonts/golos-500.woff2) format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:Golos;src:url(fonts/golos-600.woff2) format("woff2");font-weight:600;font-display:swap}

:root{
  /* ── фон и бумага: мягче, чем в v4, «слишком твёрдый цвет фона» ── */
  --bg:#FDFAF6;
  --paper:#FFFFFF;
  --cream:#FBF4EC;
  --soft:#F6E9DC;

  /* ── акценты: золото и пыльная роза вместо зелёного ── */
  --gold:#C79A46;
  --gold-deep:#9C7526;
  --gold-soft:#F7EBD3;
  --gold-line:#E6D2A9;
  --blush:#F2DED9;
  --blush-line:#E5C6BD;

  /* ── текст: ровно два цвета ── */
  --ink:#2C2521;
  --ink2:#6A5C51;

  --line:#E4D2BB;
  --line-2:#D8C1A4;
  --sp:clamp(44px,7vw,72px);
  --r:20px;

  /* ── ТИПОГРАФИЧЕСКАЯ СИСТЕМА: шесть ступеней, три начертания ──
     ТЗ от 11.08, раздел 8. Один шрифт Golos, ниже единственный набор кеглей.
     Ни одного размера мимо этой таблицы на сайте быть не должно:
     уровни различаются размером, насыщенностью и интервалом, а не гарнитурой.
     Начертания: 400 текст, 500 подзаголовки списков и меню, 600 заголовки и кнопки.
     Курсив разрешён ровно в одном месте, в цитате отзыва. */
  --fs-h1:clamp(32px,8vw,48px);
  --fs-h2:clamp(27px,6vw,37px);
  --fs-h3:21px;
  --fs-body:18.5px;
  --fs-sm:17px;
  --fs-xs:16.5px;
}

*{box-sizing:border-box;margin:0}
/* формы и кнопки гарнитуру не наследуют: без этой строки браузер ставит свой шрифт */
button,input,textarea,select{font-family:inherit}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{background:var(--bg);color:var(--ink);
  font:400 var(--fs-body)/1.62 Golos,-apple-system,'Segoe UI',sans-serif;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
h1,h2,h3{font-family:Golos,-apple-system,'Segoe UI',sans-serif;font-weight:600;line-height:1.1;letter-spacing:-.015em}
a{color:inherit}
.wrap{max-width:1180px;margin:0 auto;padding:0 20px}

/* ── ШЕСТЬ СТУПЕНЕЙ КЕГЛЯ, БОЛЬШЕ НИКАКИХ ──
   Правка: «на одном сайте я насчитала минимум 7 или 8 разных размеров» */
h1{font-size:var(--fs-h1);letter-spacing:-.015em}
h2{font-size:var(--fs-h2);letter-spacing:0}
h3,.lead{font-size:var(--fs-h3);line-height:1.42;letter-spacing:0}
.small{font-size:var(--fs-xs);line-height:1.5;color:var(--ink2)}

/* ── ШАПКА ── */
.top{position:sticky;top:0;z-index:40;background:rgba(253,250,246,.94);
  backdrop-filter:saturate(1.3) blur(10px);border-bottom:1px solid transparent;transition:border-color .25s}
.top.pinned{border-bottom-color:var(--line)}
.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:18px;height:70px}
.logo{display:inline-flex;align-items:center;gap:10px;
  font:600 var(--fs-body)/1 Golos,-apple-system,'Segoe UI',sans-serif;letter-spacing:.26em;text-transform:uppercase;
  text-decoration:none;white-space:nowrap}
.logo-mark{display:block;width:40px;height:40px;flex:0 0 auto;object-fit:contain}
@media(max-width:560px){.logo{gap:8px}.logo-mark{width:34px;height:34px}}
.top nav{display:none;gap:24px;font-size:var(--fs-xs);color:var(--ink2)}
.top nav a{text-decoration:none}
.top nav a:hover{color:var(--gold-deep)}

/* ── ГАМБУРГЕР И МОБИЛЬНОЕ МЕНЮ ── */
.burger{display:inline-flex;flex-direction:column;justify-content:center;gap:5px;
  width:52px;height:48px;padding:0 13px;background:transparent;border:1px solid var(--line-2);
  border-radius:12px;cursor:pointer}
.burger span{display:block;height:2px;background:var(--ink);border-radius:2px;transition:transform .25s,opacity .2s}
.burger[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

.menu{position:fixed;left:0;right:0;top:70px;bottom:0;z-index:39;display:none;
  background:var(--bg);border-top:1px solid var(--line-2);overflow-y:auto;
  padding:4px 20px calc(28px + env(safe-area-inset-bottom))}
/* Правка Дмитрия 13.08: на Android (Honor) кнопка «Свяжитесь с нами» внизу меню
   пряталась под адресной строкой браузера. Причина не в отступе: закреплённый
   слой считает низ по большому экрану, без учёта панели браузера, а панель
   появляется и исчезает при прокрутке. Высота задаётся через dvh, эта единица
   уменьшается вместе с видимой частью экрана. Браузерам без dvh остаётся
   прежнее поведение, поэтому bottom:0 выше не убран. */
@supports (height:100dvh){
  .menu{bottom:auto;height:calc(100dvh - 70px)}
}
.menu.open{display:block}
.menu a{display:flex;flex-direction:column;align-items:flex-start;gap:2px;
  padding:12px 2px;font-size:var(--fs-body);font-weight:500;text-decoration:none;border-bottom:1px solid var(--line)}
.menu a span{font-size:var(--fs-xs);font-weight:400;color:var(--ink2)}
/* Правка Дмитрия 13.08: подпись кнопки в меню съезжала к левому краю.
   Причина не в устройстве, а в силе селектора: `.menu a` выше задаёт пунктам
   меню колонку и выравнивание по левому краю и перебивает `.btn`, у которого
   селектор слабее. При колонке `justify-content:center` центрует по вертикали,
   а по горизонтали работает `align-items:flex-start`, то есть влево.
   Кнопке возвращается её собственная геометрия: строка, центр, свои поля. */
.menu .btn{width:100%;margin-top:18px;font-weight:600;
  flex-direction:row;align-items:center;justify-content:center;gap:0;
  padding:0 30px;text-align:center;border-bottom-color:inherit}
body.locked{overflow:hidden}
/* пока меню открыто, липкая кнопка и плашка куки не мешают */
body.locked .dock,body.locked .cookie{display:none}

/* ── КНОПКИ ──
   Правка: «кнопки не такие резкие, полупрозрачное, лёгкое, может быть золото» */
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:60px;padding:0 30px;
  border-radius:14px;text-decoration:none;font:600 var(--fs-body)/1.2 Golos,sans-serif;
  border:1px solid transparent;text-align:center;cursor:pointer;
  transition:transform .18s ease,background .25s,box-shadow .25s}
.btn.main{color:#3B2E18;border-color:#DCBE86;
  background:linear-gradient(180deg,#F4E2BC 0%,#E6CB92 100%);
  box-shadow:0 14px 26px -18px rgba(150,112,38,.75)}
.btn.main:hover{background:linear-gradient(180deg,#F7E9CB 0%,#E9D2A0 100%);transform:translateY(-1px)}
.btn.ghost{color:var(--ink);border-color:var(--gold);background:rgba(255,255,255,.5);min-height:56px}
.btn.ghost:hover{background:var(--gold-soft)}
.btn.sm{min-height:52px;font-size:var(--fs-sm);padding:0 22px}
.nav-cta{display:none}
.txt-cta{display:inline-block;font-weight:600;font-size:var(--fs-sm);text-decoration:none;
  border-bottom:2px solid var(--gold-line);padding-bottom:2px}
.txt-cta:hover{border-color:var(--gold)}

/* ── ПЕРВЫЙ ЭКРАН ──
   Правка: только порода, коротко, слово «подберём» убрать,
   картинка меньше на 30%, щенков несколько и разных окрасов */
.hero{padding:18px 0 26px}
.hgrid{display:grid}
/* надзаголовок съедает высоту первого экрана на телефоне, поэтому там его нет */
.hero .kicker{display:none;font-size:var(--fs-xs);color:var(--ink2);letter-spacing:.02em;margin-bottom:12px}
.hero h1{margin-bottom:10px}
/* оффер первого экрана: одна мысль, почему щенка выбирают здесь (ТЗ 11.08, раздел 3) */
.hero .lead{color:var(--ink2);max-width:24em;margin-bottom:16px}
.hero .hcta .btn{width:100%}
/* строка доверия: короткое доказательство под кнопкой, а не блок статистики.
   Крупные цифры с объяснением остались внизу, в блоке «Коротко о DAGAMY» */
.hero .proof{margin-top:12px;font-size:var(--fs-xs);line-height:1.5;color:var(--ink2);max-width:30em}

/* полоса под первым экраном: цифры доверия и вторичное действие */
.underhero{padding:6px 0 24px}
.underhero .wrap{display:grid;gap:18px}
.underhero .btn{width:100%}

/* полоса фактов: одной строкой, без карточек и без мелкого серого */
.facts{display:grid;grid-template-columns:1fr 1fr;gap:12px 18px;padding-top:18px;
  border-top:1px solid var(--line);font-size:var(--fs-xs);color:var(--ink2)}
.facts b{display:block;font:600 var(--fs-h3)/1.2 Golos,-apple-system,'Segoe UI',sans-serif;color:var(--ink)}
.facts div:last-child{grid-column:1/-1}

/* ── СЕКЦИИ ── */
.sec{padding:var(--sp) 0;border-top:1px solid var(--line)}
.sec.milk{background:var(--cream)}
.sec.blush{background:linear-gradient(180deg,#FBF1EC 0%,#FDF7F2 100%)}
.sec h2{margin-bottom:14px;scroll-margin-top:86px}
.sec .sub{color:var(--ink2);max-width:34em;margin-bottom:28px;font-size:var(--fs-body)}

/* ── РАСКРЫВАШКИ ── */
details{border-bottom:1px solid var(--line)}
summary{cursor:pointer;padding:18px 42px 18px 0;position:relative;font-size:var(--fs-body);font-weight:500;
  list-style:none}
summary::-webkit-details-marker{display:none}
summary::after{content:"";position:absolute;right:10px;top:50%;width:11px;height:11px;
  border-right:2px solid var(--gold);border-bottom:2px solid var(--gold);
  transform:translateY(-70%) rotate(45deg);transition:transform .25s}
details[open] summary::after{transform:translateY(-30%) rotate(225deg)}
details .in{padding:0 0 20px;color:var(--ink2);font-size:var(--fs-sm);max-width:44em}
details .in p+p{margin-top:10px}
.faq{border-top:1px solid var(--line)}

/* ── КАРТОЧКИ СМЫСЛОВ ── */
.cards{display:grid;gap:14px}
@media(min-width:720px){.cards{grid-template-columns:repeat(2,1fr);gap:18px}}
@media(min-width:1000px){.cards.c4{grid-template-columns:repeat(4,1fr)}
  .cards.c3{grid-template-columns:repeat(3,1fr)}}
.card{background:var(--paper);border:1px solid var(--line-2);border-radius:var(--r);padding:24px;
  display:flex;flex-direction:column}
.card .ic{display:grid;place-items:center;width:44px;height:44px;border-radius:13px;
  background:var(--gold-soft);color:var(--gold-deep);margin-bottom:16px}
.card .ic svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.7;
  stroke-linecap:round;stroke-linejoin:round}
.card h3{margin-bottom:8px}
.card p{font-size:var(--fs-sm);color:var(--ink2);line-height:1.5}
.card details{border-bottom:0;margin-top:auto;padding-top:14px}
.card summary{padding:0 22px 0 0;font-size:var(--fs-sm);font-weight:600;color:var(--gold-deep)}
.card summary::after{right:2px;width:8px;height:8px}
.card details .in{padding:12px 0 0;font-size:var(--fs-xs)}

/* компактный вид четырёх вопросов на телефоне: иконка в строке с заголовком */
@media(max-width:719px){
  .cards.compact{gap:10px}
  .cards.compact .card{padding:16px 18px}
  .cards.compact .card .ic{width:34px;height:34px;border-radius:10px;margin:0}
  .cards.compact .card .ic svg{width:18px;height:18px}
  .cards.compact .card .hd{display:flex;align-items:center;gap:12px;margin-bottom:6px}
  .cards.compact .card h3{margin:0;font-size:var(--fs-body)}
  .cards.compact .card p{font-size:var(--fs-xs)}
  .cards.compact .card details{padding-top:10px}
}

/* ── КАТАЛОГ ──
   Правка: карточки как в первой версии, два в ряд на телефоне,
   фильтры интуитивные и по минимуму, кнопок в карточке нет */
.filters{display:grid;gap:16px;padding:0 0 22px}
.fg b{display:block;font-size:var(--fs-xs);color:var(--ink2);margin-bottom:9px;font-weight:600}
.fg .row{display:flex;gap:8px;flex-wrap:wrap}
.chip{padding:11px 17px;border:1px solid var(--line-2);border-radius:999px;font-size:var(--fs-xs);
  color:var(--ink2);background:var(--paper);white-space:nowrap;cursor:pointer;font-family:inherit;
  transition:background .2s,border-color .2s,color .2s}
.chip:hover{border-color:var(--gold-line)}
.chip[aria-pressed="true"]{background:var(--gold-soft);border-color:var(--gold-line);color:var(--ink);
  font-weight:600}
.fdrop{border-bottom:1px solid var(--line);margin-bottom:18px}
.fdrop>summary{padding:14px 42px 14px 0;font-size:var(--fs-sm);font-weight:600;color:var(--gold-deep)}
.fdrop>summary::after{border-color:var(--gold)}
.fdrop .filters{padding:4px 0 18px}
.found{font-size:var(--fs-xs);color:var(--ink2);padding-bottom:16px}
.found b{color:var(--ink);font-weight:600}

.cat{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media(min-width:760px){.cat{grid-template-columns:repeat(3,1fr);gap:16px}}
@media(min-width:1040px){.cat{grid-template-columns:repeat(4,1fr);gap:18px}}
.pc{background:var(--paper);border:1px solid var(--line-2);border-radius:16px;overflow:hidden;
  display:flex;flex-direction:column;cursor:pointer;text-decoration:none;color:inherit;
  transition:transform .25s ease,box-shadow .25s ease}
.pc:hover{transform:translateY(-3px);box-shadow:0 20px 34px -26px rgba(120,80,30,.5)}
.pc .ph{aspect-ratio:1/1;overflow:hidden;position:relative;background:var(--soft)}
.pc .ph img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.pc:hover .ph img{transform:scale(1.04)}
.pc .city{position:absolute;left:8px;top:8px;padding:5px 11px;border-radius:999px;font-size:var(--fs-xs);
  background:rgba(255,255,255,.94);color:var(--ink2)}
.pc .gone{position:absolute;right:8px;top:8px;padding:5px 11px;border-radius:999px;font-size:var(--fs-xs);
  background:var(--blush);color:var(--ink)}
.pc.off .ph img{filter:saturate(.5);opacity:.78}
.pc.off{cursor:default}
.pc.off:hover{transform:none;box-shadow:none}
.pc .b{padding:13px 14px 15px;flex:1;display:flex;flex-direction:column}
.pc .nm{font:600 var(--fs-body)/1.25 Golos,-apple-system,'Segoe UI',sans-serif;margin-bottom:6px}
.pc .m{font-size:var(--fs-xs);color:var(--ink2);line-height:1.45}
.pc .pr{margin-top:10px;font-weight:600;font-size:var(--fs-body)}
.pc .more{display:block;margin-top:12px;padding-top:11px;border-top:1px solid var(--line);
  font-size:var(--fs-xs);font-weight:600;color:var(--gold-deep);text-decoration:none}
.pc[hidden]{display:none}
.cat-more{display:flex;justify-content:center;padding-top:26px}
.cat-more .btn{width:100%;max-width:420px}


/* разделение витрины: доступные щенки и те, кто уже уехал (ТЗ 4.3) */
.gone-block{margin-top:34px;padding-top:26px;border-top:1px solid var(--line-2)}
.gone-title{font-size:var(--fs-h3);margin-bottom:2px}
.gone-block[hidden]{display:none}

/* результат в отзыве (ТЗ 4.2) */
.rv .res{font-size:var(--fs-xs);line-height:1.5;color:var(--ink2);margin:0 0 14px;
  padding-left:14px;border-left:2px solid var(--gold-line)}
.reviews-link{margin-top:24px}

/* статус имитации переписки (ТЗ 3.3) */
.wa-note{margin-top:12px;font-size:var(--fs-xs);color:var(--ink2)}


/* ── МОЗАИКА ПЕРВОГО ЭКРАНА ──
   Правка Лины 11.08: много маленьких щенков вместо трёх крупных.
   ТЗ 11.08 раздел 5: восемь кадров, по два на каждый из четырёх окрасов,
   чтобы разнообразие было видно, но фотографии не спорили с оффером и кнопкой. */
.hmos{margin-bottom:18px}
.mos{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;height:auto}
.mos figure{margin:0;border-radius:12px;overflow:hidden;background:var(--soft);border:1px solid var(--line-2);
  aspect-ratio:1/1}
.mos img{width:100%;height:100%;object-fit:cover}

/* ── МИФЫ ── */
.myths{border-top:1px solid var(--line-2)}
.myths summary{font-weight:600}

/* ── ФОРМА ЗАПРОСА ── */
.ask-block{margin-top:30px;background:var(--paper);border:1px solid var(--gold);border-radius:var(--r);padding:26px}
.ask-block>b{display:block;font-size:var(--fs-h3);line-height:1.3;font-weight:600}
.ask-form{display:grid;gap:18px}
.ask-form .fg b{display:block;font-size:var(--fs-xs);color:var(--ink2);margin-bottom:9px;font-weight:600}
.ask-form .row{display:flex;gap:8px;flex-wrap:wrap}
.ask-form label{display:inline-flex;align-items:center;gap:8px;padding:10px 15px;border:1px solid var(--line-2);
  border-radius:999px;font-size:var(--fs-xs);color:var(--ink2);cursor:pointer;background:var(--paper)}
.ask-form label:has(input:checked){background:var(--gold-soft);border-color:var(--gold-line);color:var(--ink);font-weight:600}
.ask-form input[type=checkbox]{width:18px;height:18px;accent-color:var(--gold-deep);margin:0}
.ask-input{width:100%;padding:14px 16px;border:1px solid var(--line-2);border-radius:14px;background:var(--paper);
  font:400 var(--fs-sm)/1.4 Golos,sans-serif;color:var(--ink)}
.ask-input:focus{outline:2px solid var(--gold-line);outline-offset:1px}
.ask-form .btn{width:100%}

/* ── СТРАНИЦА ЩЕНКА ──
   Правка Лины 11.08 вечер: «Подробнее» ведёт на страницу щенка, а не на плашку.
   Правила модального окна удалены вместе с его разметкой. */
.pup-page{padding:14px 0 var(--sp)}
.crumbs{font-size:var(--fs-xs);color:var(--ink2);margin-bottom:14px}
.crumbs a{color:var(--ink2)}
.crumbs span{opacity:.5;margin:0 4px}
.pp-grid{display:grid;gap:20px}
.pp-stage{position:relative;aspect-ratio:4/3;border-radius:var(--r);overflow:hidden;
  background:var(--soft);border:1px solid var(--line)}
.pp-stage img,.pp-stage video{width:100%;height:100%;object-fit:cover;display:block}
.pp-stage img[hidden],.pp-stage video[hidden]{display:none}
.pp-stage video{background:#000;object-fit:contain}
.pp-thumbs{display:flex;gap:8px;margin-top:10px;overflow-x:auto;scrollbar-width:none}
.pp-thumbs::-webkit-scrollbar{display:none}
.pp-th{flex:0 0 auto;width:64px;height:64px;min-height:64px;padding:0;border:2px solid transparent;
  border-radius:12px;overflow:hidden;background:var(--soft);cursor:pointer;position:relative}
.pp-th img{width:100%;height:100%;object-fit:cover}
.pp-th.on{border-color:var(--gold)}
.pp-th.vid span{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  background:rgba(0,0,0,.42);color:#fff;font-size:20px;line-height:1}
.pp-info h1{font-size:var(--fs-h2);margin-bottom:6px}
.pp-price{font-size:var(--fs-h3);font-weight:600;margin-bottom:16px}
.pp-rows{display:grid;gap:10px;margin-bottom:20px}
.pp-rows div{display:flex;justify-content:space-between;gap:16px;padding-bottom:10px;
  border-bottom:1px solid var(--line);font-size:var(--fs-sm)}
.pp-rows span{color:var(--ink2)}
.pp-rows b{font-weight:600;text-align:right}
.pp-cta .btn{width:100%}
.pp-note{margin-top:12px;font-size:var(--fs-xs);color:var(--ink2);line-height:1.5}
.pp-text{margin-top:30px;max-width:44em}
.pp-text h2{font-size:var(--fs-h3);margin:24px 0 8px}
.pp-text p{font-size:var(--fs-sm);color:var(--ink2);line-height:1.6}
.pp-args{display:grid;gap:14px;margin-top:32px}
.pp-arg{background:var(--paper);border:1px solid var(--line-2);border-radius:var(--r);padding:22px}
.pp-arg b{display:block;font:600 var(--fs-body)/1.3 Golos,-apple-system,'Segoe UI',sans-serif;margin-bottom:8px}
.pp-arg p{font-size:var(--fs-sm);color:var(--ink2);line-height:1.55}
.pp-breed{margin-top:32px;background:var(--cream);border:1px solid var(--gold-line);
  border-radius:var(--r);padding:26px}
.pp-breed h2{font-size:var(--fs-h3);margin-bottom:16px}
.pp-two{display:grid;gap:14px}
.pp-two ul{margin:0;padding:0;display:grid;gap:10px}
.pp-two li{list-style:none;padding-left:26px;position:relative;font-size:var(--fs-sm);
  line-height:1.5;color:var(--ink2)}
.pp-two li::before{content:"✓";position:absolute;left:0;top:0;color:var(--gold-deep);font-weight:600}
.pp-two .minus li::before{content:"–";color:var(--ink2)}
.pp-more{margin-top:16px}
@media(min-width:820px){
  .pp-grid{grid-template-columns:1.05fr .95fr;gap:34px;align-items:start}
  .pp-args{grid-template-columns:1fr 1fr}
  .pp-two{grid-template-columns:1fr 1fr;gap:26px}
  .pp-cta .btn{width:auto;min-width:280px}
}

/* ── ВЫБОР МЕССЕНДЖЕРА ──
   Правка Дмитрия 11.08: значки мессенджеров живут внутри кнопки связи,
   а не отдельным рядом вверху страницы. На телефоне окно приходит снизу,
   от большого пальца, на десктопе становится обычным окном по центру. */
.mes{position:fixed;inset:0;z-index:80;display:flex;align-items:flex-end;justify-content:center}
.mes[hidden]{display:none}
.mes-back{position:absolute;inset:0;background:rgba(44,37,33,.55);backdrop-filter:blur(2px)}
.mes-win{position:relative;z-index:1;width:100%;max-width:460px;max-height:92vh;overflow-y:auto;
  background:var(--paper);border:1px solid var(--line-2);border-radius:22px 22px 0 0;
  padding:24px 20px calc(22px + env(safe-area-inset-bottom));
  box-shadow:0 -30px 70px -40px rgba(60,40,20,.8)}
.mes-x{position:absolute;right:12px;top:12px;width:44px;height:44px;border-radius:50%;
  border:1px solid var(--line-2);background:var(--paper);font-size:var(--fs-h3);line-height:1;
  color:var(--ink);cursor:pointer}
.mes-x:hover{background:var(--gold-soft)}
.mes-win h3{margin-bottom:6px;padding-right:52px}
.mes-sub{font-size:var(--fs-xs);line-height:1.5;color:var(--ink2);margin-bottom:20px;padding-right:52px}
/* на узком экране значки по два в ряд: подпись «ВКонтакте» в четверть ширины не влезает */
.mes-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
@media(min-width:440px){.mes-row{grid-template-columns:repeat(4,minmax(0,1fr))}
  .mes-app b{font-size:var(--fs-xs)}
  .mes-app img{width:56px;height:56px}}
/* плитка мессенджера: заметная сама по себе, а не бледный прямоугольник.
   Цвет держим свой, тёплый: фирменные цвета мессенджеров приходят только
   значком и мягким свечением под ним, большими заливками они бы спорили
   с палитрой сайта и вернули бы зелёный, которого по правке Лины быть не должно. */
.mes-app{display:flex;flex-direction:column;align-items:center;gap:12px;padding:18px 6px 16px;
  border:1px solid var(--gold-line);border-radius:18px;text-decoration:none;
  background:linear-gradient(180deg,var(--paper) 0%,var(--cream) 100%);
  box-shadow:0 10px 22px -18px rgba(120,80,30,.55);
  transition:border-color .2s,background .25s,transform .18s ease,box-shadow .25s}
.mes-app:hover,.mes-app:focus-visible{border-color:var(--gold);
  background:linear-gradient(180deg,#FFFDF9 0%,var(--gold-soft) 100%);
  transform:translateY(-3px);box-shadow:0 18px 30px -18px rgba(150,112,38,.75)}
.mes-app:active{transform:translateY(0);box-shadow:0 6px 14px -12px rgba(150,112,38,.75)}
.mes-app img{width:64px;height:64px;border-radius:50%;transition:transform .18s ease}
.mes-app:hover img{transform:scale(1.05)}
.mes-app b{font-size:var(--fs-sm);font-weight:600}
/* свечение под значком берёт цвет самого мессенджера: узнаваемость без заливки */
.mes-app[data-mes="whatsapp"] img{box-shadow:0 8px 18px -6px rgba(37,211,102,.55)}
.mes-app[data-mes="telegram"] img{box-shadow:0 8px 18px -6px rgba(41,169,235,.55)}
.mes-app[data-mes="max"] img{box-shadow:0 8px 18px -6px rgba(96,60,200,.55)}
.mes-app[data-mes="vk"] img{box-shadow:0 8px 18px -6px rgba(76,120,168,.6)}
/* сам текст запроса виден в окне: человек знает, что уйдёт менеджеру,
   а если копирование не сработало, текст можно выделить и скопировать руками */
.mes-req{margin-bottom:18px;padding:14px 16px;border:1px solid var(--gold-line);border-radius:16px;
  background:var(--cream)}
.mes-req[hidden]{display:none}
.mes-req-t{font-size:var(--fs-xs);line-height:1.5;color:var(--ink);white-space:pre-line;
  max-height:7.5em;overflow-y:auto;-webkit-user-select:text;user-select:text}
.mes-req-b{display:block;width:100%;margin-top:12px;min-height:48px;padding:0 18px;
  border:1px solid var(--gold);border-radius:12px;background:var(--paper);cursor:pointer;
  font:600 var(--fs-xs)/1.2 Golos,sans-serif;color:var(--ink);
  transition:background .2s,border-color .2s}
.mes-req-b:hover{background:var(--gold-soft)}
/* Пояснение про WhatsApp: стоит под кнопкой копирования, а не вместо
   подписи со сроком ответа. Правка Дмитрия 13.08. */
.mes-req-how{margin-top:10px;font-size:var(--fs-xs);line-height:1.45;color:var(--ink2)}
.mes-copy{margin-top:14px;font-size:var(--fs-xs);line-height:1.5;color:var(--gold-deep)}
.mes-copy[hidden]{display:none}
/* трубка отдельной строкой: часть людей звонит, а не пишет */
.mes-call{display:flex;align-items:center;gap:14px;margin-top:12px;padding:14px 16px;
  border:1px solid var(--gold-line);border-radius:18px;text-decoration:none;color:inherit;
  background:linear-gradient(180deg,var(--paper) 0%,var(--cream) 100%);
  box-shadow:0 10px 22px -18px rgba(120,80,30,.55);
  transition:border-color .2s,background .25s,transform .18s ease,box-shadow .25s}
.mes-call:hover,.mes-call:focus-visible{border-color:var(--gold);
  background:linear-gradient(180deg,#FFFDF9 0%,var(--gold-soft) 100%);
  transform:translateY(-3px);box-shadow:0 18px 30px -18px rgba(150,112,38,.75)}
.mes-call:active{transform:translateY(0)}
.mes-call .ic{display:grid;place-items:center;width:56px;height:56px;flex:0 0 auto;border-radius:50%;
  background:linear-gradient(180deg,#F7EBD3 0%,#EBD8AE 100%);color:var(--gold-deep);
  box-shadow:0 8px 18px -6px rgba(150,112,38,.5)}
.mes-call .ic svg{width:26px;height:26px;fill:currentColor}
.mes-call b{display:block;font-size:var(--fs-body);font-weight:600}
.mes-call span span{display:block;font-size:var(--fs-xs);color:var(--ink2)}
@media(min-width:600px){
  .mes{align-items:center}
  /* окно чуть шире: четыре плитки в ряд перестают жать подпись «ВКонтакте» */
  .mes-win{max-width:520px;border-radius:var(--r);padding:26px 24px 24px;
    box-shadow:0 40px 80px -40px rgba(60,40,20,.8)}
}

/* ── ДВЕ КОЛОНКИ, «за что любят» и «что учитывать» ── */
.pair{display:grid;gap:14px}
@media(min-width:760px){.pair{grid-template-columns:1fr 1fr;gap:18px}}
.pn{border-radius:var(--r);padding:26px;border:1px solid var(--line-2);background:var(--paper)}
.pn h3{margin-bottom:16px}
.pn ul{margin:0;padding:0;display:grid;gap:12px}
.pn li{list-style:none;padding-left:28px;position:relative;font-size:var(--fs-sm);line-height:1.5;color:var(--ink2)}
.pn.yes li::before{content:"✓";position:absolute;left:0;top:0;color:var(--gold-deep);font-weight:600}
.pn.no li::before{content:"–";position:absolute;left:0;top:0;color:var(--ink2);font-weight:600}
.pn.no{background:var(--soft);border-color:var(--gold-line)}

/* ── ФОТОПАРА ── */
.duo{display:grid;gap:14px;margin-top:24px}
@media(min-width:760px){.duo{grid-template-columns:1fr 1fr;gap:18px}}
.dq{border-radius:var(--r);overflow:hidden;background:var(--paper);border:1px solid var(--line-2)}
.dq .im{aspect-ratio:4/3;background:var(--soft)}
.dq .im img{width:100%;height:100%;object-fit:cover}
.dq .t{padding:18px 20px}
.dq .t b{display:block;font-size:var(--fs-body);margin-bottom:6px}
.dq .t p{font-size:var(--fs-sm);color:var(--ink2);line-height:1.5}

/* ── ШАГИ ── */
.steps{display:grid}
.st{display:grid;grid-template-columns:40px 1fr;gap:16px;padding:17px 0;border-bottom:1px solid var(--line)}
.st:last-child{border-bottom:0}
.st .n{width:34px;height:34px;border-radius:50%;background:var(--gold-soft);color:var(--gold-deep);
  display:grid;place-items:center;font-size:var(--fs-xs);font-weight:600}
.st b{display:block;font-size:var(--fs-body);font-weight:600;margin-bottom:3px}
.st p{font-size:var(--fs-sm);color:var(--ink2);line-height:1.45}

/* ── ОТЗЫВЫ ── */
.rev{display:grid;gap:16px}
@media(min-width:820px){.rev{grid-template-columns:repeat(3,1fr);gap:20px}}
.rv{background:var(--paper);border:1px solid var(--line-2);border-radius:var(--r);overflow:hidden;
  display:flex;flex-direction:column}
.rv .pic{aspect-ratio:4/3;background:var(--soft)}
.rv .pic img{width:100%;height:100%;object-fit:cover}
.rv .txt{padding:20px;flex:1;display:flex;flex-direction:column}
.rv blockquote{margin:0 0 16px;font:400 var(--fs-body)/1.55 Golos,-apple-system,'Segoe UI',sans-serif;font-style:italic}
.rv .who{font-size:var(--fs-sm);font-weight:600}
.rv .city{font-size:var(--fs-xs);color:var(--ink2)}
.rv .src{margin-top:auto;padding-top:14px;font-size:var(--fs-xs);color:var(--ink2)}

/* ── ЦЕНА ── */
.range{margin:22px 0;padding:26px;background:var(--paper);border:1px solid var(--line-2);border-radius:var(--r)}
.range .bar{position:relative;height:10px;border-radius:999px;margin:16px 0 40px;
  background:linear-gradient(90deg,var(--gold-soft),var(--gold-line),var(--blush))}
.range .bar i{position:absolute;top:-6px;width:22px;height:22px;border-radius:50%;background:#fff;
  border:3px solid var(--gold)}
.range .bar i.a{left:0}
.range .bar i.b{right:0;border-color:var(--blush-line)}
.range .ends{display:flex;justify-content:space-between;font-size:var(--fs-xs);color:var(--ink2)}
.range .ends b{display:block;font:600 var(--fs-h3)/1.3 Golos,-apple-system,'Segoe UI',sans-serif;color:var(--ink)}
.range .mid{font-size:var(--fs-xs);color:var(--ink2);margin-top:-28px}

/* ── ПЛАШКА ДЕЙСТВИЯ ── */
.conv{margin-top:28px;background:var(--paper);border:1px solid var(--gold);border-radius:var(--r);
  padding:26px;display:grid;gap:18px;align-items:center}
.conv b{display:block;font:600 var(--fs-h3)/1.3 Golos,-apple-system,'Segoe UI',sans-serif;margin-bottom:8px}
.conv p{font-size:var(--fs-sm);color:var(--ink2);line-height:1.5}
.conv .btn{width:100%}
@media(min-width:780px){.conv{grid-template-columns:1fr auto;gap:30px}.conv .btn{width:auto}}

/* ── КОРОТКО О НАС ── */
.about{display:grid;gap:20px;align-items:center}
@media(min-width:940px){.about{grid-template-columns:1fr 1fr;gap:44px}}
.about-pic{border-radius:var(--r);overflow:hidden;background:var(--soft);aspect-ratio:4/3;
  border:1px solid var(--line-2)}
.about-pic img{width:100%;height:100%;object-fit:cover}

/* ── ФИНАЛ ── */
.final{padding:var(--sp) 0;background:linear-gradient(180deg,#F7EBD6 0%,#F3DED6 100%);text-align:center}
.final h2{margin-bottom:14px}
.final .sub{max-width:30em;margin:0 auto 26px;font-size:var(--fs-body);color:var(--ink2)}
.final .btn.main{min-width:290px}

/* ── ПОДВАЛ ── */
footer{padding:34px 0 40px;border-top:1px solid var(--line);color:var(--ink2);font-size:var(--fs-xs)}
footer .fnav{display:flex;flex-wrap:wrap;gap:12px 24px;margin-bottom:14px}
footer a{text-decoration:none;border-bottom:1px solid var(--gold-line)}

/* ── ПОЧЕМУ У НАС: полоса причин под первым экраном (правка 11.08 вечер) ── */
.why{padding:22px 0 26px;background:var(--cream);border-top:1px solid var(--line);
  border-bottom:1px solid var(--line)}
.why-row{display:grid;gap:14px}
.wi b{display:block;font:600 var(--fs-sm)/1.35 Golos,-apple-system,'Segoe UI',sans-serif;margin-bottom:5px}
.wi p{font-size:var(--fs-xs);color:var(--ink2);line-height:1.5}
.why-now{margin-top:18px;padding-top:16px;border-top:1px solid var(--gold-line);
  font-size:var(--fs-xs);color:var(--ink2);line-height:1.55}
@media(min-width:700px){.why-row{grid-template-columns:repeat(4,1fr);gap:24px}}

/* ── НЕ ЗНАЮ, КАКОЙ ПОДОЙДЁТ (правка 11.08 вечер) ── */
.dunno{background:var(--blush);border:1px solid var(--blush-line);border-radius:var(--r);
  padding:26px;display:grid;gap:18px;align-items:center}
.dunno b{display:block;font:600 var(--fs-h3)/1.3 Golos,-apple-system,'Segoe UI',sans-serif;margin-bottom:8px}
.dunno p{font-size:var(--fs-sm);color:var(--ink2);line-height:1.55}
.dunno .btn{width:100%}
@media(min-width:780px){.dunno{grid-template-columns:1fr auto;gap:30px}.dunno .btn{width:auto}}

/* «За что их любят» выделено: правка 11.08 вечер, «стоит усилить и выделить цветом» */
.pn.hi{background:var(--gold-soft);border-color:var(--gold)}

/* документы в подвале и пояснение у липкой кнопки (правка 11.08 вечер) */
footer .fdoc{display:flex;flex-wrap:wrap;gap:10px 20px;margin-bottom:14px}
.dock-why{font-size:var(--fs-xs);color:var(--ink2);text-align:center;margin-bottom:7px;line-height:1.35}
.final-alt{margin-top:16px}

/* ── ЛИПКАЯ КНОПКА НА ТЕЛЕФОНЕ ── */
.dock{position:fixed;left:0;right:0;bottom:0;z-index:50;display:none;
  padding:9px 16px calc(9px + env(safe-area-inset-bottom));
  background:rgba(253,250,246,.97);backdrop-filter:blur(10px);border-top:1px solid var(--line)}
.dock a{display:flex;align-items:center;justify-content:center;min-height:56px;border-radius:14px;
  text-decoration:none;font:600 var(--fs-body)/1 Golos,sans-serif;color:#3B2E18;border:1px solid #DCBE86;
  background:linear-gradient(180deg,#F4E2BC 0%,#E6CB92 100%)}

/* ── ПРЕДУПРЕЖДЕНИЕ О КУКАХ ──
   Правка: «у нас не вылазит предупреждение о куках, это должно прям сразу вылазить» */
.cookie{position:fixed;left:12px;right:12px;bottom:12px;z-index:60;display:none;
  background:var(--paper);border:1px solid var(--gold-line);border-radius:16px;padding:14px 16px;
  box-shadow:0 24px 50px -30px rgba(90,60,25,.7)}
.cookie.show{display:grid;gap:12px;grid-template-columns:1fr auto;align-items:center}
.cookie p{font-size:var(--fs-xs);color:var(--ink2);line-height:1.45}
.cookie a{color:var(--ink)}
.cookie .btn{min-height:48px;padding:0 22px;font-size:var(--fs-sm)}
@media(max-width:359px){
  .cookie.show{grid-template-columns:1fr}
  .cookie .btn{width:100%}
}
@media(min-width:780px){
  .cookie{left:auto;right:20px;bottom:20px;max-width:520px}
}

/* ── БРЕЙКПОИНТЫ ── */
@media(min-width:600px){
  .hero .kicker{display:block}
  .underhero .wrap{grid-template-columns:1fr auto;align-items:center;gap:26px}
  .underhero .btn{width:auto}
  .hero .hcta .btn{width:auto;min-width:250px}
  .facts{grid-template-columns:repeat(3,1fr)}
  .facts div:last-child{grid-column:auto}
}
@media(min-width:940px){
  .top nav{display:flex}
  .nav-cta{display:inline-flex}
  .burger{display:none}
  .menu{display:none !important}
  .hero{padding:36px 0 30px}
  .hgrid{grid-template-columns:1.02fr .98fr;grid-template-rows:auto auto;
    column-gap:52px;row-gap:26px;align-content:center}
  .htext{grid-column:1;grid-row:1;align-self:end}
  .hcta{grid-column:1;grid-row:2;align-self:start}
  .hmos{grid-column:2;grid-row:1/3;margin-bottom:0;align-self:center}
  .two{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}
}
@media(max-width:939px){
  .dock{display:block}
  body{padding-bottom:84px}
  .conv{padding:22px}
  .cookie{bottom:calc(84px + env(safe-area-inset-bottom))}
}
