
:root{
  --red:#e60000;
  --black:#0a0a0a;
  --white:#ffffff;
  --muted:#9aa0a6;
}
*{box-sizing:border-box}
body{
  margin:0;
  font-family: 'Montserrat', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  color:#111;
  background:#fff;
  line-height:1.6;
}
.container{width:min(1100px, 92%); margin:0 auto;}
.flex{display:flex; gap:16px;}
.between{justify-content:space-between;}
.center{align-items:center;}

.site-header{
  position:sticky; top:0; z-index:100;
  background:#fff; border-bottom:1px solid #eee;
}
.brand .logo{height:52px; width:auto; margin-right:10px; border-radius:4px;}
.brand-name{font-weight:800; letter-spacing:.5px;}
.nav a{margin-left:18px; text-decoration:none; color:#333; font-weight:600;}
.nav a:hover{color:var(--red);}

.hero{
  background: linear-gradient(180deg, #111 0%, #161616 100%);
  color:#fff; padding:80px 0 90px;
  text-align:center;
}
.hero h1{font-size:clamp(32px, 5vw, 52px); margin:0 0 10px; font-weight:800;}
.hero .accent{color:var(--red);}
.sub{color:#d9d9d9; margin:6px 0 24px;}
.cta-row{display:flex; justify-content:center; gap:14px;}

.section{padding:64px 0;}
.section.dark{background:#0f0f0f; color:#fff;}
.section h2{font-size:clamp(26px,4vw,36px); margin:0 0 18px;}

.cards{display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:18px;}
.card{background:#fff; border:1px solid #eee; border-radius:10px; padding:22px;}
.card .step{
  width:36px; height:36px; border-radius:50%;
  display:inline-grid; place-items:center;
  background:var(--red); color:#fff; font-weight:800; margin-bottom:8px;
}
.dark .card{background:#141414; border-color:#222;}

.grid-2{display:grid; grid-template-columns:1fr 1fr; gap:24px;}
@media (max-width:900px){.grid-2{grid-template-columns:1fr;}}

.checklist{list-style:none; padding:0; margin:0;}
.checklist li{padding-left:28px; position:relative; margin:10px 0;}
.checklist li::before{
  content:"✓"; position:absolute; left:0; top:0; color:var(--red); font-weight:800;
}

.guarantee{background:#141414; border:1px solid #222; border-radius:10px; padding:20px;}
.dark .accent{color:var(--red);}

.lead-form{background:#0a0a0a; color:#fff; padding:24px; border-radius:12px; border:1px solid #222;}
.grid{display:grid; grid-template-columns:repeat(2, 1fr); gap:16px;}
.grid .full{grid-column:1 / -1;}
.field label{display:block; font-size:14px; margin-bottom:6px; color:#bbb;}
.field input, .field textarea{
  width:100%; padding:12px 12px; border-radius:8px; border:1px solid #333; background:#111; color:#fff;
}
.field textarea{resize:vertical; min-height:110px;}
.field.checkbox label{display:flex; gap:10px; align-items:center;}
.hp{display:none !important}

.btn{
  display:inline-block; text-decoration:none; border:2px solid var(--red);
  padding:12px 20px; font-weight:800; letter-spacing:.3px; border-radius:10px;
}
.btn.primary{background:var(--red); color:#fff;}
.btn.outline{background:transparent; color:var(--red);}
.btn.small{padding:8px 14px; font-weight:700;}

.btn:hover{transform:translateY(-1px);}

.form-msg{margin-top:10px; min-height:22px;}
.form-msg.success{color:#19c37d;}
.form-msg.error{color:#ff7474;}

.site-footer{padding:24px 0; border-top:1px solid #eee; background:#fff;}
