/* PZG 0.13.0-alpha61 — single stylesheet for all PZG blocks.
 * Source order: brand -> blocks -> reference layout -> resource cards -> shared UI -> accessibility.
 * Do not add a second patch stylesheet: edit the section for the relevant component.
 * Font files are local OFL Montserrat; no external Google Fonts and no missing .woff paths.
 */
@font-face{font-family:"Montserrat";src:url('../fonts/Montserrat-Medium.woff2') format('woff2');font-style:normal;font-weight:400 600;font-display:swap}
@font-face{font-family:"Montserrat";src:url('../fonts/Montserrat-Bold.woff2') format('woff2');font-style:normal;font-weight:700 900;font-display:swap}
/* ==================== BRAND / TYPOGRAPHY ==================== */


:where(.pzg-ref-page,.pzg-ref,.pzg-oe-hero,.pzg-oe-nav,.pzg-oe-features,.pzg-oe-for-who,.pzg-oe-steps,.pzg-oe-cta-phone,.pzg-oe-why-worth,.pzg-oe-text-media,.pzg-resources,.pzg-test-block,.pzg-oe-brand-font){
 font-family:"Montserrat",Arial,sans-serif!important;
}
:where(.pzg-ref-page,.pzg-ref,.pzg-oe-hero,.pzg-oe-nav,.pzg-oe-features,.pzg-oe-for-who,.pzg-oe-steps,.pzg-oe-cta-phone,.pzg-oe-why-worth,.pzg-oe-text-media,.pzg-resources,.pzg-test-block,.pzg-oe-brand-font) :is(h1,h2,h3,h4,h5,h6,p,a,button,summary,li,span,small,strong,b,em,i,figcaption,dt,dd,label,input,textarea,select,option){
 font-family:"Montserrat",Arial,sans-serif!important;
}

:is(.pzg-oe-hero,.pzg-oe-nav,.pzg-oe-features,.pzg-oe-for-who,.pzg-oe-steps,.pzg-oe-cta-phone,.pzg-oe-why-worth,.pzg-oe-brand-font){
 --oe-primary:#3741E6;--oe-blue:#0087FF;--oe-coral:#F0645A;--oe-light:#E6EBFF;--oe-dark-blue:#0032B4;--oe-mint:#BEF0EB;--oe-white:#FFFFFF;
 --oe-font:"Montserrat",Arial,sans-serif;
 --pzg-content-max:1313px;--pzg-page-width:100%;--pzg-section-width:min(69.803vw,var(--pzg-content-max));font-family:var(--oe-font);
}
.pzg-oe-brand-font{font-family:var(--oe-font)}

/* 0.8.2 – wspólna siatka głównych sekcji z PSD.
   Biała karta Hero, panel cech i sekcja „Dla kogo” korzystają z tej samej szerokości. */
@media (max-width:900px){
 :is(.pzg-oe-hero,.pzg-oe-features,.pzg-oe-for-who,.pzg-oe-steps,.pzg-oe-cta-phone,.pzg-oe-why-worth){--pzg-section-width:min(calc(100vw - 2rem),46rem)}
}
@media (max-width:600px){
 :is(.pzg-oe-hero,.pzg-oe-features,.pzg-oe-for-who,.pzg-oe-steps,.pzg-oe-cta-phone,.pzg-oe-why-worth){--pzg-section-width:calc(100vw - 1rem)}
}
/* ==================== BLOCK test ==================== */
.pzg-test-block{box-sizing:border-box;width:100%;margin-block:2rem;padding:clamp(1.5rem,3vw,2.5rem);border:2px dashed #2f6fbd;border-radius:1rem;background:#f4f8fd;color:#0b2f63;font-family:inherit}.pzg-test-block *{box-sizing:border-box}.pzg-test-block__inner{width:min(100%,70rem);margin-inline:auto}.pzg-test-block__eyebrow{margin:0 0 .5rem;font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.pzg-test-block__title{margin:0;color:inherit;font:inherit;font-size:clamp(1.5rem,3vw,2.25rem);font-weight:700;line-height:1.15}.pzg-test-block__description{max-width:52rem;margin:1rem 0 0;color:inherit;font:inherit;line-height:1.65}.pzg-test-block__status{display:flex;gap:.5rem;align-items:center;margin:1.25rem 0 0;font-size:.875rem}.pzg-test-block__status-dot{width:.625rem;height:.625rem;border-radius:999px;background:#2f9e62}
/* ==================== BLOCK oe-hero ==================== */
.pzg-oe-hero {
    --pzg-oe-bg: var(--oe-primary);
    --pzg-oe-card: var(--oe-white);
    --pzg-oe-heading: var(--oe-primary);
    --pzg-oe-text: var(--oe-primary);
    --pzg-oe-logo-width: 288px;

    box-sizing: border-box;
    position: relative;
    left: 50%;
    width: var(--pzg-page-width, 100%);
    max-width: none;
    margin: 0 0 0 calc(var(--pzg-page-width, 100%) / -2);
    background: var(--pzg-oe-bg);
    font-family: var(--oe-font);
}

.pzg-oe-hero *,
.pzg-oe-hero *::before,
.pzg-oe-hero *::after {
    box-sizing: border-box;
}

.pzg-oe-hero__shell {
    margin-inline: auto;
}

.pzg-oe-hero--width-narrow .pzg-oe-hero__shell {
    width: min(100% - 2rem, 64rem);
}

.pzg-oe-hero--width-standard .pzg-oe-hero__shell {
    width: min(100% - 2rem, 74rem);
}

.pzg-oe-hero--width-wide .pzg-oe-hero__shell {
    width: min(100% - 2rem, 86rem);
}

.pzg-oe-hero--spacing-compact .pzg-oe-hero__shell {
    padding-block: 1.5rem;
}

.pzg-oe-hero--spacing-normal .pzg-oe-hero__shell {
    padding-block: clamp(2.5rem, 5vw, 4rem);
}

.pzg-oe-hero--spacing-large .pzg-oe-hero__shell {
    padding-block: clamp(4rem, 7vw, 6rem);
}

.pzg-oe-hero__card {
    display: grid;
    gap: clamp(2rem, 5vw, 4.5rem);
    min-height: 28rem;
    padding: clamp(2rem, 4vw, 3.5rem);
    background: var(--pzg-oe-card);
    overflow: hidden;
}

.pzg-oe-hero--columns-40-60 .pzg-oe-hero__card {
    grid-template-columns: minmax(0, 2fr) minmax(0, 3fr);
}

.pzg-oe-hero--columns-50-50 .pzg-oe-hero__card {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.pzg-oe-hero--columns-60-40 .pzg-oe-hero__card {
    grid-template-columns: minmax(0, 3fr) minmax(0, 2fr);
}

.pzg-oe-hero--radius-none .pzg-oe-hero__card {
    border-radius: 0;
}

.pzg-oe-hero--radius-small .pzg-oe-hero__card {
    border-radius: 0.5rem;
}

.pzg-oe-hero--radius-normal .pzg-oe-hero__card {
    border-radius: 1rem;
}

.pzg-oe-hero--radius-large .pzg-oe-hero__card {
    border-radius: 2rem;
}

.pzg-oe-hero--valign-start .pzg-oe-hero__card {
    align-items: start;
}

.pzg-oe-hero--valign-center .pzg-oe-hero__card {
    align-items: center;
}

.pzg-oe-hero--valign-end .pzg-oe-hero__card {
    align-items: end;
}

.pzg-oe-hero--image-right .pzg-oe-hero__visual {
    order: 2;
}

.pzg-oe-hero--image-right .pzg-oe-hero__content {
    order: 1;
}

.pzg-oe-hero__visual {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-width: 0;
}

.pzg-oe-hero__logo {
    width: min(100%, var(--pzg-oe-logo-width));
    margin-bottom: 1.5rem;
}

.pzg-oe-hero__logo-image {
    display: block;
    width: 100%;
    height: auto;
    max-height: 8rem;
    object-fit: contain;
}

.pzg-oe-hero__logo-placeholder {
    display: flex;
    align-items: center;
    gap: 0.8rem;
    align-self: flex-start;
    max-width: var(--pzg-oe-logo-width);
    margin: 0 0 1.5rem clamp(0rem, 2vw, 1rem);
    color: var(--pzg-oe-heading);
    font-family: var(--oe-font);
    font-size: clamp(1.6rem, 3vw, 2.4rem);
    font-weight: 700;
    line-height: 0.9;
}

.pzg-oe-hero__logo-mark {
    display: grid;
    place-items: center;
    width: 2.6rem;
    height: 4rem;
    border-radius: 1rem 0.35rem 1rem 0.35rem;
    background: var(--pzg-oe-heading);
    color: var(--oe-white);
    font-size: 2rem;
}

.pzg-oe-hero__photo {
    position: relative;
    width: min(100%, 23rem);
    overflow: hidden;
    background: #eef2f7;
}

.pzg-oe-hero--ratio-1-1 .pzg-oe-hero__photo {
    aspect-ratio: 1 / 1;
}

.pzg-oe-hero--ratio-4-3 .pzg-oe-hero__photo {
    aspect-ratio: 4 / 3;
}

.pzg-oe-hero--ratio-3-2 .pzg-oe-hero__photo {
    aspect-ratio: 3 / 2;
}

.pzg-oe-hero--shape-circle .pzg-oe-hero__photo {
    aspect-ratio: 1 / 1;
    border-radius: 50%;
}

.pzg-oe-hero--shape-rounded .pzg-oe-hero__photo {
    border-radius: 1.5rem;
}

.pzg-oe-hero--shape-square .pzg-oe-hero__photo {
    border-radius: 0;
}

.pzg-oe-hero__photo-image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.pzg-oe-hero--imagepos-top .pzg-oe-hero__photo-image {
    object-position: center top;
}

.pzg-oe-hero--imagepos-center .pzg-oe-hero__photo-image {
    object-position: center center;
}

.pzg-oe-hero--imagepos-bottom .pzg-oe-hero__photo-image {
    object-position: center bottom;
}

.pzg-oe-hero__photo--placeholder {
    display: grid;
    place-items: center;
    padding: 2rem;
    color: #657089;
    text-align: center;
    font-size: 0.95rem;
    line-height: 1.5;
}

.pzg-oe-hero__content {
    min-width: 0;
}

.pzg-oe-hero--text-left .pzg-oe-hero__content {
    text-align: left;
}

.pzg-oe-hero--text-center .pzg-oe-hero__content {
    text-align: center;
}

.pzg-oe-hero--text-right .pzg-oe-hero__content {
    text-align: right;
}

/* Font family */
.pzg-oe-hero--heading-font-montserrat .pzg-oe-hero__heading {
    font-family: var(--oe-font);
}

.pzg-oe-hero--heading-font-poppins .pzg-oe-hero__heading {
    font-family: "Poppins", sans-serif;
}

.pzg-oe-hero--heading-font-inherit .pzg-oe-hero__heading {
    font-family: inherit;
}

.pzg-oe-hero--body-font-montserrat .pzg-oe-hero__description {
    font-family: var(--oe-font);
}

.pzg-oe-hero--body-font-poppins .pzg-oe-hero__description {
    font-family: "Poppins", sans-serif;
}

.pzg-oe-hero--body-font-inherit .pzg-oe-hero__description {
    font-family: inherit;
}

/* Heading weight */
.pzg-oe-hero--heading-weight-500 .pzg-oe-hero__heading {
    font-weight: 500;
}

.pzg-oe-hero--heading-weight-700 .pzg-oe-hero__heading {
    font-weight: 700;
}

/* Heading size — wartości dopasowane do projektu, ale responsywne */
.pzg-oe-hero--heading-size-small .pzg-oe-hero__heading {
    font-size: clamp(1.85rem, 3vw, 2.5rem);
}

.pzg-oe-hero--heading-size-standard .pzg-oe-hero__heading {
    font-size: clamp(2.1rem, 4vw, 3rem);
}

.pzg-oe-hero--heading-size-large .pzg-oe-hero__heading {
    font-size: clamp(2.3rem, 4.6vw, 3.5rem);
}

.pzg-oe-hero--heading-size-xl .pzg-oe-hero__heading {
    font-size: clamp(2.55rem, 5.2vw, 4rem);
}

/* Heading line-height */
.pzg-oe-hero--heading-lh-tight .pzg-oe-hero__heading {
    line-height: 1;
}

.pzg-oe-hero--heading-lh-normal .pzg-oe-hero__heading {
    line-height: 1.08;
}

.pzg-oe-hero--heading-lh-relaxed .pzg-oe-hero__heading {
    line-height: 1.2;
}

/* Heading tracking */
.pzg-oe-hero--heading-track-tight .pzg-oe-hero__heading {
    letter-spacing: -0.03em;
}

.pzg-oe-hero--heading-track-normal .pzg-oe-hero__heading {
    letter-spacing: 0;
}

.pzg-oe-hero--heading-track-wide .pzg-oe-hero__heading {
    letter-spacing: 0.02em;
}

/* Body weight */
.pzg-oe-hero--body-weight-400 .pzg-oe-hero__description {
    font-weight: 400;
}

.pzg-oe-hero--body-weight-500 .pzg-oe-hero__description {
    font-weight: 500;
}

.pzg-oe-hero--body-weight-700 .pzg-oe-hero__description {
    font-weight: 700;
}

/* Body size */
.pzg-oe-hero--body-size-small .pzg-oe-hero__description {
    font-size: clamp(0.875rem, 1.1vw, 0.95rem);
}

.pzg-oe-hero--body-size-standard .pzg-oe-hero__description {
    font-size: clamp(0.95rem, 1.35vw, 1.08rem);
}

.pzg-oe-hero--body-size-large .pzg-oe-hero__description {
    font-size: clamp(1.05rem, 1.55vw, 1.2rem);
}

/* Body line-height */
.pzg-oe-hero--body-lh-compact .pzg-oe-hero__description {
    line-height: 1.35;
}

.pzg-oe-hero--body-lh-normal .pzg-oe-hero__description {
    line-height: 1.5;
}

.pzg-oe-hero--body-lh-relaxed .pzg-oe-hero__description {
    line-height: 1.7;
}

.pzg-oe-hero__heading {
    margin: 0;
    color: var(--pzg-oe-heading);
}

.pzg-oe-hero__heading strong,
.pzg-oe-hero__heading b {
    font-weight: 700;
}

.pzg-oe-hero__heading a {
    color: inherit;
    text-decoration: underline;
    text-underline-offset: 0.13em;
}

.pzg-oe-hero__description {
    max-width: 36rem;
    margin-top: clamp(1.5rem, 3vw, 2.2rem);
    color: var(--pzg-oe-text);
}

.pzg-oe-hero--text-center .pzg-oe-hero__description {
    margin-inline: auto;
}

.pzg-oe-hero--text-right .pzg-oe-hero__description {
    margin-left: auto;
}

.pzg-oe-hero__description > :first-child {
    margin-top: 0;
}

.pzg-oe-hero__description > :last-child {
    margin-bottom: 0;
}

.pzg-oe-hero__description p {
    margin-block: 0 0.85em;
}

.pzg-oe-hero__description a {
    color: inherit;
    text-decoration: underline;
    text-underline-offset: 0.16em;
}

.pzg-oe-hero__description ul,
.pzg-oe-hero__description ol {
    padding-left: 1.35em;
}

@media (max-width: 900px) {
    .pzg-oe-hero__card,
    .pzg-oe-hero--columns-40-60 .pzg-oe-hero__card,
    .pzg-oe-hero--columns-50-50 .pzg-oe-hero__card,
    .pzg-oe-hero--columns-60-40 .pzg-oe-hero__card {
        grid-template-columns: 1fr;
        gap: 2.5rem;
    }

    .pzg-oe-hero--image-left .pzg-oe-hero__visual,
    .pzg-oe-hero--image-right .pzg-oe-hero__visual {
        order: 2;
    }

    .pzg-oe-hero--image-left .pzg-oe-hero__content,
    .pzg-oe-hero--image-right .pzg-oe-hero__content {
        order: 1;
    }

    .pzg-oe-hero__heading,
    .pzg-oe-hero__description {
        max-width: 42rem;
    }

    .pzg-oe-hero__logo-placeholder {
        align-self: center;
        margin-left: 0;
    }
}

@media (max-width: 600px) {
    .pzg-oe-hero__shell,
    .pzg-oe-hero--width-narrow .pzg-oe-hero__shell,
    .pzg-oe-hero--width-standard .pzg-oe-hero__shell,
    .pzg-oe-hero--width-wide .pzg-oe-hero__shell {
        width: min(100% - 1rem, 74rem);
        padding-block: 1rem;
    }

    .pzg-oe-hero__card {
        min-height: 0;
        padding: 1.5rem;
    }

    .pzg-oe-hero__photo {
        width: min(100%, 19rem);
    }

    .pzg-oe-hero--heading-size-xl .pzg-oe-hero__heading,
    .pzg-oe-hero--heading-size-large .pzg-oe-hero__heading,
    .pzg-oe-hero--heading-size-standard .pzg-oe-hero__heading {
        font-size: clamp(1.9rem, 9vw, 2.65rem);
    }
}


/* PSD canvas 3762; card 2626x1347. Dimensions scale with CARD,
   not viewport, so a Gutenberg preview uses its actual available width. */
.pzg-oe-hero--preset-psd{--pzg-oe-bg:var(--oe-primary)!important;--pzg-oe-card:var(--oe-white)!important;--pzg-oe-heading:var(--oe-primary)!important;--pzg-oe-text:var(--oe-primary)!important}
.pzg-oe-hero--preset-psd .pzg-oe-hero__shell{width:69.8033%;max-width:var(--pzg-content-max);padding-block: min(4.094vw,77px) min(4.174vw,78.5px)}
.pzg-oe-hero--preset-psd .pzg-oe-hero__card{container-type:inline-size;display:grid;grid-template-columns:46.9916% 44.8972%;gap:0;align-items:start;min-height:0;padding:0;aspect-ratio:auto;border-radius:20px;overflow:visible}
.pzg-oe-hero--preset-psd .pzg-oe-hero__visual{position:relative;display:block;order:0;min-height:51.2947cqw;width:100%}
.pzg-oe-hero--preset-psd .pzg-oe-hero__logo{position:absolute;left:11.264%;top:3.6557cqw;width:calc(var(--pzg-oe-logo-psd-width,57.882%) * 1.06402);max-width:88%;margin:0}
.pzg-oe-hero .pzg-oe-hero__logo-image{max-height:none;height:auto;width:100%;display:block}
.pzg-oe-hero--preset-psd .pzg-oe-hero__photo{position:absolute;left:20.4214%;top:16.9078cqw;width:68.2334%;height:auto;aspect-ratio:842/841;border-radius:50%}
.pzg-oe-hero--preset-psd .pzg-oe-hero__content{order:0;width:100%;padding-block:6.5cqw 5cqw;text-align:left}
.pzg-oe-hero--preset-psd .pzg-oe-hero__heading{font:700 clamp(2.65rem,3.3cqw,3rem)/1.2 var(--oe-font);letter-spacing:0;color:var(--oe-primary);margin:0;overflow-wrap:anywhere}
.pzg-oe-hero--preset-psd .pzg-oe-hero__description{max-width:none;width:100%;font:500 clamp(1.45rem,1.8279cqw,1.55rem)/1.2 var(--oe-font);letter-spacing:.005em;color:var(--oe-primary);margin:4.4cqw 0 0;overflow-wrap:anywhere}
.pzg-oe-hero--preset-psd .pzg-oe-hero__description p{font:inherit;line-height:inherit;margin:0 0 .8em}
.pzg-oe-hero--preset-psd .pzg-oe-hero__description p:last-child{margin-bottom:0}
/* For mobile/zoom, flow replaces exact geometry. Logo, text, photo. */
@container pzg-hero (max-width:1100px){
 .pzg-oe-hero--preset-psd .pzg-oe-hero__shell{width:calc(100% - 32px);max-width:820px;padding-block:32px}
 .pzg-oe-hero--preset-psd .pzg-oe-hero__card{display:flex;flex-direction:column;align-items:stretch;gap:24px;aspect-ratio:auto;padding:28px;border-radius:18px}
 .pzg-oe-hero--preset-psd .pzg-oe-hero__visual{display:contents}
 .pzg-oe-hero--preset-psd .pzg-oe-hero__logo{position:static;order:0;width:min(280px,85%);max-width:100%;align-self:center;margin:0}
 .pzg-oe-hero--preset-psd .pzg-oe-hero__content{order:1;padding:0}
 .pzg-oe-hero--preset-psd .pzg-oe-hero__photo{position:static;order:2;width:min(360px,100%);align-self:center}
 .pzg-oe-hero--preset-psd .pzg-oe-hero__heading{font-size:clamp(1.625rem,4vw,2.375rem);line-height:1.2}
 .pzg-oe-hero--preset-psd .pzg-oe-hero__description{margin-top:1.5rem;font-size:1rem;line-height:1.5}
}
@container pzg-hero (max-width:480px){.pzg-oe-hero--preset-psd .pzg-oe-hero__shell{padding-block:24px}.pzg-oe-hero--preset-psd .pzg-oe-hero__card{padding:24px 20px}.pzg-oe-hero--preset-psd .pzg-oe-hero__logo{width:240px}}
/* Flexible mode: retain side/proportion choices, prevent narrow text overflow. */
.pzg-oe-hero__heading,.pzg-oe-hero__description{overflow-wrap:anywhere}
.editor-styles-wrapper .pzg-oe-hero{left:auto;width:100%;margin-inline:0}

.pzg-oe-hero{container:pzg-hero / inline-size}

@container pzg-hero (max-width:1100px){.pzg-oe-hero__psd-break{display:none}}
@media(max-width:900px){
 .pzg-oe-hero--preset-custom .pzg-oe-hero__visual{display:contents}
 .pzg-oe-hero--preset-custom .pzg-oe-hero__logo{order:0;justify-self:center;align-self:center}
 .pzg-oe-hero--preset-custom .pzg-oe-hero__content{order:1}
 .pzg-oe-hero--preset-custom .pzg-oe-hero__photo{order:2;justify-self:center}
}

.pzg-oe-hero__psd-emphasis{font-size:1.090909em}
@container pzg-hero (max-width:1100px){.pzg-oe-hero__psd-emphasis{font-size:inherit}}

/* 0.8.2 – wspólna szerokość głównej siatki */
.pzg-oe-hero--preset-psd .pzg-oe-hero__shell,
.pzg-oe-hero--preset-psd.pzg-oe-hero--width-narrow .pzg-oe-hero__shell,
.pzg-oe-hero--preset-psd.pzg-oe-hero--width-standard .pzg-oe-hero__shell,
.pzg-oe-hero--preset-psd.pzg-oe-hero--width-wide .pzg-oe-hero__shell{
 width:var(--pzg-section-width);
 max-width:none;
}
/* Wejście hero w wariancie użytym na stronie testowej. */
@keyframes pzg-oe-hero-in-left{from{opacity:0;transform:translateX(-42px)}to{opacity:1;transform:translateX(0)}}
@keyframes pzg-oe-hero-in-right{from{opacity:0;transform:translateX(42px)}to{opacity:1;transform:translateX(0)}}
@media(prefers-reduced-motion:no-preference){
 body:not(.ss-wcag-animations-disabled) .pzg-oe-hero--preset-psd .pzg-oe-hero__visual{animation:pzg-oe-hero-in-left .85s cubic-bezier(.2,.7,.2,1) both}
 body:not(.ss-wcag-animations-disabled) .pzg-oe-hero--preset-psd .pzg-oe-hero__content{animation:pzg-oe-hero-in-right .85s cubic-bezier(.2,.7,.2,1) .12s both}
}
/* Na wąskim ekranie visual ma display:contents, więc animujemy jego dzieci. */
@media (max-width:900px) and (prefers-reduced-motion:no-preference){
 body:not(.ss-wcag-animations-disabled) .pzg-oe-hero--preset-psd .pzg-oe-hero__logo{animation:pzg-oe-hero-in-left .8s cubic-bezier(.2,.7,.2,1) both}
 body:not(.ss-wcag-animations-disabled) .pzg-oe-hero--preset-psd .pzg-oe-hero__photo{animation:pzg-oe-hero-in-left .8s cubic-bezier(.2,.7,.2,1) .22s both}
}


/* 0.9.37: CTA Hero – rozmiar i pozycja sterowane z ACF; identycznie w edytorze i na froncie. */
.pzg-oe-hero__cta{
    margin-top:var(--pzg-oe-cta-margin-top,28px);
    width:100%;
}
.pzg-oe-hero__cta--left{text-align:left}
.pzg-oe-hero__cta--center{text-align:center}
.pzg-oe-hero__cta--right{text-align:right}
.pzg-oe-hero__button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:min(var(--pzg-oe-cta-width,210px),100%);
    min-height:var(--pzg-oe-cta-height,64px);
    margin:0;
    padding:.65rem 1.25rem;
    border-radius:999px;
    color:#fff!important;
    background:#4E33F0;
    text-decoration:none!important;
    font-family:var(--oe-font,"Montserrat",Arial,sans-serif);
    font-size:var(--pzg-oe-cta-font-size,18px);
    font-weight:700;
    line-height:1.15;
    white-space:normal;
    text-align:center;
    transition:transform .18s ease,filter .18s ease;
}
.pzg-oe-hero__button:hover{filter:brightness(.94);transform:translateY(-1px)}
.pzg-oe-hero__button:focus-visible{outline:3px solid currentColor;outline-offset:3px}
body.ss-wcag-animations-disabled .pzg-oe-hero__button{transition:none!important}
/* ==================== BLOCK oe-nav ==================== */
.pzg-oe-nav {
    box-sizing: border-box;
    position: relative;
    width: 100%;
    z-index: 40;
    font-family: var(--oe-font, "PZG Montserrat", "Montserrat", sans-serif);
}

.pzg-oe-nav *,
.pzg-oe-nav *::before,
.pzg-oe-nav *::after {
    box-sizing: border-box;
}

.pzg-oe-nav--pt-none { padding-top: 0; }
.pzg-oe-nav--pt-small { padding-top: 1rem; }
.pzg-oe-nav--pt-normal { padding-top: 2rem; }
.pzg-oe-nav--pt-large { padding-top: 4rem; }
.pzg-oe-nav--pb-none { padding-bottom: 0; }
.pzg-oe-nav--pb-small { padding-bottom: 1.5rem; }
.pzg-oe-nav--pb-normal { padding-bottom: 2rem; }
.pzg-oe-nav--pb-large { padding-bottom: 4rem; }

.pzg-oe-nav--sticky .pzg-oe-nav__sticky-shell {
    position: sticky;
    top: calc(var(--navbar-min-h, 80px) + 10px);
    z-index: 50;
}

.pzg-oe-nav__container {
    position: relative;
    width: min(calc(100% - 2rem), 74rem);
    margin-inline: auto;
}

.pzg-oe-nav__panel {
    width: max-content;
    max-width: 100%;
    margin-inline: auto;
    border-radius: 0.75rem;
    background: rgba(230, 235, 255, 0.92);
    box-shadow: 0 0.35rem 1.25rem rgba(0, 50, 180, 0.10);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    overflow: hidden;
}

.pzg-oe-nav__list {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 0.2rem 0.5rem;
    margin: 0;
    padding: 0.35rem;
    list-style: none;
}

.pzg-oe-nav__item {
    display: flex;
    margin: 0;
    padding: 0;
}

.pzg-oe-nav__link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2.35rem;
    padding: 0.55rem 0.85rem;
    border-radius: 999px;
    color: var(--oe-dark-blue);
    text-decoration: none !important;
    font-size: 0.9rem;
    font-weight: 500;
    line-height: 1.1;
    white-space: nowrap;
    transition: background-color .22s ease, color .22s ease, transform .22s ease;
}

.pzg-oe-nav__link:hover,
.pzg-oe-nav__link:focus-visible {
    color: var(--oe-dark-blue);
    background: rgba(255,255,255,.72);
}

.pzg-oe-nav__link:focus-visible {
    outline: 3px solid currentColor;
    outline-offset: 2px;
}

.pzg-oe-nav__link.is-current {
    color: #fff;
    background: var(--oe-coral);
    font-weight: 700;
}

.pzg-oe-nav__link.is-current::before {
    content: "";
    width: 0.52rem;
    height: 0.52rem;
    margin-right: 0.45rem;
    border: 2px solid currentColor;
    border-radius: 50%;
}

.pzg-oe-nav__toggle {
    display: none;
}

/* Edytor: nie przyklejamy bloku do viewportu edytora. */
.editor-styles-wrapper .pzg-oe-nav--sticky .pzg-oe-nav__sticky-shell {
    position: relative;
    top: auto;
}

@container pzg-nav (max-width: 900px) {
    .pzg-oe-nav__container {
        width: min(calc(100% - 1rem), 46rem);
    }

    .pzg-oe-nav--mobile-collapsible .pzg-oe-nav__toggle {
        position: relative;
        z-index: 2;
        display: grid;
        place-items: center;
        width: 3.25rem;
        height: 3.25rem;
        border: 0;
        border-radius: 1rem;
        color: #fff;
        background: var(--oe-primary);
        cursor: pointer;
        box-shadow: 0 .35rem 1rem rgba(0, 50, 180, .16);
    }

    .pzg-oe-nav__toggle:focus-visible {
        outline: 3px solid currentColor;
        outline-offset: 2px;
    }

    .pzg-oe-nav__toggle-icon {
        display: flex;
        flex-direction: column;
        gap: 0.28rem;
        width: 1.25rem;
    }

    .pzg-oe-nav__toggle-icon span {
        display: block;
        width: 100%;
        height: 2px;
        border-radius: 99px;
        background: currentColor;
        transition: transform .2s ease, opacity .2s ease;
    }

    .pzg-oe-nav.is-open .pzg-oe-nav__toggle-icon span:nth-child(1) {
        transform: translateY(0.38rem) rotate(45deg);
    }

    .pzg-oe-nav.is-open .pzg-oe-nav__toggle-icon span:nth-child(2) {
        opacity: 0;
    }

    .pzg-oe-nav.is-open .pzg-oe-nav__toggle-icon span:nth-child(3) {
        transform: translateY(-0.38rem) rotate(-45deg);
    }

    .pzg-oe-nav--mobile-collapsible .pzg-oe-nav__panel {
        position: absolute;
        top: 0;
        right: 0;
        width: calc(100% - 4rem);
        max-height: 0;
        margin: 0;
        opacity: 0;
        visibility: hidden;
        transform: translateY(-0.4rem);
        transition: max-height .3s ease, opacity .22s ease, transform .3s ease, visibility .22s;
    }

    .pzg-oe-nav--mobile-collapsible.is-open .pzg-oe-nav__panel {
        max-height: min(70vh, 32rem);
        opacity: 1;
        visibility: visible;
        transform: translateY(0);
    }

    .pzg-oe-nav--mobile-collapsible .pzg-oe-nav__list {
        flex-direction: column;
        align-items: stretch;
        justify-content: flex-start;
        max-height: min(70vh, 32rem);
        overflow-y: auto;
        padding: 0.6rem;
    }

    .pzg-oe-nav--mobile-collapsible .pzg-oe-nav__item,
    .pzg-oe-nav--mobile-collapsible .pzg-oe-nav__link {
        width: 100%;
    }

    .pzg-oe-nav--mobile-collapsible .pzg-oe-nav__link {
        justify-content: flex-start;
        min-height: 2.8rem;
        padding-inline: 1rem;
    }

    .pzg-oe-nav--mobile-open .pzg-oe-nav__panel {
        width: 100%;
    }

    .pzg-oe-nav--mobile-open .pzg-oe-nav__list {
        justify-content: flex-start;
        flex-wrap: nowrap;
        overflow-x: auto;
        scrollbar-width: none;
    }

    .pzg-oe-nav--mobile-open .pzg-oe-nav__list::-webkit-scrollbar {
        display: none;
    }
}

@media (prefers-reduced-motion: reduce) {
    .pzg-oe-nav *,
    .pzg-oe-nav *::before,
    .pzg-oe-nav *::after {
        scroll-behavior: auto !important;
        transition-duration: .01ms !important;
    }
}

/* Fixed shell keeps working when the block itself is only one menu high. */
.pzg-oe-nav--sticky .pzg-oe-nav__sticky-shell{position:relative;top:auto}
.pzg-oe-nav.is-fixed{min-height:calc(var(--pzg-nav-height) + 2rem + 1rem)}
.pzg-oe-nav.is-fixed .pzg-oe-nav__sticky-shell{position:fixed;z-index:100}
.pzg-oe-nav__panel{background:var(--oe-light);box-shadow:none;backdrop-filter:none;border-radius:12px;width:min(calc(var(--pzg-page-width) * .619086),1164.5px)}
.pzg-oe-nav__container{width:100%;max-width:none}
.pzg-oe-nav__list{flex-wrap:nowrap;justify-content:space-between;gap:4px;padding:8px}
.pzg-oe-nav__link{min-height:44px;border-radius:9px;font-size:1.05rem;padding:10px 12px}
.pzg-oe-nav__link.is-current::before{content:none}
.pzg-oe-nav--pt-normal{padding-top:min(3.8543vw,72.5px)}
.pzg-oe-nav--pb-small{padding-bottom:min(2.45vw,46px)}
.pzg-oe-nav + .pzg-oe-features--pt-small{padding-top:0}
@container pzg-nav (max-width:1100px){
 .pzg-oe-nav__container{width:calc(100% - 32px);max-width:820px}
 .pzg-oe-nav__panel{width:100%}
 .pzg-oe-nav__link{font-size:.875rem}
}
@container pzg-nav (max-width:900px){
 .pzg-oe-nav--mobile-collapsible .pzg-oe-nav__toggle{display:flex;gap:12px;width:100%;height:52px;padding:12px 16px;font:700 1rem var(--oe-font);box-shadow:none;border-radius:12px}
 .pzg-oe-nav--mobile-collapsible .pzg-oe-nav__panel{top:60px;width:100%;background:var(--oe-light)}
 .pzg-oe-nav--mobile-open .pzg-oe-nav__list{flex-wrap:wrap}
 .pzg-oe-nav:not([data-pzg-enhanced]) .pzg-oe-nav__toggle{display:none}
 .pzg-oe-nav:not([data-pzg-enhanced]) .pzg-oe-nav__panel{position:static;visibility:visible;opacity:1;max-height:none;transform:none}
}
.editor-styles-wrapper .pzg-oe-nav__sticky-shell{position:relative!important;top:auto!important}

.pzg-oe-nav{container:pzg-nav / inline-size}
\n\n/* ==========================================================
   0.7.2 – pewniejsze przyklejanie na froncie
   CSS sticky działa jako fallback zanim/jeśli JS nie zdąży wystartować.
   Po aktywacji JS klasa .is-fixed przejmuje pozycjonowanie fixed.
   ========================================================== */
body:not(.wp-admin) .pzg-oe-nav--sticky {
    position: sticky;
    top: calc(var(--navbar-min-h, 80px) + 10px);
    z-index: 90;
}
body:not(.wp-admin) .pzg-oe-nav--sticky.is-fixed {
    position: relative;
    top: auto;
}
body:not(.wp-admin) .pzg-oe-nav--sticky.is-fixed .pzg-oe-nav__sticky-shell {
    z-index: 100;
}
/* ==========================================================
   0.8.10 – korekta paska nawigacji względem PSD
   - większa typografia
   - większy odstęp NAD paskiem
   - mniejszy odstęp POD paskiem
   - zachowane skalowanie WCAG dzięki jednostkom rem
   ========================================================== */

/* Tryb PSD ma własny rytm pionowy niezależnie od wcześniej zapisanych wartości ACF. */
.pzg-oe-nav--spacing-psd {
    padding-top: clamp(2.25rem, 3vw, 3.25rem) !important;
    padding-bottom: clamp(1rem, 1.5vw, 1.6rem) !important;
}

/* W trybie ręcznym nadal działają dotychczasowe kontrolki ACF. */
.pzg-oe-nav--spacing-custom.pzg-oe-nav--pt-none { padding-top: 0 !important; }
.pzg-oe-nav--spacing-custom.pzg-oe-nav--pt-small { padding-top: 1rem !important; }
.pzg-oe-nav--spacing-custom.pzg-oe-nav--pt-normal { padding-top: 2rem !important; }
.pzg-oe-nav--spacing-custom.pzg-oe-nav--pt-large { padding-top: 4rem !important; }
.pzg-oe-nav--spacing-custom.pzg-oe-nav--pb-none { padding-bottom: 0 !important; }
.pzg-oe-nav--spacing-custom.pzg-oe-nav--pb-small { padding-bottom: 1rem !important; }
.pzg-oe-nav--spacing-custom.pzg-oe-nav--pb-normal { padding-bottom: 2rem !important; }
.pzg-oe-nav--spacing-custom.pzg-oe-nav--pb-large { padding-bottom: 4rem !important; }

/* Sam pasek bliżej makiety: większy tekst, trochę ciaśniejsza wysokość i równiejszy rozkład. */
.pzg-oe-nav__panel {
    border-radius: 0.75rem;
}

.pzg-oe-nav__list {
    gap: 0.25rem;
    padding: 0.38rem 0.45rem;
}

.pzg-oe-nav__link {
    min-height: 2.65rem;
    padding: 0.55rem 0.95rem;
    font-size: 1.125rem;
    font-weight: 500;
    line-height: 1.12;
}

.pzg-oe-nav__link.is-current {
    font-weight: 700;
}

/* WCAG: przy zmianie bazowego font-size link rośnie razem z resztą strony. */
html[style*="font-size"] .pzg-oe-nav__link {
    min-height: 2.65em;
    padding-block: 0.55em;
    padding-inline: 0.95em;
}

/* Tablet: utrzymujemy czytelny rozmiar, ale nie wciskamy sześciu pozycji na siłę. */
@container pzg-nav (max-width: 1100px) {
    .pzg-oe-nav__link {
        font-size: 1rem;
        padding-inline: 0.75rem;
    }
}

/* Mobile zachowuje rozwijany wariant – rytm sekcji jest mniejszy niż na desktopie. */
@container pzg-nav (max-width: 900px) {
    .pzg-oe-nav--spacing-psd {
        padding-top: 1.5rem !important;
        padding-bottom: 0.9rem !important;
    }

    .pzg-oe-nav__link {
        font-size: 1rem;
    }
}
/* ==================== BLOCK oe-features ==================== */
/* 0.8.4: jednolite reguły, bez narastających nadpisań z wersji 0.7.x.
   UWAGA: nie zmieniamy szerokości PSD; pozostaje dokładnie --pzg-section-width
   wprowadzona w 0.8.2, wspólna z Hero i sekcją zdjęć. */
.pzg-oe-features {
    position: relative;
    left: 50%;
    width: min(calc(var(--pzg-page-width) * .698033), var(--pzg-content-max));
    max-width: none;
    margin-inline: 0;
    transform: translateX(-50%);
    box-sizing: border-box;
    container: pzg-features / inline-size;
    font-family: var(--oe-font, "PZG Montserrat", "Montserrat", sans-serif);
}
.pzg-oe-features--style-psd,
.pzg-oe-features--style-psd.pzg-oe-features--panel-width-psd,
.pzg-oe-features--style-psd.pzg-oe-features--panel-width-wide,
.pzg-oe-features--style-psd.pzg-oe-features--panel-width-fuller {
    width: var(--pzg-section-width);
    max-width: none;
}
.pzg-oe-features *, .pzg-oe-features *::before, .pzg-oe-features *::after { box-sizing: border-box; }
.pzg-oe-features--pt-none { padding-top: 0; }
.pzg-oe-features--pt-small { padding-top: 1rem; }
.pzg-oe-features--pt-normal { padding-top: 2rem; }
.pzg-oe-features--pt-large { padding-top: 4rem; }
.pzg-oe-features--pb-none { padding-bottom: 0; }
.pzg-oe-features--pb-small { padding-bottom: 1rem; }
.pzg-oe-features--pb-normal { padding-bottom: 2rem; }
.pzg-oe-features--pb-large { padding-bottom: 4rem; }
.pzg-oe-features__panel { border-radius: 20px; overflow: hidden; }
.pzg-oe-features--style-psd .pzg-oe-features__panel { background: var(--oe-blue, #0087ff); }
.pzg-oe-features--style-legacy .pzg-oe-features__panel { background: #fff; }
.pzg-oe-features__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: clamp(10px, 1cqw, 16px);
    align-items: stretch;
    padding: clamp(22px, 2.2cqw, 34px) clamp(16px, 2.8cqw, 42px);
}
.pzg-oe-feature {
    appearance: none;
    position: relative;
    display: block;
    width: 100%;
    min-width: 0;
    height: 100%;
    min-height: 0;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: .6rem;
    background: transparent;
    color: var(--oe-white, #fff);
    font: inherit;
    text-align: inherit;
    perspective: 1000px;
}
button.pzg-oe-feature { cursor: pointer; }
button.pzg-oe-feature:focus-visible { outline: 3px solid currentColor; outline-offset: 3px; }
.pzg-oe-feature__inner {
    position: relative;
    display: grid;
    width: 100%;
    height: 100%;
    min-height: 0;
    transform-style: preserve-3d;
    transform-origin: 50% 50%;
    transition: transform .48s cubic-bezier(.2,.7,.2,1);
}
.pzg-oe-feature__face {
    position: relative;
    transform-origin: 50% 50%;
    grid-area: 1 / 1;
    inset: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-width: 0;
    min-height: 0;
    padding: clamp(7px, .8cqw, 12px);
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
}
.pzg-oe-feature__front { transform: rotateY(0deg); }
.pzg-oe-feature__back {
    transform: rotateY(180deg);
    visibility: hidden;
    padding: clamp(6px, .75cqw, 12px);
    color: var(--oe-white, #fff);
}
.pzg-oe-feature.is-flipped .pzg-oe-feature__inner { transform: rotateY(180deg); }
.pzg-oe-feature.is-flipped .pzg-oe-feature__front { visibility: hidden; }
.pzg-oe-feature.is-flipped .pzg-oe-feature__back { visibility: visible; }
.pzg-oe-feature__icon-wrap {
    display: grid;
    place-items: center;
    flex: 0 0 auto;
    width: var(--pzg-icon-size, clamp(140px, 16.2cqw, 190px));
    height: var(--pzg-icon-size, clamp(140px, 16.2cqw, 190px));
    max-width: 96%;
    max-height: 62%;
    margin: 0 auto clamp(9px, 1.1cqw, 17px);
}
.pzg-oe-feature__icon { display: block; width: 100%; height: 100%; object-fit: contain; }
.pzg-oe-features--icon-size-normal { --pzg-icon-size: clamp(125px, 14cqw, 165px); }
.pzg-oe-features--icon-size-large { --pzg-icon-size: clamp(145px, 16.2cqw, 190px); }
.pzg-oe-features--icon-size-xl { --pzg-icon-size: clamp(160px, 18cqw, 210px); }
.pzg-oe-feature__title {
    display: grid;
    place-items: center;
    width: 100%;
    min-height: 2.36em;
    max-width: 100%;
    color: var(--oe-white, #fff);
    font-size: var(--pzg-front-font-size, 1.125rem);
    font-weight: 700;
    line-height: 1.18;
    text-align: center;
    text-wrap: initial;
    white-space: normal;
    text-transform: uppercase;
    overflow-wrap: normal;
}
.pzg-oe-feature__title br{display:block;content:""}
.pzg-oe-feature--index-3 .pzg-oe-feature__title,
.pzg-oe-feature--index-4 .pzg-oe-feature__title{max-width: 15.5ch;}
@media(min-width:1200px){
.pzg-oe-feature--index-1 .pzg-oe-feature__icon{transform:translateX(6px);}
.pzg-oe-feature--index-2 .pzg-oe-feature__icon{transform:translateX(10px);}
.pzg-oe-feature--index-3 .pzg-oe-feature__icon{transform:translateX(-11px);}
.pzg-oe-feature--index-4 .pzg-oe-feature__icon{transform:translateX(13px);}
.pzg-oe-feature__title{white-space:nowrap;}
}
.pzg-oe-features--front-text-normal { --pzg-front-font-size: 1rem; }
.pzg-oe-features--front-text-large { --pzg-front-font-size: 1.125rem; }
.pzg-oe-features--front-text-xl { --pzg-front-font-size: 1.25rem; }
.pzg-oe-feature__description {
    display: block;
    flex: 0 0 auto;
    width: 100%;
    max-width: 100%;
    max-height: 100%;
    margin: 0;
    padding: 0 3px 0 0;
    overflow-x: hidden;
    overflow-y: auto;
    scrollbar-width: thin;
    scrollbar-color: rgba(255,255,255,.65) transparent;
    color: inherit;
    font-size: var(--pzg-back-fit-size, var(--pzg-back-font-size, 1.0625rem));
    font-family: var(--oe-font, "PZG Montserrat", "Montserrat", sans-serif);
    font-weight: 500;
    line-height: var(--pzg-back-fit-line-height, 1.38);
    text-align: left;
    text-wrap: wrap;
    hanging-punctuation: first last;
    word-break: normal;
    overflow-wrap: break-word;
    hyphens: none;
}
.pzg-oe-feature__back--left .pzg-oe-feature__description { text-align: left; }
.pzg-oe-feature__back--center .pzg-oe-feature__description { text-align: center; }
.pzg-oe-feature__description > :first-child { margin-top: 0; }
.pzg-oe-feature__description > :last-child { margin-bottom: 0; }
.pzg-oe-feature__description p { margin: 0 0 .42em; }
.pzg-oe-feature__description ul,
.pzg-oe-feature__description ol { margin: .35em 0 .75em; padding-left: 1.25em; }
.pzg-oe-feature__description li { margin: .22em 0; }
.pzg-oe-feature__description strong,
.pzg-oe-feature__description b { font-weight: 700; }
.pzg-oe-feature__description a { color: inherit; text-decoration: underline; text-underline-offset: .15em; }
.pzg-oe-feature__description--scroll {
    overflow-y: auto !important;
    overscroll-behavior: contain;
    scrollbar-width: thin !important;
}
.pzg-oe-feature__back-heading {
    display: block;
    margin: 0 0 .65em;
    font-size: 1.18em;
    font-weight: 700;
    line-height: 1.2;
}
.pzg-oe-features--back-text-small { --pzg-back-font-size: .875rem; }
.pzg-oe-features--back-text-standard { --pzg-back-font-size: 1rem; }
.pzg-oe-features--back-text-large { --pzg-back-font-size: 1.125rem; }
.pzg-oe-features--back-text-xl { --pzg-back-font-size: 1.25rem; }
.pzg-oe-feature__back-hint { display: none; }
.pzg-oe-feature__editor-note {
    display: block;
    margin-top: .6rem;
    font-size: .7rem;
    font-weight: 500;
    line-height: 1.3;
    text-align: center;
    text-transform: none;
    opacity: .8;
}
/* Zachowany wariant jasny. PSD nie używa ustawienia szerokości z ACF. */
.pzg-oe-features--style-legacy { --pzg-icon-stroke: var(--oe-primary, #3741e6); }
.pzg-oe-features--style-legacy .pzg-oe-feature,
.pzg-oe-features--style-legacy .pzg-oe-feature__title,
.pzg-oe-features--style-legacy .pzg-oe-feature__back { color: var(--oe-primary, #3741e6); }
.pzg-oe-features--style-legacy .pzg-oe-feature__description { scrollbar-color: rgba(55,65,230,.55) transparent; }
/* Rozmiary panelu pozostają takie jak w 0.8.3 – korygujemy tylko zawartość. */
@media (min-width: 1101px) {
    .pzg-oe-features:not(.pzg-is-compact).pzg-oe-features--panel-height-compact .pzg-oe-features__panel { height: clamp(350px, 25.5vw, 450px); }
    .pzg-oe-features:not(.pzg-is-compact).pzg-oe-features--panel-height-psd .pzg-oe-features__panel { height: clamp(390px, 28.5vw, 500px); }
    .pzg-oe-features:not(.pzg-is-compact).pzg-oe-features--panel-height-comfortable .pzg-oe-features__panel { height: clamp(430px, 32vw, 560px); }
    .pzg-oe-features:not(.pzg-is-compact) .pzg-oe-features__grid { height: 100%; }
    .pzg-oe-features--style-legacy.pzg-oe-features--panel-width-psd { width: min(calc(var(--pzg-page-width) * .698033),var(--pzg-content-max)); }
    .pzg-oe-features--style-legacy.pzg-oe-features--panel-width-wide { width: min(calc(var(--pzg-page-width) * .79),1460px); }
    .pzg-oe-features--style-legacy.pzg-oe-features--panel-width-fuller { width: min(calc(var(--pzg-page-width) * .86),1540px); }
}
@media (max-width: 1100px) {
    .pzg-oe-features--style-psd,
    .pzg-oe-features.pzg-is-compact.pzg-oe-features--style-psd { width: var(--pzg-section-width); }
    .pzg-oe-features__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; padding: 20px; }
    .pzg-oe-feature, .pzg-oe-feature__inner { min-height: 275px; }
    .pzg-oe-feature__icon-wrap { width: min(var(--pzg-icon-size), 170px); height: min(var(--pzg-icon-size), 170px); }
    .pzg-oe-feature__title { font-size: 1rem; }
    .pzg-oe-feature__description { font-size: var(--pzg-back-fit-size, var(--pzg-back-font-size)); }
}
@media (max-width: 560px) {
    .pzg-oe-features__panel { border-radius: 14px; }
    .pzg-oe-features__grid { grid-template-columns: minmax(0,1fr); gap: 12px; padding: 14px; }
    .pzg-oe-feature, .pzg-oe-feature__inner { min-height: 260px; }
    .pzg-oe-feature__icon-wrap { width: min(var(--pzg-icon-size), 155px); height: min(var(--pzg-icon-size), 155px); }
    .pzg-oe-feature__back { padding: 16px; }
    .pzg-oe-feature__title { font-size: clamp(1rem, 4.4vw, 1.125rem); }
    .pzg-oe-feature__back-hint { display: block; width: 100%; margin-top: .4rem; font-size: .72rem; text-align: left; opacity: .7; }
}
@media (hover: none), (pointer: coarse) {
    .pzg-oe-feature__back-hint { display: block; width: 100%; margin-top: .4rem; font-size: .72rem; text-align: left; opacity: .7; }
}
@media (prefers-reduced-motion: reduce) {
    .pzg-oe-feature__inner { transition: none; }
}
/* Pełny opis karty dopasowuje się do dostępnego pola bez wewnętrznego przewijania. */
.pzg-oe-features--style-psd { --pzg-back-font-size: clamp(15.5px, 1.58cqw, 19px); }
.pzg-oe-features--style-psd .pzg-oe-feature__description {
    overflow-x: visible;
    overflow-y: visible;
    scrollbar-width: none;
    line-height: var(--pzg-back-fit-line-height, 1.24);
}
@media (max-width: 1100px) and (min-width: 561px) {
    .pzg-oe-features--style-psd .pzg-oe-feature,
    .pzg-oe-features--style-psd .pzg-oe-feature__inner { min-height: 320px; }
}
/* ==================== BLOCK oe-for-who ==================== */
.pzg-oe-for-who {
    box-sizing: border-box;
    width: var(--pzg-section-width);
    max-width: none;
    margin-inline: auto;
    font-family: var(--oe-font, "PZG Montserrat", "Montserrat", sans-serif);
    container: pzg-for-who / inline-size;
}
.pzg-oe-for-who *, .pzg-oe-for-who *::before, .pzg-oe-for-who *::after { box-sizing: border-box; }
.pzg-oe-for-who--pt-none { padding-top: 0; }
.pzg-oe-for-who--pt-small { padding-top: 1rem; }
.pzg-oe-for-who--pt-normal { padding-top: clamp(1.6rem, 2.2vw, 2.6rem); }
.pzg-oe-for-who--pt-large { padding-top: 4rem; }
.pzg-oe-for-who--pb-none { padding-bottom: 0; }
.pzg-oe-for-who--pb-small { padding-bottom: 1rem; }
.pzg-oe-for-who--pb-normal { padding-bottom: clamp(2rem, 3vw, 3.5rem); }
.pzg-oe-for-who--pb-large { padding-bottom: 5rem; }

.pzg-oe-for-who__heading {
    margin: 0 0 clamp(1rem, 1.4vw, 1.55rem);
    color: #0036A5;
    font-family: var(--oe-font);
    font-weight: 700;
    line-height: 1.08;
    letter-spacing: -0.02em;
    text-align: center;
}
.pzg-oe-for-who--heading-small .pzg-oe-for-who__heading { font-size: clamp(1.55rem, 1.7vw, 2rem); }
.pzg-oe-for-who--heading-standard .pzg-oe-for-who__heading { font-size: clamp(1.8rem, 2.05vw, 2.35rem); }
.pzg-oe-for-who--heading-large .pzg-oe-for-who__heading { font-size: clamp(2rem, 2.35vw, 2.75rem); }
.pzg-oe-for-who__heading a { color: inherit; text-decoration: underline; text-underline-offset: .14em; }

.pzg-oe-for-who__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1.333%;
    align-items: start;
}
.pzg-oe-for-who__card { min-width: 0; }
.pzg-oe-for-who__image-wrap {
    position: relative;
    overflow: hidden;
    background: #eef2ff;
}
.pzg-oe-for-who--radius-small .pzg-oe-for-who__image-wrap { border-radius: 0.25rem; }
.pzg-oe-for-who--radius-medium .pzg-oe-for-who__image-wrap { border-radius: 0.7rem; }
.pzg-oe-for-who--radius-large .pzg-oe-for-who__image-wrap { border-radius: 1rem; }
/* PSD: 852 x 1086 px. Zachowujemy wartość 4-5 dla kompatybilności zapisanych bloków. */
.pzg-oe-for-who--ratio-4-5 .pzg-oe-for-who__image-wrap { aspect-ratio: 852 / 1086; }
.pzg-oe-for-who--ratio-3-4 .pzg-oe-for-who__image-wrap { aspect-ratio: 3 / 4; }
.pzg-oe-for-who--ratio-1-1 .pzg-oe-for-who__image-wrap { aspect-ratio: 1 / 1; }
.pzg-oe-for-who__image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: var(--pzg-photo-x, 50%) var(--pzg-photo-y, 50%);
    transform: scale(var(--pzg-photo-zoom, 1));
    transform-origin: var(--pzg-photo-x, 50%) var(--pzg-photo-y, 50%);
    display: block;
}
.pzg-oe-for-who__image--placeholder { background: linear-gradient(135deg, #e6ebff 0%, #d5defe 100%); }

.pzg-oe-for-who__label {
    margin-top: clamp(.62rem, .8vw, .9rem);
    margin-inline: auto;
    max-width: 94%;
    color: #0036A5;
    font-family: var(--oe-font);
    font-weight: 700;
    line-height: 1.12;
    letter-spacing: -0.01em;
    text-align: center;
    text-wrap: initial;
    overflow-wrap: normal;
}
.pzg-oe-for-who--labels-small .pzg-oe-for-who__label { font-size: clamp(.8rem, .84vw, .95rem); }
.pzg-oe-for-who--labels-standard .pzg-oe-for-who__label { font-size: clamp(.9rem, 1.03vw, 1.25rem); }
.pzg-oe-for-who--labels-large .pzg-oe-for-who__label { font-size: clamp(1rem, 1.15vw, 1.4rem); }


@media (max-width: 900px) {
    .pzg-oe-for-who__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
    .pzg-oe-for-who__card:last-child:nth-child(odd) { grid-column: 1 / -1; width: min(48%, 23rem); margin-inline: auto; }
}
@media (max-width: 640px) {
    .pzg-oe-for-who__grid { grid-template-columns: 1fr; gap: 1.4rem; }
    .pzg-oe-for-who__card:last-child:nth-child(odd) { grid-column: auto; width: 100%; max-width: none; }
    .pzg-oe-for-who__heading { margin-bottom: 1rem; }
    .pzg-oe-for-who__label { max-width: 100%; }
}
/* ==================== BLOCK oe-steps ==================== */
.pzg-oe-steps {
    box-sizing: border-box;
    width: var(--pzg-section-width, min(calc(100% - 2rem), 1313px));
    margin-inline: auto;
    background: var(--pzg-steps-bg, #fff);
    color: var(--pzg-steps-text, #0036A5);
    font-family: var(--oe-font, "PZG Montserrat", "Montserrat", sans-serif);
    container: pzg-steps / inline-size;
}
.pzg-oe-steps *, .pzg-oe-steps *::before, .pzg-oe-steps *::after { box-sizing: border-box; }
.pzg-oe-steps--pt-none { padding-top: 0; }
.pzg-oe-steps--pt-small { padding-top: 1rem; }
.pzg-oe-steps--pt-normal { padding-top: clamp(.5rem, .8vw, .8rem); }
.pzg-oe-steps--pt-large { padding-top: clamp(3rem, 5vw, 6rem); }
.pzg-oe-steps--pb-none { padding-bottom: 0; }
.pzg-oe-steps--pb-small { padding-bottom: 1rem; }
.pzg-oe-steps--pb-normal { padding-bottom: clamp(2.25rem, 2.6vw, 3.25rem); }
.pzg-oe-steps--pb-large { padding-bottom: clamp(3rem, 5vw, 6rem); }
.pzg-oe-steps__inner { width: min(100%, 1140px); margin-inline: auto; }
.pzg-oe-steps__intro { max-width: 55rem; margin: 0 auto clamp(.65rem, 1.4vw, 1.25rem); text-align: center; line-height: 1.5; }
.pzg-oe-steps__intro > :first-child, .pzg-oe-steps__content > :first-child { margin-top: 0; }
.pzg-oe-steps__intro > :last-child, .pzg-oe-steps__content > :last-child { margin-bottom: 0; }
.pzg-oe-steps__slider { width: 100%; }
.pzg-oe-steps__viewport { width: 100%; overflow: hidden; transition: height .36s ease; outline-offset: 4px; }
.pzg-oe-steps__viewport:focus-visible { outline: 2px solid var(--pzg-steps-pagination, #0087FF); border-radius: .5rem; }
.pzg-oe-steps__track { display: flex; align-items: flex-start; transition: transform .45s cubic-bezier(.21,.61,.35,1); will-change: transform; }
.pzg-oe-steps__track.is-no-transition { transition: none !important; }
.pzg-oe-steps__slide--clone { pointer-events: none; }
.pzg-oe-steps__slide { width: 100%; flex: 0 0 100%; min-width: 0; min-height: clamp(112px, 9.9cqw, 130px); display: flex; align-items: center; justify-content: center; gap: clamp(20px, 2.36cqw, 31px); padding: clamp(4px, .45cqw, 6px) clamp(8px, 1.25cqw, 20px); }
.pzg-oe-steps__number { flex: 0 0 auto; display: grid; place-items: center; width: clamp(76px, 7.4cqw, 94px); height: clamp(76px, 7.4cqw, 94px); border: 4px solid var(--pzg-steps-number-text, #0087FF); border-radius: 50%; color: var(--pzg-steps-number-text, #0087FF); font-size: clamp(48px, 4.8cqw, 61px); font-weight: 600; font-style: italic; letter-spacing: -.04em; line-height: 1; }
.pzg-oe-steps__number-text { display: block; line-height: 1; transform: translate(-0.035em, -0.025em); }
.pzg-oe-steps__body { min-width: 0; max-width: 60rem; }
.pzg-oe-steps__heading { margin: 0; color: inherit; font-family: inherit; font-size: clamp(32px, 3.25cqw, 43px); font-weight: 600; line-height: 1.12; letter-spacing: -.012em; }
@media (min-width: 900px) { .pzg-oe-steps__heading { white-space: nowrap; } }
.pzg-oe-steps__content { margin-top: clamp(.9rem, 1.7vw, 1.6rem); font-size: 1.2rem; line-height: 1.55; }
.pzg-oe-steps__content :is(p,li,a,strong,em) { font-family: inherit; }
.pzg-oe-steps__content a { color: inherit; text-decoration: underline; text-underline-offset: .16em; }
.pzg-oe-steps__content :is(ul,ol) { padding-inline-start: 1.5em; }
.pzg-oe-steps--number-filled .pzg-oe-steps__number { width: clamp(5rem, 14cqw, 10rem); height: clamp(5rem, 14cqw, 10rem); border: 0; border-radius: 0 0 60% 0; background: var(--pzg-steps-number-bg, #E6EBFF); font-size: clamp(2.8rem, 5.5cqw, 5.8rem); }
.pzg-oe-steps__controls { display: flex; justify-content: center; align-items: center; gap: clamp(7px, 1vw, 14px); margin-top: clamp(4px, .5vw, 9px); }
.pzg-oe-steps--titles-only .pzg-oe-steps__controls { margin-top: -6px; }
.pzg-oe-steps__arrow { display: grid; place-items: center; min-width: 2.75rem; min-height: 2.75rem; border: 1px solid currentColor; border-radius: 50%; background: #fff; color: var(--pzg-steps-pagination, #0087FF); font: inherit; font-size: 1.25rem; line-height: 1; cursor: pointer; }
.pzg-oe-steps__arrow:hover { background: var(--oe-light, #E6EBFF); }
.pzg-oe-steps__arrow:disabled { cursor: not-allowed; opacity: .35; }
.pzg-oe-steps__pagination { display: flex; justify-content: center; align-items: center; flex-wrap: wrap; gap: .1rem; }
.pzg-oe-steps__dot { position: relative; flex: 0 0 auto; display: grid; place-items: center; width: 20px; height: 20px; margin: 0; padding: 0; border: 0; border-radius: 50%; background: transparent; opacity: 1; cursor: pointer; }
.pzg-oe-steps__dot::before { content: ""; display: block; width: 9.5px; height: 9.5px; border-radius: 50%; background: var(--pzg-steps-pagination, #0087FF); opacity: .4; transition: transform .18s ease, opacity .18s ease; }
.pzg-oe-steps__dot:hover::before { opacity: .72; }
.pzg-oe-steps__dot.is-active::before { opacity: 1; transform: scale(1.12); }
.pzg-oe-steps :is(button, a):focus-visible { outline: 3px solid var(--pzg-steps-pagination, #0087FF); outline-offset: 3px; }
.pzg-oe-steps__editor-note { margin: 1rem 0 0; color: var(--pzg-steps-text, #0032B4); font-size: .85rem; text-align: center; }
.pzg-oe-steps__sr-status:not(.screen-reader-text) { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
@container pzg-steps (max-width: 600px) {
    .pzg-oe-steps__slide { flex-direction: column; text-align: center; }
    .pzg-oe-steps__body { width: 100%; }
    .pzg-oe-steps__heading { font-size: clamp(1.4rem, 4.2cqw, 2rem); }
    .pzg-oe-steps__content { text-align: left; }
}
@media (max-width: 600px) {
    .pzg-oe-steps { width: min(100%, var(--pzg-section-width, calc(100vw - 1rem))); }
    .pzg-oe-steps__inner { padding-inline: .5rem; }
    .pzg-oe-steps__number { width: 76px; height: 76px; font-size: 44px; }
    .pzg-oe-steps__controls { gap: 10px; }
    .pzg-oe-steps--titles-only .pzg-oe-steps__controls { margin-top: 4px; }
}
@media (prefers-reduced-motion: reduce) {
    .pzg-oe-steps__track, .pzg-oe-steps__viewport { transition: none !important; }
}

/* 0.8.7 – przewijanie myszą (grab/drag), gestem i większa prezentacja kroków. */
.pzg-oe-steps__viewport { position: relative; }
.pzg-oe-steps.pzg-oe-steps--draggable .pzg-oe-steps__viewport {
    cursor: grab;
    touch-action: pan-y; /* gest pionowy nadal przewija stronę */
}
.pzg-oe-steps.pzg-oe-steps--draggable .pzg-oe-steps__viewport.is-dragging {
    cursor: grabbing;
    user-select: none;
    -webkit-user-select: none;
}
.pzg-oe-steps__viewport.is-dragging .pzg-oe-steps__track { transition: none !important; }
.pzg-oe-steps__viewport.is-dragging .pzg-oe-steps__track * {
    user-select: none;
    -webkit-user-select: none;
}
/* Komunikat aria-live jest dostępny dla czytników ekranu, lecz nigdy
   nie pojawia się wizualnie pod karuzelą (motyw nadpisywał screen-reader-text). */
.pzg-oe-steps .pzg-oe-steps__sr-status {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    border: 0 !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    clip-path: inset(50%) !important;
    white-space: nowrap !important;
    pointer-events: none !important;
}
@media (max-width: 600px) {
    .pzg-oe-steps__slide { min-height: 140px; gap: .7rem; padding-block: .4rem; }
    .pzg-oe-steps__heading { font-size: clamp(1.65rem, 5.3cqw, 2.15rem); }
    .pzg-oe-steps__content { font-size: 1.02rem; }
}

/* 0.8.8: krótsza karuzela dla krótkich tytułów, lecz długi opis nadal rozszerza slajd.
   Nie zmieniamy szerokości sekcji ani siatki PSD. Kropki są większe, a obszar kliknięcia ma 32x32 px. */
/* ==================== BLOCK oe-cta-phone ==================== */
.pzg-oe-cta-phone {
    box-sizing: border-box;
    width: min(calc(100% - 2rem), 112rem);
    margin-inline: auto;
    font-family: var(--oe-font, "Montserrat", "Poppins", sans-serif);
}
.pzg-oe-cta-phone *, .pzg-oe-cta-phone *::before, .pzg-oe-cta-phone *::after { box-sizing: border-box; }
.pzg-oe-cta-phone--pt-none { padding-top: 0; }
.pzg-oe-cta-phone--pt-small { padding-top: 1.25rem; }
.pzg-oe-cta-phone--pt-normal { padding-top: 2.4rem; }
.pzg-oe-cta-phone--pt-large { padding-top: 4rem; }
.pzg-oe-cta-phone--pb-none { padding-bottom: 0; }
.pzg-oe-cta-phone--pb-small { padding-bottom: 1.25rem; }
.pzg-oe-cta-phone--pb-normal { padding-bottom: 2.4rem; }
.pzg-oe-cta-phone--pb-large { padding-bottom: 4rem; }

.pzg-oe-cta-phone__card {
    display: grid;
    grid-template-columns: minmax(0, var(--pzg-cta-tune-left-col, 47.5%)) minmax(0, 1fr);
    column-gap: var(--pzg-cta-tune-gap, 0px);
    align-items: center;
    min-height: var(--pzg-cta-tune-min-height, 0px);
    aspect-ratio: 2.94 / 1;
    padding: var(--pzg-cta-tune-pad-y, clamp(2rem, 3.1vw, 3.5rem)) var(--pzg-cta-tune-pad-x, clamp(2.5rem, 5.6vw, 6.5rem));
    border-radius: 1rem;
    background: var(--pzg-cta-bg, #EAEDFF);
    overflow: hidden;
}
/* 0.13 alpha13: full-bleed dotyczy wyłącznie tła. Treść zachowuje geometrię z dopracowanej, ograniczonej wersji. */
.pzg-oe-cta-phone--preset-psd {
    width: min(92vw, 112rem);
    max-width: none;
    position: relative;
    isolation: isolate;
    padding-bottom: 0;
}
.pzg-oe-cta-phone--preset-psd::before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    bottom: 0;
    left: 50%;
    width: 100vw;
    transform: translateX(-50%);
    background: var(--pzg-cta-bg, #EAEDFF);
    pointer-events: none;
}
@media (min-width: 901px) {
    .pzg-oe-cta-phone--preset-psd .pzg-oe-cta-phone__card {
        background: transparent;
        border-radius: 0;
    }
}
.pzg-oe-cta-phone--preset-compact { width: min(80vw, 92rem); }
.pzg-oe-cta-phone--custom-width { width: min(var(--pzg-cta-tune-width, 92vw), var(--pzg-cta-tune-max-width, 112rem)); }
.pzg-oe-cta-phone--custom-height .pzg-oe-cta-phone__card { aspect-ratio: auto; }
.pzg-oe-cta-phone--preset-compact .pzg-oe-cta-phone__card { aspect-ratio: auto; min-height: 22rem; }
.pzg-oe-cta-phone--image-right .pzg-oe-cta-phone__media { order: 2; }
.pzg-oe-cta-phone--image-right .pzg-oe-cta-phone__content { order: 1; }
.pzg-oe-cta-phone--align-start .pzg-oe-cta-phone__card { align-items: start; }

.pzg-oe-cta-phone__media {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    min-width: 0;
    min-height: 0;
    height: 100%;
}
.pzg-oe-cta-phone__image {
    display: block;
    width: min(var(--pzg-cta-phone-width-desktop, 25rem), 96%);
    max-width: 100%;
    height: auto;
    max-height: var(--pzg-cta-tune-phone-max-height, 82%);
    transform: translate(var(--pzg-cta-tune-phone-x, 0px), var(--pzg-cta-tune-phone-y, 0px));
    object-fit: contain;
    object-position: center bottom;
    transform-origin: center bottom;
}
.pzg-oe-cta-phone__image-placeholder {
    display: grid;
    place-items: center;
    width: min(100%, 18rem);
    min-height: 13rem;
    padding: 1rem;
    border: 2px dashed color-mix(in srgb, var(--oe-primary, #3741E6) 35%, transparent);
    border-radius: .85rem;
    color: var(--oe-primary, #3741E6);
    text-align: center;
    font-size: .95rem;
}
.pzg-oe-cta-phone__content {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    min-width: 0;
    padding-inline: clamp(.75rem, 2.4vw, 2.75rem);
}
.pzg-oe-cta-phone__heading {
    margin: 0;
    max-width: var(--pzg-cta-tune-heading-width, 19ch);
    color: var(--pzg-cta-heading, #2028C2);
    font-size: var(--pzg-cta-tune-heading-size, clamp(2.15rem, 1.6rem + 1.7vw, 3.45rem));
    font-weight: 700;
    line-height: var(--pzg-cta-tune-heading-line, 1.05);
    letter-spacing: -.025em;
}
.pzg-oe-cta-phone__heading-accent,
.pzg-oe-cta-phone__accent {
    color: var(--pzg-cta-heading-accent, #4E34F0);
}

.pzg-oe-cta-phone__description {
    margin-top: var(--pzg-cta-tune-desc-gap, .75rem);
    max-width: 34rem;
    color: var(--pzg-cta-text, #2028C2);
    font-size: var(--pzg-cta-tune-body-size, clamp(1rem, .9rem + .35vw, 1.3rem));
    font-weight: 500;
    line-height: 1.4;
}
.pzg-oe-cta-phone__description > :first-child { margin-top: 0; }
.pzg-oe-cta-phone__description > :last-child { margin-bottom: 0; }
.pzg-oe-cta-phone__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2.8rem;
    margin-top: var(--pzg-cta-tune-button-gap, 1.5rem);
    padding: .7rem 1.35rem;
    border-radius: 999px;
    color: #fff !important;
    background: var(--pzg-cta-button, #4E34F0);
    text-decoration: none !important;
    font-size: 1rem;
    font-weight: 700;
    line-height: 1;
    box-shadow: 0 .45rem 1.05rem rgba(78, 52, 240, .16);
    transition: transform .18s ease, filter .18s ease;
}
.pzg-oe-cta-phone__button:hover { filter: brightness(.94); transform: translateY(-1px); }
.pzg-oe-cta-phone__button:focus-visible { outline: 3px solid currentColor; outline-offset: 3px; }

body.ss-wcag-hide-images .pzg-oe-cta-phone__media { display: none !important; }
body.ss-wcag-hide-images .pzg-oe-cta-phone__card { grid-template-columns: 1fr; min-height: 0; }
body.ss-wcag-hide-images .pzg-oe-cta-phone__content { align-items: center; text-align: center; padding: 1rem; }
body.ss-wcag-hide-images .pzg-oe-cta-phone__heading { max-width: 22ch; }
body.ss-wcag-animations-disabled .pzg-oe-cta-phone * { transition: none !important; animation: none !important; }

@media (max-width: 900px) {
    .pzg-oe-cta-phone,
    .pzg-oe-cta-phone--preset-psd,
    .pzg-oe-cta-phone--preset-compact { width: min(calc(100% - 2rem), 46rem); }
    .pzg-oe-cta-phone__card { grid-template-columns: 1fr 1fr; column-gap: min(var(--pzg-cta-tune-gap, 0px), 1.5rem); aspect-ratio: auto; min-height: 24rem; padding: 2.25rem; }
    .pzg-oe-cta-phone__image { width: min(var(--pzg-cta-phone-width-tablet, 20rem), 94%); max-height: 20rem; }
    .pzg-oe-cta-phone__heading { font-size: clamp(1.75rem, 1.35rem + 2vw, 2.5rem); }
}
@media (max-width: 640px) {
    .pzg-oe-cta-phone,
    .pzg-oe-cta-phone--preset-psd,
    .pzg-oe-cta-phone--preset-compact { width: calc(100% - 1rem); }
    .pzg-oe-cta-phone__card { grid-template-columns: 1fr; aspect-ratio: auto; gap: 1rem; padding: 1.75rem 1.5rem; text-align: center; }
    .pzg-oe-cta-phone__media { min-height: 12rem; order: 1 !important; }
    .pzg-oe-cta-phone__content { order: 2 !important; align-items: center; padding-inline: 0; }
    .pzg-oe-cta-phone__image { width: min(var(--pzg-cta-phone-width-mobile, 15rem), 78vw); max-height: 15rem; }
    .pzg-oe-cta-phone__heading { max-width: 16ch; }
    .pzg-oe-cta-phone__description { max-width: 28rem; }
}

/* 0.9.2: suwaki weryfikujemy w edytorze, nie zmieniając reszty frontu. */
@media (max-width: 900px) {
    .pzg-oe-cta-phone--custom-width {
        width: min(calc(100% - 2rem), 46rem);
    }
    .pzg-oe-cta-phone__card {
        min-height: 24rem;
    }
    .pzg-oe-cta-phone__image {
        transform: none;
    }
    .pzg-oe-cta-phone__heading {
        font-size: var(--pzg-cta-tune-heading-size, clamp(1.75rem, 1.35rem + 2vw, 2.5rem));
    }
}
@media (max-width: 640px) {
    .pzg-oe-cta-phone--custom-width { width: calc(100% - 1rem); }
    .pzg-oe-cta-phone__card {
        grid-template-columns: 1fr;
        column-gap: 0;
        min-height: 0;
    }
    .pzg-oe-cta-phone__image {
        max-height: 15rem;
    }
}
/* ==================== BLOCK oe-why-worth ==================== */
/* Dlaczego warto – 0.9.7: warstwowy efekt z PSD. */
.pzg-oe-why-worth {
    box-sizing: border-box;
    position: relative;
    width: min(calc(100% - 2rem), 112rem);
    max-width: none;
    margin: var(--pzg-why-space-top, 0px) auto var(--pzg-why-space-bottom, 0px);
    font-family: var(--oe-font, "Montserrat", "Poppins", sans-serif);
    scroll-margin-top: calc(var(--navbar-min-h, 80px) + 90px);
}
.pzg-oe-why-worth *, .pzg-oe-why-worth *::before, .pzg-oe-why-worth *::after { box-sizing: border-box; }
/* 0.13 alpha13: tła dochodzą do krawędzi ekranu, ale teksty i znak zapytania pozostają w starym, wycentrowanym layoucie. */
.pzg-oe-why-worth--wide {
    width: min(92vw, 112rem);
    max-width: none;
    position: relative;
    isolation: isolate;
    margin-top: 0;
}
.pzg-oe-why-worth--wide::before,
.pzg-oe-why-worth--wide::after {
    content: "";
    position: absolute;
    z-index: -2;
    top: 0;
    bottom: 0;
    pointer-events: none;
}
.pzg-oe-why-worth--wide::before {
    left: 50%;
    width: 100vw;
    transform: translateX(-50%);
    background: var(--pzg-why-right-bg, #C0F4EE);
}
.pzg-oe-why-worth--wide::after {
    right: 50%;
    width: 50vw;
    background: var(--pzg-why-left-bg, #4E34F0);
    border-radius: 0 var(--pzg-why-overlay-radius, 92px) var(--pzg-why-overlay-radius, 92px) 0;
    z-index: -1;
}
@media (min-width: 901px) {
    .pzg-oe-why-worth--wide .pzg-oe-why-worth__columns {
        grid-template-columns: minmax(0, var(--pzg-why-left-col, 50%)) minmax(0, 1fr);
        background: transparent;
        overflow: visible;
        border-radius: 0;
    }
    .pzg-oe-why-worth--wide.pzg-oe-why-worth--radius-small .pzg-oe-why-worth__columns,
    .pzg-oe-why-worth--wide.pzg-oe-why-worth--radius-medium .pzg-oe-why-worth__columns { border-radius: 0; }
    .pzg-oe-why-worth--wide .pzg-oe-why-worth__left {
        background: transparent;
        border-radius: 0;
        margin-right: 0;
    }
    .pzg-oe-why-worth--wide .pzg-oe-why-worth__right {
        background: transparent;
    }
}
.pzg-oe-why-worth--custom { width: min(var(--pzg-why-wide-width, 92vw), var(--pzg-why-max-width, 112rem)); }
.pzg-oe-why-worth--main { width: min(69.803vw, var(--pzg-why-max-width, 112rem)); }
.pzg-oe-why-worth__columns {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, var(--pzg-why-left-col, 50%)) minmax(0, 1fr);
    min-height: var(--pzg-why-min-height, 270px);
    align-items: stretch;
    width: 100%;
    overflow: hidden;
    border-radius: 0;
    /* Jasny panel jest rzeczywistą warstwą spodnią pod całą sekcją. */
    background: var(--pzg-why-right-bg, #C0F4EE);
}
.pzg-oe-why-worth--radius-small .pzg-oe-why-worth__columns { border-radius: .6rem; }
.pzg-oe-why-worth--radius-medium .pzg-oe-why-worth__columns { border-radius: 1rem; }
.pzg-oe-why-worth__left, .pzg-oe-why-worth__right {
    position: relative;
    min-width: 0;
    min-height: 0;
    padding: var(--pzg-why-pad-y, 42px) var(--pzg-why-pad-x, 52px);
}
.pzg-oe-why-worth__left {
    z-index: 2;
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    background: var(--pzg-why-left-bg, #4E34F0);
    color: var(--pzg-why-left-text, #fff);
    /* Panel fioletowy leży na jasnej warstwie. Zaokrąglamy wyłącznie jego prawą krawędź. */
    border-radius: 0 var(--pzg-why-overlay-radius, 92px) var(--pzg-why-overlay-radius, 92px) 0;
    margin-right: calc(-1 * var(--pzg-why-overlay-overlap, 26px));
}
.pzg-oe-why-worth__left-inner {
    width: max-content;
    max-width: calc(100% - 5rem);
    margin: 0;
}
.pzg-oe-why-worth__heading {
    display: block;
    text-wrap: balance;
    margin: 0;
    width: max-content;
    max-width: 100%;
    font-size: var(--pzg-why-heading-size, 2.375rem);
    font-weight: 700;
    line-height: var(--pzg-why-heading-line, 1.15);
    letter-spacing: -.02em;
    color: inherit;
    text-align: left;
}
/* Dostarczony SVG ma już biały pytajnik i koralową kropkę. Bez dodatkowego tła/koła. */
.pzg-oe-why-worth__badge {
    position: absolute;
    right: var(--pzg-why-badge-right, 28px);
    bottom: var(--pzg-why-badge-bottom, 24px);
    width: auto;
    height: var(--pzg-why-badge-size, 76px);
    line-height: 0;
    pointer-events: none;
    background: none !important;
    border: 0;
    border-radius: 0;
    overflow: visible;
}
.pzg-oe-why-worth__badge-image {
    display: block;
    width: auto;
    height: 100%;
    max-width: none;
    object-fit: contain;
}
.pzg-oe-why-worth__right {
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    /* Tło jest na kontenerze .__columns, dzięki czemu jasny kolor realnie znajduje się pod fioletem. */
    background: transparent;
    color: var(--pzg-why-right-text, #0032B4);
    overflow: hidden;
    /* Kompensacja obszaru schowanego pod fioletową warstwą, żeby tekst nie wchodził pod panel. */
    padding-left: calc(var(--pzg-why-pad-x, 52px) + var(--pzg-why-overlay-overlap, 26px));
}
.pzg-oe-why-worth--circle-on .pzg-oe-why-worth__right::before {
    content: "";
    position: absolute;
    width: min(42%, 300px);
    aspect-ratio: 1;
    bottom: -22%; right: -11%;
    background: currentColor;
    opacity: .08;
    border-radius: 50%;
    pointer-events: none;
}
.pzg-oe-why-worth__description {
    position: relative;
    z-index: 1;
    width: 100%;
    max-width: min(100%, var(--pzg-why-text-width, 460px));
    font-size: var(--pzg-why-body-size, 1.0625rem);
    font-weight: 500;
    line-height: var(--pzg-why-body-line, 1.4);
    color: inherit;
    overflow-wrap: break-word;
}
.pzg-oe-why-worth__description > :first-child { margin-top: 0; }
.pzg-oe-why-worth__description > :last-child { margin-bottom: 0; }
.pzg-oe-why-worth__description p { margin: 0; }
.pzg-oe-why-worth__description ul {
    margin: 0;
    padding-left: 1.15em;
}
.pzg-oe-why-worth__description li + li { margin-top: .45em; }
.pzg-oe-why-worth__description a { color: inherit; text-decoration: underline; }
.pzg-oe-why-worth__description a:focus-visible { outline: 3px solid currentColor; outline-offset: 3px; }
@media (max-width: 900px) {
    .pzg-oe-why-worth,
    .pzg-oe-why-worth--wide,
    .pzg-oe-why-worth--custom,
    .pzg-oe-why-worth--main { width: min(calc(100% - 2rem), 46rem); }
    .pzg-oe-why-worth__columns { min-height: 0; }
    .pzg-oe-why-worth__left, .pzg-oe-why-worth__right { padding: clamp(1.75rem, 4vw, 2.75rem); }
    .pzg-oe-why-worth__right { padding-left: calc(clamp(1.75rem, 4vw, 2.75rem) + min(var(--pzg-why-overlay-overlap, 26px), 2rem)); }
    .pzg-oe-why-worth__left-inner { max-width: calc(100% - 4rem); }
}
@media (max-width: 640px) {
    .pzg-oe-why-worth,
    .pzg-oe-why-worth--wide,
    .pzg-oe-why-worth--custom,
    .pzg-oe-why-worth--main { width: calc(100% - 1rem); }
    .pzg-oe-why-worth__columns { grid-template-columns: 1fr; min-height: 0; background: var(--pzg-why-right-bg, #C0F4EE); }
    /* Na telefonie zachowujemy ideę warstw, ale zaokrąglenie przechodzi na dolną krawędź panelu. */
    .pzg-oe-why-worth__left {
        min-height: 11.5rem;
        padding: 1.75rem 1.25rem 3.25rem;
        margin-right: 0;
        margin-bottom: calc(-1 * min(var(--pzg-why-overlay-overlap, 26px), 1.25rem));
        border-radius: 0 0 var(--pzg-why-overlay-radius, 92px) var(--pzg-why-overlay-radius, 92px);
    }
    .pzg-oe-why-worth__left-inner { max-width: calc(100% - 4rem); }
    .pzg-oe-why-worth__heading { font-size: clamp(1.75rem, var(--pzg-why-heading-size, 2.375rem), 3rem); }
    .pzg-oe-why-worth__badge { height: min(4.4rem, 19vw); right: 1.25rem; bottom: .9rem; }
    .pzg-oe-why-worth__right { padding: calc(2rem + min(var(--pzg-why-overlay-overlap, 26px), 1.25rem)) 1.25rem 2rem; }
    .pzg-oe-why-worth__description { max-width: 100%; font-size: var(--pzg-why-body-size, 1.0625rem); }
}
body.ss-wcag-hide-images .pzg-oe-why-worth__badge { display: none !important; }
body.ss-wcag-animations-disabled .pzg-oe-why-worth *,
body.ss-wcag-animations-disabled .pzg-oe-why-worth *::before,
body.ss-wcag-animations-disabled .pzg-oe-why-worth *::after { animation: none !important; transition: none !important; }
@media (prefers-reduced-motion: reduce) {
    .pzg-oe-why-worth *, .pzg-oe-why-worth *::before, .pzg-oe-why-worth *::after { animation: none !important; transition: none !important; }
}
html[style*="font-size"] .pzg-oe-why-worth__columns { height: auto; }

/* Subtelny, rzadki ruch wyłącznie domyślnego pytajnika. Własne grafiki nie są animowane. */
@keyframes pzg-oe-question-nod {
    0%, 1.5%, 7%, 100% { transform: rotate(0); }
    3% { transform: rotate(-4deg); }
    4.5% { transform: rotate(4deg); }
    5.8% { transform: rotate(-2deg); }
}
@media (prefers-reduced-motion: no-preference) {
    body:not(.ss-wcag-animations-disabled) .pzg-oe-why-worth__badge-image--question {
        transform-origin: 50% 82%;
        animation: none;
    }
    body:not(.ss-wcag-animations-disabled) .pzg-oe-why-worth.is-why-visible .pzg-oe-why-worth__badge-image--question {
        animation: pzg-oe-question-nod 7s ease-in-out .2s infinite;
    }
}
/* ==================== BLOCK oe-text-media ==================== */
/* Tekst + media: samodzielny blok ACF V3. Brak globalnych selektorów SS. */
.pzg-oe-text-media {
    box-sizing:border-box;
    position:relative;
    width:min(69.803vw, var(--pzg-content-max,1313px));
    max-width:calc(100% - 2rem);
    margin:var(--pzg-tm-space-top,24px) auto var(--pzg-tm-space-bottom,24px);
    padding:var(--pzg-tm-pad-y,48px) var(--pzg-tm-pad-x,36px);
    min-height:var(--pzg-tm-min-height,0px);
    color:var(--pzg-tm-body-color,#0032B4);
    background:var(--pzg-tm-bg-color,#FFFFFF);
    font-family:var(--oe-font,"Montserrat",sans-serif);
    scroll-margin-top:calc(var(--navbar-min-h,80px) + 70px);
}
.pzg-oe-text-media *, .pzg-oe-text-media *::before, .pzg-oe-text-media *::after { box-sizing:border-box; }
.pzg-oe-text-media--wide { width:min(92vw,1792px); }
.pzg-oe-text-media--custom { width:min(var(--pzg-tm-width-vw,84vw), var(--pzg-tm-max-width,1260px)); }
.pzg-oe-text-media__grid {
    display:grid;
    grid-template-columns:minmax(0,var(--pzg-tm-left,50%)) minmax(0,1fr);
    column-gap:var(--pzg-tm-gap,40px);
    align-items:center;
    width:100%;
}
.pzg-oe-text-media--align-top .pzg-oe-text-media__grid { align-items:start; }
.pzg-oe-text-media--align-bottom .pzg-oe-text-media__grid { align-items:end; }
.pzg-oe-text-media__content { grid-column:1; grid-row:1; min-width:0; max-width:var(--pzg-tm-text-width,520px); }
.pzg-oe-text-media__visual { grid-column:2; grid-row:1; position:relative; isolation:isolate; min-width:0; width:100%; min-height:max(18rem, min(var(--pzg-tm-media-h,520px), 34vw)); display:grid; place-items:center; }
.pzg-oe-text-media--media_left .pzg-oe-text-media__content { grid-column:2; }
.pzg-oe-text-media--media_left .pzg-oe-text-media__visual { grid-column:1; }
.pzg-oe-text-media__heading { margin:0; color:var(--pzg-tm-heading-color,#0032B4); font-size:var(--pzg-tm-heading-size,2.125rem); line-height:var(--pzg-tm-heading-line,1.12); font-weight:700; letter-spacing:-.015em; overflow-wrap:anywhere; }
.pzg-oe-text-media__subtitle { margin:.55rem 0 0; color:var(--pzg-tm-subtitle-color,#0032B4); font-size:var(--pzg-tm-subtitle-size,1.0625rem); line-height:1.4; font-weight:600; }
.pzg-oe-text-media__body { margin-top:clamp(1.2rem,3vw,2.2rem); color:var(--pzg-tm-body-color,#0032B4); font-size:var(--pzg-tm-body-size,1.0625rem); line-height:var(--pzg-tm-body-line,1.43); font-weight:500; overflow-wrap:break-word; }
.pzg-oe-text-media__body > :first-child { margin-top:0; }
.pzg-oe-text-media__body > :last-child { margin-bottom:0; }
.pzg-oe-text-media__body a { color:inherit; text-decoration:underline; }
.pzg-oe-text-media__body a:focus-visible, .pzg-oe-text-media__transcript a:focus-visible { outline:3px solid currentColor; outline-offset:3px; }
.pzg-oe-text-media__ellipse { position:absolute; width:var(--pzg-tm-ellipse-w,360px); height:var(--pzg-tm-ellipse-h,290px); max-width:100%; border-radius:50%; background:var(--pzg-tm-ellipse-color,#E7E7FF); left:50%; top:50%; transform:translate(calc(-50% + var(--pzg-tm-ellipse-x,0px)),calc(-50% + var(--pzg-tm-ellipse-y,64px))); z-index:0; pointer-events:none; }
.pzg-oe-text-media__ellipse-image { position:absolute; left:50%; top:50%; width:var(--pzg-tm-ellipse-w,620px); max-width:none; height:auto; aspect-ratio:1448/1086; transform:translate(calc(-50% + var(--pzg-tm-ellipse-x,52px)),calc(-50% + var(--pzg-tm-ellipse-y,210px))); z-index:0; pointer-events:none; user-select:none; }
.pzg-oe-text-media__dots { position:absolute; width:var(--pzg-tm-dots-w,88px); height:75px; background-image:radial-gradient(circle,var(--pzg-tm-dots-color,#3741E6) 1.5px,transparent 2px); background-size:16px 16px; left:50%; top:50%; transform:translate(calc(-50% + var(--pzg-tm-dots-x,-142px)),calc(-50% + var(--pzg-tm-dots-y,65px))); z-index:1; pointer-events:none; }
.pzg-oe-text-media__media { position:relative; z-index:2; display:grid; place-items:center; width:min(100%,var(--pzg-tm-media-w,320px)); max-height:var(--pzg-tm-media-h,520px); transform:translate(var(--pzg-tm-media-x,0px),var(--pzg-tm-media-y,0px)); }
.pzg-oe-text-media__image { display:block; max-width:100%; max-height:var(--pzg-tm-media-h,520px); width:auto; height:auto; object-fit:contain; }
.pzg-oe-text-media__video, .pzg-oe-text-media__media iframe { display:block; width:100%; max-width:100%; border:0; aspect-ratio:9/16; background:#152036; border-radius:1rem; }
.pzg-oe-text-media--ratio-landscape .pzg-oe-text-media__video, .pzg-oe-text-media--ratio-landscape .pzg-oe-text-media__media iframe { aspect-ratio:16/9; }
.pzg-oe-text-media--ratio-square .pzg-oe-text-media__video, .pzg-oe-text-media--ratio-square .pzg-oe-text-media__media iframe { aspect-ratio:1; }
.pzg-oe-text-media__video { object-fit:contain; max-height:var(--pzg-tm-media-h,520px); }
.pzg-oe-text-media__placeholder { padding:1.3rem; border:2px dashed #abb8fd; background:#f8faff; border-radius:.8rem; font-size:.95rem; text-align:center; color:#0032B4; }
.pzg-oe-text-media__placeholder small { display:block; margin-top:.5rem; line-height:1.4; }
.pzg-oe-text-media__media--empty:not(:has(.pzg-oe-text-media__placeholder)) { display:none; }
.pzg-oe-text-media__transcript { margin:1rem 0 0; font-size:.95rem; }
@media (max-width:1024px) {
    .pzg-oe-text-media { width:min(calc(100% - 2rem), 46rem); max-width:none; padding:2.2rem 1.35rem; }
    .pzg-oe-text-media__grid { column-gap:clamp(1rem,3vw,2rem); }
    .pzg-oe-text-media__visual { min-height:20rem; }
    .pzg-oe-text-media__ellipse { width:min(var(--pzg-tm-ellipse-w,360px),100%); }
    .pzg-oe-text-media__body { margin-top:1rem; }
}
@media (max-width:767px) {
    .pzg-oe-text-media,.pzg-oe-text-media--wide,.pzg-oe-text-media--custom { width:calc(100% - 1.5rem); padding:1.5rem .75rem; }
    .pzg-oe-text-media__grid { display:flex; flex-direction:column; align-items:stretch; row-gap:1.4rem; }
    .pzg-oe-text-media__content { width:100%; max-width:none; order:1; }
    .pzg-oe-text-media__visual { width:100%; min-height: min(80vw,420px); order:2; }
    .pzg-oe-text-media__media { width:min(70%,var(--pzg-tm-media-w,320px)); transform:none; }
    .pzg-oe-text-media--ratio-landscape .pzg-oe-text-media__media { width:min(100%,var(--pzg-tm-media-w,320px)); }
    .pzg-oe-text-media__ellipse { width:min(85%,var(--pzg-tm-ellipse-w,360px)); height:min(70vw,var(--pzg-tm-ellipse-h,290px)); transform:translate(-50%,-40%); }
    .pzg-oe-text-media__dots { left:22%; top:58%; transform:translate(-50%,-50%); }
    .pzg-oe-text-media__heading { font-size:clamp(1.6rem,var(--pzg-tm-heading-size,2.125rem),2.6rem); }
}
/* Dodatkowa warstwa zgodności z istniejącym panelem Special Space WCAG. */
body.ss-wcag-hide-images .pzg-oe-text-media__ellipse,
body.ss-wcag-hide-images .pzg-oe-text-media__dots { display:none !important; }
body.ss-wcag-hide-images .pzg-oe-text-media__image { visibility:hidden !important; }
/* Film jest treścią, więc opcja ukrywania dekoracji nie usuwa odtwarzacza. */
body.ss-wcag-animations-disabled .pzg-oe-text-media *,
body.ss-wcag-animations-disabled .pzg-oe-text-media *::before,
body.ss-wcag-animations-disabled .pzg-oe-text-media *::after { transition:none !important; animation:none !important; }
@media (prefers-reduced-motion:reduce) { .pzg-oe-text-media * { transition:none !important; animation:none !important; } }

/* Odseparowane ustawienie ramki filmu oraz brak pustej kolumny bez pliku. */
.pzg-oe-text-media--frame-phone:not(.pzg-oe-text-media--type-image) .pzg-oe-text-media__media { padding:6px; background:#172029; border:2px solid #485365; border-radius:1.65rem; box-shadow:0 8px 20px #0b124025; }
.pzg-oe-text-media--frame-phone:not(.pzg-oe-text-media--type-image) .pzg-oe-text-media__video, .pzg-oe-text-media--frame-phone:not(.pzg-oe-text-media--type-image) .pzg-oe-text-media__media iframe { border-radius:1.25rem; }
.pzg-oe-text-media--no-media .pzg-oe-text-media__grid { display:block; }
.pzg-oe-text-media--no-media .pzg-oe-text-media__visual { display:none; }
body.ss-wcag-hide-images .pzg-oe-text-media--type-image .pzg-oe-text-media__grid { display:block !important; }
body.ss-wcag-hide-images .pzg-oe-text-media--type-image .pzg-oe-text-media__content { max-width:min(100%,var(--pzg-tm-text-width,520px)); }
body.ss-wcag-hide-images .pzg-oe-text-media--type-image .pzg-oe-text-media__visual { display:none !important; }

/* PZG 0.9.10: proporcje ramki z przesłanych przez użytkownika plików:
   frame 368x740; screen 336x710 at (16,15), rx=30 w współrzędnych SVG.
   Ramka z dziurą w środku jest wyświetlana na wideo – pełny WebP ma czarny,
   NIEprzezroczysty środek i nie nadaje się bezpośrednio do nakładania. */
.pzg-oe-text-media--frame-phone_exact .pzg-oe-text-media__media,
.pzg-oe-text-media--type-sample_video .pzg-oe-text-media__media {
    width:min(100%,var(--pzg-tm-phone-width,216px));
    max-height:none;
    padding:0; border:0; border-radius:0;
    background:transparent; box-shadow:none;
    display:block;
}
.pzg-oe-text-media__phone-device { position:relative; isolation:isolate; width:100%; aspect-ratio:368/740; }
.pzg-oe-text-media__phone-screen {
    position:absolute;
    left:var(--pzg-tm-phone-inset-x,4.3478%);
    right:var(--pzg-tm-phone-inset-x,4.3478%);
    top:var(--pzg-tm-phone-inset-y,2.0270%);
    bottom:var(--pzg-tm-phone-inset-y,2.0270%);
    border-radius:9% / 4.25%;
    overflow:hidden;
    background:#06080e;
    z-index:1;
    /* Dołączony SVG o proporcjach 336x710, radius=30 – dokładnie jak stara maska. */
    -webkit-mask-image:url('../../blocks/oe-text-media/assets/vid-phone-mask.svg');
    mask-image:url('../../blocks/oe-text-media/assets/vid-phone-mask.svg');
    -webkit-mask-size:100% 100%; mask-size:100% 100%;
    -webkit-mask-repeat:no-repeat; mask-repeat:no-repeat;
}
.pzg-oe-text-media__phone-video {
    position:absolute; inset:0;
    display:block; width:100%; height:100%;
    max-width:none; max-height:none;
    margin:0; padding:0; border:0; border-radius:0;
    background:#070a12;
    object-fit:cover;
    object-position:50% var(--pzg-tm-phone-video-y,50%);
    transform:scale(var(--pzg-tm-phone-video-zoom,1));
    transform-origin:50% var(--pzg-tm-phone-video-y,50%);
}
.pzg-oe-text-media--phone-fit-contain .pzg-oe-text-media__phone-video { object-fit:contain; }
.pzg-oe-text-media__phone-bezel {
    position:absolute; inset:0;
    width:100%; height:100%; object-fit:fill;
    z-index:2; pointer-events:none; user-select:none;
}
/* Nie zmuszajmy responsywnego telefonu do stałej wysokości standardowego odtwarzacza. */
.pzg-oe-text-media--frame-phone_exact .pzg-oe-text-media__visual,
.pzg-oe-text-media--type-sample_video .pzg-oe-text-media__visual {
    min-height:0;
    padding-block:1rem;
}
@media (max-width:767px) {
    .pzg-oe-text-media--frame-phone_exact .pzg-oe-text-media__media,
    .pzg-oe-text-media--type-sample_video .pzg-oe-text-media__media {
        width:min(65vw,var(--pzg-tm-phone-width,216px));
        transform:none;
        margin-inline:auto;
    }
    .pzg-oe-text-media--frame-phone_exact .pzg-oe-text-media__visual,
    .pzg-oe-text-media--type-sample_video .pzg-oe-text-media__visual { min-height:0; }
}
body.ss-wcag-hide-images .pzg-oe-text-media__phone-bezel { visibility:visible !important; }
/* Ramka przy filmie jest elementem interfejsu, a nie przypadkową dekoracją. */

/* PZG 0.9.11: kopuła z PSD dla sekcji z telefonem. */
.pzg-oe-text-media--ellipse-dome .pzg-oe-text-media__visual { overflow:hidden; }
.pzg-oe-text-media--ellipse-dome .pzg-oe-text-media__ellipse-image { width:min(118%, var(--pzg-tm-ellipse-w,620px)); }
.pzg-oe-text-media--ellipse-dome .pzg-oe-text-media__media { position:relative; z-index:2; }
@media (max-width:1024px) {
    .pzg-oe-text-media__ellipse-image { width:min(110%, var(--pzg-tm-ellipse-w,620px)); }
}
@media (max-width:767px) {
    .pzg-oe-text-media--ellipse-dome .pzg-oe-text-media__visual { overflow:visible; }
    .pzg-oe-text-media__ellipse-image { width:min(140vw, var(--pzg-tm-ellipse-w,620px)); transform:translate(calc(-50% + var(--pzg-tm-ellipse-x,52px)),calc(-50% + var(--pzg-tm-ellipse-y,150px))); }
}
body.ss-wcag-hide-images .pzg-oe-text-media__ellipse-image { display:none !important; }
/* ==================== BLOCK oe-downloads ==================== */
.pzg-placeholder-block {
    width: min(calc(100% - 2rem), 76rem);
    margin: 1rem auto;
    padding: 1.25rem 1.35rem;
    border: 2px dashed #ccd5ff;
    border-radius: 1rem;
    background: #f8f9ff;
    color: var(--oe-dark-blue);
    font-family: var(--oe-font, "PZG Montserrat", "Montserrat", sans-serif);
}
.pzg-placeholder-block__eyebrow { font-size: .75rem; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; color: #6a7ad9; }
.pzg-placeholder-block__title { margin: .35rem 0 .45rem; font-size: 1.45rem; font-weight: 700; line-height: 1.2; }
.pzg-placeholder-block__desc { margin: 0; font-size: .98rem; line-height: 1.45; }
/* ==================== REFERENCE 2026 (selected layout) ==================== */
/* All dimensions come from the 3762px source canvas. Desktop is capped at 1/2 scale. */
.pzg-ref-page{position:relative;left:50%;width:var(--pzg-ref-viewport,100%);max-width:none!important;margin:0!important;transform:translateX(-50%);background:#fff;display:flow-root;container-type:inline-size;container-name:pzg-ref-canvas}
.pzg-ref{--u:var(--pzg-ref-unit,min(.0265816vw,.5px));--violet:#5038f0;--blue:#0886ff;--ink:#3934cc;--mint:#bdf3ed;--light:#ededff;box-sizing:border-box;position:relative;left:50%;transform:translateX(-50%);width:calc(2626 * var(--u));max-width:calc(100% - 32px);margin:0!important;padding:0;border:0;background:#fff;color:var(--ink);font-family:Montserrat,Montserrat,sans-serif!important;font-weight:500;font-size:calc(52 * var(--u));line-height:1.2;text-align:left;isolation:isolate}
.pzg-ref *,.pzg-ref *::before,.pzg-ref *::after{box-sizing:border-box}
.pzg-ref :is(h1,h2,h3,p,figure,ul){margin:0;padding:0;color:inherit;font-family:inherit}
.pzg-ref :is(h1,h2,h3){font-weight:700;line-height:1.16;letter-spacing:0;text-transform:none}
.pzg-ref h2{font-size:calc(88 * var(--u))}
.pzg-ref img{display:block;max-width:100%;height:auto;border:0;border-radius:0;margin:0}
.pzg-ref button,.pzg-ref a{font-family:inherit;letter-spacing:0;text-transform:none;box-shadow:none}
.pzg-ref button{cursor:pointer}
.pzg-ref a{color:inherit;text-decoration:none}
.pzg-ref :is(button,a,summary):focus-visible{outline:3px solid #f36b63;outline-offset:4px}
.pzg-ref [hidden]{display:none!important}
.pzg-ref p+p{margin-top:1em}
.pzg-ref{scroll-margin-top:140px}
/* Desktop master grid: HERO, section navigation and blue feature tiles all derive
 * from the exact inner edges of the site header. 2626 is the design width of
 * the white HERO card / blue feature panel, so one shared unit keeps every
 * internal dimension proportional while the outside edges lock 1:1 to the
 * two visible header guides. Mobile keeps the dedicated compact layout below. */
@media(min-width:900px){
 .pzg-ref:is(.pzg-ref--hero,.pzg-ref--nav,.pzg-ref--features){
  --u:var(--pzg-top-u,var(--pzg-master-ref-unit,var(--pzg-ref-unit,min(.0265816vw,.5px))));
 }
 .pzg-ref--hero .pzg-ref-hero-card{
  width:var(--pzg-master-grid-width,calc(2626 * var(--u)));
  max-width:none;
 }
 .pzg-ref--features{
  width:var(--pzg-master-grid-width,calc(2626 * var(--u)));
  max-width:none;
 }
}
.pzg-ref--hero{--pzg-ref-hero-primary:#4f38ef;width:var(--pzg-ref-viewport,100vw);max-width:none;background:var(--pzg-ref-hero-primary);padding:calc(203 * var(--u)) 0 calc(186 * var(--u))}
.pzg-ref-hero-card{width:calc(2626 * var(--u));min-height:calc(1347 * var(--u));max-width:calc(100% - 32px);margin:auto;background:white;border-radius:calc(36 * var(--u));display:grid;grid-template-columns:calc(1095 * var(--u)) minmax(0,1fr);column-gap:0;padding:calc(96 * var(--u)) calc(139 * var(--u)) calc(76 * var(--u));color:var(--pzg-ref-hero-primary)}
.pzg-ref-hero-visual{display:flex;flex-direction:column;align-items:flex-start}
.pzg-ref-logo{width:calc(760 * var(--u));height:auto}
.pzg-ref .pzg-ref-hero-photo{width:calc(842 * var(--u));height:calc(841 * var(--u));object-fit:cover;border-radius:50%;margin:calc(81 * var(--u)) 0 0 calc(112 * var(--u))}
.pzg-ref-hero-copy{padding-top:calc(69 * var(--u))}
.pzg-ref-hero-card>*{min-width:0}
.pzg-ref-hero-copy{min-width:0}
.pzg-ref-hero-copy h1,.pzg-ref-copy{overflow-wrap:break-word;word-break:normal}
.pzg-ref-hero-copy h1{font-size:calc(88 * var(--u));line-height:1.14;font-weight:700;max-width:none;color:var(--pzg-ref-hero-primary)}
/* PSD uses one coherent heading size; emphasis remains semantic/bold context, not a second scale. */
.pzg-ref-emphasis{font-size:inherit}
.pzg-ref-copy{margin-top:calc(110 * var(--u));font-size:calc(48 * var(--u));line-height:1.2;max-width:calc(1179 * var(--u));color:var(--pzg-ref-hero-primary)}
.pzg-ref--nav{width:calc(2329 * var(--u));padding:calc(145 * var(--u)) 0 calc(81 * var(--u));background:transparent;z-index:20;font-size:calc(44 * var(--u))}
.pzg-ref-nav{padding:calc(23 * var(--u)) calc(31 * var(--u));border-radius:calc(22 * var(--u));background:#ededff}
.pzg-ref-nav ul{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:calc(26 * var(--u))}
.pzg-ref-nav li{list-style:none;margin:0;padding:0}
.pzg-ref-nav a{display:block;white-space:nowrap;padding:calc(27 * var(--u)) calc(27 * var(--u));border-radius:calc(36 * var(--u));font-size:inherit;line-height:1.15}
.pzg-ref-nav a[aria-current]{background:#f46b66;color:white;font-weight:700}
.pzg-ref-nav a .pzg-ref-nav-label{display:inline-block;transform-origin:center;transition:transform .2s ease}
.pzg-ref-nav a{transition:background-color .2s ease,color .2s ease,box-shadow .2s ease}
.pzg-ref-nav a:hover,.pzg-ref-nav a:focus-visible{background:#fff;color:#4531d8;box-shadow:0 3px 10px rgba(69,49,216,.12)}
.pzg-ref-nav a:hover .pzg-ref-nav-label,.pzg-ref-nav a:focus-visible .pzg-ref-nav-label{transform:scale(1.045)}
.pzg-ref-nav a[aria-current]:hover,.pzg-ref-nav a[aria-current]:focus-visible{background:#e95c59;color:#fff}
@media(prefers-reduced-motion:reduce){.pzg-ref-nav a,.pzg-ref-nav a .pzg-ref-nav-label{transition:none!important}.pzg-ref-nav a:hover .pzg-ref-nav-label,.pzg-ref-nav a:focus-visible .pzg-ref-nav-label{transform:none}}
body.ss-wcag-animations-disabled .pzg-ref-nav a,body.ss-wcag-animations-disabled .pzg-ref-nav a .pzg-ref-nav-label{transition:none!important;transform:none!important}
.pzg-ref-nav-marker{height:0;pointer-events:none}
.pzg-ref.pzg-ref--nav.is-floating{position:fixed;left:0;top:0;transform:none;width:auto;max-width:none;padding:0;margin:0;z-index:90;background:transparent}
.pzg-ref--nav.is-floating .pzg-ref-nav{box-shadow:0 8px 28px rgba(37,34,110,.15)}
@media(prefers-reduced-motion:no-preference){
 body:not(.ss-wcag-animations-disabled) .pzg-ref [data-pzg-reveal="pending"]{opacity:0;transform:translateY(20px)}
 body:not(.ss-wcag-animations-disabled) .pzg-ref [data-pzg-reveal="visible"]{opacity:1;transform:translateY(0);transition:opacity .65s ease var(--pzg-reveal-delay,0ms),transform .65s cubic-bezier(.2,.7,.2,1) var(--pzg-reveal-delay,0ms)}
 body:not(.ss-wcag-animations-disabled) .pzg-ref-feature-icon{transition:transform .3s ease}
 body:not(.ss-wcag-animations-disabled) .pzg-ref-feature:hover .pzg-ref-feature-icon{transform:translateY(-8px)}
 /* Move the photo and its AI label together; unlabelled photos keep the same effect. */
 body:not(.ss-wcag-animations-disabled) .pzg-ref-audience-grid figure > img,
 body:not(.ss-wcag-animations-disabled) .pzg-ref-audience-grid figure > .pzg-ref-ai-media--audience{transition:transform .35s ease}
 body:not(.ss-wcag-animations-disabled) .pzg-ref-audience-grid figure:hover > img,
 body:not(.ss-wcag-animations-disabled) .pzg-ref-audience-grid figure:hover > .pzg-ref-ai-media--audience{transform:scale(1.025)}
}
body.ss-wcag-animations-disabled .pzg-ref [data-pzg-reveal],.pzg-ref[data-editor="1"] [data-pzg-reveal]{opacity:1!important;transform:none!important;transition:none!important;animation:none!important}
.pzg-ref--features{height:calc(1022 * var(--u));border-radius:calc(36 * var(--u));background:var(--blue);color:white;padding:calc(200 * var(--u)) calc(226 * var(--u)) calc(190 * var(--u))}
.pzg-ref-feature-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:calc(56 * var(--u));height:100%}
.pzg-ref-feature{position:relative;min-width:0;perspective:900px;transform-style:preserve-3d}
.pzg-ref-feature-front{width:100%;height:100%;padding:0;border:0;border-radius:0;background:none;color:white;display:flex;flex-direction:column;align-items:center;justify-content:space-between;font-size:calc(38 * var(--u));font-weight:700;line-height:1.12;text-align:center;text-transform:uppercase!important}
.pzg-ref-feature-front:hover{background:none;color:white}
.pzg-ref .pzg-ref-feature-icon{width:calc(520 * var(--u));height:calc(500 * var(--u));object-fit:contain}
.pzg-ref-feature-front span{display:grid;place-items:center;width:100%;min-height:2.24em;max-width:100%;white-space:nowrap;text-wrap:balance}
.pzg-ref-feature-back{position:absolute;inset:0;background:var(--blue);font-size:var(--pzg-ref-back-fit-size,clamp(15px,calc(36 * var(--u)),18px));line-height:var(--pzg-ref-back-fit-line-height,1.22);overflow:hidden;padding:var(--pzg-ref-back-fit-padding,clamp(7px,calc(18 * var(--u)),11px));display:flex;align-items:center;justify-content:center;text-align:left;visibility:hidden;transform:rotateY(-180deg);transform-origin:50% 50%;backface-visibility:hidden;-webkit-backface-visibility:hidden;hyphens:auto;-webkit-hyphens:auto;overflow-wrap:normal;word-break:normal}
.pzg-ref-feature-back__content{width:100%;max-width:none;margin:auto;text-wrap:wrap;overflow:visible}
/* alpha60: desktopowy odwrot kafelka nigdy nie dostaje wewnętrznego scrolla.
 * Klasa zostaje dla zgodności ze starym HTML/JS, ale nie zmienia overflow. */
.pzg-ref-feature-back__content.pzg-ref-feature-back__content--scroll{overflow:visible;padding-right:0}
.pzg-ref-feature-back--center,.pzg-ref-feature-back--center .pzg-ref-feature-back__content{text-align:center}
.pzg-ref-feature-back--left,.pzg-ref-feature-back--left .pzg-ref-feature-back__content{text-align:left}
.pzg-ref-feature-back__content>:first-child{margin-top:0}
.pzg-ref-feature-back__content>:last-child{margin-bottom:0}
.pzg-ref-feature-back__content p{margin:0 0 .38em}
.pzg-ref-feature-back__content ul,.pzg-ref-feature-back__content ol{margin:.35em 0 .75em;padding-left:1.2em}
.pzg-ref-feature-back__content li{margin:.2em 0}
.pzg-ref-feature-back__content a{color:inherit;text-decoration:underline;text-underline-offset:.15em}
.pzg-ref-feature-back__heading{display:block;margin:0 0 .6em;font-size:1.18em;font-weight:700;line-height:1.2}

/* Alpha71: readable flip descriptions; phones show both sides in normal flow. */
.pzg-ref--features .pzg-ref-feature-back{
  font-size:var(--pzg-ref-back-fit-size,clamp(18px,calc(48 * var(--u)),26px));
  line-height:var(--pzg-ref-back-fit-line-height,1.25);
  overflow:visible;
  overflow-wrap:anywhere;
  min-width:0;
  box-sizing:border-box;
}
.pzg-ref--features .pzg-ref-feature-back__content{
  min-width:0;max-width:100%;overflow:visible;overflow-wrap:anywhere;
}
.pzg-ref--features.pzg-ref--features-grow{height:auto!important}
.pzg-ref--features.pzg-ref--features-grow .pzg-ref-feature-grid{
  height:auto;min-height:var(--pzg-feature-required-height);
  grid-auto-rows:minmax(var(--pzg-feature-required-height),auto);
}
.pzg-ref-feature-front,.pzg-ref-feature-back{transition:transform .48s cubic-bezier(.2,.7,.2,1),visibility .48s;transform-origin:50% 50%;backface-visibility:hidden;-webkit-backface-visibility:hidden}
.pzg-ref-feature:has([aria-expanded=true]) .pzg-ref-feature-front{transform:rotateY(180deg)}
.pzg-ref-feature:has([aria-expanded=true]) .pzg-ref-feature-back{visibility:visible;transform:rotateY(0)}
@media(prefers-reduced-motion:reduce){.pzg-ref-feature-front,.pzg-ref-feature-back{transition:none!important}}
body.ss-wcag-animations-disabled .pzg-ref-feature-front,body.ss-wcag-animations-disabled .pzg-ref-feature-back{transition:none!important}
.pzg-ref--for-who{padding-top:calc(123 * var(--u))}
.pzg-ref--for-who h2{text-align:center;color:#0036a5;margin-bottom:calc(95 * var(--u))}
.pzg-ref-audience-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:calc(44 * var(--u))}
.pzg-ref-audience-grid figure{min-width:0;text-align:center}
.pzg-ref-audience-grid img{width:100%;aspect-ratio:841/1008;object-fit:cover}
.pzg-ref-audience-grid figcaption{font-size:calc(38 * var(--u));line-height:1.1;font-weight:700;margin-top:calc(48 * var(--u));color:#0036a5}
.pzg-ref--steps{padding-top:calc(85 * var(--u));padding-bottom:calc(131 * var(--u))}
.pzg-ref-step{display:flex;align-items:center;justify-content:center;gap:calc(62 * var(--u));min-height:calc(188 * var(--u))}
.pzg-ref-step h2{font-size:calc(88 * var(--u))}
.pzg-ref-step-number{width:calc(188 * var(--u));height:calc(188 * var(--u));border:calc(10 * var(--u)) solid #00a9ff;border-radius:50%;display:grid;place-items:center;color:#00a9ff;font-weight:500;font-style:italic;font-size:calc(122 * var(--u));line-height:1;flex:none}
.pzg-ref-step-controls{display:flex;gap:16px;justify-content:center;align-items:center;margin-top:16px;font-size:14px}
.pzg-ref-step-controls button{border:1px solid #0886ff;border-radius:50%;width:40px;height:40px;color:var(--ink);background:white}
.pzg-ref--teacher,.pzg-ref--supporters,.pzg-ref--faq-tabs{width:calc(3363 * var(--u))}
/* 0.13 alpha13: FULL BLEED = tylko warstwa tła. Wewnętrzne elementy zachowują pozycje z dopracowanej wersji ograniczonej. */
.pzg-ref--cta-phone,.pzg-ref--why-worth{width:calc(3363 * var(--u));position:relative;isolation:isolate;max-width:none!important}
.pzg-ref--cta-phone{--pzg-cta-u:var(--u);width:calc(3363 * var(--pzg-cta-u))}
.pzg-ref--cta-phone{border-radius:0;min-height:calc(1155 * var(--pzg-cta-u));display:grid;grid-template-columns:50% 50%;background:transparent;padding:calc(135 * var(--pzg-cta-u)) calc(140 * var(--pzg-cta-u)) calc(73 * var(--pzg-cta-u));overflow:visible}
.pzg-ref--cta-phone::before{content:"";position:absolute;z-index:-1;top:0;bottom:0;left:50%;width:var(--pzg-ref-viewport,100vw);transform:translateX(-50%);background:#eaedff;pointer-events:none}
.pzg-ref-cta-media{display:flex;align-items:center;justify-content:flex-start;padding-left:calc(155 * var(--pzg-cta-u))}
.pzg-ref-cta-media img{width:calc(1030 * var(--pzg-cta-u));max-height:calc(947 * var(--pzg-cta-u));object-fit:contain}
.pzg-ref-cta-copy{padding:calc(179 * var(--pzg-cta-u)) 0 0 calc(140 * var(--pzg-cta-u));font-size:calc(52 * var(--pzg-cta-u));color:#2028c2}
.pzg-ref-cta-copy h2{font-size:calc(88 * var(--pzg-cta-u));line-height:1.08;color:#2028c2}
.pzg-ref-cta-copy p{margin-top:calc(12 * var(--pzg-cta-u));color:#2028c2}
.pzg-ref-cta-accent{color:#4e34f0}
.pzg-ref .pzg-ref-button{display:inline-flex;align-items:center;justify-content:center;min-height:calc(104 * var(--pzg-cta-u,var(--u)));margin-top:calc(141 * var(--pzg-cta-u,var(--u)));padding:calc(22 * var(--pzg-cta-u,var(--u))) calc(51 * var(--pzg-cta-u,var(--u)));background:#5935f7;border-radius:999px;color:white;font-size:calc(36 * var(--pzg-cta-u,var(--u)));font-weight:700}
.pzg-ref--cta-phone .pzg-ref-button{margin-top:calc(151 * var(--pzg-cta-u));background:#4e34f0;box-shadow:0 calc(14 * var(--pzg-cta-u)) calc(34 * var(--pzg-cta-u)) rgba(78,52,240,.16)}
.pzg-ref--why-worth{margin-top:0!important;display:grid;grid-template-columns:50% 50%;background:#c1f4ef;color:#0032b4;min-height:calc(1036 * var(--u));border-radius:0;overflow:visible}
.pzg-ref--why-worth::before,.pzg-ref--why-worth::after{content:none}
.pzg-ref-why-title{position:relative;display:flex;align-items:flex-start;justify-content:flex-start;background:#4e34f0;border-radius:0 calc(36 * var(--u)) calc(36 * var(--u)) 0;color:#fff}
.pzg-ref-why-title h2{font-size:calc(122 * var(--u));line-height:1.1;text-align:left}
.pzg-ref-why-mark{position:absolute;right:calc(115 * var(--u));bottom:calc(145 * var(--u));width:calc(145 * var(--u));height:calc(320 * var(--u));overflow:visible}.pzg-ref-why-mark__line{fill:none;stroke:#fff;stroke-linecap:round;stroke-linejoin:round;stroke-width:4px}.pzg-ref-why-mark__dot{fill:#fc6760}
.pzg-ref-why-copy{display:flex;align-items:flex-start;justify-content:flex-start;padding:calc(197 * var(--u)) calc(205 * var(--u)) calc(180 * var(--u)) calc(156 * var(--u));font-size:calc(52 * var(--u));font-weight:500;line-height:1.28;color:#0032b4}.pzg-ref-why-copy :is(strong,b){color:inherit;font-weight:600}
.pzg-ref--text-media{position:relative;display:grid;grid-template-columns:50.8% 49.2%;min-height:calc(1280 * var(--u));margin-top:calc(180 * var(--u))!important;padding:calc(120 * var(--u)) 0 calc(110 * var(--u));background:transparent;color:var(--pzg-ref-startee-body,#0032b4);overflow:visible}
.pzg-ref--text-media::before{content:"";position:absolute;z-index:-1;left:50%;top:0;bottom:0;width:var(--pzg-ref-viewport,100vw);transform:translateX(-50%);background:var(--pzg-ref-startee-bg,#ececff)}
.pzg-ref-startee-copy{padding-right:calc(26 * var(--u))}
.pzg-ref-startee-copy h2{font-size:calc(88 * var(--u));line-height:1.14;color:var(--pzg-ref-startee-heading,#0032b4)}
.pzg-ref-subtitle{display:none}
.pzg-ref-startee-body{margin-top:calc(118 * var(--u));max-width:calc(1210 * var(--u));font-size:calc(52 * var(--u));line-height:1.17;color:var(--pzg-ref-startee-body,#0032b4)}
.pzg-ref-startee-transcript{margin-top:1rem!important;font-size:.8em;line-height:1.4}
.pzg-ref-startee-transcript a{text-decoration:underline;text-underline-offset:.15em}
.pzg-ref-startee-visual{position:relative;min-height:calc(1050 * var(--u))}
.pzg-ref .pzg-ref-phone{position:absolute;top:calc(72 * var(--u));left:calc(655 * var(--u));width:calc(600 * var(--u));height:auto;z-index:2}
.pzg-ref .pzg-ref-dome{display:none}
.pzg-ref-dots{position:absolute;left:calc(470 * var(--u));top:calc(830 * var(--u));width:calc(250 * var(--u));height:calc(140 * var(--u));background-image:radial-gradient(#563bfa 1.5px,transparent 1.6px);background-size:calc(48 * var(--u)) calc(48 * var(--u));z-index:1}
.pzg-ref-phone-device{position:absolute;left:calc(655 * var(--u));top:calc(72 * var(--u));width:calc(600 * var(--u));aspect-ratio:593/1219;background:#111;border:calc(15 * var(--u)) solid #333;border-radius:calc(75 * var(--u));overflow:hidden;z-index:2}
.pzg-ref-phone-device video{width:100%;height:100%;object-fit:cover;display:block}
.pzg-ref-embed{position:relative;margin-top:calc(185 * var(--u));z-index:2}
.pzg-ref-embed iframe{width:100%;aspect-ratio:9/16;max-height:calc(1219 * var(--u));border:0}
.pzg-ref--teacher{padding-top:calc(20 * var(--u));color:var(--pzg-ref-teacher-body,#6443ff)}
.pzg-ref-icon-heading{display:flex;align-items:center;gap:calc(68 * var(--u));margin-left:calc(58 * var(--u))!important;color:var(--pzg-ref-teacher-heading,#3930ca)!important;min-height:calc(234 * var(--u))}
.pzg-ref-round-icon{display:flex;align-items:center;justify-content:center;width:calc(234 * var(--u));height:calc(234 * var(--u));border-radius:50%;background:#0032b4;color:#fff;flex:none;line-height:0;overflow:hidden}
.pzg-ref-round-icon svg{width:46%;height:46%;stroke:#fff;stroke-width:1.85;fill:none;overflow:visible}
.pzg-ref-round-icon svg *{vector-effect:non-scaling-stroke}
.pzg-ref-question{font-size:calc(170 * var(--u));font-weight:500;line-height:1}
.pzg-ref-teacher-grid{display:grid;grid-template-columns:50% 50%;margin-top:calc(24 * var(--u));padding-bottom:calc(146 * var(--u));gap:0;align-items:start}
.pzg-ref-laptop{position:relative;margin:calc(114 * var(--u)) 0 0 calc(70 * var(--u));width:calc(1467 * var(--u));max-width:100%}
.pzg-ref-laptop img{display:block;width:100%;height:auto}
.pzg-ref-laptop-screen{position:absolute;z-index:1;left:13.5254%;top:14.6084%;width:72.9004%;height:70.7831%;overflow:hidden;background:#000}
.pzg-ref-laptop-screen video{display:block;width:100%;height:100%;object-fit:cover;background:#000}
.pzg-ref-teacher-copy{padding-left:calc(140 * var(--u));padding-right:calc(90 * var(--u));font-size:calc(52 * var(--u));line-height:1.17;color:var(--pzg-ref-teacher-body,#6443ff)}
.pzg-ref-teacher-copy ul{list-style:none;margin-top:1em;padding-left:0}
.pzg-ref-teacher-copy li{margin:0;padding:0}
.pzg-ref-teacher-copy li::before{content:'- '}
.pzg-ref--supporters{min-height:calc(318 * var(--u));border-radius:calc(36 * var(--u));display:grid;grid-template-columns:54% 46%;background:var(--blue);padding:calc(29 * var(--u));color:white;align-items:center}
.pzg-ref-support-copy{padding:0 calc(120 * var(--u)) 0 calc(150 * var(--u))}
.pzg-ref-support-copy h2{font-size:calc(62 * var(--u));line-height:1.1}
.pzg-ref-support-copy p{font-size:calc(36 * var(--u));line-height:1.22;margin-top:calc(12 * var(--u))}
.pzg-ref-support-partner{display:flex;align-items:center;justify-content:space-between;min-height:calc(260 * var(--u));gap:calc(70 * var(--u));padding:calc(40 * var(--u));border-radius:calc(28 * var(--u));color:#5741e5;background:white}
.pzg-ref-support-partner img{width:calc(634 * var(--u));max-width:53%}
.pzg-ref-support-partner h3,.pzg-ref-support-partner p{font-size:calc(36 * var(--u));line-height:1.2}
.pzg-ref-support-partner h3{font-weight:500;margin-bottom:calc(36 * var(--u))}
.pzg-ref--faq-tabs{padding-top:calc(68 * var(--u));padding-bottom:calc(210 * var(--u))}
.pzg-ref-faq-content{margin-left:calc(354 * var(--u));margin-right:calc(145 * var(--u))}
.pzg-ref-tabs{display:flex;flex-wrap:wrap;gap:calc(45 * var(--u));margin-top:calc(-15 * var(--u));margin-bottom:calc(64 * var(--u))}
.pzg-ref-tabs button{position:relative;padding:8px 0 10px;border:0;background:none;color:#603cfa;font-size:var(--pzg-faq-category-size,16px);line-height:1.25;font-weight:700;cursor:pointer;transition:color .2s ease,transform .2s ease}
.pzg-ref-tabs button::after{content:'';position:absolute;left:0;right:0;bottom:2px;height:2px;border-radius:2px;background:#603cfa;transform:scaleX(0);transform-origin:left center;transition:transform .22s ease,opacity .22s ease;opacity:.72}
.pzg-ref-tabs button[aria-selected=true]::after{transform:scaleX(1);opacity:1}
@media(hover:hover) and (prefers-reduced-motion:no-preference){body:not(.ss-wcag-animations-disabled) .pzg-ref-tabs button:hover{transform:translateY(-2px);color:#4935ee}body:not(.ss-wcag-animations-disabled) .pzg-ref-tabs button:hover::after{transform:scaleX(.65)}}
.pzg-ref-tabs button:focus-visible{outline:3px solid #ff6966;outline-offset:4px;border-radius:4px}.pzg-ref-tabs button:focus-visible::after{transform:scaleX(1)}
.pzg-ref-tab-panel details{border-bottom:1px dotted #928fd6;margin-bottom:calc(20 * var(--u));color:#6450d2}
.pzg-ref-tab-panel details,.pzg-ref-tab-panel summary{transition:none!important;animation:none!important}
.pzg-ref-tab-panel details>div{transition:none!important}
.pzg-ref-tab-panel summary{position:relative;list-style:none;cursor:pointer;min-height:calc(53 * var(--u));padding:8px calc(70 * var(--u)) 8px 0;font-size:var(--pzg-faq-question-size,18px);font-weight:700;line-height:1.4;color:#5b45d8}
.pzg-ref-tab-panel summary::-webkit-details-marker{display:none}
.pzg-ref-tab-panel summary::after{content:'';position:absolute;right:4px;top:50%;transform:translateY(-65%) rotate(45deg);width:calc(34 * var(--u));height:calc(34 * var(--u));border-right:1px solid #78c9ee;border-bottom:1px solid #78c9ee;transition:transform .18s ease}
.pzg-ref-tab-panel details[open] summary::after{transform:translateY(-35%) rotate(225deg)}
.pzg-ref-tab-panel details>div{font-size:var(--pzg-faq-answer-size,16px);font-weight:500;line-height:1.55;padding:6px 0 20px;color:#6450d2}
.pzg-ref-tab-panel details>div p{margin:.35em 0}.pzg-ref-tab-panel details>div>:first-child{margin-top:0}.pzg-ref-tab-panel details>div>:last-child{margin-bottom:0}
.pzg-ref-category-fallback{font-size:18px!important;margin:16px 0!important}
.pzg-ref.is-enhanced .pzg-ref-category-fallback{display:none}
.editor-styles-wrapper .pzg-ref-page{left:auto;transform:none;width:100%;container-type:inline-size}
.pzg-ref-page{--pzg-ref-unit:clamp(.36px,.0265816vw,.5px)}
/* 0.9.42: MacBook / małe laptopy.
   Projekt źródłowy ma 3762 px szerokości; czyste skalowanie 1:1 dawało przy viewportach
   ~900–1350 px zbyt małą typografię. Minimalna jednostka .36px utrzymuje czytelność
   i identyczne proporcje w Safari/Chrome/Firefox niezależnie od DPR/Retiny. */
@media (min-width:900px) and (max-width:1354px){
 .pzg-ref--hero{padding-top:calc(203 * var(--u));padding-bottom:calc(186 * var(--u))}
 .pzg-ref-hero-card{width:min(calc(2626 * var(--u)),calc(100% - 32px));}
 .pzg-ref-hero-copy h1{font-size:calc(88 * var(--u));}
 .pzg-ref-copy{font-size:calc(48 * var(--u));}
}
@media(max-width:899px){
 .pzg-ref{--u:.28px;width:calc(100% - 32px);max-width:calc(100% - 32px);font-size:16px;line-height:1.5}
 .pzg-ref--hero{width:100%;max-width:none;padding:32px 0}
 .pzg-ref-hero-card{width:calc(100% - 32px);max-width:680px;min-height:0;grid-template-columns:42% minmax(0,1fr);gap:24px;padding:28px;border-radius:12px}
 .pzg-ref-logo{width:100%}
 .pzg-ref .pzg-ref-hero-photo{width:100%;height:auto;aspect-ratio:1;margin:28px 0 0}
 .pzg-ref-hero-copy{padding:0}
 .pzg-ref-hero-copy h1{font-size:26px;line-height:1.2}
 .pzg-ref-hero-copy h1 br{display:none}
 .pzg-ref-copy{font-size:16px;line-height:1.5;margin-top:24px}
 .pzg-ref--nav{padding:20px 0}
 .pzg-ref-nav{padding:8px}
 .pzg-ref-nav ul{flex-wrap:wrap;justify-content:center;gap:4px}
 .pzg-ref-nav a{font-size:13px;min-height:40px;display:flex;align-items:center;padding:8px 12px}
 .pzg-ref--features{height:auto;padding:28px 20px}
 .pzg-ref-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 20px}
 .pzg-ref-feature-front{min-height:158px;gap:20px;font-size:13px}
 .pzg-ref-feature-back{font-size:14px;line-height:1.45}
 .pzg-ref--for-who{padding-top:36px}
 .pzg-ref h2{font-size:26px}
 .pzg-ref--for-who h2{margin-bottom:28px;color:#0036a5}
 .pzg-ref-audience-grid{gap:20px}
 .pzg-ref-audience-grid figcaption{font-size:15px;line-height:1.22;margin-top:20px;color:#0036a5}
 .pzg-ref--steps{padding:8px 0 32px;color:#0036a5}
 .pzg-ref-step{gap:26px;min-height:76px}
 .pzg-ref-step h2{font-size:40px;line-height:1.12;color:#0036a5}
 .pzg-ref-step-number{width:76px;height:76px;font-size:48px;border-width:4px}
 .pzg-ref--cta-phone{padding:28px;min-height:0;gap:20px;grid-template-columns:44% minmax(0,1fr)}
 .pzg-ref-cta-copy{padding:16px 0;font-size:16px}
 .pzg-ref-cta-copy h2{font-size:26px}
 .pzg-ref .pzg-ref-button{font-size:14px;min-height:44px;margin-top:24px;padding:12px 22px}
 .pzg-ref--why-worth{margin-top:24px!important;min-height:0;grid-template-columns:40% 60%}
 .pzg-ref-why-title{padding:36px 20px 86px}
 .pzg-ref-why-title h2{font-size:30px}
 .pzg-ref-why-title img{width:26px;height:64px;bottom:20px;right:20px}
 .pzg-ref-why-copy{padding:28px;font-size:16px;line-height:1.5}
 .pzg-ref--text-media{margin-top:40px!important;grid-template-columns:55% 45%;min-height:0;padding:24px 0 28px}
 .pzg-ref-startee-copy{padding:0}
 .pzg-ref-startee-copy h2{font-size:26px}
 .pzg-ref-subtitle{display:none}
 .pzg-ref-startee-body{font-size:16px;line-height:1.5;margin-top:22px;max-width:none}
 .pzg-ref-startee-visual{align-self:center;min-height:430px}
 .pzg-ref .pzg-ref-phone,.pzg-ref-phone-device{width:160px;left:50%;transform:translateX(-50%);top:24px}
 .pzg-ref .pzg-ref-dome{display:none}
 .pzg-ref-dots{left:10%;top:260px}
 .pzg-ref--teacher{padding-top:36px}
 .pzg-ref-icon-heading{gap:16px;margin-left:0!important}
 .pzg-ref-round-icon{width:54px;height:54px}
 .pzg-ref-question{font-size:40px}
 .pzg-ref-teacher-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:24px;padding-bottom:36px;gap:20px;align-items:center}
 .pzg-ref-laptop{margin:0;width:100%}
 .pzg-ref-teacher-copy{padding:0;font-size:16px;line-height:1.5}
 .pzg-ref--supporters{grid-template-columns:1fr 1fr;padding:16px;gap:16px}
 .pzg-ref-support-copy{padding:0}
 .pzg-ref-support-copy h2{font-size:21px}
 .pzg-ref-support-copy p,.pzg-ref-support-partner p,.pzg-ref-support-partner h3{font-size:13px;line-height:1.4}
 .pzg-ref-support-partner{padding:16px;gap:16px}
 .pzg-ref-support-partner h3{margin-bottom:8px}
 .pzg-ref--faq-tabs{padding:28px 0 40px}
 .pzg-ref-faq-content{margin:20px 0 0}
 .pzg-ref-tabs{gap:8px 20px;margin:0 0 20px}
 .pzg-ref-tabs button{font-size:clamp(13px,var(--pzg-faq-category-size,16px),18px);min-height:44px}
 .pzg-ref-tab-panel details{font-size:inherit}
 .pzg-ref-tab-panel summary{min-height:44px;padding:8px 28px 8px 0;font-size:clamp(16px,var(--pzg-faq-question-size,18px),22px)}
 .pzg-ref-tab-panel summary::after{top:12px;width:10px;height:10px}
 .pzg-ref-tab-panel details>div{font-size:clamp(14px,var(--pzg-faq-answer-size,16px),20px)}
}
@media(max-width:580px){
 .pzg-ref-hero-card{display:flex;flex-direction:column;padding:24px;gap:28px}
 .pzg-ref-hero-visual{align-items:center}
 .pzg-ref-logo{width:220px}
 .pzg-ref .pzg-ref-hero-photo{width:220px}
 .pzg-ref-hero-copy h1{font-size:27px}
 .pzg-ref-audience-grid{grid-template-columns:1fr;gap:28px}
 .pzg-ref-audience-grid figure{max-width:340px;margin:auto;width:100%}
 .pzg-ref-audience-grid figcaption{font-size:15px}
 .pzg-ref--cta-phone,.pzg-ref--why-worth,.pzg-ref--text-media,.pzg-ref-teacher-grid,.pzg-ref--supporters{grid-template-columns:1fr}
 .pzg-ref-cta-media img{width:240px}
 .pzg-ref-cta-copy{padding:0}
 .pzg-ref-why-title{min-height:200px;padding:32px}
 .pzg-ref-why-title h2{font-size:34px}
 .pzg-ref-why-copy{padding:24px}
 .pzg-ref-startee-visual{min-height:440px;margin-top:20px}
 .pzg-ref .pzg-ref-phone,.pzg-ref-phone-device{width:185px}
 .pzg-ref .pzg-ref-dome{display:none}
 .pzg-ref-dots{left:15%;top:285px}
 .pzg-ref-icon-heading{font-size:24px!important}
 .pzg-ref-laptop{max-width:380px;margin:0 auto}
 .pzg-ref-support-partner{justify-content:space-around}
}
@media(prefers-reduced-motion:reduce){.pzg-ref *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media(forced-colors:active){.pzg-ref a,.pzg-ref button,.pzg-ref summary{border:1px solid ButtonText}.pzg-ref-round-icon{border:1px solid CanvasText}}

@container pzg-ref-canvas (max-width:899px){
 .pzg-ref{--u:.28px;width:calc(100% - 32px);max-width:calc(100% - 32px);font-size:16px;line-height:1.5}
 .pzg-ref--hero{width:100%;max-width:none;padding:32px 0}
 .pzg-ref-hero-card{width:calc(100% - 32px);max-width:680px;min-height:0;grid-template-columns:42% minmax(0,1fr);gap:24px;padding:28px;border-radius:12px}
 .pzg-ref-logo{width:100%}
 .pzg-ref .pzg-ref-hero-photo{width:100%;height:auto;aspect-ratio:1;margin:28px 0 0}
 .pzg-ref-hero-copy{padding:0}
 .pzg-ref-hero-copy h1{font-size:26px;line-height:1.2}
 .pzg-ref-hero-copy h1 br{display:none}
 .pzg-ref-copy{font-size:16px;line-height:1.5;margin-top:24px}
 .pzg-ref--nav{padding:20px 0}
 .pzg-ref-nav{padding:8px}
 .pzg-ref-nav ul{flex-wrap:wrap;justify-content:center;gap:4px}
 .pzg-ref-nav a{font-size:13px;min-height:40px;display:flex;align-items:center;padding:8px 12px}
 .pzg-ref--features{height:auto;padding:28px 20px}
 .pzg-ref-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 20px}
 .pzg-ref-feature-front{min-height:158px;gap:20px;font-size:13px}
 .pzg-ref-feature-back{font-size:14px;line-height:1.45}
 .pzg-ref--for-who{padding-top:36px}
 .pzg-ref h2{font-size:26px}
 .pzg-ref--for-who h2{margin-bottom:28px;color:#0036a5}
 .pzg-ref-audience-grid{gap:20px}
 .pzg-ref-audience-grid figcaption{font-size:15px;line-height:1.22;margin-top:20px;color:#0036a5}
 .pzg-ref--steps{padding:8px 0 32px;color:#0036a5}
 .pzg-ref-step{gap:26px;min-height:76px}
 .pzg-ref-step h2{font-size:40px;line-height:1.12;color:#0036a5}
 .pzg-ref-step-number{width:76px;height:76px;font-size:48px;border-width:4px}
 .pzg-ref--cta-phone{padding:28px;min-height:0;gap:20px;grid-template-columns:44% minmax(0,1fr)}
 .pzg-ref-cta-copy{padding:16px 0;font-size:16px}
 .pzg-ref-cta-copy h2{font-size:26px}
 .pzg-ref .pzg-ref-button{font-size:14px;min-height:44px;margin-top:24px;padding:12px 22px}
 .pzg-ref--why-worth{margin-top:24px!important;min-height:0;grid-template-columns:40% 60%}
 .pzg-ref-why-title{padding:36px 20px 86px}
 .pzg-ref-why-title h2{font-size:30px}
 .pzg-ref-why-title img{width:26px;height:64px;bottom:20px;right:20px}
 .pzg-ref-why-copy{padding:28px;font-size:16px;line-height:1.5}
 .pzg-ref--text-media{margin-top:40px!important;grid-template-columns:55% 45%;min-height:0;padding:24px 0 28px}
 .pzg-ref-startee-copy{padding:0}
 .pzg-ref-startee-copy h2{font-size:26px}
 .pzg-ref-subtitle{display:none}
 .pzg-ref-startee-body{font-size:16px;line-height:1.5;margin-top:22px;max-width:none}
 .pzg-ref-startee-visual{align-self:center;min-height:430px}
 .pzg-ref .pzg-ref-phone,.pzg-ref-phone-device{width:160px;left:50%;transform:translateX(-50%);top:24px}
 .pzg-ref .pzg-ref-dome{display:none}
 .pzg-ref-dots{left:10%;top:260px}
 .pzg-ref--teacher{padding-top:36px}
 .pzg-ref-icon-heading{gap:16px;margin-left:0!important}
 .pzg-ref-round-icon{width:54px;height:54px}
 .pzg-ref-question{font-size:40px}
 .pzg-ref-teacher-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:24px;padding-bottom:36px;gap:20px;align-items:center}
 .pzg-ref-laptop{margin:0;width:100%}
 .pzg-ref-teacher-copy{padding:0;font-size:16px;line-height:1.5}
 .pzg-ref--supporters{grid-template-columns:1fr 1fr;padding:16px;gap:16px}
 .pzg-ref-support-copy{padding:0}
 .pzg-ref-support-copy h2{font-size:21px}
 .pzg-ref-support-copy p,.pzg-ref-support-partner p,.pzg-ref-support-partner h3{font-size:13px;line-height:1.4}
 .pzg-ref-support-partner{padding:16px;gap:16px}
 .pzg-ref-support-partner h3{margin-bottom:8px}
 .pzg-ref--faq-tabs{padding:28px 0 40px}
 .pzg-ref-faq-content{margin:20px 0 0}
 .pzg-ref-tabs{gap:8px 20px;margin:0 0 20px}
 .pzg-ref-tabs button{font-size:clamp(13px,var(--pzg-faq-category-size,16px),18px);min-height:44px}
 .pzg-ref-tab-panel details{font-size:inherit}
 .pzg-ref-tab-panel summary{min-height:44px;padding:8px 28px 8px 0;font-size:clamp(16px,var(--pzg-faq-question-size,18px),22px)}
 .pzg-ref-tab-panel summary::after{top:12px;width:10px;height:10px}
 .pzg-ref-tab-panel details>div{font-size:clamp(14px,var(--pzg-faq-answer-size,16px),20px)}
}
@container pzg-ref-canvas (max-width:580px){
 .pzg-ref-hero-card{display:flex;flex-direction:column;padding:24px;gap:28px}
 .pzg-ref-hero-visual{align-items:center}
 .pzg-ref-logo{width:220px}
 .pzg-ref .pzg-ref-hero-photo{width:220px}
 .pzg-ref-hero-copy h1{font-size:27px}
 .pzg-ref-audience-grid{grid-template-columns:1fr;gap:28px}
 .pzg-ref-audience-grid figure{max-width:340px;margin:auto;width:100%}
 .pzg-ref-audience-grid figcaption{font-size:15px}
 .pzg-ref--cta-phone,.pzg-ref--why-worth,.pzg-ref--text-media,.pzg-ref-teacher-grid,.pzg-ref--supporters{grid-template-columns:1fr}
 .pzg-ref-cta-media img{width:240px}
 .pzg-ref-cta-copy{padding:0}
 .pzg-ref-why-title{min-height:200px;padding:32px}
 .pzg-ref-why-title h2{font-size:34px}
 .pzg-ref-why-copy{padding:24px}
 .pzg-ref-startee-visual{min-height:440px;margin-top:20px}
 .pzg-ref .pzg-ref-phone,.pzg-ref-phone-device{width:185px}
 .pzg-ref .pzg-ref-dome{display:none}
 .pzg-ref-dots{left:15%;top:285px}
 .pzg-ref-icon-heading{font-size:24px!important}
 .pzg-ref-laptop{max-width:380px;margin:0 auto}
 .pzg-ref-support-partner{justify-content:space-around}
}

@media(max-width:899px){.pzg-ref-feature-front span{white-space:normal}}
@container pzg-ref-canvas (max-width:899px){.pzg-ref-feature-front span{white-space:normal}}

.pzg-ref-round-icon img{display:block;width:52%;height:52%;object-fit:contain;margin:0 auto}
/* Wymiary symboli wynikają bezpośrednio z ramek warstw PSD względem koła 130 px.
 * Kwadratowy box + object-fit zachowuje naturalną proporcję każdego znaku. */
.pzg-ref-round-icon--student .pzg-ref-round-symbol{width:69.2%;height:69.2%;transform:none}
.pzg-ref-round-icon--teacher .pzg-ref-round-symbol{width:63.8%;height:63.8%;transform:none}
.pzg-ref-round-icon--faq .pzg-ref-round-symbol,.pzg-ref-question .pzg-ref-round-symbol{width:63.1%;height:63.1%;transform:none}

/* Wszystkie cztery SVG pochodzą z jednego zestawu projektowego i mają ten sam canvas.
 * Wspólny box 520×500 jednostek został skalibrowany do makiety: powiększa realny
 * rysunek ok. 40% względem alpha57, bez osobnego skalowania poszczególnych ikon. */
@media(min-width:900px){.pzg-ref-feature .pzg-ref-feature-icon{width:calc(520 * var(--u));height:calc(500 * var(--u));margin-top:0}}
@media(max-width:899px){.pzg-ref-cta-media{padding-left:0;justify-content:center}}
@container pzg-ref-canvas (max-width:899px){.pzg-ref-cta-media{padding-left:0;justify-content:center}.pzg-ref-feature img{width:100px!important;height:105px!important;margin-top:0!important}}

/* Ruch i szerokość sekcji projektu; przy ograniczonym ruchu treść pozostaje nieruchoma. */
.pzg-ref--teacher,.pzg-ref--supporters,.pzg-ref--faq-tabs{max-width:calc(100vw - 32px)}
@media(min-width:900px){.pzg-ref--cta-phone{--pzg-cta-u:min(.0265816vw,.67px);width:min(89.4vw,2255px);max-width:none!important}.pzg-ref--why-worth{max-width:none!important}}
@keyframes pzg-ref-hero-enter-left{from{opacity:0;transform:translateX(-42px)}to{opacity:1;transform:translateX(0)}}
@keyframes pzg-ref-hero-enter-right{from{opacity:0;transform:translateX(42px)}to{opacity:1;transform:translateX(0)}}
@keyframes pzg-ref-phones-float{0%,100%{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-10px) rotate(-.5deg)}}
@media(prefers-reduced-motion:no-preference){
 body:not(.ss-wcag-animations-disabled) .pzg-ref--hero.is-enhanced .pzg-ref-hero-visual{animation:pzg-ref-hero-enter-left .8s cubic-bezier(.2,.7,.2,1) both}
 body:not(.ss-wcag-animations-disabled) .pzg-ref--hero.is-enhanced .pzg-ref-hero-copy{animation:pzg-ref-hero-enter-right .8s cubic-bezier(.2,.7,.2,1) .12s both}
 body:not(.ss-wcag-animations-disabled) .pzg-ref--cta-phone .pzg-ref-cta-media img{animation:pzg-ref-phones-float 5s ease-in-out infinite}
 body:not(.ss-wcag-animations-disabled) .pzg-ref .pzg-ref-button{transition:transform .25s ease,box-shadow .25s ease,background-color .25s ease}
 body:not(.ss-wcag-animations-disabled) .pzg-ref .pzg-ref-button:hover,body:not(.ss-wcag-animations-disabled) .pzg-ref .pzg-ref-button:focus-visible{transform:translateY(-4px) scale(1.055);box-shadow:0 12px 25px rgba(70,49,195,.24);background:#4327dc}
}

@media(max-width:899px){.pzg-ref .pzg-ref-dome{max-width:100%}}
@container pzg-ref-canvas (max-width:899px){.pzg-ref .pzg-ref-dome{max-width:100%}}

/* Telefon: pełna szerokość treści, kompaktowe menu i krótsza galeria odbiorców. */
@media (max-width:600px){
 .pzg-ref:not(.pzg-ref--hero){width:100%;max-width:100%}
 .pzg-ref--nav{padding:12px 0 16px}
 .pzg-ref-nav{width:100%;padding:5px;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-width:thin;-webkit-overflow-scrolling:touch;border-radius:12px}
 .pzg-ref-nav ul{width:max-content;min-width:100%;flex-wrap:nowrap;justify-content:flex-start;gap:4px}
 .pzg-ref-nav li{flex:none}
 .pzg-ref-nav a{min-height:44px;padding:9px 13px;font-size:13px}
 .pzg-ref--nav.is-floating .pzg-ref-nav{box-shadow:0 5px 18px rgba(37,34,110,.16)}
 .pzg-ref--for-who{padding-top:32px}
 .pzg-ref-audience-grid{gap:24px}
 .pzg-ref-audience-grid img{aspect-ratio:1/1;object-position:center 35%}
 .pzg-ref-audience-grid figcaption{margin-top:10px;line-height:1.35}
 .pzg-ref--cta-phone{padding:24px;gap:12px}
 .pzg-ref-cta-media img{width:min(100%,270px)}
 .pzg-ref-cta-copy h2{font-size:clamp(24px,7vw,30px)}
 .pzg-ref-cta-copy p{line-height:1.4}
 .pzg-ref .pzg-ref-button{min-height:44px;margin-top:20px}
 .pzg-ref--why-worth{margin-top:18px!important}
 .pzg-ref-why-title{min-height:170px;padding:24px}
 .pzg-ref-why-copy{padding:24px;font-size:15px;line-height:1.48}
 .pzg-ref--text-media{margin-top:36px!important}
 .pzg-ref-startee-body{margin-top:20px}
 .pzg-ref--teacher{padding-top:28px}
 .pzg-ref-teacher-grid{margin-top:18px;padding-bottom:32px}
 .pzg-ref-tabs{display:flex;flex-wrap:nowrap;gap:18px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;-webkit-overflow-scrolling:touch;padding-bottom:6px}
 .pzg-ref-tabs button{flex:none;white-space:nowrap}
}

/* Nagłówek STARTEE korzysta ze wspólnej osi ikon; symbol ucznia ma własny SVG. */
.pzg-ref-startee-heading-row{display:flex;align-items:center;gap:calc(68 * var(--u));margin-left:0}
.pzg-ref-startee-heading-row h2{min-width:0}
.pzg-ref-startee-heading-row .pzg-ref-round-icon{width:calc(234 * var(--u));height:calc(234 * var(--u))}
@media (max-width:899px){.pzg-ref-startee-heading-row{margin-left:0;gap:16px}.pzg-ref-startee-heading-row .pzg-ref-round-icon{width:54px;height:54px}}

/* Mobilna nawigacja: jeden przyklejany przycisk i rozwijana lista kotwic. */
.pzg-ref-nav-toggle{display:none}
@media (max-width:600px){
 .pzg-ref--nav.is-enhanced .pzg-ref-nav-toggle{display:flex;align-items:center;gap:12px;width:100%;min-height:48px;padding:10px 16px;border:0;border-radius:12px;background:#ededff;color:var(--ink);font-size:15px;font-weight:700;text-align:left}
 .pzg-ref-nav-toggle-icon{display:flex;flex-direction:column;gap:4px;width:22px;flex:none}
 .pzg-ref-nav-toggle-icon span{display:block;width:22px;height:2px;border-radius:2px;background:currentColor}
 .pzg-ref--nav.is-enhanced .pzg-ref-nav{display:none}
 .pzg-ref--nav.is-enhanced.is-menu-open .pzg-ref-nav{display:block;position:absolute;top:calc(100% - 8px);left:0;z-index:2;width:100%;max-height:min(60vh,360px);overflow-x:hidden;overflow-y:auto;padding:7px;box-shadow:0 10px 26px rgba(37,34,110,.19)}
 .pzg-ref--nav.is-enhanced.is-menu-open .pzg-ref-nav ul{width:100%;min-width:0;flex-direction:column;align-items:stretch;gap:2px}
 .pzg-ref--nav.is-enhanced.is-menu-open .pzg-ref-nav li{width:100%}
 .pzg-ref--nav.is-enhanced.is-menu-open .pzg-ref-nav a{width:100%;font-size:15px}
 .pzg-ref--cta-phone .pzg-ref-button{display:flex;width:max-content;max-width:100%;margin-inline:auto}
}
@media (max-width:600px){.editor-styles-wrapper .pzg-ref--nav .pzg-ref-nav{display:block!important}.editor-styles-wrapper .pzg-ref--nav .pzg-ref-nav-toggle{display:none!important}}
/* Short, gentle movement followed by a long rest. */
@keyframes pzg-question-shake{0%,8%,100%{transform:rotate(0)}2%{transform:rotate(-4deg)}4%{transform:rotate(4deg)}6%{transform:rotate(-2deg)}}
@media(prefers-reduced-motion:no-preference){body:not(.ss-wcag-animations-disabled) .pzg-ref-why-mark{transform-origin:50% 85%;animation:none}body:not(.ss-wcag-animations-disabled) .pzg-ref-why-title[data-pzg-reveal="visible"] .pzg-ref-why-mark{animation:pzg-question-shake 7s ease-in-out .2s infinite}}


/* 0.9.37: CTA Hero – wspólne sterowanie rozmiarem i pozycją w edytorze oraz na froncie. */
.pzg-ref--hero .pzg-ref-hero-cta{
 margin-top:var(--pzg-ref-hero-cta-margin,28px);
 width:100%;
}
.pzg-ref--hero .pzg-ref-hero-cta--left{text-align:left}
.pzg-ref--hero .pzg-ref-hero-cta--center{text-align:center}
.pzg-ref--hero .pzg-ref-hero-cta--right{text-align:right}
.pzg-ref--hero .pzg-ref-hero-button{
 display:inline-flex;
 align-items:center;
 justify-content:center;
 width:min(var(--pzg-ref-hero-cta-width,210px),100%);
 min-width:0;
 min-height:var(--pzg-ref-hero-cta-height,64px);
 margin:0;
 padding:10px 18px;
 font-size:var(--pzg-ref-hero-cta-font,18px);
 line-height:1.15;
 text-align:center;
 text-decoration:none;
 white-space:normal;
}
@media(max-width:899px){
 .pzg-ref--hero .pzg-ref-hero-cta{margin-top:min(var(--pzg-ref-hero-cta-margin,28px),36px)}
 .pzg-ref--hero .pzg-ref-hero-button{width:min(var(--pzg-ref-hero-cta-width,210px),100%)}
}



/* Alpha16 – student app section fine-tuning */
@media (min-width: 900px){
  .pzg-ref--text-media{
    min-height: calc(1420 * var(--u));
    padding-top: calc(110 * var(--u));
    padding-bottom: calc(145 * var(--u));
  }
  .pzg-ref--text-media .pzg-ref-icon-heading,
  .pzg-ref--text-media .pzg-ref-startee-heading-row{
    gap: calc(42 * var(--u));
    min-height: calc(170 * var(--u));
    align-items: center;
  }
  .pzg-ref--text-media .pzg-ref-round-icon,
  .pzg-ref--text-media .pzg-ref-startee-heading-row .pzg-ref-round-icon{
    width: calc(170 * var(--u));
    height: calc(170 * var(--u));
  }
  .pzg-ref--text-media .pzg-ref-round-icon--student .pzg-ref-round-symbol{
    width: 69.2%;
    height: 69.2%;
  }
  .pzg-ref-startee-copy{
    padding-right: calc(70 * var(--u));
  }
  .pzg-ref-startee-visual{
    min-height: calc(1240 * var(--u));
  }
  .pzg-ref .pzg-ref-phone,
  .pzg-ref-phone-device{
    top: calc(64 * var(--u));
    left: calc(670 * var(--u));
    width: calc(525 * var(--u));
    height: auto;
    max-width: none;
  }
  .pzg-ref-dots{
    left: calc(430 * var(--u));
    top: calc(905 * var(--u));
  }
}


/* Alpha38 – student app section alignment to PSD */
@media (min-width: 900px){
  .pzg-ref--text-media{
    --pzg-student-copy-top: calc(57 * var(--pzg-01c-u));
    --pzg-student-copy-bottom: calc(28 * var(--pzg-01c-u));
    --pzg-student-phone-top: calc(57 * var(--pzg-01c-u));
    --pzg-student-phone-bottom: calc(16 * var(--pzg-01c-u));
    --pzg-student-phone-w: calc(650 * var(--pzg-01c-u));
    --pzg-student-dots-left: calc(118 * var(--pzg-01c-u));
    --pzg-student-dots-top: calc(805 * var(--pzg-01c-u));
    --pzg-student-dots-w: calc(150 * var(--pzg-01c-u));
    --pzg-student-dots-h: calc(200 * var(--pzg-01c-u));
  }
  .pzg-ref--text-media .pzg-ref-startee-copy{
    padding-top: var(--pzg-student-copy-top);
    padding-bottom: var(--pzg-student-copy-bottom);
  }
  .pzg-ref--text-media .pzg-ref-startee-body{margin-top: calc(156 * var(--pzg-01c-u));}
  .pzg-ref--text-media .pzg-ref-startee-visual{
    position: relative;
    align-self: stretch;
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    padding: var(--pzg-student-phone-top) 0 var(--pzg-student-phone-bottom) calc(286 * var(--pzg-01c-u));
    min-height: 0;
  }
  .pzg-ref--text-media .pzg-ref-phone,
  .pzg-ref--text-media .pzg-ref-phone-device{
    position: relative;
    inset: auto;
    transform: none;
    width: var(--pzg-student-phone-w);
    max-width: none;
    margin: 0;
    z-index: 2;
  }
  .pzg-ref--text-media .pzg-ref-dots{
    display: block;
    left: var(--pzg-student-dots-left);
    top: var(--pzg-student-dots-top);
    bottom: auto;
    width: var(--pzg-student-dots-w);
    height: var(--pzg-student-dots-h);
    background-repeat: no-repeat;
    background-size: calc(14 * var(--pzg-01c-u)) calc(14 * var(--pzg-01c-u));
    background-image:
      radial-gradient(circle, #563bfa 0 48%, transparent 55%), radial-gradient(circle, #563bfa 0 48%, transparent 55%), radial-gradient(circle, #563bfa 0 48%, transparent 55%),
      radial-gradient(circle, #563bfa 0 48%, transparent 55%), radial-gradient(circle, #563bfa 0 48%, transparent 55%), radial-gradient(circle, #563bfa 0 48%, transparent 55%),
      radial-gradient(circle, #563bfa 0 48%, transparent 55%), radial-gradient(circle, #563bfa 0 48%, transparent 55%), radial-gradient(circle, #563bfa 0 48%, transparent 55%),
      radial-gradient(circle, #563bfa 0 48%, transparent 55%), radial-gradient(circle, #563bfa 0 48%, transparent 55%), radial-gradient(circle, #563bfa 0 48%, transparent 55%);
    background-position:
      0 0, 50% 0, 100% 0,
      0 33.333%, 50% 33.333%, 100% 33.333%,
      0 66.666%, 50% 66.666%, 100% 66.666%,
      0 100%, 50% 100%, 100% 100%;
    z-index: 0;
  }
}

.pzg-ref-feature-mobile-front,.pzg-ref-feature-description{display:none}

/* Alpha78: optional image disclosure; no layout changes when the field is empty. */
.pzg-ref--hero .pzg-ref-hero-caption {
  width:calc(842 * var(--u));
  max-width:100%;
  margin:8px 0 0 calc(112 * var(--u));
  padding:0;
  color:#374151;
  font-size:13px;
  font-weight:400;
  line-height:1.4;
  text-align:center;
  overflow-wrap:anywhere;
}
@media(max-width:899px) {
  .pzg-ref--hero .pzg-ref-hero-caption {width:100%;margin-left:0}
}
@media(max-width:580px) {
  .pzg-ref--hero .pzg-ref-hero-caption {width:220px}
}
@container pzg-ref-canvas (max-width:899px) {
  .pzg-ref--hero .pzg-ref-hero-caption {width:100%;margin-left:0}
}
@container pzg-ref-canvas (max-width:580px) {
  .pzg-ref--hero .pzg-ref-hero-caption {width:220px}
}

/* Alpha79: opt-in labels stay inside the image, independent of image cropping. */
.pzg-ref .pzg-ref-ai-media {position:relative;min-width:0}
.pzg-ref .pzg-ref-ai-media--audience > img {display:block}
.pzg-ref--hero .pzg-ref-ai-media--hero {flex-shrink:0;overflow:hidden}
.pzg-ref--hero .pzg-ref-ai-media--hero > .pzg-ref-ai-media__image {
  display:block;width:100%;height:100%;aspect-ratio:1;object-fit:cover;border-radius:50%;margin:0;
}
.pzg-ref .pzg-ref-ai-label {
  position:absolute;z-index:1;right:10px;bottom:10px;
  display:flex;align-items:center;gap:5px;
  max-width:calc(100% - 20px);padding:4px 8px 4px 4px;
  border-radius:6px;background:#fff;color:#1d1d1b;
  box-shadow:0 1px 5px rgb(0 0 0 / .16);
  font-family:inherit;font-size:12px;font-weight:400;line-height:1.25;text-align:left;
  box-sizing:border-box;white-space:normal;overflow-wrap:normal;pointer-events:none;
}
.pzg-ref .pzg-ref-ai-label > span {min-width:0}
.pzg-ref .pzg-ref-ai-label > .pzg-ref-ai-label__icon {
  display:block;flex:0 0 32px;width:32px;height:32px;
  max-width:none;aspect-ratio:1;object-fit:contain;margin:0;border-radius:0;
}
.pzg-ref--hero .pzg-ref-ai-media--hero .pzg-ref-ai-label {
  right:auto;left:50%;bottom:12%;transform:translateX(-50%);
  width:max-content;max-width:78%;
}

/* Alpha80: official SVG variants, with no extra panel, shadow or text. */
.pzg-ref .pzg-ref-ai-label.pzg-ref-ai-label--svg {
  display:block;width:154px;max-width:calc(100% - 16px);
  padding:0;background:transparent;box-shadow:none;border-radius:0;
  right:8px;bottom:8px;
}
.pzg-ref .pzg-ref-ai-label.pzg-ref-ai-label--basic {width:48px}
.pzg-ref .pzg-ref-ai-label--svg > .pzg-ref-ai-label__asset {
  display:block;width:100%;height:auto;max-width:100%;
  aspect-ratio:auto;object-fit:contain;border-radius:0;margin:0;
}
.pzg-ref--hero .pzg-ref-ai-media--hero .pzg-ref-ai-label--svg {
  right:auto;bottom:10%;width:154px;max-width:76%;
}

.pzg-ref--hero .pzg-ref-ai-media--hero .pzg-ref-ai-label--basic {width:48px}
/* ==================== VIDEO / DOWNLOAD RESOURCE CARDS ==================== */
/* Resource sections based on the supplied PSD. All rules are scoped to PZG. */
.pzg-resources{--pzg-resource-blue:#0032b4;--pzg-resource-violet:#3741e6;--pzg-resource-card:#e6ebff;--pzg-resource-heading:#3741e6;--pzg-resource-icon-bg:#0032b4;box-sizing:border-box;width:min(76vw,1425px);margin:48px auto;padding:0;color:var(--pzg-resource-blue);font-family:Montserrat,Montserrat,sans-serif;font-weight:500;scroll-margin-top:160px}
.pzg-resources *,.pzg-resources *::before,.pzg-resources *::after{box-sizing:border-box}
.pzg-resources [hidden]{display:none!important}
.pzg-resources__header{display:flex;align-items:flex-start;gap:26px;margin:0 0 32px}
.pzg-resources__heading-icon{display:grid;place-items:center;flex:none;width:64px;height:64px;border-radius:50%;background:var(--pzg-resource-icon-bg);color:#fff;line-height:0}
.pzg-resources--downloads .pzg-resources__heading-icon{background:var(--pzg-resource-icon-bg)}
.pzg-resources__heading-icon svg,.pzg-resources__heading-icon img{display:block;width:34px;height:34px;object-fit:contain;margin:0}
.pzg-resources h2{margin:2px 0 0;padding:0;font:700 clamp(26px,2.2vw,44px)/1.15 Montserrat,Montserrat,sans-serif;color:var(--pzg-resource-heading);text-transform:none;letter-spacing:0}
.pzg-resources__header p{margin:7px 0 0;font-size:clamp(15px,1.3vw,23px);line-height:1.4;color:inherit}
.pzg-resources__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:stretch}
.pzg-resources--downloads .pzg-resources__grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.pzg-resource-card{display:flex;flex-direction:column;min-width:0;background:var(--pzg-resource-card);border:1px solid transparent;border-radius:12px;padding:20px;overflow:hidden;color:var(--pzg-resource-blue)}
.pzg-resource-card__media{position:relative;aspect-ratio:16/9;overflow:hidden;border-radius:9px;background:#211044}
.pzg-resource-card__media video,.pzg-resource-card__media iframe{display:block;width:100%;height:100%;border:0;object-fit:contain}
.pzg-resource-card__play{display:block;position:relative;width:100%;height:100%;border:0;padding:0;margin:0;cursor:pointer;background:#211044;color:#fff}
.pzg-resource-card__play img{display:block;width:100%;height:100%;object-fit:cover;margin:0;border:0}
.pzg-resource-card__play>span{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:64px;height:44px;border-radius:13px;background:#f40028;color:#fff;font-size:25px;box-shadow:0 3px 15px #0003;transition:background-color .18s ease,scale .18s ease}
.pzg-resource-card__play:hover>span{background:#d80024;scale:1.06}
.pzg-resource-card__text{padding-top:24px;flex:1}
.pzg-resource-card h3{position:relative;margin:0;padding:0;font:700 clamp(15px,1.1vw,20px)/1.35 Montserrat,Montserrat,sans-serif;color:inherit;text-transform:none;letter-spacing:0}
.pzg-resources--videos .pzg-resource-card h3{padding-left:31px}
.pzg-resource-card__triangle{position:absolute;left:0;top:0;color:var(--pzg-resource-violet);font-size:17px}
.pzg-resource-card__text p{margin:12px 0 0;font-size:15px;line-height:1.5;color:inherit}
.pzg-resources--videos .pzg-resource-card{padding-bottom:30px}
.pzg-resources--downloads .pzg-resource-card{min-height:240px;padding:30px;align-items:flex-start}
.pzg-resource-card__file-icon{position:relative;display:grid;place-items:center;width:48px;height:54px;color:var(--pzg-resource-blue)}
.pzg-resource-card__file-icon svg{width:42px;height:48px;background:#fff;border-radius:3px}
.pzg-resource-card__file-icon small{position:absolute;left:0;bottom:0;padding:2px 4px;background:#df3654;border-radius:2px;color:#fff;font:700 10px/1.2 sans-serif;max-width:54px}
.pzg-resource-card__custom-icon{display:block;width:48px;height:54px;object-fit:contain;margin:0}
.pzg-resource-card__download{display:inline-flex;gap:7px;align-items:center;justify-content:center;margin-top:28px;padding:11px 16px;min-height:44px;border-radius:999px;background:var(--pzg-resource-violet);color:#fff!important;text-decoration:none!important;font:700 14px/1.3 Montserrat,Montserrat,sans-serif;transition:background-color .18s ease,transform .18s ease}
.pzg-resource-card__download:hover{background:#3320ca;transform:translateY(-2px)}
.pzg-resources :is(button,a):focus-visible{outline:3px solid #e45358;outline-offset:3px}
.pzg-resources__pagination{display:flex;justify-content:center;align-items:center;gap:8px;flex-wrap:wrap;margin-top:24px}
.pzg-resources__pagination button{display:grid;place-items:center;width:36px;height:36px;border:0;padding:0;border-radius:50%;background:transparent;color:var(--pzg-resource-blue);cursor:pointer;font:700 22px/1 sans-serif}
.pzg-resources__pagination button[data-page]::before{content:'';width:12px;height:12px;border-radius:50%;background:#e4e8ff;transition:background-color .16s ease,transform .16s ease}
.pzg-resources__pagination button[aria-current]::before{background:var(--pzg-resource-violet);transform:scale(1.15)}
.pzg-resources--downloads .pzg-resources__pagination button[aria-current]::before{background:var(--pzg-resource-blue)}
.pzg-resources__pagination button:disabled{opacity:.3;cursor:default}
.pzg-resources__status{position:absolute!important;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.pzg-resources__empty{padding:20px;border:1px dashed #a4a8d6;border-radius:8px;font-size:15px;line-height:1.5;color:inherit;background:#f4f5ff}
@media(max-width:1000px){.pzg-resources__grid,.pzg-resources--downloads .pzg-resources__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pzg-resources__header{gap:18px}.pzg-resources__heading-icon{width:52px;height:52px}.pzg-resources h2{font-size:30px}}
@media(max-width:600px){.pzg-resources{width:calc(100% - 32px);margin:32px auto}.pzg-resources__grid,.pzg-resources--downloads .pzg-resources__grid{grid-template-columns:minmax(0,1fr);gap:16px}.pzg-resources__header{gap:14px;margin-bottom:24px}.pzg-resources__heading-icon{width:44px;height:44px}.pzg-resources__heading-icon svg,.pzg-resources__heading-icon img{width:26px;height:26px}.pzg-resources h2{font-size:26px}.pzg-resources--downloads .pzg-resource-card{min-height:210px;padding:24px}.pzg-resource-card h3{font-size:17px}}
@media(prefers-reduced-motion:reduce){.pzg-resources *{transition:none!important;animation:none!important}}
body.ss-wcag-animations-disabled .pzg-resources *{transition:none!important;animation:none!important}

.pzg-resources--downloads{display:flex;flex-direction:column}.pzg-resources--downloads .pzg-resources__header{order:0}.pzg-resources--downloads .pzg-resources__pagination{order:1;margin-top:0;margin-bottom:20px}.pzg-resources--downloads .pzg-resources__grid{order:2}
@media(max-width:1000px){.pzg-resources{width:calc(100vw - 32px);max-width:calc(100vw - 32px)}}

.pzg-resource-card__media noscript a{position:absolute;inset:0;z-index:2;display:grid;place-items:center;background:#211044bb;color:#fff;text-align:center;padding:20px}
/* Shared heading geometry with FAQ / Panel nauczyciela. */
.pzg-resources{--u:var(--pzg-ref-unit,min(.0265816vw,.5px));position:relative;left:50%;transform:translateX(-50%);width:calc(3363 * var(--u));max-width:calc(100vw - 32px);margin-left:0;margin-right:0}
.pzg-resources__header{gap:calc(68 * var(--u));margin-left:calc(58 * var(--u));align-items:flex-start}
.pzg-resources__heading-icon{width:calc(234 * var(--u));height:calc(234 * var(--u));background:var(--pzg-resource-icon-bg)}
.pzg-resources--downloads .pzg-resources__heading-icon{background:var(--pzg-resource-icon-bg)}
.pzg-resources__heading-icon svg,.pzg-resources__heading-icon img{width:58%;height:64%;object-fit:contain}
.pzg-resources h2{min-height:calc(234 * var(--u));display:flex;align-items:center;margin:0;font-size:calc(88 * var(--u));line-height:1.16;color:var(--pzg-resource-heading)}
.pzg-resources__header p{margin-top:0}
.pzg-resources__grid{margin-left:calc(354 * var(--u));margin-right:calc(145 * var(--u))}
.pzg-resources__grid.is-video-carousel{--pzg-video-columns:3;display:flex;gap:var(--pzg-video-gap,22px);overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;position:relative;padding:4px 0 10px}
.is-video-carousel::-webkit-scrollbar{display:none}
.is-video-carousel>.pzg-resource-card{flex:0 0 calc((100% - (var(--pzg-video-columns) - 1) * var(--pzg-video-gap,22px)) / var(--pzg-video-columns));scroll-snap-align:start;scroll-snap-stop:always}
.pzg-resource-card{transition:box-shadow .2s ease,border-color .2s ease}
.pzg-resource-card:hover{border-color:#c5c2ff;box-shadow:inset 0 0 0 1px #d6d3ff}
@keyframes pzg-resource-enter{from{opacity:.3;transform:translateY(10px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:no-preference){body:not(.ss-wcag-animations-disabled) .is-resource-visible .pzg-resources__header{animation:pzg-resource-enter .4s ease both}body:not(.ss-wcag-animations-disabled) .is-resource-visible .pzg-resource-card{animation:pzg-resource-enter .4s ease var(--pzg-card-delay,0ms) backwards}}
@media(max-width:1000px){.pzg-resources__grid.is-video-carousel{--pzg-video-columns:2}}
@media(max-width:899px){.pzg-resources{width:calc(100vw - 32px);max-width:calc(100vw - 32px)}.pzg-resources__header{gap:16px;margin-left:0}.pzg-resources__heading-icon{width:54px;height:54px}.pzg-resources h2{min-height:54px;font-size:24px}.pzg-resources__grid{margin-left:0;margin-right:0}}
@media(max-width:600px){.pzg-resources__grid.is-video-carousel{--pzg-video-columns:1}}

/* 0.9.28: spójna kolorystyka i ikony nagłówka zgodne z PSD / brandbookiem. */
.pzg-resources__heading-icon svg{width:46%;height:46%;display:block;overflow:visible;stroke:#fff;stroke-width:1.85;fill:none}
.pzg-resources__heading-icon svg *{vector-effect:non-scaling-stroke}
.pzg-resources__heading-icon svg.pzg-resource-icon--downloads{width:50%;height:50%}
.pzg-resources__heading-icon img{width:56%;height:56%;object-fit:contain;display:block;margin:0 auto}
.pzg-resources--videos .pzg-resources__heading-icon svg{width:42%;height:42%;transform:translateX(2%)}
.pzg-resources--downloads .pzg-resources__heading-icon svg{width:46%;height:46%;transform:translateY(1%)}
.pzg-resources--videos .pzg-resources__heading-icon img,.pzg-resources--downloads .pzg-resources__heading-icon img{width:56%;height:56%}
.pzg-resources__header > div{min-width:0}
.pzg-resources__header :is(h2,p){overflow-wrap:anywhere}
.pzg-resources__grid.is-video-carousel{-webkit-overflow-scrolling:touch}
.pzg-resources__pagination button[aria-current="true"]{cursor:default}
.pzg-resources__pagination button[aria-current="true"]:focus-visible{outline:3px solid #e45358;outline-offset:3px}
@media (max-width:600px){
  .pzg-resources__heading-icon svg{width:48%;height:48%}
  .pzg-resources__heading-icon svg.pzg-resource-icon--downloads{width:52%;height:52%}
  .pzg-resources__heading-icon img{width:58%;height:58%}
  .pzg-resources__header{align-items:center}
}

/* Symbole nagłówków wycięte z PSD: koło nadal jest jednym elementem CSS.
 * Play: 41 × 46 w kole 128 × 127; dokument: 60 × 77 w kole 128 × 128. */
.pzg-resources--videos .pzg-resources__heading-icon .pzg-resource-heading-symbol--videos{width:36.2%;height:36.2%;transform:none}
.pzg-resources--downloads .pzg-resources__heading-icon .pzg-resource-heading-symbol--downloads{width:60.2%;height:60.2%;transform:none}

/* Dłuższe galerie: pasek paginacji pozostaje pojedynczym rzędem, widocznych jest maks. 5–7 kropek. */
.pzg-resources__pagination{flex-wrap:nowrap;max-width:100%;}
@media(max-width:600px){.pzg-resources__pagination{gap:4px}.pzg-resources__pagination button{width:34px;height:36px;flex:none}}

/* 0.9.33: na froncie sekcje zasobów centrują się względem viewportu, nie węższego kontenera motywu. */
.editor-styles-wrapper .pzg-resources{left:auto;transform:none;width:calc(100% - 32px);max-width:calc(100% - 32px);margin-left:auto;margin-right:auto}

/* The boundary animation controls scroll precisely; restore snapping afterwards. */
.pzg-resources__grid.is-video-wrapping{scroll-snap-type:none!important;scroll-behavior:auto!important}
/* ==================== SHARED UI REFINEMENTS ==================== */
/* Czytelność + spójność wspólnych komponentów PZG.
 * Reguły w tym module są częścią systemu, nie warstwą patchy.
 * Selektory są ograniczone do bloków PZG / strony, na której te bloki występują.
 */

:root{
  --pzg-ui-primary:#3934cc;
  --pzg-ui-blue:#0886ff;
  --pzg-ui-violet:#5038f0;
  --pzg-ui-coral:#f0645a;
  --pzg-ui-light:#f3f3ff;
  --pzg-ui-mint:#bdf3ed;
  --pzg-ui-body:clamp(16px,1.05vw,18px);
  --pzg-ui-small:clamp(14px,.9vw,16px);
  --pzg-ui-h2:clamp(28px,2.15vw,42px);
  --pzg-ui-section-gap:clamp(48px,5vw,76px);
}

/* 1–2. Wspólne minimum typograficzne oraz spójne H2. */
.pzg-ref :is(.pzg-ref-startee-body,.pzg-ref-teacher-copy),
.pzg-resources__header p{
  font-size:var(--pzg-ui-body);
  line-height:1.58;
}
.pzg-ref :is(.pzg-ref-icon-heading,.pzg-ref-startee-copy h2),
.pzg-resources h2{
  font-size:var(--pzg-ui-h2);
  line-height:1.2;
}
.pzg-ref-subtitle{
  font-size:clamp(17px,1.2vw,21px)!important;
  line-height:1.45!important;
  opacity:.9;
}

/* 3. Cztery ikony / flip-cardy.
 * Desktop jest kalibrowany bezpośrednio z PSD w 13-reference-layout.scss.
 * Nie nadpisujemy tutaj wysokości, paddingów, pozycji ikon ani podpisów.
 * Dzięki temu front pozostaje zgodny z makietą, a interaktywność jest warstwą webową.
 */
/* Zdjęcia kończą się na tej samej siatce, od której zaczynają się nagłówki poniżej. */
@media (min-width:900px){
  .pzg-ref--for-who{
    width:min(88vw,2400px);
    max-width:none;
  }
}
/* 4. Dla kogo – podpis jest pełnoprawnym elementem karty. */
.pzg-ref-audience-grid figcaption{
  margin-top:clamp(18px,1.3vw,22px);
  font-size:clamp(16px,1.15vw,20px);
  line-height:1.32;
  min-height:2.7em;
  display:flex;
  align-items:flex-start;
  justify-content:center;
  padding-inline:8px;
}

/* 5. Slider kroków – wyraźna nawigacja, duże cele kliknięcia. */
.pzg-ref-step-controls{
  gap:12px;
  margin-top:14px;
  font-size:15px;
  font-weight:700;
}
.pzg-ref-step-controls button{
  width:46px;
  height:46px;
  border:2px solid var(--pzg-ui-blue);
  transition:background-color .18s ease,color .18s ease,transform .18s ease;
}
.pzg-ref-step-controls button:not(:disabled):hover{
  background:var(--pzg-ui-blue);
  color:#fff;
  transform:translateY(-1px);
}
.pzg-ref-step-progress{min-width:56px;text-align:center;color:var(--pzg-ui-primary)}
.pzg-ref-step-dots{display:flex;gap:8px;align-items:center;justify-content:center}
.pzg-ref-step-dot{position:relative;width:34px!important;height:34px!important;min-width:34px;border:0!important;padding:0;background:transparent!important;border-radius:50%}
.pzg-ref-step-dot::before{content:'';position:absolute;left:50%;top:50%;width:11px;height:11px;border-radius:50%;background:#dfe2ff;transform:translate(-50%,-50%);transition:background-color .18s ease,transform .18s ease}
.pzg-ref-step-dot[aria-current="true"]::before{background:var(--pzg-ui-violet);transform:translate(-50%,-50%) scale(1.28)}

/* 6. CTA – przycisk ma wyraźnie większy ciężar wizualny. */
.pzg-ref .pzg-ref-button{
  min-height:52px;
  padding:14px 28px;
  font-size:clamp(15px,1vw,17px);
  box-shadow:0 8px 20px rgba(80,56,240,.16);
}
/* HERO: CTA is a deliberate web-only addition. Keep it compact and in the PSD palette. */
.pzg-ref--hero .pzg-ref-hero-button{
  background:var(--pzg-ref-hero-primary,#4f38ef);
  box-shadow:0 6px 16px rgba(79,56,239,.15);
}
@media(prefers-reduced-motion:no-preference){
  body:not(.ss-wcag-animations-disabled) .pzg-ref--hero .pzg-ref-hero-button:hover,
  body:not(.ss-wcag-animations-disabled) .pzg-ref--hero .pzg-ref-hero-button:focus-visible{
    background:#4430d4;
    box-shadow:0 10px 22px rgba(79,56,239,.2);
  }
}

/* 01c: skala z płótna PSD 2814 px; tła pełne, treść 2480 px.
 * Wysokości są minimami, więc własny tekst może wydłużyć sekcję.
 * Hero, menu i niebieskie kafle nie korzystają z tej skali.
 */
.pzg-ref:is(.pzg-ref--for-who,.pzg-ref--steps,.pzg-ref--cta-phone,.pzg-ref--why-worth,.pzg-ref--text-media,.pzg-ref--teacher,.pzg-ref--supporters,.pzg-ref--faq-tabs,.pzg-ref--helpdesk),.pzg-resources{
  --pzg-01c-page-width:var(--pzg-page-width,var(--pzg-ref-viewport,100vw));
  --pzg-01c-guide-width:var(--pzg-grid-width,var(--pzg-master-grid-width,calc(var(--pzg-ref-viewport,100vw) * 2480 / 2814)));
  --pzg-01c-u:min(calc(var(--pzg-01c-guide-width) / 2480),1px);
  --pzg-01c-width:calc(2480 * var(--pzg-01c-u));
  --pzg-01c-gutter:max(calc((var(--pzg-01c-page-width) - var(--pzg-01c-width))/2),20px);
  --pzg-section-title:clamp(26px,calc(72 * var(--pzg-01c-u)),72px);
  --pzg-section-body:clamp(17px,calc(52 * var(--pzg-01c-u)),52px);
  --pzg-section-icon:clamp(48px,calc(130 * var(--pzg-01c-u)),130px);
  --pzg-heading-gap:clamp(16px,calc(48 * var(--pzg-01c-u)),48px);
}
.pzg-ref:is(.pzg-ref--for-who,.pzg-ref--steps,.pzg-ref--cta-phone,.pzg-ref--text-media,.pzg-ref--teacher,.pzg-ref--faq-tabs,.pzg-ref--helpdesk),.pzg-resources{width:var(--pzg-01c-width);max-width:none}
.pzg-ref--for-who h2{font-size:var(--pzg-section-title)}
.pzg-ref-audience-grid figcaption{font-size:clamp(15px,calc(40 * var(--pzg-01c-u)),40px);line-height:1.2;margin-top:calc(44 * var(--pzg-01c-u));min-height:2.4em}
.pzg-ref--steps{padding:calc(82 * var(--pzg-01c-u)) 0 calc(52 * var(--pzg-01c-u))}
.pzg-ref--steps .pzg-ref-step{justify-content:center;gap:calc(52 * var(--pzg-01c-u));min-height:0}
.pzg-ref--steps .pzg-ref-step h2{font-size:clamp(28px,calc(76 * var(--pzg-01c-u)),76px);line-height:1.18}
.pzg-ref--steps .pzg-ref-step-number{width:clamp(64px,calc(196 * var(--pzg-01c-u)),196px);height:clamp(64px,calc(196 * var(--pzg-01c-u)),196px);font-size:clamp(40px,calc(124 * var(--pzg-01c-u)),124px);border-width:clamp(2px,calc(6 * var(--pzg-01c-u)),6px)}
.pzg-ref--cta-phone{grid-template-columns:1fr 1fr;align-items:center;min-height:calc(1344 * var(--pzg-01c-u));padding:calc(191 * var(--pzg-01c-u)) 0 calc(206 * var(--pzg-01c-u));gap:0}
.pzg-ref--cta-phone::before{background:#e9edff}
.pzg-ref--cta-phone .pzg-ref-cta-media{padding:0 0 0 calc(75 * var(--pzg-01c-u));justify-content:flex-start}
.pzg-ref--cta-phone .pzg-ref-cta-media img{width:calc(955 * var(--pzg-01c-u));max-width:100%;max-height:none;height:auto;animation:none!important}
.pzg-ref--cta-phone .pzg-ref-cta-copy{padding:0 0 0 calc(140 * var(--pzg-01c-u));font-size:var(--pzg-section-body)}
.pzg-ref--cta-phone .pzg-ref-cta-copy h2{font-size:clamp(28px,calc(88 * var(--pzg-01c-u)),88px);line-height:1.1;color:#0032b4}
.pzg-ref--cta-phone .pzg-ref-cta-copy p{margin-top:.35em;color:#0032b4;line-height:1.2}
.pzg-ref--cta-phone .pzg-ref-cta-accent{color:#4e34f0}
.pzg-ref--cta-phone .pzg-ref-button{margin-top:calc(141 * var(--pzg-01c-u));font-size:clamp(14px,calc(36 * var(--pzg-01c-u)),36px);min-height:44px;padding:.8em 1.3em;background:#4e34f0;box-shadow:none}
.pzg-ref--why-worth{width:var(--pzg-ref-viewport,100vw)!important;max-width:none!important;margin-top:0!important;grid-template-columns:1fr 1fr;min-height:calc(1000 * var(--pzg-01c-u));background:var(--pzg-why-ref-right-bg,#c0f4ee)}
.pzg-ref--why-worth .pzg-ref-why-title{padding:calc(120 * var(--pzg-01c-u)) 0 calc(120 * var(--pzg-01c-u)) var(--pzg-01c-gutter);border-radius:0 calc(36 * var(--pzg-01c-u)) calc(36 * var(--pzg-01c-u)) 0;background:var(--pzg-why-ref-left-bg,#4e34f0);color:var(--pzg-why-ref-heading,#fff)}
.pzg-ref--why-worth .pzg-ref-why-title h2{font-size:clamp(40px,calc(121 * var(--pzg-01c-u)),121px);line-height:1.1;letter-spacing:0}
.pzg-ref--why-worth .pzg-ref-why-mark{width:calc(145 * var(--pzg-01c-u));height:auto;right:calc(115 * var(--pzg-01c-u));bottom:calc(145 * var(--pzg-01c-u))}
.pzg-ref--why-worth .pzg-ref-why-copy{display:block;padding:calc(120 * var(--pzg-01c-u)) var(--pzg-01c-gutter) calc(108 * var(--pzg-01c-u)) calc(140 * var(--pzg-01c-u));font-size:clamp(17px,calc(50 * var(--pzg-01c-u)),50px);line-height:1.23;font-weight:500;color:var(--pzg-why-ref-body,#0032b4);hyphens:none;overflow-wrap:break-word}
.pzg-ref--why-worth .pzg-ref-why-copy p{max-width:calc(1065 * var(--pzg-01c-u));margin:0}
.pzg-ref--why-worth .pzg-ref-why-copy ul{max-width:calc(1065 * var(--pzg-01c-u));margin:0;padding-left:1.15em}
.pzg-ref--why-worth .pzg-ref-why-copy li+li{margin-top:.45em}
.pzg-ref--text-media{grid-template-columns:1fr 1fr;gap:0;min-height:calc(1668 * var(--pzg-01c-u));margin-top:0!important;padding:calc(145 * var(--pzg-01c-u)) 0 calc(115 * var(--pzg-01c-u));background:transparent}
.pzg-ref--text-media::before{background:var(--pzg-ref-startee-bg,#e9edff)}
.pzg-ref--text-media .pzg-ref-startee-copy{padding:calc(57 * var(--pzg-01c-u)) 0 0}
.pzg-ref--text-media .pzg-ref-startee-heading-row{gap:var(--pzg-heading-gap);min-height:var(--pzg-section-icon)}
.pzg-ref--text-media .pzg-ref-startee-heading-row h2{font-size:var(--pzg-section-title);line-height:1.2}
.pzg-ref--text-media .pzg-ref-startee-heading-row .pzg-ref-round-icon{width:var(--pzg-section-icon);height:var(--pzg-section-icon)}
.pzg-ref--text-media .pzg-ref-startee-body{max-width:calc(1230 * var(--pzg-01c-u));margin-top:calc(170 * var(--pzg-01c-u));font-size:var(--pzg-section-body);line-height:1.2}
.pzg-ref--text-media .pzg-ref-startee-visual{display:flex;align-items:flex-start;justify-content:flex-start;min-height:0;padding:0 0 0 calc(310 * var(--pzg-01c-u));align-self:start}
.pzg-ref--text-media .pzg-ref-phone,.pzg-ref--text-media .pzg-ref-phone-device{position:relative;inset:auto;transform:none;width:calc(679 * var(--pzg-01c-u));max-width:100%;height:auto;margin:0}
.pzg-ref--text-media .pzg-ref-phone-device{aspect-ratio:593/1219;border-width:clamp(5px,calc(12 * var(--pzg-01c-u)),12px);border-radius:clamp(28px,calc(75 * var(--pzg-01c-u)),75px)}
.pzg-ref--text-media .pzg-ref-phone{border-radius:14% / 6.5%}
.pzg-ref--text-media .pzg-ref-phone-device video{object-fit:contain}
.pzg-ref--text-media .pzg-ref-embed{width:100%;margin:0}
.pzg-ref--text-media .pzg-ref-embed iframe{display:block;max-height:none}
.pzg-ref--text-media .pzg-ref-dots{display:block;left:calc(110 * var(--pzg-01c-u));top:auto;bottom:calc(115 * var(--pzg-01c-u));width:calc(220 * var(--pzg-01c-u));height:calc(340 * var(--pzg-01c-u));background-size:calc(40 * var(--pzg-01c-u)) calc(40 * var(--pzg-01c-u));z-index:0}
/* 01c / Panel nauczyciela: układ elastyczny oparty na zasadach PSD.
 * Kolumny mają wspólną wysokość. Lewa kolumna ma nagłówek u góry i laptop u dołu.
 * Minimalna przerwa 189 jednostek PSD jest zachowana, ale przy dłuższym tekście
 * rośnie elastycznie, dzięki czemu dół laptopa zrównuje się z dołem prawej kolumny. */
.pzg-ref--teacher{
  --pzg-teacher-top:calc(248 * var(--pzg-01c-u));
  --pzg-teacher-heading-h:calc(130 * var(--pzg-01c-u));
  --pzg-teacher-min-gap:calc(189 * var(--pzg-01c-u));
  --pzg-teacher-laptop-w:calc(1346 * var(--pzg-01c-u));
  --pzg-teacher-laptop-h:calc(901 * var(--pzg-01c-u));
  --pzg-teacher-bottom:calc(113 * var(--pzg-01c-u));
  --pzg-teacher-copy-w:calc(1039 * var(--pzg-01c-u));
  padding:var(--pzg-teacher-top) 0 var(--pzg-teacher-bottom);
  min-height:calc(1581 * var(--pzg-01c-u));
}
.pzg-ref--teacher .pzg-ref-teacher-grid{
  display:grid;
  grid-template-columns:minmax(0,50%) minmax(0,44%);
  column-gap:6%;
  align-items:stretch;
  margin:0;
  padding:0;
}
.pzg-ref--teacher .pzg-ref-teacher-left{
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:var(--pzg-teacher-min-gap);
  min-width:0;
  min-height:calc(var(--pzg-teacher-heading-h) + var(--pzg-teacher-min-gap) + var(--pzg-teacher-laptop-h));
  height:100%;
}
.pzg-ref--teacher .pzg-ref-icon-heading{
  flex:0 0 var(--pzg-teacher-heading-h);
  min-height:var(--pzg-teacher-heading-h);
  height:var(--pzg-teacher-heading-h);
  margin:0!important;
  gap:var(--pzg-heading-gap);
  align-items:center;
  font-size:var(--pzg-section-title);
  line-height:1.2;
}
.pzg-ref--teacher .pzg-ref-round-icon{width:var(--pzg-section-icon);height:var(--pzg-section-icon)}
.pzg-ref--teacher .pzg-ref-laptop{
  position:relative;
  flex:0 0 auto;
  align-self:flex-start;
  width:var(--pzg-teacher-laptop-w);
  height:var(--pzg-teacher-laptop-h);
  max-width:none;
  margin:0;
  overflow:visible;
}
.pzg-ref--teacher .pzg-ref-laptop>img,
.pzg-ref--teacher .pzg-ref-laptop>.pzg-ref-laptop-frame{
  display:block;
  width:100%;
  height:100%;
  max-width:none;
  object-fit:fill;
}
.pzg-ref--teacher .pzg-ref-teacher-copy{
  align-self:start;
  width:100%;
  max-width:var(--pzg-teacher-copy-w);
  padding:0;
  font-size:var(--pzg-section-body);
  line-height:1.23;
}
/* Alpha84: tekst ACF zawija się między słowami; długie adresy mają fallback. */
.pzg-ref--text-media .pzg-ref-startee-body,
.pzg-ref--text-media .pzg-ref-startee-body *,
.pzg-ref--teacher .pzg-ref-teacher-copy,
.pzg-ref--teacher .pzg-ref-teacher-copy *,
.pzg-oe-text-media .pzg-oe-text-media__body,
.pzg-oe-text-media .pzg-oe-text-media__body *{
  hyphens:none;
  -webkit-hyphens:none;
  word-break:normal;
  overflow-wrap:break-word;
  white-space:normal;
  text-align:left;
}
.pzg-ref--text-media .pzg-ref-startee-body>p:first-child,
.pzg-ref--teacher .pzg-ref-teacher-copy>p:first-child{margin-top:0}
.pzg-ref--text-media .pzg-ref-startee-body>p:last-child,
.pzg-ref--teacher .pzg-ref-teacher-copy>:last-child{margin-bottom:0}
.pzg-ref-teacher-copy ul{display:block;margin-top:1em;list-style:none;padding:0}
.pzg-ref-teacher-copy li{position:relative;margin:0;padding-left:.65em}
.pzg-ref-teacher-copy li::before{content:'–';position:absolute;left:0;color:inherit}
.pzg-ref--supporters{width:var(--pzg-ref-viewport,100vw);max-width:none;min-height:calc(320 * var(--pzg-01c-u));grid-template-columns:minmax(0,50%) minmax(0,44%);gap:6%;padding:calc(56 * var(--pzg-01c-u)) var(--pzg-01c-gutter);background:#0786ff;border-radius:0;color:#fff}
.pzg-ref-support-copy{padding:0}
.pzg-ref-support-heading .pzg-ref-round-icon{display:none}
.pzg-ref-support-copy h2{font-size:clamp(22px,calc(60 * var(--pzg-01c-u)),60px);line-height:1.1;color:#fff}
.pzg-ref-support-copy p{max-width:calc(1083 * var(--pzg-01c-u));font-size:clamp(13px,calc(36 * var(--pzg-01c-u)),36px);line-height:1.2;margin-top:.5em;color:#fff}
.pzg-ref--supporters .pzg-ref-support-partner{width:100%;min-height:calc(232 * var(--pzg-01c-u));justify-self:end;gap:5%;padding:calc(25 * var(--pzg-01c-u));border-radius:calc(28 * var(--pzg-01c-u));box-shadow:none}
.pzg-ref-support-partner img{width:58%;max-width:58%}
.pzg-ref-support-partner h3,.pzg-ref-support-partner p{font-size:clamp(11px,calc(36 * var(--pzg-01c-u)),36px);line-height:1.2}
.pzg-ref-support-partner h3{font-weight:700;margin-bottom:.65em}
.pzg-ref--faq-tabs{padding:calc(170 * var(--pzg-01c-u)) 0 calc(80 * var(--pzg-01c-u))}
.pzg-ref--faq-tabs .pzg-ref-icon-heading{font-size:clamp(24px,calc(62 * var(--pzg-01c-u)),62px);line-height:1.2}
.pzg-resources{margin-top:calc(90 * var(--pzg-01c-u));margin-bottom:calc(85 * var(--pzg-01c-u));--pzg-video-gap:calc(38 * var(--pzg-01c-u));--pzg-resource-card:#e9edff;--pzg-resource-violet:#5031ef;--pzg-resource-blue:#0032b4;--pzg-resource-heading:#0032b4}
.pzg-resources__header{align-items:center;margin:0 0 calc(152 * var(--pzg-01c-u));gap:var(--pzg-heading-gap)}
.pzg-resources__heading-icon{width:var(--pzg-section-icon);height:var(--pzg-section-icon)}
.pzg-resources h2{font-size:var(--pzg-section-title);min-height:0;line-height:1.2}
.pzg-resources__header p{font-size:var(--pzg-section-body);line-height:1.2;margin-top:.25em!important;max-width:none}
.pzg-resources__grid{margin:0;gap:calc(38 * var(--pzg-01c-u))}
.pzg-resources--videos .pzg-resource-card{padding:0;background:transparent;border:0;box-shadow:none}
.pzg-resources--videos .pzg-resource-card__text{min-height:0;padding-top:calc(60 * var(--pzg-01c-u))}
.pzg-resources--videos .pzg-resource-card h3{font-size:clamp(14px,calc(34 * var(--pzg-01c-u)),34px);line-height:1.25;min-height:0;padding-left:2em}
.pzg-resource-card__triangle{font-size:1em}
.pzg-resources--downloads .pzg-resources__header{margin-bottom:calc(48 * var(--pzg-01c-u))}
.pzg-resources--downloads .pzg-resources__grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:calc(37 * var(--pzg-01c-u)) calc(16 * var(--pzg-01c-u))}
.pzg-resources--downloads .pzg-resource-card{min-height:calc(421 * var(--pzg-01c-u));padding:calc(52 * var(--pzg-01c-u)) calc(60 * var(--pzg-01c-u));border:0;border-radius:calc(18 * var(--pzg-01c-u));box-shadow:none}
.pzg-resources--downloads .pzg-resource-card__text{padding-top:calc(40 * var(--pzg-01c-u))}
.pzg-resources--downloads .pzg-resource-card h3{font-size:clamp(15px,calc(35 * var(--pzg-01c-u)),35px);line-height:1.3}
.pzg-resources--downloads .pzg-resource-card__download{min-height:44px;font-size:clamp(14px,calc(28 * var(--pzg-01c-u)),28px);padding:.65em 1em;margin-top:calc(60 * var(--pzg-01c-u));box-shadow:none}
.pzg-resources--downloads .pzg-resource-card__file-icon{color:#f14c72;width:calc(88 * var(--pzg-01c-u));height:calc(97 * var(--pzg-01c-u))}
.pzg-resources--downloads .pzg-resource-card__file-icon svg{width:70%;height:90%}
.pzg-resources--downloads .pzg-resources__pagination{order:3;margin:24px 0 0}
.editor-styles-wrapper .pzg-ref:is(.pzg-ref--for-who,.pzg-ref--steps,.pzg-ref--cta-phone,.pzg-ref--text-media,.pzg-ref--teacher,.pzg-ref--faq-tabs,.pzg-ref--helpdesk),.editor-styles-wrapper .pzg-resources{left:auto;transform:none;width:100%;max-width:100%}
.editor-styles-wrapper .pzg-01c-compact:is(.pzg-ref--cta-phone,.pzg-ref--text-media,.pzg-ref--teacher,.pzg-ref--supporters,.pzg-ref--why-worth,.pzg-ref--helpdesk){min-height:0;padding:32px 20px}
.editor-styles-wrapper .pzg-01c-compact .pzg-ref-startee-visual{padding:0;justify-content:center}
.editor-styles-wrapper .pzg-01c-compact.pzg-ref--teacher .pzg-ref-teacher-grid{grid-template-columns:1fr;gap:28px}
.editor-styles-wrapper .pzg-01c-compact.pzg-ref--teacher .pzg-ref-teacher-left{gap:28px;min-height:0}
.editor-styles-wrapper .pzg-01c-compact.pzg-ref--teacher .pzg-ref-icon-heading{height:auto;min-height:0;flex-basis:auto}
.editor-styles-wrapper .pzg-01c-compact.pzg-ref--teacher .pzg-ref-laptop{width:100%;height:auto;aspect-ratio:1346/901;max-width:100%}
.editor-styles-wrapper .pzg-01c-compact.pzg-ref--teacher .pzg-ref-teacher-copy{width:100%;max-width:100%}
@media(max-width:899px){
  .pzg-ref:is(.pzg-ref--for-who,.pzg-ref--steps,.pzg-ref--cta-phone,.pzg-ref--text-media,.pzg-ref--teacher,.pzg-ref--faq-tabs,.pzg-ref--helpdesk),.pzg-resources{width:calc(100% - 40px);max-width:calc(100% - 40px)}
  .pzg-ref--cta-phone{padding:44px 0;min-height:0}
  .pzg-ref--cta-phone .pzg-ref-cta-copy{padding-left:6%}
  .pzg-ref--why-worth{min-height:0}
  .pzg-ref--why-worth .pzg-ref-why-copy{padding:32px 24px;font-size:17px;line-height:1.45}
  .pzg-ref--why-worth .pzg-ref-why-copy p{max-width:none}
  .pzg-ref--why-worth .pzg-ref-why-title{padding:32px 24px;min-height:240px}
  .pzg-ref--text-media{padding:44px 0;min-height:0}
  .pzg-ref--text-media .pzg-ref-startee-body{max-width:none;margin-top:30px;line-height:1.45}
  .pzg-ref--text-media .pzg-ref-startee-visual{padding-left:14%;align-self:center}
  .pzg-ref--text-media .pzg-ref-phone,.pzg-ref--text-media .pzg-ref-phone-device{width:100%;max-width:300px}
  .pzg-ref--text-media .pzg-ref-dots{display:none}
  .pzg-ref--teacher{padding:56px 0;min-height:0}
  .pzg-ref--teacher .pzg-ref-teacher-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:20px;align-items:stretch}
  .pzg-ref--teacher .pzg-ref-teacher-left{gap:32px;min-height:0}
  .pzg-ref--teacher .pzg-ref-icon-heading{height:auto;min-height:0;flex-basis:auto}
  .pzg-ref--teacher .pzg-ref-laptop{width:100%;height:auto;aspect-ratio:1346/901;max-width:100%}
  .pzg-ref--teacher .pzg-ref-teacher-copy{max-width:none;line-height:1.45}
  .pzg-ref--supporters{padding:24px 20px;min-height:0}
  .pzg-resources__header{margin-bottom:28px}
  .pzg-resources{--pzg-video-gap:16px}
  .pzg-resources__grid{gap:16px}
  .pzg-resources--downloads .pzg-resources__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
  .pzg-resources--downloads .pzg-resource-card{min-height:210px;padding:24px}
  .pzg-resources--downloads .pzg-resource-card__file-icon{width:48px;height:54px}
}
@media(max-width:600px){
  .pzg-ref--steps .pzg-ref-step{gap:16px}
  .pzg-ref--steps .pzg-ref-step h2{font-size:24px;overflow-wrap:anywhere}
  .pzg-ref--cta-phone{grid-template-columns:1fr;gap:32px;padding:36px 0;text-align:center}
  .pzg-ref--cta-phone .pzg-ref-cta-media{justify-content:center;padding:0}
  .pzg-ref--cta-phone .pzg-ref-cta-media img{width:70%;max-width:320px}
  .pzg-ref--cta-phone .pzg-ref-cta-copy{padding:0}
  .pzg-ref--cta-phone .pzg-ref-button{margin-top:28px}
  .pzg-ref--why-worth{grid-template-columns:1fr}
  .pzg-ref--text-media{grid-template-columns:1fr;gap:36px}
  .pzg-ref--text-media .pzg-ref-startee-copy{padding:0}
  .pzg-ref--text-media .pzg-ref-startee-visual{padding:0;justify-content:center}
  .pzg-ref--text-media .pzg-ref-phone,.pzg-ref--text-media .pzg-ref-phone-device{width:65%;max-width:280px}
  .pzg-ref--teacher .pzg-ref-teacher-grid{grid-template-columns:1fr;gap:28px}
  .pzg-ref--teacher .pzg-ref-teacher-left{gap:28px}
  .pzg-ref--teacher .pzg-ref-laptop{width:min(100%,380px);margin-inline:auto}
  .pzg-ref--teacher .pzg-ref-teacher-copy{width:100%}
  .pzg-ref--supporters{grid-template-columns:1fr;gap:24px;padding:28px 20px}
  .pzg-ref-support-copy p{font-size:15px;line-height:1.4}
  .pzg-ref-support-partner h3,.pzg-ref-support-partner p{font-size:13px}
  .pzg-resources--downloads .pzg-resources__grid{grid-template-columns:1fr}
}

/* 15. Formularz CF7 – aktywowane tylko na stronie zawierającej bloki PZG. */
.pzg-oe-page :is(#zglos-szkole,#zglos) > :is(h2,h3),
.pzg-oe-page :is(#zglos-szkole,#zglos) :is(.section-title,.wp-block-heading){
  color:var(--pzg-ui-primary);
  font:700 var(--pzg-ui-h2)/1.2 "Montserrat",Arial,sans-serif;
  text-align:left;
  text-transform:none;
}
.pzg-oe-page .wpcf7{
  max-width:980px;
  margin:var(--pzg-ui-section-gap) auto;
  padding:clamp(26px,4vw,56px);
  border:1px solid #e2e2fb;
  border-radius:24px;
  background:#f8f8ff;
  box-shadow:0 18px 50px rgba(57,52,204,.065);
  font-family:"Montserrat",Arial,sans-serif;
  color:var(--pzg-ui-primary);
}
.pzg-oe-page .wpcf7 :is(input[type="text"],input[type="email"],input[type="tel"],input[type="number"],select,textarea){
  width:100%;
  min-height:52px;
  border:1px solid #cfcff0;
  border-radius:12px;
  background:#fff;
  padding:12px 14px;
  font:500 16px/1.4 "Montserrat",Arial,sans-serif;
  color:#25206f;
  transition:border-color .18s ease,box-shadow .18s ease;
}
.pzg-oe-page .wpcf7 textarea{min-height:130px;resize:vertical}
.pzg-oe-page .wpcf7 :is(input,select,textarea):focus{outline:0;border-color:var(--pzg-ui-violet);box-shadow:0 0 0 3px rgba(80,56,240,.13)}
.pzg-oe-page .wpcf7 .wpcf7-list-item-label,
.pzg-oe-page .wpcf7 .wpcf7-acceptance{font-size:14px;line-height:1.55}
.pzg-oe-page .wpcf7 input[type="checkbox"]{width:20px;height:20px;accent-color:var(--pzg-ui-violet);vertical-align:middle}
.pzg-oe-page .wpcf7 input[type="submit"]{
  min-height:52px;
  border:0;
  border-radius:999px;
  padding:13px 28px;
  background:var(--pzg-ui-violet);
  color:#fff;
  font:700 16px/1.2 "Montserrat",Arial,sans-serif;
  cursor:pointer;
  box-shadow:0 8px 20px rgba(80,56,240,.18);
}
.pzg-oe-page .wpcf7 input[type="submit"]:hover{filter:brightness(.94)}
.pzg-oe-page .wpcf7 .wpcf7-response-output{font-size:15px;line-height:1.5;border-radius:10px;padding:12px 16px}

/* 17 + 19. Sticky nav. Desktop spacing comes directly from PSD in reference layout. */
.pzg-ref-nav a{min-height:48px;display:flex;align-items:center;justify-content:center}
.pzg-ref--nav.is-floating .pzg-ref-nav{box-shadow:0 9px 26px rgba(37,34,110,.16);transition:box-shadow .2s ease,background-color .2s ease}

@media (max-width:899px){
  .pzg-ref-feature-front{font-size:15px}
  .pzg-ref-audience-grid figcaption{font-size:16px}
}
@media (max-width:600px){
  .pzg-ref--features{padding:28px 18px}
  .pzg-ref-feature-grid{grid-template-columns:1fr 1fr;gap:28px 14px}
  .pzg-oe-page .wpcf7{margin:40px 16px;padding:24px 18px;border-radius:18px}
}

@media(prefers-reduced-motion:reduce){
  .pzg-ref-step-controls button,.pzg-ref--nav.is-floating .pzg-ref-nav,.pzg-oe-page .wpcf7 *{transition:none!important}
}
body.ss-wcag-animations-disabled .pzg-ref-step-controls button,
body.ss-wcag-animations-disabled .pzg-ref--nav.is-floating .pzg-ref-nav{transition:none!important}
/* ==================== ALPHA41 / TEACHER ADAPTIVE BOTTOM ALIGNMENT ====================
 * Reguła układu:
 * - prawa kolumna tekstowa wyznacza naturalną wysokość wiersza,
 * - nagłówek lewej kolumny jest zakotwiczony u góry,
 * - laptop jest zakotwiczony do dołu tej samej wysokości,
 * - minimalny odstęp nagłówek -> laptop pochodzi z PSD (189 jednostek),
 * - gdy tekst jest krótszy, runtime proporcjonalnie zmniejsza laptop, zamiast
 *   przesuwać go ręcznym offsetem lub łamać minimalny odstęp.
 */
@media (min-width: 900px){
  .pzg-ref--teacher .pzg-ref-teacher-grid{
    display:grid;
    grid-template-columns:minmax(0,50%) minmax(0,44%);
    column-gap:6%;
    align-items:stretch;
    margin:0;
    padding:0;
  }

  .pzg-ref--teacher .pzg-ref-teacher-left{
    position:relative;
    display:block;
    min-width:0;
    min-height:0;
    height:100%;
  }

  .pzg-ref--teacher .pzg-ref-icon-heading{
    position:relative;
    z-index:2;
    width:100%;
    min-height:var(--pzg-teacher-heading-h);
    height:var(--pzg-teacher-heading-h);
    margin:0!important;
  }

  .pzg-ref--teacher .pzg-ref-laptop{
    position:absolute;
    left:0;
    bottom:0;
    top:auto;
    width:var(--pzg-teacher-effective-laptop-w,var(--pzg-teacher-laptop-w));
    height:var(--pzg-teacher-effective-laptop-h,var(--pzg-teacher-laptop-h));
    max-width:none;
    margin:0;
    overflow:visible;
  }

  .pzg-ref--teacher .pzg-ref-teacher-copy{
    align-self:start;
    width:100%;
    max-width:var(--pzg-teacher-copy-w);
    padding:0;
  }
}
/* ==================== ACCESSIBILITY AND WCAG OVERRIDES ==================== */
/* PZG – warstwa zgodności z panelem dostępności Special Space.
   Nie tworzymy drugiego panelu. Reagujemy na istniejące klasy/atrybuty WCAG. */

/* ------------------------------------------------------------------
   UKRYWANIE OBRAZÓW
   Strategia: ukrywamy zdjęcia i grafiki dekoracyjne, ale pozostawiamy
   tekst, kontrolki, przyciski, nawigację, focus i działanie bloków.
   ------------------------------------------------------------------ */
body.ss-wcag-hide-images .pzg-a11y-media--hideable,
body.ss-wcag-hide-images .pzg-oe-hero__visual,
body.ss-wcag-hide-images .pzg-oe-cta-phone__media,
body.ss-wcag-hide-images .pzg-oe-for-who__image-wrap,
body.ss-wcag-hide-images .pzg-oe-feature__icon-wrap,
body.ss-wcag-hide-images .pzg-oe-steps__content img,
body.ss-wcag-hide-images .pzg-oe-hero__description img,
body.ss-wcag-hide-images .pzg-placeholder-block img {
    display: none !important;
}

/* Hero po ukryciu zdjęć nie zostawia pustej lewej kolumny. */
body.ss-wcag-hide-images .pzg-oe-hero__card,
body.ss-wcag-hide-images .pzg-oe-hero--preset-psd .pzg-oe-hero__card {
    display: block !important;
    grid-template-columns: 1fr !important;
    aspect-ratio: auto !important;
    min-height: 0 !important;
    overflow: visible !important;
    padding: clamp(1.5rem, 4vw, 3rem) !important;
}
body.ss-wcag-hide-images .pzg-oe-hero__content,
body.ss-wcag-hide-images .pzg-oe-hero--preset-psd .pzg-oe-hero__content {
    position: static !important;
    width: min(100%, 52rem) !important;
    max-width: 100% !important;
    margin-inline: auto !important;
    padding: 0 !important;
}

/* „Dla kogo” po ukryciu fotografii staje się czytelną listą odbiorców. */
body.ss-wcag-hide-images .pzg-oe-for-who__card {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 5.5rem;
    padding: 1rem;
    border: 2px solid currentColor;
    border-radius: .75rem;
}
body.ss-wcag-hide-images .pzg-oe-for-who__label {
    margin: 0 !important;
}

/* Kafelki zachowują funkcję i tekst, ale bez ikon dekoracyjnych. */
body.ss-wcag-hide-images .pzg-oe-features__panel {
    height: auto !important;
    min-height: 0 !important;
}
body.ss-wcag-hide-images .pzg-oe-features__grid {
    min-height: 0 !important;
}
body.ss-wcag-hide-images .pzg-oe-feature,
body.ss-wcag-hide-images .pzg-oe-feature__inner {
    min-height: 9rem !important;
}
body.ss-wcag-hide-images .pzg-oe-feature__front {
    min-height: 9rem !important;
}

/* ------------------------------------------------------------------
   WYŁĄCZENIE ANIMACJI
   SS WCAG dodaje body.ss-wcag-animations-disabled. Interakcje nadal
   działają, ale zmiana stanu jest natychmiastowa i autoplay nie rusza.
   ------------------------------------------------------------------ */
body.ss-wcag-animations-disabled .pzg-oe-feature__inner,
body.ss-wcag-animations-disabled .pzg-oe-steps__track,
body.ss-wcag-animations-disabled .pzg-oe-steps__viewport,
body.ss-wcag-animations-disabled .pzg-oe-nav *,
body.ss-wcag-animations-disabled .pzg-oe-hero *,
body.ss-wcag-animations-disabled .pzg-oe-for-who *,
body.ss-wcag-animations-disabled .pzg-oe-cta-phone * {
    transition: none !important;
    animation: none !important;
    scroll-behavior: auto !important;
}

/* ------------------------------------------------------------------
   POWIĘKSZENIE TEKSTU
   Panel WCAG skaluje font-size na <html>. Poniższe elementy mają być
   oparte na rem, dlatego automatycznie podążają za tym ustawieniem.
   Ta sekcja zabezpiecza elastyczność layoutu przy dużej czcionce.
   ------------------------------------------------------------------ */
html[style*="font-size"] .pzg-oe-features__panel {
    min-height: 0;
}
html[style*="font-size"] .pzg-oe-feature__description {
    overflow-y: auto;
}
html[style*="font-size"] .pzg-oe-steps__slide {
    height: auto;
}
html[style*="font-size"] .pzg-oe-nav__link {
    white-space: normal;
    text-align: center;
}

@media (max-width: 640px) {
    body.ss-wcag-hide-images .pzg-oe-for-who__grid {
        grid-template-columns: 1fr !important;
    }
}
/* Alpha17 – FAQ: układ zgodny z projektem, z łatwym przełączaniem linki ↔ przyciski. */
.pzg-ref--faq-tabs{
  --pzg-faq-blue:#2f3ec9;
  --pzg-faq-line:#8f8bcf;
  --pzg-faq-chevron:#65bee8;
}
@media (min-width:900px){
  .pzg-ref--faq-tabs .pzg-ref-icon-heading{
    margin-left:0!important;
    min-height:var(--pzg-section-icon);
    gap:var(--pzg-heading-gap);
    align-items:center;
    color:var(--pzg-faq-blue)!important;
  }
  .pzg-ref--faq-tabs .pzg-ref-icon-heading .pzg-ref-round-icon{
    width:var(--pzg-section-icon);
    height:var(--pzg-section-icon);
  }
  .pzg-ref--faq-tabs .pzg-ref-icon-heading h2,
  .pzg-ref--faq-tabs.pzg-ref-faq-nav--links .pzg-ref-icon-heading{
    font-weight:700;
  }
  .pzg-ref--faq-tabs .pzg-ref-faq-content{
    margin-left:0;
    margin-right:0;
  }
  .pzg-ref--faq-tabs.pzg-ref-faq-nav--links .pzg-ref-tabs{
    margin: 4px 0 calc(64 * var(--pzg-01c-u)) calc(var(--pzg-section-icon) + var(--pzg-heading-gap));
    gap:10px calc(42 * var(--pzg-01c-u));
    align-items:center;
  }
}

/* Domyślny wariant z makiety: kategorie wyglądają jak odnośniki tekstowe,
   ale pozostają semantycznymi buttonami zakładek. */
.pzg-ref--faq-tabs.pzg-ref-faq-nav--links .pzg-ref-tabs button{
  min-height:0;
  padding:2px 0 5px;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  color:#4e35f0;
  font-size:var(--pzg-faq-category-size,16px);
  font-weight:700;
  line-height:1.25;
  text-decoration:none;
  transform:none!important;
  text-indent:0!important;
  visibility:visible!important;
  opacity:1!important;
  overflow:visible;
}
.pzg-ref--faq-tabs .pzg-ref-tabs .pzg-ref-tab-label{display:inline!important;color:#4e35f0!important;-webkit-text-fill-color:currentColor;opacity:1!important;visibility:visible!important;font:700 var(--pzg-faq-category-size,16px)/1.25 Montserrat,Arial,sans-serif!important;text-indent:0;text-transform:none;letter-spacing:0}
.pzg-ref--faq-tabs.pzg-ref-faq-nav--pills .pzg-ref-tabs button[aria-selected="true"] .pzg-ref-tab-label{color:#fff!important}
.pzg-ref--faq-tabs.pzg-ref-faq-nav--links .pzg-ref-tabs button::after{
  display:block;
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:2px;
  border-radius:2px;
  background:currentColor;
  opacity:0;
  transform:scaleX(.2);
  transform-origin:left center;
  transition:opacity .18s ease,transform .18s ease;
}
.pzg-ref--faq-tabs.pzg-ref-faq-nav--links .pzg-ref-tabs button[aria-selected="true"]{
  background:transparent;
  color:#2938b8;
}
.pzg-ref--faq-tabs.pzg-ref-faq-nav--links .pzg-ref-tabs button[aria-selected="true"]::after{
  opacity:.65;
  transform:scaleX(1);
}
@media(hover:hover){
  .pzg-ref--faq-tabs.pzg-ref-faq-nav--links .pzg-ref-tabs button:hover{
    color:#2938b8;
    background:transparent;
  }
  .pzg-ref--faq-tabs.pzg-ref-faq-nav--links .pzg-ref-tabs button:hover::after{
    opacity:.35;
    transform:scaleX(1);
  }
}

/* Opcjonalny wariant "przyciski" – zachowujemy go w kodzie i w ACF. */
.pzg-ref--faq-tabs.pzg-ref-faq-nav--pills .pzg-ref-tabs button{
  min-height:44px;
  padding:10px 15px;
  border-radius:999px;
  background:#f1f1ff;
  color:#4b43c6;
  font-weight:700;
}
.pzg-ref--faq-tabs.pzg-ref-faq-nav--pills .pzg-ref-tabs button::after{display:none}
.pzg-ref--faq-tabs.pzg-ref-faq-nav--pills .pzg-ref-tabs button[aria-selected="true"]{
  background:var(--pzg-ui-violet,#563bfa);
  color:#fff;
}

/* Pytania: tekst + kropkowany lider + prawdziwy chevron po prawej. */
.pzg-ref--faq-tabs .pzg-ref-tab-panel details{
  margin:0;
  border:0;
}
.pzg-ref--faq-tabs .pzg-ref-tab-panel summary{
  min-height:clamp(44px,calc(73 * var(--pzg-01c-u)),73px);
  display:flex;
  align-items:center;
  gap:12px;
  padding:7px 0;
  border:0;
  color:#4c49a8;
  font-size:var(--pzg-faq-question-size,18px);
  font-weight:500;
  line-height:1.35;
}
.pzg-ref--faq-tabs .pzg-ref-tab-panel summary::before{
  content:"";
  order:2;
  flex:1 1 auto;
  min-width:24px;
  border-top:2px dotted var(--pzg-faq-line);
  opacity:.85;
  transform:translateY(.14em);
  margin-right:-22px;
}
.pzg-ref--faq-tabs .pzg-ref-faq-question{
  order:1;
  flex:0 1 auto;
  min-width:0;
}
.pzg-ref--faq-tabs .pzg-ref-tab-panel summary::after{
  content:"";
  order:3;
  position:static;
  flex:0 0 auto;
  width:16px;
  height:16px;
  margin:0 6px 5px 0;
  border:0;
  border-right:2px solid var(--pzg-faq-chevron);
  border-bottom:2px solid var(--pzg-faq-chevron);
  border-radius:0;
  background:#fff;
  box-shadow:0 0 0 6px #fff;
  z-index:1;
  transform:rotate(45deg);
  transition:transform .18s ease;
}
.pzg-ref--faq-tabs .pzg-ref-tab-panel details[open] summary::after{
  transform:rotate(225deg);
  margin-top:7px;
  margin-bottom:0;
}
.pzg-ref--faq-tabs .pzg-ref-tab-panel details>div{
  max-width:78ch;
  padding:5px 0 18px;
  color:#5853b2;
  font-size:var(--pzg-faq-answer-size,16px);
  line-height:1.58;
}

@media(max-width:899px){
  .pzg-ref--faq-tabs .pzg-ref-faq-content{margin-left:0;margin-right:0}
  .pzg-ref--faq-tabs.pzg-ref-faq-nav--links .pzg-ref-tabs{
    margin:4px 0 22px;
    gap:14px 22px;
  }
  .pzg-ref--faq-tabs.pzg-ref-faq-nav--links .pzg-ref-tabs button{
    min-height:40px;
    white-space:nowrap;
  }
  .pzg-ref--faq-tabs .pzg-ref-tab-panel summary{
    font-size:clamp(15px,var(--pzg-faq-question-size,18px),20px);
    gap:9px;
  }
  .pzg-ref--faq-tabs .pzg-ref-tab-panel summary::after{
    width:13px;
    height:13px;
    margin-right:3px;
  }
  .pzg-ref--faq-tabs .pzg-ref-tab-panel summary::before{margin-right:-19px}
}
/* Samodzielny, edytowalny blok kontaktowy z projektu 01c. */
.pzg-ref--helpdesk{display:grid;grid-template-columns:minmax(0,60%) minmax(0,1fr);gap:calc(135 * var(--pzg-01c-u));align-items:center;padding:calc(168 * var(--pzg-01c-u)) 0 calc(300 * var(--pzg-01c-u));color:#0032b4}
.pzg-helpdesk-intro{display:flex;align-items:center;gap:calc(137 * var(--pzg-01c-u));padding-left:calc(115 * var(--pzg-01c-u));min-width:0}
.pzg-helpdesk-icon{display:grid;place-items:center;flex:0 0 clamp(86px,calc(346 * var(--pzg-01c-u)),346px);aspect-ratio:1;border-radius:50%;background:#0886ff;color:#fff}
.pzg-helpdesk-icon .pzg-helpdesk-symbol{display:block;width:64%;height:64%;object-fit:contain;margin:0}
.pzg-ref--helpdesk h2{font-size:var(--pzg-section-title);line-height:1.2}
.pzg-ref--helpdesk p{margin-top:.3em;font-size:clamp(17px,calc(48 * var(--pzg-01c-u)),48px);line-height:1.35}
.pzg-helpdesk-contact{display:grid;gap:calc(118 * var(--pzg-01c-u));margin:0;font-size:clamp(17px,calc(48 * var(--pzg-01c-u)),48px);line-height:1.4;min-width:0}
.pzg-helpdesk-contact dd{margin:.45em 0 0;font-weight:700;overflow-wrap:anywhere}
.pzg-helpdesk-contact a{display:inline-block;padding:4px 0;text-decoration:none}
.pzg-helpdesk-contact a:hover{text-decoration:underline;text-underline-offset:.2em}
@media(max-width:899px){.pzg-ref--helpdesk{grid-template-columns:1fr;gap:36px;padding:40px 0 64px}.pzg-helpdesk-intro{gap:24px;padding:0}.pzg-helpdesk-contact{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.pzg-helpdesk-contact dd{font-size:16px}}
@media(max-width:600px){.pzg-helpdesk-contact{grid-template-columns:1fr}.pzg-helpdesk-intro{gap:20px}.pzg-helpdesk-icon{flex-basis:78px}.pzg-ref--helpdesk p{font-size:16px}}
/* Visible Photoshop reference edges, measured from the actual header content. */
.pzg-reference-guides{
 position:absolute;
 top:0;
 left:0;
 width:100%;
 height:var(--pzg-guide-height,0px);
 z-index:9999;
 pointer-events:none;
 user-select:none;
 overflow:hidden;
 /* Nie używamy display:none: runtime nadal mierzy tę warstwę, aby zasilać
  * wspólną siatkę layoutu. Ukrywamy wyłącznie wizualizację prowadnic. */
 visibility:hidden;
}
body.pzg-reference-guides-visible .pzg-reference-guides{visibility:visible}
.pzg-reference-guides__line{
 position:absolute;
 top:var(--pzg-guide-top,0px);
 bottom:0;
 width:1px;
 background:var(--pzg-guide-color,#00cbed);
 pointer-events:none;
}
.pzg-reference-guides__line--left{left:var(--pzg-guide-left)}
.pzg-reference-guides__line--inner-left,
.pzg-reference-guides__line--inner-right{display:none}
.pzg-reference-guides__line--inner-left{left:var(--pzg-guide-inner-left)}
.pzg-reference-guides__line--inner-right{left:var(--pzg-guide-inner-right)}
.pzg-reference-guides__line--right{left:var(--pzg-guide-right)}
.pzg-reference-guides__line--teacher-bottom{
 display:none;
 position:absolute;
 left:0;
 right:0;
 top:var(--pzg-guide-teacher-bottom);
 height:1px;
 background:var(--pzg-guide-color,#00cbed);
 pointer-events:none;
}
.pzg-reference-guides--teacher-ready .pzg-reference-guides__line--teacher-bottom{display:block}
@media(min-width:1280px){
 .pzg-reference-guides--inner-ready .pzg-reference-guides__line--inner-left,
 .pzg-reference-guides--inner-ready .pzg-reference-guides__line--inner-right{display:block}
}
@media print{.pzg-reference-guides{display:none!important}}
/* ==================== ALPHA49 / PŁYNNY LAPTOP ====================
 * Master-grid i prowadnice nadal opisują prawdziwe krawędzie headera. Osobna
 * siatka treści ogranicza jednak skalę sekcji na małych laptopach. Kolumny,
 * kolejność i proporcje pozostają desktopowe; zmienia się tylko ich wspólna
 * skala oraz wynikowa wysokość sekcji.
 */
@media (min-width:900px) and (max-width:1680px) and (max-height:1200px){
  body.pzg-oe-page.pzg-compact-scale .pzg-ref--hero .pzg-ref-hero-card,
  body.pzg-oe-page.pzg-compact-scale .pzg-ref--features{
    width:var(--pzg-layout-grid-width,var(--pzg-master-grid-width));
  }
}

@media (min-width:900px) and (max-width:1680px) and (max-height:950px){
  /* Motyw Special Space utrzymuje .main-nav jako position:fixed. Na niskim
   * ekranie zostawiamy go na początku dokumentu, dzięki czemu po przewinięciu
   * widoczny pozostaje tylko bardziej użyteczny pasek sekcji PZG. position:
   * absolute współpracuje z istniejącą rezerwą --navbar-h w pierwszym bloku
   * i nie tworzy dodatkowej pustej przestrzeni. */
  body.pzg-oe-page.pzg-compact-height .main-nav,
  body.pzg-oe-page.pzg-compact-height .main-nav.is-moving{
    position:absolute!important;
    top:0!important;
    transform:translateY(0)!important;
  }

  /* Naturalna pozycja paska na stronie jest trochę ciaśniejsza pionowo. Jego
   * szerokość i oś pozostają wyliczone z tej samej siatki co dotychczas. */
  body.pzg-oe-page.pzg-compact-height .pzg-ref--nav:not(.is-floating){
    padding-top:calc(80 * var(--u));
    padding-bottom:calc(44 * var(--u));
  }
  body.pzg-oe-page.pzg-compact-height .pzg-ref--nav .pzg-ref-nav{
    padding:5px 10px;
    border-radius:12px;
  }
  body.pzg-oe-page.pzg-compact-height .pzg-ref--nav .pzg-ref-nav ul{
    gap:clamp(6px,calc(18 * var(--u)),12px);
  }
  body.pzg-oe-page.pzg-compact-height .pzg-ref--nav .pzg-ref-nav a{
    min-height:40px;
    padding:6px clamp(10px,calc(20 * var(--u)),15px);
    font-size:clamp(14px,calc(38 * var(--u)),18px);
    line-height:1.1;
  }
  body.pzg-oe-page.pzg-compact-height .pzg-ref--nav.is-floating .pzg-ref-nav{
    box-shadow:0 6px 20px rgba(37,34,110,.15);
  }

  /* Sekcja ma wysokość wynikającą z treści, bez wymuszania 100svh. Telefon
   * jest dopasowany w JS do naturalnej wysokości .copy-inner. */
  body.pzg-oe-page.pzg-compact-height .pzg-ref--text-media:not(.pzg-student-layout--natural){
    min-height:0;
    padding:clamp(32px,5.5svh,48px) 0 clamp(26px,4.5svh,40px);
    scroll-margin-top:80px;
    --pzg-student-phone-design-w:calc(650 * var(--pzg-01c-u));
    --pzg-student-phone-w:var(--pzg-student-phone-fit-w,min(calc(650 * var(--pzg-01c-u)),290px));
    --pzg-student-copy-top:0px;
    --pzg-student-copy-bottom:0px;
    --pzg-student-phone-top:0px;
    --pzg-student-phone-bottom:0px;
  }
  body.pzg-oe-page.pzg-compact-height .pzg-ref--text-media:not(.pzg-student-layout--natural) .pzg-ref-startee-copy{
    padding:0 clamp(18px,calc(70 * var(--pzg-01c-u)),36px) 0 0;
  }
  body.pzg-oe-page.pzg-compact-height .pzg-ref--text-media:not(.pzg-student-layout--natural) .pzg-ref-startee-heading-row{
    min-height:clamp(50px,calc(110 * var(--pzg-01c-u)),62px);
    gap:clamp(16px,calc(34 * var(--pzg-01c-u)),22px);
    align-items:center;
  }
  body.pzg-oe-page.pzg-compact-height .pzg-ref--text-media:not(.pzg-student-layout--natural) .pzg-ref-startee-heading-row .pzg-ref-round-icon{
    width:clamp(50px,calc(110 * var(--pzg-01c-u)),62px);
    height:clamp(50px,calc(110 * var(--pzg-01c-u)),62px);
  }
  body.pzg-oe-page.pzg-compact-height .pzg-ref--text-media:not(.pzg-student-layout--natural) .pzg-ref-startee-heading-row h2{
    font-size:clamp(30px,calc(70 * var(--pzg-01c-u)),40px);
    line-height:1.1;
  }
  body.pzg-oe-page.pzg-compact-height .pzg-ref--text-media:not(.pzg-student-layout--natural) .pzg-ref-startee-body{
    max-width:calc(1230 * var(--pzg-01c-u));
    margin-top:clamp(20px,calc(45 * var(--pzg-01c-u)),28px);
    font-size:clamp(21px,calc(44 * var(--pzg-01c-u)),25px);
    line-height:1.24;
  }
  body.pzg-oe-page.pzg-compact-height .pzg-ref--text-media:not(.pzg-student-layout--natural) .pzg-ref-startee-visual{
    align-self:stretch;
    align-items:flex-start;
    justify-content:center;
    padding:0;
  }
  body.pzg-oe-page.pzg-compact-height .pzg-ref--text-media:not(.pzg-student-layout--natural) .pzg-ref-phone,
  body.pzg-oe-page.pzg-compact-height .pzg-ref--text-media:not(.pzg-student-layout--natural) .pzg-ref-phone-device{
    width:var(--pzg-student-phone-w);
    max-width:100%;
  }
  body.pzg-oe-page.pzg-compact-height .pzg-ref--text-media:not(.pzg-student-layout--natural) .pzg-ref-dots{
    left:var(--pzg-student-dots-fit-left,var(--pzg-student-dots-left));
    top:var(--pzg-student-dots-fit-top,var(--pzg-student-dots-top));
    bottom:auto;
    width:var(--pzg-student-dots-w);
    height:var(--pzg-student-dots-h);
    background-size:100% 100%;
    background-repeat:no-repeat;
  }
}

/* Oryginalny zasób z PSD: osiem kolumn i cztery rzędy. Większa część grafiki
 * chowa się za telefonem, dlatego widoczne pozostają trzy lewe kolumny. */
@media (min-width:900px){
  .pzg-ref--text-media:not(.pzg-student-layout--natural){
    --pzg-student-dots-w:calc(440 * var(--pzg-01c-u));
    --pzg-student-dots-h:calc(200 * var(--pzg-01c-u));
  }
  .pzg-ref--text-media:not(.pzg-student-layout--natural) .pzg-ref-phone,
  .pzg-ref--text-media:not(.pzg-student-layout--natural) .pzg-ref-phone-device{
    width:var(--pzg-student-phone-fit-w,calc(679 * var(--pzg-01c-u)));
  }
  .pzg-ref--text-media:not(.pzg-student-layout--natural) .pzg-ref-dots{
    left:var(--pzg-student-dots-fit-left,calc(118 * var(--pzg-01c-u)));
    top:var(--pzg-student-dots-fit-top,calc(805 * var(--pzg-01c-u)));
    bottom:auto;
    width:var(--pzg-student-dots-w);
    height:var(--pzg-student-dots-h);
    background-image:url("../reference-2026/student-dots.svg");
    background-size:100% 100%;
    background-repeat:no-repeat;
  }
}
/* ==================== ALPHA53 / WSPÓLNA SIATKA PROWADNIC ====================
 * Header wyznacza cztery osie: dwie zewnętrzne i dwie wewnętrzne. Runtime
 * przelicza je na trzy kolumny wspólne dla całej strony. Przy małej wysokości
 * laptopa skaluje się kompletna siatka, a nie pojedyncze elementy.
 */
@media (min-width:900px){
  /* HERO: tekst zaczyna się na pierwszej osi wewnętrznej z PSD. */
  body.pzg-guide-grid-ready .pzg-ref--hero .pzg-ref-hero-card{
    grid-template-columns:minmax(0,var(--pzg-layout-left-col)) minmax(0,calc(var(--pzg-layout-center-col) + var(--pzg-layout-right-col)));
    padding-left:0;
    padding-right:0;
  }
  body.pzg-guide-grid-ready .pzg-ref--hero .pzg-ref-hero-visual{
    padding-left:calc(139 * var(--u));
  }
  body.pzg-guide-grid-ready .pzg-ref--hero .pzg-ref-hero-copy{
    padding-right:calc(139 * var(--u));
  }
  .pzg-ref--hero .pzg-ref-hero-line--lead{
    white-space:nowrap;
  }
  /* Po przesunięciu tekstu na pierwszą prowadnicę niskie laptopy potrzebują
   * odzyskać prawy, czysto dekoracyjny margines. Początek tekstu i rozmiar
   * fontu zostają bez zmian, ale pierwsza linia zachowuje układ z PSD. */
  body.pzg-guide-grid-ready.pzg-compact-scale .pzg-ref--hero .pzg-ref-hero-copy{
    padding-right:calc(28 * var(--u));
  }

  /* Sekcje dwukolumnowe korzystają z tej samej lewej kolumny, środkowego
   * pasa i prawej kolumny. Dzięki temu teksty oraz media mają wspólne osie. */
  body.pzg-guide-grid-ready .pzg-ref--cta-phone,
  body.pzg-guide-grid-ready .pzg-ref--text-media:not(.pzg-student-layout--natural){
    grid-template-columns:minmax(0,var(--pzg-layout-left-col)) minmax(0,var(--pzg-layout-center-col)) minmax(0,var(--pzg-layout-right-col));
  }
  body.pzg-guide-grid-ready .pzg-ref--cta-phone .pzg-ref-cta-media,
  body.pzg-guide-grid-ready .pzg-ref--text-media:not(.pzg-student-layout--natural) .pzg-ref-startee-copy{
    grid-column:1;
  }
  body.pzg-guide-grid-ready .pzg-ref--cta-phone .pzg-ref-cta-copy,
  body.pzg-guide-grid-ready .pzg-ref--text-media:not(.pzg-student-layout--natural) .pzg-ref-startee-visual{
    grid-column:3;
  }
  body.pzg-guide-grid-ready .pzg-ref--cta-phone .pzg-ref-cta-media{
    padding-left:calc(75 * var(--pzg-01c-u));
  }
  body.pzg-guide-grid-ready .pzg-ref--cta-phone .pzg-ref-cta-copy{
    padding-left:0;
  }
  body.pzg-guide-grid-ready .pzg-ref--text-media:not(.pzg-student-layout--natural) .pzg-ref-startee-visual{
    justify-content:center;
    padding-left:0;
  }

  /* W PSD fiolet kończy się na pierwszej osi, a treść prawego panelu zaczyna
   * się na drugiej. Sekcja jest pełnej szerokości, więc używa współrzędnych
   * widoku, nie lokalnego podziału 50/50. */
  body.pzg-guide-grid-ready .pzg-ref--why-worth{
    grid-template-columns:minmax(0,var(--pzg-layout-inner-left)) minmax(0,1fr);
  }
  body.pzg-guide-grid-ready .pzg-ref--why-worth .pzg-ref-why-title{
    padding-left:var(--pzg-layout-grid-left);
  }
  body.pzg-guide-grid-ready .pzg-ref--why-worth .pzg-ref-why-copy{
    padding-left:var(--pzg-layout-center-col);
    padding-right:var(--pzg-layout-grid-right);
  }

  /* Panel nauczyciela i wsparcie projektu używają identycznego podziału jak
   * sekcja aplikacji. Wewnętrzne komponenty zachowują swoje proporcje. */
  body.pzg-guide-grid-ready .pzg-ref--teacher .pzg-ref-teacher-grid{
    grid-template-columns:minmax(0,var(--pzg-layout-left-col)) minmax(0,var(--pzg-layout-center-col)) minmax(0,var(--pzg-layout-right-col));
    column-gap:0;
  }
  body.pzg-guide-grid-ready .pzg-ref--teacher .pzg-ref-teacher-left{grid-column:1}
  body.pzg-guide-grid-ready .pzg-ref--teacher .pzg-ref-teacher-copy{
    grid-column:3;
    /* Na niskim desktopie wewnętrzna siatka strony jest lekko skalowana, ale
     * turkusowa prowadnica nadal reprezentuje rzeczywistą oś headera. Przesuwamy
     * wyłącznie kolumnę tekstową Panelu nauczyciela o różnicę tych osi. Dzięki
     * temu początek tekstu trafia dokładnie w widoczną linię, bez ruszania laptopa,
     * szerokości sekcji ani mechaniki prowadnic. */
    --pzg-teacher-guide-shift:max(0px,calc(var(--pzg-master-inner-right,var(--pzg-layout-inner-right)) - var(--pzg-layout-inner-right,var(--pzg-master-inner-right))));
    transform:translateX(var(--pzg-teacher-guide-shift));
  }
  body.pzg-guide-grid-ready .pzg-ref--teacher{
    /* Laptop w PSD zajmuje pełną pierwszą kolumnę: od prowadnicy zewnętrznej
     * do pierwszej prowadnicy wewnętrznej. Wysokość wynika wyłącznie z
     * proporcji ramy 1346:901. */
    --pzg-teacher-laptop-w:var(--pzg-layout-left-col);
    --pzg-teacher-laptop-h:calc(var(--pzg-layout-left-col) * 901 / 1346);
  }

  /* W makiecie średnica ikony nauczyciela jest prawidłowa, ale sam napis ma
   * mniejszą skalę niż wspólny tytuł sekcji. Nie zmniejszamy więc ikony ani
   * kolumn — korygujemy wyłącznie typografię etykiety. */
  .pzg-ref--teacher .pzg-ref-icon-heading{
    font-size:clamp(25px,calc(68 * var(--pzg-01c-u)),68px);
    white-space:nowrap;
  }

  body.pzg-guide-grid-ready .pzg-ref--supporters{
    grid-template-columns:minmax(0,var(--pzg-layout-left-col)) minmax(0,var(--pzg-layout-center-col)) minmax(0,var(--pzg-layout-right-col));
    gap:0;
    padding-left:var(--pzg-layout-grid-left);
    padding-right:var(--pzg-layout-grid-right);
  }
  body.pzg-guide-grid-ready .pzg-ref--supporters .pzg-ref-support-copy{grid-column:1}
  body.pzg-guide-grid-ready .pzg-ref--supporters .pzg-ref-support-partner{grid-column:3}
}

/* „Dlaczego warto”: czytelna lista zamiast jednego bloku tekstu. */
.pzg-ref--why-worth .pzg-ref-why-copy ul,
.pzg-ref--why-worth .pzg-ref-why-copy ol{
  display:grid;
  gap:.52em;
  max-width:calc(1065 * var(--pzg-01c-u));
  margin:0;
  padding:0;
  list-style:none;
}
.pzg-ref--why-worth .pzg-ref-why-copy li{
  position:relative;
  margin:0;
  padding-left:1.05em;
  text-wrap:pretty;
}
.pzg-ref--why-worth .pzg-ref-why-copy li+li{margin-top:0}
.pzg-ref--why-worth .pzg-ref-why-copy li::before{
  content:'•';
  position:absolute;
  left:0;
  top:-.02em;
  color:var(--pzg-ui-coral,#f0645a);
  font-size:1.08em;
  line-height:inherit;
}
.pzg-ref--why-worth .pzg-ref-why-copy :is(strong,b){
  font-weight:700;
  color:inherit;
}

/* Alpha84.1: zgodność ze starym HTML (cache lub niepełna podmiana plików).
 * Wariant PSD nie może pojawić się obok naturalnego tekstu. Zwykła kopia
 * pozostaje dostępna również wtedy, gdy HTML pochodzi jeszcze z alpha83. */
.pzg-ref--text-media:not(.pzg-student-layout--natural) .pzg-ref-startee-reference-lines,
.pzg-ref--teacher .pzg-ref-teacher-reference-lines{display:none!important}
.pzg-ref--text-media:not(.pzg-student-layout--natural) .pzg-ref-startee-reference-plain,
.pzg-ref--teacher .pzg-ref-teacher-reference-plain{
  position:static!important;
  width:auto!important;
  height:auto!important;
  padding:0!important;
  margin:0!important;
  overflow:visible!important;
  clip:auto!important;
  white-space:normal!important;
  border:0!important;
}
/* Naturalny skład tekstu zachowuje kompaktową typografię niskiego laptopa. */
@media (min-width:900px){
  body.pzg-oe-page.pzg-compact-height .pzg-ref--text-media:not(.pzg-student-layout--natural) .pzg-ref-startee-body{
    max-width:none;
    margin-top:calc(170 * var(--pzg-01c-u));
    font-size:var(--pzg-section-body);
    line-height:1.17;
  }
}
@media (max-width:899px){
  .pzg-ref--why-worth .pzg-ref-why-copy :is(ul,ol){max-width:none}
}
/* Alpha85: układ aplikacji zależny od treści ACF, a nie wierszy PSD. */
@media (min-width:900px){
  .pzg-ref--text-media.pzg-student-layout--natural,
  body.pzg-guide-grid-ready .pzg-ref--text-media.pzg-student-layout--natural{
    grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);
    column-gap:clamp(32px,4vw,80px);
    row-gap:32px;
    align-items:start;
    min-height:0;
    padding:clamp(36px,calc(110 * var(--pzg-01c-u)),72px) 0;
    --pzg-student-phone-design-w:clamp(220px,calc(650 * var(--pzg-01c-u)),360px);
    --pzg-student-phone-max-w:clamp(300px,calc(960 * var(--pzg-01c-u)),520px);
  }
  .pzg-ref--text-media.pzg-student-layout--natural .pzg-ref-startee-copy,
  body.pzg-guide-grid-ready .pzg-ref--text-media.pzg-student-layout--natural .pzg-ref-startee-copy{
    grid-column:1;min-width:0;padding:0;
  }
  .pzg-ref--text-media.pzg-student-layout--natural .pzg-ref-startee-copy-inner{min-width:0}
  .pzg-ref--text-media.pzg-student-layout--natural .pzg-ref-startee-heading-row{
    min-height:0;gap:clamp(16px,calc(40 * var(--pzg-01c-u)),28px);
  }
  .pzg-ref--text-media.pzg-student-layout--natural .pzg-ref-startee-heading-row h2{
    font-size:clamp(26px,calc(70 * var(--pzg-01c-u)),48px);line-height:1.2;
  }
  .pzg-ref--text-media.pzg-student-layout--natural .pzg-ref-startee-heading-row .pzg-ref-round-icon{
    width:clamp(44px,calc(110 * var(--pzg-01c-u)),72px);
    height:clamp(44px,calc(110 * var(--pzg-01c-u)),72px);
  }
  .pzg-ref--text-media.pzg-student-layout--natural .pzg-ref-startee-body{
    width:100%;max-width:none;
    margin-top:clamp(22px,calc(60 * var(--pzg-01c-u)),36px);
    font-size:clamp(17px,calc(44 * var(--pzg-01c-u)),26px);line-height:1.3;
  }
  .pzg-ref--text-media.pzg-student-layout--natural .pzg-ref-startee-visual,
  body.pzg-guide-grid-ready .pzg-ref--text-media.pzg-student-layout--natural .pzg-ref-startee-visual{
    grid-column:2;align-self:start;justify-content:center;
    min-width:0;min-height:0;padding:0;
  }
  .pzg-ref--text-media.pzg-student-layout--natural .pzg-ref-phone,
  .pzg-ref--text-media.pzg-student-layout--natural .pzg-ref-phone-device{
    width:var(--pzg-student-phone-fit-w,var(--pzg-student-phone-design-w));
    max-width:100%;height:auto;
  }
  .pzg-ref--text-media.pzg-student-layout--natural.pzg-student-stacked,
  body.pzg-guide-grid-ready .pzg-ref--text-media.pzg-student-layout--natural.pzg-student-stacked{grid-template-columns:minmax(0,1fr)}
  .pzg-ref--text-media.pzg-student-layout--natural.pzg-student-stacked .pzg-ref-startee-copy,
  .pzg-ref--text-media.pzg-student-layout--natural.pzg-student-stacked .pzg-ref-startee-visual,
  body.pzg-guide-grid-ready .pzg-ref--text-media.pzg-student-layout--natural.pzg-student-stacked .pzg-ref-startee-visual{grid-column:1}
  .pzg-ref--text-media.pzg-student-layout--natural.pzg-student-stacked .pzg-ref-startee-copy-inner{max-width:65ch;margin-inline:auto}
  .pzg-ref--text-media.pzg-student-layout--natural.pzg-student-stacked .pzg-ref-phone,
  .pzg-ref--text-media.pzg-student-layout--natural.pzg-student-stacked .pzg-ref-phone-device{width:var(--pzg-student-phone-design-w);max-width:100%}
  .pzg-ref--text-media.pzg-student-layout--natural.pzg-student-stacked .pzg-ref-dots{display:none}
}
/* Umiarkowane odstępy między akapitami, niezależne od marginesów motywu. */
.pzg-ref--text-media.pzg-student-layout--natural .pzg-ref-startee-body :is(p,ul,ol){margin:0}
.pzg-ref--text-media.pzg-student-layout--natural .pzg-ref-startee-body :is(p,ul,ol)+:is(p,ul,ol){margin-top:.65em}
@media (max-width:1100px){
  .pzg-ref--text-media.pzg-student-layout--natural,
  body.pzg-guide-grid-ready .pzg-ref--text-media.pzg-student-layout--natural{grid-template-columns:minmax(0,1fr);row-gap:28px}
  .pzg-ref--text-media.pzg-student-layout--natural .pzg-ref-startee-copy,
  .pzg-ref--text-media.pzg-student-layout--natural .pzg-ref-startee-visual,
  body.pzg-guide-grid-ready .pzg-ref--text-media.pzg-student-layout--natural .pzg-ref-startee-visual{grid-column:1}
  .pzg-ref--text-media.pzg-student-layout--natural .pzg-ref-startee-copy-inner{max-width:65ch;margin-inline:auto}
  .pzg-ref--text-media.pzg-student-layout--natural .pzg-ref-dots{display:none}
}
/* ==========================================================
   0.13.0-alpha42 — Mobile layout pass
   Wyłącznie telefon (<= 600 px). Desktop/tablet pozostają bez zmian.
   Zasady:
   - kafle programu: 1 element na wiersz, bez układu 2x2;
   - wsparcie projektu: jedna kolumna i czytelna karta partnera;
   - FAQ: kompaktowy nagłówek, przewijane kategorie, stabilne pytania.
   ========================================================== */
@media (max-width:600px){
  /* ---------- WSPARCIE PROJEKTU ---------- */
  .pzg-ref--supporters{
    grid-template-columns:minmax(0,1fr)!important;
    gap:22px!important;
    min-height:0!important;
    padding:28px 20px 30px!important;
  }
  .pzg-ref--supporters .pzg-ref-support-copy{
    width:100%;
    max-width:none;
    padding:0;
  }
  .pzg-ref--supporters .pzg-ref-support-copy h2{
    margin:0;
    font-size:clamp(25px,7vw,30px);
    line-height:1.15;
  }
  .pzg-ref--supporters .pzg-ref-support-copy p{
    max-width:none;
    margin:.65rem 0 0;
    font-size:16px;
    line-height:1.48;
  }
  .pzg-ref--supporters .pzg-ref-support-partner{
    display:grid;
    grid-template-columns:minmax(0,1fr);
    justify-items:center;
    align-items:center;
    width:100%;
    min-height:0;
    gap:12px;
    padding:18px 16px 20px;
    border-radius:16px;
    text-align:center;
  }
  .pzg-ref--supporters .pzg-ref-support-partner img{
    display:block;
    width:min(100%,250px);
    max-width:250px;
    height:auto;
    margin:0 auto;
    object-fit:contain;
  }
  .pzg-ref--supporters .pzg-ref-support-partner>div{
    width:100%;
    max-width:260px;
  }
  .pzg-ref--supporters .pzg-ref-support-partner h3{
    margin:0 0 4px;
    font-size:16px;
    line-height:1.25;
    font-weight:700;
  }
  .pzg-ref--supporters .pzg-ref-support-partner p{
    margin:0;
    font-size:14px;
    line-height:1.35;
  }

  /* ---------- FAQ / HELPDESK ---------- */
  .pzg-ref--faq-tabs{
    width:100%!important;
    max-width:100%!important;
    padding:34px 20px 42px!important;
  }
  .pzg-ref--faq-tabs>.pzg-ref-icon-heading{
    display:flex;
    align-items:center;
    gap:14px!important;
    min-height:0!important;
    margin:0 0 24px!important;
    font-size:clamp(27px,7.8vw,34px)!important;
    line-height:1.08!important;
    text-wrap:balance;
  }
  .pzg-ref--faq-tabs>.pzg-ref-icon-heading .pzg-ref-round-icon,
  .pzg-ref--faq-tabs>.pzg-ref-icon-heading .pzg-ref-question{
    flex:0 0 58px;
    width:58px!important;
    height:58px!important;
  }
  .pzg-ref--faq-tabs .pzg-ref-faq-content{
    width:100%;
    min-width:0;
    margin:0!important;
  }
  .pzg-ref--faq-tabs .pzg-ref-tabs{
    display:flex;
    flex-wrap:nowrap!important;
    justify-content:flex-start;
    gap:22px!important;
    width:100%;
    margin:0 0 24px!important;
    padding:0 2px 10px;
    overflow-x:auto;
    overflow-y:hidden;
    overscroll-behavior-x:contain;
    scroll-snap-type:x proximity;
    scroll-padding-inline:2px;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
  }
  .pzg-ref--faq-tabs .pzg-ref-tabs::-webkit-scrollbar{display:none}
  .pzg-ref--faq-tabs .pzg-ref-tabs button{
    flex:0 0 auto;
    min-height:42px;
    padding:7px 0 9px;
    font-size:16px!important;
    line-height:1.2;
    white-space:nowrap;
    scroll-snap-align:start;
  }
  .pzg-ref--faq-tabs .pzg-ref-tab-panel{
    min-width:0;
    outline-offset:4px;
  }
  .pzg-ref--faq-tabs .pzg-ref-tab-panel details{
    width:100%;
    margin:0;
  }
  .pzg-ref--faq-tabs .pzg-ref-tab-panel summary{
    width:100%;
    min-height:54px;
    gap:8px;
    padding:10px 0;
    font-size:17px!important;
    line-height:1.34;
  }
  .pzg-ref--faq-tabs .pzg-ref-faq-question{
    flex:1 1 auto;
    min-width:0;
    overflow-wrap:break-word;
  }
  .pzg-ref--faq-tabs .pzg-ref-tab-panel summary::before{
    flex:0 1 54px;
    min-width:18px;
  }
  .pzg-ref--faq-tabs .pzg-ref-tab-panel summary::after{
    flex:0 0 13px;
    width:13px;
    height:13px;
    margin-right:2px;
  }
  .pzg-ref--faq-tabs .pzg-ref-tab-panel details>div{
    max-width:none;
    padding:5px 0 18px;
    font-size:15px!important;
    line-height:1.55;
  }
}

/* Alpha73: Special Space tiles logic, PZG colors and typography. */
@media(max-width:1099px){
 .pzg-ref.pzg-ref--features{
  width:calc(100% - 32px)!important;max-width:calc(100% - 32px)!important;
  height:auto!important;min-width:0;padding:20px 0!important;
  background:transparent;border-radius:0;box-sizing:border-box;
 }
 .pzg-ref--features .pzg-ref-feature-grid{
  display:grid;grid-template-columns:minmax(0,1fr)!important;
  gap:32px!important;height:auto!important;min-height:0!important;
  grid-auto-rows:auto!important;width:100%;min-width:0;
 }
 .pzg-ref--features .pzg-ref-feature{
  width:100%;max-width:100%;height:auto!important;min-height:0!important;
  border:0;perspective:none;transform-style:flat;
  opacity:1!important;transform:none!important;transition:none!important;
 }
 .pzg-ref--features .pzg-ref-feature-desktop-front{display:none!important}
 .pzg-ref--features .pzg-ref-feature-mobile-front{
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  width:100%;min-height:280px;gap:18px;padding:24px 16px;
  box-sizing:border-box;border-radius:18px;background:var(--blue);color:#fff;
  font-size:clamp(18px,4.8vw,22px);line-height:1.25;font-weight:700;
  text-transform:uppercase;text-align:center;
 }
 .pzg-ref--features .pzg-ref-feature-mobile-front .pzg-ref-feature-icon{
  width:112px!important;height:112px!important;max-width:100%;margin:0!important;
  object-fit:contain;transform:none!important;
 }
 .pzg-ref--features .pzg-ref-feature-mobile-front span{
  display:block;width:100%;min-width:0;max-width:100%;
  white-space:normal!important;overflow-wrap:anywhere;word-break:normal;text-wrap:balance;
 }
 .pzg-ref--features .pzg-ref-feature-back{display:none!important}
 .pzg-ref--features .pzg-ref-feature-description{
  display:block!important;position:static!important;inset:auto!important;
  width:100%;max-width:100%;height:auto!important;max-height:none!important;
  padding:18px 4px 0!important;background:transparent!important;color:#003f88!important;
  font-size:clamp(16px,4.2vw,18px)!important;line-height:1.5!important;
  visibility:visible!important;transform:none!important;transition:none!important;
  overflow:visible!important;backface-visibility:visible;-webkit-backface-visibility:visible;
  overflow-wrap:anywhere;text-align:center;
 }
 .pzg-ref--features .pzg-ref-feature-description__content{
  width:100%!important;max-width:100%;max-height:none!important;
  margin:0;transform:none!important;overflow:visible!important;text-align:center!important;
 }
 .pzg-ref-feature-description p+p{margin-top:.5em}
}
@media(min-width:640px) and (max-width:1099px){
 .pzg-ref--features .pzg-ref-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:32px 24px!important;align-items:start}
}
@media(max-width:899px){
 /* Keep grid measurements active; hide only the drawing, including for admins. */
 body.pzg-reference-guides-visible .pzg-reference-guides,
 .pzg-reference-guides{visibility:hidden!important}
}
/* ==========================================================
   PZG DEBUG – uruchamiany tylko przez ?pzgdebug=1
   Nie wpływa na geometrię dokumentu; panel jest fixed.
   ========================================================== */
.pzg-debug-panel{
  position:fixed;
  left:16px;
  bottom:16px;
  z-index:2147483646;
  width:min(320px,calc(100vw - 32px));
  max-height:min(70vh,520px);
  overflow:auto;
  box-sizing:border-box;
  border:1px solid rgba(255,255,255,.22);
  border-radius:12px;
  padding:10px 12px 12px;
  background:rgba(16,20,34,.94);
  box-shadow:0 14px 38px rgba(0,0,0,.28);
  color:#fff;
  font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;
  font-size:12px;
  line-height:1.35;
  -webkit-backdrop-filter:blur(8px);
  backdrop-filter:blur(8px);
  pointer-events:none;
}
.pzg-debug-panel *{box-sizing:border-box}
.pzg-debug-panel__head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:8px;padding-bottom:7px;border-bottom:1px solid rgba(255,255,255,.18)}
.pzg-debug-panel__head strong{font-size:13px;letter-spacing:.04em;color:#7fe6ff}
.pzg-debug-panel__head span{font-size:10px;opacity:.62;text-align:right}
.pzg-debug-panel__body{display:grid;gap:3px}
.pzg-debug-panel__row{display:grid;grid-template-columns:minmax(88px,.8fr) minmax(0,1.4fr);gap:10px;padding:2px 0}
.pzg-debug-panel__row span{opacity:.68}
.pzg-debug-panel__row b{min-width:0;font-weight:600;overflow-wrap:anywhere;color:#fff}
@media(max-width:600px){
  .pzg-debug-panel{left:8px;bottom:8px;width:min(285px,calc(100vw - 16px));font-size:11px;max-height:48vh}
  .pzg-debug-panel__row{grid-template-columns:82px minmax(0,1fr);gap:8px}
}
@media print{.pzg-debug-panel{display:none!important}}
/* 0.13.0-alpha61 — formularz „Zgłoś szkołę” odwzorowany z PSD strona_01c.
 * Kolory wyciągnięte bezpośrednio z PSD:
 * #3843E5 (fiolet), #0080F8 (niebieski), #0036A5 (granat), #F2665A (koral).
 * Ikona kursora pochodzi z osobnej warstwy PSD. Wymiary desktopowe są liczone
 * z płótna 2814 px i skalowane wspólną jednostką --pzg-form-u (maks. 0,5 px),
 * tak jak pozostałe referencyjne sekcje strony.
 */

/* 0.13.0-alpha65 — izolacja: poniższe style formularza są aktywne wyłącznie
 * wewnątrz dedykowanego bloku PZG – Formularz zgłoszenia szkoły. Starsze
 * formularze CF7/Special Space na opublikowanej stronie nie są modyfikowane. */
.pzg-oe-page .pzg-school-form-block .pzg-school-form{
  --pzg-form-u:min(var(--pzg-01c-u,min(.0355366vw,.5px)),calc(100svh / 1980));
  --pzg-form-violet:#3843e5;
  --pzg-form-blue:#0080f8;
  --pzg-form-ink:#0036a5;
  --pzg-form-coral:#f2665a;
  position:relative;
  left:50%;
  transform:translateX(-50%);
  width:100vw;
  max-width:none;
  margin:0!important;
  padding:calc(206 * var(--pzg-form-u)) 0 calc(217 * var(--pzg-form-u));
  border:0;
  border-radius:0;
  background:var(--pzg-form-violet);
  box-shadow:none;
  font-family:"Montserrat",Arial,sans-serif;
  color:var(--pzg-form-ink);
  box-sizing:border-box;
  overflow:visible;
}
.pzg-oe-page .pzg-school-form-block .pzg-school-form *,
.pzg-oe-page .pzg-school-form-block .pzg-school-form *::before,
.pzg-oe-page .pzg-school-form-block .pzg-school-form *::after{box-sizing:border-box}

.pzg-oe-page .pzg-school-form-block .pzg-school-form__form{
  position:relative;
  width:calc(2463 * var(--pzg-form-u));
  max-width:calc(100% - 24px);
  min-height:calc(1462 * var(--pzg-form-u));
  margin:0 auto;
  padding:calc(493 * var(--pzg-form-u)) calc(144 * var(--pzg-form-u)) calc(92 * var(--pzg-form-u)) calc(100 * var(--pzg-form-u));
  border:0;
  border-radius:calc(36 * var(--pzg-form-u));
  background:#fff;
  color:var(--pzg-form-ink);
  box-shadow:none;
}

/* Nagłówek jest dodawany semantycznie przez runtime, więc użytkownik nie musi
 * zmieniać shortcode ani treści formularza Contact Form 7. */
.pzg-oe-page .pzg-school-form-block .pzg-school-form__heading{
  position:absolute;
  top:calc(83 * var(--pzg-form-u));
  left:calc(95 * var(--pzg-form-u));
  right:calc(95 * var(--pzg-form-u));
  display:flex;
  align-items:center;
  gap:calc(90 * var(--pzg-form-u));
  min-width:0;
}
.pzg-oe-page .pzg-school-form-block .pzg-school-form__icon{
  position:relative;
  flex:0 0 calc(346 * var(--pzg-form-u));
  width:calc(346 * var(--pzg-form-u));
  height:calc(346 * var(--pzg-form-u));
  border-radius:50%;
  background:var(--pzg-form-blue);
}
/* Pozycja symbolu wewnątrz koła jest zgodna z warstwami PSD: 194×196 px,
 * przesunięcie 96 px od lewej i 88 px od góry koła 346×346 px. */
.pzg-oe-page .pzg-school-form-block .pzg-school-form__icon::after{
  content:"";
  position:absolute;
  left:27.7457%;
  top:25.4335%;
  width:56.0694%;
  height:56.6474%;
  background:url("../reference-2026/icon-school-form-psd.png") center/100% 100% no-repeat;
}
.pzg-oe-page .pzg-school-form-block .pzg-school-form__title{
  margin:0!important;
  color:var(--pzg-form-violet)!important;
  font:700 clamp(34px,calc(112 * var(--pzg-form-u)),56px)/1.04 "Montserrat",Arial,sans-serif!important;
  letter-spacing:-.035em;
  text-transform:none!important;
  text-align:left!important;
  white-space:nowrap;
  transform:translateY(calc(18 * var(--pzg-form-u)));
}

/* Siatka pól — dokładnie: lewy margines 100, prawy 144, przerwa 63,
 * wysokość pola 144, pionowy odstęp 32 (jednostki PSD). */
.pzg-oe-page .pzg-school-form-block .pzg-school-form__grid{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  grid-template-rows:auto auto auto!important;
  column-gap:calc(63 * var(--pzg-form-u))!important;
  row-gap:calc(32 * var(--pzg-form-u))!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
}
.pzg-oe-page .pzg-school-form-block .pzg-school-form__field{min-width:0;margin:0!important;padding:0!important}
.pzg-oe-page .pzg-school-form-block .pzg-school-form__field--school{grid-column:1;grid-row:1}
.pzg-oe-page .pzg-school-form-block .pzg-school-form__field--classes{grid-column:1;grid-row:2}
.pzg-oe-page .pzg-school-form-block .pzg-school-form__field--contact{grid-column:1;grid-row:3}
.pzg-oe-page .pzg-school-form-block .pzg-school-form__field--position{grid-column:2;grid-row:1}
.pzg-oe-page .pzg-school-form-block .pzg-school-form__field--email{grid-column:2;grid-row:2}
.pzg-oe-page .pzg-school-form-block .pzg-school-form__field--phone{grid-column:2;grid-row:3}
.pzg-oe-page .pzg-school-form-block .pzg-school-form__field .wpcf7-form-control-wrap{display:block;width:100%;margin:0}

.pzg-oe-page .pzg-school-form-block .pzg-school-form :is(input[type="text"],input[type="email"],input[type="tel"],input[type="number"],select,textarea){
  display:block;
  width:100%;
  min-height:calc(144 * var(--pzg-form-u));
  height:calc(144 * var(--pzg-form-u));
  margin:0;
  border:calc(3 * var(--pzg-form-u)) solid var(--pzg-form-violet);
  border-radius:calc(10 * var(--pzg-form-u));
  background:#fff;
  padding:0 calc(58 * var(--pzg-form-u));
  color:var(--pzg-form-ink);
  font:700 clamp(13px,calc(40 * var(--pzg-form-u)),20px)/1.2 "Montserrat",Arial,sans-serif;
  box-shadow:none;
  transition:border-color .16s ease,box-shadow .16s ease;
  appearance:none;
  -webkit-appearance:none;
}
.pzg-oe-page .pzg-school-form-block .pzg-school-form select{
  cursor:pointer;
  padding-right:calc(100 * var(--pzg-form-u));
  background-image:linear-gradient(45deg,transparent 50%,var(--pzg-form-violet) 50%),linear-gradient(135deg,var(--pzg-form-violet) 50%,transparent 50%);
  background-position:calc(100% - calc(54 * var(--pzg-form-u))) 50%,calc(100% - calc(38 * var(--pzg-form-u))) 50%;
  background-size:calc(16 * var(--pzg-form-u)) calc(16 * var(--pzg-form-u)),calc(16 * var(--pzg-form-u)) calc(16 * var(--pzg-form-u));
  background-repeat:no-repeat;
}
.pzg-oe-page .pzg-school-form-block .pzg-school-form :is(input,select,textarea):focus{
  outline:0;
  border-color:var(--pzg-form-violet);
  box-shadow:0 0 0 3px rgba(56,67,229,.13);
}
.pzg-oe-page .pzg-school-form-block .pzg-school-form :is(input,textarea)::placeholder{color:var(--pzg-form-ink);opacity:1}
.pzg-oe-page .pzg-school-form-block .pzg-school-form textarea{height:auto;min-height:calc(220 * var(--pzg-form-u));padding-top:calc(36 * var(--pzg-form-u));padding-bottom:calc(36 * var(--pzg-form-u));resize:vertical}
.pzg-oe-page .pzg-school-form-block .pzg-school-form #position-other-wrapper{margin-top:calc(24 * var(--pzg-form-u))}
.pzg-oe-page .pzg-school-form-block .pzg-school-form #position-other-wrapper input{height:calc(120 * var(--pzg-form-u));min-height:calc(120 * var(--pzg-form-u))}

/* Zgody — pierwszy wiersz zaczyna się 51 jednostek pod polami. */
.pzg-oe-page .pzg-school-form-block .pzg-school-form .wpcf7-form-control-wrap[data-name^="acceptance-"]{
  display:block;
  width:100%;
  margin:calc(18 * var(--pzg-form-u)) 0 0;
  padding-left:0;
}
.pzg-oe-page .pzg-school-form-block .pzg-school-form .wpcf7-form-control-wrap[data-name="acceptance-przetwarzanie"]{margin-top:calc(51 * var(--pzg-form-u))}
.pzg-oe-page .pzg-school-form-block .pzg-school-form .form-privacy-info{margin:calc(38 * var(--pzg-form-u)) 0 0;padding:0;text-align:center}
.pzg-oe-page .pzg-school-form-block .pzg-school-form .wpcf7-acceptance,
.pzg-oe-page .pzg-school-form-block .pzg-school-form .wpcf7-acceptance .wpcf7-list-item,
.pzg-oe-page .pzg-school-form-block .pzg-school-form .wpcf7-acceptance label{display:block;margin:0;padding:0}
.pzg-oe-page .pzg-school-form-block .pzg-school-form .wpcf7-acceptance label{
  position:relative;
  padding-left:calc(57 * var(--pzg-form-u));
  cursor:pointer;
}
.pzg-oe-page .pzg-school-form-block .pzg-school-form .wpcf7-list-item-label,
.pzg-oe-page .pzg-school-form-block .pzg-school-form .wpcf7-acceptance{
  color:var(--pzg-form-ink);
  font:500 clamp(9.5px,calc(28 * var(--pzg-form-u)),14px)/1.2 "Montserrat",Arial,sans-serif;
}
.pzg-oe-page .pzg-school-form-block .pzg-school-form input[type="checkbox"]{
  position:absolute;
  left:0;
  top:0;
  width:calc(48 * var(--pzg-form-u));
  height:calc(50 * var(--pzg-form-u));
  min-width:16px;
  min-height:16px;
  margin:0;
  border:calc(3 * var(--pzg-form-u)) solid var(--pzg-form-violet);
  border-radius:calc(9 * var(--pzg-form-u));
  background:#fff;
  accent-color:var(--pzg-form-violet);
  vertical-align:top;
}

.pzg-oe-page .pzg-school-form-block .pzg-school-form .cf-turnstile,
.pzg-oe-page .pzg-school-form-block .pzg-school-form div.cf-turnstile,
.pzg-oe-page .pzg-school-form-block .pzg-school-form [data-sitekey][data-theme],
.pzg-oe-page .pzg-school-form-block .pzg-school-form [data-turnstile-widget-id]{
  margin-top:calc(38 * var(--pzg-form-u));
}

/* Submit: 108 px od lewej karty, 165 px od prawej, 58 px pod kartą. */
.pzg-oe-page .pzg-school-form-block .pzg-school-form :is(input[type="submit"],button.wpcf7-submit){
  position:absolute;
  left:calc(108 * var(--pzg-form-u));
  right:calc(165 * var(--pzg-form-u));
  top:calc(100% + calc(58 * var(--pzg-form-u)));
  display:flex!important;
  align-items:center;
  justify-content:center;
  width:auto!important;
  min-height:calc(104 * var(--pzg-form-u));
  height:calc(104 * var(--pzg-form-u));
  margin:0!important;
  border:0!important;
  border-radius:999px!important;
  padding:0 calc(40 * var(--pzg-form-u))!important;
  background:var(--pzg-form-coral)!important;
  color:#fff!important;
  font:700 clamp(13px,calc(40 * var(--pzg-form-u)),20px)/1.2 "Montserrat",Arial,sans-serif!important;
  text-align:center;
  cursor:pointer;
  box-shadow:0 calc(12 * var(--pzg-form-u)) calc(34 * var(--pzg-form-u)) rgba(242,102,90,.28)!important;
  opacity:1!important;
  -webkit-text-fill-color:#fff;
  transition:transform .16s ease,filter .16s ease,box-shadow .16s ease!important;
  z-index:2;
}
.pzg-oe-page .pzg-school-form-block .pzg-school-form :is(input[type="submit"],button.wpcf7-submit):hover{filter:brightness(.97);transform:translateY(-1px);box-shadow:0 calc(14 * var(--pzg-form-u)) calc(38 * var(--pzg-form-u)) rgba(242,102,90,.32)!important}
.pzg-oe-page .pzg-school-form-block .pzg-school-form :is(input[type="submit"],button.wpcf7-submit):focus-visible{outline:3px solid #fff;outline-offset:3px}
.pzg-oe-page .pzg-school-form-block .pzg-school-form :is(input[type="submit"],button.wpcf7-submit)[disabled],
.pzg-oe-page .pzg-school-form-block .pzg-school-form :is(input[type="submit"],button.wpcf7-submit).disabled{
  opacity:1!important;
  background:var(--pzg-form-coral)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff;
  filter:saturate(.95) brightness(.98)!important;
  box-shadow:0 calc(10 * var(--pzg-form-u)) calc(26 * var(--pzg-form-u)) rgba(242,102,90,.22)!important;
  cursor:not-allowed;
}
.pzg-oe-page .pzg-school-form-block .pzg-school-form .wpcf7-spinner{
  position:absolute;
  right:calc(185 * var(--pzg-form-u));
  top:calc(100% + calc(84 * var(--pzg-form-u)));
  margin:0;
  z-index:3;
}
.pzg-oe-page .pzg-school-form-block .pzg-school-form .wpcf7-response-output{
  margin:calc(30 * var(--pzg-form-u)) 0 0!important;
  border-radius:8px;
  padding:10px 14px!important;
  color:var(--pzg-form-ink);
  font:600 clamp(10px,calc(28 * var(--pzg-form-u)),14px)/1.35 "Montserrat",Arial,sans-serif;
}
.pzg-oe-page .pzg-school-form-block .pzg-school-form .wpcf7-not-valid-tip{margin-top:4px;color:#b32424;font:600 11px/1.25 "Montserrat",Arial,sans-serif}

/* Ewentualny stary nagłówek sekcji jest ukrywany dopiero po rozpoznaniu
 * właściwego formularza szkoły, więc inne formularze CF7 pozostają nietknięte. */
.pzg-oe-page .pzg-school-form-section > :is(h2,h3,.wp-block-heading){display:none}

/* Kompaktowe wysokości desktopowe (np. 1470 × 738):
 * formularz ma się płynnie zmniejszać razem z typografią i spacingiem,
 * zamiast zachowywać pełną skalę dużego desktopu. */
@media (min-width:900px) and (max-height:860px){
  .pzg-oe-page .pzg-school-form-block .pzg-school-form{
    --pzg-form-u:min(.44px,max(.30px,calc(100svh / 2060)));
  }
}

@media (min-width:900px) and (max-height:760px){
  .pzg-oe-page .pzg-school-form-block .pzg-school-form{
    --pzg-form-u:min(.39px,max(.285px,calc(100svh / 2200)));
  }
}

/* Tablet: zachowujemy dwie kolumny, ale podnosimy minimalne rozmiary dotykowe. */
@media (max-width:899px) and (min-width:681px){
  .pzg-oe-page .pzg-school-form-block .pzg-school-form__form{max-width:calc(100% - 28px)}
  .pzg-oe-page .pzg-school-form-block .pzg-school-form :is(input[type="text"],input[type="email"],input[type="tel"],input[type="number"],select){min-height:48px;height:48px}
  .pzg-oe-page .pzg-school-form-block .pzg-school-form input[type="checkbox"]{width:18px;height:18px}
}

/* Telefon: układ jednokolumnowy. Geometria desktopowa nie jest ściskana do
 * nieczytelnych rozmiarów; zachowujemy ten sam język wizualny i kolory PSD. */
@media (max-width:680px){
  .pzg-oe-page .pzg-school-form-block .pzg-school-form{
    --pzg-form-u:.32px;
    padding:34px 12px 92px;
  }
  .pzg-oe-page .pzg-school-form-block .pzg-school-form__form{
    width:100%;
    max-width:100%;
    min-height:0;
    padding:126px 18px 28px;
    border-radius:16px;
  }
  .pzg-oe-page .pzg-school-form-block .pzg-school-form__heading{top:24px;left:18px;right:18px;gap:18px}
  .pzg-oe-page .pzg-school-form-block .pzg-school-form__icon{flex-basis:82px;width:82px;height:82px}
  .pzg-oe-page .pzg-school-form-block .pzg-school-form__title{font-size:clamp(27px,8vw,38px)!important;transform:none;letter-spacing:-.03em}
  .pzg-oe-page .pzg-school-form-block .pzg-school-form__grid{grid-template-columns:1fr!important;grid-template-rows:none!important;gap:11px!important}
  .pzg-oe-page .pzg-school-form-block .pzg-school-form__field--school,
  .pzg-oe-page .pzg-school-form-block .pzg-school-form__field--classes,
  .pzg-oe-page .pzg-school-form-block .pzg-school-form__field--contact,
  .pzg-oe-page .pzg-school-form-block .pzg-school-form__field--position,
  .pzg-oe-page .pzg-school-form-block .pzg-school-form__field--email,
  .pzg-oe-page .pzg-school-form-block .pzg-school-form__field--phone{grid-column:1;grid-row:auto}
  .pzg-oe-page .pzg-school-form-block .pzg-school-form__field--school{order:1}
  .pzg-oe-page .pzg-school-form-block .pzg-school-form__field--position{order:2}
  .pzg-oe-page .pzg-school-form-block .pzg-school-form__field--classes{order:3}
  .pzg-oe-page .pzg-school-form-block .pzg-school-form__field--email{order:4}
  .pzg-oe-page .pzg-school-form-block .pzg-school-form__field--contact{order:5}
  .pzg-oe-page .pzg-school-form-block .pzg-school-form__field--phone{order:6}
  .pzg-oe-page .pzg-school-form-block .pzg-school-form :is(input[type="text"],input[type="email"],input[type="tel"],input[type="number"],select,textarea){height:auto;min-height:50px;padding-left:14px;padding-right:14px;font-size:14px;border-width:1px;border-radius:5px}
  .pzg-oe-page .pzg-school-form-block .pzg-school-form select{padding-right:40px;background-size:6px 6px,6px 6px;background-position:calc(100% - 20px) 50%,calc(100% - 14px) 50%}
  .pzg-oe-page .pzg-school-form-block .pzg-school-form .wpcf7-form-control-wrap[data-name="acceptance-przetwarzanie"]{margin-top:18px}
  .pzg-oe-page .pzg-school-form-block .pzg-school-form .wpcf7-form-control-wrap[data-name^="acceptance-"]{margin-top:12px}
  .pzg-oe-page .pzg-school-form-block .pzg-school-form .wpcf7-acceptance label{padding-left:28px}
  .pzg-oe-page .pzg-school-form-block .pzg-school-form .wpcf7-list-item-label,
  .pzg-oe-page .pzg-school-form-block .pzg-school-form .wpcf7-acceptance{font-size:10.5px;line-height:1.3}
  .pzg-oe-page .pzg-school-form-block .pzg-school-form input[type="checkbox"]{width:18px;height:18px;min-width:18px;min-height:18px;border-width:1px;border-radius:4px}
  .pzg-oe-page .pzg-school-form-block .pzg-school-form :is(input[type="submit"],button.wpcf7-submit){left:18px;right:18px;top:calc(100% + 20px);height:46px;min-height:46px;font-size:14px!important}
  .pzg-oe-page .pzg-school-form-block .pzg-school-form .wpcf7-spinner{right:28px;top:calc(100% + 31px)}
}

@media(prefers-reduced-motion:reduce){
  .pzg-oe-page .pzg-school-form-block .pzg-school-form *{transition:none!important}
}

/* 0.13.0-alpha66 — progresywne skalowanie formularza na mniejszych desktopach.
 * Wrapper bloku nie dodaje własnej geometrii: pełne tło i karta nadal należą
 * do wygenerowanego przez CF7 elementu .pzg-school-form. */
.pzg-oe-page .pzg-school-form-block{
  position:relative;
  width:100%;
  margin:0;
  padding:0;
}
.pzg-oe-page .pzg-school-form-block > .wpcf7{margin-top:0!important;margin-bottom:0!important}
.pzg-oe-page .pzg-school-form-placeholder{
  width:min(960px,calc(100% - 32px));
  margin:28px auto;
  padding:28px 30px;
  border:1px dashed #3843e5;
  border-radius:14px;
  background:#fff;
  color:#0036a5;
  font-family:"Montserrat",Arial,sans-serif;
  text-align:center;
}
.pzg-oe-page .pzg-school-form-placeholder strong{display:block;font-size:20px;line-height:1.25}
.pzg-oe-page .pzg-school-form-placeholder p{margin:8px 0 0;font-size:14px;line-height:1.5}
/* Alpha86: smaller labels, FAQ chevrons above the dotted baseline. */
.pzg-ref .pzg-ref-ai-label.pzg-ref-ai-label--svg{width:100px}
.pzg-ref--hero .pzg-ref-ai-media--hero .pzg-ref-ai-label--svg{width:100px}
.pzg-ref .pzg-ref-ai-label.pzg-ref-ai-label--basic,
.pzg-ref--hero .pzg-ref-ai-media--hero .pzg-ref-ai-label--basic{width:32px}
.pzg-ref .pzg-ref-ai-label{font-size:10px;padding:3px 5px;gap:4px}
.pzg-ref .pzg-ref-ai-label>.pzg-ref-ai-label__icon{width:24px;height:24px;flex-basis:24px}
.pzg-ref .pzg-ref-ai-label.pzg-ref-ai-label--svg{padding:0}

.pzg-ref--faq-tabs .pzg-ref-tab-panel summary{position:relative;padding-right:0}
.pzg-ref--faq-tabs .pzg-ref-tab-panel summary::before{margin-right:0;align-self:center;margin-bottom:0;transform:translateY(.14em)}
.pzg-ref--faq-tabs .pzg-ref-tab-panel summary::after{
 position:absolute;right:8px;top:calc(50% - 26px);bottom:auto;margin:0;
 background:transparent;box-shadow:none;
}
.pzg-ref--faq-tabs .pzg-ref-tab-panel details[open] summary::after{margin:0;top:calc(50% - 26px);bottom:auto}
@media(max-width:899px){
 .pzg-ref--faq-tabs .pzg-ref-faq-question{padding-right:8px}
 .pzg-ref--faq-tabs .pzg-ref-tab-panel summary::before{flex:0 0 40px;margin-bottom:0}
 .pzg-ref--faq-tabs .pzg-ref-tab-panel summary::after{right:8px;top:calc(50% - 22px);bottom:auto}
 .pzg-ref--faq-tabs .pzg-ref-tab-panel details[open] summary::after{top:calc(50% - 22px);bottom:auto}
}

/* Legacy project: accessible plain text, visual PSD lines only on desktop. */
@media(min-width:900px){
 .pzg-ref--text-media.pzg-student-layout--legacy .pzg-ref-startee-reference-lines{display:block!important;margin:0!important}
 .pzg-ref--text-media.pzg-student-layout--legacy .pzg-ref-startee-reference-lines>span{display:block;white-space:nowrap}
 .pzg-ref--text-media.pzg-student-layout--legacy .pzg-ref-startee-reference-plain{
  position:absolute!important;width:1px!important;height:1px!important;
  margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;
 }
 body.pzg-oe-page.pzg-compact-height .pzg-ref--text-media.pzg-student-layout--legacy .pzg-ref-startee-body{
  max-width:none;margin-top:calc(170 * var(--pzg-01c-u));font-size:var(--pzg-section-body);line-height:1.17;
 }
}
/* Alpha90: thumbnails fill the 16:9 card; retain the light frame. */
.pzg-resources--videos .pzg-resource-card__media{
 background:#fff;border:1px solid #e7ebf5;border-radius:10px;
}
.pzg-resources--videos .pzg-resource-card__play{background:#fff;border-radius:0}
.pzg-resources--videos .pzg-resource-card__play img{
 object-fit:cover;object-position:center;background:#fff;border-radius:0;
}
/* Disable dictionary hyphenation in both reference and classic feature tiles.
 * Wrap between words; break-word is reserved for overlong URLs/tokens. */
.pzg-ref--features :is(.pzg-ref-feature-front,.pzg-ref-feature-back),
.pzg-ref--features :is(.pzg-ref-feature-front,.pzg-ref-feature-back) *,
.pzg-oe-features :is(.pzg-oe-feature__front,.pzg-oe-feature__back),
.pzg-oe-features :is(.pzg-oe-feature__front,.pzg-oe-feature__back) *{
 hyphens:none!important;-webkit-hyphens:none!important;
 word-break:normal;overflow-wrap:break-word;
}
/* Alpha89: the alignment dropdown was removed. Editor formatting is respected. */
.pzg-ref--text-media .pzg-ref-startee-body,
.pzg-oe-text-media .pzg-oe-text-media__body{text-align:left}
.pzg-ref--text-media .pzg-ref-startee-body *,
.pzg-oe-text-media .pzg-oe-text-media__body *{text-align:inherit}
.pzg-ref--text-media[data-student-editor-align="center"] .pzg-ref-startee-body{text-align:center}
.pzg-ref--text-media[data-student-editor-align="right"] .pzg-ref-startee-body{text-align:right}
.pzg-ref--text-media[data-student-editor-align="justify"] .pzg-ref-startee-body{text-align:justify}
.pzg-ref--text-media[data-student-editor-align="justify"] .pzg-ref-startee-reference-lines>span{text-align-last:justify}
.pzg-ref--text-media[data-student-editor-align] .pzg-ref-startee-reference-lines>span:last-child{text-align-last:auto}
/* Applied only to the application description; other sections retain their settings. */
.pzg-ref--text-media[data-student-hyphenation="yes"] .pzg-ref-startee-body,
.pzg-ref--text-media[data-student-hyphenation="yes"] .pzg-ref-startee-body *,
.pzg-oe-text-media[data-student-hyphenation="yes"] .pzg-oe-text-media__body,
.pzg-oe-text-media[data-student-hyphenation="yes"] .pzg-oe-text-media__body *{
 hyphens:auto;-webkit-hyphens:auto;word-break:normal;overflow-wrap:break-word;
}
.pzg-ref--text-media[data-student-hyphenation="no"] .pzg-ref-startee-body,
.pzg-ref--text-media[data-student-hyphenation="no"] .pzg-ref-startee-body *,
.pzg-oe-text-media[data-student-hyphenation="no"] .pzg-oe-text-media__body,
.pzg-oe-text-media[data-student-hyphenation="no"] .pzg-oe-text-media__body *{
 hyphens:none;-webkit-hyphens:none;word-break:normal;overflow-wrap:break-word;
}

/* Manual break points survive WordPress removing the paragraph's inline CSS. */
.pzg-ref--text-media[data-student-hyphenation="manual"] .pzg-ref-startee-body,
.pzg-ref--text-media[data-student-hyphenation="manual"] .pzg-ref-startee-body *,
.pzg-oe-text-media[data-student-hyphenation="manual"] .pzg-oe-text-media__body,
.pzg-oe-text-media[data-student-hyphenation="manual"] .pzg-oe-text-media__body *{
 hyphens:manual!important;-webkit-hyphens:manual!important;word-break:normal;overflow-wrap:break-word;
}
/* Alpha91: use the available width while preserving the left axes. */
.pzg-ref--why-worth .pzg-ref-why-copy :is(p,ul,ol){width:100%;max-width:none;box-sizing:border-box}
.pzg-ref--why-worth .pzg-ref-why-copy li{text-wrap:wrap;white-space:normal}
/* Alpha92: keep the original right grid gutter; do not extend beyond its axis. */
/* The back faces share a top baseline instead of centering every description. */
@media(min-width:1280px){
 .pzg-ref--features .pzg-ref-feature-back{align-items:flex-start;justify-content:flex-start;padding:var(--pzg-ref-back-fit-padding,10px)}
 .pzg-ref--features .pzg-ref-feature-back__content{width:100%;max-width:none;margin:0;box-sizing:border-box}
 .pzg-oe-features .pzg-oe-feature__back{justify-content:flex-start}
}
/* Explicit coverage of mobile descriptions as well as the desktop back faces. */
.pzg-ref--features .pzg-ref-feature-description,
.pzg-ref--features .pzg-ref-feature-description *{
 hyphens:none!important;-webkit-hyphens:none!important;word-break:normal;overflow-wrap:break-word;
}

@media(min-width:1100px) and (max-width:1279px){
 .pzg-ref--features .pzg-ref-feature-back{align-items:flex-start;justify-content:flex-start;padding:var(--pzg-ref-back-fit-padding,10px)}
 .pzg-ref--features .pzg-ref-feature-back__content{margin:0}
}
/* Front titles may wrap at spaces; keep the four columns and original icon sizes.
 * A revealed long description can grow the row, but must not stretch the gap
 * between the icon and its title on the other, still closed cards. */
@media(min-width:1100px){
 .pzg-ref--features .pzg-ref-feature-front span{
  display:block;min-height:var(--pzg-feature-title-height,2.24em);white-space:normal;text-wrap:balance;overflow-wrap:normal;word-break:normal;
 }
 .pzg-ref--features.pzg-ref--features-grow .pzg-ref-feature-front{
  justify-content:center;gap:clamp(24px,calc(74 * var(--u)),44px);
 }
}

/* Small laptops: increase useful column width inside the existing guide axes.
 * Height is fitted before interaction and remains stable when cards open. */
@media(min-width:1100px) and (max-width:1680px){
 .pzg-ref--features{
  padding:clamp(28px,calc(110 * var(--u)),48px) clamp(24px,calc(90 * var(--u)),38px);
 }
}
