/* =====================================================================
   SP11 Głogów — globalna typografia nagłówków v2.6.1.1
   Cel: Montserrat we wszystkich nagłówkach frontu, w tym listach stron,
   listach aktualności, widokach szczegółowych, treści redakcyjnej,
   panelach bocznych oraz wszystkich sekcjach strony głównej.
   Maksymalna waga: 700. Warstwa musi być ładowana jako ostatnia.
   ===================================================================== */

:root {
    --s11-heading-font: "Montserrat", "Segoe UI", Arial, sans-serif;
}

/* ---------------------------------------------------------------------
   Reguła bazowa — obejmuje znaczniki semantyczne oraz klasy nagłówkowe
   używane przez Bootstrap, starszy motyw i widoki CMS.
   --------------------------------------------------------------------- */
body.sp11-site h1,
body.sp11-site h2,
body.sp11-site h3,
body.sp11-site h4,
body.sp11-site h5,
body.sp11-site h6,
body.sp11-site .h1,
body.sp11-site .h2,
body.sp11-site .h3,
body.sp11-site .h4,
body.sp11-site .h5,
body.sp11-site .h6,
body.sp11-site .page-title,
body.sp11-site .card-title,
body.sp11-site [role="heading"] {
    font-family: var(--s11-heading-font) !important;
    font-weight: 700 !important;
    letter-spacing: -0.022em !important;
    text-wrap: balance;
}

/* Tytuły będące linkiem lub zawierające dodatkowy span/em. */
body.sp11-site h1 a,
body.sp11-site h2 a,
body.sp11-site h3 a,
body.sp11-site h4 a,
body.sp11-site h5 a,
body.sp11-site h6 a,
body.sp11-site h1 span,
body.sp11-site h2 span,
body.sp11-site h3 span,
body.sp11-site h4 span,
body.sp11-site h5 span,
body.sp11-site h6 span,
body.sp11-site h1 strong,
body.sp11-site h2 strong,
body.sp11-site h3 strong,
body.sp11-site h4 strong,
body.sp11-site h5 strong,
body.sp11-site h6 strong,
body.sp11-site h1 em,
body.sp11-site h2 em,
body.sp11-site h3 em,
body.sp11-site h4 em,
body.sp11-site h5 em,
body.sp11-site h6 em {
    font-family: inherit !important;
    font-weight: inherit;
}

/* Bez cięższych wag odziedziczonych ze starego motywu. */
body.sp11-site h1,
body.sp11-site h2,
body.sp11-site h3,
body.sp11-site h4,
body.sp11-site h5,
body.sp11-site h6 {
    font-synthesis: none;
}

/* ---------------------------------------------------------------------
   Nagłówek strony i marka szkoły.
   --------------------------------------------------------------------- */
body.sp11-site .sp11-brand__name,
body.sp11-site .sp11-brand__patron,
body.sp11-site .sp11-site-header.is-condensed .sp11-brand__name,
body.sp11-site .sp11-site-header.is-condensed .sp11-brand__patron {
    font-family: var(--s11-heading-font) !important;
}

body.sp11-site .sp11-brand__name,
body.sp11-site .sp11-site-header.is-condensed .sp11-brand__name {
    font-size: clamp(1rem, 1.35vw, 1.16rem) !important;
    font-weight: 700 !important;
    line-height: 1.18 !important;
}

body.sp11-site .sp11-brand__patron,
body.sp11-site .sp11-site-header.is-condensed .sp11-brand__patron {
    font-size: clamp(0.76rem, 0.9vw, 0.84rem) !important;
    font-weight: 600 !important;
    line-height: 1.28 !important;
}

/* ---------------------------------------------------------------------
   Hero, rekrutacja, patron i sekcje strony głównej.
   --------------------------------------------------------------------- */
body.sp11-site .spj-platinum-hero,
body.sp11-site .spj-platinum-hero__title,
body.sp11-site .spj-platinum-hero__title em,
body.sp11-site .spj-platinum-hero__identity-name,
body.sp11-site .spj-platinum-hero__identity-kicker,
body.sp11-site .sp11-recruitment,
body.sp11-site .sp11-recruitment h2,
body.sp11-site .sp11-recruitment__eyebrow,
body.sp11-site .spj-patron-accent,
body.sp11-site .spj-patron-accent blockquote,
body.sp11-site .spj-patron-accent blockquote p,
body.sp11-site .spj-patron-accent cite,
body.sp11-site .spj-patron-accent__label,
body.sp11-site .sp11-section__head,
body.sp11-site .sp11-official__head,
body.sp11-site .spj-home-news__intro,
body.sp11-site .spj-hero-values__title,
body.sp11-site .sp11-audience h3,
body.sp11-site .sp11-alert h3,
body.sp11-site .spj-home-news-card--featured h3,
body.sp11-site .spj-home-news-card--list h3 {
    font-family: var(--s11-heading-font) !important;
}

body.sp11-site .spj-platinum-hero__title {
    max-width: 12ch;
    font-size: clamp(2.18rem, 2.95vw, 3.45rem) !important;
    line-height: 1.04 !important;
    letter-spacing: -0.038em !important;
}

body.sp11-site .sp11-recruitment h2 {
    max-width: 26ch;
    font-size: clamp(1.68rem, 2.25vw, 2.2rem) !important;
    line-height: 1.1 !important;
}

body.sp11-site .sp11-section__head h2,
body.sp11-site .sp11-official__head h2,
body.sp11-site .spj-home-news__intro h2 {
    font-size: clamp(1.62rem, 2.25vw, 2.25rem) !important;
    line-height: 1.12 !important;
}

body.sp11-site .spj-home-news-card--featured h3 {
    font-size: clamp(1.3rem, 1.65vw, 1.75rem) !important;
    line-height: 1.17 !important;
}

body.sp11-site .spj-home-news-card--list h3 {
    font-size: clamp(0.96rem, 1vw, 1.08rem) !important;
    line-height: 1.24 !important;
}

body.sp11-site .spj-patron-accent::after {
    font-family: var(--s11-heading-font) !important;
}

body.sp11-site .spj-patron-accent blockquote p {
    font-size: clamp(0.98rem, 1.55vw, 1.2rem) !important;
    line-height: 1.42 !important;
}

/* ---------------------------------------------------------------------
   Nagłówki list aktualności i stron — także tytuły będące linkiem.
   --------------------------------------------------------------------- */
body.sp11-site .spj-news-index__header h1,
body.sp11-site .spj-page-index__header h1,
body.sp11-site .sp11-page-header h1,
body.sp11-site .page-wrap .page-title,
body.sp11-site #search-heading {
    font-family: var(--s11-heading-font) !important;
    font-size: clamp(1.72rem, 2.55vw, 2.45rem) !important;
    font-weight: 700 !important;
    line-height: 1.1 !important;
    letter-spacing: -0.032em !important;
}

body.sp11-site .spj-news-list__title,
body.sp11-site .spj-news-list__title a,
body.sp11-site .spj-page-list__title,
body.sp11-site .spj-page-list__title a,
body.sp11-site .news-list .news-item h2,
body.sp11-site .news-list .news-item h2 a,
body.sp11-site .search-result-item h2,
body.sp11-site .search-result-item h2 a,
body.sp11-site .news-subcategory .card-title,
body.sp11-site .news-subcategory .card-title a {
    font-family: var(--s11-heading-font) !important;
    font-size: clamp(1.05rem, 1.35vw, 1.28rem) !important;
    font-weight: 700 !important;
    line-height: 1.23 !important;
    letter-spacing: -0.018em !important;
}

body.sp11-site .sp11-empty-state h2,
body.sp11-site .search-empty h2 {
    font-family: var(--s11-heading-font) !important;
    font-size: clamp(1.18rem, 1.7vw, 1.5rem) !important;
    line-height: 1.2 !important;
}

/* ---------------------------------------------------------------------
   Widoki szczegółowe aktualności i stron.
   --------------------------------------------------------------------- */
body.sp11-site .sp11-article-card > .sp11-page-header h1,
body.sp11-site #article-title,
body.sp11-site #page-title {
    font-family: var(--s11-heading-font) !important;
    font-size: clamp(1.72rem, 2.65vw, 2.55rem) !important;
    font-weight: 700 !important;
    line-height: 1.1 !important;
    letter-spacing: -0.032em !important;
}

/* Treści wprowadzone przez redaktora, także ETR i starsze klasy CMS. */
body.sp11-site .sp11-content h1,
body.sp11-site .article-content h1,
body.sp11-site .strona-content h1,
body.sp11-site .content-box h1,
body.sp11-site .etr-switcher__panel h1,
body.sp11-site .news-details-content h1 {
    font-size: clamp(1.58rem, 2.3vw, 2.1rem) !important;
    line-height: 1.14 !important;
}

body.sp11-site .sp11-content h2,
body.sp11-site .article-content h2,
body.sp11-site .strona-content h2,
body.sp11-site .content-box h2,
body.sp11-site .etr-switcher__panel h2,
body.sp11-site .news-details-content h2,
body.sp11-site .gallery-section h2,
body.sp11-site .metryczka__heading {
    font-family: var(--s11-heading-font) !important;
    font-size: clamp(1.28rem, 1.85vw, 1.7rem) !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
}

body.sp11-site .sp11-content h3,
body.sp11-site .article-content h3,
body.sp11-site .strona-content h3,
body.sp11-site .content-box h3,
body.sp11-site .etr-switcher__panel h3,
body.sp11-site .news-details-content h3,
body.sp11-site .gallery-section h3 {
    font-family: var(--s11-heading-font) !important;
    font-size: clamp(1.12rem, 1.45vw, 1.38rem) !important;
    font-weight: 700 !important;
    line-height: 1.24 !important;
}

body.sp11-site .sp11-content h4,
body.sp11-site .article-content h4,
body.sp11-site .strona-content h4,
body.sp11-site .content-box h4,
body.sp11-site .etr-switcher__panel h4,
body.sp11-site .news-details-content h4,
body.sp11-site .gallery-section h4 {
    font-family: var(--s11-heading-font) !important;
    font-size: clamp(1rem, 1.2vw, 1.14rem) !important;
    font-weight: 700 !important;
    line-height: 1.28 !important;
}

body.sp11-site .sp11-content h5,
body.sp11-site .sp11-content h6,
body.sp11-site .article-content h5,
body.sp11-site .article-content h6,
body.sp11-site .strona-content h5,
body.sp11-site .strona-content h6,
body.sp11-site .content-box h5,
body.sp11-site .content-box h6,
body.sp11-site .etr-switcher__panel h5,
body.sp11-site .etr-switcher__panel h6 {
    font-family: var(--s11-heading-font) !important;
    font-size: 0.98rem !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
}

/* Nawigacja między wpisami — tytuły w elementach small. */
body.sp11-site .sp11-article-nav small {
    font-family: var(--s11-heading-font) !important;
    font-weight: 600 !important;
    letter-spacing: -0.01em;
}

/* ---------------------------------------------------------------------
   Panel boczny, programy, mapa strony, kontakt i komponenty pomocnicze.
   --------------------------------------------------------------------- */
body.sp11-site .sp11-sidebar-card__head,
body.sp11-site .spj-projects-sidebar__heading,
body.sp11-site .spj-projects-sidebar__group h3,
body.sp11-site .spj-projects-sidebar__text strong,
body.sp11-site .sp11-content-card h2,
body.sp11-site .sp11-content-card h3,
body.sp11-site .contact-area h1,
body.sp11-site #contact-heading,
body.sp11-site .gallery-section__heading,
body.sp11-site .wcag-notice__title,
body.sp11-site .etr-switcher__title {
    font-family: var(--s11-heading-font) !important;
    font-weight: 700 !important;
}

body.sp11-site .sp11-sidebar-card__head,
body.sp11-site .spj-projects-sidebar__heading {
    font-size: clamp(1rem, 1.18vw, 1.14rem) !important;
    line-height: 1.25 !important;
}

body.sp11-site .sp11-content-card > .sp11-content > h2,
body.sp11-site .sp11-content-card nav h2 {
    font-size: clamp(1.18rem, 1.55vw, 1.45rem) !important;
    line-height: 1.22 !important;
}

/* ---------------------------------------------------------------------
   Menu — nagłówki grup i elementy wielokolumnowe.
   --------------------------------------------------------------------- */
body.sp11-site .sp11-nav__group-title,
body.sp11-site .sp11-nav__group-heading,
body.sp11-site .sp11-nav__mega-title {
    font-family: var(--s11-heading-font) !important;
    font-size: 0.9rem !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    letter-spacing: -0.01em !important;
}

/* Zachowanie czytelności w trybie wysokiego kontrastu. */
@media (forced-colors: active) {
    body.sp11-site h1,
    body.sp11-site h2,
    body.sp11-site h3,
    body.sp11-site h4,
    body.sp11-site h5,
    body.sp11-site h6 {
        forced-color-adjust: auto;
    }
}

@media (max-width: 43.75rem) {
    body.sp11-site .sp11-brand__name,
    body.sp11-site .sp11-site-header.is-condensed .sp11-brand__name {
        font-size: 0.96rem !important;
    }

    body.sp11-site .spj-platinum-hero__title {
        font-size: clamp(1.95rem, 9.5vw, 2.55rem) !important;
    }

    body.sp11-site .sp11-recruitment h2 {
        font-size: clamp(1.5rem, 7.2vw, 1.95rem) !important;
    }

    body.sp11-site .spj-news-index__header h1,
    body.sp11-site .spj-page-index__header h1,
    body.sp11-site .sp11-page-header h1,
    body.sp11-site #article-title,
    body.sp11-site #page-title {
        font-size: clamp(1.55rem, 7.8vw, 2.1rem) !important;
    }
}

@media print {
    body.sp11-site h1,
    body.sp11-site h2,
    body.sp11-site h3,
    body.sp11-site h4,
    body.sp11-site h5,
    body.sp11-site h6,
    body.sp11-site .page-title,
    body.sp11-site .card-title {
        font-family: Arial, sans-serif !important;
        font-weight: 700 !important;
    }
}

/* =====================================================================
   OGRANICZENIE WAGI TEKSTU — MAKSYMALNIE 700

   Ta warstwa nadpisuje wartości 800/900 pozostawione w starszych
   arkuszach SPJ, w stylach inline oraz klasach narzędziowych. Nie dotyka
   klas Font Awesome (`.fa`, `.fas`, `.far`, `.fab`), ponieważ ich waga
   900 jest technicznym wariantem pliku ikon, a nie wagą tekstu.
   ===================================================================== */
body.sp11-site strong,
body.sp11-site b,
body.sp11-site .fw-bold,
body.sp11-site .fw-bolder,
body.sp11-site .font-weight-bold,
body.sp11-site .font-weight-bolder,
body.sp11-site .font-bold,
body.sp11-site .font-extrabold,
body.sp11-site .font-black,
body.sp11-site .text-bold,
body.sp11-site [class*="font-weight-800"],
body.sp11-site [class*="font-weight-900"],
body.sp11-site [style*="font-weight:800" i],
body.sp11-site [style*="font-weight: 800" i],
body.sp11-site [style*="font-weight:900" i],
body.sp11-site [style*="font-weight: 900" i],
body.sp11-site .sp11-brand__name,
body.sp11-site .sp11-nav-toggle,
body.sp11-site .sp11-btn,
body.sp11-site .sp11-text-link,
body.sp11-site .sp11-contact-band a,
body.sp11-site .sp11-hero__identity-label,
body.sp11-site .sp11-nav__submenu a[aria-current="page"],
body.sp11-site .sp11-nav__journal-link,
body.sp11-site .sp11-nav__journal-link::after,
body.sp11-site .sp11-filter label,
body.sp11-site .sp11-sidebar-card__head,
body.sp11-site .sp11-pagination a,
body.sp11-site .sp11-pagination [aria-current="page"],
body.sp11-site .sp11-article-nav a,
body.sp11-site .metryczka__term,
body.sp11-site .sp11-recruitment__eyebrow,
body.sp11-site .sp11-recruitment__steps strong,
body.sp11-site .sp11-recruitment__steps li::before,
body.sp11-site .spj-news-list__eyebrow,
body.sp11-site .spj-news-list__date,
body.sp11-site .spj-news-list__read-more,
body.sp11-site .spj-page-list__eyebrow,
body.sp11-site .spj-page-list__date,
body.sp11-site .spj-page-list__read-more,
body.sp11-site .sp11-audience--diary .sp11-audience__eyebrow,
body.sp11-site .sp11-standard-list > li::before,
body.sp11-site .sp11-news-list > li::before {
    font-weight: 700 !important;
}

body.sp11-site,
body.sp11-site * {
    font-synthesis-weight: none;
}

@media print {
    body.sp11-site strong,
    body.sp11-site b,
    body.sp11-site [style*="font-weight:800" i],
    body.sp11-site [style*="font-weight: 800" i],
    body.sp11-site [style*="font-weight:900" i],
    body.sp11-site [style*="font-weight: 900" i] {
        font-weight: 700 !important;
    }
}

