
:root{
  --vbm-primary:#12324a;
  --vbm-primary-2:#214e75;
  --vbm-bg:#f5f7fa;
  --vbm-text:#1f2933;
  --vbm-muted:#52606d;
  --vbm-white:#ffffff;
  --vbm-accent:#c7a86c;
  --vbm-border:#d7e0e8;
  --vbm-shadow:0 12px 34px rgba(18,50,74,.08);
  --vbm-radius:22px;
}
.vbm-site{background:var(--vbm-white);color:var(--vbm-text);}
.vbm-container{width:min(1180px, calc(100% - 32px));margin:0 auto;}
.vbm-section{padding:88px 0;}
.vbm-hero{
  background:
    radial-gradient(circle at top right, rgba(199,168,108,.12), transparent 28%),
    linear-gradient(135deg, #f8fbfd 0%, #eef4f8 100%);
  padding:110px 0 90px;
}
.vbm-hero-grid,.vbm-grid-2{display:grid;grid-template-columns:1.2fr .8fr;gap:34px;align-items:center;}
.vbm-badge,.vbm-kicker{
  display:inline-block;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  color:var(--vbm-primary-2);margin-bottom:16px;
}
.vbm-hero h1,.vbm-section h2{color:var(--vbm-primary);line-height:1.08;margin:0 0 18px;}
.vbm-hero h1{font-size:clamp(2.1rem,4vw,4.2rem);}
.vbm-section h2{font-size:clamp(1.7rem,2.5vw,2.7rem);}
.vbm-subtitle,.vbm-section-heading p,.vbm-feature p,.vbm-service-card p,.vbm-step p,.vbm-about p,.vbm-contact p,.vbm-highlight-box p,.vbm-authority-box p{
  color:var(--vbm-muted);font-size:1.05rem;line-height:1.75;
}
.vbm-cta-group{display:flex;flex-wrap:wrap;gap:14px;margin:26px 0 22px;}
.vbm-btn{
  display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:0 24px;border-radius:999px;
  text-decoration:none;font-weight:700;transition:.25s ease;
}
.vbm-btn-primary{background:var(--vbm-primary);color:#fff;box-shadow:var(--vbm-shadow);}
.vbm-btn-primary:hover{transform:translateY(-2px);opacity:.96;}
.vbm-btn-secondary{border:1px solid var(--vbm-border);background:#fff;color:var(--vbm-primary);}
.vbm-hero-points{list-style:none;padding:0;margin:18px 0 0;display:grid;gap:10px;}
.vbm-hero-points li{position:relative;padding-left:28px;color:var(--vbm-text);}
.vbm-hero-points li::before{
  content:"";position:absolute;left:0;top:8px;width:12px;height:12px;border-radius:50%;background:var(--vbm-accent);
}
.vbm-card,.vbm-highlight-box,.vbm-authority-box,.vbm-feature,.vbm-service-card,.vbm-step,.vbm-form{
  background:#fff;border:1px solid var(--vbm-border);border-radius:var(--vbm-radius);box-shadow:var(--vbm-shadow);
}
.vbm-card{padding:30px;}
.vbm-card h3,.vbm-highlight-box h3,.vbm-authority-box h3,.vbm-feature h3,.vbm-service-card h3,.vbm-step h3{
  color:var(--vbm-primary);margin-top:0;
}
.vbm-card ul{margin:0;padding-left:18px;line-height:1.9;}
.vbm-section-heading{max-width:780px;margin:0 auto 42px;text-align:center;}
.vbm-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.vbm-feature{padding:28px;}
.vbm-checklist{display:grid;gap:14px;}
.vbm-check-item{
  background:#fff;border:1px solid var(--vbm-border);border-radius:18px;padding:18px 18px 18px 52px;position:relative;box-shadow:var(--vbm-shadow);
}
.vbm-check-item::before{
  content:"✓";position:absolute;left:18px;top:50%;transform:translateY(-50%);width:22px;height:22px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;background:var(--vbm-primary);color:#fff;font-size:13px;
}
.vbm-highlight-box,.vbm-authority-box{padding:30px;background:linear-gradient(180deg,#ffffff 0%,#f8fbfd 100%);}
.vbm-grid-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.vbm-service-card{padding:28px;display:flex;flex-direction:column;}
.vbm-service-card a{margin-top:auto;color:var(--vbm-primary-2);font-weight:700;text-decoration:none;}
.vbm-steps-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
.vbm-step{padding:26px;position:relative;}
.vbm-step span{
  display:inline-flex;width:42px;height:42px;align-items:center;justify-content:center;border-radius:50%;
  background:var(--vbm-primary);color:#fff;font-weight:700;margin-bottom:14px;
}
.vbm-contact{background:linear-gradient(180deg,#f8fbfd 0%,#eef4f8 100%);}
.vbm-form{padding:28px;display:grid;gap:14px;}
.vbm-form label{font-weight:600;color:var(--vbm-primary);display:grid;gap:8px;}
.vbm-form input,.vbm-form textarea{
  width:100%;border:1px solid var(--vbm-border);border-radius:14px;padding:14px 16px;font:inherit;color:var(--vbm-text);background:#fff;
}
@media (max-width:980px){
  .vbm-hero-grid,.vbm-grid-2,.vbm-grid-3,.vbm-grid-cards,.vbm-steps-grid{grid-template-columns:1fr;}
  .vbm-section{padding:68px 0;}
  .vbm-hero{padding:88px 0 64px;}
}
