/* cyrillic-ext */
@font-face {
  font-family: 'Onest';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(onest-cyrillic-ext.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

/* cyrillic */
@font-face {
  font-family: 'Onest';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(onest-cyrillic.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

/* latin-ext */
@font-face {
  font-family: 'Onest';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(onest-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* latin */
@font-face {
  font-family: 'Onest';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(onest-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
    --ym-font: "Onest", system-ui, -apple-system, "Segoe UI", sans-serif;
    --ym-display-weight: 460;
    --ym-heading-weight: 500;
    --ym-emphasis-weight: 550;
}

body {
    font-family: var(--ym-font);
    font-weight: 400;
}

main :is(h1, h2, h3, h4) {
    font-weight: var(--ym-heading-weight);
    line-height: 1.25;
    letter-spacing: -0.012em;
}

main :is(h1, h2) {
    text-wrap: balance;
}

main :is(.section__title, .privacy__title, .documents__title, .contact-map__title),
main .tracking-page_form-container h1 {
    font-weight: var(--ym-heading-weight);
    line-height: 1.2;
    font-size: clamp(1.5rem, 2.4vw, 2.125rem);
    letter-spacing: -0.018em;
}

main :is(.services-advantage__title, .policy-section > h2, .contact-map__card > h4) {
    font-weight: var(--ym-heading-weight);
    line-height: 1.25;
}

.header_nav__link,
.footer__nav a,
.burger-menu-content__link {
    font-weight: 450;
    letter-spacing: 0;
}

.button-primary {
    font-weight: var(--ym-emphasis-weight);
}

.home-page-introduction_content > h1 {
    font-size: clamp(2.125rem, 3.45vw, 3.125rem);
    font-weight: var(--ym-display-weight);
    letter-spacing: -0.025em;
    line-height: 1.12;
}

.home-page-introduction_content > p,
.home-page__desc {
    line-height: 1.6;
    letter-spacing: 0;
}

.home-page_news .section__title,
.home-page_services .section__title,
.home-page__title {
    font-size: clamp(1.625rem, 2.9vw, 2.5rem);
    font-weight: var(--ym-display-weight);
    letter-spacing: -0.018em;
    line-height: 1.2;
}

.home-page-stats__value {
    font-weight: var(--ym-heading-weight);
    letter-spacing: -0.025em;
}

.home-page-news_list__item > h3,
.news__card-title {
    font-size: clamp(1.0625rem, 1.35vw, 1.25rem);
    font-weight: var(--ym-heading-weight);
    line-height: 1.36;
    letter-spacing: -0.01em;
}

.home-page-news_list__item > p,
.news__excerpt {
    line-height: 1.55;
}

.home-page-news_list__item__preview-container > span {
    font-weight: var(--ym-heading-weight);
}

.home-page-services_list li > .home-page-services_list__item > h3 {
    font-weight: var(--ym-emphasis-weight);
    letter-spacing: 0;
}

.home-page-calculator .form-label input:focus-visible {
    outline: none;
}

.home-page-calculator .form-label:focus-within {
    outline: 2px solid var(--ym-accent, #a94510);
    outline-offset: 2px;
    box-shadow: none;
}

:is(.about-intro__text, .about-ceo__text, .services-page__content, .vacancies-intro__text, .news-item__content) p {
    max-inline-size: 70ch;
    font-size: 1rem;
    line-height: 1.65;
    letter-spacing: 0;
    text-wrap: pretty;
    overflow-wrap: break-word;
}

.news-item__head .news-item__title {
    font-weight: var(--ym-display-weight);
    font-size: clamp(1.5rem, 2.8vw, 2.375rem);
    line-height: 1.22;
}

.documents__name {
    font-weight: var(--ym-emphasis-weight);
}

@media (max-width: 767px) {
    .home-page-introduction_content > h1 {
        font-size: clamp(1.75rem, 7.7vw, 2.375rem);
    }
}

.header_nav__link,
.button-primary:where(:not(.documents__download)),
.services-tabs__link {
    font-size: 0.875rem;
}

.services-page > p,
.services-page__content :is(p, li),
.news-item__content :is(p, li),
.about-history__list :is(p, li),
.policy-section :is(p, li) {
    max-inline-size: 70ch;
    font-size: 1rem;
    line-height: 1.65;
    overflow-wrap: anywhere;
}

.services-page__content :is(h2:not(.section__title), h3, h4),
.news-item__content :is(h2, h3, h4) {
    font-size: 1.25rem;
    font-weight: var(--ym-heading-weight);
    line-height: 1.3;
    letter-spacing: -0.012em;
    text-wrap: balance;
}

.services-page__details {
    gap: 0.875rem;
}

.services-page__details > h2:not(:first-child) {
    margin-block-start: 0.875rem;
}

.services-page__content :is(strong, b),
.news-item__content :is(strong, b),
.about-history__list :is(strong, b) {
    font-weight: var(--ym-emphasis-weight);
}

/* Override sizes and line heights pasted into article copy by the CMS editor. */
.news-item__content :is(p, li)[style*="font-size"] { font-size: 1rem !important; }
.news-item__content :is(p, li)[style*="line-height"] { line-height: 1.65 !important; }
.news-item__content :is(span, font, strong, em)[style*="font-size"] { font-size: inherit !important; }
.news-item__content :is(span, font, strong, em)[style*="line-height"] { line-height: inherit !important; }

.home-page-map__item > h4 {
    font-weight: var(--ym-heading-weight);
    line-height: 1.25;
}

@media (max-width: 767px) {
    .about-history__body { grid-template-columns: minmax(0, 1fr); }
    .about-history__list { min-width: 0; }
    .about-awards .carousel__controls { gap: 10px; }
    .about-awards .carousel__dots { gap: 4px; }
    .about-awards .carousel__dot { width: clamp(8px, 2.5vw, 16px); }
}

@media (max-width: 420px) {
    .about-history__current { --ym-history-year-size: clamp(78px, 25vw, 104px); }
    .about-history__big-prefix,
    .about-history__reel-item { font-size: var(--ym-history-year-size); }
    .about-history__reel,
    .about-history__nav { height: var(--ym-history-year-size); }
    .about-history__nav { margin-inline-start: 16px; }
}

:root {
    --ym-field-focus-fill: #fff4e8;
    --ym-field-focus-mark: var(--ym-accent, #a94510);
}

:where(input:not([type]), input:is([type="text"], [type="search"], [type="email"], [type="tel"], [type="url"], [type="number"], [type="password"]), textarea, select):focus-visible,
.home-page-quick-tracking__form > input:focus-visible,
.tracking-page_form-container__form input:focus-visible,
.request .request__input:focus,
.home-page-calculator .form-label:focus-within,
.home-page-calculator .custom-select__trigger:focus-visible,
.home-page-calculator .custom-select.open .custom-select__trigger {
    outline: none;
    background-color: var(--ym-field-focus-fill);
    box-shadow: inset 0 -2px var(--ym-field-focus-mark);
}

.home-page-calculator .form-label input:focus-visible {
    background-color: transparent;
    box-shadow: none;
}

.request .request__input:focus,
.home-page-calculator .form-label:not(.is-invalid):focus-within,
.home-page-calculator .custom-select:not(.is-invalid):is(.open, :focus-within) .custom-select__trigger {
    border-color: #898e96;
}

@media (forced-colors: active) {
    :where(input:not([type]), input:is([type="text"], [type="search"], [type="email"], [type="tel"], [type="url"], [type="number"], [type="password"]), textarea, select):focus-visible,
    .home-page-quick-tracking__form > input:focus-visible,
    .tracking-page_form-container__form input:focus-visible,
    .request .request__input:focus,
    .home-page-calculator .form-label:focus-within,
    .home-page-calculator .custom-select__trigger:focus-visible,
    .home-page-calculator .custom-select.open .custom-select__trigger {
        border-block-end: 2px solid Highlight;
    }

    .home-page-calculator .form-label input:focus-visible {
        border-block-end: 0;
    }
}



@media (max-width: 767px) {
    .tracking-page_form-container__form > button {
        position: relative;
    }
}

.home-page-partners__item > img {
    filter: grayscale(1);
}

.home-page-news_list__item__preview-container__preview,
.news__image > img {
    filter: saturate(0.65);
}

.home-page-news_list__item:focus-within .home-page-news_list__item__preview-container__preview,
.news__card:focus-visible .news__image > img {
    filter: none;
}

@media (hover: hover) {
    .home-page-partners__item:hover > img,
    .home-page-news_list__item:hover .home-page-news_list__item__preview-container__preview,
    .news__card:hover .news__image > img {
        filter: none;
    }
}

@media (prefers-reduced-motion: no-preference) {
    .home-page-partners__item > img {
        transition: filter var(--primary-transition-config);
    }

    .home-page-news_list__item__preview-container__preview,
    .news__image > img {
        transition: filter var(--primary-transition-config), transform var(--primary-transition-config);
    }
}
