/*
   J-BSS typography system — Russian B2B pages
   Loaded after jbss-enhanced.css and legacy page styles so the shared
   navigation, content and conversion components use one readable scale.
*/
:root {
  --jbss-font-sans: "Roboto", Arial, "Helvetica Neue", sans-serif;
  --jbss-body-size: 16px;
  --jbss-body-leading: 1.68;
  --jbss-nav-size: 14px;
  --jbss-nav-leading: 1.4;
}

html,
body,
button,
input,
select,
textarea {
  font-family: var(--jbss-font-sans);
}

body {
  font-size: var(--jbss-body-size);
  line-height: var(--jbss-body-leading);
  font-weight: 400;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: var(--jbss-font-sans);
  letter-spacing: -0.01em;
}

.jbss-nav .nav-links > li > a,
.jbss-nav .nav-dropdown-trigger {
  font-family: var(--jbss-font-sans);
  font-size: var(--jbss-nav-size);
  font-weight: 500;
  line-height: var(--jbss-nav-leading);
}

.jbss-nav .dropdown-menu-custom,
.jbss-nav .dropdown-menu-custom a {
  font-family: var(--jbss-font-sans);
  line-height: 1.5;
}

.top-bar,
.top-bar a {
  font-family: var(--jbss-font-sans);
  line-height: 1.35;
}

.page-hero h1 {
  font-size: clamp(32px, 4vw, 46px);
  font-weight: 700;
  line-height: 1.18;
}

.hero-sub,
.page-hero .hero-sub,
.section-sub {
  font-size: 16px !important;
  font-weight: 400;
  line-height: 1.68 !important;
}

.section-title,
h2.section-title,
.section-head h2.section-title {
  font-size: clamp(26px, 3.2vw, 34px);
  font-weight: 700;
  line-height: 1.26;
}

.btn-primary-jbss,
.btn-secondary-jbss,
.btn-tg,
.btn-wa,
.nav-cta,
.nav-mobile-cta {
  font-family: var(--jbss-font-sans);
  font-size: 15px;
  font-weight: 600;
  line-height: 1.4;
}

.label-tag,
.hero-badge,
.breadcrumb-wrap,
.form-label,
.faq-question,
.faq-answer,
.spec-table,
.spec-table th,
.spec-table td {
  font-family: var(--jbss-font-sans);
}

.article-body {
  max-width: 72ch;
  font-family: var(--jbss-font-sans);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.72;
}

.article-body h2 {
  font-size: 26px;
  font-weight: 700;
  line-height: 1.3;
}

.article-body h3 {
  font-size: 20px;
  font-weight: 700;
  line-height: 1.4;
}

.article-body p {
  margin-bottom: 1.35em;
}

@media (max-width: 767.98px) {
  :root {
    --jbss-body-size: 15px;
    --jbss-body-leading: 1.65;
    --jbss-nav-size: 15px;
  }

  .jbss-nav .nav-links > li > a,
  .jbss-nav .nav-dropdown-trigger {
    line-height: 1.45;
  }

  .page-hero h1 {
    font-size: clamp(27px, 8vw, 30px);
    line-height: 1.2;
  }

  .hero-sub,
  .page-hero .hero-sub,
  .section-sub {
    font-size: 15px !important;
    line-height: 1.65 !important;
  }

  .section-title,
  h2.section-title,
  .section-head h2.section-title {
    font-size: 24px;
    line-height: 1.3;
  }

  .btn-primary-jbss,
  .btn-secondary-jbss,
  .btn-tg,
  .btn-wa,
  .nav-cta,
  .nav-mobile-cta {
    font-size: 14px;
  }

  .article-body {
    max-width: none;
    font-size: 15px;
    line-height: 1.72;
  }

  .article-body h2 {
    font-size: 23px;
  }

  .article-body h3 {
    font-size: 19px;
  }
}
