:root{--blue:#0040B2;--orange:#FF6213;--white:#FFFFFF;--light:#F2F6FD;--navy:#172743;--r:24px;--sh:0 10px 30px rgba(23,39,67,.08);--h:72px}
*{box-sizing:border-box;margin:0}
html{scroll-behavior:smooth;scroll-padding-top:var(--h)}
body{font:400 1.0625rem/1.7 Inter,system-ui,sans-serif;color:var(--navy);background:var(--white);overflow-x:hidden}
h1,h2,h3{font-family:Poppins,sans-serif;font-weight:600;color:var(--blue);line-height:1.15}
h1{font-size:clamp(2.3rem,6vw,4.2rem)}h2{font-size:clamp(2rem,4.5vw,3rem);margin-bottom:1.2rem}h3{font-size:1.3rem;margin-bottom:.7rem}
p{margin-bottom:1rem}a{color:var(--blue)}
:focus-visible{outline:3px solid var(--orange);outline-offset:3px}
.wrap{width:min(1120px,100% - 2.5rem);margin-inline:auto}
.skip{position:absolute;left:-999px}.skip:focus{left:1rem;top:1rem;background:#fff;padding:.5rem 1rem;z-index:99}
.site-header{position:sticky;top:0;z-index:50;background:var(--white);transition:box-shadow .3s}
.site-header.scrolled{background:rgba(255,255,255,.94);box-shadow:var(--sh);backdrop-filter:blur(8px)}
.bar{display:flex;align-items:center;justify-content:space-between;height:var(--h)}
.brand{display:flex;align-items:center;gap:.6rem;text-decoration:none;font-family:Poppins,sans-serif;font-weight:600;color:var(--blue)}
.logo-img{height:44px;width:auto;display:block}
nav ul{display:flex;gap:1.6rem;list-style:none;padding:0}
nav a{text-decoration:none;color:var(--navy);font-weight:500;padding:.5rem 0;border-bottom:2px solid transparent;transition:.2s}
nav a:hover{color:var(--blue);border-color:var(--orange)}
.burger{display:none;background:none;border:0;width:48px;height:48px;cursor:pointer;border-radius:12px}
.burger span{display:block;width:26px;height:3px;margin:5px auto;background:var(--blue);border-radius:3px;transition:.3s}
.burger[aria-expanded=true] span:nth-child(1){transform:translateY(8px) rotate(45deg)}
.burger[aria-expanded=true] span:nth-child(2){opacity:0}
.burger[aria-expanded=true] span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}
.hero{padding:clamp(2rem,6vw,5rem) 0;background:radial-gradient(circle at 85% 20%,var(--light),transparent 60%)}
.hero-grid,.two{display:grid;grid-template-columns:1.1fr .9fr;gap:3rem;align-items:center}
.rot{display:block;color:var(--orange);transition:opacity .45s,transform .45s}.rot.out{opacity:0;transform:translateY(14px)}
.lead{font-size:1.15rem;margin:1.5rem 0 2rem;max-width:56ch}
.btns{display:flex;flex-wrap:wrap;gap:1rem}
.btn{display:inline-block;padding:1rem 1.8rem;border-radius:999px;font:600 1rem Poppins,sans-serif;text-decoration:none;border:2px solid transparent;cursor:pointer;transition:transform .2s,box-shadow .2s,background .2s}
.btn:hover{transform:translateY(-2px);box-shadow:var(--sh)}
.btn-cta{background:var(--orange);color:#fff}.btn-cta:hover{background:#e5560d}
.btn-blue{background:var(--blue);color:#fff}
.btn-ghost{background:#fff;color:var(--blue);border-color:var(--blue)}
.hero-art{width:100%;height:auto}.f1{animation:fl 9s ease-in-out infinite}.f2{animation:fl 7s ease-in-out infinite reverse}.f3{animation:fl 11s ease-in-out infinite}
@keyframes fl{50%{transform:translateY(-12px)}}
.sec{padding:clamp(3.5rem,8vw,7rem) 0}.tint{background:var(--light)}
.narrow{max-width:70ch}.art-sm{width:100%;max-width:400px;justify-self:center}
.grid{display:grid;gap:1.5rem;list-style:none;padding:0;margin-top:2rem}
.g2{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:repeat(3,1fr)}.g4{grid-template-columns:repeat(4,1fr)}
.card{background:var(--white);border-radius:var(--r);padding:2rem;box-shadow:var(--sh);transition:transform .25s,box-shadow .25s}
.tint .card{box-shadow:none}
.card:hover{transform:translateY(-4px)}
.hov .card{border-top:5px solid var(--orange)}.hov .card h3{margin:0}
#dlaczego-vi .card{font-size:1.2rem}#dlaczego-vi .card strong{display:block;color:var(--blue);font-family:Poppins,sans-serif}
.big{margin-top:3rem;font:600 clamp(1.6rem,4vw,2.6rem)/1.2 Poppins,sans-serif;color:var(--blue)}.big span{color:var(--orange)}
.person{text-align:center}.person p{margin:0}
.avatar{width:120px;height:120px;border-radius:50%;margin:0 auto 1.2rem;display:grid;place-items:center;background:var(--light);color:var(--blue);font:600 2rem Poppins,sans-serif;border:4px solid var(--orange)}
.soon{opacity:.7}
.project{background:var(--blue);color:#fff;border-radius:var(--r);padding:clamp(2rem,5vw,4rem);margin-top:2rem}
.project h3{color:#fff;font-size:clamp(1.6rem,3.5vw,2.4rem)}.project p{max-width:65ch;margin:0}
.notice{margin:2rem 0 0;padding:1.2rem 1.6rem;border-radius:var(--r);background:#fff;border-left:6px solid var(--orange);font-weight:500}
.gallery-wrap{margin-top:3rem}
.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:1.5rem}
.gallery button{padding:0;border:0;border-radius:16px;overflow:hidden;cursor:pointer;aspect-ratio:4/3;background:var(--light)}
.gallery img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s}
.gallery button:hover img,.gallery button:focus-visible img{transform:scale(1.06)}
.gallery .empty{grid-column:1/-1;background:var(--light);border-radius:var(--r);padding:2.5rem;text-align:center;opacity:.8}
.lightbox{position:fixed;inset:0;z-index:100;background:rgba(23,39,67,.92);display:flex;align-items:center;justify-content:center;padding:2rem}
.lightbox[hidden]{display:none}
.lb-figure{max-width:min(90vw,900px);text-align:center}
.lb-img{max-width:100%;max-height:78vh;border-radius:16px;display:block;margin:0 auto}
.lb-caption{color:#fff;margin-top:1rem;opacity:.85}
.lb-btn{position:absolute;background:rgba(255,255,255,.15);border:0;color:#fff;border-radius:50%;width:52px;height:52px;font-size:1.6rem;cursor:pointer;display:grid;place-items:center;transition:background .2s}
.lb-btn:hover{background:rgba(255,255,255,.3)}
.lb-close{top:1.5rem;right:1.5rem}
.lb-prev{left:1.5rem;top:50%;transform:translateY(-50%)}
.lb-next{right:1.5rem;top:50%;transform:translateY(-50%)}
.acc{font:600 1.15rem Poppins,sans-serif;color:var(--blue);word-break:break-word;background:var(--light);padding:.8rem 1rem;border-radius:12px}
.ok{color:var(--blue);font-weight:600}.small{font-size:.92rem;margin-top:1rem}
.empty{grid-column:1/-1;text-align:center;padding:3rem 2rem}
.ph{height:160px;border-radius:16px;background:var(--light);margin-bottom:1rem}
.meta{font-size:.9rem;color:var(--orange);font-weight:500;margin-bottom:.4rem}
address{font-style:normal}
.contact-center{max-width:800px;margin:0 auto;text-align:center}
.contact-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.75rem;margin:2rem 0;text-align:left}
.contact-grid div{background:var(--light);border-radius:var(--r);padding:1.5rem}
.contact-grid strong{display:block;font-family:Poppins,sans-serif;color:var(--blue);margin-bottom:.5rem}
.contact-grid a,.contact-grid span{display:block}
.footer{background:var(--navy);color:#fff;padding:3.5rem 0 1.5rem}.footer a{color:#fff}
.fgrid{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.fgrid ul{list-style:none;padding:0;columns:2}.fgrid li{margin-bottom:.5rem}
.fname{font:600 1.4rem Poppins,sans-serif;margin:0}
.copy{text-align:center;margin:2.5rem 0 0;font-size:.9rem;opacity:.7}
.reveal{opacity:0;transform:translateY(20px);transition:opacity .7s,transform .7s}.reveal.in{opacity:1;transform:none}
@media(max-width:900px){
 .burger{display:block}
 nav{position:absolute;top:var(--h);left:0;right:0;background:#fff;box-shadow:var(--sh);max-height:0;overflow:hidden;transition:max-height .4s}
 nav.open{max-height:400px}nav ul{flex-direction:column;gap:0;padding:1rem 1.25rem}nav a{display:block;padding:.9rem 0}
 .hero-grid,.two,.g2,.g3,.g4,.fgrid,.contact-grid{grid-template-columns:1fr}
 .gallery{grid-template-columns:repeat(2,1fr)}
 .lb-prev,.lb-next{width:44px;height:44px;font-size:1.3rem}
 .lb-prev{left:.5rem}.lb-next{right:.5rem}.lb-close{top:.75rem;right:.75rem}
 .hero-art{max-width:360px;margin-inline:auto}
 .btn{width:100%;text-align:center}.btns{flex-direction:column}
 .brand-name{font-size:.85rem}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}}
