/* ==========================================================================
   WoodMarket74 — стили лендинга.
   Значения цветов и размеров сняты пипеткой с макета (1440px).
   ========================================================================== */

/* ── Шрифт ──────────────────────────────────────────────────────────────── */
@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;
  src:url(../fonts/inter-cyrillic-400-normal.woff2) format('woff2');
  unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;
  src:url(../fonts/inter-latin-400-normal.woff2) format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215}
@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;
  src:url(../fonts/inter-cyrillic-500-normal.woff2) format('woff2');
  unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;
  src:url(../fonts/inter-latin-500-normal.woff2) format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215}
@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;
  src:url(../fonts/inter-cyrillic-600-normal.woff2) format('woff2');
  unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;
  src:url(../fonts/inter-latin-600-normal.woff2) format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215}
@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;
  src:url(../fonts/inter-cyrillic-700-normal.woff2) format('woff2');
  unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;
  src:url(../fonts/inter-latin-700-normal.woff2) format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215}
@font-face{font-family:Inter;font-style:normal;font-weight:800;font-display:swap;
  src:url(../fonts/inter-cyrillic-800-normal.woff2) format('woff2');
  unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Inter;font-style:normal;font-weight:800;font-display:swap;
  src:url(../fonts/inter-latin-800-normal.woff2) format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215}

/* ── Токены ─────────────────────────────────────────────────────────────── */
:root{
  --orange:#FF6B2C;         --orange-hover:#EE5A19;
  --orange-soft:#FF7E3A;    --orange-soft-hover:#F26C25;
  --green:#2A8C5D;          --green-hover:#227A4F;
  --green-light:#66B24A;    --green-logo:#4C8B2B;
  --brown:#A46A3F;          --brown-dark:#4A2415;
  --beige-bg:#F4E6D9;       --beige-card:#FCF3EA;
  --beige-chip:#F1DAC6;     --beige-soft:#F7EADC;
  --gray-1:#F0F2F1;         --gray-2:#EAEEF1;   --gray-3:#F1F1F1;
  --dark:#302F34;
  --ink:#101114;            --ink-2:#2B2E33;    --muted:#6E7378;  --muted-2:#8A9096;
  --line:#E6E8EA;           --line-soft:#EFF1F2;
  --card-radius:14px;       --btn-radius:9px;
  --container:1304px;
  --shadow-card:0 1px 2px rgba(16,17,20,.04), 0 6px 20px rgba(16,17,20,.05);
  --shadow-float:0 10px 40px rgba(16,17,20,.14);
}

/* ── База ───────────────────────────────────────────────────────────────── */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  font-family:Inter,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  color:var(--ink-2); background:#fff; margin:0;
  font-size:16px; line-height:1.5;
  -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
}
img{max-width:100%; display:block}
a{color:inherit; text-decoration:none}
h1,h2,h3,h4{color:var(--ink); margin:0; font-weight:700; letter-spacing:-.02em}
p{margin:0}
ul{margin:0; padding:0; list-style:none}
:focus-visible{outline:2px solid var(--orange); outline-offset:2px}

.container{max-width:var(--container); margin-inline:auto; padding-inline:20px; width:100%}
.section{padding:60px 0}
.section__title{font-size:clamp(28px,3vw,44px); line-height:1.14; text-align:center}
.section__subtitle{
  margin:16px auto 0; max-width:760px; text-align:center;
  color:var(--ink-2); font-size:17px; line-height:1.5;
}
.section__eyebrow{
  text-align:center; text-transform:uppercase; letter-spacing:.08em;
  font-size:13px; font-weight:600; color:var(--orange); margin-bottom:10px;
}
.bg-gray-1{background:var(--gray-1)}
.bg-gray-2{background:var(--gray-2)}

/* ── Кнопки ─────────────────────────────────────────────────────────────── */
.btn{
  --bs-btn-border-radius:var(--btn-radius);
  border-radius:var(--btn-radius); font-weight:600; font-size:15px;
  padding:12px 22px; border:1px solid transparent; line-height:1.25;
  transition:background-color .15s ease, color .15s ease, border-color .15s ease, opacity .15s;
  display:inline-flex; align-items:center; justify-content:center; gap:8px; cursor:pointer;
}
.btn-accent{background:var(--orange); color:#fff}
.btn-accent:hover,.btn-accent:focus{background:var(--orange-hover); color:#fff}
.btn-accent-soft{background:var(--orange-soft); color:#fff}
.btn-accent-soft:hover{background:var(--orange-soft-hover); color:#fff}
.btn-green{background:var(--green); color:#fff}
.btn-green:hover,.btn-green:focus{background:var(--green-hover); color:#fff}
.btn-ghost{background:transparent; color:#fff; border-color:rgba(255,255,255,.65)}
.btn-ghost:hover{background:rgba(255,255,255,.12); color:#fff}
.btn-outline-dark{background:#fff; color:var(--ink); border-color:#202226}
.btn-outline-dark:hover{background:var(--ink); color:#fff}
.btn-outline-soft{background:#fff; color:var(--ink); border-color:#C9CDD1}
.btn-outline-soft:hover{border-color:var(--ink)}
.btn-gray{background:#6E7378; color:#fff}
.btn-gray:hover{background:#5C6165; color:#fff}
.btn[disabled],.btn:disabled{cursor:not-allowed; pointer-events:none; filter:saturate(.62) brightness(1.06); opacity:.85}
.btn-ghost[disabled],.btn-outline-soft[disabled],.btn-outline-dark[disabled]{opacity:.5; filter:none}
.btn-lg{font-size:16px; padding:15px 28px}
.btn-block{width:100%}

/* ── Топбар ─────────────────────────────────────────────────────────────── */
.topbar{background:#fff; border-bottom:1px solid var(--line-soft); font-size:14px}
.topbar__row{display:flex; align-items:center; gap:36px; min-height:91px; flex-wrap:wrap}
.topbar__item{display:flex; align-items:flex-start; gap:10px; color:var(--ink-2); line-height:1.32}
.topbar__ico{
  flex:0 0 26px; width:26px; height:26px; border-radius:50%;
  border:1.6px solid var(--green); color:var(--green);
  display:grid; place-items:center; margin-top:1px;
}
.topbar__ico svg{width:14px; height:14px}
.topbar__socials{display:flex; gap:10px; margin-left:auto; margin-right:18px}
.topbar__social{
  width:36px; height:36px; border-radius:50%; border:1.6px solid var(--green);
  color:var(--green); display:grid; place-items:center; font-size:11px; font-weight:600;
  transition:background-color .15s, color .15s;
}
.topbar__social:hover{background:var(--green); color:#fff}
.topbar__social svg{width:17px; height:17px}
.topbar__phone{font-size:26px; font-weight:700; color:var(--ink); white-space:nowrap; letter-spacing:-.01em}

/* ── Хедер ──────────────────────────────────────────────────────────────── */
.header{background:#fff; position:sticky; top:0; z-index:1030; border-bottom:1px solid var(--line-soft)}
.header__row{display:flex; align-items:center; gap:40px; min-height:85px}
.logo{font-size:26px; font-weight:700; letter-spacing:-.02em; white-space:nowrap}
.logo b{color:var(--green-logo); font-weight:700}
.logo span{color:var(--ink)}
.nav{display:flex; gap:30px; align-items:center; flex-wrap:wrap}
.nav a{font-size:16px; font-weight:500; color:var(--ink); transition:color .15s}
.nav a:hover{color:var(--orange)}
.header__cta{margin-left:auto}
.burger{display:none; margin-left:auto; background:none; border:0; padding:8px; color:var(--ink)}

/* ── Hero ───────────────────────────────────────────────────────────────── */
.hero{position:relative; background:#1B1A1E; color:#fff; overflow:hidden}
.hero__picture{position:absolute; inset:0; display:block}
.hero__bg{display:block; object-fit:cover; width:100%; height:100%}
.hero::after{
  content:""; position:absolute; inset:0;
  background:linear-gradient(100deg, rgba(12,11,14,.86) 0%, rgba(12,11,14,.72) 38%, rgba(12,11,14,.28) 66%, rgba(12,11,14,.18) 100%);
}
.hero__inner{position:relative; z-index:2; display:grid; grid-template-columns:1fr 405px;
  gap:24px; align-items:end; min-height:900px; padding:64px 0 97px}
.hero__content{align-self:center; padding-bottom:34px}
.hero__eyebrow{
  color:var(--green-light); text-transform:uppercase; letter-spacing:.06em;
  font-weight:600; font-size:15px; margin-bottom:18px;
}
.hero h1{color:#fff; font-size:clamp(33px,4.15vw,60px); line-height:1.1; font-weight:700;
  max-width:850px; letter-spacing:-.03em}
.hero__lead{margin-top:22px; font-size:19px; line-height:1.5; max-width:640px; color:rgba(255,255,255,.94)}
.hero__list{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px 26px; margin:34px 0 0; max-width:640px}
.hero__list li{display:flex; align-items:center; gap:12px; font-size:19px; color:#fff}
.hero__check{
  flex:0 0 24px; width:24px; height:24px; border-radius:50%; background:var(--green);
  display:grid; place-items:center;
}
.hero__check svg{width:13px; height:13px; color:#fff}
.hero__actions{display:flex; gap:16px; margin-top:38px; flex-wrap:wrap}

/* Карточка формы в hero */
.hero-form{background:#fff; border-radius:16px; padding:28px; color:var(--ink); box-shadow:var(--shadow-float)}
.hero-form__title{font-size:23px; line-height:1.25; margin-bottom:20px}

/* ── Формы ──────────────────────────────────────────────────────────────── */
.field{margin-bottom:14px}
.field__label{display:block; font-size:14px; color:var(--ink-2); margin-bottom:7px}
.field__control{
  width:100%; border:1px solid #D8DCDF; border-radius:10px; background:#fff;
  padding:13px 15px; font:inherit; font-size:15px; color:var(--ink);
  transition:border-color .15s, box-shadow .15s;
}
.field__control::placeholder{color:#9AA0A6}
.field__control:focus{outline:none; border-color:var(--orange); box-shadow:0 0 0 3px rgba(255,107,44,.14)}
textarea.field__control{min-height:92px; resize:vertical}
select.field__control{
  appearance:none; cursor:pointer; padding-right:40px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%236E7378' stroke-width='1.7'%3E%3Cpath d='M4 6l4 4 4-4'/%3E%3C/svg%3E");
  background-repeat:no-repeat; background-position:right 14px center; background-size:16px;
}
.field--invalid .field__control{border-color:#D64545; box-shadow:0 0 0 3px rgba(214,69,69,.12)}
.field__error{display:none; color:#D64545; font-size:13px; margin-top:6px}
.field--invalid .field__error{display:block}

.file-field{
  display:flex; align-items:center; gap:10px; width:100%; cursor:pointer;
  border:1px solid #D8DCDF; border-radius:10px; padding:13px 15px;
  color:var(--muted); font-size:15px; background:#fff; transition:border-color .15s;
}
.file-field:hover{border-color:#B9BEC3}
.file-field svg{width:18px; height:18px; flex:0 0 18px}
.file-field__name{color:var(--ink); overflow:hidden; text-overflow:ellipsis; white-space:nowrap}
.file-field input[type=file]{position:absolute; width:1px; height:1px; opacity:0; pointer-events:none}

.hp-field{position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden}
.form-note{font-size:13px; line-height:1.45; color:var(--muted); margin-top:12px}
.form-status{display:none; font-size:14px; margin-top:12px; padding:10px 12px; border-radius:8px}
.form-status--error{display:block; background:#FDECEC; color:#B33A3A}

/* ── Секция «формат заказа» ─────────────────────────────────────────────── */
.format-grid{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; margin-top:38px}
.fcard{
  background:#fff; border:1px solid var(--line); border-radius:var(--card-radius);
  overflow:hidden; display:flex; flex-direction:column; box-shadow:var(--shadow-card);
}
.fcard img{width:100%; height:240px; object-fit:cover}
.fcard__body{padding:22px 26px 26px; display:flex; flex-direction:column; flex:1}
.fcard__title{font-size:27px; margin-bottom:10px}
.fcard__lead{font-size:17px; color:var(--ink-2)}
.fcard__result{font-size:14px; color:var(--muted); margin-top:10px}
.fcard__result b{color:var(--ink-2); font-weight:400}
.fcard .btn{margin-top:20px; align-self:flex-start}

/* ── Каталог ────────────────────────────────────────────────────────────── */
.catalog{max-width:var(--grid-max,var(--container)); margin:34px auto 0}
.catalog-section{padding:44px 0 52px}
.catalog-section .section__title{font-size:clamp(26px,2.7vw,38px)}
.catalog-section .section__subtitle{font-size:15px; margin-top:10px}
.catalog-grid{
  display:grid; gap:16px;
  grid-template-columns:repeat(var(--cols-m,1),minmax(0,1fr));
  align-items:stretch;
}
.catalog-grid .is-wide{grid-column:span min(var(--span,2), var(--cols-m,1))}
@media (min-width:576px){
  .catalog-grid{grid-template-columns:repeat(var(--cols-t,2),minmax(0,1fr))}
  .catalog-grid .is-wide{grid-column:span min(var(--span,2), var(--cols-t,2))}
}
@media (min-width:992px){
  .catalog-grid{grid-template-columns:repeat(var(--cols-d,3),minmax(0,1fr))}
  .catalog-grid .is-wide{grid-column:span min(var(--span,2), var(--cols-d,3))}
}

.pcard{
  background:#fff; border-radius:var(--card-radius); overflow:hidden;
  display:flex; flex-direction:column; box-shadow:var(--shadow-card);
  transition:transform .2s ease, box-shadow .2s ease;
  will-change:transform;
}
.pcard:hover{transform:translateY(-6px); box-shadow:0 12px 30px rgba(16,17,20,.12)}
.pcard__media{position:relative; padding:8px 8px 0}
.pcard__media img{display:block; width:100%; height:var(--pcard-img-h,180px); object-fit:cover; border-radius:8px}
.pcard__badge{
  position:absolute; left:18px; background:rgba(255,255,255,.95); color:var(--ink);
  font-size:11px; font-weight:500; padding:5px 11px; border-radius:999px;
  box-shadow:0 1px 4px rgba(0,0,0,.12); white-space:nowrap;
}
.pcard__media--bottom .pcard__badge{bottom:10px}
.pcard__media--top .pcard__badge{top:16px}
.pcard__body{padding:13px 16px 16px; display:flex; flex-direction:column; flex:1}
.pcard__title{font-size:20px; line-height:1.2; margin-bottom:4px}
.pcard__lead{font-size:13px; line-height:1.18; color:var(--ink-2); font-weight:500}
.pcard__specs{margin-top:11px; font-size:13px; line-height:1.15; color:var(--ink-2)}
.pcard__specs li{margin-bottom:2px}
.pcard__specs span{font-weight:600; color:var(--ink)}
.pcard__foot{margin-top:auto; padding-top:8px}
.pcard__price{
  font-size:19px; font-weight:700; color:var(--ink); letter-spacing:-.01em;
  border-top:1px solid var(--line); padding-top:8px; margin-bottom:3px;
}
.pcard__note{font-size:12.5px; line-height:1.16; color:var(--ink-2); font-weight:500; margin-bottom:9px}
.pcard__cta{width:100%; border-radius:999px; font-size:12.5px; font-weight:500; padding:7px 16px;
  background:var(--orange-soft)}
.pcard__cta:hover{background:var(--orange-soft-hover)}

/* Крупная карточка на 2 места */
.pcard--wide{flex-direction:row; align-items:stretch}
.pcard--wide .pcard__media{flex:0 0 46%; padding:8px 0 8px 8px}
.pcard--wide .pcard__media img{height:100%; min-height:212px; border-radius:8px}
.pcard--wide .pcard__media .pcard__badge{display:none}
.pcard--wide .pcard__body{padding:16px 22px 18px}
.pcard--wide .pcard__title{font-size:22px; margin-top:8px; line-height:1.18}
.pcard--wide .pcard__lead{font-size:13.5px; line-height:1.35}
.pcard--wide .pcard__specs{line-height:1.32}
.pcard--wide .pcard__note{font-size:13px; line-height:1.35; margin-bottom:12px}
.pcard--wide .pcard__foot{padding-top:12px}
.pcard--wide .pcard__price{border-top:0; padding-top:0}
.pcard--wide .pcard__cta{width:auto; align-self:flex-start; padding:10px 22px; border-radius:var(--btn-radius)}
.pcard__badge--inline{position:static; display:inline-block; background:var(--gray-1); box-shadow:none}

/* Кнопка «Показать ещё» */
.catalog-more{display:flex; align-items:center; gap:18px; margin-top:28px}
.catalog-more__line{flex:1; height:1px; background:#D5D9DC}
.catalog-more__btn{
  background:none; border:0; color:var(--muted); font-size:14px; font-weight:500;
  padding:6px 14px; border-radius:999px; cursor:pointer; display:inline-flex; align-items:center; gap:8px;
  transition:color .15s, background-color .15s;
}
.catalog-more__btn:hover{color:var(--orange); background:rgba(255,107,44,.08)}
.catalog-more__btn[disabled]{opacity:.6; cursor:default}
.catalog-actions{display:flex; justify-content:center; gap:16px; margin-top:40px; flex-wrap:wrap}
.catalog-actions-section{padding-top:40px}
.catalog-actions-section .catalog-actions{margin-top:0}

/* ── Кейсы / отзывы ─────────────────────────────────────────────────────── */
.cases{background:#fff}
.cases .section__title{color:var(--brown-dark)}
.cases-grid{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; margin-top:34px}
.case{
  background:#fff; border:1px solid #EFE1D5; border-radius:var(--card-radius);
  padding:14px; display:flex; flex-direction:column;
}
.case img{width:100%; height:188px; object-fit:cover; border-radius:9px}
.case__name{font-size:19px; color:var(--brown-dark); margin-top:16px}
.case__role{font-size:15px; color:var(--muted); margin-top:2px}
.case__text{font-size:15px; line-height:1.5; color:var(--ink-2); margin-top:14px}
.case__chips{display:flex; flex-wrap:wrap; gap:8px; margin-top:auto; padding-top:18px}
.chip{
  display:inline-flex; align-items:center; gap:7px; background:var(--beige-chip);
  color:var(--ink-2); font-size:12.5px; padding:6px 12px; border-radius:999px;
}
.chip svg{width:13px; height:13px; color:var(--orange); flex:0 0 13px}

/* Видеоблок */
.video-row{display:grid; grid-template-columns:558px 1fr; gap:32px; align-items:center; margin-top:44px}
.video-thumb{position:relative; border-radius:11px; overflow:hidden; display:block}
.video-thumb img{width:100%; height:191px; object-fit:cover}
.video-thumb__play{
  position:absolute; inset:0; margin:auto; width:64px; height:64px; border-radius:50%;
  background:rgba(255,255,255,.94); border:0; display:grid; place-items:center; cursor:pointer;
  transition:transform .15s;
}
.video-thumb:hover .video-thumb__play{transform:scale(1.06)}
.video-thumb__play svg{width:22px; height:22px; color:var(--ink); margin-left:3px}
.video-info h3{font-size:26px; line-height:1.24; color:var(--brown-dark)}
.video-info p{font-size:15px; line-height:1.5; color:var(--ink-2); margin-top:10px}
.video-info .btn{margin-top:18px}

/* Оранжево-коричневая CTA-полоса */
.cta-bar{
  margin-top:36px; border-radius:12px; padding:26px 30px; color:#fff;
  background:linear-gradient(90deg,#8A5730 0%,#A06746 52%,#8E5C39 100%);
  display:flex; align-items:center; gap:24px; flex-wrap:wrap;
}
.cta-bar__text{flex:1; min-width:280px}
.cta-bar h3{color:#fff; font-size:24px; line-height:1.3}
.cta-bar p{font-size:14.5px; color:rgba(255,255,255,.92); margin-top:6px}

/* ── Процесс ────────────────────────────────────────────────────────────── */
.process{background:var(--beige-bg); padding:64px 0}
.process__card{background:var(--beige-card); border-radius:26px; padding:56px 60px}
.process .section__eyebrow{color:var(--ink-2)}
.process .section__title{font-size:clamp(30px,3.4vw,46px)}
.process .section__subtitle{color:var(--ink-2)}
.steps{
  display:grid; grid-template-columns:repeat(2,minmax(0,1fr));
  column-gap:80px; row-gap:34px; margin-top:44px; position:relative;
}
.step{display:grid; grid-template-columns:auto auto 1fr; gap:16px; align-items:start; position:relative}
.step__num{font-size:38px; font-weight:700; color:#2B2620; line-height:1; letter-spacing:-.03em}
.step__icon{width:72px; height:72px; flex:0 0 72px}
.step__icon svg{width:100%; height:100%}
.step__title{font-size:20px; margin-bottom:6px}
.step__text{font-size:14.5px; line-height:1.45; color:var(--ink-2)}
.step__result{
  margin-top:12px; background:var(--beige-soft); border-radius:9px; padding:10px 12px;
  font-size:13px; line-height:1.4; color:var(--ink-2); display:flex; gap:9px;
}
.step__result svg{width:16px; height:16px; flex:0 0 16px; color:#C29A6E; margin-top:1px}
.step__result b{font-weight:700; color:var(--ink)}
.step__arrow{position:absolute; color:#C9B7A4; pointer-events:none}
.step__arrow svg{width:100%; height:100%}
.step__arrow--right{right:-58px; top:52px; width:44px; height:14px}
.step__arrow--left{left:-58px; top:52px; width:44px; height:14px}
.step__arrow--down{right:44%; bottom:-30px; width:14px; height:26px}
.process__cta{
  margin-top:46px; background:var(--beige-soft); border-radius:12px; padding:26px 30px;
  display:flex; align-items:center; gap:24px; flex-wrap:wrap;
}
.process__cta h3{font-size:24px}
.process__cta p{font-size:14.5px; color:var(--ink-2); margin-top:6px}
.process__cta .btn{margin-left:auto}

/* ── FAQ ────────────────────────────────────────────────────────────────── */
.faq{background:#fff; padding-bottom:150px}
.faq__list{max-width:1120px; margin:36px auto 0}
.faq__item{border-top:1px solid var(--line)}
.faq__item:last-child{border-bottom:1px solid var(--line)}
.faq__btn{
  width:100%; background:none; border:0; text-align:left; cursor:pointer;
  display:flex; gap:14px; align-items:flex-start; padding:20px 8px; color:var(--ink);
}
.faq__num{font-size:16px; color:var(--ink-2); min-width:22px; font-weight:400}
.faq__q{flex:1; font-size:19px; font-weight:700; line-height:1.32; letter-spacing:-.01em}
.faq__sign{width:22px; height:22px; flex:0 0 22px; color:var(--muted); position:relative; margin-top:3px}
.faq__sign::before,.faq__sign::after{
  content:""; position:absolute; background:currentColor; left:50%; top:50%; transform:translate(-50%,-50%);
}
.faq__sign::before{width:15px; height:1.6px}
.faq__sign::after{width:1.6px; height:15px; transition:opacity .18s, transform .18s}
.faq__item.is-open .faq__sign::after{opacity:0; transform:translate(-50%,-50%) rotate(90deg)}
.faq__panel{display:none; padding:0 44px 22px}
.faq__item.is-open .faq__panel{display:block}
.faq__panel p{font-size:16.5px; line-height:1.5; color:var(--ink-2)}

/* ── Секция расчёта ─────────────────────────────────────────────────────── */
.calc{position:relative; color:#fff; overflow:hidden; padding:80px 0}
.calc__bg{position:absolute; inset:0; width:100%; height:100%; object-fit:cover}
.calc::after{content:""; position:absolute; inset:0; background:linear-gradient(95deg,rgba(14,13,16,.9) 0%,rgba(14,13,16,.74) 45%,rgba(14,13,16,.46) 100%)}
.calc__inner{position:relative; z-index:2; display:grid; grid-template-columns:1fr 488px; gap:56px; align-items:center}
.calc__eyebrow{color:var(--orange); text-transform:uppercase; letter-spacing:.06em; font-weight:600; font-size:15px}
.calc__title{color:#fff; font-size:clamp(30px,3.75vw,50px); line-height:1.13; margin-top:14px; letter-spacing:-.025em}
.calc__lead{font-size:17.5px; line-height:1.5; margin-top:20px; color:rgba(255,255,255,.92); max-width:560px}
.calc__list{margin-top:26px; display:grid; gap:11px}
.calc__list li{display:flex; gap:14px; align-items:center; font-size:17.5px; color:#fff}
.calc__list svg{width:17px; height:17px; color:#5FBF74; flex:0 0 17px}
.calc-form{background:#fff; border-radius:18px; padding:30px; color:var(--ink); box-shadow:var(--shadow-float)}
.calc-form__title{font-size:23px; line-height:1.26; margin-bottom:20px}

/* ── Контакты ───────────────────────────────────────────────────────────── */
.contacts{background:var(--gray-3); padding:70px 0}
.contacts__inner{display:grid; grid-template-columns:1fr 657px; gap:60px; align-items:start}
.contacts h2{font-size:42px; letter-spacing:-.025em}
.contacts__about{font-size:17px; line-height:1.4; color:var(--ink-2); margin-top:10px; max-width:330px}
.contacts__list{margin-top:26px; display:grid; gap:16px}
.contacts__item{display:flex; gap:12px; align-items:flex-start; font-size:16.5px; color:var(--ink-2); line-height:1.4}
.contacts__item svg{width:19px; height:19px; flex:0 0 19px; color:var(--ink-2); margin-top:2px}
.contacts__actions{margin-top:28px; display:grid; gap:12px; max-width:328px}
.contacts__messengers{display:flex; gap:12px}
.contacts__messenger{
  display:flex; align-items:center; gap:9px; background:#fff; border:1px solid #D8DCDF;
  border-radius:9px; padding:11px 16px; font-size:13px; font-weight:600; line-height:1.25; color:var(--ink);
  transition:border-color .15s;
}
.contacts__messenger:hover{border-color:var(--ink)}
.contacts__messenger svg{width:20px; height:20px; flex:0 0 20px}
.contacts__map{border-radius:12px; overflow:hidden; box-shadow:var(--shadow-card)}
.contacts__map iframe{display:block; width:100%; height:515px; border:0; background:#e8ece9}

/* ── Футер ──────────────────────────────────────────────────────────────── */
.footer{background:var(--dark); color:rgba(255,255,255,.86); padding:58px 0 26px}
.footer__grid{display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:60px}
.footer__brand{font-size:24px; font-weight:700; color:#fff}
.footer__tagline{font-size:15px; line-height:1.45; margin-top:14px; color:rgba(255,255,255,.72); max-width:250px}
.footer h4{color:#fff; font-size:17px; margin-bottom:16px}
.footer__links{display:grid; gap:10px}
.footer__links a{font-size:15px; color:rgba(255,255,255,.82); transition:color .15s}
.footer__links a:hover{color:var(--orange)}
.footer__contacts{display:grid; gap:14px; font-size:15px; line-height:1.4; color:rgba(255,255,255,.82)}
.footer__bottom{
  margin-top:44px; padding-top:22px; border-top:1px solid rgba(255,255,255,.12);
  display:flex; gap:24px; flex-wrap:wrap; align-items:center;
  font-size:13.5px; color:rgba(255,255,255,.66);
}
.footer__legal{margin-left:auto; display:flex; gap:26px; flex-wrap:wrap}
.footer__legal a{text-decoration:underline; text-underline-offset:3px}
.footer__legal a:hover{color:#fff}

/* ── Модалка ────────────────────────────────────────────────────────────── */
.modal-content{border:0; border-radius:16px; padding:8px}
.modal-title{font-size:23px; line-height:1.25}
.modal-header{border-bottom:0; padding:22px 22px 6px}
.modal-body{padding:16px 22px 24px}
.modal-lead{font-size:14.5px; color:var(--muted); margin:-6px 0 18px}

/* ── Страница «Спасибо» ─────────────────────────────────────────────────── */
.thanks{min-height:56vh; display:grid; place-items:center; text-align:center; padding:100px 0}
.thanks .container{display:flex; flex-direction:column; align-items:center}
.thanks__icon{
  width:88px; height:88px; border-radius:50%; background:rgba(42,140,93,.1);
  display:grid; place-items:center; margin:0 auto 28px;
}
.thanks__icon svg{width:42px; height:42px; color:var(--green)}
.thanks h1{font-size:clamp(30px,4vw,48px); line-height:1.15}
.thanks__text{font-size:18px; color:var(--ink-2); margin:16px auto 0; max-width:620px; width:100%}
.thanks__text p{margin:0 auto; max-width:620px}
.thanks__text p+p,.thanks__text ul,.thanks__text ol{margin-top:12px}
.thanks__text ul,.thanks__text ol{display:inline-block; text-align:left; padding-left:22px}
.thanks__text ul{list-style:disc}
.thanks__text ol{list-style:decimal}
.thanks .btn{margin-top:32px}

/* ── Адаптив ────────────────────────────────────────────────────────────── */
@media (max-width:1199px){
  .hero__inner{grid-template-columns:1fr 370px; min-height:0; padding:56px 0}
  .calc__inner{grid-template-columns:1fr 430px; gap:36px}
  .contacts__inner{grid-template-columns:1fr 1fr; gap:36px}
  .video-row{grid-template-columns:1fr 1fr}
  .process__card{padding:44px 36px}
  .steps{column-gap:56px}
  .step__arrow{display:none}
}
@media (max-width:991px){
  .section{padding:56px 0}
  .nav{display:none}
  .burger{display:inline-flex}
  .header__cta{display:none}
  .hero__inner{grid-template-columns:1fr; gap:34px}
  .hero-form{max-width:460px}
  .format-grid{gap:20px}
  .cases-grid{grid-template-columns:1fr 1fr}
  .video-row{grid-template-columns:1fr; gap:22px}
  .steps{grid-template-columns:1fr; row-gap:26px}
  .calc__inner{grid-template-columns:1fr; gap:32px}
  .contacts__inner{grid-template-columns:1fr}
  .contacts__map iframe{height:380px}
  .footer__grid{grid-template-columns:1fr 1fr; gap:30px}
  .pcard--wide{flex-direction:column}
  .pcard--wide .pcard__media{flex:auto; padding:8px 8px 0}
  .pcard--wide .pcard__media img{min-height:0; height:200px}
}
@media (max-width:767px){
  /* на телефоне в верхней полосе оставляем только звонок и телефон:
     адрес и режим работы дублируются в секции контактов */
  .topbar__row{gap:12px; padding:12px 0; min-height:0; flex-wrap:nowrap}
  .topbar__item{display:none}
  .topbar__phone{font-size:19px}
  .topbar__socials{margin-left:auto; margin-right:0}
  .topbar__social{width:32px; height:32px}
  .topbar .btn{padding:10px 14px; font-size:14px}
  .header__row{min-height:68px}
  .logo{font-size:22px}
  .format-grid{grid-template-columns:1fr}
  .cases-grid{grid-template-columns:1fr}
  .fcard img{height:200px}
  .fcard__body{padding:20px}
  .fcard__title{font-size:23px}
  .hero__list{grid-template-columns:1fr; gap:12px}
  .hero__list li,.hero__lead{font-size:16.5px}
  .hero__actions .btn{width:100%}
  .process{padding:44px 0}
  .process__card{padding:30px 20px; border-radius:18px}
  .process__cta,.cta-bar{padding:22px 20px}
  .process__cta .btn{margin-left:0}
  .calc-form,.hero-form{padding:22px}
  .contacts h2{font-size:32px}
  .footer__grid{grid-template-columns:1fr}
  .footer__legal{margin-left:0}
  .faq__q{font-size:17px}
  .faq__panel{padding-left:0}
  .catalog-actions .btn{width:100%}
}


/* Гарантированно оранжевые submit-кнопки во всех формах захвата, в том числе в disabled-состоянии. */
[data-lead-form] [data-submit].btn{background:var(--orange)!important; border-color:var(--orange)!important; color:#fff!important}
[data-lead-form] [data-submit].btn:hover,[data-lead-form] [data-submit].btn:focus{background:var(--orange-hover)!important; border-color:var(--orange-hover)!important; color:#fff!important}
[data-lead-form] [data-submit].btn:disabled{background:var(--orange)!important; border-color:var(--orange)!important; color:#fff!important; opacity:.68; filter:none}

@media (prefers-reduced-motion:reduce){
  .pcard{transition:none}
  .pcard:hover{transform:none}
}
