/* Reklamium shared public typography and navigation system */
:root {
    --rk-font-body: 'Inter', 'Segoe UI', Arial, sans-serif;
    --rk-font-heading: 'Manrope', 'Inter', Arial, sans-serif;
    --rk-text-size: 16px;
    --rk-text-line: 1.6;
    --rk-heading-line: 1.15;
    --rk-title-size: clamp(32px, 3.8vw, 52px);
    --rk-subtitle-size: clamp(25px, 2.8vw, 38px);
    --rk-small-text-size: 14px;
}

html {
    -webkit-text-size-adjust: 100%;
}

body {
    margin: 0;
    font-family: var(--rk-font-body);
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

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

body h1,
body h2,
body h3,
body h4,
body h5,
body h6,
body .rk-smart-hero__heading {
    font-family: var(--rk-font-heading);
}

body :is(.public-header, .footer) {
    font-family: var(--rk-font-body);
}

body .public-header .public-header-inner {
    box-sizing: border-box;
}

body .public-header .public-nav,
body .public-header .public-nav > a,
body .public-header .public-menu-toggle,
body .public-header .public-account-summary,
body .public-header .public-account-summary-text strong,
body .public-header .public-account-summary-text small,
body .public-header .public-account-menu,
body .footer,
body .footer a {
    font-family: var(--rk-font-body);
}

body .public-header .public-nav,
body .public-header .public-nav > a {
    font-weight: 700 !important;
}

body .public-header .public-account-summary {
    box-sizing: border-box;
}

body .public-header .public-account-summary-text strong {
    font-weight: 700;
}

body .public-header .public-account-summary-text small {
    font-weight: 600;
}

body .footer .footer-copy a,
body .footer .footer-links a {
    font-weight: 700 !important;
}

body.public-visual-unified :is(
    .publishers-hero,
    .apply-hero,
    .advertiser-application-hero,
    .publisher-hero,
    .campaign-hero,
    .page-hero,
    .public-hero,
    .cms-hero,
    .hero
) h1 {
    font-size: var(--rk-title-size);
    font-weight: 800;
    line-height: var(--rk-heading-line);
    letter-spacing: -0.035em;
    overflow-wrap: anywhere;
}

body.public-visual-unified :is(
    .publishers-hero,
    .apply-hero,
    .advertiser-application-hero,
    .publisher-hero,
    .campaign-hero,
    .page-hero,
    .public-hero,
    .cms-hero
) p {
    line-height: 1.65;
}

@media (max-width: 768px) {
    :root {
        --rk-title-size: clamp(30px, 7.8vw, 38px);
    }
}
