/* =========================================================================
   BOHO PARKA — перекрой шубы. Стили.
   Палитра и типографика собраны под брендбук BOHO PARKA
   и присланные референсы (Amorvati / Classic).
   ====================================================================== */

:root{
  --ink:      #14110E;   /* тёплый чёрный — фон «галерейных» полос */
  --ink-2:    #221D18;
  --bone:     #F1EDE6;   /* бумага */
  --bone-2:   #E6E0D6;
  --paper:    #FFFFFF;
  --ash:      #9C968E;   /* холодный серый из референса */
  --sand:     #D9C9B4;
  --rust:     #A2492A;   /* кирпичный акцент — только действия и акценты */

  --line:     rgba(20,17,14,.16);
  --line-lt:  rgba(241,237,230,.20);

  --display:  "Cormorant Garamond", "Times New Roman", Georgia, serif;
  --sans:     "Manrope", system-ui, -apple-system, "Segoe UI", sans-serif;

  --wrap:     1320px;
  --pad:      clamp(20px, 5vw, 72px);
  --gap:      clamp(16px, 2.2vw, 30px);

  --t:        .45s cubic-bezier(.22,.61,.36,1);
}

*,*::before,*::after{ box-sizing:border-box; }

html{ -webkit-text-size-adjust:100%; scroll-behavior:smooth; }

body{
  margin:0;
  background:var(--bone);
  color:var(--ink);
  font-family:var(--sans);
  font-weight:300;
  font-size:clamp(15px,.55vw + 13.6px,17px);
  line-height:1.72;
  letter-spacing:.005em;
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
}

img,svg,video{ display:block; max-width:100%; }
a{ color:inherit; }
button{ font:inherit; color:inherit; }

::selection{ background:var(--ink); color:var(--bone); }

.vh{
  position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;
  overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;
}

.skip{
  position:fixed;left:-999px;top:10px;z-index:200;
  background:var(--ink);color:var(--bone);padding:12px 20px;
}
.skip:focus{ left:10px; }

:where(a,button,[tabindex]):focus-visible{
  outline:1.5px solid var(--rust);
  outline-offset:3px;
}

.wrap{
  width:100%;max-width:var(--wrap);
  margin-inline:auto;padding-inline:var(--pad);
  position:relative;
}

/* ---------- типографика ------------------------------------------------ */
h1,h2,h3,h4,blockquote{
  font-family:var(--display);
  font-weight:300;
  line-height:1.08;
  letter-spacing:-.005em;
  margin:0;
}
p{ margin:0 0 1.1em; }
p:last-child{ margin-bottom:0; }
em{ font-style:italic; }
strong{ font-weight:500; }

.h2{
  font-size:clamp(30px,4.4vw,62px);
  line-height:1.1;
}
.lead{ font-size:clamp(19px,1.7vw,27px); line-height:1.5; font-weight:200; }
.muted{ color:#6E675F; }
.cap{
  font-family:var(--sans);
  font-size:12px;font-weight:400;letter-spacing:.16em;
  text-transform:uppercase;color:var(--ash);
  margin:0 0 14px;
}

.ico{ width:20px;height:20px;flex:none; }
.ico--lg{ width:30px;height:30px; }

.sprig{ color:var(--ash); width:min(260px,52vw); height:auto; opacity:.8; }

/* ---------- ссылка-стрелка --------------------------------------------- */
.lnk{
  display:inline-flex;align-items:center;gap:12px;
  text-decoration:none;font-size:14px;letter-spacing:.08em;
  text-transform:uppercase;font-weight:500;
  padding-bottom:6px;border-bottom:1px solid var(--line);
  transition:border-color var(--t),color var(--t);
}
.lnk .ico{ width:22px;transition:transform var(--t); }
.lnk:hover{ color:var(--rust);border-color:var(--rust); }
.lnk:hover .ico{ transform:translateX(6px); }

/* ---------- кнопки ------------------------------------------------------ */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  padding:14px 26px;text-decoration:none;
  font-size:13px;letter-spacing:.1em;text-transform:uppercase;font-weight:500;
  border:1px solid transparent;transition:background var(--t),color var(--t),border-color var(--t);
}
.btn--ink{ background:var(--ink);color:var(--bone); }
.btn--ink:hover{ background:var(--rust); }
.btn--line{ border-color:var(--ink);color:var(--ink); }
.btn--line:hover{ background:var(--ink);color:var(--bone); }
.btn--big{ padding:20px 40px;font-size:14px; }
.btn .ico{ width:20px; }

/* =========================================================================
   ШАПКА
   ====================================================================== */
.hdr{
  position:fixed;inset:0 0 auto;z-index:90;
  transition:background var(--t),box-shadow var(--t);
}
.hdr__in{
  max-width:var(--wrap);margin-inline:auto;
  padding:18px var(--pad);
  display:flex;align-items:center;gap:28px;
  transition:padding var(--t);
}
.hdr.is-solid{ background:rgba(241,237,230,.92);backdrop-filter:blur(14px);box-shadow:0 1px 0 var(--line); }
.hdr.is-solid .hdr__in{ padding-block:11px; }

.hdr__logo{ display:block;flex:none;text-decoration:none; }
.logo{ height:clamp(38px,4vw,52px);width:auto;object-fit:contain;transition:height var(--t); }
.hdr.is-solid .logo{ height:clamp(32px,3vw,42px); }
.hdr__logo .logo{ background:var(--paper);padding:6px 12px; }

.logo--empty{
  display:flex;flex-direction:column;justify-content:center;
  font-family:var(--display);letter-spacing:.22em;font-size:15px;
  color:var(--ink);border:1px solid var(--line);padding:6px 14px;
  height:auto;
}
.logo--empty small{ font-size:8px;letter-spacing:.04em;color:var(--ash);font-family:var(--sans); }
.logo--sm{ height:36px; }

.hdr__nav{ display:flex;gap:clamp(14px,1.8vw,30px);margin-left:auto; }
.hdr__nav a{
  text-decoration:none;font-size:13px;letter-spacing:.09em;
  text-transform:uppercase;font-weight:400;color:var(--bone);
  padding:6px 0;position:relative;transition:color var(--t);
}
.hdr__nav a::after{
  content:"";position:absolute;left:0;right:100%;bottom:0;height:1px;
  background:currentColor;transition:right var(--t);
}
.hdr__nav a:hover::after{ right:0; }
.hdr.is-solid .hdr__nav a{ color:var(--ink); }

.hdr__act{ display:flex;align-items:center;gap:12px; }
.hdr__cta{ background:transparent;border-color:var(--bone);color:var(--bone); }
.hdr__cta:hover{ background:var(--bone);color:var(--ink); }
.hdr.is-solid .hdr__cta{ background:var(--ink);border-color:var(--ink);color:var(--bone); }
.hdr.is-solid .hdr__cta:hover{ background:var(--rust);border-color:var(--rust); }

.burger{
  display:none;background:none;border:1px solid var(--bone);
  color:var(--bone);width:46px;height:46px;align-items:center;justify-content:center;
  cursor:pointer;
}
.hdr.is-solid .burger{ border-color:var(--line);color:var(--ink); }

/* мобильное меню */
.mnav[hidden],.lb[hidden]{ display:none!important; }
.mnav:not(.is-open),.lb:not(.is-open){ pointer-events:none; }
.mnav.is-open,.lb.is-open{ pointer-events:auto; }
.mnav{
  position:fixed;inset:0;z-index:120;background:var(--ink);color:var(--bone);
  padding:20px var(--pad) 40px;display:flex;flex-direction:column;
  opacity:0;transition:opacity .3s ease;
}
.mnav.is-open{ opacity:1; }
.mnav__top{ display:flex;align-items:center;justify-content:space-between; }
.mnav__top .logo{ background:var(--paper);padding:6px 12px; }
.mnav__x{ background:none;border:1px solid var(--line-lt);width:46px;height:46px;display:grid;place-items:center;cursor:pointer; }
.mnav__list{ margin:auto 0;display:flex;flex-direction:column;gap:4px; }
.mnav__list a{
  display:flex;align-items:baseline;gap:16px;text-decoration:none;
  font-family:var(--display);font-size:clamp(30px,9vw,44px);
  padding:8px 0;border-bottom:1px solid var(--line-lt);
}
.mnav__list i{ font-family:var(--sans);font-style:normal;font-size:11px;color:var(--ash);letter-spacing:.1em; }
.mnav__foot{ display:flex;flex-wrap:wrap;gap:10px 22px; }
.mnav__foot a{ display:inline-flex;align-items:center;gap:8px;font-size:13px;text-decoration:none;color:var(--sand); }

/* =========================================================================
   ФОТО-КАРТОЧКИ
   ====================================================================== */
.shot{
  position:relative;display:block;padding:0;margin:0;border:0;
  background:var(--bone-2);overflow:hidden;cursor:zoom-in;
  width:100%;
}
.shot--portrait{ aspect-ratio:3/4; }
.shot--square{ aspect-ratio:1/1; }
.shot--landscape{ aspect-ratio:4/3; }

.shot img{ width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.3,1),filter var(--t); }
.shot:hover img{ transform:scale(1.045); }

.shot__zoom{
  position:absolute;right:12px;bottom:12px;width:38px;height:38px;
  display:grid;place-items:center;background:rgba(20,17,14,.62);color:var(--bone);
  opacity:0;transform:translateY(6px);transition:opacity var(--t),transform var(--t);
  backdrop-filter:blur(4px);
}
.shot:hover .shot__zoom,.shot:focus-visible .shot__zoom{ opacity:1;transform:none; }

/* плейсхолдер под фото из архива */
.shot--empty{
  cursor:default;display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:6px;text-align:center;padding:16px;
  background:
    repeating-linear-gradient(135deg,rgba(20,17,14,.03) 0 2px,transparent 2px 9px),
    var(--bone-2);
  border:1px solid var(--line);
}
.shot--empty::after{
  content:"";position:absolute;inset:8px;border:1px solid rgba(20,17,14,.08);pointer-events:none;
}
.shot__slot{ font-family:var(--display);font-size:19px;letter-spacing:.06em;color:var(--ink); }
.shot__hint{ font-size:11.5px;line-height:1.4;color:#6E675F;max-width:22ch; }
.shot__path{ font-size:9.5px;letter-spacing:.03em;color:var(--ash);word-break:break-all; }

.shot--light.shot--empty{
  background:
    repeating-linear-gradient(135deg,rgba(241,237,230,.05) 0 2px,transparent 2px 9px),
    #191512;
  border-color:var(--line-lt);
}
.shot--light .shot__slot{ color:var(--bone); }
.shot--light .shot__hint{ color:var(--sand); }
.shot--light .shot__path{ color:#6b645c; }
.shot--light{ background:#191512; }

/* сетки */
.grid{ display:grid;gap:var(--gap); }
.grid--2{ grid-template-columns:repeat(2,1fr); }
.grid--3{ grid-template-columns:repeat(3,1fr); }
.grid--4{ grid-template-columns:repeat(4,1fr); }
.grid--5{ grid-template-columns:repeat(5,1fr); }
.single{ display:block; }

/* =========================================================================
   БЕГУЩАЯ ГАЛЕРЕЯ
   ====================================================================== */
.marquee{
  position:relative;overflow:hidden;width:100%;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);
          mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);
}
.marquee__track{
  display:flex;width:max-content;
  animation:bp-marquee var(--dur,60s) linear infinite;
  will-change:transform;
}
.marquee[data-dir="right"] .marquee__track{ animation-direction:reverse; }
.marquee__row{ display:flex;gap:var(--gap);padding-right:var(--gap); }
.marquee__row .shot{ width:auto;height:var(--h);flex:none; }

.marquee--sm{ --h:clamp(180px,26vw,260px); }
.marquee--md{ --h:clamp(230px,32vw,360px); }
.marquee--lg{ --h:clamp(280px,40vw,470px); }

.marquee:hover .marquee__track,
.marquee:focus-within .marquee__track{ animation-play-state:paused; }

@keyframes bp-marquee{ to{ transform:translate3d(-50%,0,0); } }

.marquee__note{
  margin:16px var(--pad) 0;font-size:11px;letter-spacing:.14em;text-transform:uppercase;
  color:var(--ash);text-align:center;
}
.band .marquee__note,.why--dark .marquee__note{ color:#8a8178; }

@media (hover:none){ .marquee__note{ display:none; } }

/* =========================================================================
   СЕКЦИИ И БОКОВАЯ ПОЛОСА
   ====================================================================== */
.sec{ padding-block:clamp(62px,7.6vw,118px);position:relative; }

.rail{
  position:absolute;left:calc(var(--pad) * -1 + 18px);top:8px;
  display:none;align-items:center;gap:14px;
  transform:rotate(180deg);writing-mode:vertical-rl;
  font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--ash);
}
.rail__num{ font-family:var(--display);font-size:15px;letter-spacing:.1em; }
.rail__line{ width:1px;height:56px;background:var(--line); }
@media (min-width:1420px){ .rail{ display:flex; } }

/* =========================================================================
   1. ГЕРОЙ
   ====================================================================== */
.hero{
  background:var(--ink);color:var(--bone);
  min-height:100svh;display:flex;flex-direction:column;justify-content:center;
  padding:clamp(110px,14vh,190px) 0 clamp(40px,6vh,70px);
  position:relative;overflow:hidden;
}
.hero__rail{
  position:absolute;left:26px;top:50%;transform:translateY(-50%) rotate(180deg);
  writing-mode:vertical-rl;display:none;align-items:center;gap:18px;
  font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--ash);
}
.hero__rail i{ width:1px;height:70px;background:var(--line-lt);display:block; }
@media (min-width:1200px){ .hero__rail{ display:flex; } }

.hero__in{
  width:100%;max-width:var(--wrap);margin-inline:auto;padding-inline:var(--pad);
  display:grid;grid-template-columns:1fr 1.5fr;gap:clamp(28px,4vw,64px);align-items:end;
}
.hero__q{
  font-size:clamp(21px,2.3vw,34px);line-height:1.22;font-weight:300;
  margin-bottom:22px;color:var(--bone);
}
.hero__col--b .hero__q{ text-align:right; }

.hero__stack{ display:flex;gap:clamp(10px,1.4vw,20px);align-items:flex-end;height:clamp(180px,25vw,330px); }
.hero__ph{ flex:1 1 0;min-width:0;height:100%; }
.hero__ph .shot{ width:100%;height:100%;aspect-ratio:auto; }
.hero__ph--2{ transform:translateY(-26px); }
.hero__ph--4{ transform:translateY(-18px); }

.hero__line{
  width:100%;max-width:var(--wrap);margin:clamp(40px,6vh,72px) auto 0;padding-inline:var(--pad);
  display:grid;grid-template-columns:auto 1fr auto;gap:clamp(20px,4vw,60px);align-items:center;
}
.hero__line p{
  font-family:var(--display);font-size:clamp(23px,2.9vw,44px);line-height:1.22;
  margin:0;color:var(--bone);
}
.hero__line em{ color:var(--sand); }
.sprig--hero{ color:rgba(241,237,230,.42);width:clamp(120px,14vw,220px); }

.hero__scroll{
  display:flex;flex-direction:column;align-items:center;gap:10px;text-decoration:none;
  font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--ash);
}
.hero__scroll svg{ width:14px;height:44px; }
.hero__scroll svg path{ animation:bp-drop 2.6s ease-in-out infinite; }
@keyframes bp-drop{ 0%,100%{ transform:translateY(0);opacity:.5 } 50%{ transform:translateY(6px);opacity:1 } }

/* =========================================================================
   2. ЗАГОЛОВОК И ВОПРОСЫ
   ====================================================================== */
.sec--intro{ padding-top:clamp(80px,11vw,160px); }
.intro__h{
  font-size:clamp(38px,7.2vw,104px);line-height:.98;letter-spacing:-.015em;
  max-width:16ch;
}
.intro__sub{
  font-family:var(--display);font-size:clamp(20px,2.4vw,34px);
  margin:22px 0 0;color:#4A443D;
}
.intro__sub span{ border-bottom:1px solid var(--rust);padding-bottom:2px; }

.intro__grid{
  margin-top:clamp(38px,5vw,70px);
  display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(24px,4vw,70px);
  padding-top:34px;border-top:1px solid var(--line);
}
.qs__lead{ font-size:15px;color:#6E675F;margin-bottom:18px; }
.qs__list{ list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px; }
.qs__list li{
  display:flex;align-items:center;gap:16px;padding:14px 0;
  border-bottom:1px solid var(--line);
  font-family:var(--display);font-size:clamp(20px,2.3vw,30px);line-height:1.2;
}
.qs__list .ico{ color:var(--rust);width:22px;height:22px; }
.qs__answer{ display:flex;align-items:flex-end; }
.qs__answer p{
  font-size:clamp(16px,1.35vw,20px);line-height:1.65;max-width:44ch;
  border-left:1px solid var(--rust);padding-left:clamp(18px,2vw,30px);
}

/* =========================================================================
   3. ПРИВЕТСТВИЕ + ТЁМНАЯ ПОЛОСА
   ====================================================================== */
.sec--hello{ padding-bottom:0; }
.hello{
  display:grid;grid-template-columns:minmax(220px,340px) 1fr;
  gap:clamp(26px,4vw,66px);align-items:center;
}
.hello__txt .lead{ max-width:30ch; }
.sign{
  font-family:var(--display);font-style:italic;font-size:clamp(20px,2vw,28px);
  margin-top:26px;color:var(--rust);
}

.band{
  background:var(--ink);color:var(--bone);
  padding-block:clamp(56px,7vw,110px);
  margin-top:clamp(60px,8vw,120px);
}
.sec--clients.band{ margin-top:0; }
.band__h{
  font-size:clamp(30px,5vw,72px);line-height:1.04;
  text-transform:uppercase;letter-spacing:.02em;font-weight:300;
}
.band__cap{
  margin:20px 0 clamp(30px,4vw,54px);
  font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--sand);
}
.sec--clients .band__h{ margin-bottom:clamp(30px,4vw,54px); }

/* =========================================================================
   4. ПРЕДЛОЖЕНИЕ
   ====================================================================== */
.say{
  font-family:var(--display);font-size:clamp(24px,3.4vw,48px);line-height:1.22;
  max-width:24ch;margin:0 0 clamp(34px,4vw,60px);
}
.say em{ color:var(--rust); }

/* =========================================================================
   5. ИСТОРИЯ
   ====================================================================== */
.story{
  display:grid;grid-template-columns:1fr 1fr;gap:clamp(26px,4vw,80px);
  padding-bottom:clamp(40px,5vw,70px);
}
.motto{
  font-size:clamp(26px,3.6vw,50px);line-height:1.18;font-style:italic;
  margin:26px 0;padding-left:clamp(18px,2vw,28px);border-left:1px solid var(--rust);
}
.story__b{ display:flex;flex-direction:column;justify-content:center;align-items:flex-start; }
.story__b p{ font-size:clamp(16px,1.3vw,19px);max-width:42ch; }
.story__b .lnk{ margin-top:16px; }

/* =========================================================================
   6. ТЕПЛО + ВИДЕО
   ====================================================================== */
.warm{ display:grid;grid-template-columns:1fr 1fr;gap:clamp(26px,4vw,70px);align-items:center; }
.big{ font-family:var(--display);font-size:clamp(26px,3.6vw,52px);line-height:1.18; }
.big em{ color:var(--rust); }
.warm__txt p:not(.big){ max-width:44ch; }

.warm__video video{ width:100%;aspect-ratio:16/10;object-fit:cover;background:var(--ink); }
.vid-empty{
  aspect-ratio:16/10;display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:10px;background:var(--ink);color:var(--bone);text-align:center;padding:20px;
}
.vid-empty .ico{ width:44px;height:44px;color:var(--sand); }
.vid-empty span{ font-size:13px;letter-spacing:.12em;text-transform:uppercase; }
.vid-empty small{ font-size:10px;color:#6f675e; }

.warm__now{
  margin-top:clamp(40px,5vw,80px);padding-top:clamp(30px,3vw,50px);
  border-top:1px solid var(--line);
  display:grid;grid-template-columns:1.2fr 1fr;gap:clamp(24px,4vw,60px);align-items:start;
}
.warm__now p{ font-size:clamp(17px,1.5vw,22px);line-height:1.6; }
.warm__now em{ font-style:italic;color:var(--rust); }
.furs{ list-style:none;margin:0;padding:0; }
.furs li{
  padding:11px 0;border-bottom:1px solid var(--line);
  font-family:var(--display);font-size:clamp(17px,1.6vw,22px);
}
.furs li:first-child{ border-top:1px solid var(--line); }

/* =========================================================================
   8. ПОСЛЕ ПЕРЕКРОЯ
   ====================================================================== */
.sec--after .h2{ margin-bottom:clamp(34px,4vw,60px); }
.after__more{
  margin:clamp(30px,4vw,50px) 0 18px;
  font-size:clamp(16px,1.4vw,21px);max-width:48ch;
}

/* =========================================================================
   9. ПОЧЕМУ МЫ
   ====================================================================== */
.sec--why{ padding-bottom:0; }
.why__h{
  font-size:clamp(44px,9vw,128px);line-height:.95;letter-spacing:-.02em;
  margin-bottom:clamp(28px,4vw,56px);
}
.why{ padding-block:clamp(34px,4.5vw,70px);border-top:1px solid var(--line); }
.why--full{ padding-bottom:clamp(40px,5vw,80px); }

.why__in{
  display:grid;
  grid-template-columns:70px minmax(0,1fr) minmax(0,1fr);
  gap:clamp(18px,3vw,50px);align-items:start;
}
.why:not(:has(.why__media)) .why__in{ grid-template-columns:70px minmax(0,1.4fr) minmax(0,1fr); }
.why__no{
  font-family:var(--display);font-size:clamp(26px,3vw,42px);line-height:1;
  color:var(--ash);
}
.why__txt h3{ font-size:clamp(23px,2.6vw,38px);line-height:1.14;margin-bottom:14px; }
.why__txt p{ max-width:52ch;font-size:clamp(15px,1.15vw,17.5px); }
.why__media{ align-self:stretch; }
.why__wide{ margin-top:clamp(22px,2.6vw,40px); }
.why__wide .grid{ max-width:1000px; }
.why__media--wide{ grid-column:2 / -1;margin-top:22px;max-width:620px; }
@media (min-width:900px){ .why__media--wide{ grid-column:3;margin-top:0; } }

.chain{
  display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:clamp(8px,1.4vw,20px);
  align-items:center;margin-top:clamp(24px,3vw,44px);
}
.chain__arw{ color:var(--rust); }
.chain__arw svg{ width:clamp(28px,4vw,60px);height:auto; }

.two-up{ display:grid;grid-template-columns:1.5fr 1fr;gap:clamp(24px,3vw,50px);margin-top:clamp(24px,3vw,44px); }

/* пункт 6 — тёмный */
.why--dark{ background:var(--ink);color:var(--bone);border-top-color:transparent; }
.why--dark .why__no{ color:#6f675e; }
.why--dark .why__txt h3{ max-width:30ch; }
.incl{
  display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(26px,4vw,70px);
  margin-top:clamp(24px,3vw,44px);padding-bottom:clamp(34px,4vw,60px);
}
.incl__t{
  display:flex;align-items:center;gap:12px;
  font-family:var(--display);font-size:clamp(19px,1.9vw,26px);margin-bottom:10px;
}
.incl__t .ico{ color:var(--sand); }
.incl__d{ color:var(--sand);font-size:15px;max-width:34ch; }
.steps{ list-style:none;margin:0;padding:0; }
.steps li{
  display:grid;grid-template-columns:52px 1fr;gap:14px;align-items:baseline;
  padding:13px 0;border-top:1px solid var(--line-lt);
}
.steps li:last-child{ border-bottom:1px solid var(--line-lt); }
.steps span{ font-family:var(--display);font-size:15px;color:var(--ash);letter-spacing:.08em; }
.steps p{ margin:0;font-size:clamp(15px,1.2vw,17px); }

/* пункты 7 и 8 */
.facts{ display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,4vw,70px); }
.fact{ display:grid;grid-template-columns:70px 1fr;gap:clamp(18px,3vw,30px);align-items:start; }
.fact .ico--lg{ grid-column:2;color:var(--rust);margin-bottom:14px; }
.fact h3{ grid-column:2;font-size:clamp(21px,2.2vw,30px);margin-bottom:10px; }
.fact p{ grid-column:2;max-width:40ch; }

/* пункт 14 — цена */
.why--price{ background:var(--ink);color:var(--bone);border-top:0; }
.price{
  display:grid;grid-template-columns:70px 1fr auto;gap:clamp(18px,3vw,50px);align-items:center;
}
.price__no{ color:#6f675e; }
.price__l h3{ font-size:clamp(26px,3vw,42px);margin-bottom:8px; }
.price__l p{ color:var(--sand);margin:0; }
.price__r{ display:flex;align-items:center;gap:14px;color:var(--bone); }
.price__v{ font-family:var(--display);font-size:clamp(48px,9vw,124px);line-height:.9;letter-spacing:-.02em; }
.price__c .ico{ width:clamp(26px,4vw,54px);height:auto;color:var(--sand); }

/* =========================================================================
   10–11. ПЛАН И МЕССЕНДЖЕРЫ
   ====================================================================== */
.sec--cta{ text-align:center;background:var(--bone-2); }
.sec--cta .wrap{ display:flex;flex-direction:column;align-items:center; }
.sprig--cta{ margin-bottom:26px;transform:scaleX(-1); }
.cta__lead{
  font-family:var(--display);font-size:clamp(24px,3.2vw,44px);line-height:1.2;
  max-width:20ch;margin-bottom:30px;
}
.cta__msg{
  margin:clamp(46px,6vw,80px) 0 22px;
  font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:#6E675F;
}
.msgs{ display:flex;flex-wrap:wrap;gap:14px;justify-content:center; }
.msg{
  display:inline-flex;align-items:center;gap:12px;text-decoration:none;
  padding:16px 30px;background:var(--paper);border:1px solid var(--line);
  font-size:14px;letter-spacing:.06em;
  transition:background var(--t),color var(--t),transform var(--t),border-color var(--t);
}
.msg .ico{ width:24px;height:24px;color:var(--rust);transition:color var(--t); }
.msg:hover{ background:var(--ink);color:var(--bone);border-color:var(--ink);transform:translateY(-3px); }
.msg:hover .ico{ color:var(--sand); }
.cta__tel{
  display:inline-flex;align-items:center;gap:10px;margin-top:28px;
  font-family:var(--display);font-size:clamp(21px,2.2vw,30px);text-decoration:none;
}
.cta__tel .ico{ color:var(--rust); }

/* =========================================================================
   12. ПОЧИТАТЬ
   ====================================================================== */
.reads{ display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,3vw,44px); }
.read{ text-decoration:none;display:flex;flex-direction:column;gap:16px; }
.read__ph .shot{ transition:filter var(--t); }
.read h3{ font-size:clamp(21px,2vw,28px); }
.read p{ font-size:15px;color:#6E675F;max-width:34ch; }
.read__go{
  margin-top:auto;display:inline-flex;align-items:center;gap:10px;
  font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--rust);
}
.read__go .ico{ width:20px;transition:transform var(--t); }
.read:hover .read__go .ico{ transform:translateX(6px); }

/* =========================================================================
   ПОДВАЛ
   ====================================================================== */
.ftr{ background:var(--ink);color:var(--bone);padding-top:clamp(56px,7vw,100px); }
.ftr__in{
  display:grid;grid-template-columns:1.15fr .85fr 1fr 1fr;gap:clamp(26px,3vw,54px);
  padding-bottom:clamp(40px,5vw,70px);
}
.ftr__logo .logo{ background:var(--paper);padding:10px 16px;height:clamp(46px,5vw,64px); }
.ftr__logo .logo--empty{ background:var(--paper); }
.ftr__slogan{ font-family:var(--display);font-style:italic;font-size:20px;margin-top:20px;color:var(--sand); }
.sprig--ftr{ color:rgba(241,237,230,.28);margin-top:24px; }

.ftr h4{ font-size:13px;font-family:var(--sans);font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--ash);margin-bottom:18px; }
.ftr__list{ list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:11px; }
.ftr__list a{ display:inline-flex;align-items:center;gap:11px;text-decoration:none;font-size:14.5px;transition:color var(--t); }
.ftr__list a:hover{ color:var(--sand); }
.ftr__list .ico{ width:19px;height:19px;color:var(--ash); }
.ftr__list--plain{ margin-top:20px; }
.ftr__list--plain a{ font-size:14px;color:var(--sand);text-decoration:underline;text-underline-offset:4px;text-decoration-color:rgba(217,201,180,.35); }
.ftr__addr{ display:flex;gap:11px;font-size:14.5px;margin-bottom:10px; }
.ftr__addr .ico{ color:var(--ash);margin-top:3px; }
.ftr__addr--sm{ color:var(--ash);font-size:13px; }
.ftr__col--legal p{ margin:0 0 6px;font-size:13.5px;color:var(--sand); }
.ftr__doc{ margin-top:18px;max-width:260px; }

.ftr__bot{
  display:flex;flex-wrap:wrap;gap:12px 26px;justify-content:space-between;align-items:center;
  padding-block:22px;border-top:1px solid var(--line-lt);
  font-size:12.5px;color:var(--ash);
}
.ftr__bot a{ text-decoration:none; }
.ftr__bot a:hover{ color:var(--bone); }
.ftr__bot p{ margin:0; }

/* =========================================================================
   ЛАЙТБОКС
   ====================================================================== */
.lb{
  position:fixed;inset:0;z-index:150;background:rgba(12,10,8,.96);
  display:flex;align-items:center;justify-content:center;padding:clamp(14px,4vw,54px);
  opacity:0;transition:opacity .28s ease;
}
.lb.is-open{ opacity:1; }
.lb__fig{ margin:0;max-width:100%;max-height:100%;display:flex;flex-direction:column;gap:14px;align-items:center; }
.lb__fig img{
  max-width:100%;max-height:80svh;object-fit:contain;
  transform:scale(.97);transition:transform .3s cubic-bezier(.22,.61,.36,1);
}
.lb.is-open .lb__fig img{ transform:none; }
.lb__fig figcaption{
  display:flex;gap:16px;align-items:baseline;color:var(--sand);
  font-size:12px;letter-spacing:.14em;text-transform:uppercase;
}
.lb__fig figcaption i{ font-style:normal;color:var(--ash); }

.lb__x,.lb__nav{
  position:absolute;background:rgba(241,237,230,.08);border:1px solid var(--line-lt);
  color:var(--bone);width:52px;height:52px;display:grid;place-items:center;cursor:pointer;
  transition:background var(--t);
}
.lb__x:hover,.lb__nav:hover{ background:rgba(241,237,230,.2); }
.lb__x{ top:clamp(12px,2vw,26px);right:clamp(12px,2vw,26px); }
.lb__nav{ top:50%;transform:translateY(-50%); }
.lb__nav--p{ left:clamp(10px,2vw,26px); }
.lb__nav--n{ right:clamp(10px,2vw,26px); }
body.lb-open{ overflow:hidden; }

/* =========================================================================
   ПОЯВЛЕНИЕ ПРИ ПРОКРУТКЕ (сдержанно)
   ====================================================================== */
[data-rv]{ opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s cubic-bezier(.22,.61,.36,1); }
[data-rv].is-in{ opacity:1;transform:none; }

/* =========================================================================
   АДАПТИВ
   ====================================================================== */
@media (max-width:1180px){
  .hdr__nav{ display:none; }
  .burger{ display:flex; }
  .hdr__cta span{ display:none; }
  .hdr__cta{ padding:13px 15px; }
}

@media (max-width:1024px){
  .grid--5{ grid-template-columns:repeat(3,1fr); }
  .ftr__in{ grid-template-columns:1fr 1fr; }
  .reads{ grid-template-columns:1fr; }
  .read{ display:grid;grid-template-columns:minmax(0,240px) 1fr;gap:22px;align-items:center; }
  .read__go{ margin-top:10px; }
}

@media (max-width:900px){
  .hero__in{ grid-template-columns:1fr;gap:34px; }
  .hero__col--b .hero__q{ text-align:left; }
  .hero__line{ grid-template-columns:1fr;gap:26px; }
  .hero__scroll{ flex-direction:row;gap:14px;align-self:flex-start; }
  .hero__scroll svg{ width:12px;height:26px; }
  .sprig--hero{ order:-1; }
  .hero__stack{ gap:10px;height:auto;flex-wrap:wrap; }
  .hero__ph{ flex:1 1 calc(50% - 10px);height:auto;min-width:130px; }
  .hero__ph .shot{ aspect-ratio:3/4;height:auto; }
  .hero__ph--2,.hero__ph--4{ transform:none; }

  .intro__grid,.hello,.story,.warm,.warm__now,.facts,.two-up,.incl{ grid-template-columns:1fr; }
  .hello__ph{ max-width:300px; }
  .why__in{ grid-template-columns:44px 1fr; }
  .why:not(:has(.why__media)) .why__in{ grid-template-columns:44px 1fr; }
  .why__media{ grid-column:2; }
  .why__media--wide{ grid-column:2; }
  .fact{ grid-template-columns:44px 1fr; }
  .price{ grid-template-columns:44px 1fr;row-gap:20px; }
  .price__r{ grid-column:2; }
  .chain{ grid-template-columns:1fr;gap:14px;justify-items:center; }
  .chain .shot{ max-width:300px; }
  .chain__arw{ transform:rotate(90deg); }
  .chain__arw svg{ width:38px; }
}

@media (max-width:640px){
  .grid--3,.grid--4,.grid--5{ grid-template-columns:repeat(2,1fr); }
  .read{ grid-template-columns:1fr; }
  .ftr__in{ grid-template-columns:1fr; }
  .lb__nav{ width:44px;height:44px; }
  .lb__nav--p{ left:6px; }
  .lb__nav--n{ right:6px; }
  .msg{ flex:1 1 100%;justify-content:center; }
  .marquee{ -webkit-mask-image:none;mask-image:none; }
}

@media (prefers-reduced-motion:reduce){
  html{ scroll-behavior:auto; }
  *,*::before,*::after{ animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important; }
  .marquee{ overflow-x:auto;-webkit-overflow-scrolling:touch; }
  .marquee__track{ animation:none; }
  .marquee__row + .marquee__row{ display:none; }
  [data-rv]{ opacity:1;transform:none; }
}

@media print{
  .hdr,.mnav,.lb,.hero__scroll,.marquee__note{ display:none!important; }
  body{ background:#fff; }
}
