
/* ==========================================================
   ГУСИ-ЛЕБЕДИ · Температурная драматургия
   Палитра: хвойные сумерки / вода пруда / льняной свет
   Шрифты: Prata (display) + Golos Text (body)
========================================================== */
:root{
  --pine:      #141D19;   /* хвойные сумерки — жар-секции */
  --pine-soft: #1C2721;
  --ember:     #C89968;   /* дымный мёд — акцент на тёмном */
  --ember-dim: rgba(200,153,104,.45);
  --linen:     #F1EDE4;   /* льняной свет — покой */
  --linen-dp:  #E7E1D4;
  --pond:      #D9E0DC;   /* вода пруда — контраст-секции */
  --pond-deep: #B9C7C1;
  --ink:       #1B2420;   /* текст на светлом */
  --ink-mut:   #56605A;
  --milk:      #EFEAE0;   /* текст на тёмном */
  --milk-mut:  rgba(239,234,224,.62);
  --line-d:    rgba(239,234,224,.14);
  --line-l:    rgba(27,36,32,.14);
  --disp: 'Prata', serif;
  --body: 'Golos Text', system-ui, sans-serif;
  --ease: cubic-bezier(.22,.7,.28,1);
}

*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  font-family:var(--body);
  font-weight:400;
  background:var(--pine);
  color:var(--milk);
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
::selection{background:var(--ember);color:var(--pine)}
img{max-width:100%;display:block}
a{color:inherit}

h1,h2,h3,.disp{font-family:var(--disp);font-weight:400;line-height:1.16;letter-spacing:.005em}
em{font-style:italic}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ---------- зерно плёнки поверх всего ---------- */
body::after{
  content:"";position:fixed;inset:0;z-index:9990;pointer-events:none;opacity:.05;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}

/* ---------- температурная шкала (фирменный элемент) ---------- */
.temp-rail{
  position:fixed;right:34px;top:50%;transform:translateY(-50%);
  z-index:60;height:220px;width:1px;
  background:linear-gradient(to bottom, currentColor 0%, currentColor 100%);
  opacity:.35;color:var(--milk);
  transition:color .8s var(--ease);
}
.temp-rail .tick{position:absolute;left:-3px;width:7px;height:1px;background:currentColor}
.temp-rail .tick:nth-child(1){top:0}
.temp-rail .tick:nth-child(2){top:50%}
.temp-rail .tick:nth-child(3){top:100%}
.temp-dot{
  position:fixed;right:30.5px;top:50%;z-index:61;
  width:8px;height:8px;border-radius:50%;
  background:var(--ember);
  transform:translateY(-110px);
  transition:transform 1.1s var(--ease), background .8s var(--ease);
}
.temp-label{
  position:fixed;right:52px;top:50%;z-index:61;
  font-size:11px;letter-spacing:.22em;text-transform:uppercase;
  color:var(--milk-mut);
  transform:translateY(-50%) rotate(180deg);
  writing-mode:vertical-rl;
  transition:color .8s var(--ease);
}
body[data-clime="light"] .temp-rail{color:var(--ink)}
body[data-clime="light"] .temp-label{color:var(--ink-mut)}
@media(max-width:1000px){.temp-rail,.temp-dot,.temp-label{display:none}}

/* ---------- навигация ---------- */
.nav{
  position:fixed;top:0;left:0;right:0;z-index:100;
  display:flex;align-items:center;justify-content:space-between;
  padding:26px 48px;
  transition:background .5s var(--ease), padding .5s var(--ease), box-shadow .5s;
}
.nav.scrolled{background:rgba(20,29,25,.88);backdrop-filter:blur(14px);padding:16px 48px}
.nav-logo{
  font-family:var(--disp);font-size:19px;letter-spacing:.16em;text-transform:uppercase;
  text-decoration:none;color:var(--milk);white-space:nowrap;
}
.nav-logo span{color:var(--ember)}
.nav-links{display:flex;gap:34px;list-style:none}
.nav-links a{
  text-decoration:none;font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;
  color:var(--milk-mut);transition:color .3s;
}
.nav-links a:hover{color:var(--milk)}
.nav-right{display:flex;align-items:center;gap:22px}
.nav-phone{text-decoration:none;font-size:16px;letter-spacing:.06em;color:var(--milk);transition:color .3s}
.nav-phone:hover{color:var(--milk)}
.btn-book{
  display:inline-block;text-decoration:none;
  font-size:12px;letter-spacing:.18em;text-transform:uppercase;
  color:var(--pine);background:var(--ember);
  padding:13px 26px;border-radius:100px;
  transition:transform .35s var(--ease), background .35s;
}
.btn-book:hover{background:#D9AC79;transform:translateY(-1px)}
@media(max-width:1160px){.nav-links{display:none}}
@media(max-width:640px){
  .nav{padding:18px 20px}
  .nav.scrolled{padding:12px 20px}
  .nav-phone{display:none}
  .btn-book{padding:11px 20px;font-size:11px}
}

/* ---------- общие блоки ---------- */
.wrap{max-width:1240px;margin:0 auto;padding:0 48px}
@media(max-width:640px){.wrap{padding:0 22px}}
.eyebrow{
  font-size:11px;letter-spacing:.32em;text-transform:uppercase;
  color:var(--ember);margin-bottom:26px;
}
.light .eyebrow, .pond-s .eyebrow{color:#8A6B3F}
.reveal{opacity:0;transform:translateY(34px);transition:opacity 1.1s var(--ease), transform 1.1s var(--ease)}
.reveal.in{opacity:1;transform:none}
.d1{transition-delay:.12s}.d2{transition-delay:.24s}.d3{transition-delay:.36s}

/* ---------- HERO ---------- */
.hero{
  position:relative;min-height:100vh;
  display:flex;flex-direction:column;
  justify-content:flex-end;
  overflow:hidden;
 background:radial-gradient(90% 70% at 12% 100%, #0e1512 0%, transparent 60%), linear-gradient(179deg, #18231e 0%, #141d194d 46%, #10171400 100%), url(/assets/images/resources/976/bbc-1981-resized.jpg) no-repeat center / cover;
}
.hero::before{ /* силуэты сосен */
  content:"";position:absolute;inset:auto 0 0 0;height:46%;
  background:
    linear-gradient(to top, rgba(9,14,12,.9), transparent 70%),
    repeating-linear-gradient(90deg, transparent 0 90px, rgba(9,14,12,.35) 90px 96px, transparent 96px 210px);
  mask-image:linear-gradient(to top,#000 30%,transparent);
  pointer-events:none;
}
.steam{position:absolute;border-radius:50%;filter:blur(70px);pointer-events:none;opacity:0}
.steam-a{width:520px;height:520px;left:8%;bottom:-10%;background:rgba(239,234,224,.07);animation:drift 26s ease-in-out infinite}
.steam-b{width:680px;height:680px;right:-6%;bottom:-24%;background:rgba(200,153,104,.06);animation:drift 34s ease-in-out infinite 6s}
@keyframes drift{
  0%{opacity:0;transform:translateY(60px) scale(.92)}
  25%{opacity:1}
  70%{opacity:.7}
  100%{opacity:0;transform:translateY(-46vh) scale(1.16)}
}
.hero-inner{position:relative;z-index:2;width:100%;max-width:1240px;margin:0 auto;padding:0 48px 0}
.hero h1{
  font-size:clamp(52px, 8.6vw, 124px);
  color:var(--milk);
  margin:18px 0 30px;
}
.hero h1 .hot{color:var(--ember)}
.hero h1 .cold{color:#AFC6BC}
.hero-deck{
  max-width:560px;font-size:17px;color:var(--milk-mut);line-height:1.75;
}
.hero-deck strong{color:var(--milk);font-weight:500}
.hero-cta{display:flex;gap:16px;flex-wrap:wrap;margin:40px 0 0}
.btn-ghost{
  display:inline-block;text-decoration:none;
  font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--milk);
  padding:15px 30px;border:1px solid var(--line-d);border-radius:100px;
  transition:border-color .35s, background .35s;
}
.btn-ghost:hover{border-color:var(--ember-dim);background:rgba(200,153,104,.08)}
.btn-solid{
  display:inline-block;text-decoration:none;
  font-size:12px;letter-spacing:.18em;text-transform:uppercase;
  color:var(--pine);background:var(--ember);
  padding:16px 34px;border-radius:100px;
  transition:transform .35s var(--ease), background .35s;
}
.btn-solid:hover{background:#D9AC79;transform:translateY(-2px)}
.hero-meta{
  position:relative;z-index:2;
  margin-top:64px;border-top:1px solid var(--line-d);
  display:flex;flex-wrap:wrap;gap:0;
}
.hero-meta > div{
  flex:1 1 200px;padding:22px 48px;border-right:1px solid var(--line-d);
  font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--milk-mut);
}
.hero-meta > div:last-child{border-right:none}
.hero-meta b{display:block;font-weight:500;color:var(--milk);font-size:15px;letter-spacing:.02em;text-transform:none;margin-bottom:4px}
@media(max-width:640px){
  .hero-inner{padding:0 22px}
  .hero-meta > div{padding:16px 22px;flex:1 1 46%}
}

/* ---------- полоса оффера ---------- */
.offer-strip{
  background:linear-gradient(90deg, #2A2015, #241C13);
  border-top:1px solid rgba(200,153,104,.22);
  border-bottom:1px solid rgba(200,153,104,.22);
  padding:17px 48px;text-align:center;
  font-size:14px;color:var(--milk-mut);
}
.offer-strip b{color:var(--ember);font-weight:500}
.offer-strip a{color:var(--milk);text-underline-offset:4px}
@media(max-width:640px){.offer-strip{padding:14px 22px;font-size:13px}}

/* ---------- манифест (покой · светлая) ---------- */
.manifest{background:var(--linen);color:var(--ink);padding:150px 0 140px;text-align:center}
.manifest h2{
  font-size:clamp(30px, 4.4vw, 56px);
  max-width:900px;margin:0 auto 40px;
}
.manifest h2 em{color:#8A6B3F}
.manifest p{max-width:620px;margin:0 auto;color:var(--ink-mut);font-size:16.5px}
.manifest .sig{
  margin-top:56px;font-size:11px;letter-spacing:.32em;text-transform:uppercase;color:#9A917E;
}
.beats{
  margin:64px auto 0;max-width:960px;
  display:grid;grid-template-columns:repeat(4,1fr);gap:1px;
  background:var(--line-l);border:1px solid var(--line-l);text-align:left;
}
.beats div{background:var(--linen);padding:28px 24px}
.beats b{display:block;font-family:var(--disp);font-weight:400;font-size:20px;margin-bottom:10px;color:#22332C}
.beats p{font-size:13.5px;color:var(--ink-mut);line-height:1.6;max-width:none;margin:0}
@media(max-width:1000px){.beats{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.beats{grid-template-columns:1fr}}
@media(max-width:640px){.manifest{padding:100px 0 90px}}

/* ---------- контраст +90/+4 (фирменная секция) ---------- */
.contrast{display:grid;grid-template-columns:1fr 1fr;min-height:88vh}
.contrast .side{padding:120px 64px;display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden}
.side-hot{
  background:radial-gradient(80% 70% at 50% 110%, rgba(200, 120, 60, .16), transparent 60%), linear-gradient(180deg, #1B1510, #241a1100), url(/assets/images/resources/976/2025-03-21-11-36-37.png) no-repeat center / cover;
  color:var(--milk);
}
.side-cold{
  background:
    radial-gradient(80% 70% at 50% -10%, rgba(255, 255, 255, .5), transparent 60%), linear-gradient(180deg, #ffffff2e, #e0f9ee), url(/assets/images/resources/976/dscf0525-1-web.webp) no-repeat center / cover;
  color:var(--ink);
}
.deg{
  font-family:var(--disp);
  font-size:clamp(84px, 10vw, 150px);
  line-height:1;margin-bottom:26px;
}
.side-hot .deg{color:var(--ember)}
.side-cold .deg{color:#3E5A50}
.contrast h3{font-size:clamp(22px,2.4vw,30px);margin-bottom:18px}
.contrast p{max-width:420px;font-size:15.5px;line-height:1.75}
.side-hot p{color:var(--milk-mut)}
.side-cold p{color:#42504A}
.contrast .tag{font-size:11px;letter-spacing:.3em;text-transform:uppercase;margin-bottom:30px;opacity:.7}
.contrast-note{
  grid-column:1/-1;background:var(--pine);color:var(--milk-mut);
  text-align:center;padding:56px 48px;font-size:16px;
}
.contrast-note b{color:var(--milk);font-weight:500}
@media(max-width:880px){
  .contrast{grid-template-columns:1fr}
  .contrast .side{padding:80px 22px;min-height:60vh}
}

/* ---------- душа в мелочах ---------- */
.details{background:var(--linen-dp);color:var(--ink);padding:150px 0 130px}
.details-head{max-width:760px;margin-bottom:70px}
.details-head h2{font-size:clamp(32px,4.4vw,56px);margin-bottom:22px}
.details-head h2 em{color:#8A6B3F}
.details-head p{color:var(--ink-mut);font-size:16.5px;max-width:600px}
.dgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line-l);border:1px solid var(--line-l)}
.dcell{background:var(--linen-dp);padding:38px 32px;transition:background .45s var(--ease)}
.dcell:hover{background:#E0D8C7}
.dcell .dword{font-family:var(--disp);font-size:22px;display:block;margin-bottom:12px;color:#22332C}
.dcell p{font-size:14.5px;color:var(--ink-mut)}
.details-close{margin-top:52px;text-align:center;font-family:var(--disp);font-size:clamp(19px,2.2vw,25px);color:#5A5344;max-width:680px;margin-left:auto;margin-right:auto}
@media(max-width:1000px){.dgrid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.details{padding:100px 0 90px}.dgrid{grid-template-columns:1fr}}

/* ---------- приметы места ---------- */
.landmarks{
  margin:70px auto 0;max-width:900px;
  display:grid;grid-template-columns:repeat(3,1fr);gap:1px;
  background:rgba(27,36,32,.16);border:1px solid rgba(27,36,32,.16);
}
.landmarks div{background:rgba(240,244,242,.6);padding:32px 26px;text-align:left}
.landmarks b{display:block;font-family:var(--disp);font-weight:400;font-size:21px;margin-bottom:10px;color:#22332C}
.landmarks p{font-size:13.5px;color:#55645D;line-height:1.6}
@media(max-width:640px){.landmarks{grid-template-columns:1fr}}

/* ---------- пространства · горизонтальная галерея ---------- */
.spaces{background:var(--pine);padding:140px 0 120px}
.spaces-head{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:64px}
.spaces-head h2{font-size:clamp(34px,4.6vw,58px);max-width:560px}
.spaces-head .lead{max-width:360px;color:var(--milk-mut);font-size:15px}
.rail{
  display:flex;gap:26px;
  flex-wrap: nowrap;
  overflow-x: auto;
  padding:6px 48px 34px;margin:0 -0px;
  scroll-snap-type:x mandatory;
  scrollbar-width:none;
}
.rail::-webkit-scrollbar{display:none}
.card{
  flex:0 0 min(430px, 82vw);scroll-snap-align:start;
  text-decoration:none;color:var(--milk);
  display:flex;flex-direction:column;
}
.card-visual{
  height:520px;border-radius:2px;position:relative;overflow:hidden;
  transition:transform .8s var(--ease);
}
.card:hover .card-visual{transform:translateY(-6px)}
.card-visual::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(to top, rgba(10,15,12,.55), transparent 45%);
}
.cv-1{background:radial-gradient(100% 80% at 70% 20%, #3A4A3E, transparent 60%), linear-gradient(165deg,#26332B,#151E19)}
.cv-2{background:radial-gradient(90% 70% at 30% 90%, rgba(200,153,104,.3), transparent 55%), linear-gradient(180deg,#2A2018,#191310)}
.cv-3{background:radial-gradient(90% 90% at 60% 10%, #6E5A4A, transparent 60%), linear-gradient(180deg,#43352A,#231B14)}
.cv-4{background:radial-gradient(110% 80% at 50% 100%, rgba(224,120,60,.34), transparent 55%), linear-gradient(180deg,#221510,#170F0B)}
.cv-5{background:radial-gradient(90% 70% at 60% 0%, #9FB4AA, transparent 65%), linear-gradient(180deg,#4E6157,#2A3830)}
.card-visual .ph{
  position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:rgba(239,234,224,.35);
}
.card-cap{padding:26px 4px 0}
.card-cap .idx{font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--ember);display:block;margin-bottom:12px}
.card-cap h3{font-size:26px;margin-bottom:10px}
.card-cap p{font-size:14.5px;color:var(--milk-mut);max-width:360px}
.card-cap .go{
  display:inline-block;margin-top:16px;font-size:12px;letter-spacing:.16em;text-transform:uppercase;
  color:var(--ember);border-bottom:1px solid var(--ember-dim);padding-bottom:4px;
  transition:color .3s;
}
.card:hover .go{color:#D9AC79}
.rail-hint{padding:0 48px;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:rgba(239,234,224,.3)}
@media(max-width:640px){
  .spaces{padding:100px 0 80px}
  .spaces-head{flex-direction:column;align-items:flex-start;gap:18px;margin-bottom:40px}
  .rail{padding:6px 22px 26px}
  .card-visual{height:420px}
  .rail-hint{padding:0 22px}
}

/* ---------- метод · семь шагов ---------- */
.method{
  background:
    radial-gradient(100% 60% at 100% 0%, rgba(200,153,104,.07), transparent 55%),
    var(--pine-soft);
  padding:150px 0;
}
.method-grid{display:grid;grid-template-columns:5fr 7fr;gap:90px}
.method-left h2{font-size:clamp(32px,4vw,52px);margin-bottom:28px}
.method-left p{color:var(--milk-mut);font-size:16px;max-width:420px}
.method-left .fact{
  margin-top:48px;padding-top:28px;border-top:1px solid var(--line-d);
  display:flex;gap:48px;
}
.method-left .fact div b{display:block;font-family:var(--disp);font-size:30px;color:var(--ember);margin-bottom:4px}
.method-left .fact div span{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--milk-mut)}
.steps{list-style:none;counter-reset:step}
.steps li{
  border-top:1px solid var(--line-d);
  padding:30px 0;display:grid;grid-template-columns:70px 220px 1fr;gap:26px;align-items:baseline;
}
.steps li:last-child{border-bottom:1px solid var(--line-d)}
.steps .rn{font-family:var(--disp);font-size:19px;color:var(--ember)}
.steps h3{font-size:19px}
.steps p{font-size:14.5px;color:var(--milk-mut)}
@media(max-width:1000px){
  .method-grid{grid-template-columns:1fr;gap:56px}
  .steps li{grid-template-columns:52px 1fr;gap:14px}
  .steps p{grid-column:2}
}
@media(max-width:640px){.method{padding:100px 0}}

/* ---------- сценарии и цены (светлая, коммерция) ---------- */
.offers{background:var(--linen);color:var(--ink);padding:150px 0 130px}
.offers-head{max-width:720px;margin-bottom:70px}
.offers-head h2{font-size:clamp(34px,4.6vw,58px);margin-bottom:22px}
.offers-head p{color:var(--ink-mut);font-size:16.5px}
.offers-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line-l);border:1px solid var(--line-l)}
.offer{
  background:var(--linen);padding:44px 36px 40px;
  display:flex;flex-direction:column;
  text-decoration:none;color:var(--ink);
  transition:background .45s var(--ease);position:relative;
}
.offer:hover{background:#EAE4D6}
.offer .who{font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:#8A6B3F;margin-bottom:20px}
.offer_image {
    max-width: 100%;
    height: auto;
    border-radius:10px;
    margin-bottom: 12px;
}
.offer h3{font-size:24px;margin-bottom:14px}
.offer p{font-size:14.5px;color:var(--ink-mut);flex:1}
.offer .price{
  margin-top:30px;padding-top:22px;border-top:1px solid var(--line-l);
  display:flex;justify-content:space-between;align-items:baseline;
}
.offer .price b{font-family:var(--disp);font-weight:400;font-size:23px}
.offer .price span{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-mut)}
.offer .arrow{
  position:absolute;top:38px;right:32px;font-size:18px;color:#8A6B3F;
  transition:transform .4s var(--ease);
}
.offer:hover .arrow{transform:translate(4px,-4px)}
.offers-note{
  margin-top:46px;display:flex;justify-content:space-between;align-items:center;gap:30px;flex-wrap:wrap;
}
.offers-note p{color:var(--ink-mut);font-size:14.5px;max-width:560px}
.btn-dark{
  display:inline-block;text-decoration:none;
  font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--linen);
  background:var(--ink);padding:16px 34px;border-radius:100px;
  transition:background .35s, transform .35s var(--ease);
}
.btn-dark:hover{background:#2E3B34;transform:translateY(-2px)}
@media(max-width:1000px){.offers-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){
  .offers{padding:100px 0 90px}
  .offers-grid{grid-template-columns:1fr}
}

/* ---------- тишина / приватность (прохладная) ---------- */
.quietude{
  background:
    radial-gradient(120% 90% at 50% -20%, rgba(255,255,255,.55), transparent 55%),
    linear-gradient(180deg, var(--pond), #C6D1CB);
  color:var(--ink);padding:160px 0;text-align:center;
}
.quietude h2{font-size:clamp(30px,4.2vw,54px);max-width:820px;margin:0 auto 34px}
.quietude .body{max-width:600px;margin:0 auto;color:#42504A;font-size:16.5px}
.qfacts{
  margin:66px auto 0;max-width:860px;
  display:grid;grid-template-columns:repeat(3,1fr);gap:1px;
  background:rgba(27,36,32,.16);border:1px solid rgba(27,36,32,.16);
}
.qfacts div{background:rgba(240,244,242,.6);padding:30px 22px}
.qfacts b{display:block;font-family:var(--disp);font-weight:400;font-size:26px;margin-bottom:6px;color:#22332C}
.qfacts span{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#55645D}
@media(max-width:640px){
  .quietude{padding:100px 0}
  .qfacts{grid-template-columns:1fr}
}

/* ---------- FAQ ---------- */
.faq{background:var(--pine);padding:140px 0}
.faq-grid{display:grid;grid-template-columns:5fr 7fr;gap:90px}
.faq-left h2{font-size:clamp(30px,3.8vw,48px);margin-bottom:24px}
.faq-left p{color:var(--milk-mut);font-size:15.5px;max-width:400px}
.faq-item{border-top:1px solid var(--line-d)}
.faq-item:last-child{border-bottom:1px solid var(--line-d)}
.faq-q{
  width:100%;background:none;border:none;cursor:pointer;
  font-family:var(--body);color:var(--milk);text-align:left;
  padding:26px 44px 26px 0;font-size:17px;line-height:1.5;
  position:relative;
}
.faq-q::after{
  content:"+";position:absolute;right:6px;top:24px;
  font-family:var(--disp);font-size:22px;color:var(--ember);
  transition:transform .4s var(--ease);
}
.faq-item.open .faq-q::after{transform:rotate(45deg)}
.faq-a{max-height:0;overflow:hidden;transition:max-height .55s var(--ease)}
.faq-a p{padding:0 44px 28px 0;color:var(--milk-mut);font-size:15px}
.faq-a b{color:var(--milk);font-weight:500}
@media(max-width:1000px){.faq-grid{grid-template-columns:1fr;gap:44px}}
@media(max-width:640px){.faq{padding:100px 0}}

/* ---------- финальный CTA ---------- */
.finale{
  position:relative;overflow:hidden;
  background:
    radial-gradient(100% 100% at 50% 120%, rgba(200,153,104,.16), transparent 55%),
    linear-gradient(180deg, #101714, #141D19);
  padding:170px 0 150px;text-align:center;
}
.finale h2{font-size:clamp(38px,5.6vw,72px);margin-bottom:26px}
.finale h2 em{color:var(--ember)}
.finale p{max-width:560px;margin:0 auto 46px;color:var(--milk-mut);font-size:16.5px}
.finale-cta{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}
.finale .trust{
  margin-top:70px;display:flex;justify-content:center;gap:0;flex-wrap:wrap;
  border-top:1px solid var(--line-d);padding-top:0;max-width:900px;margin-left:auto;margin-right:auto;
}
.finale .trust span{
  padding:24px 34px;border-right:1px solid var(--line-d);
  font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--milk-mut);
}
.finale .trust span:last-child{border-right:none}
@media(max-width:640px){
  .finale{padding:110px 0 100px}
  .finale .trust span{padding:16px 18px;border-right:none;flex:1 1 45%}
}

/* ---------- футер ---------- */
footer{background:#0D1310;padding:90px 0 46px;color:var(--milk-mut)}
.foot-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.3fr;gap:60px;margin-bottom:70px}
.foot-logo{font-family:var(--disp);font-size:21px;letter-spacing:.16em;text-transform:uppercase;color:var(--milk);margin-bottom:20px}
.foot-logo span{color:var(--ember)}
.foot-grid p{font-size:14px;max-width:320px}
.foot-grid address{font-style:normal;font-size:14px;margin-top:18px;line-height:1.8}
.col-h{font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:var(--ember);margin-bottom:22px}
.foot-grid nav a, .foot-contacts a{
  display:block;text-decoration:none;color:var(--milk-mut);
  font-size:14.5px;margin-bottom:12px;transition:color .3s;
}
.foot-grid nav a:hover, .foot-contacts a:hover{color:var(--milk)}
.foot-bottom{
  border-top:1px solid var(--line-d);padding-top:30px;
  display:flex;justify-content:space-between;flex-wrap:wrap;gap:14px;
  font-size:12.5px;color:rgba(239,234,224,.4);
}
.foot-bottom a{color:inherit;text-decoration:none;margin-left:22px}
.foot-bottom a:hover{color:var(--milk-mut)}
@media(max-width:1000px){.foot-grid{grid-template-columns:1fr 1fr;gap:44px}}
@media(max-width:640px){.foot-grid{grid-template-columns:1fr}}

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
  .reveal{opacity:1;transform:none}
  html{scroll-behavior:auto}
}
