@font-face {
  font-family: "OpenGOST Type B";
  src: url("/assets/fonts/OpenGOSTtypeB-Regular.ttf?v=1") format("truetype");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

/* Весь обычный и служебный текст — GOST Type B. */
body,
button,
input,
select,
textarea,
.label,
.botIntro > p,
.experienceCard > span,
.advantageCard > span {
  font-family: "OpenGOST Type B", "Arial Narrow", Arial, sans-serif;
  font-synthesis: none;
}

/* Все крупные заголовки — первоначальный шрифт сайта. */
h1,
h2 {
  font-family: Arial, Helvetica, sans-serif;
}

/* Скруглённые кнопки. */
.navContact,
.button {
  border-radius: 999px;
}

/* Новый логотип без обрезки. */
.brand img {
  width: 82px;
  height: 82px;
  object-fit: contain;
}

.footerBrand img {
  width: 78px;
  height: 78px;
  object-fit: contain;
}

@media (width <= 640px) {
  .brand img {
    width: 66px;
    height: 66px;
  }

  .footerBrand img {
    width: 70px;
    height: 70px;
  }
}

/* PROPORTIONS_V6_START */

/* Шапка */
nav {
  font-size: 17px;
  line-height: 1.25;
  letter-spacing: 0.015em;
}

.navContact {
  display: inline-flex;
  align-items: center;
  min-height: 48px;
  padding: 0 24px;
}

/* Общие подписи */
.label {
  font-size: 14px;
  line-height: 1.5;
}

.heroText {
  font-size: 21px;
  line-height: 1.55;
}

.button {
  min-height: 56px;
  padding-inline: 26px;
  font-size: 17px;
}

/* Блок бота */
.botIntro > p {
  padding: 9px 14px;
  font-size: 13px;
}

.botIntro span {
  max-width: 430px;
  font-size: 17px;
  line-height: 1.55;
}

.qrCard figcaption {
  font-size: 14px;
}

/* Разделы */
.section {
  padding-block: 105px 115px;
}

.proofItem {
  min-height: 155px;
}

.proofItem strong {
  font-size: clamp(40px, 4vw, 60px);
  line-height: 1;
  letter-spacing: 0;
}

.proofItem span {
  max-width: 180px;
  font-size: 16px;
  line-height: 1.5;
}

/* Карточки компетенций */
.experienceCard {
  min-height: 285px;
  padding: 30px;
}

.experienceCard > span,
.advantageCard > span {
  font-size: 14px;
}

.experienceCard h3 {
  font-size: clamp(25px, 2.15vw, 33px);
  line-height: 1.2;
  letter-spacing: 0;
}

.experienceCard p,
.advantageCard p {
  font-size: 17px;
  line-height: 1.55;
}

/* Карточки преимуществ */
.advantageCard {
  min-height: 265px;
  padding: 30px;
}

.advantageCard h3 {
  font-size: clamp(27px, 2.5vw, 38px);
  line-height: 1.15;
  letter-spacing: -0.01em;
}

/* Реквизиты */
.detailRow dt {
  font-size: 17px;
}

.detailRow dd {
  font-size: 22px;
  line-height: 1.4;
}

/* Контакты и подвал */
.contactLinks span {
  font-size: 16px;
}

.contactLinks strong {
  font-size: clamp(28px, 3.2vw, 42px);
  line-height: 1.15;
}

footer > a:last-child {
  font-size: 15px;
}

/* Телефон */
@media (width <= 640px) {
  .navContact {
    min-height: 44px;
    padding-inline: 16px;
    font-size: 14px;
  }

  .label {
    font-size: 13px;
  }

  .heroText {
    font-size: 18px;
  }

  .button {
    font-size: 16px;
  }

  .botIntro span {
    font-size: 16px;
  }

  .proofItem strong {
    font-size: 44px;
  }

  .proofItem span {
    font-size: 15px;
  }

  .experienceCard {
    min-height: 180px;
    padding: 26px;
  }

  .experienceCard h3 {
    font-size: 28px;
  }

  .experienceCard p,
  .advantageCard p {
    font-size: 16px;
  }

  .advantageCard {
    min-height: 220px;
    padding: 26px;
  }

  .advantageCard h3 {
    font-size: 30px;
  }

  .detailRow dt {
    font-size: 16px;
  }

  .detailRow dd {
    font-size: 20px;
  }

  .contactLinks span {
    font-size: 15px;
  }

  .contactLinks strong {
    font-size: 28px;
  }
}

/* PROPORTIONS_V6_END */
