/* Посадочная под платный трафик. Префикс lp26- уникальный: классы вроде .btn/.row
   в шаблоне new-2017 свои и конфликтуют даже под скоупом (грабли размерного хаба 10.07). */

/* --- шапка и футер сайта: режем всё, что уводит с одной цели --- */
.header-top__menu,
.header-top-social,
.header .menuBox,
.header__center,
.header__right,
.header .btn-burger,
.mobile-sticky-button { display: none !important; }
.header .logo .logo__top,
.header .logo .logo__bottom { filter: brightness(0) saturate(100%) invert(17%) sepia(14%) saturate(2214%) hue-rotate(255deg) brightness(94%) contrast(89%); opacity: 1; }
.footer .widget,
.footer .footerNav,
.footer .footerInfo { display: none !important; }
/* Плавающая кнопка YClients из шаблона: она открывает форму флагмана на любой
   странице сайта, на городской посадочной это увело бы петербурженку в Москву.
   Своя запись на странице есть в четырёх местах. */
a.yButton { display: none !important; }
/* Липкая шапка шаблона со своей кнопкой «Записаться»: она открывает форму
   Битрикс24, а не запись в выбранный город. Две разные воронки на одной
   странице ломают и сценарий, и атрибуцию. */
.head-sticky { display: none !important; }
/* кнопка «наверх» шаблона: на мобильном налезала на карту салона */
.art-top { display: none !important; }
/* Шапка шаблона липкая (fixed) и держит 95 px экрана на мобильном постоянно.
   Меню на посадочной скрыто, в шапке остался один логотип — прибивать её к верху
   незачем. Открепляем: уезжает вместе со страницей, экран остаётся контенту. */
.header { position: absolute !important; }

.lp26 {
  --iris:#4A2E4A; --iris-deep:#3a2439; --terra:#C8735A; --terra-soft:#e0a892;
  --canvas:#FBF8F6; --cream:#F1ECE0; --rose:#F6EEF2;
  --ink:#2A2130; --muted:#6B5B66; --line:#E7DEDA;
  background: var(--canvas);
  color: var(--ink);
  font-family: "Geologica", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  font-weight: 300;
  line-height: 1.6;
  padding-top: 92px;
  padding-bottom: 40px;
}
.lp26 * { box-sizing: border-box; }
.lp26 img { max-width: 100%; height: auto; display: block; }
.lp26 .lp26-wrap { max-width: 1080px; margin: 0 auto; padding: 0 24px; }
.lp26 .lp26-narrow { max-width: 1080px; margin: 0 auto; padding: 0 24px; }
.lp26 .lp26-narrow > * { max-width: 820px; }
.lp26 .lp26-narrow > .lp26-author { max-width: none; }

.lp26 h1, .lp26 h2, .lp26 h3 { font-family: "Spectral", Georgia, serif; font-weight: 400; color: var(--ink); }
.lp26 h1 { font-size: 42px; line-height: 1.14; margin: 0 0 16px; letter-spacing: -.01em; }
.lp26 h2 { font-size: 30px; line-height: 1.22; margin: 0 0 20px; }
.lp26 h3 { font-size: 19px; font-weight: 500; margin: 0 0 8px; }
.lp26 p { font-size: 16px; margin: 0 0 14px; }
.lp26 .lp26-ac { font-style: italic; color: var(--iris); }
.lp26 .lp26-sec { padding: 54px 0; }
.lp26 .lp26-sec--tint { background: #fff; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }

/* --- кнопки --- */
.lp26 .lp26-cta {
  display: inline-flex; align-items: center; justify-content: center;
  background: var(--iris); color: #fff !important; text-decoration: none !important;
  border: 0; cursor: pointer; text-align: center;
  font-family: inherit; font-size: 14px; font-weight: 500;
  letter-spacing: .06em; text-transform: uppercase;
  padding: 17px 40px; min-height: 54px; line-height: 1.2;
  transition: background .15s;
}
.lp26 .lp26-cta:hover { background: var(--iris-deep); }
.lp26 .lp26-cta--ghost { background: transparent; color: var(--iris) !important; border: 1px solid var(--iris); }
.lp26 .lp26-cta--ghost:hover { background: var(--rose); }
.lp26 .lp26-cta--wide { width: 100%; }

/* --- первый экран --- */
.lp26-hero { padding: 26px 0 40px; }
/* текстовая колонка шире картинки: иначе строка адреса с метро ломается пополам
   и читается как два разных адреса */
.lp26-hero .lp26-grid { display: grid; grid-template-columns: 1.18fr .82fr; gap: 40px; align-items: center; }
.lp26-eyebrow { display: inline-block; background: var(--rose); color: var(--iris); font-size: 11px; letter-spacing: .1em; text-transform: uppercase; padding: 6px 14px; margin-bottom: 16px; font-weight: 500; }
.lp26-lead { font-size: 17px; color: var(--muted); margin: 0 0 22px; max-width: 34em; }
.lp26-addr { margin: 0 0 22px; padding: 0; list-style: none; }
.lp26-addr li { font-size: 15px; padding: 7px 0 7px 26px; position: relative; border-bottom: 1px solid var(--line); }
.lp26-addr li:last-child { border-bottom: 0; }
.lp26-addr li:before { content: ""; position: absolute; left: 6px; top: 15px; width: 7px; height: 7px; background: var(--terra); border-radius: 50%; }
.lp26-addr b { font-weight: 500; }
.lp26-addr span { color: var(--muted); }
/* Петербург: один салон. Список из одного пункта выглядит как обрубок,
   поэтому там же разметка без буллета — адрес строкой, метро под ним. */
.lp26-addr--solo { margin: 0 0 22px; }
.lp26-addr--solo b { display: block; font-size: 16.5px; font-weight: 500; }
.lp26-addr--solo span { display: block; margin-top: 3px; font-size: 14px; }
.lp26-price { background: #fff; border: 1px solid var(--line); border-left: 3px solid var(--terra); padding: 14px 18px; margin: 0 0 22px; font-size: 15px; }
.lp26-price b { font-weight: 500; font-size: 19px; color: var(--terra); line-height: 1.25; }
.lp26-price em { display: block; font-style: normal; color: var(--muted); font-size: 13.5px; margin-top: 5px; }
/* Гарантия вынесена на первый экран: до неё раньше надо было доскроллить
   до блока возражений, а это главный ответ на «вдруг зря потрачу деньги». */
.lp26-price .lp26-guar { display: block; position: relative; margin-top: 10px; padding: 9px 0 0 22px;
  border-top: 1px solid var(--line); font-size: 14px; font-weight: 500; color: var(--ink); }
.lp26-price .lp26-guar:before { content: "\2713"; position: absolute; left: 2px; top: 9px;
  color: var(--terra); font-weight: 400; }
.lp26-actions { display: flex; flex-wrap: wrap; gap: 14px; align-items: center; }
.lp26-undercta { font-size: 13.5px; color: var(--muted); margin: 14px 0 0; }
.lp26-undercta a { color: var(--ink); text-decoration: none; font-weight: 500; border-bottom: 1px solid var(--line); }
.lp26-heroimg { position: relative; }
.lp26-heroimg img { width: 100%; object-fit: cover; }

/* --- полоска доверия --- */
.lp26-facts { background: var(--iris); color: #fff; padding: 26px 0; }
.lp26-facts .lp26-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.lp26-fact b { display: block; font-family: "Spectral", Georgia, serif; font-size: 27px; font-weight: 400; line-height: 1.1; margin-bottom: 4px; }
.lp26-fact span { font-size: 13px; color: rgba(255,255,255,.75); line-height: 1.4; display: block; }

/* --- шаги --- */
.lp26-steps { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; margin-top: 26px; }
.lp26-step { background: #fff; border: 1px solid var(--line); padding: 22px 20px; }
.lp26-step .lp26-num { font-family: "Spectral", Georgia, serif; font-size: 15px; color: var(--terra); display: block; margin-bottom: 10px; letter-spacing: .1em; }
.lp26-step p { font-size: 14.5px; color: var(--muted); margin: 0; }
.lp26-take { background: var(--cream); padding: 22px 26px; margin-top: 24px; font-size: 15px; }
.lp26-take b { font-weight: 500; }

/* «Сейчас / после подбора»: женщина узнаёт себя слева и хочет то, что справа */
.lp26-ba { display: grid; grid-template-columns: 1fr 1fr; gap: 0; margin-top: 26px; border: 1px solid var(--line); }
.lp26-ba > div { padding: 26px 28px; }
.lp26-ba .lp26-ba-now { background: #fff; border-right: 1px solid var(--line); }
.lp26-ba .lp26-ba-after { background: var(--iris); color: #fff; }
.lp26-ba h3 { font-size: 19px; margin-bottom: 16px; }
.lp26-ba .lp26-ba-after h3 { color: #fff; }
.lp26-ba ul { margin: 0; padding: 0; list-style: none; }
.lp26-ba li { position: relative; padding-left: 26px; margin-bottom: 12px; font-size: 15.5px; line-height: 1.5; }
.lp26-ba li:last-child { margin-bottom: 0; }
.lp26-ba .lp26-ba-now li { color: var(--muted); }
.lp26-ba .lp26-ba-now li:before { content: "×"; position: absolute; left: 4px; top: -1px; color: #b9a7b0; font-size: 18px; }
.lp26-ba .lp26-ba-after li { color: rgba(255,255,255,.92); }
.lp26-ba .lp26-ba-after li:before { content: "✓"; position: absolute; left: 2px; top: 0; color: var(--terra-soft); font-size: 15px; }

/* разница салонов */
.lp26-diff { background: var(--cream); padding: 26px 30px; margin-top: 26px; }
.lp26-diff h3 { font-size: 20px; margin-bottom: 10px; }
.lp26-diff p { font-size: 15px; margin-bottom: 10px; }
.lp26-diff p:last-child { margin-bottom: 0; }
.lp26-band { margin: 30px 0 0; }
.lp26-band img { width: 100%; height: 300px; object-fit: cover; object-position: center 40%; }
/* вертикальный кадр в горизонтальной полосе: держим в кадре средние ряды ячеек */
.lp26-band img.lp26-band--tall { object-position: center 50%; }
.lp26-band figcaption { font-size: 14.5px; color: var(--muted); padding-top: 12px; max-width: 46em; }

/* --- салоны --- */
.lp26-salons { display: grid; gap: 26px; margin-top: 8px; }
.lp26-salons--two { grid-template-columns: 1fr 1fr; }
.lp26-salon { background: #fff; border: 1px solid var(--line); display: flex; flex-direction: column; }
.lp26-salon > img { width: 100%; aspect-ratio: 3 / 2; height: auto; object-fit: cover; }
/* кадр фасада: держим в плашке вывеску салона, а не окна верхних этажей */
.lp26-salon > img.lp26-shift-up { object-position: center 34%; }
.lp26-salon .lp26-body { padding: 24px; display: flex; flex-direction: column; flex: 1; }
.lp26-salon .lp26-brand { font-size: 11px; letter-spacing: .09em; text-transform: uppercase; color: var(--terra); margin-bottom: 8px; }
.lp26-salon dl { margin: 0 0 18px; font-size: 15px; }
.lp26-salon dt { color: var(--muted); font-size: 12.5px; text-transform: uppercase; letter-spacing: .05em; margin-top: 12px; }
.lp26-salon dd { margin: 2px 0 0; }
.lp26-salon .lp26-map { width: 100%; height: 220px; border: 0; margin-bottom: 18px; background: var(--cream); }
.lp26-salon .lp26-cta { margin-top: auto; }
/* Один салон на странице: фото слева во всю высоту карточки, справа адрес, карта и кнопка.
   Высоту задаёт правая колонка, фото подстраивается — иначе под картой висит пустота. */
/* Фото выведено из потока: у вертикального кадра собственная пропорция тянула строку
   вниз, и под кнопкой оставалась пустота в пол-экрана. Высоту задаёт только текст. */
.lp26-salon--wide { position: relative; display: grid; grid-template-columns: 1fr 1fr; }
.lp26-salon--wide > img { position: absolute; top: 0; bottom: 0; left: 0; width: 50%; height: 100%; object-position: center 42%; }
.lp26-salon--wide .lp26-body { grid-column: 2 / 3; }
.lp26-salon--wide .lp26-map { height: 300px; margin-bottom: 0; }
.lp26-salon--wide .lp26-cta { margin-top: 18px; }

/* --- до/после --- */
.lp26-proof { display: grid; grid-template-columns: .9fr 1.1fr; gap: 40px; align-items: center; }

/* --- отзывы --- */
.lp26-revs { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; margin-top: 26px; }
.lp26-rev { background: #fff; border: 1px solid var(--line); padding: 24px; display: flex; flex-direction: column; }
.lp26-rev .lp26-stars { color: var(--terra); letter-spacing: .12em; font-size: 13px; margin-bottom: 12px; }
.lp26-rev blockquote { margin: 0 0 14px; font-family: "Spectral", Georgia, serif; font-size: 17px; line-height: 1.45; font-style: italic; }
.lp26-rev .lp26-shift { display: inline-block; background: var(--rose); color: var(--iris); font-size: 13px; padding: 4px 11px; margin-bottom: 12px; font-weight: 500; }
.lp26-rev cite { margin-top: auto; font-style: normal; font-size: 12.5px; color: var(--muted); }
.lp26-rev cite a { color: var(--muted); }

/* --- об Алине --- */
.lp26-author { display: grid; grid-template-columns: 300px 1fr; gap: 36px; align-items: center; }
.lp26-author img { width: 100%; }

/* --- FAQ --- */
.lp26-faq { margin-top: 18px; }
.lp26-faq details { border-bottom: 1px solid var(--line); padding: 16px 0; }
.lp26-faq summary { font-weight: 400; font-size: 17px; cursor: pointer; list-style: none; display: flex; justify-content: space-between; gap: 16px; font-family: "Spectral", Georgia, serif; }
.lp26-faq summary::-webkit-details-marker { display: none; }
.lp26-faq summary::after { content: "+"; color: var(--terra); flex: none; }
.lp26-faq details[open] summary::after { content: "\2212"; }
.lp26-faq .lp26-a { font-size: 15px; color: var(--muted); padding-top: 10px; }

/* --- финал --- */
.lp26-final { background: var(--iris); color: #fff; text-align: center; padding: 60px 24px; }
.lp26-final h2 { color: #fff; }
.lp26-final p { color: rgba(255,255,255,.8); max-width: 34em; margin: 0 auto 24px; }
.lp26-final .lp26-cta { background: #fff; color: var(--iris) !important; }
.lp26-final .lp26-cta:hover { background: var(--cream); }
.lp26-final .lp26-phone { display: block; margin-top: 18px; color: #fff; text-decoration: none; font-size: 15px; }
.lp26-legal { font-size: 12.5px; color: var(--muted); text-align: center; padding: 26px 24px 0; }
.lp26-legal a { color: var(--muted); }

/* --- липкая полоса на мобильном (своя, вместо шаблонной) --- */
.lp26-sticky { display: none; }

/* --- модалка записи --- */
.lp26-modal { position: fixed; inset: 0; z-index: 100000; display: none; }
.lp26-modal.is-open { display: block; }
.lp26-modal__bg { position: absolute; inset: 0; background: rgba(28,26,23,.66); }
.lp26-modal__box { position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); width: min(460px, calc(100vw - 32px)); max-height: calc(100vh - 40px); background: #fff; display: flex; flex-direction: column; overflow: hidden; }
.lp26-modal__box--wide { width: min(430px, calc(100vw - 24px)); height: min(760px, calc(100vh - 32px)); }
.lp26-modal__head { display: flex; align-items: center; justify-content: space-between; padding: 16px 18px; border-bottom: 1px solid var(--line); flex: none; }
.lp26-modal__title { font-family: "Spectral", Georgia, serif; font-size: 18px; color: var(--ink); }
.lp26-modal__close { background: none; border: 0; font-size: 26px; line-height: 1; color: var(--muted); cursor: pointer; padding: 0 4px; }
.lp26-modal__body { padding: 18px; overflow: auto; }
.lp26-modal iframe { width: 100%; height: 100%; border: 0; flex: 1; }
.lp26-pick { position: relative; display: block; width: 100%; text-align: left; background: #fff; border: 1px solid #cdbfc7; border-left: 3px solid var(--terra); padding: 16px 42px 16px 18px; margin-bottom: 12px; cursor: pointer; font-family: inherit; transition: background .12s, border-color .12s; }
.lp26-pick:hover, .lp26-pick:focus-visible { border-color: var(--iris); background: var(--rose); }
.lp26-pick:after { content: "›"; position: absolute; right: 18px; top: 50%; transform: translateY(-55%); font-size: 26px; line-height: 1; color: var(--terra); }
.lp26-pick b { display: block; font-size: 16px; font-weight: 500; margin-bottom: 3px; color: var(--ink); }
.lp26-pick span { font-size: 13.5px; color: var(--muted); }

/* --- планшет --- */
@media (max-width: 900px) {
  .lp26 h1 { font-size: 34px; }
  .lp26 h2 { font-size: 26px; }
  .lp26-hero .lp26-grid { grid-template-columns: 1fr; gap: 26px; }
  .lp26-hero .lp26-heroimg { order: -1; }
  .lp26-hero .lp26-heroimg img { max-height: 260px; object-position: center 30%; }
  .lp26-facts .lp26-grid { grid-template-columns: 1fr 1fr; gap: 18px; }
  .lp26-steps { grid-template-columns: 1fr 1fr; }
  .lp26-ba { grid-template-columns: 1fr; }
  .lp26-ba .lp26-ba-now { border-right: 0; border-bottom: 1px solid var(--line); }
  .lp26-ba > div { padding: 22px 22px; }
  .lp26-diff { padding: 22px 22px; }
  .lp26-salons--two { grid-template-columns: 1fr; }
  .lp26-salon--wide { grid-template-columns: 1fr; }
  /* кадр вертикальный: рамка 3/2 срезала 52% петербургского входа, 4/5 оставляет 11% */
  .lp26-salon--wide > img { position: static; width: 100%; aspect-ratio: 4 / 5; height: auto; }
  .lp26-salon--wide .lp26-body { grid-column: auto; }
  .lp26-salon--wide .lp26-map { height: 220px; }
  .lp26-band img { height: 220px; }
  .lp26-proof { grid-template-columns: 1fr; gap: 24px; }
  .lp26-revs { grid-template-columns: 1fr; }
  .lp26-author { grid-template-columns: 1fr; gap: 20px; }
  .lp26-author img { max-width: 240px; }
}

/* --- мобильный --- */
@media (max-width: 640px) {
  .lp26 { padding-top: min(calc(18vw + 8px), 120px); padding-bottom: 84px; }
  .lp26 h1 { font-size: 28px; }
  .lp26 h2 { font-size: 23px; }
  .lp26 .lp26-wrap, .lp26 .lp26-narrow { padding: 0 18px; }
  .lp26 .lp26-sec { padding: 40px 0; }
  .lp26-hero { padding: 14px 0 26px; }
  .lp26-hero .lp26-grid { gap: 18px; }
  .lp26-hero .lp26-heroimg img { max-height: none; aspect-ratio: 16 / 10; object-fit: cover; }
  .lp26-eyebrow { margin-bottom: 12px; }
  .lp26 h1 { margin-bottom: 12px; }
  .lp26-lead { margin-bottom: 16px; }
  .lp26-addr { margin-bottom: 16px; }
  .lp26-price { margin-bottom: 16px; }
  .lp26-lead { font-size: 15.5px; }
  .lp26 .lp26-cta { width: 100%; padding: 17px 20px; font-size: 13px; }
  .lp26-steps { grid-template-columns: 1fr; }
  .lp26-take { padding: 18px 20px; }
  .lp26-salon > img { aspect-ratio: 3 / 2; height: auto; }
  /* повторяем после общего правила: у широкой карточки кадр вертикальный */
  .lp26-salon--wide > img { aspect-ratio: 4 / 5; }
  .lp26-salon .lp26-body { padding: 20px; }
  .lp26-fact b { font-size: 23px; }
  .lp26-final { padding: 44px 20px; }
  .lp26-sticky {
    display: flex; position: fixed; left: 0; right: 0; bottom: 0; z-index: 9999;
    background: #fff; border-top: 1px solid var(--line); padding: 8px 12px;
    gap: 8px; box-shadow: 0 -2px 14px rgba(42,33,48,.08);
  }
  .lp26-sticky .lp26-cta { flex: 1; padding: 14px 10px; min-height: 48px; font-size: 12.5px; letter-spacing: .04em; }
  .lp26-sticky .lp26-tel {
    flex: none; width: 52px; display: flex; align-items: center; justify-content: center;
    border: 1px solid var(--iris); color: var(--iris); text-decoration: none; font-size: 20px;
  }
  .lp26-modal__box--wide { width: 100vw; height: 100vh; max-height: 100vh; top: 0; left: 0; transform: none; }
}

/* ============ v17: сегменты, галерея кейсов, видео, возражения ============ */

/* с чем приходят */
.lp26-seg { display: grid; grid-template-columns: 1fr 1fr; gap: 26px; margin-top: 26px; }
.lp26-seg-card { background: #fff; border: 1px solid var(--line); display: flex; flex-direction: column; }
.lp26-seg-card > img { width: 100%; display: block; }
.lp26-seg-card .lp26-seg-body { padding: 26px 28px; }
.lp26-seg-card h3 { font-size: 21px; margin-bottom: 10px; }
.lp26-seg-card p { font-size: 15.5px; margin-bottom: 12px; }
.lp26-seg-card p:last-child { margin-bottom: 0; }
.lp26-seg-card .lp26-seg-case { display: inline-block; background: var(--rose); color: var(--iris); font-size: 13px; font-weight: 500; padding: 5px 12px; margin-bottom: 12px; }

/* галерея до/после */
.lp26-cases { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin-top: 26px; }
.lp26-case { background: #fff; border: 1px solid var(--line); }
.lp26-case img { width: 100%; display: block; }
.lp26-case figcaption { padding: 12px 14px; font-size: 14px; color: var(--muted); text-align: center; }
.lp26-case figcaption b { color: var(--ink); font-weight: 500; }

/* видео */
.lp26-video { display: grid; grid-template-columns: 320px 1fr; gap: 40px; align-items: center; margin-top: 8px; }
.lp26-video .lp26-video-frame { position: relative; width: 100%; padding-top: 177.8%; background: var(--cream); }
.lp26-video .lp26-video-frame iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }

/* возражения */
.lp26-obj { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; margin-top: 26px; }
.lp26-obj-item { background: #fff; border: 1px solid var(--line); border-left: 3px solid var(--terra); padding: 22px 24px; }
.lp26-obj-item h3 { font-size: 18px; margin-bottom: 8px; }
.lp26-obj-item p { font-size: 15px; margin: 0; color: var(--muted); }

@media (max-width: 900px) {
  .lp26-seg { grid-template-columns: 1fr; }
  .lp26-cases { grid-template-columns: 1fr 1fr; }
  .lp26-video { grid-template-columns: 1fr; gap: 22px; }
  .lp26-video .lp26-video-frame { max-width: 300px; margin: 0 auto; }
  .lp26-obj { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  .lp26-cases { grid-template-columns: 1fr; }
  .lp26-seg-card .lp26-seg-body { padding: 20px 20px; }
  .lp26-obj-item { padding: 18px 18px; }
}


/* ============ v20: карты-ссылки вместо встроенной карты ============ */
/* Встроенный виджет Яндекс.Карт на живых страницах отдаёт пустую рамку
   (та же беда была на bustokratia.ru/contacts/stores/ — там от него отказались).
   Вместо ненадёжного iframe — две ссылки, они работают всегда. */
.lp26-mapbox { display: flex; gap: 10px; margin-bottom: 18px; flex-wrap: wrap; }
.lp26-maplink {
  flex: 1 1 0; min-width: 150px;
  display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  border: 1px solid var(--line); background: #fff; color: var(--iris) !important;
  text-decoration: none !important; padding: 13px 14px; font-size: 13.5px; text-align: center;
  transition: border-color .15s, background .15s;
}
.lp26-maplink:hover { border-color: var(--iris); background: var(--rose); }
.lp26-maplink:before { content: "→"; color: var(--terra); }

/* отзывы: одинаковая высота карточек, цитата не болтается */
.lp26-rev blockquote { flex: 1 0 auto; }

/* блок про Алину: фото крупнее, текст не убегает вправо */
.lp26-author { grid-template-columns: 380px 1fr; gap: 48px; align-items: start; }
.lp26-author img { width: 100%; }

@media (max-width: 900px) {
  .lp26-author { grid-template-columns: 1fr; }
  .lp26 .lp26-narrow > * { max-width: none; }
}

/* телефоны в карточках салонов шаблон красил в синий — возвращаем в палитру */
.lp26 .lp26-salon dd a, .lp26 .lp26-undercta a, .lp26 .lp26-rev cite a { color: var(--iris) !important; }

/* Заголовок шага, влезающий в две строки, сдвигал текст соседних карточек.
   Резервируем под заголовок две строки — тексты начинаются на одном уровне. */
.lp26-step h3 { min-height: 2.6em; display: flex; align-items: flex-start; }

/* мягкий второй сценарий под основной кнопкой в финале */
.lp26-final-soft { color: rgba(255,255,255,.7); font-size: 14.5px; margin: 22px auto 0; max-width: 34em; }
.lp26-final-soft a { color: #fff !important; border-bottom: 1px solid rgba(255,255,255,.4); text-decoration: none !important; }

/* Футер: после скрытия адресов и меню от блока .footer__top оставалась
   пустая полоса в пол-экрана. Убираем его целиком и поджимаем футер. */
.footer .footer__top { display: none !important; }
.footer { padding-top: 26px; }
@media (max-width: 640px) {
  /* липкая полоса записи перекрывала «обратную связь» в футере */
  .footer { padding-bottom: 84px; }
}

/* блок команды */
.lp26-team { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; margin-top: 26px; }
.lp26-team img { width: 100%; aspect-ratio: 3 / 4; object-fit: cover; }
.lp26-team-note { font-size: 15px; color: var(--muted); margin-top: 18px; max-width: 46em; }

/* микрокопия под главной кнопкой */
.lp26 p.lp26-microcopy { font-size: 13px; line-height: 1.5; color: var(--muted); margin: 10px 0 0; }

/* бейдж рейтинга рядом с отзывами */
.lp26-rating { display: inline-flex; align-items: baseline; gap: 10px; background: var(--cream); padding: 10px 18px; margin-bottom: 8px; font-size: 14.5px; color: var(--muted); }
.lp26-rating b { font-family: "Spectral", Georgia, serif; font-size: 24px; font-weight: 400; color: var(--ink); }
.lp26-rating span { color: var(--terra); letter-spacing: .1em; }

@media (max-width: 900px) { .lp26-team { grid-template-columns: 1fr 1fr; } }

/* ближайшее свободное время */
.lp26-slot {
  display: inline-flex; align-items: center; gap: 9px;
  font-size: 14.5px; color: var(--ink); margin: 14px 0 0;
  background: var(--rose); padding: 9px 15px;
}
.lp26-slot:before {
  content: ""; width: 8px; height: 8px; border-radius: 50%;
  background: #3f9e5f; flex: none;
}
.lp26-salon .lp26-slot { margin: 0 0 14px; }


/* ============ v27: разбор скриншотов Алины ============ */

/* ОТЗЫВЫ.
   Шаблон new-2017 подставляет blockquote огромную синюю кавычку через ::before —
   чужой цвет и лишний акцент. Убираем, кавычки уже есть в самом тексте.
   Плашка размера растягивалась во всю ширину и читалась как поле ввода. */
.lp26 .lp26-rev blockquote:before,
.lp26 .lp26-rev blockquote:after { content: none !important; display: none !important; }
.lp26 .lp26-rev blockquote { padding-left: 0 !important; margin-left: 0 !important; font-style: normal; }
.lp26-rev .lp26-shift { align-self: flex-start; width: auto; }
.lp26-rev cite { padding-top: 14px; border-top: 1px solid var(--line); width: 100%; }
/* бейдж рейтинга был отдельно стоящим прямоугольником — привязываем к заголовку */
.lp26-rating { margin: -8px 0 4px; }

/* СТИЛИСТЫ. Подпись прилипала к фото вплотную и читалась как его описание. */
.lp26-team-note { margin-top: 26px; }
.lp26-team img { background: var(--cream); }

/* ВИДЕО. Текст был выровнен по центру относительно высокого кадра,
   из-за чего справа снизу зияла пустота. */
.lp26-video { align-items: start; }
.lp26-video > div:last-child { padding-top: 6px; }

/* ФИНАЛ. Телефон и запасной канал шли одинаковым весом и конкурировали. */
.lp26-final .lp26-phone { font-size: 16px; margin-top: 22px; border-bottom: 1px solid rgba(255,255,255,.35); display: inline-block; }
.lp26-final-soft { margin-top: 26px; padding-top: 20px; border-top: 1px solid rgba(255,255,255,.16); font-size: 14px; }
.lp26-final h2 { max-width: 20em; margin-left: auto; margin-right: auto; }

/* ФУТЕР. Между финальным блоком и футером оставалась белая полоса,
   а иконки и ссылки шаблона красились в чужой синий. */
.lp26 { padding-bottom: 0; }
.footer { padding-top: 34px; }
.footer .socials svg *, .footer .header-top-social svg * { fill: #4A2E4A !important; }
.footer .socials svg { opacity: .85; }
.footer .btn-text, .footer .footer__links a, .footer .copyright, .footer .copyright a { color: #6B5B66 !important; }
.footer .footer__links a:hover { color: #4A2E4A !important; }

/* команда: две карточки с именами */
.lp26-team--two { grid-template-columns: 1fr 1fr; max-width: 700px; }
.lp26-team figure { margin: 0; }
.lp26-team figcaption { padding-top: 12px; }
.lp26-team figcaption b { display: block; font-family: "Spectral", Georgia, serif; font-size: 19px; font-weight: 400; }
.lp26-team figcaption span { font-size: 13px; color: var(--muted); text-transform: uppercase; letter-spacing: .06em; }
@media (max-width: 640px) { .lp26-team--two { grid-template-columns: 1fr 1fr; } }

.lp26 .lp26-team-note { margin-top: 32px !important; }

/* команда: три карточки с именем, ролью и парой строк про опыт */
.lp26-team--three { grid-template-columns: repeat(3, 1fr); max-width: none; }
.lp26-team--three figcaption p { font-size: 14.5px; color: var(--muted); margin: 8px 0 0; line-height: 1.5; }
@media (max-width: 900px) { .lp26-team--three { grid-template-columns: 1fr; max-width: 420px; } }

/* карточки команды: имя, роль и описание должны стоять на одной линии
   во всех трёх, иначе блок читается как случайный набор */
.lp26-team--three figure { display: flex; flex-direction: column; }
.lp26-team--three figcaption { display: flex; flex-direction: column; flex: 1; }
.lp26-team--three figcaption p { min-height: 3em; }

/* подпись под фото Алины: имя, роль и регалии */
.lp26-author-photo { margin: 0; }
.lp26-author-photo figcaption { padding-top: 14px; }
.lp26-author-photo figcaption b { display: block; font-family: "Spectral", Georgia, serif; font-size: 20px; font-weight: 400; }
.lp26-author-photo figcaption span { display: block; font-size: 14px; color: var(--muted); margin-top: 3px; }
.lp26-author-photo figcaption em { display: block; font-style: normal; font-size: 13px; color: var(--muted); margin-top: 10px; padding-top: 10px; border-top: 1px solid var(--line); line-height: 1.5; }

/* ФУТЕР: иконки соцсетей шли от 16 до 24 px — приводим к одному размеру */
.footer .socials svg { width: 26px !important; height: 26px !important; }
.footer .socials__item { display: flex; align-items: center; padding: 0 8px !important; }

/* ФИНАЛ: вместо длинной ссылки-телефона — плашки каналов.
   Клиентке проще нажать на понятную карточку, чем на строку текста. */
.lp26-final-or { color: rgba(255,255,255,.72); font-size: 14.5px; margin: 30px 0 14px; }
.lp26-channels { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; max-width: 720px; margin: 0 auto; }
.lp26-channel {
  display: flex; flex-direction: column; align-items: center; gap: 3px;
  padding: 16px 10px; text-decoration: none !important;
  background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.18);
  transition: background .15s, border-color .15s;
}
.lp26-channel:hover { background: rgba(255,255,255,.16); border-color: rgba(255,255,255,.4); }
.lp26-channel .lp26-channel-ic { font-size: 20px; line-height: 1; color: var(--terra-soft); margin-bottom: 4px; }
.lp26-channel b { color: #fff; font-weight: 500; font-size: 14.5px; }
.lp26-channel span { color: rgba(255,255,255,.65); font-size: 12.5px; }
.lp26-slot--light { background: rgba(255,255,255,.1); color: #fff; margin: 16px auto 0; }
.lp26-slot--light:before { background: #7fd39b; }
@media (max-width: 640px) {
  .lp26-channels { grid-template-columns: 1fr 1fr; }
  .lp26-final-or { margin-top: 24px; }
}

/* HERO. Фото занимало 11% площади первого экрана — для услуги, где всё
   решает картинка, это мало. Колонки почти равные, кадр вертикальный.
   Только десктоп: правило стоит ниже мобильного блока и без рамки min-width
   перебивало его — на телефоне первый экран оставался двухколоночным,
   фото сжималось до 171×107 (5,6% экрана). Поймано замером 08.08. */
@media (min-width: 901px) {
  .lp26-hero .lp26-grid { grid-template-columns: 1.02fr .98fr; }
}
.lp26-heroimg img { aspect-ratio: 4 / 5; object-fit: cover; }
.lp26-hero-trust { font-size: 14px; color: var(--muted); margin: 0 0 16px; }
.lp26-hero-trust b { color: var(--ink); font-family: "Spectral", Georgia, serif; font-size: 17px; font-weight: 400; }
@media (max-width: 900px) {
  .lp26-heroimg img { aspect-ratio: 16 / 10; }
}

.lp26-heroimg-cap { text-align: center; font-size: 14px; color: var(--muted); margin: 10px 0 0; }
.lp26-heroimg-cap b { color: var(--ink); font-weight: 500; }
