
.home_3_okna {
    width: 100%;
    min-height: 100dvh;
}
.home_3_okna_13 {
    float: left;
    width: calc(100% / 3);
    min-height: 100dvh;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    text-align: center;
}
.home_3_okna_13_logo {
    height: 100px;
}
.home_3_okna_13_zdj1 { background-image: url("../images/home/szkolenia.webp"); }
.home_3_okna_13_zdj2 { background-image: url("../images/home/edukacja.webp"); }
.home_3_okna_13_zdj3 { background-image: url("../images/home/centrum-zdrowia.webp"); }

/* Trzy interaktywne obszary OpenMedis */
.max_wymiar_full_hd { max-width: none; }
.home_3_okna {
    display: flex;
    width: 100%;
    min-height: 100svh;
    overflow: hidden;
    isolation: isolate;
    background: #13243b;
}
.home_3_okna_13 {
    position: relative;
    display: flex;
    flex: 1 1 0%;
    justify-content: center;
    align-items: center;
    min-width: 0;
    min-height: 100svh;
    overflow: hidden;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    transition: flex-grow 800ms cubic-bezier(.22,.61,.36,1);
}
.home_3_okna_13::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(9,20,32,.02);
    opacity: 1;
    pointer-events: none;
    transition: opacity 500ms ease;
}

.home_3_okna_13_nag {
    position: relative;
    z-index: 1;
    width: min(560px, calc(100% - 36px));
    max-height: calc(100svh - 32px);
    overflow: auto;
    padding: 22px 24px;
    border: 1px solid rgba(255,255,255,.35);
    border-radius: 12px;
    background: rgba(13,26,40,.56);
    color: #fff;
    text-align: center;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.14);
    -webkit-backdrop-filter: blur(5px) saturate(110%);
    backdrop-filter: blur(5px) saturate(110%);
    transition: background-color 450ms ease, border-color 450ms ease, backdrop-filter 450ms ease;
}
@supports ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
    .home_3_okna_13_nag { background: rgba(13,26,40,.27); }
}
.home_3_okna_13_ident { position: relative;
    text-shadow: 0 1px 2px rgba(0,0,0,.95), 0 0 6px rgba(0,0,0,.65);
}
.home_3_okna_13_logo {
    display: block;
    width: 186px;
    max-width: 70%;
    height: auto;
    margin: 0 auto 12px;
    filter: brightness(0) invert(1) drop-shadow(0 1px 2px rgba(9,20,32,.65));
}
.home_3_okna_13_kategoria {
    display: block;
    margin: 0 0 7px;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: .1em;
    text-transform: uppercase;
}
.home_3_okna_13_nag h1,
.home_3_okna_13_nag h2 {
    margin: 0;
    color: #fff;
    font-family: inherit;
    font-size: clamp(23px, 2.1vw, 32px);
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: -.025em;
    text-shadow: inherit;
}
.home_3_okna_13_toggle {
    display: block;
    width: 100%;
    padding: 0;
    border: 0;
    border-radius: 4px;
    background: transparent;
    color: inherit;
    font: inherit;
    line-height: inherit;
    letter-spacing: inherit;
    text-align: center;
    cursor: pointer;
    text-shadow: inherit;
}
.home_3_okna_13_toggle:focus-visible {
    outline: 2px solid #fff;
    outline-offset: 5px;
}
.home_3_okna_13_tresc {
    display: grid;
    min-height: 0;
    overflow: hidden;
    grid-template-rows: 1fr;
    opacity: 1;
    visibility: visible;
}
.home_3_okna_13_tresc_wewn { min-height: 0; overflow: hidden; }
.home_3_okna_13_tresc > .home_3_okna_13_tresc_wewn > p {
    max-width: 30em;
    margin: 15px auto 0;
    font-size: 16px;
    line-height: 1.55;
    color: rgba(255,255,255,.96);
    text-shadow: 0 1px 2px rgba(0,0,0,.95), 0 0 6px rgba(0,0,0,.65);
}
.home_3_okna_13_link {
    display: inline-flex;
    min-height: 42px;
    align-items: center;
    justify-content: center;
    gap: 1px;
    margin: 14px 4px 0;
    padding: 9px 16px;
    border: 1px solid #0078d6;
    border-radius: 999px;
    background: #0078d6;
    color: #fff !important;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.4;
    text-decoration: none;
    font-family: "MontserratLight";
    transition: background-color 180ms ease, border-color 180ms ease, transform 180ms ease;
}
.home_3_okna_13_link:hover,
.home_3_okna_13_link:focus-visible {
    transform: translateY(-1px);
    border-color: #fff;
    background: #13243b;
    color: #fff;
    text-decoration: none;
}
.home_3_okna_13_przyciski { display: flex; flex-wrap: wrap; justify-content: center; gap: 0 2px; }
.home_3_okna_13_link_drugi { border-color: rgba(255,255,255,.7); background: rgba(9,20,32,.35); }
.home_3_okna_13_kontakt {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 3px 14px;
    margin: 16px auto 0;
    padding-top: 10px;
    border-top: 1px solid rgba(255,255,255,.35);
    font-size: 14px;
    line-height: 1.5;
    font-style: normal;
    text-shadow: 0 1px 3px rgba(0,0,0,.8);
}
.home_3_okna_13_kontakt { text-shadow: 0 1px 2px rgba(0,0,0,.95), 0 0 6px rgba(0,0,0,.65); }
.home_3_okna_13_kontakt > span,
.home_3_okna_13_kontakt > small { flex-basis: 100%; }
.home_3_okna_13_kontakt > span { font-size: 10px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.home_3_okna_13_kontakt a { color: #fff; text-decoration: none; text-underline-offset: 3px; }
.home_3_okna_13_kontakt a:hover { text-decoration: underline; }
.home_3_okna_13_kontakt small { font-size: 12px; }
.home_3_okna_13_kontakt div { display: flex; flex-wrap: wrap; justify-content: center; gap: 0 12px; }
.home_3_okna_nav { display: none; font-family: "MontserratMedium"; }

@media (min-width: 1101px) and (hover: hover) and (pointer: fine) {
    .home_3_okna[data-interactive] .home_3_okna_13.is-open { flex-grow: 2; }
    .home_3_okna[data-interactive] .home_3_okna_13:not(.is-open)::before {
        background-color: rgba(9,20,32,.02);
        background-image: radial-gradient(ellipse 100% 28% at 50% 50%, rgba(9,20,32,.46) 0%, rgba(9,20,32,.38) 40%, rgba(9,20,32,.12) 72%, rgba(9,20,32,0) 100%);
    }
    .home_3_okna[data-interactive] .home_3_okna_13:not(.is-open) .home_3_okna_13_nag {
        width: min(560px, calc(100% - 28px));
        padding: 18px 12px;
        border-color: transparent;
        background: transparent;
        box-shadow: none;
        -webkit-backdrop-filter: none;
        backdrop-filter: none;
    }
    .home_3_okna[data-interactive] .home_3_okna_13_tresc {
        grid-template-rows: 0fr;
        opacity: 0;
        visibility: hidden;
        transition: grid-template-rows 650ms cubic-bezier(.22,.61,.36,1), opacity 220ms ease, visibility 0s linear 650ms;
    }
    .home_3_okna[data-interactive] .home_3_okna_13.is-open .home_3_okna_13_tresc {
        grid-template-rows: 1fr;
        opacity: 1;
        visibility: visible;
        transition: grid-template-rows 750ms cubic-bezier(.22,.61,.36,1), opacity 500ms ease 180ms, visibility 0s;
    }
}
@media (max-width: 1100px), (hover: none), (pointer: coarse) {
    .home_3_okna_nav {
        position: fixed;
        top: calc(8px + env(safe-area-inset-top));
        left: 50%;
        z-index: 20;
        display: flex;
        justify-content: center;
        gap: 4px;
        width: max-content;
        max-width: calc(100% - 24px);
        padding: 5px;
        transform: translateX(-50%);
        border: 1px solid rgba(255,255,255,.35);
        border-radius: 999px;
        background: rgba(19,36,59,.94);
        box-shadow: 0 2px 10px rgba(9,20,32,.12);
    }
    .home_3_okna_nav a {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-height: 40px;
        padding: 8px 13px;
        border-radius: 999px;
        color: #fff;
        font-size: 13px;
        font-weight: 700;
        line-height: 1.3;
        text-decoration: none;
        white-space: nowrap;
    }
    .home_3_okna_nav a:hover,
    .home_3_okna_nav a:focus-visible {
        background: rgba(255,255,255,.14);
        outline-offset: 0;
    }
    .home_3_okna {
        display: block;
        width: 100%;
        min-height: 0;
        overflow: visible;
        background: #13243b;
    }
    .home_3_okna_13 {
        float: none;
        display: flex;
        width: 100%;
        min-width: 0;
        min-height: 100svh;
        margin: 0;
        padding: 88px 12px 28px;
        box-sizing: border-box;
        background-color: #13243b;
        background-position: center;
    }
    .home_3_okna_13_nag {
        width: min(560px, 100%);
        max-height: none;
        overflow: visible;
        padding: 22px 20px;
        box-sizing: border-box;
    }
    .home_3_okna_13_logo { width: 170px; }
    .home_3_okna_13_nag h1,
    .home_3_okna_13_nag h2 { font-size: clamp(25px, 4vw, 32px); }
}
@media (max-width: 1100px), (hover: none), (pointer: coarse) {
    body .home_3_okna_nav {
        position: fixed !important;
        top: calc(8px + env(safe-area-inset-top)) !important;
        left: 50% !important;
        right: auto !important;
        z-index: 9999 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 4px !important;
        width: max-content !important;
        max-width: calc(100% - 24px) !important;
        margin: 0 !important;
        padding: 5px !important;
        transform: translateX(-50%) !important;
        border: 1px solid rgba(255,255,255,.35) !important;
        border-radius: 999px !important;
        background: rgba(19,36,59,.94) !important;
        box-shadow: 0 2px 10px rgba(9,20,32,.12) !important;
    }
    body .home_3_okna_nav a {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        min-height: 40px !important;
        margin: 0 !important;
        padding: 8px 13px !important;
        border: 0 !important;
        border-radius: 999px !important;
        background: transparent !important;
        color: #fff !important;
        font-family: inherit !important;
        font-size: 13px !important;
        font-weight: 700 !important;
        line-height: 1.3 !important;
        text-decoration: none !important;
        white-space: nowrap !important;
    }
    body .home_3_okna_nav a:hover,
    body .home_3_okna_nav a:focus-visible {
        background: rgba(255,255,255,.14) !important;
        color: #fff !important;
    }
}
@media (max-width: 600px) {
    .home_3_okna_13 { min-height: 100svh; padding: 88px 12px 28px; }
    .home_3_okna_13_nag { width: 100%; padding: 20px 16px; }
    .home_3_okna_13_kategoria { font-size: 11px; letter-spacing: .07em; }
    .home_3_okna_13_tresc_wewn { min-height: 0; overflow: hidden; }
.home_3_okna_13_tresc > .home_3_okna_13_tresc_wewn > p { font-size: 16px; }
    .home_3_okna_13_przyciski { gap: 0; }
}
@media (max-width: 1100px), (hover: none), (pointer: coarse) {
    @supports ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
        .home_3_okna_13_nag { background: rgba(13,26,40,.32); }
    }
}
@media (prefers-reduced-motion: reduce) {
    .home_3_okna_13, .home_3_okna_13::before, .home_3_okna_13_nag, .home_3_okna_13_tresc, .home_3_okna_13_link { transition: none !important; }
}

/* Mobile appearance aligned with the approved OpenMedis landing page. */
html { scroll-behavior: smooth; }
.home_3_okna { font-family: "MontserratMedium", Arial, sans-serif; font-weight: 500; }
.home_3_okna_13 { background-color: #13243b; }
.home_3_okna_next { display: none; }
@media (max-width: 1100px), (hover: none), (pointer: coarse) {
    .home_3_okna {
        display: flex;
        flex-direction: column;
        padding-top: calc(68px + env(safe-area-inset-top));
    }
    .home_3_okna_13_zdj2 { order: 1; }
    .home_3_okna_13_zdj3 { order: 2; }
    .home_3_okna_13_zdj1 { order: 3; }
    .home_3_okna_13 {
        position: relative;
        flex-direction: column;
        min-height: calc(100svh - 68px - env(safe-area-inset-top));
        padding: 24px 0;
        scroll-margin-top: calc(68px + env(safe-area-inset-top));
        background-position: center;
    }
    .home_3_okna_13_zdj1 { background-size: auto 124%; background-position: 30% 100%; }
    .home_3_okna_13_zdj2 { background-position: 50% 55%; }
    .home_3_okna_13_zdj3 { background-position: 58% 50%; }
    .home_3_okna_13_nag {
        display: flex;
        flex-direction: column;
        justify-content: center;
        flex: 0 0 auto;
        width: min(480px, calc(100% - 40px));
        min-height: var(--equal-mobile-card-height, 0px);
        max-height: none;
        margin: 0 auto;
        padding: 24px 18px;
        overflow: visible;
        border-color: rgba(255,255,255,.45);
        background-color: rgba(13,26,40,.32);
        background-image: linear-gradient(180deg,rgba(13,26,40,.04) 0%,rgba(13,26,40,.20) 30%,rgba(13,26,40,.28) 72%,rgba(13,26,40,.16) 100%);
        box-shadow: inset 0 1px 0 rgba(255,255,255,.14);
        -webkit-backdrop-filter: blur(24px) saturate(130%);
        backdrop-filter: blur(24px) saturate(130%);
    }
    .home_3_okna_13_ident { flex-shrink: 0; }
    .home_3_okna_13_logo { width: 145px; margin-bottom: 16px; }
    .home_3_okna_13_kategoria { margin: 0 0 8px; font-size: 10px; line-height: 1.5; letter-spacing: .08em; }
    .home_3_okna_13_nag h1,
    .home_3_okna_13_nag h2 { font-size: 26px; font-weight: 500; line-height: 1.2; }
    .home_3_okna_13_tresc { flex-shrink: 0; }
    .home_3_okna_13_tresc_wewn { overflow: visible; }
    .home_3_okna_13_tresc > .home_3_okna_13_tresc_wewn > p {
        max-width: 30em;
        margin: 14px auto 0;
        font-family: Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
        font-size: 16px;
        font-weight: 400;
        line-height: 1.5;
        text-shadow: 0 1px 2px rgba(9,20,32,.8);
    }
    .home_3_okna_13_przyciski { gap: 8px; }
    .home_3_okna_13_link {
        min-height: 44px;
        margin-top: 16px;
        padding: 10px 15px;
        gap: 7px;
        font-size: 13px;
        font-weight: 500;
    }
    .home_3_okna_13_kontakt {
        gap: 2px;
        margin-top: 18px;
        padding-top: 12px;
        font-family: Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
        font-size: 12px;
        font-weight: 400;
        line-height: 1.5;
        text-shadow: 0 1px 2px rgba(9,20,32,.8);
    }
    .home_3_okna_13_kontakt > span { display: none; }
    .home_3_okna_13_kontakt > small { margin-top: 3px; font-size: 12px; }
    .home_3_okna_13_kontakt > a { min-height: 30px; padding: 3px 0; }
    .home_3_okna_13_kontakt div { display: contents; }
    .home_3_okna_next {
        display: flex;
        flex: 0 0 36px;
        align-items: center;
        justify-content: center;
        width: 44px;
        height: 36px;
        margin: 8px auto 0;
        border-radius: 18px;
        color: #fff;
        opacity: .9;
    }
    .home_3_okna_next svg {
        display: block;
        color: #FFF;
        width: 30px;
        height: 30px;
        padding: 6px;
        border: 1px solid rgba(255,255,255,.55);
        border-radius: 50%;
        background: rgba(19,36,59,.24);
        fill: none;
        stroke: currentColor;
        stroke-width: 1.5;
        stroke-linecap: round;
        stroke-linejoin: round;
        transition: background-color 0.3s ease;
    }
    .home_3_okna_next svg:hover {
        background-color: rgba(0,0,0,0.5);
    }    
    .home_3_okna_next_up svg { transform: rotate(180deg); }
}
@media (max-width: 600px) {
    .home_3_okna_13 { padding: 24px 0; }
    .home_3_okna_13_nag { padding: 24px 18px; }
}
@media (max-width: 600px) and (max-height: 700px) {
    .home_3_okna_13 { padding-block: 12px; }
    .home_3_okna_13_nag { width: calc(100% - 28px); padding: 18px 12px; }
    .home_3_okna_13_logo { width: 128px; margin-bottom: 10px; }
    .home_3_okna_13_nag h1,
    .home_3_okna_13_nag h2 { font-size: 23px; }
    .home_3_okna_13_tresc > .home_3_okna_13_tresc_wewn > p { font-size: 15px; line-height: 1.4; }
    .home_3_okna_13_tresc > .home_3_okna_13_tresc_wewn > p { margin-top: 10px; }
    .home_3_okna_13_link { margin-top: 10px; }
    .home_3_okna_13_kontakt { margin-top: 12px; padding-top: 8px; }
}
@media (max-width: 360px) {
    .home_3_okna_nav a { padding-inline: 10px; font-size: 12px; }
    .home_3_okna_13_link { padding: 9px 12px; font-size: 12px; gap: 5px; }
}
@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
}
@media (max-width: 1100px), (hover: none), (pointer: coarse) {
    .home_3_okna_13_link svg.strzalka {
        display: block;
        width: 14px;
        height: 12px;
        margin-left: 0;
        fill: none;
        stroke: currentColor;
        stroke-width: 1.3;
        stroke-linecap: round;
        stroke-linejoin: round;
    }
    .home_3_okna_13_link_drugi svg.strzalka { display: none; }
}

/* Mobile: e-mail osobno, oba numery telefonu w jednym wierszu. */
@media (max-width: 1100px), (hover: none), (pointer: coarse) {
    .home_3_okna_13_kontakt > a[href^="mailto:"] {
        flex: 0 0 100%;
    }
    .home_3_okna_13_kontakt > div {
        display: flex;
        flex: 0 0 100%;
        flex-wrap: wrap;
        justify-content: center;
        gap: 0 8px;
    }
    .home_3_okna_13_kontakt > small {
        flex-basis: 100%;
    }
}
