*{box-sizing:border-box}
:root{--green:#3f8f3d;--green2:#2f7f2f;--green-dark:#043d2f;--green-deep:#003728;--text:#053d31;--muted:#4e665c;--soft:#f3faf5}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,Arial,sans-serif;background:#fff;color:var(--text);overflow-x:hidden}
a{color:inherit}
.site-header{height:112px;display:flex;align-items:center;justify-content:space-between;gap:35px;padding:18px 6vw;background:#fff;position:sticky;top:0;z-index:50;box-shadow:0 8px 30px rgba(0,45,30,.08);transition:all .35s ease;transform-origin:top center}.site-header:hover{transform:scale(1.05)}
.logo img{height:88px;width:auto;display:block;object-fit:contain;transition:all .35s ease}.site-header:hover .logo img{transform:scale(1.5)}.mobile-menu{display:none;border:0;background:var(--green);color:#fff;border-radius:10px;padding:10px 13px;font-size:22px}
.main-nav{display:flex;align-items:center;gap:34px;flex-wrap:wrap}.main-nav a{position:relative;text-decoration:none;color:#071f1a;font-weight:800;font-size:15px;padding:22px 0;transition:.25s}.main-nav a:hover,.main-nav a.active{color:var(--green)}.main-nav a::after{content:"";position:absolute;left:0;bottom:12px;width:0;height:3px;background:var(--green);transition:.25s}.main-nav a.active::after,.main-nav a:hover::after{width:100%}
.hero{position:relative;display:grid;grid-template-columns:1fr 550px;gap:90px;align-items:center;padding:78px 7vw 86px;background:radial-gradient(circle at 89% 50%,#edf7ef 0,#fff 43%,#fff 100%)}.hero-text{max-width:650px}.eyebrow{display:block;color:var(--green);font-weight:900;text-transform:uppercase;letter-spacing:.16em;font-size:18px;margin-bottom:18px}.hero h1{font-size:clamp(36px,4.5vw,60px);line-height:1.04;color:var(--green-dark);margin:0 0 24px;font-weight:900}.hero p{font-size:18px;line-height:1.8;color:#263e36;margin:0 0 25px}.btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border-radius:9px;padding:16px 28px;font-weight:900;margin:8px 12px 8px 0}.btn.primary{background:var(--green);color:#fff;box-shadow:0 12px 26px rgba(63,143,61,.22)}.btn.secondary{background:#fff;color:var(--green);border:2px solid var(--green)}.hero-card img{width:100%;height:440px;object-fit:cover;border-radius:28px;box-shadow:0 32px 75px rgba(0,55,35,.14)}
.section-head{text-align:center;max-width:920px;margin:0 auto 42px}.section-head span{display:block;color:var(--green);font-weight:900;text-transform:uppercase;letter-spacing:.16em;font-size:17px;margin-bottom:12px}.section-head h2{font-size:clamp(28px,3.2vw,42px);color:var(--green-dark);line-height:1.08;margin:0 0 13px;font-weight:900}.section-head p{font-size:18px;color:var(--muted);line-height:1.65;margin:0}
.azyl-slider-section{padding:70px 7vw 88px;background:#fff}.azyl-blog-slider-section{padding:76px 7vw 92px;background:#fbfdfb}.azyl-slider-wrap{position:relative;max-width:1280px;margin:0 auto}.azyl-slider-track,.azyl-blog-track{display:flex!important;flex-wrap:nowrap!important;gap:48px;overflow-x:auto!important;overflow-y:hidden!important;scroll-behavior:smooth;scrollbar-width:none;padding:14px 8px 32px;scroll-snap-type:x mandatory}.azyl-slider-track::-webkit-scrollbar,.azyl-blog-track::-webkit-scrollbar{display:none}.azyl-slide-card,.azyl-blog-card{flex:0 0 calc((100% - 96px)/3)!important;min-width:330px;background:#fff;border:1px solid #e5efe8;border-radius:13px;overflow:hidden;box-shadow:0 20px 50px rgba(0,55,35,.10);scroll-snap-align:start;transition:.25s}.azyl-slide-card:hover,.azyl-blog-card:hover{transform:translateY(-7px);box-shadow:0 34px 75px rgba(0,55,35,.16)}.azyl-slide-card a,.azyl-blog-card a{display:block;text-decoration:none!important;color:inherit!important}.azyl-slide-img,.azyl-blog-img{height:210px;background:#eaf4ed;overflow:hidden}.azyl-slide-img img,.azyl-blog-img img{width:100%!important;height:100%!important;object-fit:cover!important;display:block}.azyl-slide-body,.azyl-blog-body{padding:28px 30px 34px;background:#fff}.azyl-slide-body span,.azyl-blog-body span{display:block;color:var(--green);font-weight:900;font-size:14px;text-transform:uppercase;margin-bottom:16px}.azyl-slide-body h3,.azyl-blog-body h3{font-size:25px;line-height:1.15;color:var(--green-dark);margin:0 0 18px;font-weight:900}.azyl-slide-body p,.azyl-blog-body p{font-size:16px;line-height:1.65;color:var(--muted);margin:0 0 16px}.azyl-blog-body strong{color:var(--green);font-weight:900}.azyl-slider-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:10;width:56px;height:56px;border:0;border-radius:50%;background:var(--green);color:#fff;font-size:42px;line-height:1;cursor:pointer;box-shadow:0 18px 40px rgba(63,143,61,.26);transition:.2s}.azyl-slider-arrow:hover{transform:translateY(-50%) scale(1.08)}.azyl-prev{left:-55px}.azyl-next{right:-55px}
.blog-wrap-wide{max-width:1400px}.azyl-blog-card{display:grid!important;grid-template-columns:220px 1fr;flex-basis:calc((100% - 48px)/2)!important;max-width:none}.azyl-blog-card a{display:grid!important;grid-template-columns:220px 1fr;height:100%}.azyl-blog-img{height:100%;min-height:250px}.azyl-blog-body{padding:30px}
.page-hero{text-align:center;padding:85px 6vw 55px;background:radial-gradient(circle at right,#edf7ef 0,#fff 55%)}.page-hero h1{font-size:clamp(30px,4vw,50px);color:var(--green-dark)}.page-hero p{font-size:19px;color:var(--muted);max-width:780px;margin:0 auto;line-height:1.7}.public-page-hero{display:grid;grid-template-columns:1fr 500px;gap:70px;align-items:center;padding:82px 7vw;background:radial-gradient(circle at right,#edf7ef 0,#fff 55%)}.public-page-hero span{color:var(--green);font-weight:900;text-transform:uppercase;letter-spacing:.16em;font-size:18px}.public-page-hero h1{font-size:clamp(32px,4.2vw,52px);line-height:1.08;color:var(--green-dark)}.public-page-hero p{font-size:20px;line-height:1.75;color:var(--muted)}.public-page-hero img{width:100%;height:380px;object-fit:cover;border-radius:25px;box-shadow:0 25px 60px rgba(0,55,35,.12)}.public-content{max-width:920px;margin:0 auto;padding:64px 22px;font-size:20px;line-height:1.9;color:#30483e}.public-blocks{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;padding:40px 7vw 86px}.public-blocks article,.blog-tile{background:#fff;border:1px solid #e5efe8;border-radius:16px;overflow:hidden;box-shadow:0 18px 45px rgba(0,55,35,.07)}.public-blocks article{padding:24px}.public-blocks img{height:220px;width:100%;object-fit:cover;border-radius:13px}.public-blocks h2{color:var(--green-dark)}.public-blocks p{color:var(--muted);line-height:1.7}
.blog-grid-public{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding:75px 7vw;background:#fbfdfb}.blog-tile a{text-decoration:none;color:inherit}.blog-tile img{width:100%;height:225px;object-fit:cover}.blog-tile div{padding:26px}.blog-tile span{color:var(--green);font-weight:900}.blog-tile h2{color:var(--green-dark);font-size:24px}.blog-tile p{color:var(--muted);line-height:1.65}.blog-tile strong{color:var(--green)}
.article-page{max-width:980px;margin:0 auto;padding:75px 22px}.article-page>img{width:100%;height:430px;object-fit:cover;border-radius:24px}.article-page h1{font-size:clamp(36px,5vw,58px);color:var(--green-dark)}.article-page .lead{font-size:21px;color:var(--muted);line-height:1.7}.article-content h2{font-size:34px;color:var(--green-dark);margin:38px 0 18px}.article-content p{font-size:19px;line-height:1.95;color:#31483e;margin:0 0 24px}.contact-box{max-width:760px;margin:40px auto 90px;padding:34px;border-radius:18px;background:#f7fbf8;border:1px solid #e1eee5}.contact-box label{display:block;font-weight:800;margin:14px 0 8px}.contact-box input,.contact-box textarea{width:100%;padding:14px;border:1px solid #dbe8df;border-radius:10px;font:inherit}.contact-box textarea{min-height:130px}.form-message{padding:14px 18px;border-radius:12px;margin:0 0 18px;font-weight:700}.form-message.success{background:#eaf8ea;border:1px solid #b7dfb7;color:#1f5f1f}.form-message.error{background:#fff1f1;border:1px solid #f0b8b8;color:#9d1f1f}
.site-footer{background:linear-gradient(135deg,#003327,#054432);color:#fff;padding:58px 7vw 26px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:62px;max-width:1320px;margin:0 auto}.footer-logo{height:95px;width:auto;object-fit:contain}.site-footer h3{color:#77c46f;text-transform:uppercase;letter-spacing:.12em;font-size:15px;margin-top:0}.site-footer p{color:#e0eee5;line-height:1.7}.site-footer a{display:block;color:#fff;text-decoration:none;margin:8px 0}.site-footer a:hover{color:#b8e6b4}.socials{display:flex;gap:18px;margin-top:20px}.socials span{font-weight:900;font-size:22px}.footer-bottom{max-width:1320px;margin:42px auto 0;padding-top:22px;border-top:1px solid rgba(255,255,255,.18);text-align:center;color:#dceee3}.footer-bottom a{color:#b8e6b4;font-weight:800;display:inline-block}
@media(max-width:1200px){.azyl-prev{left:-18px}.azyl-next{right:-18px}.azyl-blog-card{flex-basis:calc((100% - 48px)/2)!important}}
@media(max-width:1000px){.hero,.public-page-hero{grid-template-columns:1fr}.azyl-slide-card{flex-basis:calc((100% - 48px)/2)!important}.azyl-blog-card,.azyl-blog-card a{grid-template-columns:1fr}.azyl-blog-img{height:230px}.footer-grid,.blog-grid-public,.public-blocks{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.site-header{height:auto;align-items:flex-start}.mobile-menu{display:block}.main-nav{display:none;width:100%;flex-direction:column;align-items:flex-start;gap:8px}.nav-open .main-nav{display:flex}.logo img{height:66px}.hero{padding:55px 22px}.azyl-slider-section,.azyl-blog-slider-section{padding-left:20px;padding-right:20px}.azyl-slide-card,.azyl-blog-card{flex-basis:86%!important;min-width:280px}.azyl-prev{left:0}.azyl-next{right:0}.footer-grid,.blog-grid-public,.public-blocks{grid-template-columns:1fr}}


/* === DODATKOWE ANIMACJE === */
@keyframes softFadeUp{
    from{opacity:0;transform:translateY(34px)}
    to{opacity:1;transform:translateY(0)}
}

@keyframes softFadeLeft{
    from{opacity:0;transform:translateX(-40px)}
    to{opacity:1;transform:translateX(0)}
}

@keyframes softFadeRight{
    from{opacity:0;transform:translateX(40px)}
    to{opacity:1;transform:translateX(0)}
}

@keyframes gentleFloat{
    0%,100%{transform:translateY(0)}
    50%{transform:translateY(-10px)}
}

@keyframes buttonPulse{
    0%,100%{box-shadow:0 12px 26px rgba(63,143,61,.22)}
    50%{box-shadow:0 18px 42px rgba(63,143,61,.36)}
}

@keyframes greenGlow{
    0%,100%{filter:drop-shadow(0 0 0 rgba(63,143,61,0))}
    50%{filter:drop-shadow(0 10px 20px rgba(63,143,61,.25))}
}

.hero-text{
    animation:softFadeLeft .9s ease both;
}

.hero-card{
    animation:softFadeRight .9s ease both;
}

.hero-card img{
    animation:gentleFloat 5.5s ease-in-out infinite;
}

.section-head{
    animation:softFadeUp .8s ease both;
}

.azyl-slide-card,
.azyl-blog-card,
.blog-tile,
.public-blocks article{
    animation:softFadeUp .7s ease both;
}

.azyl-slide-card:nth-child(2),
.azyl-blog-card:nth-child(2),
.blog-tile:nth-child(2){
    animation-delay:.08s;
}

.azyl-slide-card:nth-child(3),
.azyl-blog-card:nth-child(3),
.blog-tile:nth-child(3){
    animation-delay:.16s;
}

.azyl-slide-card:hover,
.azyl-blog-card:hover,
.blog-tile:hover,
.public-blocks article:hover{
    transform:translateY(-10px) scale(1.015);
}

.btn.primary{
    animation:buttonPulse 3s ease-in-out infinite;
}

.btn:hover{
    transform:translateY(-3px);
}

.logo img{
    animation:greenGlow 4s ease-in-out infinite;
}

.main-nav a{
    overflow:visible;
}

.main-nav a::after{
    height:4px;
    border-radius:999px;
}

.azyl-slider-arrow{
    animation:buttonPulse 3.4s ease-in-out infinite;
}

.public-page-hero div{
    animation:softFadeLeft .85s ease both;
}

.public-page-hero img{
    animation:softFadeRight .85s ease both, gentleFloat 5.5s ease-in-out infinite;
}

.article-page{
    animation:softFadeUp .85s ease both;
}

.contact-box{
    animation:softFadeUp .85s ease both;
}

@media (prefers-reduced-motion: reduce){
    *,
    *::before,
    *::after{
        animation:none!important;
        transition:none!important;
    }
}


/* Page transition loader */
.page-loader{
    position:fixed;
    inset:0;
    background:#ffffff;
    display:flex;
    align-items:center;
    justify-content:center;
    z-index:99999;
    opacity:0;
    visibility:hidden;
    transition:all .35s ease;
}
.page-loader.active{
    opacity:1;
    visibility:visible;
}
.page-loader img{
    width:260px;
    max-width:70vw;
    animation:loaderPulse 1.2s ease-in-out infinite;
}
@keyframes loaderPulse{
    0%,100%{transform:scale(1);opacity:1}
    50%{transform:scale(1.06);opacity:.88}
}
body.page-loading{
    overflow:hidden;
}

/* CHECKED CLEAN OVERRIDES */
.page-loader{position:fixed;inset:0;background:#fff;display:flex;align-items:center;justify-content:center;z-index:99999;opacity:0;visibility:hidden;transition:all .35s ease}
.page-loader.active{opacity:1;visibility:visible}
.page-loader img{width:260px;max-width:70vw;animation:loaderPulse 1.2s ease-in-out infinite}
@keyframes loaderPulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.06);opacity:.88}}
.main-nav a::before{display:none!important;content:none!important}
.site-header{transition:all .35s ease;transform-origin:top center}
.site-header:hover{transform:scale(1.03)}
.logo img{transition:all .35s ease}
.site-header:hover .logo img{transform:scale(1.35)}


/* === ANIMACJA "CZYTAJ ARTYKUŁ" === */
.azyl-blog-body strong,
.blog-tile strong{
    position:relative;
    display:inline-flex;
    align-items:center;
    gap:10px;
    color:#2f8f46;
    font-weight:900;
    text-decoration:none;
    padding:7px 46px 7px 0;
    transition:color .25s ease, transform .25s ease, text-shadow .25s ease;
}

.azyl-blog-body strong::before,
.blog-tile strong::before{
    content:"";
    position:absolute;
    left:0;
    bottom:0;
    width:100%;
    height:3px;
    border-radius:999px;
    background:linear-gradient(90deg,#2f8f46,#7fdd68,#2f8f46);
    transform:scaleX(.25);
    transform-origin:left;
    opacity:.55;
    transition:transform .35s ease, opacity .35s ease;
}

.azyl-blog-body strong::after,
.blog-tile strong::after{
    content:"→";
    position:absolute;
    right:0;
    top:50%;
    width:34px;
    height:34px;
    border-radius:50%;
    background:rgba(63,143,61,.12);
    display:flex;
    align-items:center;
    justify-content:center;
    transform:translateY(-50%);
    box-shadow:0 0 0 rgba(63,143,61,0);
    transition:transform .35s ease, box-shadow .35s ease, background .35s ease;
}

.azyl-blog-card:hover .azyl-blog-body strong,
.blog-tile:hover strong{
    transform:translateX(6px);
    color:#1f7a36;
    text-shadow:0 8px 24px rgba(63,143,61,.18);
}

.azyl-blog-card:hover .azyl-blog-body strong::before,
.blog-tile:hover strong::before{
    transform:scaleX(1);
    opacity:1;
}

.azyl-blog-card:hover .azyl-blog-body strong::after,
.blog-tile:hover strong::after{
    transform:translateY(-50%) translateX(10px);
    background:rgba(63,143,61,.18);
    box-shadow:0 0 28px rgba(63,143,61,.35);
    animation:readMoreArrow .8s ease-in-out infinite;
}

.azyl-blog-card:hover .azyl-blog-body,
.blog-tile:hover div{
    position:relative;
}

.azyl-blog-card:hover .azyl-blog-body::after,
.blog-tile:hover div::after{
    content:"";
    position:absolute;
    left:calc(100% - 74px);
    bottom:30px;
    width:46px;
    height:12px;
    pointer-events:none;
    background:
        radial-gradient(circle,#78d96b 0 2px,transparent 3px) 0 50%/12px 12px repeat-x;
    opacity:.8;
    animation:readMoreDots .9s linear infinite;
}

@keyframes readMoreArrow{
    0%,100%{transform:translateY(-50%) translateX(10px)}
    50%{transform:translateY(-50%) translateX(16px)}
}

@keyframes readMoreDots{
    from{transform:translateX(0);opacity:.85}
    to{transform:translateX(18px);opacity:.25}
}


/* === LOADER PRZEJŚCIA MIĘDZY PODSTRONAMI === */
.azyl-page-transition{
    position:fixed;
    inset:0;
    z-index:999999;
    background:rgba(255,255,255,.96);
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
    display:flex;
    align-items:center;
    justify-content:center;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:opacity .32s ease, visibility .32s ease;
}

.azyl-page-transition.active{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
}

.azyl-loader-box{
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:22px;
    transform:translateY(14px) scale(.96);
    opacity:0;
    transition:transform .42s cubic-bezier(.2,1,.3,1), opacity .42s ease;
}

.azyl-page-transition.active .azyl-loader-box{
    transform:translateY(0) scale(1);
    opacity:1;
}

.azyl-loader-box img{
    width:330px;
    max-width:72vw;
    height:auto;
    filter:drop-shadow(0 20px 38px rgba(63,143,61,.18));
    animation:azylLogoPulse 1.25s ease-in-out infinite;
}

.azyl-loader-box span{
    width:220px;
    height:4px;
    border-radius:999px;
    overflow:hidden;
    background:#dceee0;
    position:relative;
}

.azyl-loader-box span::after{
    content:"";
    position:absolute;
    inset:0;
    width:42%;
    border-radius:999px;
    background:linear-gradient(90deg,#2f8f46,#8edb72,#2f8f46);
    animation:azylLoaderLine 1.05s ease-in-out infinite;
}

body.azyl-is-changing{
    overflow:hidden;
}

@keyframes azylLogoPulse{
    0%,100%{
        transform:scale(1);
        opacity:1;
    }
    50%{
        transform:scale(1.045);
        opacity:.88;
    }
}

@keyframes azylLoaderLine{
    0%{transform:translateX(-110%)}
    100%{transform:translateX(260%)}
}

/* removed large top logo */
.hero-logo,.top-big-logo,.top-logo-banner{display:none !important;}

/* === WYMUSZONE ANIMACJE AZYL === */
.azyl-page-transition{
    position:fixed; inset:0; z-index:999999;
    background:rgba(255,255,255,.97);
    backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px);
    display:flex; align-items:center; justify-content:center;
    opacity:0; visibility:hidden; pointer-events:none;
    transition:opacity .35s ease, visibility .35s ease;
}
.azyl-page-transition.active{opacity:1; visibility:visible; pointer-events:auto;}
.azyl-loader-box{
    display:flex; flex-direction:column; align-items:center; gap:22px;
    transform:translateY(16px) scale(.95); opacity:0;
    transition:transform .42s cubic-bezier(.2,1,.3,1), opacity .42s ease;
}
.azyl-page-transition.active .azyl-loader-box{transform:translateY(0) scale(1); opacity:1;}
.azyl-loader-box img{
    width:320px; max-width:72vw; height:auto;
    filter:drop-shadow(0 20px 38px rgba(63,143,61,.2));
    animation:azylLogoPulse 1.15s ease-in-out infinite;
}
.azyl-loader-box span{
    width:220px; height:4px; border-radius:999px; overflow:hidden;
    background:#dceee0; position:relative;
}
.azyl-loader-box span::after{
    content:""; position:absolute; inset:0; width:44%; border-radius:999px;
    background:linear-gradient(90deg,#2f8f46,#8edb72,#2f8f46);
    animation:azylLoaderLine 1s ease-in-out infinite;
}
body.azyl-is-changing{overflow:hidden}
@keyframes azylLogoPulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.055);opacity:.86}}
@keyframes azylLoaderLine{0%{transform:translateX(-120%)}100%{transform:translateX(260%)}}

@keyframes azylFadeUp{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}
@keyframes azylFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}
.hero-text,.section-head,.article-page,.contact-box{animation:azylFadeUp .8s ease both;}
.azyl-slide-card,.azyl-blog-card,.blog-tile,.public-blocks article{animation:azylFadeUp .75s ease both;}
.hero-card img,.public-page-hero img{animation:azylFloat 5s ease-in-out infinite;}
.azyl-slide-card:hover,.azyl-blog-card:hover,.blog-tile:hover,.public-blocks article:hover{
    transform:translateY(-10px) scale(1.015) !important;
    box-shadow:0 30px 70px rgba(20,70,45,.16) !important;
}

.azyl-blog-body strong,.blog-tile strong{
    position:relative; display:inline-flex; align-items:center; gap:10px;
    color:#2f8f46; font-weight:900; text-decoration:none;
    padding:7px 46px 7px 0;
    transition:color .25s ease, transform .25s ease, text-shadow .25s ease;
}
.azyl-blog-body strong::before,.blog-tile strong::before{
    content:""; position:absolute; left:0; bottom:0; width:100%; height:3px;
    border-radius:999px; background:linear-gradient(90deg,#2f8f46,#7fdd68,#2f8f46);
    transform:scaleX(.25); transform-origin:left; opacity:.55;
    transition:transform .35s ease, opacity .35s ease;
}
.azyl-blog-body strong::after,.blog-tile strong::after{
    content:"→"; position:absolute; right:0; top:50%; width:34px; height:34px;
    border-radius:50%; background:rgba(63,143,61,.12);
    display:flex; align-items:center; justify-content:center;
    transform:translateY(-50%);
    transition:transform .35s ease, box-shadow .35s ease, background .35s ease;
}
.azyl-blog-card:hover .azyl-blog-body strong,.blog-tile:hover strong{
    transform:translateX(6px); color:#1f7a36;
    text-shadow:0 8px 24px rgba(63,143,61,.18);
}
.azyl-blog-card:hover .azyl-blog-body strong::before,.blog-tile:hover strong::before{transform:scaleX(1); opacity:1;}
.azyl-blog-card:hover .azyl-blog-body strong::after,.blog-tile:hover strong::after{
    transform:translateY(-50%) translateX(10px);
    background:rgba(63,143,61,.18);
    box-shadow:0 0 28px rgba(63,143,61,.35);
    animation:readMoreArrow .8s ease-in-out infinite;
}
@keyframes readMoreArrow{0%,100%{transform:translateY(-50%) translateX(10px)}50%{transform:translateY(-50%) translateX(16px)}}
.main-nav a::before{display:none!important;content:none!important}


/* Stopka w odcieniu zieleni jak logo */
.site-footer,
footer{
    background: linear-gradient(135deg, #3f9a36 0%, #2f8f46 45%, #1f6f2e 100%) !important;
    color: #ffffff !important;
}

.site-footer a,
footer a{
    color: #ffffff !important;
}

.site-footer h3,
.site-footer h4,
.site-footer .footer-title,
footer h3,
footer h4{
    color: #ffffff !important;
}


/* === WYMUSZONA JASNA ZIELEŃ STOPKI JAK LOGO === */
.site-footer.footer-logo-green,
footer.site-footer.footer-logo-green,
.site-footer,
footer{
    background: #3f8f3d !important;
    background-color: #3f8f3d !important;
    background-image: linear-gradient(135deg, #4fa83f 0%, #3f8f3d 48%, #2f7f2f 100%) !important;
}

.site-footer.footer-logo-green *,
footer.site-footer.footer-logo-green *,
.site-footer *,
footer *{
    color: #ffffff !important;
}

.site-footer.footer-logo-green h3,
.site-footer.footer-logo-green h4,
footer.site-footer.footer-logo-green h3,
footer.site-footer.footer-logo-green h4{
    color: #dfffda !important;
}

.site-footer.footer-logo-green a,
footer.site-footer.footer-logo-green a{
    color: #ffffff !important;
}

.site-footer.footer-logo-green .footer-bottom,
footer.site-footer.footer-logo-green .footer-bottom{
    border-top-color: rgba(255,255,255,.35) !important;
}

.site-footer.footer-logo-green .footer-bottom a,
footer.site-footer.footer-logo-green .footer-bottom a{
    color: #ffffff !important;
}

/* Wpisy przypisane do podstron */
.page-posts-section{
    padding:70px 7vw 90px;
    background:#fbfdfb;
}
.page-posts-grid{
    padding-top:20px;
}

/* Menu nawigacji - normalna czcionka bez pogrubienia */
.site-header nav a,
.main-nav a,
nav a{
    font-weight: 400 !important;
    font-family: inherit !important;
    letter-spacing: 0 !important;
}

/* Elegancka, lżejsza czcionka dla głównych nagłówków */
.hero h1,
.public-page-hero h1,
.page-hero h1,
.article-page h1,
.section-head h2,
.hero-admin h1,
.preview h1{
    font-family: Arial, Helvetica, sans-serif !important;
    font-weight: 400 !important;
    letter-spacing: -0.035em !important;
    line-height: 1.12 !important;
}

.hero h1{
    font-size: clamp(42px, 5vw, 72px) !important;
}

.public-page-hero h1,
.page-hero h1,
.article-page h1{
    font-size: clamp(34px, 4.2vw, 56px) !important;
}

.section-head h2{
    font-size: clamp(30px, 3.4vw, 48px) !important;
    font-weight: 400 !important;
}

/* Mniejsze nagłówki na kartach też lżejsze, ale nadal czytelne */
.azyl-slide-body h3,
.azyl-blog-body h3,
.blog-tile h2,
.public-blocks h2{
    font-family: Arial, Helvetica, sans-serif !important;
    font-weight: 500 !important;
    letter-spacing: -0.02em !important;
    line-height: 1.22 !important;
}

/* Zielone dopiski zostają mocniejsze dla kontrastu */
.eyebrow,
.section-head span,
.public-page-hero span,
.page-hero span{
    font-weight: 700 !important;
    letter-spacing: .16em !important;
}

/* Lżejsza czcionka menu + spójny wygląd na wszystkich urządzeniach */
.site-header nav a,
.main-nav a,
nav a,
header nav a{
    font-family: Arial, Helvetica, sans-serif !important;
    font-weight: 400 !important;
    letter-spacing: -0.01em !important;
    line-height: 1.2 !important;
    -webkit-font-smoothing: antialiased !important;
    text-rendering: optimizeLegibility !important;
}

@media (max-width: 1024px){
    .site-header nav a,
    .main-nav a,
    nav a{
        font-size: 16px !important;
        font-weight: 400 !important;
    }
}

@media (max-width: 768px){
    .site-header nav a,
    .main-nav a,
    nav a{
        font-size: 15px !important;
        font-weight: 400 !important;
    }
}

/* Blog i wiedza - taka sama forma nagłówka jak Najważniejsze informacje */
.blog-section-head,
.azyl-blog-slider-section .section-head{
    text-align:center !important;
    max-width:920px !important;
    margin:0 auto 42px !important;
}
.blog-section-head span,
.azyl-blog-slider-section .section-head span{
    display:block !important;
    color:#3f8f3d !important;
    font-weight:700 !important;
    text-transform:uppercase !important;
    letter-spacing:.16em !important;
    margin-bottom:12px !important;
}
.blog-section-head h2,
.azyl-blog-slider-section .section-head h2{
    color:#063b2d !important;
    font-weight:400 !important;
    line-height:1.12 !important;
    margin:0 0 13px !important;
}
.blog-section-head p,
.azyl-blog-slider-section .section-head p{
    color:#4e665c !important;
    line-height:1.65 !important;
    margin:0 auto !important;
}

/* Blog na stronie głównej - zdjęcie pobierane z admina */
.azyl-blog-track{
    display:flex !important;
    flex-wrap:nowrap !important;
    gap:48px !important;
    overflow-x:auto !important;
    scroll-behavior:smooth !important;
    scrollbar-width:none !important;
    padding:14px 8px 32px !important;
}
.azyl-blog-track::-webkit-scrollbar{display:none !important;}
.azyl-blog-card{
    flex:0 0 calc((100% - 96px)/3) !important;
    min-width:330px !important;
    display:block !important;
    background:#fff !important;
    border-radius:18px !important;
    overflow:hidden !important;
}
.azyl-blog-card a{
    display:block !important;
    height:100% !important;
    text-decoration:none !important;
    color:inherit !important;
}
.azyl-blog-img{
    width:100% !important;
    height:240px !important;
    min-height:240px !important;
    background:#eaf4ed !important;
    overflow:hidden !important;
}
.azyl-blog-img img{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    display:block !important;
}
.azyl-blog-body{padding:30px !important;}
@media(max-width:1000px){.azyl-blog-card{flex-basis:calc((100% - 48px)/2) !important;}}
@media(max-width:760px){.azyl-blog-card{flex-basis:86% !important;min-width:280px !important;}}

/* === Nagłówek w stylu leleka.pl === */
.site-header.leleka-style-header,
.site-header{
    min-height:118px !important;
    height:auto !important;
    padding:18px 7vw !important;
    background:#ffffff !important;
    box-shadow:0 8px 28px rgba(0,0,0,.045) !important;
    border-bottom:1px solid rgba(0,0,0,.045) !important;
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:48px !important;
    position:sticky !important;
    top:0 !important;
    z-index:999 !important;
    transform:none !important;
}

.site-header.leleka-style-header:hover,
.site-header:hover{
    transform:none !important;
}

.site-header .logo{
    display:flex !important;
    align-items:center !important;
    flex:0 0 auto !important;
    text-decoration:none !important;
}

.site-header .logo img{
    height:86px !important;
    width:auto !important;
    max-width:260px !important;
    object-fit:contain !important;
    display:block !important;
    transform:none !important;
    animation:none !important;
    filter:none !important;
}

.site-header:hover .logo img{
    transform:none !important;
}

.main-nav{
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:34px !important;
    flex:1 1 auto !important;
    flex-wrap:nowrap !important;
}

.main-nav a,
.site-header nav a{
    position:relative !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    padding:20px 0 18px !important;
    color:#0b1e19 !important;
    font-family:Arial, Helvetica, sans-serif !important;
    font-size:18px !important;
    line-height:1.1 !important;
    font-weight:500 !important;
    letter-spacing:.015em !important;
    text-transform:uppercase !important;
    text-decoration:none !important;
    white-space:nowrap !important;
    transition:color .25s ease !important;
}

.main-nav a:hover,
.main-nav a.active,
.site-header nav a:hover,
.site-header nav a.active{
    color:#3f8f3d !important;
}

.main-nav a::after,
.site-header nav a::after{
    content:"" !important;
    position:absolute !important;
    left:0 !important;
    right:auto !important;
    bottom:7px !important;
    width:0 !important;
    height:4px !important;
    border-radius:999px !important;
    background:#3f8f3d !important;
    transition:width .25s ease !important;
}

.main-nav a:hover::after,
.main-nav a.active::after,
.site-header nav a:hover::after,
.site-header nav a.active::after{
    width:100% !important;
}

.main-nav a::before,
.site-header nav a::before{
    display:none !important;
    content:none !important;
}

/* Tablet */
@media(max-width:1200px){
    .site-header.leleka-style-header,
    .site-header{
        padding:16px 5vw !important;
        gap:30px !important;
    }
    .main-nav{
        gap:22px !important;
    }
    .main-nav a,
    .site-header nav a{
        font-size:16px !important;
    }
    .site-header .logo img{
        height:74px !important;
        max-width:220px !important;
    }
}

/* Mobile */
@media(max-width:860px){
    .site-header.leleka-style-header,
    .site-header{
        min-height:86px !important;
        padding:14px 22px !important;
        align-items:center !important;
    }
    .site-header .logo img{
        height:60px !important;
        max-width:190px !important;
    }
    .mobile-menu{
        display:inline-flex !important;
        align-items:center !important;
        justify-content:center !important;
        width:46px !important;
        height:46px !important;
        border-radius:12px !important;
        border:1px solid #dfece4 !important;
        background:#ffffff !important;
        color:#2f8f46 !important;
        font-size:28px !important;
        line-height:1 !important;
        box-shadow:none !important;
    }
    .main-nav{
        display:none !important;
        position:absolute !important;
        top:100% !important;
        left:0 !important;
        right:0 !important;
        background:#ffffff !important;
        padding:18px 22px 24px !important;
        border-top:1px solid rgba(0,0,0,.06) !important;
        box-shadow:0 18px 35px rgba(0,0,0,.08) !important;
        flex-direction:column !important;
        align-items:flex-start !important;
        gap:10px !important;
    }
    body.nav-open .main-nav{
        display:flex !important;
    }
    .main-nav a,
    .site-header nav a{
        font-size:17px !important;
        padding:12px 0 !important;
    }
    .main-nav a::after,
    .site-header nav a::after{
        bottom:4px !important;
        height:3px !important;
    }
}

/* Powiększenie headera przy dojechaniu do samej góry */
.site-header{
    transition: all .35s ease !important;
}

.site-header.at-top{
    min-height: 158px !important;
    padding-top: 28px !important;
    padding-bottom: 28px !important;
}

.site-header.at-top .logo img{
    height: 98px !important;
    max-width: 290px !important;
    transition: all .35s ease !important;
}

.site-header.at-top .main-nav a,
.site-header.at-top nav a{
    font-size: 19px !important;
    padding-top: 24px !important;
    padding-bottom: 22px !important;
}

/* Backup: powiększony header na górze */
.site-header.header-top-large{
    min-height:158px !important;
    padding-top:30px !important;
    padding-bottom:30px !important;
}
.site-header.header-top-large .logo img{
    height:108px !important;
    max-width:320px !important;
}
.site-header.header-top-large .main-nav a{
    font-size:20px !important;
}

/* Jeszcze większy header + mniejsze odstępy między linkami */
.site-header.header-top-large{
    min-height: 182px !important;
    padding-top: 38px !important;
    padding-bottom: 38px !important;
}

.site-header.header-top-large .logo img{
    height: 124px !important;
    max-width: 360px !important;
}

.site-header.header-top-large .main-nav,
.site-header.header-top-large nav{
    gap: 18px !important;
}

.site-header .main-nav,
.site-header nav{
    gap: 18px !important;
}

.site-header.header-top-large .main-nav a,
.site-header.header-top-large nav a{
    font-size: 21px !important;
    padding-top: 24px !important;
    padding-bottom: 22px !important;
}

.site-header .main-nav a,
.site-header nav a{
    padding-left: 2px !important;
    padding-right: 2px !important;
}

@media(max-width:860px){
    .site-header.header-top-large{
        min-height: 126px !important;
        padding-top: 20px !important;
        padding-bottom: 20px !important;
    }

    .site-header.header-top-large .logo img{
        height: 82px !important;
        max-width: 240px !important;
    }
}

/* Mniejsze menu + mniejsze odstępy */
.site-header .main-nav,
.site-header nav{
    gap: 10px !important;
}

.site-header .main-nav a,
.site-header nav a{
    font-size: 15px !important;
    padding-top: 14px !important;
    padding-bottom: 14px !important;
    padding-left: 1px !important;
    padding-right: 1px !important;
    letter-spacing: 0 !important;
    font-weight: 400 !important;
}

.site-header.header-top-large .main-nav,
.site-header.header-top-large nav{
    gap: 12px !important;
}

.site-header.header-top-large .main-nav a,
.site-header.header-top-large nav a{
    font-size: 16px !important;
    padding-top: 16px !important;
    padding-bottom: 16px !important;
}

/* Header jeszcze większy o około 10mm */
.site-header.header-top-large{
    min-height: 220px !important;
    padding-top: 48px !important;
    padding-bottom: 48px !important;
}

.site-header.header-top-large .logo img{
    height: 145px !important;
    max-width: 420px !important;
}

.site-header.header-top-large .main-nav a,
.site-header.header-top-large nav a{
    font-size: 18px !important;
    padding-top: 22px !important;
    padding-bottom: 22px !important;
}

@media(max-width:860px){
    .site-header.header-top-large{
        min-height: 145px !important;
        padding-top: 24px !important;
        padding-bottom: 24px !important;
    }

    .site-header.header-top-large .logo img{
        height: 92px !important;
        max-width: 260px !important;
    }
}

/* Jeszcze większe samo logo */
.site-header .logo img{
    height: 110px !important;
    max-width: 360px !important;
}

.site-header.header-top-large .logo img{
    height: 170px !important;
    max-width: 480px !important;
}

@media(max-width:860px){
    .site-header .logo img{
        height: 72px !important;
        max-width: 220px !important;
    }

    .site-header.header-top-large .logo img{
        height: 110px !important;
        max-width: 300px !important;
    }
}

/* Stabilny header bez wibracji/skakania */
.site-header,
.site-header *,
.main-nav,
.main-nav a,
.site-header nav a{
    transform: none !important;
    animation: none !important;
    transition: color .25s ease, border-color .25s ease, background .25s ease !important;
}

.site-header{
    will-change: auto !important;
    backface-visibility: hidden !important;
    -webkit-font-smoothing: antialiased !important;
}

.site-header:hover{
    transform: none !important;
}

.site-header .logo img:hover{
    transform: none !important;
}

.main-nav a:hover,
.site-header nav a:hover{
    transform: none !important;
    margin: 0 !important;
}

.site-header.header-top-large{
    transition: padding .25s ease, min-height .25s ease !important;
}

/* FINAL: stabilny header bez wibracji */
.site-header,
.site-header.leleka-style-header{
    min-height: 150px !important;
    height: 150px !important;
    padding-top: 22px !important;
    padding-bottom: 22px !important;
    transform: none !important;
    transition: none !important;
    animation: none !important;
    will-change: auto !important;
    overflow: visible !important;
}

.site-header:hover,
.site-header.leleka-style-header:hover{
    transform: none !important;
    transition: none !important;
}

.site-header .logo img,
.site-header:hover .logo img,
.site-header.header-top-large .logo img{
    height: 110px !important;
    max-width: 360px !important;
    transform: none !important;
    transition: none !important;
    animation: none !important;
    filter: none !important;
}

.site-header.header-top-large{
    min-height: 150px !important;
    height: 150px !important;
    padding-top: 22px !important;
    padding-bottom: 22px !important;
}

.main-nav,
.site-header nav{
    gap: 18px !important;
    transform: none !important;
    transition: none !important;
}

.main-nav a,
.site-header nav a,
.site-header.header-top-large .main-nav a,
.site-header.header-top-large nav a{
    font-size: 15px !important;
    font-weight: 400 !important;
    padding-top: 14px !important;
    padding-bottom: 14px !important;
    transform: none !important;
    transition: color .2s ease !important;
    animation: none !important;
}

.main-nav a:hover,
.site-header nav a:hover{
    transform: none !important;
}

@media(max-width:860px){
    .site-header,
    .site-header.leleka-style-header,
    .site-header.header-top-large{
        min-height: 92px !important;
        height: 92px !important;
        padding-top: 12px !important;
        padding-bottom: 12px !important;
    }

    .site-header .logo img,
    .site-header:hover .logo img,
    .site-header.header-top-large .logo img{
        height: 68px !important;
        max-width: 220px !important;
    }
}

/* Header: płynne powiększanie na samej górze bez wibracji */
.site-header,
.site-header.leleka-style-header{
    height: 132px !important;
    min-height: 132px !important;
    padding-top: 18px !important;
    padding-bottom: 18px !important;
    transition: height .28s ease, min-height .28s ease, padding .28s ease !important;
    transform: none !important;
    animation: none !important;
    will-change: height, padding !important;
}

.site-header.header-is-top,
.site-header.leleka-style-header.header-is-top{
    height: 172px !important;
    min-height: 172px !important;
    padding-top: 34px !important;
    padding-bottom: 34px !important;
}

.site-header .logo img{
    height: 92px !important;
    max-width: 310px !important;
    transition: height .28s ease, max-width .28s ease !important;
    transform: none !important;
    animation: none !important;
}

.site-header.header-is-top .logo img{
    height: 122px !important;
    max-width: 390px !important;
}

.main-nav,
.site-header nav{
    gap: 18px !important;
    transition: none !important;
}

.main-nav a,
.site-header nav a{
    font-size: 15px !important;
    padding-top: 14px !important;
    padding-bottom: 14px !important;
    transform: none !important;
    animation: none !important;
    transition: color .2s ease !important;
}

.site-header.header-is-top .main-nav a,
.site-header.header-is-top nav a{
    font-size: 15px !important;
    padding-top: 14px !important;
    padding-bottom: 14px !important;
}

/* wyłącz stare klasy, żeby nie konfliktowały */
.site-header.header-top-large{
    height: inherit !important;
}

@media(max-width:860px){
    .site-header,
    .site-header.leleka-style-header{
        height: 88px !important;
        min-height: 88px !important;
        padding-top: 10px !important;
        padding-bottom: 10px !important;
    }

    .site-header.header-is-top,
    .site-header.leleka-style-header.header-is-top{
        height: 112px !important;
        min-height: 112px !important;
        padding-top: 18px !important;
        padding-bottom: 18px !important;
    }

    .site-header .logo img{
        height: 64px !important;
        max-width: 210px !important;
    }

    .site-header.header-is-top .logo img{
        height: 82px !important;
        max-width: 250px !important;
    }
}


/* FINAL HEADER: większe logo + lekko większe odstępy */
.site-header,
.site-header.leleka-style-header{
    background:#fff !important;
    height:130px !important;
    min-height:130px !important;
    padding-top:22px !important;
    padding-bottom:22px !important;
    transition:height .28s ease, min-height .28s ease, padding .28s ease !important;
    transform:none !important;
    animation:none !important;
}

.site-header.header-is-top,
.site-header.leleka-style-header.header-is-top{
    height:168px !important;
    min-height:168px !important;
    padding-top:34px !important;
    padding-bottom:34px !important;
}

.site-header .logo img,
.site-header:hover .logo img{
    height:110px !important;
    max-width:380px !important;
    width:auto !important;
    object-fit:contain !important;
    display:block !important;
    transform:none !important;
    animation:none !important;
    filter:none !important;
    transition:height .28s ease, max-width .28s ease !important;
}

.site-header.header-is-top .logo img,
.site-header.header-is-top:hover .logo img{
    height:140px !important;
    max-width:460px !important;
}

.main-nav,
.site-header nav{
    display:flex !important;
    align-items:center !important;
    gap:28px !important;
    transform:none !important;
    animation:none !important;
}

.main-nav a,
.site-header nav a,
.site-header.header-is-top .main-nav a,
.site-header.header-is-top nav a{
    font-family:Arial, Helvetica, sans-serif !important;
    font-size:16px !important;
    font-weight:400 !important;
    letter-spacing:.2px !important;
    text-transform:uppercase !important;
    color:#0b2f23 !important;
    text-decoration:none !important;
    padding:10px 0 !important;
    transform:none !important;
    animation:none !important;
    transition:color .2s ease !important;
}

.main-nav a:hover,
.site-header nav a:hover,
.main-nav a.active,
.site-header nav a.active{
    color:#3f8f3d !important;
}

.main-nav a::after,
.site-header nav a::after{
    height:4px !important;
    bottom:0 !important;
    background:#3f8f3d !important;
    border-radius:999px !important;
}

@media(max-width:860px){
    .site-header,
    .site-header.leleka-style-header{
        height:90px !important;
        min-height:90px !important;
        padding-top:12px !important;
        padding-bottom:12px !important;
    }

    .site-header.header-is-top,
    .site-header.leleka-style-header.header-is-top{
        height:112px !important;
        min-height:112px !important;
        padding-top:18px !important;
        padding-bottom:18px !important;
    }

    .site-header .logo img,
    .site-header:hover .logo img{
        height:72px !important;
        max-width:240px !important;
    }

    .site-header.header-is-top .logo img,
    .site-header.header-is-top:hover .logo img{
        height:90px !important;
        max-width:280px !important;
    }

    .main-nav,
    .site-header nav{
        gap:16px !important;
    }

    .main-nav a,
    .site-header nav a{
        font-size:15px !important;
    }
}


/* FINAL FOOTER: odcień zieleni jak logo + odwrócone logo */
.site-footer,
footer.site-footer,
footer{
    background:#3f8f3d !important;
    background-image:linear-gradient(135deg,#4aa33f 0%,#3f8f3d 48%,#2f7f32 100%) !important;
    color:#ffffff !important;
}

.site-footer *,
footer.site-footer *,
footer *{
    color:#ffffff !important;
}

.site-footer a,
footer a{
    color:#ffffff !important;
    text-decoration:none !important;
}

.site-footer h3,
footer h3{
    color:#ffffff !important;
    letter-spacing:.16em !important;
}

.footer-logo,
.footer-logo-inverted{
    background:transparent !important;
    box-shadow:none !important;
    border:0 !important;
    max-width:360px !important;
    height:auto !important;
    object-fit:contain !important;
}

.site-footer img.footer-logo,
footer img.footer-logo{
    background:transparent !important;
}

.footer-bottom a::before,
.footer-bottom a::after{
    content:none !important;
}

.footer-bottom{
    text-align:center !important;
}


/* FINAL: stabilny header — menu nie drga, powiększa się tylko logo */
.site-header,
.site-header.leleka-style-header{
    background:#ffffff !important;
    height:132px !important;
    min-height:132px !important;
    padding-top:20px !important;
    padding-bottom:20px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    transform:none !important;
    animation:none !important;
    transition:none !important;
    will-change:auto !important;
    overflow:visible !important;
}

/* nie powiększamy całego paska */
.site-header.header-is-top,
.site-header.leleka-style-header.header-is-top{
    height:132px !important;
    min-height:132px !important;
    padding-top:20px !important;
    padding-bottom:20px !important;
}

/* logo — tylko ono ma animację */
.site-header .logo img,
.site-header:hover .logo img{
    height:96px !important;
    max-width:330px !important;
    width:auto !important;
    object-fit:contain !important;
    display:block !important;
    transform:none !important;
    animation:none !important;
    filter:none !important;
    backface-visibility:hidden !important;
    transition:height .28s ease, max-width .28s ease !important;
}

/* logo większe przy samej górze */
.site-header.header-is-top .logo img,
.site-header.header-is-top:hover .logo img{
    height:132px !important;
    max-width:430px !important;
}

/* menu stałe — bez zmiany fontu, paddingu, gapu */
.main-nav,
.site-header nav{
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:24px !important;
    transform:none !important;
    animation:none !important;
    transition:none !important;
    will-change:auto !important;
}

.main-nav a,
.site-header nav a,
.site-header.header-is-top .main-nav a,
.site-header.header-is-top nav a{
    font-family:Arial, Helvetica, sans-serif !important;
    font-size:16px !important;
    font-weight:400 !important;
    letter-spacing:.2px !important;
    text-transform:uppercase !important;
    line-height:1.2 !important;
    color:#0b2f23 !important;
    text-decoration:none !important;
    padding:10px 0 !important;
    margin:0 !important;
    transform:none !important;
    animation:none !important;
    transition:color .2s ease !important;
    white-space:nowrap !important;
}

.main-nav a:hover,
.site-header nav a:hover,
.main-nav a.active,
.site-header nav a.active{
    color:#3f8f3d !important;
    transform:none !important;
}

/* podkreślenie bez zmiany układu */
.main-nav a::after,
.site-header nav a::after{
    content:"" !important;
    position:absolute !important;
    left:0 !important;
    bottom:0 !important;
    width:0 !important;
    height:4px !important;
    border-radius:999px !important;
    background:#3f8f3d !important;
    transition:width .22s ease !important;
}

.main-nav a.active::after,
.site-header nav a.active::after,
.main-nav a:hover::after,
.site-header nav a:hover::after{
    width:100% !important;
}

.main-nav a::before,
.site-header nav a::before{
    display:none !important;
    content:none !important;
}

/* mobile */
@media(max-width:860px){
    .site-header,
    .site-header.leleka-style-header,
    .site-header.header-is-top,
    .site-header.leleka-style-header.header-is-top{
        height:92px !important;
        min-height:92px !important;
        padding-top:12px !important;
        padding-bottom:12px !important;
    }

    .site-header .logo img,
    .site-header:hover .logo img{
        height:68px !important;
        max-width:220px !important;
    }

    .site-header.header-is-top .logo img,
    .site-header.header-is-top:hover .logo img{
        height:82px !important;
        max-width:260px !important;
    }

    .main-nav,
    .site-header nav{
        gap:14px !important;
    }

    .main-nav a,
    .site-header nav a{
        font-size:15px !important;
        padding:10px 0 !important;
    }
}


/* BACKUP LOGO ONLY EXPAND FINAL */
.site-header.logo-is-large .logo img{
    transform:scale(1.32) !important;
    transform-origin:left center !important;
}
.site-header .logo img{
    transition:transform .32s ease !important;
}
.site-header.logo-is-large,
.site-header.logo-is-large .main-nav,
.site-header.logo-is-large .main-nav a{
    animation:none !important;
}


/* LOGO TROSZKĘ WIĘKSZE — bez ruszania menu */
.site-header .logo img{
    height:105px !important;
    max-width:360px !important;
}

.site-header.logo-is-large .logo img{
    transform:scale(1.42) !important;
}

@media(max-width:860px){
    .site-header .logo img{
        height:74px !important;
        max-width:235px !important;
    }

    .site-header.logo-is-large .logo img{
        transform:scale(1.24) !important;
    }
}


/* FINAL MOBILE MENU FIX — menu na telefonie schowane do kliknięcia */
.mobile-menu-toggle{
    display:none;
}

@media(max-width:860px){
    .site-header{
        position:sticky !important;
        top:0 !important;
        z-index:9999 !important;
    }

    .mobile-menu-toggle{
        display:flex !important;
        align-items:center !important;
        justify-content:center !important;
        width:46px !important;
        height:46px !important;
        border:1px solid #dfece4 !important;
        border-radius:12px !important;
        background:#ffffff !important;
        color:#2f8f46 !important;
        font-size:28px !important;
        line-height:1 !important;
        cursor:pointer !important;
        margin-left:auto !important;
        z-index:10001 !important;
    }

    .main-nav,
    .site-header nav.main-nav{
        display:none !important;
        position:absolute !important;
        top:100% !important;
        left:0 !important;
        right:0 !important;
        width:100% !important;
        background:#ffffff !important;
        padding:18px 24px 24px !important;
        border-top:1px solid rgba(0,0,0,.06) !important;
        box-shadow:0 18px 35px rgba(0,0,0,.10) !important;
        flex-direction:column !important;
        align-items:flex-start !important;
        justify-content:flex-start !important;
        gap:8px !important;
        z-index:10000 !important;
    }

    body.nav-open .main-nav,
    body.nav-open .site-header nav.main-nav{
        display:flex !important;
    }

    .main-nav a,
    .site-header nav.main-nav a{
        width:100% !important;
        font-size:17px !important;
        padding:13px 0 !important;
        text-align:left !important;
    }
}


/* FINAL: jedna ikona menu mobilnego */
.mobile-menu,
.hamburger,
.menu-toggle,
button.mobile-menu{
    display:none !important;
}

.mobile-menu-toggle{
    display:none;
}

@media(max-width:860px){
    .mobile-menu-toggle{
        display:flex !important;
        flex-direction:column !important;
        align-items:center !important;
        justify-content:center !important;
        gap:5px !important;
        width:48px !important;
        height:48px !important;
        border:1px solid #dfece4 !important;
        border-radius:12px !important;
        background:#ffffff !important;
        cursor:pointer !important;
        margin-left:auto !important;
        z-index:10002 !important;
        padding:0 !important;
        box-shadow:none !important;
        color:transparent !important;
        font-size:0 !important;
    }

    .mobile-menu-toggle span{
        display:block !important;
        width:24px !important;
        height:2px !important;
        background:#2f8f46 !important;
        border-radius:999px !important;
        transition:transform .2s ease, opacity .2s ease !important;
    }

    body.nav-open .mobile-menu-toggle span:nth-child(1){
        transform:translateY(7px) rotate(45deg) !important;
    }

    body.nav-open .mobile-menu-toggle span:nth-child(2){
        opacity:0 !important;
    }

    body.nav-open .mobile-menu-toggle span:nth-child(3){
        transform:translateY(-7px) rotate(-45deg) !important;
    }

    .main-nav,
    .site-header nav.main-nav{
        display:none !important;
        position:absolute !important;
        top:100% !important;
        left:0 !important;
        right:0 !important;
        width:100% !important;
        background:#ffffff !important;
        padding:18px 24px 24px !important;
        border-top:1px solid rgba(0,0,0,.06) !important;
        box-shadow:0 18px 35px rgba(0,0,0,.10) !important;
        flex-direction:column !important;
        align-items:flex-start !important;
        justify-content:flex-start !important;
        gap:8px !important;
        z-index:10000 !important;
    }

    body.nav-open .main-nav,
    body.nav-open .site-header nav.main-nav{
        display:flex !important;
    }
}


/* FINAL WORKING MOBILE MENU */
.azyl-mobile-menu-btn{
    display:none;
}

@media(max-width:860px){
    .site-header{
        position:sticky !important;
        top:0 !important;
        z-index:99999 !important;
        overflow:visible !important;
    }

    .azyl-mobile-menu-btn{
        display:flex !important;
        flex-direction:column !important;
        align-items:center !important;
        justify-content:center !important;
        gap:5px !important;
        width:48px !important;
        height:48px !important;
        margin-left:auto !important;
        border:1px solid #dfece4 !important;
        border-radius:12px !important;
        background:#ffffff !important;
        padding:0 !important;
        cursor:pointer !important;
        z-index:100002 !important;
        position:relative !important;
    }

    .azyl-mobile-menu-btn span{
        display:block !important;
        width:24px !important;
        height:2px !important;
        background:#2f8f46 !important;
        border-radius:99px !important;
        transition:transform .2s ease, opacity .2s ease !important;
    }

    .site-header.mobile-open .azyl-mobile-menu-btn span:nth-child(1){
        transform:translateY(7px) rotate(45deg) !important;
    }

    .site-header.mobile-open .azyl-mobile-menu-btn span:nth-child(2){
        opacity:0 !important;
    }

    .site-header.mobile-open .azyl-mobile-menu-btn span:nth-child(3){
        transform:translateY(-7px) rotate(-45deg) !important;
    }

    .site-header .main-nav,
    .site-header nav.main-nav{
        display:none !important;
        position:absolute !important;
        top:100% !important;
        left:0 !important;
        right:0 !important;
        width:100% !important;
        background:#ffffff !important;
        padding:18px 24px 24px !important;
        border-top:1px solid rgba(0,0,0,.06) !important;
        box-shadow:0 18px 35px rgba(0,0,0,.10) !important;
        flex-direction:column !important;
        align-items:flex-start !important;
        justify-content:flex-start !important;
        gap:8px !important;
        z-index:100000 !important;
    }

    .site-header.mobile-open .main-nav,
    .site-header.mobile-open nav.main-nav{
        display:flex !important;
    }

    .site-header .main-nav a,
    .site-header nav.main-nav a{
        width:100% !important;
        font-size:17px !important;
        padding:13px 0 !important;
        text-align:left !important;
    }
}

@media(min-width:861px){
    .site-header .main-nav,
    .site-header nav.main-nav{
        display:flex !important;
    }
}


/* Nagłówek hero - taka sama czcionka jak pozostałe */
.hero h1,
.hero-title,
h1.hero-title,
.section-hero h1{
    font-family: Arial, Helvetica, sans-serif !important;
    font-weight: 400 !important;
    letter-spacing: 0.2px !important;
    text-transform: none !important;
    line-height: 1.2 !important;
}


/* FORCE HERO HEADING FONT - taka sama lekka czcionka jak reszta */
body .hero h1.main-hero-heading,
body main .hero h1.main-hero-heading,
body .hero h1,
body main .hero h1{
    font-family: Arial, Helvetica, sans-serif !important;
    font-weight: 400 !important;
    letter-spacing: -0.02em !important;
    text-transform: none !important;
    line-height: 1.12 !important;
    font-style: normal !important;
}


/* INDEX HERO H1: 48px desktop / 32px mobile */
body .hero h1.main-hero-heading,
body main .hero h1.main-hero-heading,
body .hero h1,
body main .hero h1{
    font-size:48px !important;
    line-height:1.15 !important;
}

@media(max-width:860px){
    body .hero h1.main-hero-heading,
    body main .hero h1.main-hero-heading,
    body .hero h1,
    body main .hero h1{
        font-size:32px !important;
        line-height:1.2 !important;
    }
}


/* MENU zmniejsza się przy scrollowaniu w dół */
.site-header{
    transition: min-height .28s ease, padding .28s ease, box-shadow .28s ease !important;
}

.site-header.header-scrolled{
    min-height: 92px !important;
    height: 92px !important;
    padding-top: 10px !important;
    padding-bottom: 10px !important;
    box-shadow: 0 8px 20px rgba(0,0,0,.06) !important;
}

.site-header.header-scrolled .logo img{
    transform: scale(0.88) !important;
    transition: transform .28s ease !important;
}

.site-header.header-scrolled .main-nav a,
.site-header.header-scrolled nav a{
    padding-top: 6px !important;
    padding-bottom: 6px !important;
}

@media(max-width:860px){
    .site-header.header-scrolled{
        min-height: 78px !important;
        height: 78px !important;
        padding-top: 8px !important;
        padding-bottom: 8px !important;
    }

    .site-header.header-scrolled .logo img{
        transform: scale(0.94) !important;
    }
}


/* BACKUP FORCE SHRINK HEADER */
.site-header.header-scrolled{
    height:86px !important;
    min-height:86px !important;
    padding-top:8px !important;
    padding-bottom:8px !important;
}
.site-header.header-scrolled .logo img{
    height:66px !important;
    max-width:240px !important;
    transform:scale(1) !important;
}
.site-header.header-scrolled .main-nav a,
.site-header.header-scrolled nav a{
    font-size:14px !important;
    padding-top:6px !important;
    padding-bottom:6px !important;
}
