/* ======================================================================
   SP Jaczów — jasny motyw szkoły v1.0.0
   Cel: lżejszy, radosny, ale spokojny front szkoły podstawowej.
   Typografia: Montserrat 400/500/600/700.
   Zasady dostępności: brak dodatniego tabindex, focus-visible, reflow,
   prefers-reduced-motion, forced-colors, min. 44 px dla głównych kontrolek.
   Plik jest końcowym override i nie modyfikuje pp10-bundle.css.
   ====================================================================== */

:root {
    --sp11-navy-950: #0b1f33;
    --sp11-navy-900: #163a57;
    --sp11-blue-800: #1f4f98;
    --sp11-blue-700: #2458a6;
    --sp11-blue-100: #e8f0fb;
    --sp11-sky-50: #f6f9fc;
    --sp11-surface: #ffffff;
    --sp11-canvas: #f7f9fc;
    --sp11-text: #13263d;
    --sp11-muted: #4f6074;
    --sp11-border: #dce5ef;
    --sp11-amber-700: #7a5600;
    --sp11-amber-100: #fff5d8;
    --sp11-success-700: #2b6c4b;
    --sp11-success-100: #e8f5ed;
    --sp11-danger-700: #9a2431;
    --sp11-danger-100: #fdebed;
    --sp11-focus: #ffbf47;
    --sp11-shadow-sm: 0 0.35rem 1.1rem rgba(31, 79, 152, 0.07);
    --sp11-shadow-md: 0 0.9rem 2.2rem rgba(31, 79, 152, 0.11);
    --sp11-radius-sm: 0.75rem;
    --sp11-radius: 1rem;
    --sp11-radius-lg: 1.35rem;
}

html {
    scroll-behavior: smooth;
}

body.sp11-site {
    color: var(--sp11-text);
    background: var(--sp11-canvas);
    font-family: "Montserrat", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    font-weight: 400;
    line-height: 1.65;
}

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 button,
body.sp11-site input,
body.sp11-site select,
body.sp11-site textarea {
    font-family: inherit;
}

body.sp11-site h1,
body.sp11-site h2,
body.sp11-site h3,
body.sp11-site h4,
body.sp11-site .sp11-brand__name {
    font-weight: 700;
    letter-spacing: -0.02em;
}

body.sp11-site a {
    color: var(--sp11-blue-800);
}

body.sp11-site :focus-visible {
    outline: 3px solid var(--sp11-navy-950);
    outline-offset: 3px;
    box-shadow: 0 0 0 6px var(--sp11-focus);
}

/* --- górny pasek ------------------------------------------------------ */
body.sp11-site .sp11-topbar {
    color: #21354c;
    background: #f2f6fa;
    border-bottom: 1px solid #e4ebf2;
    font-size: 0.82rem;
}

body.sp11-site .sp11-topbar__inner {
    min-height: 2.65rem;
}

body.sp11-site .sp11-topbar__links {
    gap: 0.45rem 1.35rem;
}

body.sp11-site .sp11-topbar a {
    color: #21354c;
    font-weight: 600;
    text-decoration-color: transparent;
}

body.sp11-site .sp11-topbar a:hover,
body.sp11-site .sp11-topbar a:focus-visible {
    color: var(--sp11-blue-800);
    text-decoration-color: currentColor;
}

/* --- nagłówek i marka ------------------------------------------------ */
body.sp11-site .sp11-site-header,
body.sp11-site .sp11-header {
    background: rgba(255, 255, 255, 0.985);
}

body.sp11-site .sp11-header {
    border-bottom: 1px solid var(--sp11-border);
    box-shadow: 0 0.25rem 1.2rem rgba(31, 79, 152, 0.05);
}

body.sp11-site .sp11-header__brand-row {
    min-height: 5.75rem;
    gap: 1.4rem;
}

body.sp11-site .sp11-brand {
    gap: 0.85rem;
    min-width: 0;
    color: var(--sp11-navy-950);
}

body.sp11-site .sp11-brand__mark {
    width: 3.65rem;
    height: 3.65rem;
    flex-basis: 3.65rem;
    padding: 0.25rem;
    border: 0;
    border-radius: 0.7rem;
    box-shadow: none;
    background: transparent;
}

body.sp11-site .sp11-brand__mark img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

body.sp11-site .sp11-brand__name {
    color: #102b4e;
    font-size: clamp(1.02rem, 1.65vw, 1.36rem);
    line-height: 1.15;
}

body.sp11-site .sp11-brand__patron {
    margin-top: 0.22rem;
    color: #31506f;
    font-size: clamp(0.74rem, 1.05vw, 0.9rem);
    font-weight: 500;
    line-height: 1.35;
}

body.sp11-site .sp11-header__actions {
    gap: 0.65rem;
}

body.sp11-site .sp11-header-journal,
body.sp11-site .sp11-nav-toggle {
    min-height: 44px;
    border: 1px solid var(--sp11-border);
    background: #ffffff;
    color: var(--sp11-navy-950);
    box-shadow: none;
}

body.sp11-site .sp11-header-journal {
    border-radius: 0.8rem;
    padding-inline: 1rem;
    font-weight: 600;
}

body.sp11-site .sp11-header-journal:hover {
    color: var(--sp11-blue-800);
    background: #f5f8fc;
    border-color: #b9cbe0;
}

body.sp11-site .sp11-nav-toggle {
    border-radius: 0.8rem;
}

/* --- nawigacja -------------------------------------------------------- */
body.sp11-site .sp11-nav {
    background: #ffffff;
    border-top: 1px solid #eef2f6;
    border-bottom: 0;
}

body.sp11-site .sp11-nav__list {
    min-height: 3.75rem;
    gap: 0.15rem;
}

body.sp11-site .sp11-nav__link,
body.sp11-site .sp11-nav__button {
    min-height: 44px;
    padding: 0.68rem 0.78rem;
    color: #20364f;
    border-radius: 0.55rem;
    font-size: 0.88rem;
    font-weight: 600;
    text-decoration: none;
}

body.sp11-site .sp11-nav__link:hover,
body.sp11-site .sp11-nav__button:hover {
    color: var(--sp11-blue-800);
    background: #f0f5fb;
}

/* Aktywny element musi mieć większą specyficzność niż reguła bazowa
   body.sp11-site .sp11-nav__link / .sp11-nav__button. */
body.sp11-site .sp11-nav__link[aria-current="page"],
body.sp11-site .sp11-nav__button[aria-current="page"],
body.sp11-site .sp11-nav__button[aria-expanded="true"] {
    color: #ffffff;
    background: #163a57;
}

body.sp11-site .sp11-nav__link[aria-current="page"]:hover,
body.sp11-site .sp11-nav__link[aria-current="page"]:focus-visible,
body.sp11-site .sp11-nav__button[aria-current="page"]:hover,
body.sp11-site .sp11-nav__button[aria-current="page"]:focus-visible,
body.sp11-site .sp11-nav__button[aria-expanded="true"]:hover,
body.sp11-site .sp11-nav__button[aria-expanded="true"]:focus-visible {
    color: #ffffff;
    background: #163a57;
}

body.sp11-site .sp11-nav__submenu {
    border: 1px solid var(--sp11-border);
    border-radius: 0.8rem;
    background: #ffffff;
    box-shadow: var(--sp11-shadow-md);
}

body.sp11-site .sp11-nav__submenu a {
    color: #1c344e;
    font-weight: 500;
}

body.sp11-site .sp11-nav__submenu a:hover,
body.sp11-site .sp11-nav__submenu a:focus-visible,
body.sp11-site .sp11-nav__submenu a[aria-current="page"] {
    color: var(--sp11-blue-800);
    background: #f3f7fc;
}

body.sp11-site .sp11-site-header.is-condensed {
    box-shadow: 0 0.45rem 1.35rem rgba(31, 79, 152, 0.12);
}

body.sp11-site .sp11-site-header.is-condensed .sp11-nav {
    background: #ffffff;
}

/* --- wspólne sekcje --------------------------------------------------- */
body.sp11-site .sp11-section,
body.sp11-site .sp11-official,
body.sp11-site .sp11-recruitment {
    background: transparent;
}

body.sp11-site .sp11-section__head h2,
body.sp11-site .sp11-official__head h2,
body.sp11-site .sp11-recruitment h2,
body.sp11-site .sp11-page-header h1,
body.sp11-site .sp11-content h2,
body.sp11-site .sp11-content h3,
body.sp11-site .sp11-sidebar-card__head,
body.sp11-site .spj-projects-sidebar__heading h2,
body.sp11-site .spj-projects-sidebar__group h3 {
    color: #102b4e !important;
    font-family: inherit !important;
    font-weight: 700;
}

body.sp11-site .sp11-eyebrow,
body.sp11-site .sp11-recruitment__eyebrow {
    color: var(--sp11-blue-800);
    font-family: inherit;
    font-weight: 700;
    letter-spacing: 0.04em;
}

body.sp11-site .sp11-section__head p,
body.sp11-site .sp11-official__head p,
body.sp11-site .sp11-recruitment__content > p,
body.sp11-site .sp11-page-header p {
    color: var(--sp11-muted);
}

/* Rekrutacja — jasna zamiast reprezentacyjnej */
body.sp11-site .sp11-recruitment {
    padding-block: clamp(1.75rem, 3.5vw, 3rem);
}

body.sp11-site .sp11-recruitment__panel {
    color: var(--sp11-text);
    background: #ffffff;
    border: 1px solid var(--sp11-border);
    border-radius: 1.15rem;
    box-shadow: var(--sp11-shadow-sm);
}

body.sp11-site .sp11-recruitment__panel::before {
    background: linear-gradient(90deg, #dce9fb, #eaf6ee, #fff2cf);
    opacity: 1;
}

body.sp11-site .sp11-recruitment__steps li {
    color: #20364f;
    background: #f7f9fc;
    border: 1px solid var(--sp11-border);
}

body.sp11-site .sp11-recruitment__steps li > span {
    color: #ffffff;
    background: var(--sp11-blue-800);
}

body.sp11-site .sp11-btn--recruitment {
    color: #ffffff;
    background: var(--sp11-blue-800);
    border-color: var(--sp11-blue-800);
}

body.sp11-site .sp11-btn--recruitment:hover {
    color: #ffffff;
    background: #173f7b;
    border-color: #173f7b;
}

body.sp11-site .sp11-btn--recruitment-secondary {
    color: var(--sp11-blue-800);
    background: #ffffff;
    border-color: #9fb8d5;
}

body.sp11-site .sp11-recruitment__number {
    color: var(--sp11-blue-800);
    background: #f0f5fb;
    border-color: #cbd9e8;
}

/* Serwisy publiczne — proste, lżejsze karty */
body.sp11-site .sp11-official {
    padding-block: clamp(2rem, 4vw, 3.5rem);
    border: 0;
}

body.sp11-site .sp11-official::before,
body.sp11-site .sp11-official::after,
body.sp11-site .sp11-official-card::before {
    display: none !important;
}

body.sp11-site .sp11-official > .sp11-container {
    padding: 0;
    background: transparent;
    border: 0;
    box-shadow: none;
}

body.sp11-site .sp11-official-card {
    min-height: 10.5rem;
    color: #163a57;
    background: #ffffff;
    border: 1px solid var(--sp11-border);
    border-radius: 1rem;
    box-shadow: var(--sp11-shadow-sm);
    transform: none;
}

body.sp11-site .sp11-official-card:hover,
body.sp11-site .sp11-official-card:focus-visible {
    color: var(--sp11-blue-800);
    border-color: #9fb8d5;
    box-shadow: var(--sp11-shadow-md);
    transform: translateY(-2px);
}

/* Informacje wg potrzeb — bez granatowego tła */
body.sp11-site .sp11-section--audience-featured {
    color: var(--sp11-text);
    background: #eef5fb !important;
    border-block: 1px solid #dfe9f3;
}

body.sp11-site .sp11-section--audience-featured::before {
    display: none !important;
}

body.sp11-site .sp11-section--audience-featured .sp11-section__head,
body.sp11-site .sp11-section__head--on-dark,
body.sp11-site .sp11-section__head--on-dark h2,
body.sp11-site .sp11-section__head--on-dark p {
    color: var(--sp11-text) !important;
}

body.sp11-site .sp11-audience-grid--four .sp11-audience,
body.sp11-site .sp11-audience-grid--four .sp11-audience--student,
body.sp11-site .sp11-audience-grid--four .sp11-audience--diary,
body.sp11-site .sp11-audience:nth-child(2) {
    color: var(--sp11-text);
    background: #ffffff;
    border: 1px solid #d9e4ef;
    border-radius: 1rem;
    box-shadow: 0 0.25rem 0.9rem rgba(31, 79, 152, 0.05);
}

body.sp11-site .sp11-audience-grid--four .sp11-audience h3,
body.sp11-site .sp11-audience-grid--four .sp11-audience a,
body.sp11-site .sp11-audience:nth-child(2) h3,
body.sp11-site .sp11-audience:nth-child(2) a {
    color: #173d70;
}

body.sp11-site .sp11-audience__mark {
    color: #ffffff;
    background: var(--sp11-blue-800);
}

body.sp11-site .sp11-audience__action {
    color: #ffffff !important;
    background: var(--sp11-blue-800);
    border-color: var(--sp11-blue-800);
}

/* Ważne informacje */
body.sp11-site .sp11-section--platinum-mist,
body.sp11-site .spj-important-news {
    color: var(--sp11-text);
    background: #fffaf0 !important;
    border-block: 1px solid #eee1be;
}

body.sp11-site .spj-important-news::before,
body.sp11-site .spj-important-news::after {
    display: none !important;
}

body.sp11-site .sp11-alert {
    background: #ffffff;
    border: 1px solid #e8d8aa;
    border-radius: 1rem;
    box-shadow: none;
}

/* Podstrony i sidebar */
body.sp11-site .sp11-page-shell,
body.sp11-site .sp11-page {
    background: transparent;
}

body.sp11-site .sp11-content-card,
body.sp11-site .sp11-sidebar-card,
body.sp11-site .spj-projects-sidebar {
    background: #ffffff;
    border: 1px solid var(--sp11-border);
    border-radius: 1rem;
    box-shadow: var(--sp11-shadow-sm);
}

body.sp11-site .sp11-content {
    color: #20364f;
    font-family: inherit;
}

body.sp11-site .sp11-content a {
    color: #1f4f98;
    font-weight: 600;
}

body.sp11-site .sp11-content th {
    color: #102b4e;
    background: #eef4fa;
}

body.sp11-site .sp11-content img {
    border-radius: 0.9rem;
}

body.sp11-site .sp11-sidebar-card a,
body.sp11-site .spj-projects-sidebar__link {
    color: #1f4f98;
}

/* Stopka i pas kontaktowy — jasny wariant zgodny z nowym frontem. */
body.sp11-site .sp11-contact-band {
    position: relative;
    color: #20364f;
    background: #ffffff;
    border-top: 1px solid #e3ebf4;
    border-bottom: 1px solid #dce6f0;
}

body.sp11-site .sp11-contact-band h2 {
    color: #102b4e;
}

body.sp11-site .sp11-contact-band p {
    color: #53677d;
}

body.sp11-site .sp11-contact-band a:not(.sp11-social-link) {
    color: #1f4f98;
    font-weight: 700;
}

body.sp11-site .sp11-footer {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    color: #40556c;
    background: #f4f8fc;
    border-top: 0;
}

body.sp11-site .sp11-footer::before {
    z-index: 0;
    height: 0.22rem;
    background: linear-gradient(
        90deg,
        #2f67b1 0 68%,
        #e0b535 68% 84%,
        #77a95d 84% 100%
    );
}

body.sp11-site .sp11-footer__grid,
body.sp11-site .sp11-footer__bottom {
    position: relative;
    z-index: 1;
}

body.sp11-site .sp11-footer h2 {
    color: #102b4e;
}

body.sp11-site .sp11-footer p {
    color: #40556c;
}

body.sp11-site .sp11-footer a {
    color: #1f4f98;
    font-weight: 600;
}

body.sp11-site .sp11-footer__bottom {
    color: #607287;
    border-top-color: #d7e1eb;
}

@media (max-width: 44rem) {
    body.sp11-site .sp11-contact-band__grid > * + *,
    body.sp11-site .sp11-footer__grid > * + * {
        border-top-color: #d7e1eb;
    }
}

@media (forced-colors: active) {
    body.sp11-site .sp11-contact-band,
    body.sp11-site .sp11-footer {
        color: CanvasText;
        background: Canvas;
        border-color: CanvasText;
    }

    body.sp11-site .sp11-contact-band h2,
    body.sp11-site .sp11-contact-band p,
    body.sp11-site .sp11-contact-band a,
    body.sp11-site .sp11-footer h2,
    body.sp11-site .sp11-footer p,
    body.sp11-site .sp11-footer a,
    body.sp11-site .sp11-footer__bottom {
        color: CanvasText;
    }
}

/* --- RWD -------------------------------------------------------------- */
@media (min-width: 67.5rem) {
    body.sp11-site .sp11-header__brand-row {
        min-height: 5.6rem;
    }
}

@media (max-width: 67.49rem) {
    body.sp11-site .sp11-header__brand-row {
        min-height: 5rem;
    }

    body.sp11-site .sp11-brand__mark {
        width: 3.25rem;
        height: 3.25rem;
        flex-basis: 3.25rem;
    }

    body.sp11-site .sp11-nav {
        background: #ffffff;
    }

    body.sp11-site .sp11-nav.is-open {
        border-top: 1px solid var(--sp11-border);
    }
}

@media (max-width: 42rem) {
    body.sp11-site .sp11-container {
        width: min(calc(100% - 1.25rem), var(--sp11-container));
    }

    body.sp11-site .sp11-topbar__inner {
        align-items: flex-start;
        padding-block: 0.55rem;
    }

    body.sp11-site .sp11-topbar__links {
        display: grid;
        gap: 0.22rem;
    }

    body.sp11-site .sp11-header-journal {
        display: none;
    }

    body.sp11-site .sp11-brand__name {
        font-size: 0.98rem;
    }

    body.sp11-site .sp11-brand__patron {
        font-size: 0.72rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    html {
        scroll-behavior: auto;
    }

    body.sp11-site *,
    body.sp11-site *::before,
    body.sp11-site *::after {
        scroll-behavior: auto !important;
        transition-duration: 0.001ms !important;
        animation-duration: 0.001ms !important;
        animation-iteration-count: 1 !important;
    }
}

@media (forced-colors: active) {
    body.sp11-site .sp11-topbar,
    body.sp11-site .sp11-header,
    body.sp11-site .sp11-nav,
    body.sp11-site .sp11-recruitment__panel,
    body.sp11-site .sp11-official-card,
    body.sp11-site .sp11-audience,
    body.sp11-site .sp11-alert,
    body.sp11-site .sp11-content-card,
    body.sp11-site .sp11-sidebar-card,
    body.sp11-site .spj-projects-sidebar {
        color: CanvasText;
        background: Canvas;
        border-color: CanvasText;
        box-shadow: none;
    }
}

@media print {
    body.sp11-site {
        color: #000000;
        background: #ffffff;
        font-family: Arial, sans-serif;
    }
}

/* ======================================================================
   SP Jaczów — nagłówek light v1.4.3
   Spójność z nową stroną główną: Montserrat, jasne powierzchnie,
   miękkie obramowania, subtelny błękit i spokojny stan aktywny.
   ====================================================================== */

body.sp11-site .sp11-site-header {
    background: #ffffff;
}

body.sp11-site .sp11-topbar {
    color: #314861;
    background: #f6f9fc;
    border-top: 0;
    border-bottom: 1px solid #e7edf4;
    font-family: "Montserrat", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    font-size: 0.78rem;
}

body.sp11-site .sp11-topbar__inner {
    min-height: 2.55rem;
}

body.sp11-site .sp11-topbar__links {
    gap: 0.35rem 1.25rem;
}

body.sp11-site .sp11-topbar__item {
    display: inline-flex;
    min-height: 2rem;
    align-items: center;
    gap: 0.45rem;
    color: #314861;
    font-weight: 500;
    line-height: 1.35;
    text-decoration: none;
}

body.sp11-site a.sp11-topbar__item:hover {
    color: #1f4f98;
    text-decoration: underline;
    text-underline-offset: 0.2em;
}

body.sp11-site .sp11-topbar__icon {
    width: 1rem;
    height: 1rem;
    flex: 0 0 1rem;
    fill: none;
    stroke: #2458a6;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

body.sp11-site .sp11-header {
    background: #ffffff;
    border-bottom: 0;
    box-shadow: 0 0.3rem 1.4rem rgba(31, 79, 152, 0.055);
}

body.sp11-site .sp11-header__brand-row {
    min-height: 5.9rem;
    gap: 1.25rem;
}

body.sp11-site .sp11-brand {
    gap: 0.9rem;
    color: #112c4e;
}

body.sp11-site .sp11-brand__mark {
    width: 3.75rem;
    height: 3.75rem;
    flex-basis: 3.75rem;
    padding: 0.42rem;
    overflow: hidden;
    background: #f7faff;
    border: 1px solid #dce7f3;
    border-radius: 1rem;
    box-shadow: 0 0.35rem 1rem rgba(31, 79, 152, 0.07);
}

body.sp11-site .sp11-brand__mark img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    border-radius: 0;
}

body.sp11-site .sp11-site-header .sp11-brand__text {
    display: grid;
    gap: 0.12rem;
    min-width: 0;
}

body.sp11-site .sp11-site-header .sp11-brand__name,
body.sp11-site .sp11-site-header .sp11-brand__patron {
    font-family: "Montserrat", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    letter-spacing: -0.015em;
}

body.sp11-site .sp11-site-header .sp11-brand__name {
    color: #102b4e;
    font-size: clamp(1.08rem, 1.6vw, 1.42rem);
    font-weight: 700;
    line-height: 1.2;
}

body.sp11-site .sp11-site-header .sp11-brand__patron {
    margin-top: 0.08rem;
    color: #536b84;
    font-size: clamp(0.72rem, 1vw, 0.86rem);
    font-weight: 500;
    line-height: 1.4;
}

body.sp11-site .sp11-header__actions {
    gap: 0.65rem;
}

body.sp11-site .sp11-header-journal {
    min-height: 46px;
    display: inline-flex;
    align-items: center;
    gap: 0.55rem;
    padding: 0.7rem 1rem;
    color: #174a93;
    background: #f1f6fd;
    border: 1px solid #d4e2f2;
    border-radius: 0.9rem;
    font-family: "Montserrat", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    font-size: 0.85rem;
    font-weight: 600;
    text-decoration: none;
}

body.sp11-site .sp11-header-journal:hover {
    color: #123b77;
    background: #e7f0fb;
    border-color: #b9cde5;
}

body.sp11-site .sp11-header-journal__icon {
    width: 1.18rem;
    height: 1.18rem;
    flex: 0 0 1.18rem;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
}

body.sp11-site .sp11-nav {
    padding-bottom: 0.7rem;
    background: #ffffff;
    border-top: 0;
    border-bottom: 0;
}

body.sp11-site .sp11-nav > .sp11-container {
    padding: 0.34rem;
    background: #f8fafc;
    border: 1px solid #e3eaf2;
    border-radius: 1rem;
    box-shadow: 0 0.35rem 1rem rgba(31, 79, 152, 0.045);
}

body.sp11-site .sp11-nav__list {
    min-height: 3rem;
    gap: 0.08rem;
}

body.sp11-site .sp11-nav__link,
body.sp11-site .sp11-nav__button {
    min-height: 44px;
    padding: 0.62rem 0.7rem;
    color: #273e57;
    background: transparent;
    border: 1px solid transparent;
    border-radius: 0.72rem;
    font-family: "Montserrat", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    font-size: 0.82rem;
    font-weight: 600;
    line-height: 1.25;
    text-decoration: none;
}

body.sp11-site .sp11-nav__link:hover,
body.sp11-site .sp11-nav__button:hover {
    color: #174a93;
    background: #edf4fc;
    border-color: #d9e6f5;
}

body.sp11-site .sp11-nav__link[aria-current="page"],
body.sp11-site .sp11-nav__button[aria-current="page"],
body.sp11-site .sp11-nav__button[aria-expanded="true"] {
    color: #174a93;
    background: #e7f0fb;
    border-color: #c9dcef;
    box-shadow: inset 0 -3px 0 #2b66c8;
}

body.sp11-site .sp11-nav__link[aria-current="page"]:hover,
body.sp11-site .sp11-nav__link[aria-current="page"]:focus-visible,
body.sp11-site .sp11-nav__button[aria-current="page"]:hover,
body.sp11-site .sp11-nav__button[aria-current="page"]:focus-visible,
body.sp11-site .sp11-nav__button[aria-expanded="true"]:hover,
body.sp11-site .sp11-nav__button[aria-expanded="true"]:focus-visible {
    color: #123b77;
    background: #dceafa;
    border-color: #b9d0e8;
}

body.sp11-site .sp11-nav__chevron {
    width: 0.48rem;
    height: 0.48rem;
    border-width: 0 0.1rem 0.1rem 0;
}

body.sp11-site .sp11-nav__submenu {
    top: calc(100% + 0.55rem);
    padding: 0.45rem;
    background: #ffffff;
    border: 1px solid #dce6f0;
    border-radius: 0.95rem;
    box-shadow: 0 1rem 2.5rem rgba(31, 79, 152, 0.13);
}

body.sp11-site .sp11-nav__submenu a {
    padding: 0.68rem 0.75rem;
    color: #263e58;
    border-radius: 0.65rem;
    font-family: "Montserrat", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    font-size: 0.84rem;
    font-weight: 500;
}

body.sp11-site .sp11-nav__submenu a:hover,
body.sp11-site .sp11-nav__submenu a:focus-visible,
body.sp11-site .sp11-nav__submenu a[aria-current="page"] {
    color: #174a93;
    background: #edf4fc;
}

body.sp11-site .sp11-nav__submenu a[aria-current="page"] {
    font-weight: 600;
}

body.sp11-site .sp11-site-header.is-condensed .sp11-header {
    box-shadow: 0 0.55rem 1.5rem rgba(31, 79, 152, 0.11);
}

@media (min-width: 67.5rem) {
    body.sp11-site .sp11-nav__list {
        justify-content: flex-start;
    }
}

@media (max-width: 74rem) and (min-width: 67.5rem) {
    body.sp11-site .sp11-nav__link,
    body.sp11-site .sp11-nav__button {
        padding-inline: 0.55rem;
        font-size: 0.78rem;
    }
}

@media (max-width: 67.49rem) {
    body.sp11-site .sp11-header__brand-row {
        min-height: 5rem;
    }

    body.sp11-site .sp11-brand__mark {
        width: 3.25rem;
        height: 3.25rem;
        flex-basis: 3.25rem;
        padding: 0.35rem;
        border-radius: 0.85rem;
    }

    body.sp11-site .sp11-nav {
        padding-bottom: 0;
    }

    body.sp11-site .sp11-nav > .sp11-container {
        padding: 0.6rem 0.75rem 0.85rem;
        background: #ffffff;
        border: 0;
        border-top: 1px solid #e4ebf3;
        border-radius: 0;
        box-shadow: 0 1rem 2.2rem rgba(31, 79, 152, 0.12);
    }

    body.sp11-site .sp11-nav__list {
        padding: 0;
    }

    body.sp11-site .sp11-nav__link,
    body.sp11-site .sp11-nav__button {
        justify-content: space-between;
        padding: 0.7rem 0.8rem;
        font-size: 0.88rem;
    }

    body.sp11-site .sp11-nav__submenu {
        margin-left: 0.7rem;
        border-color: #e4ebf3;
        box-shadow: none;
    }
}

@media (max-width: 42rem) {
    body.sp11-site .sp11-topbar__inner {
        padding-block: 0.45rem;
    }

    body.sp11-site .sp11-topbar__links {
        gap: 0.15rem;
    }

    body.sp11-site .sp11-topbar__item {
        min-height: 1.75rem;
        font-size: 0.73rem;
    }

    body.sp11-site .sp11-header__brand-row {
        gap: 0.7rem;
    }

    body.sp11-site .sp11-site-header .sp11-brand__name {
        font-size: 0.96rem;
    }

    body.sp11-site .sp11-site-header .sp11-brand__patron {
        display: none;
    }
}

@media (forced-colors: active) {
    body.sp11-site .sp11-topbar__icon,
    body.sp11-site .sp11-header-journal__icon {
        stroke: currentColor;
    }

    body.sp11-site .sp11-nav > .sp11-container,
    body.sp11-site .sp11-brand__mark,
    body.sp11-site .sp11-header-journal,
    body.sp11-site .sp11-nav__link,
    body.sp11-site .sp11-nav__button,
    body.sp11-site .sp11-nav__submenu {
        border-color: CanvasText;
        box-shadow: none;
    }
}

/* ======================================================================
   SP Jaczów — v1.4.6: końcowe akcenty kolorystyczne i tła
   ====================================================================== */
@media screen and (forced-colors: none) {
    body.sp11-site .sp11-recruitment {
        background:
            radial-gradient(circle at 6% 18%, rgba(111, 159, 232, 0.12), transparent 15rem),
            radial-gradient(circle at 95% 78%, rgba(137, 187, 121, 0.108), transparent 17rem);
    }

    body.sp11-site .spj-important-news,
    body.sp11-site .sp11-section--platinum-mist {
        background:
            radial-gradient(circle at 92% 18%, rgba(232, 181, 45, 0.12), transparent 16rem),
            #fff5df !important;
    }

    body.sp11-site .sp11-contact-band {
        background:
            radial-gradient(circle at 12% 20%, rgba(111, 159, 232, 0.09), transparent 13rem),
            linear-gradient(90deg, #ffffff 0%, #f4f9fd 68%, #fff8e9 100%);
    }

    body.sp11-site .sp11-contact-band::after {
        content: "";
        position: absolute;
        left: 0;
        right: 0;
        bottom: 0;
        height: 3px;
        pointer-events: none;
        background: linear-gradient(90deg, #5f8fd4 0 58%, #d8ad34 58% 78%, #79aa70 78% 100%);
        opacity: 0.9;
    }

    body.sp11-site .sp11-footer {
        background:
            radial-gradient(circle at 8% 18%, rgba(111, 159, 232, 0.096), transparent 17rem),
            radial-gradient(circle at 94% 90%, rgba(121, 170, 112, 0.084), transparent 18rem),
            #eaf2f9;
    }

    body.sp11-site .sp11-content-card {
        border-top: 3px solid #7ca8ef;
    }

    body.sp11-site .sp11-sidebar-card,
    body.sp11-site .spj-projects-sidebar {
        border-top: 3px solid #8fbd82;
    }
}
