:root{
  --bg:#0b0c0f;
  --card:#0f1117;
  --text:#f2f2f4;
  --muted:rgba(242,242,244,.68);
  --line:rgba(242,242,244,.10);
  --accent:#E3432B;
  --max:1120px;
  --r:22px;
  --shadow:0 12px 30px rgba(0,0,0,.35);
}

*{box-sizing:border-box}

html,body{
  margin:0;
  padding:0;
  background:var(--bg);
  color:var(--text);
  font:16px/1.5 -apple-system,BlinkMacSystemFont,"Inter",Segoe UI,Roboto,Arial,sans-serif;
}

a{color:inherit;text-decoration:none}

.container{
  max-width:var(--max);
  margin:0 auto;
  padding:0 20px;
}

.section{
  padding:84px 0;
  border-top:1px solid var(--line);
}
.section:first-child{border-top:0}

@media (max-width:920px){
  .section{padding:58px 0}
}

.grid{display:grid;gap:18px}
.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:920px){
  .grid-2,.grid-3{grid-template-columns:1fr}
}

.kicker{
  font-size:12px;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--muted);
  margin:0 0 10px;
}

.h1{
  font-size:52px;
  line-height:1.02;
  letter-spacing:-.03em;
  margin:0 0 16px;
}
@media (max-width:920px){
  .h1{font-size:36px}
}

.h2{
  font-size:30px;
  line-height:1.15;
  letter-spacing:-.02em;
  margin:0 0 12px;
}

.p{margin:0;color:var(--muted)}
.p + .p{margin-top:10px}

.card{
  background:linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.02));
  border:1px solid var(--line);
  border-radius:var(--r);
  padding:22px;
  box-shadow:var(--shadow);
  position:relative;
}

.btnrow{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}

.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:12px 16px;
  border-radius:16px;
  border:1px solid var(--line);
  background:transparent;
  color:var(--text);
  cursor:pointer;
}

.btn.primary{
  background:var(--accent);
  color:#0b0c0f;
  border:none;
}

.navwrap{
  position:sticky;
  top:0;
  z-index:50;
  background:rgba(11,12,15,.72);
  backdrop-filter:blur(12px);
  border-bottom:1px solid var(--line);
}

.nav{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:14px 0;
}

.menu{display:flex;gap:16px;flex-wrap:wrap}
.menu a{font-size:14px;color:var(--muted)}
.menu a:hover{color:var(--text)}

.footer{
  padding:28px 0;
  border-top:1px solid var(--line);
  color:var(--muted);
  font-size:13px;
}
/* ===== TILDA FORM → STYLE MATCH ===== */

.t-form {
  background: transparent !important;
}

.t-form__inputsbox {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.t-input,
.t-input-block textarea,
.t-select__wrapper {
  background: rgba(255,255,255,0.04) !important;
  border: 1px solid rgba(255,255,255,0.12) !important;
  border-radius: 16px !important;
  color: #f2f2f4 !important;
  padding: 14px 16px !important;
  font-size: 15px !important;
}

.t-input::placeholder,
.t-input-block textarea::placeholder {
  color: rgba(242,242,244,.5) !important;
}

.t-input:focus,
.t-input-block textarea:focus {
  border-color: #E3432B !important;
  outline: none !important;
}

/* labels */
.t-input-title {
  color: rgba(242,242,244,.7) !important;
  font-size: 13px !important;
  margin-bottom: 6px !important;
}

/* submit button */
.t-submit {
  background: #E3432B !important;
  color: #0b0c0f !important;
  border-radius: 16px !important;
  padding: 14px 18px !important;
  font-weight: 600 !important;
  border: none !important;
}

.t-submit:hover {
  background: rgba(227,67,43,.9) !important;
}

/* remove white wrappers */
.t-form__errorbox-wrapper,
.t-form__successbox {
  background: transparent !important;
  color: #f2f2f4 !important;
}

/* mobile fix */
@media (max-width: 640px) {
  .t-submit {
    width: 100% !important;
  }
}/* white text on all red (primary) buttons */
.btn.primary {
  color: #ffffff !important;
}/* ===== SOLID SPACING SYSTEM ===== */
:root{
  --s-1:12px;
  --s-2:16px;
  --s-3:24px;
  --s-4:32px;
  --s-5:48px;
  --s-6:64px;
  --s-7:80px;
}

/* секции: одинаковый вертикальный ритм */
.section{ padding: var(--s-7) 0 !important; }
@media (max-width:920px){ .section{ padding: var(--s-6) 0 !important; } }

/* заголовки/текст: ровные зазоры */
.h1{ margin:0 0 var(--s-3) !important; }
.h2{ margin:0 0 var(--s-2) !important; }
.p + .p{ margin-top: var(--s-1) !important; }
.kicker{ margin:0 0 var(--s-2) !important; }

/* карточки: одинаковые внутренние отступы */
.card{ padding: var(--s-4) !important; }
.btnrow{ margin-top: var(--s-3) !important; }

/* сетка: ровные расстояния */
.grid{ gap: var(--s-3) !important; }