/* ————— Метель (Snowstorm) ————— */
@font-face{font-family:'Metel';src:url('fonts/SnowstormBlack.woff2') format('woff2');font-weight:800;font-style:normal;font-display:swap}
@font-face{font-family:'Metel';src:url('fonts/SnowstormBold.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:'Metel';src:url('fonts/SnowstormRegular.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}

:root{
  --bg:#0e1214;
  --bg-2:#131a1c;
  --surface:#171d20;
  --surface-2:#1d2529;
  --fg:#eef1f2;
  --muted:#9aa6ad;
  --border:#242d31;
  --accent:#57d9a3;
  --accent-2:#5ec8ff;
  --accent-3:#f0b45c;
  --accent-on:#06120e;
  --font-display:'Unbounded',sans-serif;
  --font-body:'Golos Text',sans-serif;
  --radius:2px;
  --space-section:96px;
  --shell:min(100% - 2rem,1200px);
}

/* ————— База ————— */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  background:var(--bg);color:var(--fg);
  font-family:var(--font-body);
  font-size:17px;line-height:1.62;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
h1,h2,h3{font-family:var(--font-display);font-weight:600;letter-spacing:-0.02em;line-height:1.05}
img{max-width:100%;height:auto}
.num{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}
a{transition:color .2s ease}

/* ————— Фон: не монохромный ————— */
.bg-stage{position:fixed;inset:0;z-index:-2;overflow:hidden;pointer-events:none}
.bg-stage::before{
  content:'';position:absolute;inset:-20%;
  background:
    radial-gradient(38% 34% at 12% 8%,rgba(87,217,163,.20),transparent 68%),
    radial-gradient(34% 30% at 88% 14%,rgba(94,200,255,.16),transparent 70%),
    radial-gradient(46% 40% at 76% 88%,rgba(240,180,92,.10),transparent 72%),
    radial-gradient(40% 36% at 20% 76%,rgba(87,217,163,.10),transparent 74%);
  filter:blur(6px);
}
.bg-stage::after{
  content:'';position:absolute;inset:0;
  background-image:linear-gradient(var(--border) 1px,transparent 1px),linear-gradient(90deg,var(--border) 1px,transparent 1px);
  background-size:88px 88px;opacity:.28;
  mask-image:radial-gradient(120% 90% at 50% 0%,#000 20%,transparent 78%);
  -webkit-mask-image:radial-gradient(120% 90% at 50% 0%,#000 20%,transparent 78%);
}
.noise{position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.5;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.22'/%3E%3C/svg%3E");
}
.panel{background:linear-gradient(180deg,rgba(23,29,32,.92),rgba(19,26,28,.72));border:1px solid var(--border)}
.panel-accent{background:linear-gradient(140deg,rgba(87,217,163,.10),rgba(94,200,255,.05) 55%,transparent);border:1px solid rgba(87,217,163,.22)}
.gradient-text{background:linear-gradient(96deg,var(--accent),var(--accent-2) 78%);-webkit-background-clip:text;background-clip:text;color:transparent}

/* ————— Кнопки и ссылки ————— */
.btn{transition:background-color .2s ease,color .2s ease,border-color .2s ease,transform .15s ease}
.btn-solid{background:var(--accent);color:var(--accent-on);font-weight:500}
.btn-solid:hover{background:#7ce4b6}
.btn-line{border:1px solid var(--border);color:var(--fg)}
.btn-line:hover{border-color:var(--accent);color:var(--accent)}
.lnk{color:var(--fg);text-decoration:none;border-bottom:1px solid var(--accent);padding-bottom:1px}
.lnk:hover{color:var(--accent)}
.row-link{transition:background-color .2s ease,border-color .2s ease}
.row-link:hover{background-color:var(--surface)}

/* ————— Таблица ————— */
table.ledger{width:100%;border-collapse:collapse}
table.ledger th{font-family:var(--font-display);font-weight:400;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);text-align:left;padding:14px 16px;border-bottom:1px solid var(--border)}
table.ledger td{padding:18px 16px;border-bottom:1px solid var(--border);vertical-align:top}
table.ledger tr:last-child td{border-bottom:none}
table.ledger tbody tr{transition:background-color .2s ease}
table.ledger tbody tr:hover{background-color:var(--surface)}

/* ————— Формы ————— */
.slot{background:var(--surface);border:1px dashed var(--border)}
input,select,textarea{background:var(--bg);border:1px solid var(--border);color:var(--fg);font-family:var(--font-body);font-size:16px}
input::placeholder,textarea::placeholder{color:#6c747c}
input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent)}
input[type=checkbox]{accent-color:var(--accent)}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px}

/* ————— Герой ————— */
.metel{font-family:'Metel',Impact,sans-serif;font-weight:800;letter-spacing:.01em;line-height:.92}
h1.hero-title,h2.hero-title{font-family:'Metel',Impact,sans-serif;font-weight:800;font-size:clamp(2.4rem,7.4vw,5.4rem);line-height:.88;letter-spacing:.005em}
.hero-photo{position:relative}
.hero-photo img{width:100%;height:auto;display:block;filter:drop-shadow(0 24px 48px rgba(0,0,0,.55))}
.hero-glow{position:absolute;inset:-12% -18% -6% -18%;background:radial-gradient(58% 52% at 50% 42%,rgba(87,217,163,.20),transparent 72%);pointer-events:none;z-index:-1}

/* ————— Лента фактов (без движения) ————— */
.strip{border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:linear-gradient(90deg,rgba(87,217,163,.07),rgba(94,200,255,.05))}
.strip-track{display:flex;gap:2.5rem;padding:.95rem 1.5rem;align-items:center;white-space:nowrap;overflow-x:auto;scrollbar-width:none}
.strip-track::-webkit-scrollbar{display:none}
.strip-track>span{font-family:'Metel',Impact,sans-serif;font-size:15px;letter-spacing:.06em;text-transform:uppercase;color:var(--fg)}
.strip-track>span b{color:var(--accent);font-weight:inherit}

/* ————— Скриншоты отзывов ————— */
.shot{background:var(--surface);border:1px solid var(--border);overflow:hidden}
.shot img{width:100%;height:auto;display:block}
.shot figcaption{padding:14px 16px;font-size:13px;color:var(--muted);border-top:1px solid var(--border)}

/* ————— CTA: липкая панель и плавающая кнопка ————— */
.cta-bar{position:fixed;left:0;right:0;bottom:0;z-index:60;display:none;gap:.5rem;padding:.6rem .75rem calc(.6rem + env(safe-area-inset-bottom));background:rgba(14,18,20,.96);backdrop-filter:blur(10px);border-top:1px solid var(--border)}
.cta-bar a{flex:1;text-align:center;font-size:15px}
.float-call{position:fixed;right:16px;bottom:16px;z-index:55;display:none;width:56px;height:56px;border-radius:50%;align-items:center;justify-content:center;background:var(--accent);color:var(--accent-on);box-shadow:0 12px 28px rgba(0,0,0,.45)}
.float-call svg{width:26px;height:26px}
@media (max-width:767px){
  .cta-bar{display:flex}
  .float-call{display:flex;bottom:84px}
  body{padding-bottom:76px}
}
@media (min-width:768px){
  .float-call{display:flex}
}

/* ————— FAQ ————— */
details.faq{border-bottom:1px solid var(--border)}
details.faq summary{list-style:none;cursor:pointer;padding:20px 0;font-family:var(--font-display);font-size:17px;display:flex;justify-content:space-between;gap:16px;align-items:flex-start}
details.faq summary::-webkit-details-marker{display:none}
details.faq summary::after{content:'+';color:var(--accent);font-family:var(--font-body);font-size:22px;line-height:1;flex:0 0 auto}
details.faq[open] summary::after{content:'–'}
details.faq p{padding-bottom:20px;color:var(--muted);max-width:46rem}

/* ————— Шаги процесса ————— */
.steps{counter-reset:step;display:grid;gap:1px;background:var(--border)}
.steps>div{background:var(--bg);padding:26px 22px}
.steps>div::before{content:none}

/* ————— Мобильные таблицы ————— */
@media (max-width:767px){
  :root{--space-section:64px}
  table.ledger thead{display:none}
  table.ledger,table.ledger tbody,table.ledger tr,table.ledger td{display:block;width:100%}
  table.ledger tr{border-bottom:1px solid var(--border);padding:18px 0}
  table.ledger tr:last-child td{border-bottom:none}
  table.ledger td{border:none;padding:3px 0}
  table.ledger td::before{content:attr(data-l) " — ";font-family:var(--font-display);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
  table.ledger td:first-child::before{content:""}
  .strip-track{gap:1.75rem;padding:.75rem 1rem}
  .strip-track>span{font-size:13px}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *{transition:none!important;animation:none!important}
}

.hair{background-image:linear-gradient(var(--border) 1px,transparent 1px),linear-gradient(90deg,var(--border) 1px,transparent 1px);background-size:88px 88px}
.fade-top{background-image:linear-gradient(180deg,rgba(14,18,20,0) 0%,rgba(14,18,20,.92) 42%,var(--bg) 100%)}

/* Модальное окно заявки */
.lead-modal{position:fixed;inset:0;z-index:90;display:flex;align-items:center;justify-content:center;padding:16px}
.lead-modal[hidden]{display:none}
.lead-modal__backdrop{position:absolute;inset:0;background:rgba(5,9,10,.78);backdrop-filter:blur(5px)}
.lead-modal__panel{position:relative;width:100%;max-width:580px;max-height:88vh;overflow-y:auto;background:var(--bg-2);border:1px solid var(--border);padding:26px 22px 28px}
.lead-modal__close{position:absolute;top:10px;right:12px;font-size:26px;line-height:1;color:var(--muted);background:none;border:0;cursor:pointer;padding:6px 10px}
.lead-modal__close:hover{color:var(--fg)}
.lead-modal__field{width:100%;background:transparent;border:0;border-bottom:1px solid var(--border);padding:10px 0;color:var(--fg);font-family:inherit;font-size:15px}
.lead-modal__field:focus{outline:none;border-bottom-color:var(--accent)}
.lead-modal__label{display:block;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:2px}
.lead-modal__opt{font-size:11px;color:var(--muted);text-transform:none;letter-spacing:0}
select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%238c9aa1' stroke-width='1.6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:34px}
select option{background:#10171a;color:#eef2f3}
.lead-select{position:relative;display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;cursor:pointer;color:var(--fg)}
.lead-select__caret{width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:6px solid var(--muted);flex:none;transition:transform .15s}
.lead-select.is-open .lead-select__caret{transform:rotate(180deg)}
.lead-select__list{position:absolute;left:0;right:0;top:100%;z-index:5;margin:0;padding:4px 0;list-style:none;background:#131b1e;border:1px solid var(--border);box-shadow:0 12px 28px rgba(0,0,0,.45);max-height:260px;overflow-y:auto}
.lead-select__list[hidden]{display:none}
.lead-select__list li{padding:9px 14px;font-size:15px;color:var(--fg);cursor:pointer}
.lead-select__list li:hover{background:#1b2529}
.lead-select__list li.is-active{color:var(--accent)}

/* Логотип в шапке: светлая плитка, чтобы тёмно-зелёный знак был виден */
.logo-tile{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;flex:none;border-radius:10px;background:#eef2f1;box-shadow:0 2px 10px rgba(0,0,0,.35)}
.logo-tile img{width:34px;height:34px;display:block}

/* Вводные серые абзацы под заголовками — единый размер на всех страницах */
.lead{font-size:16px;line-height:1.6;color:var(--muted)}
@media (max-width:640px){.lead{font-size:16px;line-height:1.58}}

/* ————— Типографическая шкала ————— */
h1,h2,h3{line-height:1.12}
@media (max-width:640px){
  body{font-size:16px;line-height:1.6}
  h1{line-height:1.08}
  h2{line-height:1.14}
  h3{line-height:1.2}
}
/* мелкий служебный текст на мобильных не должен быть меньше 14px */
@media (max-width:640px){
  .text-\[13px\],.text-\[14px\]{font-size:14px}
}

/* Платформенная плашка «Сделано в Спри» перекрывала мобильную кнопку заявки */
#spru-pages-badge-host{display:none !important}
