.elementor-3677 .elementor-element.elementor-element-26b591f{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:120px;--padding-bottom:85px;--padding-left:15px;--padding-right:15px;}.elementor-3677 .elementor-element.elementor-element-972170e{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-start;--gap:6px 6px;--row-gap:6px;--column-gap:6px;--margin-top:0px;--margin-bottom:35px;--margin-left:0px;--margin-right:0px;}.elementor-widget-heading .elementor-heading-title{color:var( --e-global-color-primary );}.elementor-3677 .elementor-element.elementor-element-b3dcf27 .elementor-heading-title{font-family:"Para", Sans-serif;font-size:0.9rem;font-weight:600;line-height:1.8em;color:#3D3D3D;}.elementor-3677 .elementor-element.elementor-element-b3dcf27 .elementor-heading-title a:hover, .elementor-3677 .elementor-element.elementor-element-b3dcf27 .elementor-heading-title a:focus{color:var( --e-global-color-c10748e );}.elementor-3677 .elementor-element.elementor-element-0cf32c5{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-3677 .elementor-element.elementor-element-fe9ab33{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:55px 55px;--row-gap:55px;--column-gap:55px;}.elementor-3677 .elementor-element.elementor-element-f14eeea{--display:flex;}.elementor-widget-theme-post-title .elementor-heading-title{color:var( --e-global-color-primary );}.elementor-3677 .elementor-element.elementor-element-5e4210d{text-align:start;}.elementor-3677 .elementor-element.elementor-element-5e4210d .elementor-heading-title{font-family:"Title", Sans-serif;font-size:4.2rem;font-weight:700;line-height:1.2em;color:#1577AF;}.elementor-widget-theme-post-excerpt{color:var( --e-global-color-text );}.elementor-3677 .elementor-element.elementor-element-00460ad{width:var( --container-widget-width, 85% );max-width:85%;margin:35px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;--container-widget-width:85%;--container-widget-flex-grow:0;text-align:start;font-family:"Para", Sans-serif;font-size:1.4rem;font-weight:300;line-height:1.6em;}.elementor-3677 .elementor-element.elementor-element-00460ad.elementor-element{--align-self:flex-start;}.elementor-3677 .elementor-element.elementor-element-7f57447{width:var( --container-widget-width, 85% );max-width:85%;margin:35px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;--container-widget-width:85%;--container-widget-flex-grow:0;}.elementor-3677 .elementor-element.elementor-element-4b7739d{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:center;--gap:25px 25px;--row-gap:25px;--column-gap:25px;border-style:solid;--border-style:solid;border-width:1px 0px 1px 0px;--border-top-width:1px;--border-right-width:0px;--border-bottom-width:1px;--border-left-width:0px;border-color:#89C5E85C;--border-color:#89C5E85C;--margin-top:35px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:18px;--padding-bottom:18px;--padding-left:25px;--padding-right:25px;}.elementor-3677 .elementor-element.elementor-element-4b7739d.e-con{--align-self:flex-start;}.elementor-3677 .elementor-element.elementor-element-3dab225{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:center;--gap:5px 5px;--row-gap:5px;--column-gap:5px;}.elementor-3677 .elementor-element.elementor-element-337c313.elementor-element{--align-self:center;}.elementor-3677 .elementor-element.elementor-element-337c313 .elementor-heading-title{font-family:"Para", Sans-serif;font-size:0.85rem;font-weight:600;color:#475569;}.elementor-3677 .elementor-element.elementor-element-17bca40{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-start;--gap:5px 5px;--row-gap:5px;--column-gap:5px;}.elementor-3677 .elementor-element.elementor-element-f920e9d.elementor-element{--align-self:center;}.elementor-3677 .elementor-element.elementor-element-f920e9d .elementor-heading-title{font-family:"Para", Sans-serif;font-size:0.85rem;font-weight:600;color:#475569;}.elementor-3677 .elementor-element.elementor-element-a47c856.elementor-element{--align-self:center;}.elementor-3677 .elementor-element.elementor-element-2f02670{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:center;--gap:5px 5px;--row-gap:5px;--column-gap:5px;}.elementor-3677 .elementor-element.elementor-element-fd36ae6.elementor-element{--align-self:center;}.elementor-3677 .elementor-element.elementor-element-fd36ae6 .elementor-heading-title{font-family:"Para", Sans-serif;font-size:0.85rem;font-weight:600;color:var( --e-global-color-text );}.elementor-3677 .elementor-element.elementor-element-48079cf{--display:flex;}.elementor-widget-theme-post-featured-image .widget-image-caption{color:var( --e-global-color-text );}.elementor-3677 .elementor-element.elementor-element-d36f5f8 img{border-style:solid;border-width:1px 1px 1px 1px;border-color:#1577AF;border-radius:20px 20px 20px 20px;box-shadow:0px 0px 35px -15px rgba(0, 0, 0, 0.1);}.elementor-3677 .elementor-element.elementor-element-b4b8460{margin:25px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:start;}.elementor-3677 .elementor-element.elementor-element-b4b8460.elementor-element{--align-self:flex-start;}.elementor-3677 .elementor-element.elementor-element-b4b8460 .elementor-heading-title{font-family:"Para", Sans-serif;font-size:1rem;font-weight:600;color:#475569;}.elementor-3677 .elementor-element.elementor-element-1712c5e{margin:15px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;--alignment:left;--grid-side-margin:10px;--grid-column-gap:10px;--grid-row-gap:20px;--grid-bottom-margin:20px;}.elementor-3677 .elementor-element.elementor-element-1712c5e.elementor-element{--align-self:flex-start;}.elementor-3677 .elementor-element.elementor-element-71a04e8{--display:flex;}.elementor-3677 .elementor-element.elementor-element-f85a21f{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:120px;--padding-left:0px;--padding-right:0px;}.elementor-3677 .elementor-element.elementor-element-b1b5d3a{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-widget-table-of-contents{--header-color:var( --e-global-color-secondary );--item-text-color:var( --e-global-color-text );--item-text-hover-color:var( --e-global-color-accent );--marker-color:var( --e-global-color-text );}.elementor-3677 .elementor-element.elementor-element-98f6a63{--box-border-color:#CAD9E2;--box-border-width:1px;--box-border-radius:15px;--nested-list-indent:1.2em;--item-text-hover-color:var( --e-global-color-c10748e );--item-text-hover-decoration:underline;--item-text-active-color:var( --e-global-color-c10748e );--item-text-active-decoration:underline;--marker-size:0px;}.elementor-3677 .elementor-element.elementor-element-98f6a63 .elementor-toc__header-title{text-align:start;}.elementor-3677 .elementor-element.elementor-element-98f6a63 .elementor-toc__header, .elementor-3677 .elementor-element.elementor-element-98f6a63 .elementor-toc__header-title{font-family:"Title", Sans-serif;font-size:1rem;font-weight:600;}.elementor-3677 .elementor-element.elementor-element-98f6a63 .elementor-toc__header{flex-direction:row;}.elementor-3677 .elementor-element.elementor-element-98f6a63 .elementor-toc__list-item{font-family:"Para", Sans-serif;font-size:0.8rem;font-weight:400;line-height:1.4em;}.elementor-3677 .elementor-element.elementor-element-a215b58{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-3677 .elementor-element.elementor-element-b228d4e{--display:flex;}.elementor-3677 .elementor-element.elementor-element-a5edd28{padding:24px 24px 24px 24px;}.elementor-widget-text-editor{color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-3677 .elementor-element.elementor-element-842d94a{padding:30px 30px 30px 30px;}.elementor-3677 .elementor-element.elementor-element-2a3f250{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 35px) 0px;}.elementor-widget-theme-post-content{color:var( --e-global-color-text );}.elementor-3677 .elementor-element.elementor-element-4fbfbee{font-family:"Para", Sans-serif;font-size:1rem;}.elementor-3677 .elementor-element.elementor-element-498fb76{--display:flex;}.elementor-3677 .elementor-element.elementor-element-cf27d69{--n-accordion-title-font-size:1rem;margin:35px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;--n-accordion-title-justify-content:space-between;--n-accordion-title-flex-grow:1;--n-accordion-title-icon-order:initial;--n-accordion-item-title-space-between:0px;--n-accordion-item-title-distance-from-content:0px;--n-accordion-icon-size:15px;}.elementor-3677 .elementor-element.elementor-element-f6a93de{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-3677 .elementor-element.elementor-element-f6a93de:not(.elementor-motion-effects-element-type-background), .elementor-3677 .elementor-element.elementor-element-f6a93de > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F8FAFC;}.elementor-3677 .elementor-element.elementor-element-28a44af{padding:0px 0px 0px 0px;}@media(max-width:1366px){.elementor-3677 .elementor-element.elementor-element-f85a21f{--padding-top:0px;--padding-bottom:65px;--padding-left:0px;--padding-right:0px;}}@media(max-width:1200px){.elementor-3677 .elementor-element.elementor-element-fe9ab33{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-3677 .elementor-element.elementor-element-00460ad{--container-widget-width:95%;--container-widget-flex-grow:0;width:var( --container-widget-width, 95% );max-width:95%;}.elementor-3677 .elementor-element.elementor-element-4b7739d{--padding-top:15px;--padding-bottom:15px;--padding-left:15px;--padding-right:15px;}.elementor-3677 .elementor-element.elementor-element-d36f5f8{text-align:start;}.elementor-3677 .elementor-element.elementor-element-d36f5f8 img{width:285px;}.elementor-3677 .elementor-element.elementor-element-f85a21f{--padding-top:0px;--padding-bottom:65px;--padding-left:0px;--padding-right:0px;}}@media(max-width:1024px){.elementor-3677 .elementor-element.elementor-element-00460ad{--container-widget-width:95%;--container-widget-flex-grow:0;width:var( --container-widget-width, 95% );max-width:95%;font-size:1.2rem;}.elementor-3677 .elementor-element.elementor-element-4b7739d{--gap:5px 5px;--row-gap:5px;--column-gap:5px;} .elementor-3677 .elementor-element.elementor-element-1712c5e{--grid-side-margin:10px;--grid-column-gap:10px;--grid-row-gap:20px;--grid-bottom-margin:20px;}.elementor-3677 .elementor-element.elementor-element-b228d4e{--margin-top:25px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}}@media(max-width:880px){.elementor-3677 .elementor-element.elementor-element-5e4210d .elementor-heading-title{font-size:2.8rem;}.elementor-3677 .elementor-element.elementor-element-00460ad{margin:25px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;font-size:1rem;}}@media(max-width:767px){.elementor-3677 .elementor-element.elementor-element-26b591f{--padding-top:85px;--padding-bottom:45px;--padding-left:15px;--padding-right:15px;}.elementor-3677 .elementor-element.elementor-element-5e4210d .elementor-heading-title{font-size:1.6rem;}.elementor-3677 .elementor-element.elementor-element-00460ad{font-size:0.9rem;}.elementor-3677 .elementor-element.elementor-element-4b7739d{--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:15px 15px;--row-gap:15px;--column-gap:15px;--margin-top:25px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:25px;--padding-bottom:25px;--padding-left:0px;--padding-right:0px;}.elementor-3677 .elementor-element.elementor-element-d36f5f8 img{width:100%;} .elementor-3677 .elementor-element.elementor-element-1712c5e{--grid-side-margin:10px;--grid-column-gap:10px;--grid-row-gap:20px;--grid-bottom-margin:20px;}}@media(min-width:768px){.elementor-3677 .elementor-element.elementor-element-f14eeea{--width:75%;}.elementor-3677 .elementor-element.elementor-element-4b7739d{--width:95%;}.elementor-3677 .elementor-element.elementor-element-48079cf{--width:25%;}.elementor-3677 .elementor-element.elementor-element-b1b5d3a{--width:25%;}.elementor-3677 .elementor-element.elementor-element-a215b58{--width:50%;}.elementor-3677 .elementor-element.elementor-element-f6a93de{--width:25%;}}@media(max-width:1366px) and (min-width:768px){.elementor-3677 .elementor-element.elementor-element-48079cf{--width:35%;}}@media(max-width:1200px) and (min-width:768px){.elementor-3677 .elementor-element.elementor-element-f14eeea{--width:100%;}.elementor-3677 .elementor-element.elementor-element-48079cf{--width:45%;}}@media(max-width:1024px) and (min-width:768px){.elementor-3677 .elementor-element.elementor-element-4b7739d{--width:100%;}}@media(max-width:880px) and (min-width:768px){.elementor-3677 .elementor-element.elementor-element-48079cf{--width:100%;}}/* Start custom CSS for shortcode, class: .elementor-element-0cf32c5 */.post-type-label {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    padding: 4px 10px;
    border-radius: 999px;
    font-size: 0.9rem;
    font-weight: 500;
    line-height: 1.2;
    white-space: nowrap;
    font-family: 'Para', sans-serif;
}

/* Encyklopedia */
.post-type-label--encyklopedia {
    background-color: #EAF4FA;
    color: rgb(13 86 126);
    border: solid 1px #cccde8;
}

/* Suplementy */
.post-type-label--suplementy {
    background-color: #ECFDF5;
    color: rgb(4 120 87 / var(--tw-text-opacity, 1));
    border: solid 1px rgb(4 120 87 / var(--tw-text-opacity, 1));
}

/* Zalecenia */
.post-type-label--zalecenia {
    background-color: #FAF5FF;
    color: rgb(126 34 206 / var(--tw-text-opacity, 1));
     border: solid 1px rgb(126 34 206 / var(--tw-text-opacity, 1));
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-7f57447 *//*
 * NeuroExpert — taksonomie treści
 * Scope: tylko komponent shortcode [taksonomie_tresci] / [taksonomie_wpisu]
 */

.ne-tax-box {
    --ne-primary: #1577af;
    --ne-primary-dk: #11618e;
    --ne-primary-bg: #eaf4fa;
    --ne-primary-dot: #89c5e8;
    --ne-head: #0f172a;
    --ne-body: #475569;
    --ne-muted: #64748b;
    --ne-faint: #94a3b8;
    --ne-bg: #f8fafc;
    --ne-bg-soft: #f1f5f9;
    --ne-white: #ffffff;
    --ne-border: #e2e8f0;
    --ne-border-lt: #f1f5f9;
    --ne-border-md: #cbd5e1;
    --ne-purple: #6b21a8;
    --ne-purple-dk: #7e22ce;
    --ne-purple-bg: #faf5ff;
    --ne-green: #047857;
    --ne-green-bg: #ecfdf5;
    --ne-font-body: "Para", Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --ne-font-head: "Title", Merriweather, Georgia, serif;
    --ne-radius-lg: 20px;
    --ne-radius-pill: 9999px;
    --ne-shadow-xs: 0 1px 3px rgba(0, 0, 0, 0.06), 0 1px 2px rgba(0, 0, 0, 0.04);
    --ne-shadow-soft: 0 8px 24px rgba(15, 23, 42, 0.06);

    display: flex;
    flex-direction: column;
    gap: 16px;
    font-family: var(--ne-font-body);
}





.ne-tax-section--secondary {
    border-left: 4px solid var(--ne-border-md);
    background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
}

.ne-tax-section--tertiary {
    border-left: 4px solid var(--ne-primary-dot);
    background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
}

/* Nagłówki sekcji */
.ne-tax-heading {
    margin: 0 0 11px;
    font-family: var(--ne-font-body);
    font-size: 11px;
    font-weight: 700;
    line-height: 1.2;
    color: var(--ne-muted);
    text-transform: uppercase;
    letter-spacing: 0.09em;
}

/* Lista */
.ne-tax-list {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

/* Badge bazowy */
.ne-tax-badge {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 32px;
    max-width: 100%;
    border-radius: var(--ne-radius-pill);
    font-family: var(--ne-font-body);
    font-size: 13px;
    font-weight: 600;
    line-height: 1.2;
    text-decoration: none;
    white-space: normal;
    overflow-wrap: anywhere;
    transition:
        background-color 0.18s ease,
        border-color 0.18s ease,
        color 0.18s ease,
        box-shadow 0.18s ease;
}

.ne-tax-badge::before {
    content: attr(data-label);
    display: inline-flex;
    align-items: center;
    flex: 0 0 auto;
    min-height: 20px;
    padding: 3px 8px;
    border-radius: var(--ne-radius-pill);
    font-size: 10px;
    font-weight: 700;
    line-height: 1;
    color: #ffffff;
      background: #9f3df4;
    text-transform: uppercase;
    letter-spacing: 0.055em;
}

/* Wariant główny */
.ne-tax-badge--primary {
    padding: 6px 12px 6px 8px;
    color: var(--ne-primary-dk);
    background-color: #FAF5FF;
    border: 1px solid rgba(21, 119, 175, 0.22);
    box-shadow: 0 4px 14px rgba(21, 119, 175, 0.08);
}

/* Wariant pomocniczy */
.ne-tax-badge--secondary {
    padding: 6px 11px;
    color: var(--ne-body);
    background: var(--ne-bg-soft);
    border: 1px solid var(--ne-border);
}

/* Wariant trzeci — subtelny niebieski */
.ne-tax-badge--tertiary {
    padding: 6px 11px;
    color: var(--ne-primary-dk);
    background: #ffffff;
    border: 1px solid rgba(21, 119, 175, 0.18);
}

/* Prefixy w wariantach pomocniczych */
.ne-tax-badge--secondary::before,
.ne-tax-badge--tertiary::before {
    color: var(--ne-primary-dk);
    background: #7e22ce;
}

/* Blogowe tagi — zachowują lekki charakter # */
.ne-tax-badge--post-tag {
    padding: 6px 11px;
    color: var(--ne-body);
    background: var(--ne-bg-soft);
    border: 1px solid var(--ne-border);
    box-shadow: none;
}

.ne-tax-badge--post-tag::before {
    content: "#";
    min-height: auto;
    padding: 0;
    border-radius: 0;
    color: var(--ne-faint);
    background: transparent;
    font-size: 13px;
    font-weight: 700;
    line-height: 1;
    text-transform: none;
    letter-spacing: 0;
}

/* Opcja: [taksonomie_tresci pokaz_prefixy="false"] */
.ne-tax-box--bez-prefixow .ne-tax-badge {
    padding-inline: 12px;
}

.ne-tax-box--bez-prefixow .ne-tax-badge::before {
    display: none;
}

/* Hover/focus — bez transform */
.ne-tax-badge--primary:hover,
.ne-tax-badge--primary:focus-visible {
    color: var(--ne-primary-dk);
    background: #ffffff;
    border-color: rgba(21, 119, 175, 0.38);
    box-shadow: 0 4px 16px rgba(21, 119, 175, 0.14);
    text-decoration: none;
}

.ne-tax-badge--secondary:hover,
.ne-tax-badge--secondary:focus-visible,
.ne-tax-badge--tertiary:hover,
.ne-tax-badge--tertiary:focus-visible {
    color: var(--ne-head);
    background: #ffffff;
    border-color: var(--ne-border-md);
    box-shadow: var(--ne-shadow-xs);
    text-decoration: none;
}

.ne-tax-badge:focus-visible {
    outline: none;
    box-shadow:
        0 0 0 3px rgba(21, 119, 175, 0.12),
        var(--ne-shadow-xs);
}

/* Empty state */
.ne-tax-empty {
    padding: 16px 18px;
    border: 1px dashed rgba(21, 119, 175, 0.28);
    border-radius: var(--ne-radius-lg);
    color: var(--ne-primary-dk);
    background: var(--ne-primary-bg);
    font-family: var(--ne-font-body);
    font-size: 14px;
    font-weight: 650;
}

/* Mobile */
@media (max-width: 760px) {
    .ne-tax-section {
        border-radius: 16px;
    }

    .ne-tax-list {
        gap: 7px;
    }

    .ne-tax-badge {
        font-size: 12.5px;
        min-height: 30px;
    }

    .ne-tax-badge::before {
        font-size: 9.5px;
        padding-inline: 7px;
    }
}


/* ============================================================
 * ZALECENIA — klasyfikacja w hero
 *
 * Układ „etykieta | pigułki”, ten sam charakter co przy
 * suplementach i encyklopedii, ale w fioletach tej sekcji.
 * Wszystko zagnieżdżone pod .ne-tax-box--zalecenia, więc
 * nie rusza niczego powyżej.
 *
 * Shortcode [taksonomie_tresci] pokazuje prefiksy, ale tutaj
 * powielałyby etykietę wiersza („Rodzaj” obok „RODZAJ”),
 * więc w tym układzie prefiks jest chowany.
 * ============================================================ */

.ne-tax-box--zalecenia,
.ne-tax-box--zalecenie {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
    max-width: 880px;
    margin-top: 26px;
    padding-top: 18px;
    border-top: 1px solid rgba(126, 34, 206, 0.16);
}

/* Wspólny nagłówek nad całym blokiem */
.ne-tax-box--zalecenia::before,
.ne-tax-box--zalecenie::before {
    content: "Klasyfikacja";
    display: block;
    margin-bottom: 15px;
    font-family: var(--ne-font-body);
    font-size: 0.8rem;
    font-weight: 700;
    line-height: 1.2;
    color: var(--ne-muted);
    text-transform: uppercase;
    letter-spacing: 0.095em;
}

/*
 * Każda oś jako wiersz. Zeruje obramowanie i gradient
 * z .ne-tax-section--secondary / --tertiary, które w tym
 * układzie zrobiłyby ciężkie karty jedna pod drugą.
 */
.ne-tax-box--zalecenia .ne-tax-section,
.ne-tax-box--zalecenie .ne-tax-section {
    display: grid;
    grid-template-columns: 80px minmax(0, 1fr);
    align-items: start;
    column-gap: 14px;
    row-gap: 8px;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: none;
    box-shadow: none;
}

/*
 * Etykieta wiersza. Tekst pochodzi z PHP — żadnego font-size:0
 * ani content:, więc dodanie kolejnej osi nie wymaga tknięcia CSS.
 */
.ne-tax-box--zalecenia .ne-tax-heading,
.ne-tax-box--zalecenie .ne-tax-heading {
    margin: 7px 0 0;
    font-size: 0.78rem;
    font-weight: 600;
    line-height: 1.35;
    color: var(--ne-muted);
    text-transform: uppercase;
    letter-spacing: 0.07em;
    overflow-wrap: break-word;
}

.ne-tax-box--zalecenia .ne-tax-list,
.ne-tax-box--zalecenie .ne-tax-list {
    gap: 7px 8px;
}

/* Prefiks zbędny — etykieta wiersza już mówi, co to za oś */
.ne-tax-box--zalecenia .ne-tax-badge::before,
.ne-tax-box--zalecenie .ne-tax-badge::before {
    display: none;
}

.ne-tax-box--zalecenia .ne-tax-badge,
.ne-tax-box--zalecenie .ne-tax-badge {
    min-height: 29px;
    padding: 6px 12px;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.2;
    box-shadow: none;
}

/* ---- kolory per oś ---- */

/* Rodzaj zalecenia — fiolet tej sekcji */
.ne-tax-box--zalecenia .ne-tax-badge--rodzaj-zalecen,
.ne-tax-box--zalecenie .ne-tax-badge--rodzaj-zalecen {
    color: var(--ne-purple);
    background: var(--ne-purple-bg);
    border: 1px solid rgba(126, 34, 206, 0.20);
}

/*
 * Cel — zieleń, ta sama co przy suplementach i encyklopedii.
 * Ta sama oś ma czytać się tak samo w całym serwisie, nawet
 * jeśli reszta strony jest fioletowa.
 */
.ne-tax-box--zalecenia .ne-tax-badge--sciezka-neuroregulacji,
.ne-tax-box--zalecenie .ne-tax-badge--sciezka-neuroregulacji {
    color: var(--ne-green);
    background: var(--ne-green-bg);
    border: 1px solid rgba(4, 120, 87, 0.20);
}

/* ---- hover, bez przesuwania ---- */

.ne-tax-box--zalecenia .ne-tax-badge:hover,
.ne-tax-box--zalecenie .ne-tax-badge:hover,
.ne-tax-box--zalecenia .ne-tax-badge:focus-visible,
.ne-tax-box--zalecenie .ne-tax-badge:focus-visible {
    color: var(--ne-purple);
    background: #ffffff;
    border-color: rgba(126, 34, 206, 0.38);
    box-shadow: 0 4px 14px rgba(126, 34, 206, 0.10);
    text-decoration: none;
}

.ne-tax-box--zalecenia .ne-tax-badge--sciezka-neuroregulacji:hover,
.ne-tax-box--zalecenie .ne-tax-badge--sciezka-neuroregulacji:hover,
.ne-tax-box--zalecenia .ne-tax-badge--sciezka-neuroregulacji:focus-visible,
.ne-tax-box--zalecenie .ne-tax-badge--sciezka-neuroregulacji:focus-visible {
    color: var(--ne-green);
    border-color: rgba(4, 120, 87, 0.40);
    box-shadow: 0 4px 14px rgba(4, 120, 87, 0.10);
}

/* ---- mobile: etykieta nad pigułkami ---- */

@media (max-width: 760px) {
    .ne-tax-box--zalecenia,
    .ne-tax-box--zalecenie {
        max-width: 100%;
        margin-top: 22px;
        padding-top: 16px;
        gap: 12px;
    }

    .ne-tax-box--zalecenia .ne-tax-section,
    .ne-tax-box--zalecenie .ne-tax-section {
        grid-template-columns: 1fr;
        row-gap: 7px;
        border-radius: 0;
    }

    .ne-tax-box--zalecenia .ne-tax-heading,
    .ne-tax-box--zalecenie .ne-tax-heading {
        margin-top: 0;
        font-size: 0.72rem;
    }

    .ne-tax-box--zalecenia .ne-tax-badge,
    .ne-tax-box--zalecenie .ne-tax-badge {
        font-size: 12px;
        min-height: 28px;
    }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-a47c856 */.reading-time {
    
    font-family: "Para", Sans-serif;
    font-size: 0.85rem;
    font-weight: 600;
    text-transform: lowercase;
    color: var(--e-global-color-text);
    
}/* End custom CSS */
/* Start custom CSS for share-buttons, class: .elementor-element-1712c5e *//* --- RESET I KONTENER GŁÓWNY --- */
  /* Celujemy z bardzo wysoką specyficznością (body + elementor-widget) oraz w konkretne ID Twojego widgetu ze zrzutu */
  body .elementor-widget.elementor-widget-share-buttons.ne-share-buttons .elementor-grid,
  .elementor-grid {
    gap: 12px !important;
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
  }

  /* --- STYL POJEDYNCZEGO PRZYCISKU --- */
  body .elementor-widget.elementor-widget-share-buttons.ne-share-buttons .elementor-share-btn,
 .elementor-share-btn {
    background: #f8fafc !important;
    background-color: #f8fafc !important; 
    background-image: none !important; 
    border: 1px solid #e2e8f0 !important; 
    border-radius: 12px !important; 
    width: 44px !important;
    height: 44px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
    cursor: pointer !important;
    padding: 0 !important;
    box-shadow: 0 2px 4px rgba(0,0,0,0.02) !important;
  }

  /* --- STYL IKONY (KONTENER) --- */
  body .elementor-widget.elementor-widget-share-buttons.ne-share-buttons .elementor-share-btn__icon,
 .elementor-share-btn__icon {
    background: transparent !important;
    background-color: transparent !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* --- STYL SAMEGO SVG --- */
  body .elementor-widget.elementor-widget-share-buttons.ne-share-buttons .elementor-share-btn__icon svg,
  body .elementor-widget.elementor-widget-share-buttons.ne-share-buttons .elementor-share-btn__icon svg path,
 .elementor-share-btn__icon svg,
 .elementor-share-btn__icon svg path {
    width: 20px !important;
    height: 20px !important;
    fill: #1577AF !important; 
    color: #64748b !important;
    transition: all 0.3s ease !important;
  }

  /* --- EFEKTY PO NAJECHANIU (HOVER) --- */
  body .elementor-widget.elementor-widget-share-buttons.ne-share-buttons .elementor-share-btn:hover,
  .elementor-share-btn:hover {
    background-color: #ffffff !important;
    background-image: none !important;
    border-color: #1577AF !important; 
    transform: translateY(-3px) !important; 
    box-shadow: 0 8px 15px -3px rgba(21, 119, 175, 0.15) !important; 
  }

  body .elementor-widget.elementor-widget-share-buttons.ne-share-buttons .elementor-share-btn:hover .elementor-share-btn__icon svg,
  body .elementor-widget.elementor-widget-share-buttons.ne-share-buttons .elementor-share-btn:hover .elementor-share-btn__icon svg path,
 .elementor-share-btn:hover .elementor-share-btn__icon svg,
  .elementor-share-btn:hover .elementor-share-btn__icon svg path {
    fill: #1577af !important;
    color: #1577af !important;
    transform: scale(1.1) !important;
  }

  /* Ukrywanie tekstu "Udostępnij" itp. */
  body .elementor-widget.elementor-widget-share-buttons.ne-share-buttons .elementor-share-btn__title,
   .elementor-share-btn__title {
    display: none !important;
  }
  
  
  /* --- PODMIANA IKONY DRUKOWANIA — DRUKARKA OUTLINE 16x16 --- */

body .elementor-widget.elementor-widget-share-buttons.ne-share-buttons .elementor-share-btn_print .elementor-share-btn__icon svg,
.elementor-share-btn_print .elementor-share-btn__icon svg {
  display: none !important;
}

body .elementor-widget.elementor-widget-share-buttons.ne-share-buttons .elementor-share-btn_print .elementor-share-btn__icon::before,
.elementor-share-btn_print .elementor-share-btn__icon::before {
  content: "" !important;
  display: block !important;

  width: 22px !important;
  height: 22px !important;

  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: 22px 22px !important;

  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%231577AF' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 6 2 18 2 18 9'/%3E%3Cpath d='M6 18H4a2 2 0 0 1-2-2v-5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2h-2'/%3E%3Cpath d='M6 14h12v8H6z'/%3E%3C/svg%3E") !important;

  transition: all 0.3s ease !important;
}

body .elementor-widget.elementor-widget-share-buttons.ne-share-buttons .elementor-share-btn_print:hover .elementor-share-btn__icon::before,
.elementor-share-btn_print:hover .elementor-share-btn__icon::before {
  transform: scale(1.1) !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-26b591f *//* 1. Główny kontener z płynniejszym gradientem na dole */
.hero-main-con {
position: relative;
overflow: hidden;
background-color: #FAF5FF !important;

/* Czysty kod bez komentarzy w środku + wymuszenie !important */
background-image:
linear-gradient(to top, rgba(248, 250, 252, 1) 0%, rgba(248, 250, 252, 0.95) 15%, rgba(248, 250, 252, 0.75) 30%, rgba(248, 250, 252, 0.4) 75%, rgba(248, 250, 252, 0.1) 95%, rgba(248, 250, 252, 0) 100%),
radial-gradient(circle at 2px 2px, rgba(255, 255, 255, 0.58) 1px, transparent 0) !important;

background-size: 100% 650px, 40px 40px !important;
background-position: bottom left, top left !important;
background-repeat: no-repeat, repeat !important;
}

/* 2. Jasnoniebieska, rozmyta poświata w prawym górnym rogu */
.hero-main-con::before {
content: "";
position: absolute;
top: -150px;
right: -150px;
width: 400px;
height: 400px;
background-color: #4fb4ee;
border-radius: 50%;
filter: blur(80px);
opacity: 0.3;
pointer-events: none;
z-index: 0;
}

/* 3. Subtelna, biała poświata z lewej strony */
.hero-main-con::after {
content: "";
position: absolute;
top: 150px;
left: -100px;
width: 300px;
height: 300px;
background-color: #ffffff;
border-radius: 50%;
filter: blur(80px);
opacity: 0.1;
pointer-events: none;
z-index: 0;
}

/* 4. Bezpieczeństwo warstw (Z-index) */
.hero-main-con > * {
position: relative;
z-index: 1;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-6b12b62 */.ency-layout {
  --ency-max-width: 1400px;
  --ency-page-gutter: clamp(12px, 2vw, 24px);
  --ency-left-width: 250px;
  --ency-right-width: 280px;
  --ency-gap: 24px;
  --ency-reader-expanded-max: 1040px;
  --ency-sticky-top: 145px;
  --ency-sticky-bottom-gap: 24px;
  --ency-toggle-size: 38px;
  --ency-toggle-outside-offset: 10px;
  --ency-toggle-inside-offset: 8px;
  --ency-sidebar-transition: 360ms cubic-bezier(0.22, 1, 0.36, 1);

  position: relative;
  width: min(
    calc(100% - (2 * var(--ency-page-gutter))),
    var(--ency-max-width)
  ) !important;
  max-width: var(--ency-max-width) !important;
  margin-inline: auto !important;
  overflow: visible !important;
  box-sizing: border-box;
  margin-bottom: var(--ency-sticky-bottom-gap) !important;
}

body.admin-bar .ency-layout {
  --ency-sticky-top: 177px;
}

.ency-layout *,
.ency-layout *::before,
.ency-layout *::after {
  box-sizing: border-box;
}

.ency-layout.e-con,
.ency-layout.e-con.e-con-boxed,
.ency-layout.e-con.e-con-boxed > .e-con-inner,
.ency-layout.elementor-section,
.ency-layout.elementor-section > .elementor-container {
  overflow: visible !important;
}

.ency-layout.e-con.e-con-boxed {
  width: 100% !important;
  max-width: none !important;
}

.ency-layout.e-con.e-con-boxed > .e-con-inner,
.ency-layout.elementor-section > .elementor-container {
  width: min(
    calc(100% - (2 * var(--ency-page-gutter))),
    var(--ency-max-width)
  ) !important;
  max-width: var(--ency-max-width) !important;
  margin-inline: auto !important;
}

.ency-layout.e-con.e-con-full,
.ency-layout.e-con.e-con-boxed > .e-con-inner,
.ency-layout.elementor-section > .elementor-container,
.ency-layout:not(.e-con):not(.elementor-section) {
  display: grid !important;
  align-items: start;
  min-width: 0;
}

.ency-layout .ency-left {
  grid-area: left;
}

.ency-layout .ency-main {
  grid-area: main;
}

.ency-layout .ency-right {
  grid-area: right;
}

.ency-layout .ency-left,
.ency-layout .ency-main,
.ency-layout .ency-right {
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  flex: initial !important;
  flex-basis: auto !important;
}

.ency-layout .ency-main {
  position: relative;
  isolation: isolate;
}

.ency-layout .ency-right > .ency-right__sticky {
  position: static !important;
  top: auto !important;
  max-height: none !important;
  overflow: visible !important;
  padding-right: 0 !important;
}

.ency-layout.elementor-section > .elementor-container > .elementor-column {
  width: auto !important;
}

.ency-mobile-toc-toggle {
  display: none !important;
}

.ency-edge-toggle {
  appearance: none !important;
  -webkit-appearance: none !important;
  position: absolute;
  top: 14px;
  left: 0;
  z-index: 60;
  width: var(--ency-toggle-size) !important;
  min-width: var(--ency-toggle-size) !important;
  max-width: var(--ency-toggle-size) !important;
  height: var(--ency-toggle-size) !important;
  min-height: var(--ency-toggle-size) !important;
  max-height: var(--ency-toggle-size) !important;
  padding: 0 !important;
  margin: 0 !important;
  display: none !important;
  align-items: center !important;
  justify-content: center !important;
  border: 1px solid rgba(21, 119, 175, 0.25) !important;
  border-radius: 10px !important;
  background: rgba(234, 244, 250, 0.96) !important;
  color: #11618e !important;
  font-family: "Para", system-ui, sans-serif !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  cursor: pointer;
  box-shadow: 0 2px 8px rgba(15, 23, 42, 0.08);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  transition:
    background-color 0.18s ease,
    color 0.18s ease,
    border-color 0.18s ease,
    box-shadow 0.18s ease,
    transform 0.15s ease;
}

.ency-edge-toggle.is-animating {
  transition:
    background-color 0.18s ease,
    color 0.18s ease,
    border-color 0.18s ease,
    box-shadow 0.18s ease,
    transform 0.15s ease,
    left var(--ency-sidebar-transition);
}

.ency-edge-toggle:hover {
  background: #1577af !important;
  color: #ffffff !important;
  border-color: #1577af !important;
  box-shadow: 0 6px 18px rgba(21, 119, 175, 0.2);
}

.ency-edge-toggle:active {
  transform: scale(0.96);
}

.ency-edge-toggle:focus-visible,
.ency-mobile-toc-toggle:focus-visible {
  outline: 3px solid rgba(137, 197, 232, 0.72);
  outline-offset: 3px;
}

.ency-edge-toggle.is-fixed {
  position: fixed !important;
  top: var(--ency-sticky-top) !important;
  right: auto !important;
  z-index: 999;
}

.ency-edge-toggle::after {
  content: attr(data-tooltip);
  position: absolute;
  top: calc(100% + 7px);
  left: 50%;
  z-index: 3;
  transform: translateX(-50%) translateY(-2px);
  padding: 6px 8px;
  border-radius: 7px;
  background: #0f172a;
  color: #ffffff;
  font-family: "Para", system-ui, sans-serif;
  font-size: 11px;
  font-weight: 600;
  line-height: 1;
  white-space: nowrap;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition:
    opacity 0.18s ease,
    visibility 0.18s ease,
    transform 0.18s ease;
}

.ency-edge-toggle:hover::after,
.ency-edge-toggle:focus-visible::after {
  opacity: 1;
  visibility: visible;
  transform: translateX(-50%) translateY(0);
}

@media (min-width: 900px) {
  .ency-layout .ency-left .spis-tresci,
  .ency-layout .ency-left .elementor-sticky,
  .ency-layout .ency-left .elementor-sticky--active,
  .ency-layout .ency-left .elementor-sticky--effects {
    top: var(--ency-sticky-top) !important;
  }
}

@media (min-width: 1280px) {
  .ency-layout.e-con.e-con-full,
  .ency-layout.e-con.e-con-boxed > .e-con-inner,
  .ency-layout.elementor-section > .elementor-container,
  .ency-layout:not(.e-con):not(.elementor-section) {
    grid-template-columns:
      var(--ency-left-width)
      minmax(0, 1fr)
      var(--ency-right-width);
    grid-template-areas: "left main right";
    column-gap: var(--ency-gap);
    row-gap: 0;
    transition:
      grid-template-columns var(--ency-sidebar-transition),
      column-gap var(--ency-sidebar-transition);
  }

  .ency-edge-toggle {
    display: inline-flex !important;
  }

  .ency-layout .ency-left {
    position: sticky !important;
    top: var(--ency-sticky-top) !important;
    align-self: start !important;
    max-height: calc(100vh - var(--ency-sticky-top) - var(--ency-sticky-bottom-gap));
    max-height: calc(100dvh - var(--ency-sticky-top) - var(--ency-sticky-bottom-gap));
    overflow-y: auto !important;
    overflow-x: hidden !important;
    overscroll-behavior: contain;
    padding-right: 5px;
    scrollbar-width: thin;
    scrollbar-color: rgba(21, 119, 175, 0.34) transparent;
    transition:
      opacity 220ms ease,
      transform var(--ency-sidebar-transition),
      visibility 220ms ease;
  }

  .ency-layout .ency-right {
    position: relative !important;
    top: auto !important;
    align-self: stretch !important;
    max-height: none !important;
    overflow: visible !important;
    padding-right: 0 !important;
    transition:
      opacity 220ms ease,
      transform var(--ency-sidebar-transition),
      visibility 220ms ease;
  }

  .ency-layout .ency-right > .ency-right__sticky {
    position: sticky !important;
    top: var(--ency-sticky-top) !important;
    max-height: calc(100vh - var(--ency-sticky-top) - var(--ency-sticky-bottom-gap)) !important;
    max-height: calc(100dvh - var(--ency-sticky-top) - var(--ency-sticky-bottom-gap)) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    overscroll-behavior: contain;
    padding-right: 5px !important;
    scrollbar-width: thin;
    scrollbar-color: rgba(21, 119, 175, 0.34) transparent;
  }

  .ency-layout .ency-left::-webkit-scrollbar,
  .ency-layout .ency-right > .ency-right__sticky::-webkit-scrollbar {
    width: 5px;
  }

  .ency-layout .ency-left::-webkit-scrollbar-track,
  .ency-layout .ency-right > .ency-right__sticky::-webkit-scrollbar-track {
    background: transparent;
  }

  .ency-layout .ency-left::-webkit-scrollbar-thumb,
  .ency-layout .ency-right > .ency-right__sticky::-webkit-scrollbar-thumb {
    background: #cbd5e1;
    border-radius: 999px;
  }

  .ency-layout.is-left-hidden:not(.is-right-hidden).e-con.e-con-full,
  .ency-layout.is-left-hidden:not(.is-right-hidden):not(.e-con):not(.elementor-section),
  .ency-layout.is-left-hidden:not(.is-right-hidden).e-con.e-con-boxed > .e-con-inner,
  .ency-layout.is-left-hidden:not(.is-right-hidden).elementor-section > .elementor-container {
    grid-template-columns: 0 minmax(0, 1fr) var(--ency-right-width) !important;
    column-gap: 0 !important;
  }

  .ency-layout.is-left-hidden:not(.is-right-hidden) .ency-left {
    opacity: 0;
    visibility: hidden;
    transform: translateX(-18px);
    overflow: hidden !important;
    pointer-events: none;
  }

  .ency-layout.is-left-hidden:not(.is-right-hidden) .ency-right {
    margin-left: var(--ency-gap);
  }

  .ency-layout.is-right-hidden:not(.is-left-hidden).e-con.e-con-full,
  .ency-layout.is-right-hidden:not(.is-left-hidden):not(.e-con):not(.elementor-section),
  .ency-layout.is-right-hidden:not(.is-left-hidden).e-con.e-con-boxed > .e-con-inner,
  .ency-layout.is-right-hidden:not(.is-left-hidden).elementor-section > .elementor-container {
    grid-template-columns: var(--ency-left-width) minmax(0, 1fr) 0 !important;
    column-gap: 0 !important;
  }

  .ency-layout.is-right-hidden:not(.is-left-hidden) .ency-right {
    opacity: 0;
    visibility: hidden;
    transform: translateX(18px);
    overflow: hidden !important;
    pointer-events: none;
  }

  .ency-layout.is-right-hidden .ency-right > .ency-right__sticky {
    position: static !important;
    top: auto !important;
    max-height: none !important;
    overflow: hidden !important;
  }

  .ency-layout.is-right-hidden:not(.is-left-hidden) .ency-left {
    margin-right: var(--ency-gap);
  }

  .ency-layout.is-left-hidden.is-right-hidden.e-con.e-con-full,
  .ency-layout.is-left-hidden.is-right-hidden:not(.e-con):not(.elementor-section),
  .ency-layout.is-left-hidden.is-right-hidden.e-con.e-con-boxed > .e-con-inner,
  .ency-layout.is-left-hidden.is-right-hidden.elementor-section > .elementor-container {
    grid-template-columns: 0 minmax(0, 1fr) 0 !important;
    column-gap: 0 !important;
    justify-content: stretch !important;
  }

  .ency-layout.is-left-hidden.is-right-hidden .ency-main {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    justify-self: stretch !important;
  }

  .ency-layout.is-left-hidden.is-right-hidden .ency-left,
  .ency-layout.is-left-hidden.is-right-hidden .ency-right {
    opacity: 0;
    visibility: hidden;
    overflow: hidden !important;
    pointer-events: none;
  }

  .ency-layout.is-left-hidden.is-right-hidden .ency-left {
    transform: translateX(-18px);
  }

  .ency-layout.is-left-hidden.is-right-hidden .ency-right {
    transform: translateX(18px);
  }

  .ency-layout:not(.is-left-hidden) .ency-right,
  .ency-layout:not(.is-right-hidden) .ency-left,
  .ency-layout.is-left-hidden.is-right-hidden .ency-left,
  .ency-layout.is-left-hidden.is-right-hidden .ency-right {
    margin-left: 0;
    margin-right: 0;
  }
}

@media (min-width: 900px) and (max-width: 1279px) {
  .ency-layout {
    --ency-left-width: clamp(220px, 24vw, 260px);
    --ency-gap: clamp(20px, 2.5vw, 28px);
  }

  .ency-layout.e-con.e-con-full,
  .ency-layout.e-con.e-con-boxed > .e-con-inner,
  .ency-layout.elementor-section > .elementor-container,
  .ency-layout:not(.e-con):not(.elementor-section) {
    grid-template-columns: var(--ency-left-width) minmax(0, 1fr);
    grid-template-areas:
      "left main"
      "left right";
    column-gap: var(--ency-gap);
    row-gap: 36px;
  }

  .ency-layout .ency-left {
    position: sticky !important;
    top: var(--ency-sticky-top) !important;
    align-self: start !important;
    max-height: calc(100vh - var(--ency-sticky-top) - var(--ency-sticky-bottom-gap));
    max-height: calc(100dvh - var(--ency-sticky-top) - var(--ency-sticky-bottom-gap));
    overflow-y: auto !important;
    overflow-x: hidden !important;
    overscroll-behavior: contain;
    padding-right: 5px;
    scrollbar-width: thin;
    scrollbar-color: rgba(21, 119, 175, 0.34) transparent;
  }

  .ency-layout .ency-left::-webkit-scrollbar {
    width: 5px;
  }

  .ency-layout .ency-left::-webkit-scrollbar-track {
    background: transparent;
  }

  .ency-layout .ency-left::-webkit-scrollbar-thumb {
    background: #cbd5e1;
    border-radius: 999px;
  }

  .ency-layout .ency-right {
    position: relative !important;
    top: auto !important;
    max-height: none !important;
    overflow: visible !important;
    align-self: start !important;
  }

  .ency-layout .ency-left,
  .ency-layout .ency-right {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    margin: 0 !important;
    pointer-events: auto !important;
  }
}

@media (max-width: 899px) {
  .ency-layout {
    --ency-page-gutter: 12px;
    --ency-sticky-top: 86px;
  }

  .ency-layout.e-con.e-con-full,
  .ency-layout.e-con.e-con-boxed > .e-con-inner,
  .ency-layout.elementor-section > .elementor-container,
  .ency-layout:not(.e-con):not(.elementor-section) {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas:
      "toc-toggle"
      "left"
      "main"
      "right";
    gap: 0;
  }

  .ency-mobile-toc-toggle {
    grid-area: toc-toggle;
    width: 100% !important;
    min-height: 50px;
    margin: 0 0 18px !important;
    padding: 12px 15px !important;
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    border: 1px solid #e2e8f0 !important;
    border-radius: 14px !important;
    background: #ffffff !important;
    color: #0f172a !important;
    font-family: "Para", system-ui, sans-serif !important;
    font-size: 14.5px !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    text-align: left;
    cursor: pointer;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.06);
    transition:
      border-color 0.18s ease,
      background-color 0.18s ease,
      box-shadow 0.18s ease;
  }

  .ency-mobile-toc-toggle:hover {
    border-color: rgba(21, 119, 175, 0.34) !important;
    background: #f8fafc !important;
  }

  .ency-mobile-toc-toggle__label {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    min-width: 0;
  }

  .ency-mobile-toc-toggle__label svg {
    width: 19px;
    height: 19px;
    flex: 0 0 auto;
    color: #1577af;
  }

  .ency-mobile-toc-toggle__chevron {
    width: 18px;
    height: 18px;
    flex: 0 0 auto;
    color: #64748b;
    transition: transform 0.2s ease;
  }

  .ency-layout.is-mobile-toc-open .ency-mobile-toc-toggle__chevron {
    transform: rotate(180deg);
  }

  .ency-layout .ency-left,
  .ency-layout .ency-main,
  .ency-layout .ency-right {
    position: relative !important;
    top: auto !important;
    max-height: none !important;
    margin: 0 !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    pointer-events: auto !important;
  }

  .ency-layout.ency-enhanced:not(.is-mobile-toc-open) .ency-left {
    display: none !important;
  }

  .ency-layout.ency-enhanced.is-mobile-toc-open .ency-left {
    display: block !important;
    max-height: min(68vh, 560px) !important;
    margin: 0 0 22px !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    overscroll-behavior: contain;
    scrollbar-width: thin;
    scrollbar-color: rgba(21, 119, 175, 0.34) transparent;
  }

  .ency-layout.ency-enhanced.is-mobile-toc-open .ency-left::-webkit-scrollbar {
    width: 5px;
  }

  .ency-layout.ency-enhanced.is-mobile-toc-open .ency-left::-webkit-scrollbar-track {
    background: transparent;
  }

  .ency-layout.ency-enhanced.is-mobile-toc-open .ency-left::-webkit-scrollbar-thumb {
    background: #cbd5e1;
    border-radius: 999px;
  }

  .ency-layout .ency-main {
    grid-area: main;
    min-width: 0 !important;
  }

  .ency-layout .ency-right {
    grid-area: right;
    margin-top: clamp(34px, 7vw, 54px) !important;
    overflow: visible !important;
  }
}

@media (max-width: 480px) {
  .ency-layout {
    --ency-page-gutter: 10px;
  }

  .ency-mobile-toc-toggle {
    min-height: 48px;
    margin-bottom: 14px !important;
    padding: 11px 13px !important;
    border-radius: 12px !important;
    font-size: 14px !important;
  }

  .ency-layout.ency-enhanced.is-mobile-toc-open .ency-left {
    max-height: min(64vh, 480px) !important;
    margin-bottom: 18px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .ency-layout *,
  .ency-layout *::before,
  .ency-layout *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }
}/* End custom CSS */
/* Start custom CSS for table-of-contents, class: .elementor-element-98f6a63 *//* =========================================================
   NEUROEXPERT — PROFESJONALNY SPIS TREŚCI ELEMENTOR
   Klasa widgetu: .spis-tresci
========================================================= */

.spis-tresci {
  --toc-primary: #1577AF;
  --toc-primary-hover: #11618E;
  --toc-secondary: #0F172A;
  --toc-text: #475569;
  --toc-muted: #64748B;
  --toc-accent: #89C5E8;
  --toc-bg: #FFFFFF;
  --toc-bg-soft: #F8FAFC;
  --toc-accent-soft: #EAF4FA;
  --toc-border: #F1F5F9;

  width: 100%;
  font-family: "Para", sans-serif;
}

/* Sticky spis treści w lewej kolumnie */

.ency-left .spis-tresci {
  position: sticky;
  top: 110px;
  z-index: 20;
}

/* Główne pudełko widgetu */

.spis-tresci .elementor-toc__body,
.spis-tresci .elementor-toc__header {
  background: #F8FCFE;
}

.spis-tresci .elementor-widget-container,
.spis-tresci .elementor-toc__body {
  border-radius: 18px;
}

.spis-tresci .elementor-widget-container {
  background: var(--toc-bg);
  border: 1px solid rgba(241, 245, 249, 0.95);
  box-shadow: 0 14px 40px rgba(15, 23, 42, 0.06);
  overflow: hidden;
}

/* Nagłówek spisu */

.spis-tresci .elementor-toc__header {
  display: flex;
  align-items: center;
  justify-content: space-between;

  padding: 16px 18px;
  border-bottom: 1px solid var(--toc-border);

  background:
    linear-gradient(135deg, rgba(234, 244, 250, 0.95), rgba(255, 255, 255, 1));
}

.spis-tresci .elementor-toc__header-title {
  margin: 0;

  font-family: "Title", sans-serif;
  font-size: 0.9rem !important;
  line-height: 1.25;
  font-weight: 700;
  letter-spacing: -0.01em;

  color: var(--toc-secondary);
}

/* Ikony rozwijania / zwijania */

.spis-tresci .elementor-toc__toggle-button {
  width: 25px;
  height: 25px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  border-radius: 999px;
  background: #ffffff;
  border: 1px solid rgba(137, 197, 232, 0.45);

  color: var(--toc-primary);
  cursor: pointer;

  transition:
    background-color 0.2s ease,
    border-color 0.2s ease,
    transform 0.2s ease;
}

.spis-tresci .elementor-toc__toggle-button:hover {
  background: var(--toc-primary);
  border-color: var(--toc-primary);
  color: #ffffff;
}

.spis-tresci .elementor-toc__toggle-button:active {
  transform: scale(0.94);
}

.spis-tresci .elementor-toc__toggle-button svg {
  width: 14px;
  height: 14px;
  fill: currentColor;
}

/* Obszar listy */

.spis-tresci .elementor-toc__body {
  padding: 12px 25px 14px 5px;
}

/* Reset list */

.spis-tresci .elementor-toc__list-wrapper {
  margin: 0;
  padding: 0;
  list-style: none;
}

.spis-tresci .elementor-toc__list-item {
  margin: 0;
  padding: 0;
}

/* Linki */

.spis-tresci .elementor-toc__list-item-text {
  position: relative;

  display: flex;
  align-items: flex-start;
  gap: 8px;

  width: 100%;
  padding: 9px 10px 9px 12px;
  margin: 1px 0;

  border-radius: 11px;

  font-family: "Para", sans-serif;
  font-size: 14px;
  line-height: 1.42;
  font-weight: 500;

  color: var(--toc-text);
  text-decoration: none !important;

  transition:
    background-color 0.2s ease,
    color 0.2s ease,
    padding-left 0.2s ease;
}

/* Pasek akcentu po lewej */

.spis-tresci .elementor-toc__list-item-text::before {
  content: "";

  position: absolute;
  left: 0;
  top: 9px;
  bottom: 9px;

  width: 3px;
  border-radius: 999px;
  background: transparent;

  transition: background-color 0.2s ease;
}

/* Hover */

.spis-tresci .elementor-toc__list-item-text:hover {
  background: var(--toc-accent-soft);
  color: var(--toc-primary-hover);
  padding-left: 15px;
}

.spis-tresci .elementor-toc__list-item-text:hover::before {
  background: var(--toc-primary);
}

/* Aktywny element — działa, jeśli Elementor / JS nada aktywną klasę */

.spis-tresci .elementor-toc__list-item-text.elementor-item-active,
.spis-tresci .elementor-toc__list-item-text.is-active {
 background: var(--toc-accent-soft);
  color: var(--toc-primary-hover);
  font-weight: 500 ;
}

.spis-tresci .elementor-toc__list-item-text.elementor-item-active::before,
.spis-tresci .elementor-toc__list-item-text.is-active::before {
  background: var(--toc-primary)
}

/* Poziomy zagnieżdżenia */

.spis-tresci .elementor-toc__list-wrapper .elementor-toc__list-wrapper {
  margin-top: 2px;
  margin-left: 10px;
  padding-left: 10px;
  border-left: 1px solid var(--toc-border);
}

.spis-tresci .elementor-toc__list-wrapper .elementor-toc__list-wrapper .elementor-toc__list-item-text {
  font-size: 13px;
  font-weight: 400;
  color: var(--toc-muted);
  padding-top: 7px;
  padding-bottom: 7px;
}

.spis-tresci .elementor-toc__list-wrapper .elementor-toc__list-wrapper .elementor-toc__list-item-text:hover {
  color: var(--toc-primary-hover);
}

/* Główne pozycje H2 */

.spis-tresci .elementor-toc__top-level {
  font-weight: 650;
  color: var(--toc-secondary);
}

/* Delikatny separator między większymi sekcjami */

.spis-tresci .elementor-toc__list-wrapper > .elementor-toc__list-item + .elementor-toc__list-item {
  margin-top: 3px;
}

/* Scroll wewnątrz spisu, gdy jest dużo pozycji */

.spis-tresci .elementor-toc__body {
  max-height: calc(100vh - 170px);
  overflow-y: auto;
  scrollbar-width: thin;
  scrollbar-color: rgba(21, 119, 175, 0.35) transparent;
}

.spis-tresci .elementor-toc__body::-webkit-scrollbar {
  width: 6px;
}

.spis-tresci .elementor-toc__body::-webkit-scrollbar-track {
  background: transparent;
}

.spis-tresci .elementor-toc__body::-webkit-scrollbar-thumb {
  background: rgba(21, 119, 175, 0.28);
  border-radius: 999px;
}

.spis-tresci .elementor-toc__body::-webkit-scrollbar-thumb:hover {
  background: rgba(21, 119, 175, 0.48);
}

/* Wersja zwinięta */

.spis-tresci .elementor-toc__body[hidden],
.spis-tresci .elementor-toc__body.elementor-toc__body--collapsed {
  display: none;
}

/* Mobile / tablet */

@media (max-width: 1024px) {
  .ency-left .spis-tresci {
    position: relative;
    top: auto;
  }

  .spis-tresci .elementor-widget-container {
    border-radius: 16px;
  }

  .spis-tresci .elementor-toc__header {
    padding: 14px 16px;
  }

  .spis-tresci .elementor-toc__body {
    max-height: none;
    padding: 10px 9px 12px;
  }

  .spis-tresci .elementor-toc__list-item-text {
    font-size: 14px;
  }
}




/* =========================================================
   FIX: STICKY SPIS TREŚCI W LEWEJ KOLUMNIE
========================================================= */

/* Ważne: rodzice nie mogą ucinać sticky */
.ency-layout,
.ency-layout.e-con,
.ency-layout.e-con.e-con-boxed,
.ency-layout.e-con.e-con-boxed > .e-con-inner,
.ency-layout.elementor-section,
.ency-layout.elementor-section > .elementor-container,
.ency-layout .ency-left,
.ency-layout .ency-main,
.ency-layout .ency-right {
  overflow: visible !important;
}

/* Grid nadal wyrównany od góry, ale boczne kolumny rozciągamy na wysokość treści */
.ency-layout .ency-left,
.ency-layout .ency-right {
  align-self: stretch !important;
}

/* Sama zawartość bocznej kolumny startuje od góry */
.ency-layout .ency-left {
  display: block !important;
  min-height: 100%;
}

/* Sticky bezpośrednio na widget Table of Contents */
.ency-left .spis-tresci {
  position: sticky !important;
  top: var(--ency-toggle-sticky-top, 120px) !important;
  z-index: 30;
}

/* Dodatkowo na wszelki wypadek sticky na kontenerze widgetu */
.ency-left .spis-tresci .elementor-widget-container {
  position: relative;
  max-height: calc(100vh - var(--ency-toggle-sticky-top, 120px) - 24px);
  overflow: hidden;
}

/* Scroll wewnątrz spisu, jeśli lista jest długa */
.ency-left .spis-tresci .elementor-toc__body {
  max-height: calc(100vh - var(--ency-toggle-sticky-top, 120px) - 96px);
  overflow-y: auto;
}

/* Gdy lewa kolumna jest zwinięta, sticky nie jest potrzebne */
.ency-layout.is-left-hidden .ency-left .spis-tresci {
  position: static !important;
}

/* Tablet / mobile — bez sticky */
@media (max-width: 1024px) {
  .ency-left .spis-tresci {
    position: relative !important;
    top: auto !important;
  }

  .ency-left .spis-tresci .elementor-widget-container,
  .ency-left .spis-tresci .elementor-toc__body {
    max-height: none !important;
    overflow: visible !important;
  }
}



/* =========================================================
   FIX: SCROLL OFFSET DLA SPISU TREŚCI (sticky header)
========================================================= */

/* Globalny fallback — gdyby JS się nie wczytał albo ktoś wszedł
   bezpośrednio z URL-em z hashem */
html {
  scroll-padding-top: 140px;
}

/* Margines bezpieczeństwa dla kotwic Elementor TOC i nagłówków */
.elementor-toc-anchor,
[id^="elementor-toc__heading-anchor"],
.ency-main h1[id],
.ency-main h2[id],
.ency-main h3[id],
.ency-main h4[id],
.ency-main h5[id],
.ency-main h6[id] {
  scroll-margin-top: 140px;
}

@media (max-width: 1024px) {
  html {
    scroll-padding-top: 90px;
  }

  .elementor-toc-anchor,
  [id^="elementor-toc__heading-anchor"],
  .ency-main h1[id],
  .ency-main h2[id],
  .ency-main h3[id],
  .ency-main h4[id],
  .ency-main h5[id],
  .ency-main h6[id] {
    scroll-margin-top: 90px;
  }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-4426251 *//* =========================================================
   PRZYCISK DRUKU — print card
========================================================= */

.ency-left .elementor-widget-shortcode {
  margin-top: 8px;
  padding: 0 !important;
}

.ency-left .elementor-widget-shortcode .elementor-shortcode {
  line-height: 0;
  font-size: 0;
}

.neuro-print-card {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  padding: 10px 14px;
  box-sizing: border-box;
  background: rgba(248, 252, 254, 0.5);
  border: 1px solid rgba(21, 119, 175, 0.18);
  border-radius: 14px;
  font-family: "Para", sans-serif;
  font-size: 0.82rem;
  font-weight: 500;
  color: #64748B;
  line-height: 1.3;
  cursor: pointer;
  text-align: left;
  text-decoration: none;
  transition: border-color 0.2s ease, background 0.2s ease;
}

.neuro-print-card:hover {
  background: rgba(234, 244, 250, 0.55) !important;
  border-color: rgba(21, 119, 175, 0.35) !important;
}

.neuro-print-card:active { transform: scale(0.98)!important; }

.neuro-print-card__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 26px;
  height: 26px;
  color: #94A3B8;
  transition: color 0.2s ease;
}


.neuro-print-card__icon svg { width: 18px; height: 18px; flex-shrink: 0; }



.neuro-print-card__title { color: #3D3D3D; }

@media (max-width: 1024px) {
  .ency-left .elementor-widget-shortcode { margin-top: 6px; }
  .neuro-print-card { border-radius: 12px; padding: 9px 13px; }
}


/* =========================================================
   STYLE DRUKU — @media print
========================================================= */

@media print {

  @page { size: A4 portrait; margin: 20mm 18mm 22mm 18mm; }

  html, body {
    font-family: 'Para', Inter, system-ui, -apple-system, sans-serif !important;
    font-size: 11pt !important;
    line-height: 1.68 !important;
    color: #0f172a !important;
    background: #fff !important;
    margin-top: 0 !important;
    padding: 0 !important;
  }

  * { box-shadow: none !important; text-shadow: none !important;
      -webkit-print-color-adjust: exact; print-color-adjust: exact; }

  #page, #content, .site-content, main {
    width: 100% !important; max-width: 100% !important;
    margin: 0 !important; padding: 0 !important;
  }

  #wpadminbar,
  .elementor-location-header, [data-elementor-type="header"],
  .elementor-location-footer, [data-elementor-type="footer"],
  #comments, .comment-respond,
  .sharedaddy, [class*="addtoany"], [class*="social-share"],
  [class*="cookie-"], [id*="cookie-"],
  .elementor-popup-modal, .elementor-lightbox, [data-elementor-type="popup"],
  .post-navigation, .nav-links,
  #elementor-editor-toolbar,
  .neuro-print-card,
  .ency-left .elementor-widget-shortcode { display: none !important; }

  [style*="position: sticky"], [style*="position:sticky"],
  [style*="position: fixed"],  [style*="position:fixed"] {
    position: static !important; top: auto !important;
  }

  .hero-main-con {
    width: 100% !important; max-width: 100% !important;
    border-bottom: 2px solid #1577af !important;
    padding-bottom: 1.2rem !important; margin-bottom: 1.8rem !important;
    background: transparent !important;
    page-break-inside: avoid !important;
  }

  .hero-main-con > .e-con-inner { width: 100% !important; max-width: 100% !important; padding: 0 !important; }

  .hero-main-con .elementor-widget-theme-post-title .elementor-heading-title {
    font-family: 'Title', Merriweather, Georgia, serif !important;
    font-size: 22pt !important; font-weight: 800 !important;
    color: #0f172a !important; line-height: 1.25 !important;
  }

  .hero-main-con .elementor-widget-theme-post-excerpt { font-size: 10.5pt !important; color: #475569 !important; }
  .hero-main-con .elementor-widget-heading:not(.elementor-widget-theme-post-title) .elementor-heading-title {
    font-size: 9pt !important; color: #64748b !important; font-weight: 500 !important;
  }
  .hero-main-con .elementor-widget-html { display: none !important; }

  .ency-layout { width: 100% !important; max-width: 100% !important; padding: 0 !important; }

  .ency-layout > .e-con-inner {
    display: flex !important; flex-direction: column !important;
    width: 100% !important; max-width: 100% !important; padding: 0 !important; gap: 0 !important;
  }

  .ency-left {
    order: 1 !important; width: 100% !important; max-width: 100% !important;
    flex: 0 0 100% !important; position: static !important; top: auto !important;
    align-self: auto !important; height: auto !important;
    margin-bottom: 2.8rem !important; padding: 0 !important;
  }

  .ency-main {
    order: 2 !important; width: 100% !important; max-width: 100% !important;
    flex: 0 0 100% !important; padding: 0 !important;
  }

  .ency-right {
    order: 3 !important; width: 100% !important; max-width: 100% !important;
    flex: 0 0 100% !important; padding: 0 !important;
    border-top: 2px solid #e2e8f0 !important;
    padding-top: 2rem !important; margin-top: 3rem !important;
  }

  .spis-tresci {
    position: static !important; top: auto !important;
    height: auto !important; max-height: none !important; overflow: visible !important;
  }

  .spis-tresci .elementor-widget-container {
    border: 1.5px solid #1577af !important; border-radius: 8px !important;
    padding: 1.4rem 1.8rem !important; background: #eaf4fa !important;
    max-height: none !important; overflow: visible !important;
  }

  .elementor-toc__toggle-button { display: none !important; }

  .elementor-toc__body {
    display: block !important; height: auto !important; max-height: none !important;
    overflow: visible !important; opacity: 1 !important; visibility: visible !important;
  }

  .elementor-toc__list-item a { color: #1577af !important; text-decoration: none !important; font-size: 9.5pt !important; }
  .elementor-toc__list-item { margin-bottom: 4px !important; line-height: 1.6 !important; }

  .w-skrocie {
    border-left: 4px solid #1577af !important; background: #eaf4fa !important;
    padding: 1.3rem 1.8rem !important; margin-bottom: 2.6rem !important;
    border-radius: 0 8px 8px 0 !important; page-break-inside: avoid !important; width: 100% !important;
  }

  .w-skrocie-h3 .elementor-heading-title {
    font-family: 'Title', Merriweather, Georgia, serif !important;
    font-size: 12pt !important; font-weight: 700 !important;
    color: #1577af !important; margin-top: 0 !important; margin-bottom: 0.5rem !important;
  }

  .zawartosc .elementor-widget-container { font-size: 11pt !important; line-height: 1.72 !important; }

  .zawartosc h2 {
    font-family: 'Title', Merriweather, Georgia, serif !important;
    font-size: 15pt !important; font-weight: 700 !important; color: #0f172a !important;
    margin-top: 2.2rem !important; margin-bottom: 0.6rem !important;
    border-bottom: 1px solid #e2e8f0 !important; page-break-after: avoid !important;
  }

  .zawartosc h3 {
    font-family: 'Title', Merriweather, Georgia, serif !important;
    font-size: 12.5pt !important; font-weight: 700 !important; color: #1577af !important;
    margin-top: 1.6rem !important; page-break-after: avoid !important;
  }

  .zawartosc h4 { font-size: 11pt !important; font-weight: 700 !important; page-break-after: avoid !important; }
  .zawartosc p { orphans: 3 !important; widows: 3 !important; margin-bottom: 0.9rem !important; }
  .zawartosc ul, .zawartosc ol { margin-left: 1.4rem !important; margin-bottom: 0.7rem !important; }
  .zawartosc blockquote {
    border-left: 3px solid #1577af !important; padding: 0.6rem 1.1rem !important;
    margin: 1rem 0 !important; font-style: italic !important;
    page-break-inside: avoid !important; background: transparent !important;
  }
  .zawartosc a { color: #1577af !important; text-decoration: underline !important; }
  .zawartosc a[href^="/"]::after, .zawartosc a[href^="#"]::after { content: none !important; }
  .zawartosc img { max-width: 100% !important; height: auto !important; page-break-inside: avoid !important; }
  .zawartosc table { border-collapse: collapse !important; width: 100% !important; font-size: 10pt !important; }
  .zawartosc thead { display: table-header-group !important; }
  .zawartosc tbody tr { page-break-inside: avoid !important; }
  .zawartosc th, .zawartosc td { border: 1px solid #cbd5e1 !important; padding: 5px 9px !important; vertical-align: top !important; }
  .zawartosc th { background: #eaf4fa !important; font-weight: 700 !important; }

  .bibliografia { border-top: 1.5px solid #e2e8f0 !important; padding-top: 1.6rem !important; margin-top: 3rem !important; }
  .bibliografia .e-n-accordion-item-title, .bibliografia summary {
    font-family: 'Title', Merriweather, Georgia, serif !important;
    font-size: 13pt !important; font-weight: 700 !important; color: #0f172a !important;
    background: transparent !important; border: none !important; padding: 0 !important;
    margin-bottom: 0.8rem !important; list-style: none !important; page-break-after: avoid !important;
  }
  .bibliografia .e-n-accordion-item-title-icon { display: none !important; }
  .bibliografia .e-n-accordion-item-body, .bibliografia [class*="accordion-item-body"],
  .bibliografia details > *:not(summary) {
    display: block !important; height: auto !important; max-height: none !important;
    overflow: visible !important; opacity: 1 !important; visibility: visible !important;
  }
  .bibliografia p, .bibliografia li {
    font-size: 9pt !important; line-height: 1.6 !important;
    color: #475569 !important; margin-bottom: 0.5rem !important;
  }
  .bibliografia a[href^="http"]::after {
    content: " (" attr(href) ")";
    font-size: 7.5pt !important; color: #64748b !important;
    word-break: break-all !important; font-style: italic !important;
  }
  .bibliografia a[href^="/"]::after, .bibliografia a[href^="#"]::after { content: none !important; }

  .ency-right > *, .ency-right .elementor-widget {
    position: static !important; top: auto !important;
    max-height: none !important; overflow: visible !important;
  }
  .ency-right::before {
    content: "Powiązane materiały"; display: block !important;
    font-family: 'Title', Merriweather, Georgia, serif !important;
    font-size: 13pt !important; font-weight: 700 !important;
    color: #0f172a !important; margin-bottom: 1rem !important;
  }

  h1, h2, h3, h4 { page-break-after: avoid !important; page-break-inside: avoid !important; }
  p, li { orphans: 3 !important; widows: 3 !important; }
  .w-skrocie, figure, table { page-break-inside: avoid !important; }
  
  @media print {
  /* Czas czytania — shortcode .reading-time w hero */
  .hero-main-con .reading-time {
    font-size: 9pt !important;
    font-weight: 500 !important;
    color: #64748b !important;
  }
}

} /* koniec @media print */


 @media print {

  /* ===== STRONA ===== */
  @page { size: A4 portrait; margin: 20mm 18mm 22mm 18mm; }

  /* ===== UKRYJ ELEMENTY UI ===== */
  #wpadminbar,
  .elementor-location-header,
  .elementor-location-footer,
  .comments-area,
  .wp-block-comments,
  .neuro-print-card,
  .ency-left .elementor-widget-shortcode,
  .udostepnij,
  .fct-cart-drawer-container,
  .fct-cart-drawer-open-btn,
  .fct-checkout-modal-container { display: none !important; }

  /* ===== USUŃ WSZYSTKIE TŁA ===== */
 /* NOWY — dodaj ::before i ::after */
*, *::before, *::after {
  background-color: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
}

  /* ===== LAYOUT: grid → flex kolumnowy ===== */
  .ency-layout > .e-con-inner {
    display: flex !important;
    flex-direction: column !important;
  }
  .ency-left  { order: 1 !important; }
  .ency-main  { order: 2 !important; }
  .ency-right { order: 3 !important; }

  /* ===== TOC W DRUKU ===== */
  .spis-tresci {
    position: static !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    border: 1.5pt solid #1577af !important;
    border-radius: 8pt !important;
    padding: 12pt 16pt !important;
    margin-bottom: 14pt !important;
  }
  .spis-tresci .elementor-toc__body,
  .spis-tresci .elementor-toc__list-wrapper {
    display: block !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    opacity: 1 !important;
    visibility: visible !important;
  }

  /* ===== W SKRÓCIE (encyklopedia) ===== */
  .w-skrocie {
    border-left: 4pt solid #1577af !important;
    padding: 1.3rem 1.8rem !important;
    margin-bottom: 14pt !important;
  }

  /* ===== TREŚĆ GŁÓWNA (encyklopedia .zawartosc) ===== */
  .zawartosc h2 {
    font-size: 15pt !important;
    border-bottom: 1pt solid #e2e8f0 !important;
    padding-bottom: 4pt !important;
    margin-top: 18pt !important;
  }
  .zawartosc h3 { font-size: 12.5pt !important; color: #1577af !important; }
  .zawartosc h4 { font-size: 11pt !important; }

  /* ===== BIBLIOGRAFIA ===== */
  .bibliografia .e-n-accordion-item-body {
    display: block !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    opacity: 1 !important;
    visibility: visible !important;
  }
  .bibliografia details { display: block !important; }
  .bibliografia a[href]::after {
    content: " (" attr(href) ")";
    font-size: 7pt;
    color: #64748b;
  }

  /* ===== PRAWA KOLUMNA ===== */
  .ency-right__sticky { position: static !important; }
  .ency-right::before {
    content: "Powiązane materiały";
    display: block;
    font-size: 12pt;
    font-weight: 700;
    color: #0f172a;
    margin-bottom: 8pt;
  }

  /* ===== CZAS CZYTANIA ===== */
  .hero-main-con .reading-time {
    font-size: 9pt !important;
    font-weight: 500 !important;
    color: #64748b !important;
  }

  /* ===== SUPLEMENTY ===== */
  .suple-zawartosc .e-n-accordion-item-body {
    display: block !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    opacity: 1 !important;
    visibility: visible !important;
  }
  .suple-zawartosc .e-n-accordion-item-title-text {
    font-size: 14pt !important;
    font-weight: 700 !important;
    color: #0f172a !important;
    font-family: "Title", Georgia, serif !important;
  }
  .w-skrocie-h3 .elementor-heading-title {
    font-size: 13pt !important;
    font-weight: 700 !important;
    color: #1577af !important;
    border-bottom: 1pt solid #1577af !important;
    padding-bottom: 4pt !important;
    margin-bottom: 6pt !important;
  }

}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-a5edd28 */.w-skrocie-h3 {
     
     overflow: hidden;
 
 background:
    linear-gradient(135deg, rgba(234, 244, 250, 0.95), rgba(255, 255, 255, 1));
    
 }/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-b228d4e */.w-skrocie {
  --ws-primary: #1577af;
  --ws-primary-dark: #11618e;
  --ws-primary-bg: #eaf4fa;
  --ws-title: #0a3a55;
  --ws-text: #334155;
  --ws-muted: #64748b;
  --ws-bg: #f8fcfe;
  --ws-white: #ffffff;
  --ws-border: #cce4f3;
  --ws-border-soft: #ddecf5;
  --ws-font-body: "Para", sans-serif;
  --ws-font-title: "Title", serif;
  --ws-transition: 0.22s ease;

  width: 100%;
  margin: 0 0 40px;
  

  background-color: var(--ws-bg);
  border: 1px solid var(--ws-border);
  border-radius: 16px;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);

  color: var(--ws-text);
  font-family: var(--ws-font-body);
  overflow: hidden;
  box-sizing: border-box;

  transition:
    border-color var(--ws-transition),
    box-shadow var(--ws-transition);
}

.w-skrocie,
.w-skrocie *,
.w-skrocie *::before,
.w-skrocie *::after {
  box-sizing: border-box;
}

@media (hover: hover) and (pointer: fine) {
  .w-skrocie:hover {
    border-color: rgba(21, 119, 175, 0.42);
    box-shadow: 0 10px 28px rgba(15, 23, 42, 0.055);
  }
}

.w-skrocie .elementor-widget-container {
  margin-bottom: 0 !important;
}

.w-skrocie h3,
.w-skrocie .elementor-heading-title {
  display: flex !important;
  align-items: center;
  gap: 12px;

  width: 100%;
  margin: 0 0 22px !important;
  padding: 0 0 18px !important;

  border-bottom: 1px solid var(--ws-border-soft);

  color: var(--ws-title) !important;
  font-family: var(--ws-font-title) !important;
  font-size: 1.25rem !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: -0.015em;
  text-align: left !important;
  text-indent: 0 !important;
  text-wrap: balance;
}

.w-skrocie h3::before,
.w-skrocie .elementor-heading-title::before {
  content: "";
  display: inline-block;
  flex: 0 0 auto;

  width: 38px;
  height: 38px;

  border: 1px solid rgba(21, 119, 175, 0.22);
  border-radius: 999px;
  background-color: var(--ws-white);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231577af' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolygon points='13 2 3 14 12 14 11 22 21 10 12 10 13 2'/%3E%3C/svg%3E");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 20px 20px;

  box-shadow: 0 4px 12px rgba(15, 23, 42, 0.045);
}

.w-skrocie p {
  margin: 0 0 18px !important;

  color: var(--ws-text) !important;
  font-family: var(--ws-font-body) !important;
  font-size: 1rem !important;
  font-weight: 400 !important;
  line-height: 1.65 !important;
  text-align: left !important;
  text-wrap: pretty;

  overflow-wrap: anywhere;
}

.w-skrocie p:last-child {
  margin-bottom: 0 !important;
}

.w-skrocie ul {
  width: 100%;
  margin: 0 !important;
  padding: 0 !important;

  list-style: none !important;
}

.w-skrocie ul li {
  position: relative;

  margin: 0 0 16px !important;
  padding: 0 0 0 34px !important;

  color: var(--ws-text) !important;
  font-family: var(--ws-font-body) !important;
  font-size: 1rem !important;
  font-weight: 400 !important;
  line-height: 1.65 !important;
  text-align: left !important;

  overflow-wrap: anywhere;
  word-break: normal;
}

.w-skrocie ul li:last-child {
  margin-bottom: 0 !important;
}

.w-skrocie ul li::before {
  content: "";
  position: absolute;
  top: 0.22em;
  left: 0;

  width: 20px;
  height: 20px;

  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231577af' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 11.08V12a10 10 0 1 1-5.93-9.14'/%3E%3Cpolyline points='22 4 12 14.01 9 11.01'/%3E%3C/svg%3E");
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}

.w-skrocie strong,
.w-skrocie b {
  color: #0f172a !important;
  font-weight: 700 !important;
}

.w-skrocie a {
  display: inline !important;
  margin: 0 !important;
  padding: 0 !important;

  color: var(--ws-primary) !important;
  background: transparent !important;
  border: none !important;

  font-weight: 700 !important;
  line-height: inherit !important;
  text-decoration: none !important;

  transition: color 0.18s ease;
}

.w-skrocie a:hover {
  color: var(--ws-primary-dark) !important;
  text-decoration: underline !important;
  text-decoration-thickness: 1px !important;
  text-underline-offset: 3px !important;
}

.w-skrocie a:focus-visible {
  outline: 2px solid var(--ws-primary);
  outline-offset: 2px;
  border-radius: 2px;
}

@media (max-width: 899px) {
  .w-skrocie {
    margin-bottom: 34px;
    
  }

  .w-skrocie h3,
  .w-skrocie .elementor-heading-title {
    gap: 11px;
    margin-bottom: 20px !important;
    padding-bottom: 16px !important;
    font-size: 1.18rem !important;
  }

  .w-skrocie h3::before,
  .w-skrocie .elementor-heading-title::before {
    width: 36px;
    height: 36px;
    background-size: 19px 19px;
  }
}

@media (max-width: 480px) {
  .w-skrocie {
    margin-bottom: 30px;
   
    border-radius: 14px;
  }

  .w-skrocie h3,
  .w-skrocie .elementor-heading-title {
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 18px !important;
    padding: 0 0 15px !important;

    font-size: 1.1rem !important;
    line-height: 1.35 !important;
    text-indent: 0 !important;
    transform: none !important;
  }

  .w-skrocie h3::before,
  .w-skrocie .elementor-heading-title::before {
    width: 34px;
    height: 34px;
    margin-top: 1px;
    background-size: 18px 18px;
  }

  .w-skrocie p,
  .w-skrocie ul li {
    font-size: 0.96rem !important;
    line-height: 1.65 !important;
  }

  .w-skrocie ul li {
    margin-bottom: 15px !important;
    padding-left: 31px !important;
  }

  .w-skrocie ul li::before {
    top: 0.24em;
    width: 18px;
    height: 18px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .w-skrocie,
  .w-skrocie *,
  .w-skrocie *::before,
  .w-skrocie *::after {
    transition-duration: 0.01ms !important;
  }
}/* End custom CSS */
/* Start custom CSS for theme-post-content, class: .elementor-element-4fbfbee *//* =========================================================
   ZAWARTOŚĆ WPISU EDUKACYJNEGO / ENCYKLOPEDIA WIEDZY
   Klasa główna: .zawartosc
   Font nagłówków: "Title"
   Font treści: "Para"
========================================================= */

.zawartosc {
  --zw-text: #1f2933;
  --zw-muted: #5f6c7b;
  --zw-heading: #111827;
  --zw-accent: #2563eb;
  --zw-accent-soft: #eff6ff;
  --zw-border: #e5e7eb;
  --zw-bg-soft: #f8fafc;
  --zw-code-bg: #f3f4f6;

  max-width: 860px;
  margin-inline: auto;

  font-family: "Para", sans-serif;
  font-size: clamp(17px, 1.05vw, 19px);
  line-height: 1.78;
  color: var(--zw-text);

  word-break: normal;
  overflow-wrap: break-word;
  hyphens: auto;
}

/* Podstawowe odstępy między elementami */

.zawartosc > *:first-child {
  margin-top: 0;
}

.zawartosc > *:last-child {
  margin-bottom: 0;
}

.zawartosc p,
.zawartosc ul,
.zawartosc ol,
.zawartosc blockquote,
.zawartosc table,
.zawartosc figure,
.zawartosc pre {
  margin-top: 0;
  margin-bottom: 1.35em;
}

/* Akapity */

.zawartosc p {
  font-family: "Para", sans-serif;
  font-weight: 300;
  letter-spacing: 0.005em;
}

.zawartosc p + p {
  margin-top: -0.25em;
}

/* Linki */

.zawartosc a {
  color: var(--zw-accent);
  text-decoration: underline;
  text-decoration-thickness: 1.5px;
  text-underline-offset: 4px;
  transition: color 0.2s ease, text-decoration-color 0.2s ease;
}

.zawartosc a:hover {
  color: #1d4ed8;
  text-decoration-color: transparent;
}

/* Nagłówki */

.zawartosc h1,
.zawartosc h2,
.zawartosc h3,
.zawartosc h4,
.zawartosc h5,
.zawartosc h6 {
  font-family: "Title", sans-serif;
  color: var(--zw-heading);
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: -0.025em;
  margin-top: 2.25em;
  margin-bottom: 0.75em;
  scroll-margin-top: 120px;
}

.zawartosc h1 {
  font-size: clamp(34px, 4vw, 52px);
  margin-top: 0;
  margin-bottom: 0.85em;
}

.zawartosc h2 {
  font-size: clamp(28px, 3vw, 40px);
  padding-bottom: 0.35em;
  border-bottom: 1px solid var(--zw-border);
}

.zawartosc h3 {
  font-size: clamp(23px, 2.2vw, 31px);
}

.zawartosc h4 {
  font-size: clamp(20px, 1.7vw, 25px);
}

.zawartosc h5 {
  font-size: clamp(18px, 1.4vw, 21px);
}

.zawartosc h6 {
  font-size: 16px;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--zw-muted);
}

/* Lepsze odstępy po nagłówkach */

.zawartosc h2 + p,
.zawartosc h3 + p,
.zawartosc h4 + p {
  margin-top: 0;
}

.zawartosc p + h2,
.zawartosc ul + h2,
.zawartosc ol + h2,
.zawartosc blockquote + h2,
.zawartosc figure + h2,
.zawartosc table + h2 {
  margin-top: 2.8em;
}

.zawartosc p + h3,
.zawartosc ul + h3,
.zawartosc ol + h3,
.zawartosc blockquote + h3,
.zawartosc figure + h3,
.zawartosc table + h3 {
  margin-top: 2.15em;
}

/* Listy punktowane i numerowane */

.zawartosc ul,
.zawartosc ol {
  padding-left: 1.35em;
}

.zawartosc li {
  padding-left: 0.35em;
  margin-bottom: 0.55em;
}

.zawartosc li:last-child {
  margin-bottom: 0;
}

.zawartosc ul li::marker {
  color: var(--zw-accent);
  font-size: 1.15em;
}

.zawartosc ol li::marker {
  color: var(--zw-accent);
  font-weight: 700;
  font-family: "Title", sans-serif;
}

.zawartosc li > ul,
.zawartosc li > ol {
  margin-top: 0.55em;
  margin-bottom: 0.75em;
}

/* Mocne wyróżnienia */

.zawartosc strong,
.zawartosc b {
  color: var(--zw-heading);
  font-weight: 700;
}

.zawartosc em {
  color: var(--zw-muted);
}

/* Cytaty i ważne bloki */

.zawartosc blockquote,
.zawartosc .wp-block-quote {
  position: relative;
  margin: 2em 0;
  padding: 1.35em 1.5em 1.35em 1.75em;
  background: var(--zw-accent-soft);
  border-left: 4px solid var(--zw-accent);
  border-radius: 0 14px 14px 0;
  color: var(--zw-heading);
}

.zawartosc blockquote p {
  margin-bottom: 0.85em;
  font-size: 1.05em;
  line-height: 1.7;
}

.zawartosc blockquote p:last-child {
  margin-bottom: 0;
}

.zawartosc blockquote cite {
  display: block;
  margin-top: 0.85em;
  color: var(--zw-muted);
  font-size: 0.92em;
  font-style: normal;
}

/* Obrazki i podpisy */

.zawartosc img {
  max-width: 100%;
  height: auto;
  border-radius: 16px;
}

.zawartosc figure,
.zawartosc .wp-block-image {
  margin-top: 2em;
  margin-bottom: 2em;
}

.zawartosc figcaption,
.zawartosc .wp-element-caption {
  margin-top: 0.75em;
  color: var(--zw-muted);
  font-size: 0.9em;
  line-height: 1.55;
  text-align: center;
}

/* Tabele */

.zawartosc table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.95em;
  line-height: 1.55;
  overflow: hidden;
  border-radius: 14px;
}

.zawartosc th,
.zawartosc td {
  padding: 0.85em 1em;
  border: 1px solid var(--zw-border);
  vertical-align: top;
}

.zawartosc th {
  background: var(--zw-bg-soft);
  color: var(--zw-heading);
  font-family: "Title", sans-serif;
  font-weight: 700;
  text-align: left;
}

.zawartosc tr:nth-child(even) td {
  background: #fafafa;
}

/* Kod, skróty techniczne, fragmenty komend */

.zawartosc code {
  padding: 0.15em 0.35em;
  background: var(--zw-code-bg);
  border-radius: 6px;
  color: #be123c;
  font-size: 0.92em;
}

.zawartosc pre {
  padding: 1.25em 1.4em;
  background: #111827;
  color: #f9fafb;
  border-radius: 16px;
  overflow-x: auto;
  line-height: 1.65;
  font-size: 0.92em;
}

.zawartosc pre code {
  padding: 0;
  background: transparent;
  color: inherit;
  border-radius: 0;
}

/* Separatory */

.zawartosc hr {
  border: 0;
  height: 1px;
  background: var(--zw-border);
  margin: 2.6em 0;
}

/* Elementy typu definicje / encyklopedia */

.zawartosc dl {
  margin: 1.5em 0;
}

.zawartosc dt {
  font-family: "Title", sans-serif;
  font-weight: 700;
  color: var(--zw-heading);
  margin-top: 1em;
}

.zawartosc dd {
  margin-left: 0;
  margin-bottom: 1em;
  color: var(--zw-text);
}

/* Wyróżniony box edukacyjny — można użyć w HTML jako class="info-box" */

.zawartosc .info-box {
  margin: 2em 0;
  padding: 1.35em 1.5em;
  background: var(--zw-bg-soft);
  border: 1px solid var(--zw-border);
  border-radius: 16px;
}

.zawartosc .info-box > *:first-child {
  margin-top: 0;
}

.zawartosc .info-box > *:last-child {
  margin-bottom: 0;
}

/* Responsywność */

@media (max-width: 767px) {
  .zawartosc {
    max-width: 100%;
    font-size: 16.5px;
    line-height: 1.72;
  }

  .zawartosc h1,
  .zawartosc h2,
  .zawartosc h3,
  .zawartosc h4,
  .zawartosc h5,
  .zawartosc h6 {
    letter-spacing: -0.018em;
    margin-top: 1.9em;
  }

  .zawartosc h2 {
    padding-bottom: 0.3em;
  }

  .zawartosc ul,
  .zawartosc ol {
    padding-left: 1.2em;
  }

  .zawartosc blockquote,
  .zawartosc .wp-block-quote {
    padding: 1.15em 1.15em 1.15em 1.35em;
    border-radius: 0 12px 12px 0;
  }

  .zawartosc th,
  .zawartosc td {
    padding: 0.75em 0.8em;
  }
}




/* =========================================================
   BRAND COLORS + POPRAWKA WYRÓWNANIA NAGŁÓWKÓW
   Dodać na końcu obecnego CSS
========================================================= */

.zawartosc {
  --zw-primary: #1577AF;
  --zw-primary-hover: #11618E;
  --zw-secondary: #0F172A;
  --zw-text: #475569;
  --zw-muted: #64748B;
  --zw-heading: #0F172A;
  --zw-accent: #89C5E8;
  --zw-accent-soft: #EAF4FA;
  --zw-bg-soft: #F8FAFC;
  --zw-border: #F1F5F9;

  --zw-success: #108981;
  --zw-success-soft: #ECFDF5;
  --zw-purple: #A855F7;
  --zw-purple-soft: #FAF5FF;
  --zw-danger: #EF4444;
  --zw-danger-soft: #FEF2F2;

  color: var(--zw-text);
  text-align: left;
}

/* Nagłówki bez justowania */

.zawartosc h1,
.zawartosc h2,
.zawartosc h3,
.zawartosc h4,
.zawartosc h5,
.zawartosc h6 {
  color: var(--zw-heading);
  text-align: left !important;
  text-align-last: left;
}

/* Główne nagłówki */

.zawartosc h2 {
  border-bottom: 1px solid var(--zw-border);
}

.zawartosc h2::after {
  content: "";
  display: block;
  width: 54px;
  height: 3px;
  margin-top: 0.45em;
  border-radius: 999px;
  background: var(--zw-primary);
}

.zawartosc h3 {
  color: var(--zw-secondary);
}

.zawartosc h4 {
  color: var(--zw-primary-hover);
}

.zawartosc h5 {
  color: var(--zw-secondary);
}

.zawartosc h6 {
  color: var(--zw-muted);
}

/* Linki */

.zawartosc a {
  color: var(--zw-primary);
  text-decoration-color: rgba(21, 119, 175, 0.35);
}

.zawartosc a:hover {
  color: var(--zw-primary-hover);
  text-decoration-color: transparent;
}

/* Punktatory */

.zawartosc ul li::marker {
  color: var(--zw-primary);
}

.zawartosc ol li::marker {
  color: var(--zw-primary);
}

/* Cytaty / wyróżnienia */

.zawartosc blockquote,
.zawartosc .wp-block-quote {
  background: var(--zw-accent-soft);
  border-left-color: var(--zw-primary);
  color: var(--zw-secondary);
}

/* Box informacyjny */

.zawartosc .info-box {
  background: var(--zw-bg-soft);
  border-color: var(--zw-border);
}

/* Opcjonalne boxy edukacyjne */

.zawartosc .box-wazne {
  margin: 2em 0;
  padding: 1.35em 1.5em;
  background: var(--zw-accent-soft);
  border: 1px solid rgba(137, 197, 232, 0.55);
  border-left: 4px solid var(--zw-primary);
  border-radius: 14px;
}

.zawartosc .box-sukces {
  margin: 2em 0;
  padding: 1.35em 1.5em;
  background: var(--zw-success-soft);
  border: 1px solid rgba(16, 137, 129, 0.18);
  border-left: 4px solid var(--zw-success);
  border-radius: 14px;
}

.zawartosc .box-uwaga {
  margin: 2em 0;
  padding: 1.35em 1.5em;
  background: var(--zw-danger-soft);
  border: 1px solid rgba(239, 68, 68, 0.18);
  border-left: 4px solid var(--zw-danger);
  border-radius: 14px;
}

.zawartosc .box-definicja {
  margin: 2em 0;
  padding: 1.35em 1.5em;
  background: var(--zw-purple-soft);
  border: 1px solid rgba(168, 85, 247, 0.18);
  border-left: 4px solid var(--zw-purple);
  border-radius: 14px;
}

/* Nagłówki wewnątrz boxów */

.zawartosc .info-box h2,
.zawartosc .info-box h3,
.zawartosc .info-box h4,
.zawartosc .box-wazne h2,
.zawartosc .box-wazne h3,
.zawartosc .box-wazne h4,
.zawartosc .box-sukces h2,
.zawartosc .box-sukces h3,
.zawartosc .box-sukces h4,
.zawartosc .box-uwaga h2,
.zawartosc .box-uwaga h3,
.zawartosc .box-uwaga h4,
.zawartosc .box-definicja h2,
.zawartosc .box-definicja h3,
.zawartosc .box-definicja h4 {
  margin-top: 0;
}

/* Tabele */

.zawartosc th {
  background: var(--zw-bg-soft);
  color: var(--zw-secondary);
}

.zawartosc th,
.zawartosc td {
  border-color: var(--zw-border);
}

.zawartosc tr:nth-child(even) td {
  background: var(--zw-bg-soft);
}

/* Kod */

.zawartosc code {
  background: var(--zw-bg-soft);
  color: var(--zw-primary-hover);
}

.zawartosc pre {
  background: var(--zw-secondary);
}

/* Separatory */

.zawartosc hr {
  background: var(--zw-border);
}


.zawartosc h2,
.zawartosc h3,
.zawartosc h4,
.zawartosc h5,
.zawartosc h6 {
    
  scroll-margin-top: 200px;
}






/* =========================================================
   ŚRODKOWA KOLUMNA — KARTA TREŚCI ARTYKUŁU
========================================================= */

.zawartosc {
  background: #FBFDFF;
  border: 1px solid rgba(203, 213, 225, 0.72);
  border-radius: 22px;
  padding: clamp(15px, 3vw, 35px);
  box-shadow: 0 18px 50px rgba(15, 23, 42, 0.045);
  align-self: start;
}

.zawartosc {
  max-width: 860px;
  margin-left: auto;
  margin-right: auto;
}

.zawartosc:first-child {
  margin-top: 0;
}

@media (max-width: 1024px) {
  .zawartosc {
    padding: 28px 22px;
    border-radius: 18px;
  }
}

@media (max-width: 767px) {
  .zawartosc {
    padding: 24px 18px;
    border-radius: 16px;
  }
}




/* ============================================================
   NEUROEXPERT — Gutenberg File Block (.wp-block-file)
   Styl: nowoczesna karta do pobrania
   ============================================================ */

.wp-block-file {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 12px !important;
  padding: 16px 20px !important;
  margin-bottom: 10px !important;
  transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
  box-shadow: 0 1px 3px rgba(0,0,0,0.05) !important;
  flex-wrap: nowrap !important;
}

.wp-block-file:hover {
  border-color: #89c5e8 !important;
  box-shadow: 0 4px 14px rgba(21,119,175,0.1) !important;
}

/* Ikonka PDF po lewej */
.wp-block-file::before {
  content: '' !important;
  display: block !important;
  width: 40px !important;
  height: 40px !important;
  flex-shrink: 0 !important;
  border-radius: 8px !important;
  background-color: #eaf4fa !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%231577af' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z'/%3E%3Cpolyline points='14 2 14 8 20 8'/%3E%3Cline x1='9' y1='13' x2='15' y2='13'/%3E%3Cline x1='9' y1='17' x2='13' y2='17'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: 20px 20px !important;
}

/* Nazwa pliku — link tekstowy */
.wp-block-file a:not(.wp-block-file__button) {
  font-family: 'Para', system-ui, sans-serif !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  color: #0f172a !important;
  text-decoration: none !important;
  flex: 1 !important;
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  transition: color 0.18s ease !important;
  line-height: 1.4 !important;
}

.wp-block-file a:not(.wp-block-file__button):hover {
  color: #1577af !important;
  text-decoration: none !important;
}

/* Przycisk "Pobierz" */
.wp-block-file .wp-block-file__button {
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px !important;
  background: #1577af !important;
  color: #ffffff !important;
  font-family: 'Para', system-ui, sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  padding: 8px 16px !important;
  border-radius: 8px !important;
  border: none !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  flex-shrink: 0 !important;
  transition: background 0.18s ease, box-shadow 0.18s ease !important;
  box-shadow: 0 2px 8px rgba(21,119,175,0.2) !important;
  letter-spacing: 0.01em !important;
  cursor: pointer !important;
}

.wp-block-file .wp-block-file__button::before {
  content: '' !important;
  display: inline-block !important;
  width: 14px !important;
  height: 14px !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%23ffffff' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4'/%3E%3Cpolyline points='7 10 12 15 17 10'/%3E%3Cline x1='12' y1='15' x2='12' y2='3'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: contain !important;
  flex-shrink: 0 !important;
}

.wp-block-file .wp-block-file__button:hover {
  background: #11618e !important;
  box-shadow: 0 4px 14px rgba(21,119,175,0.28) !important;
  color: #ffffff !important;
  text-decoration: none !important;
}

/* Grupowanie — gdy kilka plików jest obok siebie */
.wp-block-file + .wp-block-file {
  margin-top: 0 !important;
}

/* Responsywność */
@media (max-width: 560px) {
  .wp-block-file {
    flex-wrap: wrap !important;
    gap: 12px !important;
  }

  .wp-block-file a:not(.wp-block-file__button) {
    white-space: normal !important;
  }

  .wp-block-file .wp-block-file__button {
    width: 100% !important;
    justify-content: center !important;
  }
}


/* =========================================================
   Pliki w ACF WYSIWYG — karta pobierania
   Faktyczny HTML: <p><a>plik</a><a class="wp-block-file__button">...</a></p>
   ========================================================= */

.zawartosc p:has(a.wp-block-file__button) {
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
  margin: 1.7em 0 !important;
  padding: 16px 20px !important;
  overflow: hidden;
  border: 1px solid #e2e8f0 !important;
  border-radius: 12px !important;
  background: #ffffff !important;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06) !important;
  transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}

.zawartosc p:has(a.wp-block-file__button):hover {
  border-color: #89c5e8 !important;
  box-shadow: 0 4px 14px rgba(21, 119, 175, 0.1) !important;
}

/* Ikona pliku */
.zawartosc p:has(a.wp-block-file__button)::before {
  width: 40px;
  height: 40px;
  flex: 0 0 40px;
  border-radius: 8px;
  background-color: #eaf4fa;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%231577af' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z'/%3E%3Cpolyline points='14 2 14 8 20 8'/%3E%3Cline x1='9' y1='13' x2='15' y2='13'/%3E%3Cline x1='9' y1='17' x2='13' y2='17'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 20px;
  content: "";
}

/* Nazwa pliku */
.zawartosc p:has(a.wp-block-file__button) > a:not(.wp-block-file__button) {
  min-width: 0;
  flex: 1 1 auto;
  overflow: hidden;
  color: #0f172a !important;
  font-family: "Para", system-ui, sans-serif !important;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.4;
  text-decoration: none !important;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.zawartosc p:has(a.wp-block-file__button) > a:not(.wp-block-file__button):hover {
  color: #1577af !important;
}

/* Przycisk „Pobierz” */
.zawartosc a.wp-block-file__button {
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px;
  flex: 0 0 auto;
  padding: 9px 16px !important;
  border: 0 !important;
  border-radius: 8px !important;
  background: #1577af !important;
  box-shadow: 0 2px 8px rgba(21, 119, 175, 0.2) !important;
  color: #ffffff !important;
  font-family: "Para", system-ui, sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  text-decoration: none !important;
  white-space: nowrap;
  transition: background 0.18s ease, box-shadow 0.18s ease;
}

.zawartosc a.wp-block-file__button::before {
  width: 14px;
  height: 14px;
  flex: 0 0 14px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%23ffffff' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4'/%3E%3Cpolyline points='7 10 12 15 17 10'/%3E%3Cline x1='12' y1='15' x2='12' y2='3'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  content: "";
}

.zawartosc a.wp-block-file__button:hover {
  background: #11618e !important;
  box-shadow: 0 4px 14px rgba(21, 119, 175, 0.28) !important;
  color: #ffffff !important;
}

/* Telefon */
@media (max-width: 560px) {
  .zawartosc p:has(a.wp-block-file__button) {
    flex-wrap: wrap !important;
    gap: 12px !important;
    padding: 14px !important;
  }

  .zawartosc p:has(a.wp-block-file__button) > a:not(.wp-block-file__button) {
    flex-basis: calc(100% - 56px);
    white-space: normal;
  }

  .zawartosc a.wp-block-file__button {
    width: 100%;
    justify-content: center;
  }
}







/* ============================================================
   ZALECENIE „OPTYMALIZACJA SNU"
   Paginacja WordPressa + hierarchia nagłówków
   Wklej do: Elementor → Ustawienia witryny → Custom CSS
   (albo do Custom CSS samego wpisu, jeśli wolisz mieć to lokalnie)

   Wszystko zawężone do .zawartosc — nie rusza reszty serwisu.
   ============================================================ */

/* ---------- 1. PAGINACJA ---------- */

.zawartosc .page-links {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin: 48px 0 8px;
  padding: 22px 24px;
  border: 1px solid #e2e8f0;
  border-radius: 18px;
  background: #f8fafc;
  font-family: Para, system-ui, sans-serif;
}

.zawartosc .page-links-title {
  margin-right: 6px;
  color: #64748b;
  font-size: .93rem;
  font-weight: 700;
  letter-spacing: .01em;
}

/* wspólny kształt dla linków i aktywnej strony */
.zawartosc .page-links .post-page-numbers {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  height: 44px;
  padding: 0 12px;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  background: #fff;
  color: #1577af;
  font-size: .98rem;
  font-weight: 700;
  text-decoration: none;
  transition: background-color .15s ease, border-color .15s ease, color .15s ease;
}

.zawartosc .page-links a.post-page-numbers:hover {
  border-color: #1577af;
  background: #eaf4fa;
  color: #11618e;
}

.zawartosc .page-links a.post-page-numbers:focus-visible {
  outline: none;
  box-shadow: 0 0 0 4px rgba(21, 119, 175, .11);
  border-color: #1577af;
}

/* aktywna strona — WordPress renderuje ją jako <span>, nie <a> */
.zawartosc .page-links > .post-page-numbers.current,
.zawartosc .page-links span.post-page-numbers:not(a) {
  border-color: #1577af;
  background: #1577af;
  color: #fff;
  box-shadow: 0 4px 16px rgba(21, 119, 175, .18);
  cursor: default;
}

/* WordPress wstawia między numerami <span class="screen-reader-text">, </span>
   — przecinki są potrzebne czytnikom ekranu, ale nie mają zajmować miejsca */
.zawartosc .page-links .screen-reader-text {
  position: absolute !important;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}

@media (max-width: 560px) {
  .zawartosc .page-links {
    justify-content: center;
    padding: 18px 14px;
    gap: 6px;
  }
  .zawartosc .page-links-title {
    width: 100%;
    margin: 0 0 4px;
    text-align: center;
  }
  .zawartosc .page-links .post-page-numbers {
    min-width: 40px;
    height: 40px;
    padding: 0 8px;
  }
}

/* ---------- 1b. GRAFIKI (figure + figcaption) ---------- */

.zawartosc figure.nm-fig {
  margin: 36px 0;
  padding: 20px;
  border: 1px solid #e2e8f0;
  border-radius: 18px;
  background: #fff;
}

.zawartosc figure.nm-fig img {
  display: block;
  width: 100%;
  height: auto;   /* nadpisuje atrybut height — ten służy tylko rezerwacji miejsca */
  margin: 0;
}

.zawartosc figure.nm-fig figcaption {
  margin-top: 14px;
  padding-top: 12px;
  border-top: 1px solid #e2e8f0;
  color: #64748b;
  font-family: Para, system-ui, sans-serif;
  font-size: .89rem;
  line-height: 1.55;
}

/* Grafiki są szerokie i szczegółowe — na wąskich ekranach pozwalamy
   przewinąć je w poziomie zamiast zmniejszać do nieczytelności. */
@media (max-width: 700px) {
  .zawartosc figure.nm-fig {
    padding: 14px;
  }
  .zawartosc figure.nm-fig img {
    min-width: 560px;
  }
  .zawartosc figure.nm-fig > img {
    display: block;
  }
  .zawartosc figure.nm-fig {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}

@media print {
  .zawartosc figure.nm-fig { border: 0; padding: 0; page-break-inside: avoid; }
}

/* ---------- 2. FILARY (nagłówek strony) ---------- */

.zawartosc h2.nm-filar {
  margin: 0 0 6px;
  padding-bottom: 14px;
  border-bottom: 3px solid #1577af;
  color: #0f172a;
  font-family: Title, Georgia, serif;
  font-size: clamp(1.6rem, 3.2vw, 2.15rem);
  font-weight: 800;
  line-height: 1.2;
}

.zawartosc h2.nm-filar .nm-filar-nr {
  display: block;
  margin-bottom: 4px;
  color: #1577af;
  font-family: Para, system-ui, sans-serif;
  font-size: .82rem;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.zawartosc p.nm-filar-lead {
  margin: 0 0 42px;
  color: #64748b;
  font-size: 1.05rem;
}

/* ---------- 3. HIERARCHIA NAGŁÓWKÓW ---------- */
/* h2 = rozdział („5. …”), h3 = sekcja („5.2 …”), h4 i h5 = głębiej */

.zawartosc h2:not(.nm-filar) {
  margin: 64px 0 18px;
  padding: 18px 22px;
  border-left: 5px solid #1577af;
  border-radius: 0 14px 14px 0;
  background: #eaf4fa;
  color: #0f172a;
  font-family: Title, Georgia, serif;
  font-size: clamp(1.35rem, 2.6vw, 1.75rem);
  font-weight: 800;
  line-height: 1.3;
}

.zawartosc h3 {
  margin: 40px 0 12px;
  color: #0f172a;
  font-family: Title, Georgia, serif;
  font-size: clamp(1.15rem, 2vw, 1.4rem);
  font-weight: 700;
  line-height: 1.35;
}

.zawartosc h4 {
  margin: 28px 0 10px;
  color: #0f172a;
  font-family: Para, system-ui, sans-serif;
  font-size: 1.06rem;
  font-weight: 700;
}

.zawartosc h5 {
  margin: 22px 0 8px;
  color: #475569;
  font-family: Para, system-ui, sans-serif;
  font-size: .98rem;
  font-weight: 700;
}

/* pierwszy nagłówek na stronie nie potrzebuje dużego odstępu górnego */
.zawartosc > h2:first-child,
.zawartosc > .elementor-widget-container > h2:first-child {
  margin-top: 0;
}/* End custom CSS */
/* Start custom CSS for nested-accordion, class: .elementor-element-cf27d69 *//* ==========================================================================
   STYLOWANIE AKORDEONU (ZAGNIEŻDŻONEGO - Nested Elements) I BIBLIOGRAFII
   Dla klasy .bibliografia przypisanej w Elementorze
   ========================================================================== */

/* --- STYLOWANIE AKORDEONU (KONTENERA) --- */

/* Resetowanie i stylowanie pojedynczego elementu akordeonu (<details>) */
.bibliografia details.e-n-accordion-item {
    border: 1px solid #e2e8f0 !important; /* Delikatne obramowanie */
    border-radius: 12px !important; /* Zaokrąglone rogi */
    margin-bottom: 16px !important;
    background-color: #ffffff !important;
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05) !important; /* Standardowy delikatny obrys */
    transition: all 0.3s ease !important;
    overflow: hidden !important;
    outline: none !important; /* Usunięcie obrysu focus */
}

/* Podświetlenie na hover całego elementu (usunięto agresywny cień) */
.bibliografia details.e-n-accordion-item:hover {
    border-color: #cbd5e1 !important; /* Tylko zmiana koloru ramki */
}

/* Reset obrysu kliknięcia (focus) dla całego detalu */
.bibliografia details.e-n-accordion-item:focus,
.bibliografia details.e-n-accordion-item:focus-within {
    outline: none !important;
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05) !important; /* Utrzymanie tylko podstawowego cienia, bez ringu focusu */
}

/* --- STYLOWANIE NAGŁÓWKA AKORDEONU (<summary>) --- */

.bibliografia summary.e-n-accordion-item-title {
    background-color: #f8fafc !important; /* Jasne tło zamkniętego */
    padding: 18px 24px !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    cursor: pointer !important;
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
    transition: background-color 0.3s ease !important;
}

/* Usunięcie podwójnego obrysu pojawiającego się po kliknięciu (browser default) */
.bibliografia summary.e-n-accordion-item-title:focus,
.bibliografia summary.e-n-accordion-item-title:focus-visible,
.bibliografia summary.e-n-accordion-item-title:active {
    outline: none !important;
    box-shadow: none !important;
    border: none !important;
}

/* Styl nagłówka, gdy akordeon jest OTWARTY (posiada atrybut open) */
.bibliografia details[open].e-n-accordion-item summary.e-n-accordion-item-title {
    background:
    linear-gradient(135deg, rgba(234, 244, 250, 0.95), rgba(255, 255, 255, 1));
    border-bottom: 1px solid #e2e8f0 !important;
}

/* Ukrycie domyślnej strzałki z przeglądarki w tagu summary (Safari/Chrome) */
.bibliografia summary.e-n-accordion-item-title::-webkit-details-marker {
    display: none !important;
}

/* Tekst nagłówka */
.bibliografia summary.e-n-accordion-item-title .e-n-accordion-item-title-header {
    color: #0f172a !important; /* Ciemny slate */
}

/* Wymuszenie fontów na tagach nagłówkowych (np. h5) wewnątrz summary */
.bibliografia summary.e-n-accordion-item-title .e-n-accordion-item-title-header > * {
    font-family: 'Title', serif !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    
    letter-spacing: 0.5px !important;
    margin: 0 !important;
    color: inherit !important;
    transition: color 0.3s ease !important;
}

/* Kolor tekstu, gdy otwarty */
.bibliografia details[open].e-n-accordion-item summary.e-n-accordion-item-title .e-n-accordion-item-title-header {
    color: #1577af !important; /* Główny niebieski */
}

/* --- STYLOWANIE IKONY (ZMIANA NA NOWOCZESNĄ STRZAŁKĘ) --- */

/* Ukrycie domyślnych ikon Elementora (plus/minus ukryte całkowicie) */
.bibliografia summary.e-n-accordion-item-title .e-n-accordion-item-title-icon .e-opened,
.bibliografia summary.e-n-accordion-item-title .e-n-accordion-item-title-icon .e-closed {
    display: none !important;
}

.bibliografia summary.e-n-accordion-item-title .e-n-accordion-item-title-icon {
    order: 2 !important; /* Wymusza pozycję ikony z prawej strony */
    margin-left: 16px !important;
    margin-right: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* Wstawienie nowej ikony (Chevron/Strzałka) za pomocą czystego CSS */
.bibliografia summary.e-n-accordion-item-title .e-n-accordion-item-title-icon::after {
    content: "";
    display: block;
    width: 20px;
    height: 20px;
    /* Ikona strzałki w dół, kolor slate-500 (#64748b) */
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    transition: transform 0.3s ease !important; /* Animacja obrotu */
}

/* Obrót ikony o 180 stopni i zmiana koloru po otwarciu akordeonu */
.bibliografia details[open].e-n-accordion-item summary.e-n-accordion-item-title .e-n-accordion-item-title-icon::after {
    transform: rotate(180deg);
    /* Ikona strzałki, kolor niebieski (#1577af) */
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%231577af' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
}

/* --- STYLOWANIE ZAWARTOŚCI AKORDEONU (TREŚĆ) --- */

/* Elementor umieszcza treść w kontenerze po nagłówku */
.bibliografia details.e-n-accordion-item > .e-con,
.bibliografia details.e-n-accordion-item > div {
    padding: 24px !important;
    background-color: #F8FCFE;
    border: none !important; /* Usunięcie jakichkolwiek obramowań nałożonych przez Elementora na kontener wewnętrzny */
    box-shadow: none !important;
    outline: none !important;
}


/* ==========================================================================
   STYLOWANIE BIBLIOGRAFII (Zawartość listy w edytorze tekstu)
   ========================================================================== */

/* 1. Reset domyślnej listy i inicjalizacja licznika */
.bibliografia .elementor-widget-text-editor ol {
    list-style-type: none !important; /* Bezwzględne usunięcie numerów */
    counter-reset: bib-counter !important; 
    padding-left: 0 !important;
    margin: 0 !important;
    font-family: 'Para', sans-serif !important;
}

/* 2. Stylowanie pojedynczego wpisu */
.bibliografia .elementor-widget-text-editor ol li {
    display: block !important; /* Bezpiecznik: niszczy wbudowane markery (::marker) */
    position: relative !important;
    counter-increment: bib-counter !important;
    padding-left: 2.5rem !important; 
    margin-bottom: 12px !important;
    color: #475569 !important; 
    font-size: 14px !important; 
    line-height: 1.6 !important;
    transition: color 0.3s ease !important;
}

/* Elementor domyślnie dodaje znaczniki (::marker), musimy to stłamsić.
   display: block; wyżej robi większość roboty, ale to dobija resztki. */
.bibliografia .elementor-widget-text-editor ol li::marker {
    content: none !important;
    display: none !important;
}

/* 3. Efekt hover na tekście bibliografii */
.bibliografia .elementor-widget-text-editor ol li:hover {
    color: #0f172a !important; 
}

/* 4. Akademicki numerek [1], [2] generowany sztucznie z lewej */
.bibliografia .elementor-widget-text-editor ol li::before {
    content: "[" counter(bib-counter) "]" !important; 
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    color: #1577af !important; 
    font-weight: 700 !important;
    font-size: 13px !important;
    letter-spacing: 0.5px !important;
}

/* 5. UKRYWANIE PUSTYCH ELEMENTÓW */
.bibliografia .elementor-widget-text-editor ol li:empty,
.bibliografia .elementor-widget-text-editor ol li:blank {
    display: none !important;
    counter-increment: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Usuwa margines z ostatniego wpisu */
.bibliografia .elementor-widget-text-editor ol li:last-child {
    margin-bottom: 0 !important;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-28a44af *//* =========================================================
   NEUROEXPERT — 3 SEKCJE POWIĄZAŃ ACF
========================================================= */

.ne-powiazania {
  display: flex;
  flex-direction: column;
  gap: 22px;

  width: 100%;
  font-family: "Para", sans-serif;
}

.ne-powiazania-card {
  --ne-card-color: #1577AF;
  --ne-card-bg: #EAF4FA;
  --ne-card-border: rgba(21, 119, 175, 0.18);

  overflow: hidden;

  background: transparent !important;
  border: 1px solid var(--ne-card-border);
  border-radius: 18px;

  
}

.ne-powiazania-card--suplementy {
  --ne-card-color: #108981;
  --ne-card-bg: #ECFDF5;
  --ne-card-border: rgba(16, 137, 129, 0.22);
}

.ne-powiazania-card--zalecenia {
  --ne-card-color: #A855F7;
  --ne-card-bg: #FAF5FF;
  --ne-card-border: rgba(168, 85, 247, 0.22);
}

.ne-powiazania-card--encyklopedia {
  --ne-card-color: #1577AF;
  --ne-card-bg: #EAF4FA;
  --ne-card-border: rgba(21, 119, 175, 0.22);
}

.ne-powiazania-card__header {
  display: flex;
  align-items: center;
  gap: 10px;

  padding: 16px 20px;

  background: var(--ne-card-bg);
  border-bottom: 1px solid var(--ne-card-border);

  color: var(--ne-card-color);
}

.ne-powiazania-card__icon {
  width: 38px;
  height: 38px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  flex: 0 0 22px;

  color: var(--ne-card-color);
}

.ne-powiazania-svg {
  display: block;
  width: 38px;
  height: 38px;
}

.ne-powiazania-card__title {
  margin: 0 !important;

  font-family: "Title", sans-serif;
  font-size: 0.9rem;
  line-height: 1.25;
  font-weight: 700;
 

  color: var(--ne-card-color);
}

.ne-powiazania-card__body {
  padding: 18px 20px 20px;
}

.ne-powiazania-card__item {
  display: block;

  padding: 0;
  margin: 0 0 22px;

  text-decoration: none !important;
  color: inherit;

  border-radius: 12px;

  transition:
    transform 0.2s ease,
    color 0.2s ease;
}

.ne-powiazania-card__item:last-child {
  margin-bottom: 0;
}

.ne-powiazania-card__item-title {
  display: block;

  margin-bottom: 5px;

  font-family: "Title", sans-serif;
  font-size: 0.9rem;
  line-height: 1.28;
  font-weight: 700;

  color: #0F172A;

  transition: color 0.2s ease;
}

.ne-powiazania-card__item-desc {
  display: block;

  max-width: 95%;

  font-family: "Para", sans-serif;
  font-size: 0.75rem;
  line-height: 1.4;
  font-weight: 300;

  color: #64748B;
}

.ne-powiazania-card__item:hover {
  transform: translateX(3px);
}

.ne-powiazania-card__item:hover .ne-powiazania-card__item-title {
  color: var(--ne-card-color);
}

/* Wariant w prawej kolumnie */
.ency-right .ne-powiazania-card__header {
  padding: 15px 18px;
}

.ency-right .ne-powiazania-card__body {
  padding: 17px 18px 19px;
}

/* Mobile */
@media (max-width: 767px) {
  .ne-powiazania {
    gap: 18px;
  }

  .ne-powiazania-card {
    border-radius: 16px;
  }

  .ne-powiazania-card__header {
    padding: 14px 16px;
  }

  .ne-powiazania-card__body {
    padding: 16px;
  }

  .ne-powiazania-card__item {
    margin-bottom: 18px;
  }
}/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Para';
	font-style: italic;
	font-weight: 400;
	font-display: swap;
	src: url('https://neuroexpert.org/wp-content/uploads/2026/08/Para-Inter-400-italic-PL.woff2') format('woff2');
}
@font-face {
	font-family: 'Para';
	font-style: normal;
	font-weight: 900;
	font-display: swap;
	src: url('https://neuroexpert.org/wp-content/uploads/2026/08/Para-Inter-900-PL.woff2') format('woff2');
}
@font-face {
	font-family: 'Para';
	font-style: normal;
	font-weight: 800;
	font-display: swap;
	src: url('https://neuroexpert.org/wp-content/uploads/2026/08/Para-Inter-800-PL.woff2') format('woff2');
}
@font-face {
	font-family: 'Para';
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: url('https://neuroexpert.org/wp-content/uploads/2026/08/Para-Inter-700-PL.woff2') format('woff2');
}
@font-face {
	font-family: 'Para';
	font-style: normal;
	font-weight: 600;
	font-display: swap;
	src: url('https://neuroexpert.org/wp-content/uploads/2026/08/Para-Inter-600-PL.woff2') format('woff2');
}
@font-face {
	font-family: 'Para';
	font-style: normal;
	font-weight: 500;
	font-display: swap;
	src: url('https://neuroexpert.org/wp-content/uploads/2026/08/Para-Inter-500-PL.woff2') format('woff2');
}
@font-face {
	font-family: 'Para';
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url('https://neuroexpert.org/wp-content/uploads/2026/08/Para-Inter-400-PL.woff2') format('woff2');
}
@font-face {
	font-family: 'Para';
	font-style: normal;
	font-weight: 300;
	font-display: swap;
	src: url('https://neuroexpert.org/wp-content/uploads/2026/08/Para-Inter-300-PL.woff2') format('woff2');
}
@font-face {
	font-family: 'Para';
	font-style: normal;
	font-weight: 200;
	font-display: swap;
	src: url('https://neuroexpert.org/wp-content/uploads/2026/08/Para-Inter-200-PL.woff2') format('woff2');
}
/* End Custom Fonts CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Title';
	font-style: italic;
	font-weight: 400;
	font-display: swap;
	src: url('https://neuroexpert.org/wp-content/uploads/2026/08/Title-Merriweather-400-italic-PL.woff2') format('woff2');
}
@font-face {
	font-family: 'Title';
	font-style: italic;
	font-weight: 300;
	font-display: swap;
	src: url('https://neuroexpert.org/wp-content/uploads/2026/08/Title-Merriweather-300-italic-PL.woff2') format('woff2');
}
@font-face {
	font-family: 'Title';
	font-style: normal;
	font-weight: 900;
	font-display: swap;
	src: url('https://neuroexpert.org/wp-content/uploads/2026/08/Title-Merriweather-900-PL.woff2') format('woff2');
}
@font-face {
	font-family: 'Title';
	font-style: normal;
	font-weight: 800;
	font-display: swap;
	src: url('https://neuroexpert.org/wp-content/uploads/2026/08/Title-Merriweather-800-PL.woff2') format('woff2');
}
@font-face {
	font-family: 'Title';
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: url('https://neuroexpert.org/wp-content/uploads/2026/08/Title-Merriweather-700-PL.woff2') format('woff2');
}
@font-face {
	font-family: 'Title';
	font-style: normal;
	font-weight: 600;
	font-display: swap;
	src: url('https://neuroexpert.org/wp-content/uploads/2026/08/Title-Merriweather-600-PL.woff2') format('woff2');
}
@font-face {
	font-family: 'Title';
	font-style: normal;
	font-weight: 500;
	font-display: swap;
	src: url('https://neuroexpert.org/wp-content/uploads/2026/08/Title-Merriweather-500-PL.woff2') format('woff2');
}
@font-face {
	font-family: 'Title';
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url('https://neuroexpert.org/wp-content/uploads/2026/08/Title-Merriweather-400-PL.woff2') format('woff2');
}
@font-face {
	font-family: 'Title';
	font-style: normal;
	font-weight: 300;
	font-display: swap;
	src: url('https://neuroexpert.org/wp-content/uploads/2026/08/Title-Merriweather-300-PL.woff2') format('woff2');
}
/* End Custom Fonts CSS */