/* Karabass Premium Typography — Onest UI system */
@font-face {
  font-family: 'Onest';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url('../fonts/onest/onest-cyrillic-400.woff2') format('woff2');
  unicode-range: U+0400-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
  font-family: 'Onest';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url('../fonts/onest/onest-latin-400.woff2') format('woff2');
  unicode-range: U+0000-024F, U+1E00-1EFF, U+2000-206F, U+20A0-20CF, U+2113, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Onest';
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url('../fonts/onest/onest-cyrillic-500.woff2') format('woff2');
  unicode-range: U+0400-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
  font-family: 'Onest';
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url('../fonts/onest/onest-latin-500.woff2') format('woff2');
  unicode-range: U+0000-024F, U+1E00-1EFF, U+2000-206F, U+20A0-20CF, U+2113, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Onest';
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url('../fonts/onest/onest-cyrillic-700.woff2') format('woff2');
  unicode-range: U+0400-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
  font-family: 'Onest';
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url('../fonts/onest/onest-latin-700.woff2') format('woff2');
  unicode-range: U+0000-024F, U+1E00-1EFF, U+2000-206F, U+20A0-20CF, U+2113, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
  --kb-font-ui: 'Onest', ui-sans-serif, system-ui, sans-serif;
  --kb-weight-regular: 400;
  --kb-weight-medium: 500;
  --kb-weight-bold: 700;
  --kb-type-caption: 12px;
  --kb-type-meta: 13px;
  --kb-type-control: 15px;
  --kb-type-body: 16px;
  --font-body: var(--kb-font-ui);
  --font-display: var(--kb-font-ui);
}

html {
  font-synthesis: none;
}

body,
button,
input,
textarea,
select,
.navbar,
.dropdown-menu,
.modal,
.swal2-modal,
.plyr,
.kbq-drawer,
.kb-footer-lounge,
.layout-wrapper {
  font-family: var(--kb-font-ui) !important;
}

h1, h2, h3, h4, h5, h6,
.navbar-brand,
.btn_primary,
.btn-main,
.home-page-categories .title h4,
.video-list-title h4,
.mat_header,
.ptitle,
.kb-auth-experience .login-form h4,
.kb-auth-experience .login_aside_innr h2,
.kb-watch-experience .video-big-title h1,
.kb-ledger-heading h3 {
  font-family: var(--kb-font-ui) !important;
  font-weight: var(--kb-weight-bold) !important;
}

button,
.btn,
.navbar a,
.kb-ledger-tabs a,
.plyr__control,
.plyr__menu__container {
  font-size: var(--kb-type-control);
  font-weight: var(--kb-weight-medium);
}

.kb-video-card .video-list-title h4 {
  font-size: 16px !important;
  line-height: 22px !important;
  font-weight: var(--kb-weight-bold) !important;
  letter-spacing: -0.01em;
}

.kb-video-card .video-list-by,
.kb-video-card .video-list-by a,
.kb-video-card .vp_vid_bottm,
.kb-watch-eyebrow,
.kb-ledger-badges,
.kb-ledger-row dt {
  font-size: var(--kb-type-meta) !important;
  line-height: 18px !important;
  font-weight: var(--kb-weight-medium);
  letter-spacing: 0;
}

.kb-video-card .duration,
.plyr__time,
.kb-pitch-trigger-value,
.kb-pitch-value,
.kbq-count,
.kbq-position,
.kb-ledger-kpis strong,
.kb-ledger-row dd {
  font-variant-numeric: tabular-nums lining-nums;
}

.kb-auth-experience input,
.kb-auth-experience select,
.kb-auth-experience button {
  font-size: var(--kb-type-body);
  line-height: 24px;
}

.kb-footer-nav a {
  font-size: 14px;
  line-height: 20px;
  font-weight: var(--kb-weight-medium);
}

.kb-footer-meta {
  font-size: var(--kb-type-caption);
  line-height: 16px;
}

.kb-home-experience .home-page-categories .title h4 > a,
.kb-catalog-experience h3,
.kb-search-experience h3 {
  font-size: clamp(18px, 1.8vw, 22px);
  line-height: 1.25;
  letter-spacing: -0.01em;
}

.kb-watch-experience .vp_watch_vid_info .video-big-title h1 {
  font-family: var(--kb-font-ui) !important;
  font-size: clamp(24px, 2vw, 30px);
  line-height: 1.2;
  letter-spacing: -0.02em;
}

body .vp_watch_vid_info .video-big-title h1,
body .video-big-title h1,
body .video-list-title h4,
body .home-page-categories .title h4 {
  font-family: var(--kb-font-ui) !important;
}

@media (max-width: 767px) {
  .kb-watch-experience .vp_watch_vid_info .video-big-title h1 {
    font-size: 22px;
    line-height: 1.22;
  }
}
