:root {
  /* Бренд VORS */
  --brand:        #0EA5E9;
  --brand-deep:   #0284C7;
  --brand-light:  #E0F2FE;
  --brand-vivid:  #38BDF8;

  /* Поверхности */
  --bg-primary:   #FFFFFF;
  --bg:           #FFFFFF;
  --bg-soft:      #F0F9FF;
  --bg-card:      #F0F9FF;
  --bg-invert:    #0E4C7A;

  /* Текст */
  --ink-primary:  #0C1B2A;
  --ink:          #0C1B2A;
  --ink-secondary:#475569;
  --ink-2:        #475569;
  --ink-tertiary: #94A3B8;
  --ink-3:        #94A3B8;

  /* Линии */
  --border:       #E2E8F0;
  --line:         #E2E8F0;
  --line-strong:  #CBD5E1;

  /* Акцент */
  --accent:       var(--brand);
  --accent-hover: var(--brand-deep);

  /* WhatsApp brand */
  --wa:           #25D366;
  --wa-hover:     #1DA851;

  /* Радиусы */
  --radius-sm:    8px;
  --radius-md:    16px;
  --radius-lg:    24px;
  --radius-xl:    32px;
  --radius-pill:  9999px;

  /* Тени */
  --shadow-sm:    0 1px 2px rgba(12, 27, 42, 0.04);
  --shadow-md:    0 4px 12px rgba(12, 27, 42, 0.06);
  --shadow-brand: 0 8px 24px rgba(14, 165, 233, 0.15);

  /* Анимации */
  --ease:           cubic-bezier(0.4, 0, 0.2, 1);
  --duration-fast:  150ms;
  --duration-base:  250ms;
  --duration-slow:  400ms;
}

*, *::before, *::after { box-sizing: border-box; }

html { scroll-behavior: smooth; }

body {
  background-color: var(--bg-primary);
  color: var(--ink-primary);
  font-family: 'Inter', sans-serif;
  -webkit-font-smoothing: antialiased;
}

::selection {
  background: var(--brand);
  color: #fff;
}

.container-vors {
  max-width: 1280px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}

@media (min-width: 768px) {
  .container-vors {
    padding-left: 2.5rem;
    padding-right: 2.5rem;
  }
}

.section-divider {
  border: none;
  border-top: 1px solid var(--border);
  max-width: 1280px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}

/* Scrollbar */
::-webkit-scrollbar { width: 6px; height: 6px; }
::-webkit-scrollbar-track { background: var(--bg-primary); }
::-webkit-scrollbar-thumb { background: var(--line-strong); border-radius: 9999px; }
::-webkit-scrollbar-thumb:hover { background: var(--brand); }

/* Focus accessibility */
:focus-visible {
  outline: 2px solid var(--brand);
  outline-offset: 2px;
  border-radius: 4px;
}

/* ===========================================================
   Mobile readability — bump small text on narrow viewports
   =========================================================== */
@media (max-width: 767px) {
  .vors-label,
  .section-label,
  .card-label { font-size: 0.8125rem; }

  .step-number { font-size: 0.875rem; }

  .vors-hero-card__label,
  .vors-hero-card__meta { font-size: 0.75rem; }

  .ba-thumb-before,
  .ba-thumb-after { font-size: 0.8125rem; }

  .ba-hint { font-size: 0.9375rem; }

  .ba-label-before,
  .ba-label-after { font-size: 0.8125rem; padding: 0.5rem 0.875rem; }

  .vors-phone { font-size: 1rem; }

  .vors-footer__copy,
  .vors-footer__top-link { font-size: 0.8125rem; }
}
