
:root{--primary:#2563EB;--primary-dark:#1D4ED8;--primary-light:#DBEAFE;--accent:#F59E0B;--bg-primary:#EFF6FF;--bg-dark:#0F172A;--gray-50:#F8FAFC;--gray-100:#F1F5F9;--gray-200:#E2E8F0;--gray-500:#64748B;--gray-600:#475569;--gray-700:#334155;--gray-800:#1E293B;--gray-900:#0F172A;--radius:16px;--radius-sm:10px;--shadow:0 4px 24px rgba(0,0,0,.06);--shadow-lg:0 12px 40px rgba(0,0,0,.1)}
*{margin:0;padding:0;box-sizing:border-box}body{font-family:"Plus Jakarta Sans",sans-serif;color:var(--gray-800);line-height:1.7;background:#fff}
a{color:var(--primary);text-decoration:none;transition:color .2s}a:hover{color:var(--primary-dark)}
.container{max-width:1500px;padding:0px 30px;margin:0 auto}
.label{display:inline-block;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:1.5px;color:var(--primary);margin-bottom:12px;background:var(--primary-light);padding:4px 14px;border-radius:20px}
.section{padding:80px 0}.section--alt{background:var(--bg-primary)}.section--dark{background:var(--bg-dark);color:#fff}

/* HERO — full-width centered, big icon */
.hero {
  background: var(--hero-bg);
  padding: 100px 24px 80px;
  color: #fff;
  position: relative;
  overflow: hidden;
  text-align: center;
}
.hero::before{content:'';position:absolute;top:-40%;right:-15%;width:700px;height:700px;background:radial-gradient(circle,rgba(96,165,250,.12) 0%,transparent 70%);border-radius:50%;pointer-events:none}
.hero::after{content:'';position:absolute;bottom:-50%;left:-10%;width:500px;height:500px;background:radial-gradient(circle,rgba(59,130,246,.08) 0%,transparent 70%);border-radius:50%;pointer-events:none}
.hero .container{position:relative}
.hero-icon{font-size:3.5rem;margin-bottom:16px;display:block}
.hero h1{font-size:2.6rem;font-weight:900;line-height:1.15;margin-bottom:16px}
.hero .subtitle{font-size:1.1rem;opacity:.82;line-height:1.8;margin:0 auto 32px;max-width:720px}
.hero__actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
/* Hero triple stats */
.hero-triple{display:flex;gap:0;justify-content:center;margin-top:44px;max-width:1500px;padding:0px 30px;margin-left:auto;margin-right:auto;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius);overflow:hidden}
.hero-triple-item{flex:1;padding:22px 20px;text-align:center;border-right:1px solid rgba(255,255,255,.08)}
.hero-triple-item:last-child{border-right:none}
.hero-triple-item .ht-num{font-size:1.8rem;font-weight:900;color:#60A5FA}.hero-triple-item .ht-label{font-size:.75rem;opacity:.55;margin-top:2px}

.btn{display:inline-flex;align-items:center;gap:8px;padding:14px 28px;border-radius:var(--radius-sm);font-weight:700;font-size:.95rem;transition:all .2s;text-decoration:none;cursor:pointer;border:none}
.btn--primary{background:#fff;color:var(--primary)}.btn--primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}
.btn--outline{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.3)}.btn--outline:hover{background:rgba(255,255,255,.1)}
.btn--dark{background:var(--primary);color:#fff}.btn--dark:hover{background:var(--primary-dark)}
.btn--lg{padding:16px 32px;font-size:1rem}
.breadcrumb{max-width:1500px;padding:14px 30px;margin:0 auto;border-bottom:1px solid var(--gray-200);font-size:.83rem;color:var(--gray-500)}.breadcrumb a{color:var(--gray-600)}.breadcrumb span{margin:0 6px;opacity:.5}
.section-header{text-align:center;margin-bottom:48px}.section-header h2{font-size:1.8rem;font-weight:800;color:var(--gray-900)}.section-header p{color:var(--gray-600);max-width:650px;margin:12px auto 0;font-size:1.05rem}
.section--dark .section-header h2{color:#fff}.section--dark .section-header p{color:rgba(255,255,255,.6)}

/* SERVICE CARDS — filtry/kategorie */
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.service-card{display:flex;align-items:center;gap:16px;padding:22px 26px;background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius-sm);text-decoration:none;color:inherit;transition:all .25s}
.service-card:hover{border-color:var(--primary);box-shadow:var(--shadow);transform:translateY(-3px)}
.service-card__icon{font-size:1.6rem;width:46px;height:46px;display:flex;align-items:center;justify-content:center;background:var(--primary-light);border-radius:12px;flex-shrink:0}
.service-card__body{flex:1}.service-card__body h4{font-size:.92rem;font-weight:700;color:var(--gray-900);margin-bottom:2px}.service-card__body p{font-size:.78rem;color:var(--gray-500);margin:0}

/* WOJ CARDS — województwa */
.woj-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.woj-card{display:flex;align-items:center;gap:14px;padding:20px 22px;background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius-sm);text-decoration:none;color:inherit;transition:all .25s}
.woj-card:hover{border-color:var(--primary);box-shadow:var(--shadow);transform:translateY(-3px)}
.woj-card__emoji{font-size:1.8rem;flex-shrink:0}
.woj-card__body{flex:1}.woj-card__body h4{font-size:.92rem;font-weight:700;color:var(--gray-900);margin-bottom:1px}.woj-card__body span{font-size:.78rem;color:var(--gray-500)}

/* INNE GRUPY — grid 3-kol */
.grid{display:grid;gap:14px}.grid--3{grid-template-columns:repeat(3,1fr)}
.card{background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius);padding:24px;transition:all .25s}
.card:hover{border-color:var(--primary);box-shadow:var(--shadow);transform:translateY(-3px)}
.card h4{font-size:1rem;font-weight:700;margin-bottom:6px;color:var(--gray-900)}.card p{color:var(--gray-500);font-size:.88rem;margin:0}
.card--link{text-decoration:none;display:block;color:inherit}

/* CONTENT BLOCK */
.content-centered{max-width:1500px;margin:0 auto;text-align:left}
.content-centered h2{font-size:1.5rem;font-weight:800;color:var(--gray-900);margin-bottom:16px}
.content-centered p{color:var(--gray-700);font-size:1rem;line-height:1.8;margin-bottom:14px}

/* CTA SECTION */
.cta-section{background:linear-gradient(135deg,var(--bg-dark) 0%,#1E293B 100%);padding:80px 24px;text-align:center;color:#fff}
.cta-section h2{font-size:1.8rem;font-weight:800;margin-bottom:12px}.cta-section p{opacity:.75;margin-bottom:32px;font-size:1.05rem}
.cta-section .btn--primary{background:var(--primary);color:#fff}.cta-section .btn--primary:hover{background:var(--primary-dark)}

.reveal{opacity:0;transform:translateY(24px);transition:opacity .5s ease,transform .5s ease}.reveal.visible{opacity:1;transform:translateY(0)}
.reveal-delay-1{transition-delay:.12s}.reveal-delay-2{transition-delay:.24s}

@media(max-width:1024px){.service-grid{grid-template-columns:repeat(2,1fr)}.woj-grid{grid-template-columns:repeat(2,1fr)}.grid--3{grid-template-columns:repeat(2,1fr)}.hero-triple{flex-wrap:wrap}}
@media(max-width:768px){.hero{padding:90px 16px 60px}.hero h1{font-size:1.9rem}.hero-icon{font-size:2.8rem}.section{padding:60px 0}.service-grid{grid-template-columns:1fr}.woj-grid{grid-template-columns:1fr}.grid--3{grid-template-columns:1fr}.hero-triple{flex-direction:column}.hero-triple-item{border-right:none;border-bottom:1px solid rgba(255,255,255,.08);padding:14px 16px}.hero-triple-item:last-child{border-bottom:none}}



.fz-header{position:sticky;top:0;z-index:9999;background:#fff;border-bottom:1px solid #e5e7eb;font-family:'Plus Jakarta Sans',sans-serif}
.fz-header-inner{display:flex;align-items:center;max-width:1500px;margin:0 auto;padding:14px 30px;gap:0}
.fz-logo img{height:32px;width:152px;display:block}
.fz-nav{display:flex;align-items:center;flex:1;justify-content:center;gap:0}
.fz-nav a{position:relative;display:inline-flex;align-items:center;padding:14px 18px;font-size:14px;font-weight:600;color:#000000;text-decoration:none;transition:color .2s}
.fz-nav a::after{content:'';position:absolute;bottom:0;left:8px;right:8px;height:2px;background:#FF6640;transform-origin:right;transform:scaleX(0);opacity:0;transition:all .3s cubic-bezier(.58,.3,.005,1)}
.fz-nav a:hover{color:#000666}
.fz-nav a:hover::after{transform-origin:right;transform:scaleX(1);opacity:1}
.fz-nav a.active{color:#000666}
.fz-nav a.active::after{transform-origin:right;transform:scaleX(1);opacity:1}
.fz-account{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:8px;transition:background .2s;text-decoration:none}
.fz-account:hover{background:#f1f5f9}
.fz-account svg{width:18px;height:18px}
.fz-burger{display:none;background:none;border:none;cursor:pointer;padding:8px;line-height:0}
.fz-burger svg{width:24px;height:24px;fill:#303F79}
.fz-mobile-nav{display:none;flex-direction:column;background:#fff;border-top:1px solid #e5e7eb;padding:8px 0}
.fz-mobile-nav a{display:block;padding:10px 20px;font-size:14px;font-weight:600;color:#33373d;text-decoration:none;transition:background .2s,color .2s}
.fz-mobile-nav a:hover{background:#303F8A;color:#fff}
.fz-mobile-nav a:last-child{border-bottom:none}
.fz-mobile-nav a:active,.fz-mobile-nav a:focus{background:#303F8A;color:#fff}
.fz-header-left,.fz-header-right{display:flex;align-items:center}
.fz-icon-close{display:none}
.fz-burger.open .fz-icon-open{display:none}
.fz-burger.open .fz-icon-close{display:block}
.fz-icon-close{width:24px;height:24px;fill:#1a1a2e;}
@media(max-width:768px){
  .fz-nav{display:none}
  .fz-burger{display:block}
  .fz-header-inner{padding:12px 16px;justify-content:space-between}
  .fz-header-left{width:40px;flex-shrink:0}
  .fz-header-right{width:40px;flex-shrink:0}
  .fz-logo{flex:1;display:flex;justify-content:center}
  .fz-mobile-nav.open{display:flex}
}


  @media(max-width:1024px){
    footer > div:first-child{
      grid-template-columns:1fr 1fr !important;
      gap:32px !important;
    }

    footer .footer-head-grid{
      display:none !important;
    }

    footer .footer-links-groups{
      grid-template-columns:1fr !important;
      gap:24px !important;
    }

    footer .footer-links-grid{
      grid-template-columns:1fr 1fr !important;
      gap:12px 20px !important;
    }

    footer .footer-mobile-heading,
    footer .footer-divider--mobile{
      display:block !important;
    }
  }
@media(max-width:430px){
    footer > div:first-child{
      grid-template-columns:1fr !important;
      gap:32px !important;
    }
      footer .footer-links-grid{
      grid-template-columns:1fr !important;
      gap:12px 20px !important;
    }
  }