
:root{
  --black:#0a0a0a;
  --dark:#111111;
  --panel:#181818;
  --yellow:#f5c518;
  --yellow2:#ffdd00;
  --white:#f5f5f5;
  --gray:#999;
  --border:#2a2a2a;
  --radius:6px;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{font-family:'Barlow',sans-serif;background:var(--black);color:var(--white);overflow-x:hidden;}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}
.skip{position:absolute;left:-9999px;top:0;background:var(--yellow);color:#000;padding:.5rem 1rem;font-weight:900;z-index:9999;}
.skip:focus{left:0;}

/* ── NAV ── */
#nav{
  position:fixed;top:0;left:0;right:0;z-index:200;
  height:58px;display:flex;align-items:center;justify-content:space-between;
  padding:0 4%;background:#000;border-bottom:3px solid var(--yellow);
}
.nav-logo-img{height:32px;width:auto;}
.nav-menu{display:flex;gap:1.4rem;align-items:center;}
.nav-menu a{font-family:'Barlow Condensed',sans-serif;font-size:.85rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--gray);transition:color .15s;}
.nav-menu a:hover{color:var(--yellow);}
.nav-tel{background:var(--yellow) !important;color:#000 !important;padding:.38rem 1rem;border-radius:4px;font-weight:900 !important;border:2px solid #000;transition:background .15s !important;}
.nav-tel:hover{background:var(--yellow2) !important;}
.ham{display:none;flex-direction:column;gap:5px;cursor:pointer;background:none;border:none;padding:4px;}
.ham span{display:block;width:26px;height:2px;background:var(--white);border-radius:1px;transition:.3s;}
.ham.open span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.ham.open span:nth-child(2){opacity:0;}
.ham.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
.mobile-nav{display:none;position:fixed;top:58px;left:0;right:0;z-index:199;background:#000;border-bottom:3px solid var(--yellow);padding:1rem 4%;flex-direction:column;gap:.6rem;}
.mobile-nav a{font-family:'Barlow Condensed',sans-serif;font-size:1rem;font-weight:700;color:var(--gray);padding:.5rem 0;border-bottom:1px solid #222;letter-spacing:1px;text-transform:uppercase;}
.mobile-nav a:hover{color:var(--yellow);}
.mobile-nav .nav-tel{border:none;text-align:center;border-radius:4px;padding:.7rem;margin-top:.3rem;}

/* ── HERO ── */
#hero{
  min-height:100vh;position:relative;overflow:hidden;
  display:flex;flex-direction:column;
  background:#000;
}
.hero-banner{
  position:relative;width:100%;padding-top:58px;
  overflow:hidden;
}
.hero-banner img{
  width:100%;max-height:520px;object-fit:cover;object-position:center 20%;
  display:block;
}
.hero-banner::after{
  content:'';position:absolute;bottom:0;left:0;right:0;
  height:120px;
  background:linear-gradient(to bottom,transparent,#000);
}
.hero-halftone{
  position:absolute;inset:0;z-index:0;pointer-events:none;
  background-image:radial-gradient(circle,#333 1px,transparent 1px);
  background-size:24px 24px;opacity:.1;
}
.hero-content{
  position:relative;z-index:2;
  padding:2rem 4% 3.5rem;
  display:flex;flex-direction:column;align-items:flex-start;
  max-width:1200px;margin:0 auto;width:100%;
}
.hero-num{
  font-family:'Bangers',cursive;font-size:.85rem;letter-spacing:4px;
  color:var(--yellow);text-transform:uppercase;
  margin-bottom:.5rem;display:flex;align-items:center;gap:.5rem;
}
.hero-num::before,.hero-num::after{content:'⚡';}
h1{
  font-family:'Bangers',cursive;
  font-size:clamp(2.8rem,8vw,6rem);line-height:.95;letter-spacing:2px;
  color:var(--white);
  text-shadow:4px 4px 0 #000,5px 5px 0 var(--yellow);
  -webkit-text-stroke:1px #000;
}
h1 .hl{color:var(--yellow);-webkit-text-stroke:1px #000;}
.hero-sub{
  margin-top:1.2rem;font-family:'Barlow Condensed',sans-serif;
  font-size:clamp(1rem,2.8vw,1.3rem);font-weight:600;
  color:var(--gray);letter-spacing:.5px;max-width:640px;line-height:1.5;
}
.hero-sub strong{color:var(--white);}
.hero-chips{display:flex;flex-wrap:wrap;gap:.5rem;margin:1.4rem 0 1.8rem;}
.chip{
  background:#1a1a1a;border:2px solid #333;padding:.35rem .9rem;border-radius:3px;
  font-family:'Barlow Condensed',sans-serif;font-size:.9rem;font-weight:700;
  color:var(--white);letter-spacing:.5px;text-transform:uppercase;
  transition:border-color .15s,background .15s;
  text-decoration:none;display:inline-flex;align-items:center;cursor:pointer;
}
.chip:hover{border-color:var(--yellow);background:#222;color:var(--yellow);}
.hero-btns{display:flex;gap:1rem;flex-wrap:wrap;}
.btn-primary{
  display:inline-flex;align-items:center;gap:.6rem;
  background:var(--yellow);color:#000;padding:.9rem 2.2rem;border-radius:4px;
  font-family:'Barlow Condensed',sans-serif;font-size:1.1rem;font-weight:900;
  letter-spacing:1px;text-transform:uppercase;border:3px solid #000;
  box-shadow:4px 4px 0 #000;transition:transform .1s,box-shadow .1s;
}
.btn-primary:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 #000;}
.btn-primary:active{transform:translate(2px,2px);box-shadow:2px 2px 0 #000;}
.btn-outline{
  display:inline-flex;align-items:center;gap:.5rem;
  background:transparent;border:3px solid var(--yellow);color:var(--yellow);
  padding:.9rem 2rem;border-radius:4px;
  font-family:'Barlow Condensed',sans-serif;font-size:1rem;font-weight:900;
  letter-spacing:1px;text-transform:uppercase;
  box-shadow:4px 4px 0 var(--yellow);transition:transform .1s,box-shadow .1s;
}
.btn-outline:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--yellow);}
.hero-trust{margin-top:1.8rem;display:flex;gap:1.6rem;flex-wrap:wrap;}
.trust-item{
  display:flex;align-items:center;gap:.4rem;
  font-family:'Barlow Condensed',sans-serif;font-size:.9rem;font-weight:700;color:var(--gray);
}
.trust-icon{color:var(--yellow);}

/* ── SECTIONS ── */
section{padding:4.5rem 4%;}
.container{max-width:1200px;margin:0 auto;}
.s-label{font-family:'Bangers',cursive;font-size:.85rem;letter-spacing:4px;text-transform:uppercase;color:var(--yellow);margin-bottom:.3rem;}
h2{font-family:'Bangers',cursive;font-size:clamp(2.2rem,6vw,3.8rem);line-height:1;letter-spacing:2px;color:var(--white);text-shadow:3px 3px 0 #000;}
h2 .hl{color:var(--yellow);}
.divider{width:56px;height:4px;background:var(--yellow);margin:.8rem 0 2rem;border-radius:1px;}
.section-lead{font-size:1rem;color:var(--gray);max-width:640px;line-height:1.75;margin-bottom:2rem;font-weight:500;}
.reveal{opacity:0;transform:translateY(18px);transition:opacity .5s ease,transform .5s ease;}
.reveal.in{opacity:1;transform:translateY(0);}

/* ── ABOUT ── */
#onas{background:var(--dark);}
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:start;}
.about-text p{color:var(--gray);line-height:1.85;margin-bottom:1rem;font-size:.98rem;}
.about-text strong{color:var(--white);}
.stats-row{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;}
.stat{
  background:var(--panel);border:2px solid var(--border);border-radius:var(--radius);
  padding:1.4rem 1rem;text-align:center;transition:border-color .15s,transform .15s;
}
.stat:hover{border-color:var(--yellow);transform:translateY(-3px);}
.stat-n{font-family:'Bangers',cursive;font-size:3rem;color:var(--yellow);line-height:1;text-shadow:2px 2px 0 #000;}
.stat-d{font-family:'Barlow Condensed',sans-serif;font-size:.82rem;color:var(--gray);margin-top:.3rem;font-weight:700;letter-spacing:1px;text-transform:uppercase;}
.about-area{margin-top:1.5rem;padding:1rem 1.2rem;background:var(--panel);border:2px solid #333;border-radius:var(--radius);border-left:4px solid var(--yellow);}
.about-area p{color:var(--gray);font-size:.9rem;margin:0;line-height:1.7;}
.about-area strong{color:var(--yellow);}

/* ── SERVICES ── */
#uslugi{background:var(--black);}
.services-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:1.2rem;}
.svc{
  background:var(--dark);border:3px solid #222;border-radius:var(--radius);
  overflow:hidden;display:flex;flex-direction:column;
  transition:transform .2s,border-color .2s,box-shadow .2s;
}
.svc:hover{transform:translate(-3px,-4px);border-color:var(--yellow);box-shadow:5px 5px 0 var(--yellow);}
.svc-img-wrap{position:relative;overflow:hidden;}
.svc-img{width:100%;aspect-ratio:3/4;object-fit:cover;display:block;transition:transform .3s;}
.svc:hover .svc-img{transform:scale(1.03);}
.svc-img-placeholder{
  width:100%;aspect-ratio:3/4;background:linear-gradient(135deg,#1a1a1a,#2a2a2a);
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.6rem;
}
.svc-img-placeholder .ico{font-size:3.5rem;}
.svc-img-wrap::after{
  content:attr(data-tag);position:absolute;bottom:0;left:0;right:0;
  background:var(--yellow);color:#000;font-family:'Bangers',cursive;
  font-size:1.05rem;letter-spacing:2px;text-transform:uppercase;
  padding:.3rem .8rem;border-top:3px solid #000;
}
.svc-body{padding:1rem 1rem .9rem;flex:1;}
.svc-title{font-family:'Bangers',cursive;font-size:1.3rem;letter-spacing:1px;color:var(--white);line-height:1.1;text-shadow:1px 1px 0 #000;}
.svc-desc{font-size:.84rem;color:var(--gray);margin-top:.4rem;line-height:1.5;font-weight:500;}
.svc-link{display:inline-flex;align-items:center;gap:.3rem;margin-top:.8rem;font-family:'Barlow Condensed',sans-serif;font-size:.82rem;font-weight:900;color:var(--yellow);letter-spacing:1.5px;text-transform:uppercase;}
.svc-link:hover{text-decoration:underline;}

/* ── SERVICE DETAIL ── */
.service-page{display:none;}
.service-page.active{display:block;}
#servicePages{display:none;padding:5rem 4%;}
.back-btn{
  display:inline-flex;align-items:center;gap:.5rem;margin-bottom:2rem;
  background:none;border:2px solid var(--yellow);color:var(--yellow);
  padding:.5rem 1.2rem;border-radius:4px;
  font-family:'Barlow Condensed',sans-serif;font-size:.9rem;font-weight:900;
  letter-spacing:1px;text-transform:uppercase;cursor:pointer;
}
.back-btn:hover{text-decoration:underline;}
.sp-hero{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:start;margin-bottom:3rem;}
.sp-img{width:100%;border-radius:var(--radius);border:3px solid #222;}
.sp-img-placeholder{width:100%;aspect-ratio:3/4;background:#1a1a1a;border-radius:var(--radius);border:3px solid #222;display:flex;align-items:center;justify-content:center;font-size:6rem;}
.sp-info h2{margin-bottom:.5rem;}
.sp-info p{color:var(--gray);line-height:1.8;margin-bottom:.9rem;font-size:.98rem;}
.faq{margin-top:2.5rem;}
.faq h3{font-family:'Bangers',cursive;font-size:2rem;color:var(--yellow);margin-bottom:1rem;letter-spacing:1px;text-shadow:2px 2px 0 #000;}
.faq-item{border-bottom:1px solid #222;padding:.9rem 0;}
.faq-q{font-family:'Barlow Condensed',sans-serif;font-weight:700;color:var(--white);cursor:pointer;display:flex;justify-content:space-between;gap:1rem;font-size:1rem;letter-spacing:.3px;}
.faq-q::after{content:'+';color:var(--yellow);font-size:1.3rem;flex-shrink:0;}
.faq-item.open .faq-q::after{content:'–';}
.faq-a{display:none;color:var(--gray);padding-top:.6rem;line-height:1.7;font-size:.9rem;}
.faq-item.open .faq-a{display:block;}
.frazy{margin-top:2rem;}
.frazy h4{font-family:'Bangers',cursive;font-size:1.2rem;color:var(--gray);margin-bottom:.7rem;letter-spacing:2px;text-transform:uppercase;}
.frazy-tags{display:flex;flex-wrap:wrap;gap:.5rem;}
.frazy-tag{background:#1a1a1a;border:2px solid #333;color:var(--yellow);padding:.2rem .7rem;border-radius:3px;font-family:'Barlow Condensed',sans-serif;font-size:.82rem;font-weight:700;letter-spacing:.5px;text-transform:uppercase;}

/* ── GALLERY ── */
#realizacje{background:var(--dark);}
.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1rem;}
.gal-item{
  border-radius:var(--radius);overflow:hidden;border:3px solid #222;
  aspect-ratio:3/4;position:relative;display:flex;align-items:flex-end;
  transition:transform .2s,border-color .2s,box-shadow .2s;cursor:default;
}
.gal-item:hover{transform:translate(-2px,-3px);border-color:var(--yellow);box-shadow:4px 4px 0 var(--yellow);}
.gal-item img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.gal-label{position:relative;z-index:1;width:100%;background:var(--yellow);color:#000;font-family:'Bangers',cursive;font-size:1rem;letter-spacing:2px;text-transform:uppercase;padding:.35rem .8rem;border-top:3px solid #000;}

/* ── REVIEWS ── */
#opinie{background:var(--black);}
.reviews-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.2rem;}
.rv{
  background:var(--dark);border:2px solid #222;border-radius:var(--radius);padding:1.5rem;
  transition:transform .2s,border-color .2s,box-shadow .2s;
}
.rv:hover{transform:translate(-2px,-3px);border-color:var(--yellow);box-shadow:4px 4px 0 var(--yellow);}
.rv-stars{color:var(--yellow);font-size:1.1rem;margin-bottom:.6rem;}
.rv-text{color:var(--gray);line-height:1.65;font-size:.93rem;font-style:italic;}
.rv-text::before{content:'„';}
.rv-text::after{content:'"';}
.rv-author{margin-top:.9rem;font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:.95rem;color:var(--white);letter-spacing:.5px;text-transform:uppercase;}
.rv-src{font-size:.76rem;color:var(--gray);margin-top:.1rem;}
.reviews-cta{margin-top:2rem;text-align:center;color:var(--gray);font-size:.9rem;}
.reviews-cta a{color:var(--yellow);font-weight:700;}

/* ── CONTACT ── */
#kontakt{background:var(--dark);}
.contact-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:3rem;align-items:start;}
.contact-items{display:flex;flex-direction:column;gap:.8rem;}
.ci{display:flex;align-items:flex-start;gap:.9rem;background:var(--panel);border:2px solid #2a2a2a;border-radius:var(--radius);padding:1rem 1.2rem;transition:border-color .15s;}
.ci:hover{border-color:var(--yellow);}
.ci-ico{font-size:1.4rem;flex-shrink:0;margin-top:.1rem;}
.ci-lbl{font-family:'Barlow Condensed',sans-serif;font-size:.72rem;color:var(--gray);letter-spacing:2px;text-transform:uppercase;font-weight:700;}
.ci-val{font-size:.98rem;font-weight:600;color:var(--white);margin-top:.15rem;}
.ci-val a{color:var(--yellow);}
.ci-val a:hover{text-decoration:underline;}
.contact-box{
  background:var(--panel);border:3px solid var(--yellow);border-radius:var(--radius);
  padding:2rem;text-align:center;box-shadow:6px 6px 0 var(--yellow);
}
.contact-box h3{font-family:'Bangers',cursive;font-size:2.2rem;letter-spacing:2px;color:var(--white);margin-bottom:.4rem;text-shadow:2px 2px 0 #000;}
.contact-box p{color:var(--gray);margin-bottom:1.6rem;line-height:1.6;font-size:.97rem;}
.btn-ghost{
  display:inline-flex;align-items:center;gap:.5rem;
  background:transparent;border:2px solid #333;color:var(--gray);
  padding:.65rem 1.6rem;border-radius:4px;
  font-family:'Barlow Condensed',sans-serif;font-size:.92rem;font-weight:700;
  letter-spacing:1px;text-transform:uppercase;margin-top:.7rem;
  transition:border-color .15s,color .15s;
}
.btn-ghost:hover{border-color:var(--yellow);color:var(--yellow);}

/* ── FOOTER ── */
footer{
  background:#000;border-top:3px solid var(--yellow);padding:1.8rem 4%;
  display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;
}
.footer-logo{height:28px;width:auto;opacity:.8;}
.footer-copy{font-size:.82rem;color:var(--gray);}
.footer-links{display:flex;gap:1rem;}
.footer-links a{font-size:.82rem;color:var(--gray);transition:color .15s;}
.footer-links a:hover{color:var(--yellow);}

/* ── RESPONSIVE ── */
@media(max-width:900px){
  .about-grid,.contact-grid,.sp-hero{grid-template-columns:1fr;gap:2rem;}
  .nav-menu{display:none;}
  .ham{display:flex;}
}
@media(max-width:600px){
  h1{font-size:2.6rem;}h2{font-size:1.9rem;}
  .services-grid{grid-template-columns:repeat(2,1fr);}
  .hero-btns{flex-direction:column;}
  footer{flex-direction:column;text-align:center;}
}
@media(max-width:380px){.services-grid{grid-template-columns:1fr;}}

/* ── WORDPRESS SPECIFIC ── */
.nav-brand-wrap img,
#nav .custom-logo { height:36px;width:auto;filter:brightness(0) invert(1); }
.nav-brand-text { font-family:'Bangers',cursive;font-size:1.45rem;letter-spacing:3px;color:#f5f5f5; }
.nav-brand-text em { color:#f5c518;font-style:normal; }
footer .custom-logo { height:28px;width:auto;filter:brightness(0) invert(1); }
.footer-brand-text { font-family:'Bangers',cursive;font-size:1.4rem;letter-spacing:3px; }
.footer-brand-text em { color:#f5c518;font-style:normal; }
.footer-inner { display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;max-width:1200px;margin:0 auto; }

/* Nav WP menu */
#navMenu a { font-family:'Barlow Condensed',sans-serif;font-size:.85rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:#999;transition:color .15s; }
#navMenu a:hover { color:#f5c518; }
.mobile-nav a { font-family:'Barlow Condensed',sans-serif;font-size:1rem;font-weight:700;color:#999;padding:.5rem 0;border-bottom:1px solid #222;letter-spacing:1px;text-transform:uppercase; }

/* Page/Post content */
.page-content { max-width:900px;margin:0 auto;padding:6rem 4% 4rem; }
.page-title { font-family:'Bangers',cursive;font-size:clamp(2rem,5vw,3.5rem);letter-spacing:2px;margin-bottom:1rem;color:#f5f5f5;text-shadow:3px 3px 0 #000; }
.page-body { color:#999;line-height:1.85;font-size:1rem; }
.page-body h2,.page-body h3 { font-family:'Bangers',cursive;color:#f5c518;margin:1.5rem 0 .5rem;letter-spacing:1px; }
.page-body p { margin-bottom:1rem; }
.page-body a { color:#f5c518; }
.page-body ul,.page-body ol { margin:.8rem 0 .8rem 1.5rem;color:#999; }
.post-meta { font-size:.85rem;color:#666;margin-bottom:1.5rem; }
.post-thumb { margin-bottom:2rem;border-radius:6px;overflow:hidden;border:3px solid #222; }
.post-card { background:#111;border:2px solid #222;border-radius:6px;padding:1.5rem;margin-bottom:1.5rem;transition:border-color .15s; }
.post-card:hover { border-color:#f5c518; }
.post-card h2 { font-family:'Bangers',cursive;font-size:1.6rem;margin-bottom:.5rem; }
.post-card h2 a { color:#f5f5f5; }
.post-card h2 a:hover { color:#f5c518; }
.post-excerpt { color:#999;font-size:.93rem;line-height:1.6; }
.wp-post-image { width:100%;height:100%;object-fit:cover; }
