:root{
  --brand-red:#0f172a;      /* корпоративный тёмный */
  --brand-red-hover:#162238;
  --panel:#eef2f6;
  --ink:#0f172a;
}

/* фон страницы */
body{background:var(--panel);color:var(--ink)}

/* topbar/bottombar */
.topbar-red{background:var(--brand-red);color:#fff}
.topbar-inner{display:flex;align-items:center;justify-content:space-between;padding:10px 16px}
.brand-mini{display:flex;gap:10px;align-items:center;color:#fff;text-decoration:none}
.logo-mini{width:32px;height:32px;border-radius:8px;background:#fff;padding:4px}

.bottombar{background:#0f172a;color:#cbd5e1}
.foot-inner{display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;padding-block:16px}
.foot-inner a{color:#e2e8f0}

/* секции формы */
.form-block{background:#fff;border-radius:12px;padding:20px;margin:18px 0;box-shadow:0 2px 8px rgba(0,0,0,.06)}
.form-block>h3{margin:0 0 10px;font-size:18px}
.lead{color:#475569;margin:6px 0 14px}

/* типографика секций и метки */
h3{font-size:1.25rem;font-weight:600;color:#1e293b;margin-top:1.5em;margin-bottom:.75em}
label{font-weight:500;color:#0f172a}
input::placeholder,textarea::placeholder{color:#64748b;opacity:1}

/* поля и фокус */
input,select,textarea{border-color:#d4dbe5}
input:focus,select:focus,textarea:focus{outline:0;box-shadow:0 0 0 3px rgba(15,23,42,.15)}

/* кнопка отправки */
.btn-cta{
  background:var(--brand-red);
  border:1px solid var(--brand-red);
  color:#fff;
  border-radius:8px;
  padding:12px 24px;
  font-size:1rem;font-weight:600;
  box-shadow:0 2px 6px rgba(0,0,0,.15);
  transition:background .2s,border-color .2s,box-shadow .2s;
}
.btn-cta:hover{
  background:var(--brand-red-hover);
  border-color:var(--brand-red-hover);
  box-shadow:0 4px 8px rgba(0,0,0,.25);
}

/* совместимость: btn-red = btn-cta */
.btn-red{background:var(--brand-red)!important;border:1px solid var(--brand-red)!important;color:#fff}
.btn-red:hover{background:var(--brand-red-hover)!important;border-color:var(--brand-red-hover)!important}

/* сетка */
.grid{display:grid;gap:12px}
.g-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.g-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.g-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.span-2{grid-column:span 2}.span-3{grid-column:span 3}
.row-inline{display:flex;align-items:center;gap:8px}
@media(max-width:900px){.g-4{grid-template-columns:repeat(2,1fr)}.span-3{grid-column:span 2}}
@media(max-width:600px){.g-2,.g-3,.g-4{grid-template-columns:1fr}.span-2,.span-3{grid-column:span 1}}

/* honeypot */
.hp{position:absolute;left:-9999px}

/* чекбоксы стройно в колонке */
.legal-list{
  list-style:none; margin:16px 0; padding:0;
  display:grid; row-gap:10px;
}
.consent{display:flex; align-items:center; gap:10px; line-height:1.3}
.consent input{width:18px; height:18px;}

/* кнопка справа и на мобилке на всю ширину */
.form-actions{display:flex; justify-content:flex-end; margin-top:12px}
.form-actions .btn-cta{min-width:260px}
@media(max-width:600px){
  .form-actions{justify-content:stretch}
  .form-actions .btn-cta{width:100%}
}
