
:root{
  --blue:#141414;
  --blue-dark:#0b0b0b;
  --blue-soft:#f2f2f2;
  --white:#fff;
  --black:#101010;
  --text:#101820;
  --muted:#60717b;
  --line:rgba(255,255,255,.35);
  --yellow:#b8734a;
  --max:1480px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:'Montserrat','Arial',sans-serif;
  background:#fff;
  color:var(--text);
}
a{text-decoration:none;color:inherit}
.page{width:100%;min-height:100vh;overflow:hidden}
.topbar{
  height:34px;
  background:#111;
  color:#f2f2f2;
  font-size:13px;
}
.topbar-inner{
  max-width:var(--max);
  margin:0 auto;
  height:100%;
  display:flex;
  justify-content:flex-end;
  align-items:center;
  gap:28px;
  padding:0 42px;
}
.topbar-item{
  display:flex;
  align-items:center;
  gap:10px;
  opacity:.98;
}
.icon{
  display:inline-flex;
  width:20px;
  height:20px;
  align-items:center;
  justify-content:center;
  font-size:17px;
}
.site-head{
  position:absolute;
  top:34px;
  left:0;
  right:0;
  z-index:10;
  height:92px;
  background:rgba(13,13,13,.86);
  backdrop-filter:blur(6px);
  border-bottom:1px solid rgba(184,115,74,.24);
}
.head-inner{
  max-width:var(--max);
  height:100%;
  margin:0 auto;
  padding:0 42px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:26px;
}




.brand{
  display:flex;
  align-items:center;
  min-width:390px;
}
.brand-text-only{
  padding:4px 0;
  background:transparent;
}
.brand-copy{
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.brand-title{
  display:block;
  color:#f0f0f0;
  font-size:26px;
  line-height:1;
  letter-spacing:.22em;
  white-space:nowrap;
}
.brand-rule{
  display:block;
  width:100%;
  max-width:460px;
  height:1px;
  margin:10px 0 10px;
  background:linear-gradient(90deg,rgba(184,115,74,.85),rgba(224,224,224,.85),rgba(184,115,74,.55));
}
.brand-sub{
  display:block;
  color:#d4d4d4;
  font-size:12px;
  line-height:1;
  font-weight:500;
  letter-spacing:.16em;
  white-space:nowrap;
}
.nav{
  display:flex;
  align-items:center;
  gap:22px;
}
.nav > a:not(.btn):not(.circle){
  position:relative;
  padding:8px 0;
}
.nav a{
  font-size:15px;
  font-weight:700;
  color:#f1f1f1;
}
.nav a:hover{color:#d8a98f}
.nav .btn{
  min-width:134px;
  height:46px;
  background:linear-gradient(135deg,#6f5143 0%, #b07a60 20%, #dadada 50%, #bb8469 78%, #7b594a 100%);
  color:#111;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:6px;
  padding:0 24px;
  font-weight:800;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.26), 0 8px 18px rgba(0,0,0,.18);
}
.nav .btn:hover{
  color:#111;
  transform:translateY(-1px);
}
.nav .circle{
  width:42px;
  height:42px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.16);
  color:#d8a98f;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  font-weight:900;
  font-size:19px;
  transition:all .2s ease;
}
.nav .circle:hover{
  background:rgba(255,255,255,.12);
  color:#fff;
  border-color:rgba(216,169,143,.5);
}
.hero{
  position:relative;
  min-height:100vh;
  display:flex;
  align-items:center;
  overflow:hidden;
  background:#dcecf1;
}
.hero-bg{
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg, rgba(0,0,0,.72) 0%, rgba(0,0,0,.48) 31%, rgba(0,0,0,.18) 62%, rgba(0,0,0,.08) 100%),
    linear-gradient(180deg, rgba(0,0,0,.48) 0%, rgba(0,0,0,.08) 34%, rgba(0,0,0,.38) 100%),
    url('hero-antresola-perfect-interior.webp');
  background-size:cover;
  background-position:center center;
}
.hero-title{
  position:relative;
  z-index:2;
  max-width:var(--max);
  width:100%;
  margin:0 auto;
  padding:190px 42px 90px;
}
.hero h1{
  margin:0;
  max-width:850px;
  color:#fff;
  font-size:clamp(46px,5.1vw,82px);
  line-height:1.03;
  letter-spacing:-2.5px;
  font-weight:900;
  text-shadow:0 4px 22px rgba(0,0,0,.30);
}
.hero p{
  margin:22px 0 0;
  max-width:690px;
  color:#fff;
  font-size:22px;
  line-height:1.45;
  font-weight:700;
  text-shadow:0 3px 16px rgba(0,0,0,.28);
}
.hero-actions{
  display:flex;
  gap:16px;
  flex-wrap:wrap;
  margin-top:34px;
}
.primary,
.secondary{
  background:rgba(255,255,255,.94);
  color:#111;
  border:1px solid rgba(184,115,74,.48);
}
.primary{
  background:linear-gradient(135deg,#6f5143 0%, #b07a60 22%, #d9d9d9 52%, #b98167 76%, #7b594a 100%);
  color:#111;
  border:0;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.28), 0 8px 18px rgba(0,0,0,.20);
}
.secondary{background:#fff;color:#111;border:1px solid rgba(184,115,74,.65)}
.primary:hover{
  background:linear-gradient(135deg,#816153 0%, #c28a70 22%, #ececec 52%, #c98d72 76%, #8b6655 100%);
}
.secondary:hover{background:#fff}
.online-strip{
  background:#111;
  border-bottom:1px solid rgba(184,115,74,.35);
  overflow:hidden;
  white-space:nowrap;
}
.strip-track{
  display:inline-flex;
  gap:0;
  animation:move 28s linear infinite;
  padding:22px 0;
  color:#e8e8e8;
  font-size:24px;
  font-weight:900;
}
.strip-track span{padding:0 22px}
@keyframes move{
  from{transform:translateX(0)}
  to{transform:translateX(-50%)}
}
.section{
  max-width:var(--max);
  margin:0 auto;
  padding:78px 42px;
}
.home-intro{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:62px;
  align-items:start;
}
.label-title{
  display:flex;
  align-items:center;
  gap:16px;
  margin-bottom:26px;
}
.label-title:before{
  content:"";
  width:6px;
  height:34px;
  background:var(--yellow);
  display:block;
}
.label-title h1,.label-title h2{
  margin:0;
  font-size:38px;
  line-height:1.05;
  font-weight:900;
}
.home-intro p{
  margin:0 0 18px;
  color:#4f4f4f;
  font-size:20px;
  line-height:1.65;
  font-weight:600;
}
.home-card{
  background:linear-gradient(135deg,#111,#2a2a2a);
  color:#fff;
  padding:46px;
}
.home-card h3{
  margin:0 0 20px;
  font-size:42px;
  line-height:1.05;
  font-weight:900;
}
.home-card p{
  color:#d8d8d8;
  font-size:20px;
  margin-bottom:28px;
}
.services{
  background:#f5f5f5;
  border-top:1px solid #e3e3e3;
  border-bottom:1px solid #e3e3e3;
}
.service-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:28px;
}
.service{
  background:#fff;
  min-height:250px;
  padding:34px;
  border-bottom:7px solid #b8734a;
  box-shadow:0 14px 40px rgba(0,0,0,.08);
}
.service h3{
  margin:0 0 16px;
  font-size:28px;
  line-height:1.08;
  font-weight:900;
}
.service p{
  color:#565656;
  font-size:17px;
  line-height:1.6;
  margin:0;
}
.contact-band{
  background:linear-gradient(135deg,#111,#2a2a2a);
  color:#fff;
}
.contact-grid{
  max-width:var(--max);
  margin:0 auto;
  padding:58px 42px;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:36px;
}
.contact-item{
  display:flex;
  gap:18px;
  align-items:center;
}
.pin{
  width:48px;
  height:48px;
  border:3px solid #fff;
  border-radius:50% 50% 50% 0;
  transform:rotate(-45deg);
  flex:0 0 auto;
  position:relative;
}
.pin:after{
  content:"";
  width:12px;
  height:12px;
  background:#fff;
  border-radius:50%;
  position:absolute;
  left:15px;
  top:15px;
}
.contact-item small{
  display:block;
  font-size:15px;
  opacity:.9;
  margin-bottom:5px;
}
.contact-item strong,
.contact-item a{
  display:block;
  font-size:26px;
  font-weight:900;
}
.blue-page{
  background:linear-gradient(135deg,#111,#2a2a2a);
  color:#fff;
  min-height:100vh;
}
.blue-header-spacer{
  height:138px;
}
.sub-title{
  max-width:var(--max);
  margin:0 auto;
  padding:28px 42px 0;
}
.area-map{
  max-width:var(--max);
  margin:0 auto;
  min-height:610px;
  position:relative;
  padding:30px 42px;
}
.map-stage{
  position:relative;
  height:590px;
}
.pulse-ring{
  position:absolute;
  left:49%;
  top:47%;
  transform:translate(-50%,-50%);
  width:240px;
  height:240px;
  border-radius:50%;
  background:rgba(184,115,74,.18);
  z-index:0;
  animation:ringPulse 2.6s ease-in-out infinite;
}
.pulse-ring:after{
  content:"";
  position:absolute;
  inset:56px;
  border-radius:50%;
  background:rgba(184,115,74,.28);
}
@keyframes ringPulse{
  0%,100%{transform:translate(-50%,-50%) scale(1);opacity:.92}
  50%{transform:translate(-50%,-50%) scale(1.08);opacity:.72}
}
.city{
  position:absolute;
  color:#fff;
  font-weight:900;
  font-size:14px;
  letter-spacing:.2px;
  text-transform:uppercase;
  text-align:center;
  z-index:2;
  transition:transform .15s ease, opacity .15s ease;
}
.city:hover{
  transform:translateY(-2px) scale(1.04);
  opacity:.98;
  color:#f0c6ad;
  text-shadow:0 0 16px rgba(184,115,74,.55);
}
.city .dot{
  display:block;
  margin:8px auto 0;
  width:13px;
  height:13px;
  background:#fff;
  border-radius:50%;
}
.city.main{
  font-size:18px;
}
.city.main .dot{
  width:19px;
  height:19px;
}
.gniezno{left:49%;top:47%}
.rogowo{left:53%;top:8%}
.mieleszyn{left:45%;top:18%}
.klecko{left:40%;top:26%}
.kiszkowo{left:33%;top:36%}
.lednogora{left:38%;top:47%}
.lubowo{left:43%;top:49%}
.pobiedziska{left:33%;top:54%}
.wierzyce{left:39%;top:58%}
.czerniejewo{left:45%;top:62%}
.trzemeszno{left:58%;top:40%}
.mogilno{left:67%;top:22%}
.witkowo{left:58%;top:61%}
.mielzyn{left:57%;top:69%}
.skorzecin{left:63%;top:56%}
.przybrodzin{left:67%;top:59%}
.powidz{left:69%;top:66%}
.wrzesnia{left:49%;top:78%}
.slupca{left:66%;top:83%}
.city-icons{
  max-width:var(--max);
  margin:0 auto;
  padding:30px 42px 90px;
  display:grid;
  grid-template-columns:repeat(5,1fr);
  row-gap:36px;
  column-gap:28px;
}
.city-icon{
  display:flex;
  align-items:center;
  gap:18px;
  font-size:27px;
  font-weight:900;
  color:#fff;
}
.city-icon:hover{
  text-decoration:underline;
}
.city-icon .pin{
  width:34px;
  height:34px;
  border-width:3px;
}
.city-icon .pin:after{
  width:8px;
  height:8px;
  left:10px;
  top:10px;
}
.form-page{
  padding-top:138px;
  background:#f5f5f5;
  min-height:100vh;
}
.form-wrap{
  max-width:980px;
  margin:0 auto;
  padding:60px 42px 90px;
}
.form-box{
  background:#fff;
  box-shadow:0 22px 60px rgba(42,80,101,.13);
}
.form-step{
  padding:42px;
}
.form-step h1{
  margin:0 0 12px;
  font-size:46px;
  line-height:1;
  font-weight:900;
}
.form-step p{
  margin:0 0 28px;
  color:#60717b;
  font-size:18px;
  line-height:1.55;
}
.form-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
}
input,textarea,select{
  width:100%;
  min-height:58px;
  border:1px solid #cfdde5;
  background:#fff;
  padding:16px 18px;
  font:inherit;
  font-size:16px;
  margin-bottom:16px;
  outline:none;
}
textarea{
  min-height:160px;
  resize:vertical;
}
input:focus,textarea:focus,select:focus{
  border-color:#b8734a;
  box-shadow:0 0 0 4px rgba(184,115,74,.15);
}
.file-note{
  border:2px dashed #b8734a;
  padding:20px;
  color:#60717b;
  font-size:16px;
  line-height:1.55;
  margin-bottom:16px;
}
.checkbox{
  display:flex;
  gap:10px;
  color:#60717b;
  font-size:13px;
  line-height:1.45;
  margin-bottom:20px;
}
.checkbox input{
  width:auto;
  min-height:auto;
  margin:2px 0 0;
}
.local-page{
  padding-top:138px;
  background:#fff;
  min-height:100vh;
}
.local-wrap{
  max-width:var(--max);
  margin:0 auto;
  padding:60px 42px 90px;
}
.local-hero{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:36px;
  align-items:start;
}
.local-copy h1{
  margin:0 0 18px;
  font-size:58px;
  line-height:1;
  letter-spacing:-2px;
  font-weight:900;
}
.local-copy p{
  font-size:20px;
  line-height:1.65;
  color:#555;
  margin:0 0 18px;
}
.local-box{
  background:#f5f5f5;
  border-left:8px solid #b8734a;
  padding:34px;
}
.local-box h3{
  margin:0 0 18px;
  font-size:28px;
  line-height:1.1;
}
.local-box ul{
  margin:0;
  padding-left:20px;
  color:#555;
  font-size:18px;
  line-height:1.7;
}
.local-services{
  margin-top:42px;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:24px;
}
.local-service{
  background:#fff;
  border:1px solid #e2e2e2;
  box-shadow:0 12px 36px rgba(42,80,101,.08);
  padding:28px;
}
.local-service h3{
  margin:0 0 12px;
  font-size:24px;
}
.local-service p{
  margin:0;
  color:#555;
  font-size:16px;
  line-height:1.6;
}
footer{
  background:#0b0b0b;
  color:#d7d7d7;
  padding:30px 42px;
  text-align:center;
  font-size:14px;
}
@media(max-width:1100px){
  .brand{min-width:320px}
      .nav{gap:14px}
  .nav a{font-size:14px}
  .city-icons{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:920px){
  .topbar{height:auto}
  .topbar-inner{
    justify-content:center;
    flex-wrap:wrap;
    gap:12px 24px;
    padding:10px 18px;
  }
  .site-head{
    top:58px;
    height:auto;
    position:absolute;
  }
  .head-inner{
    padding:16px 18px;
    flex-direction:column;
    align-items:flex-start;
  }
  .brand{min-width:0;width:100%;gap:16px}
  
  .nav{
    width:100%;
    flex-wrap:wrap;
  }
  .hero-title{padding:250px 24px 80px}
  .hero h1{font-size:44px}
  .hero p{font-size:18px}
  .home-intro,
  .service-grid,
  .contact-grid,
  .form-grid,
  .local-hero,
  .local-services{
    grid-template-columns:1fr;
  }
  .section{padding:55px 24px}
  .contact-grid{padding:44px 24px}
  .blue-header-spacer{height:220px}
  .sub-title{padding-left:24px;padding-right:24px}
  .area-map{padding-left:24px;padding-right:24px}
  .city-icons{grid-template-columns:repeat(2,1fr);padding-left:24px;padding-right:24px}
  .form-page,.local-page{padding-top:220px}
  .local-wrap,.form-wrap{padding-left:24px;padding-right:24px}
}
@media(max-width:620px){
    .brand{align-items:flex-start}
  
  .brand-text{font-size:20px}
  .nav .circle{display:none}
  .nav .btn{min-width:auto}
  .hero h1{font-size:38px}
  .strip-track{font-size:18px}
  .label-title h1,.label-title h2,.home-card h3{font-size:32px}
  .service h3{font-size:24px}
  .area-map{min-height:500px}
  .map-stage{height:480px;transform:scale(.78);transform-origin:top center;width:128%;margin-left:-14%}
  .city-icons{grid-template-columns:1fr}
  .city-icon{font-size:24px}
  .form-step{padding:28px 20px}
  .form-step h1{font-size:36px}
  .local-copy h1{font-size:38px}
  .pulse-ring{width:190px;height:190px}
  .pulse-ring:after{inset:44px}
}


@media(max-width:620px){
  }


@media(max-width:1100px){
  .brand{min-width:420px}
  .brand-wordmark{width:270px}
}

@media(max-width:920px){
  .brand{
    min-width:0;
    width:100%;
  }
  .brand-real{
    padding:8px 10px;
  }
  .brand-symbol{
    width:48px;
  }
  .brand-wordmark{
    width:255px;
  }
}

@media(max-width:620px){
  .brand-real{
    gap:10px;
    padding:6px 8px;
  }
  .brand-symbol{
    width:40px;
  }
  .brand-wordmark{
    width:210px;
  }
}


@media(max-width:1200px){
  .brand{min-width:470px}
  .brand-title{font-size:24px;letter-spacing:.22em}
  .brand-sub{font-size:13px;letter-spacing:.18em}
  .brand-symbol-wrap{width:70px;flex-basis:70px}
  .brand-symbol{width:52px}
}

@media(max-width:920px){
  .brand{
    min-width:0;
    width:100%;
    gap:12px;
  }
  .brand-real{
    padding:8px 10px 8px 8px;
  }
  .brand-symbol-wrap{
    width:58px;
    flex-basis:58px;
  }
  .brand-symbol{width:44px}
  .brand-title{
    font-size:20px;
    letter-spacing:.16em;
  }
  .brand-sub{
    font-size:12px;
    letter-spacing:.10em;
  }
  .brand-rule{
    margin:8px 0 9px;
  }
}

@media(max-width:620px){
  .brand-title{
    font-size:16px;
    letter-spacing:.10em;
  }
  .brand-sub{
    font-size:10px;
    letter-spacing:.05em;
  }
  .brand-symbol-wrap{
    width:48px;
    flex-basis:48px;
  }
  .brand-symbol{width:36px}
}


/* wariant czarno-srebrno-miedziany */
.site-head:after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-1px;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(184,115,74,.85),rgba(230,230,230,.60),rgba(184,115,74,.55),transparent);
}
.brand-real{
  box-shadow:0 10px 30px rgba(0,0,0,.18);
}
.brand-title{
  text-shadow:0 1px 0 rgba(255,255,255,.06);
}
.brand-sub{
  color:#d6d6d6;
}
.nav .btn{
  color:#111;
}
.nav .btn:hover{
  background:linear-gradient(135deg,#816153 0%, #c28a70 22%, #ececec 52%, #c98d72 76%, #8b6655 100%);
  color:#111;
}
.nav .circle{
  background:#fff;
}
.nav .circle:hover{
  background:#b8734a;
  color:#111;
}
.label-title:before{
  background:linear-gradient(180deg,#d79a72,#7f4b33);
}
.home-card{
  border-bottom:6px solid #b8734a;
}
.service{
  background:linear-gradient(180deg,#fff,#f8f8f8);
}
.service:hover{
  transform:translateY(-3px);
}
.city .dot{
  box-shadow:0 0 0 0 rgba(184,115,74,0);
}
.city:hover .dot{
  background:#f0c6ad;
  box-shadow:0 0 0 8px rgba(184,115,74,.18);
}
.city-icon:hover{
  color:#f0c6ad;
  text-shadow:0 0 16px rgba(184,115,74,.50);
}
.local-box{
  background:linear-gradient(135deg,#f6f6f6,#fff);
}
.local-service{
  border-bottom:5px solid #b8734a;
}


/* korekta akcentu: miedź zamiast złota */
.primary,
.nav .btn{
  background:linear-gradient(135deg,#a96442,#d19a78);
}
.primary:hover,
.nav .btn:hover{
  background:linear-gradient(135deg,#bd7650,#e0aa86);
}
.label-title:before{
  background:linear-gradient(180deg,#d19a78,#875039);
}
.brand-rule{
  background:linear-gradient(90deg,rgba(184,115,74,.92),rgba(235,235,235,.72),rgba(184,115,74,.55));
}
.service,
.local-service{
  border-bottom-color:#b8734a;
}


/* v11: poprawiony jasny nagłówek pod czarne logo */
.site-head:after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:2px;
  background:linear-gradient(90deg,transparent,rgba(184,115,74,.45),rgba(150,150,150,.35),transparent);
}
.nav .btn{
  background:linear-gradient(135deg,#9b6245,#c58b68);
  color:#111;
}
.nav .btn:hover{
  background:linear-gradient(135deg,#b17451,#d29a76);
  color:#111;
}
.nav .circle{
  color:#9b6245;
  box-shadow:0 6px 18px rgba(0,0,0,.08);
}
.hero-title{
  padding-top:230px;
}
.hero h1{
  max-width:820px;
  text-shadow:0 5px 26px rgba(0,0,0,.38);
}
.hero p{
  max-width:720px;
}
.brand-cropped-logo:hover{
  opacity:.96;
}
@media(max-width:1200px){
  .brand{min-width:360px}
  .brand-cropped-image{width:350px}
}
@media(max-width:920px){
  .site-head{height:auto}
  .brand{
    min-width:0;
    width:100%;
  }
  .brand-cropped-image{width:330px}
  .hero-title{padding-top:260px}
}
@media(max-width:620px){
  .brand-cropped-image{width:255px}
}


/* v12: sam napis + ciemny header */
.site-head:after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(184,115,74,.40),rgba(230,230,230,.28),transparent);
}
.brand-text-only:hover{
  opacity:.98;
}
.nav .circle{
  color:#b98167;
  background:#fff;
  box-shadow:0 6px 18px rgba(0,0,0,.14);
}
.nav .circle:hover{
  background:linear-gradient(135deg,#6f5143 0%, #b07a60 22%, #d9d9d9 52%, #b98167 76%, #7b594a 100%);
  color:#111;
}
@media(max-width:1200px){
  .brand{min-width:360px}
  .brand-title{font-size:26px;letter-spacing:.20em}
  .brand-sub{font-size:12px;letter-spacing:.13em}
}
@media(max-width:920px){
  .brand{
    min-width:0;
    width:100%;
  }
  .brand-title{font-size:22px;letter-spacing:.14em}
  .brand-sub{font-size:11px;letter-spacing:.08em}
}
@media(max-width:620px){
  .brand-title{font-size:17px;letter-spacing:.08em}
  .brand-sub{font-size:9px;letter-spacing:.03em}
}


/* v13 poprawki: lżejsze INTERIOR + naprawa przycisków */
.brand-title{
  display:block;
  color:#f0f0f0;
  font-size:30px;
  line-height:1;
  white-space:nowrap;
  letter-spacing:.18em;
}
.brand-perfect{
  font-weight:800;
}
.brand-interior{
  font-weight:400;
  opacity:.98;
}
.brand-rule{
  max-width:375px;
  margin:11px 0 10px;
}
.brand-sub{
  font-size:13px;
  letter-spacing:.16em;
}

/* naprawa przycisków hero */
.hero-actions{
  display:flex;
  gap:14px;
  flex-wrap:wrap;
  align-items:center;
  margin-top:34px;
}
.hero-actions a{
  text-decoration:none;
}
.primary,
.secondary{
  min-height:54px;
  padding:0 28px;
  border-radius:4px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-weight:800;
  font-size:16px;
  line-height:1;
  white-space:nowrap;
  min-width:180px;
}
.primary{
  background:linear-gradient(135deg,#6f5143 0%, #b07a60 22%, #d9d9d9 52%, #b98167 76%, #7b594a 100%);
  color:#111;
  border:0;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.28), 0 8px 18px rgba(0,0,0,.20);
}
.primary:hover{
  background:linear-gradient(135deg,#816153 0%, #c28a70 22%, #ececec 52%, #c98d72 76%, #8b6655 100%);
  color:#111;
}
.secondary{
  background:rgba(255,255,255,.96);
  color:#111;
  border:1px solid rgba(184,115,74,.48);
  box-shadow:0 6px 16px rgba(0,0,0,.10);
}
.secondary:hover{
  background:#fff;
  color:#111;
}

/* nav buttons też trochę czyściej */
.nav .btn{
  min-width:138px;
  height:48px;
  padding:0 20px;
  white-space:nowrap;
  font-size:15px;
}
.nav{
  gap:24px;
}

@media(max-width:1200px){
  .brand-title{
    font-size:26px;
    letter-spacing:.14em;
  }
  .brand-rule{
    max-width:330px;
  }
}

@media(max-width:920px){
  .brand-title{
    font-size:22px;
    letter-spacing:.10em;
  }
  .brand-sub{
    font-size:11px;
    letter-spacing:.08em;
  }
  .brand-rule{
    max-width:280px;
  }
  .hero-actions{
    gap:12px;
  }
  .primary,
  .secondary{
    min-width:160px;
    min-height:50px;
    padding:0 22px;
    font-size:15px;
  }
}

@media(max-width:620px){
  .brand-title{
    font-size:17px;
    letter-spacing:.06em;
  }
  .brand-sub{
    font-size:9px;
    letter-spacing:.03em;
  }
  .brand-rule{
    max-width:220px;
    margin:8px 0 8px;
  }
  .hero-actions{
    flex-direction:column;
    align-items:flex-start;
  }
  .primary,
  .secondary{
    min-width:200px;
    width:auto;
  }
}


/* v14: prawdziwe zdjęcie realizacji jako hero */
.hero{
  background:#111;
}
.hero h1{
  max-width:820px;
  text-shadow:0 5px 26px rgba(0,0,0,.55);
}
.hero p{
  max-width:720px;
  text-shadow:0 4px 18px rgba(0,0,0,.55);
}
@media(max-width:920px){
  .hero-bg{
    background-position:center center;
  }
}


/* v15: Opinie klientów na stronie głównej */
.reviews-section{
  background:#0b0b0b;
  color:#f4f4f4;
  padding:86px 42px 96px;
  border-top:1px solid rgba(184,115,74,.22);
  border-bottom:1px solid rgba(184,115,74,.22);
}
.reviews-inner{
  max-width:1180px;
  margin:0 auto;
}
.reviews-head{
  text-align:center;
  margin-bottom:34px;
}
.reviews-head h2{
  margin:0;
  font-size:38px;
  line-height:1;
  font-weight:800;
  letter-spacing:.04em;
}
.reviews-line{
  display:block;
  width:205px;
  height:3px;
  margin:20px auto 18px;
  background:linear-gradient(90deg,transparent,#b98167,#dedede,#b98167,transparent);
}
.reviews-add{
  display:inline-flex;
  color:#cda184;
  font-weight:600;
  font-size:15px;
}
.reviews-add:hover{
  color:#fff;
}
.reviews-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:30px;
  margin-top:20px;
}
.review-card{
  background:#121212;
  border:1px solid rgba(184,115,74,.46);
  border-radius:6px;
  padding:36px 34px 34px;
  min-height:345px;
  display:flex;
  flex-direction:column;
  box-shadow:0 18px 50px rgba(0,0,0,.22);
}
.stars{
  color:#d1a064;
  letter-spacing:2px;
  font-size:16px;
  margin-bottom:22px;
}
.review-card p{
  margin:0;
  color:#eeeeee;
  font-size:16px;
  line-height:1.72;
  font-style:italic;
}
.read-more{
  color:#cda184;
  font-size:13px;
  margin-top:12px;
  width:max-content;
}
.read-more:hover{
  color:#fff;
}
.review-separator{
  height:1px;
  background:rgba(255,255,255,.10);
  margin:24px 0 18px;
  margin-top:auto;
}
.review-card strong{
  display:block;
  font-size:17px;
  line-height:1.2;
  color:#fff;
  margin-bottom:8px;
}
.review-card span{
  display:block;
  font-size:13px;
  color:#8f8f8f;
}
@media(max-width:980px){
  .reviews-grid{
    grid-template-columns:1fr;
  }
  .review-card{
    min-height:auto;
  }
}
@media(max-width:620px){
  .reviews-section{
    padding:64px 22px 74px;
  }
  .reviews-head h2{
    font-size:30px;
  }
  .review-card{
    padding:28px 24px;
  }
}


@media(max-width:620px){
  .realizations-section{
    padding:64px 0 76px;
  }
  .realizations-head{
    padding:0 22px;
  }
  .realizations-track{
    padding:0 22px;
    gap:18px;
    animation-duration:52s;
  }
  .realization-card{
    width:292px;
    flex-basis:292px;
  }
  .compare{
    height:220px;
  }
  .realization-content{
    padding:20px;
  }
}


/* v17: Wybrane realizacje wyżej, same zdjęcia z suwakiem przed/po */
.realizations-section{
  background:#080808;
  color:#fff;
  padding:72px 0 84px;
  overflow:hidden;
  border-top:1px solid rgba(184,115,74,.16);
  border-bottom:1px solid rgba(184,115,74,.16);
}
.realizations-head.compact{
  max-width:1180px;
  margin:0 auto 26px;
  padding:0 42px;
}
.realizations-head.compact .label-title{
  margin-bottom:0;
}
.realizations-head.compact .label-title h2{
  font-size:36px;
}
.realizations-marquee{
  width:100%;
  overflow:hidden;
  position:relative;
}
.realizations-marquee:before,
.realizations-marquee:after{
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  width:88px;
  z-index:3;
  pointer-events:none;
}
.realizations-marquee:before{
  left:0;
  background:linear-gradient(90deg,#080808,transparent);
}
.realizations-marquee:after{
  right:0;
  background:linear-gradient(270deg,#080808,transparent);
}
.realizations-track{
  display:flex;
  gap:22px;
  width:max-content;
  animation:realizationsScroll 48s linear infinite;
  padding:0 42px;
}
.realizations-marquee:hover .realizations-track{
  animation-play-state:paused;
}
@keyframes realizationsScroll{
  from{transform:translateX(0)}
  to{transform:translateX(-50%)}
}
.realization-card.image-only{
  width:360px;
  flex:0 0 360px;
  background:#121212;
  border:1px solid rgba(184,115,74,.38);
  border-radius:10px;
  overflow:hidden;
  box-shadow:0 18px 55px rgba(0,0,0,.28);
}
.compare{
  position:relative;
  width:100%;
  height:270px;
  overflow:hidden;
  background:#111;
  user-select:none;
}
.compare-img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.compare-before{z-index:1;}
.compare-after{z-index:2;clip-path:inset(0 0 0 50%);}
.compare input[type="range"]{
  position:absolute;
  inset:0;
  z-index:5;
  width:100%;
  height:100%;
  opacity:0;
  cursor:ew-resize;
  margin:0;
}
.compare-handle{
  position:absolute;
  top:0;
  bottom:0;
  left:50%;
  z-index:4;
  width:2px;
  transform:translateX(-1px);
  background:linear-gradient(180deg,transparent,#fff,transparent);
  box-shadow:0 0 0 1px rgba(0,0,0,.24), 0 0 22px rgba(255,255,255,.28);
  pointer-events:none;
}
.compare-handle:after{
  content:"↔";
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  width:42px;
  height:42px;
  border-radius:50%;
  background:linear-gradient(135deg,#6f5143 0%, #b07a60 22%, #d9d9d9 52%, #b98167 76%, #7b594a 100%);
  color:#111;
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight:900;
  box-shadow:0 8px 24px rgba(0,0,0,.32);
}
.compare-label{
  position:absolute;
  top:14px;
  z-index:6;
  padding:7px 10px;
  border-radius:4px;
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
  background:rgba(0,0,0,.62);
  color:#fff;
  backdrop-filter:blur(8px);
}
.label-before{left:14px;}
.label-after{right:14px;}
@media(max-width:980px){
  .realization-card.image-only{
    width:320px;
    flex-basis:320px;
  }
  .compare{height:240px;}
}
@media(max-width:620px){
  .realizations-section{padding:58px 0 72px;}
  .realizations-head.compact{padding:0 22px;}
  .realizations-head.compact .label-title h2{font-size:30px;}
  .realizations-track{padding:0 22px;gap:16px;animation-duration:56s;}
  .realization-card.image-only{width:280px;flex-basis:280px;}
  .compare{height:210px;}
}

@media (max-width: 1100px){
  .brand{min-width:auto;}
  .brand-title{font-size:22px; letter-spacing:.18em;}
  .brand-sub{font-size:11px; letter-spacing:.12em;}
  .nav{gap:16px;}
  .nav a{font-size:14px;}
  .nav .btn{min-width:124px; padding:0 18px;}
}




/* v23: obecny header przyklejony podczas przewijania + WhatsApp przy telefonie */
.topbar{
  position:fixed;
  top:0;
  left:0;
  right:0;
  height:34px;
  z-index:1000;
  background:#111;
  color:#f2f2f2;
  font-size:13px;
  border-bottom:1px solid rgba(255,255,255,.05);
}
.site-head{
  position:fixed;
  top:34px;
  left:0;
  right:0;
  z-index:999;
  height:92px;
  background:rgba(13,13,13,.90);
  backdrop-filter:blur(8px);
  border-bottom:1px solid rgba(184,115,74,.24);
}
.head-inner{
  max-width:var(--max);
  height:100%;
  margin:0 auto;
  padding:0 42px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:26px;
}
.nav{
  gap:22px;
}
.nav a{
  font-size:14px;
}
.nav .btn{
  min-width:132px;
  height:44px;
  border-radius:7px;
}
.nav .circle{
  width:40px;
  height:40px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.16);
  color:#d8a98f;
}
.nav .circle:hover{
  background:rgba(255,255,255,.12);
  color:#fff;
}
.hero-title{
  padding-top:220px;
}
.phone-with-whatsapp{
  display:inline-flex;
  align-items:center;
  gap:10px;
}
.contact-whatsapp-inline{
  width:30px;
  height:30px;
  border-radius:50%;
  background:#25D366;
  color:#fff;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 30px;
  box-shadow:0 8px 20px rgba(0,0,0,.18);
  transform:translateY(-1px);
}
.contact-whatsapp-inline svg{
  width:18px;
  height:18px;
  fill:currentColor;
}
.contact-whatsapp-inline:hover{
  transform:translateY(-2px) scale(1.04);
  filter:saturate(1.08);
}
@media(max-width:920px){
  .topbar{
    position:relative;
    height:auto;
  }
  .site-head{
    position:absolute;
    top:58px;
    height:auto;
  }
  .head-inner{
    padding:16px 18px;
  }
  .hero-title{
    padding-top:250px;
  }
}






/* v27: bardziej rozpoznawalna ikonka WhatsApp przy numerze telefonu */
.phone-line{
  display:inline-flex;
  align-items:center;
  gap:12px;
  line-height:1;
}
.phone-line > a:first-child{
  color:#fff;
  text-decoration:none;
}
.wa-phone{
  width:42px;
  height:42px;
  min-width:42px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  text-decoration:none;
  box-shadow:0 8px 20px rgba(0,0,0,.22);
  transition:transform .18s ease, filter .18s ease, box-shadow .18s ease;
}
.wa-phone svg{
  width:42px;
  height:42px;
  display:block;
}
.wa-phone:hover{
  transform:translateY(-1px) scale(1.05);
  filter:saturate(1.08);
  box-shadow:0 10px 24px rgba(0,0,0,.28);
}
@media(max-width:620px){
  .phone-line{justify-content:center;}
  .wa-phone,.wa-phone svg{width:40px;height:40px;min-width:40px;}
}


/* v28: dopracowane ikony kontaktu + bardziej czytelny WhatsApp */
.topbar-item{gap:8px;}
.topbar-icon{
  width:16px;
  height:16px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  color:#d9d9d9;
}
.topbar-icon svg{
  width:16px;
  height:16px;
  display:block;
  stroke:currentColor;
  fill:none;
  stroke-width:1.9;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.contact-grid{
  gap:28px;
}
.contact-item{
  gap:16px;
  align-items:center;
}
.contact-icon{
  width:56px;
  height:56px;
  min-width:56px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  background:rgba(255,255,255,.045);
  border:1px solid rgba(255,255,255,.14);
  box-shadow:0 10px 26px rgba(0,0,0,.16), inset 0 1px 0 rgba(255,255,255,.04);
  color:#fff;
}
.contact-icon svg{
  width:26px;
  height:26px;
  display:block;
  stroke:currentColor;
  fill:none;
  stroke-width:1.9;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.contact-icon--location svg circle,
.contact-icon--location svg path:last-child{fill:none;}
.contact-item small{
  display:block;
  font-size:15px;
  opacity:.78;
  margin-bottom:7px;
}
.contact-item strong,
.contact-item a,
.phone-line > a:first-child{
  display:block;
  font-size:20px;
  line-height:1.2;
  font-weight:800;
  letter-spacing:-.01em;
}
.contact-item a:hover,
.phone-line > a:first-child:hover{
  color:#d8a98f;
}
.phone-line{
  display:inline-flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
}
.wa-phone{
  width:36px;
  height:36px;
  min-width:36px;
  border-radius:50%;
  background:#25D366;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(255,255,255,.18);
  box-shadow:0 8px 18px rgba(0,0,0,.24);
  transition:transform .18s ease, box-shadow .18s ease, filter .18s ease;
}
.wa-phone svg{
  width:20px;
  height:20px;
  display:block;
}
.wa-phone:hover{
  transform:translateY(-1px) scale(1.05);
  filter:brightness(1.02);
  box-shadow:0 10px 22px rgba(0,0,0,.28);
}
@media(max-width:980px){
  .contact-grid{grid-template-columns:1fr;}
}
@media(max-width:620px){
  .topbar{height:auto;padding:6px 0;}
  .topbar-inner{
    justify-content:center;
    gap:12px 18px;
    flex-wrap:wrap;
    padding:0 18px;
  }
  .contact-grid{padding:38px 22px;gap:22px;}
  .contact-item strong,
  .contact-item a,
  .phone-line > a:first-child{font-size:18px;}
  .contact-icon{width:50px;height:50px;min-width:50px;}
  .contact-icon svg{width:24px;height:24px;}
  .wa-phone{width:34px;height:34px;min-width:34px;}
  .wa-phone svg{width:18px;height:18px;}
}


/* v29: bardziej czytelna ikonka WhatsApp */
.wa-phone{
  background:#25D366;
  border:1px solid rgba(255,255,255,.14);
}
.wa-phone svg{
  width:19px;
  height:19px;
  display:block;
}


/* v30: WhatsApp jako tekstowy link zamiast ikonki */
.wa-phone{
  display:none !important;
}
.phone-line-text{
  display:flex;
  align-items:flex-start;
  flex-direction:column;
  gap:8px;
}
.phone-line-text .phone-number{
  color:#fff;
  text-decoration:none;
}
.wa-text-link{
  display:inline-flex !important;
  width:max-content;
  align-items:center;
  justify-content:center;
  min-height:30px;
  padding:7px 13px;
  border-radius:999px;
  background:rgba(37,211,102,.10);
  border:1px solid rgba(37,211,102,.45);
  color:#7ff0a8 !important;
  font-size:13px !important;
  line-height:1 !important;
  font-weight:800 !important;
  letter-spacing:.01em;
  text-decoration:none;
  box-shadow:none;
}
.wa-text-link:hover{
  background:rgba(37,211,102,.16);
  border-color:rgba(37,211,102,.7);
  color:#fff !important;
}
@media(max-width:620px){
  .phone-line-text{
    align-items:center;
  }
}


/* v31: WhatsApp w topbarze obok numeru telefonu */
.topbar-contact-group{
  display:flex;
  align-items:center;
  gap:10px;
}
.topbar-whatsapp{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:22px;
  padding:4px 10px;
  border-radius:999px;
  background:rgba(37,211,102,.14);
  border:1px solid rgba(37,211,102,.42);
  color:#7ff0a8;
  font-size:12px;
  line-height:1;
  font-weight:800;
  letter-spacing:.01em;
  transition:all .18s ease;
}
.topbar-whatsapp:hover{
  background:rgba(37,211,102,.22);
  border-color:rgba(37,211,102,.72);
  color:#fff;
}

@media (max-width: 980px){
  .topbar-inner{
    gap:14px;
    padding:0 16px;
    justify-content:center;
    flex-wrap:wrap;
    height:auto;
    min-height:34px;
  }
  .topbar{
    height:auto;
    padding:6px 0;
  }
  .topbar-contact-group{
    gap:8px;
  }
}

@media (max-width: 640px){
  .topbar-item{
    font-size:12px;
    gap:6px;
  }
  .topbar-whatsapp{
    font-size:11px;
    padding:4px 8px;
  }
}


/* v32: dopracowany główny napis w hero */
.hero-eyebrow{
  display:inline-flex;
  align-items:center;
  width:max-content;
  margin-bottom:18px;
  padding:8px 13px;
  border-left:3px solid #b8734a;
  background:rgba(0,0,0,.34);
  color:#e6d1c4;
  font-size:13px;
  line-height:1;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
  backdrop-filter:blur(4px);
}
.hero h1{
  max-width:760px;
  font-size:clamp(44px,4.5vw,72px);
  line-height:.98;
  letter-spacing:-2px;
}
.hero-subtitle-main{
  margin-top:12px;
  max-width:720px;
  color:#d8a98f;
  font-size:clamp(26px,2.6vw,42px);
  line-height:1.08;
  font-weight:900;
  letter-spacing:-.8px;
  text-shadow:0 4px 18px rgba(0,0,0,.32);
}
.hero p{
  margin-top:24px;
  max-width:690px;
  font-size:20px;
}
@media(max-width:620px){
  .hero-eyebrow{
    font-size:11px;
    letter-spacing:.07em;
    margin-bottom:14px;
  }
  .hero h1{
    font-size:clamp(38px,11vw,52px);
    letter-spacing:-1.4px;
  }
  .hero-subtitle-main{
    font-size:clamp(23px,7vw,34px);
  }
  .hero p{
    font-size:17px;
  }
}


/* v33: lżejszy i mniejszy napis główny w hero */
.hero h1{
  max-width:690px;
  font-size:clamp(38px,3.65vw,58px);
  line-height:1.06;
  font-weight:800;
  letter-spacing:-1.35px;
  text-shadow:0 4px 18px rgba(0,0,0,.30);
}
.hero-subtitle-main{
  margin-top:10px;
  max-width:620px;
  font-size:clamp(22px,1.85vw,31px);
  line-height:1.14;
  font-weight:700;
  letter-spacing:-.35px;
  color:#d9b39d;
  text-shadow:0 3px 14px rgba(0,0,0,.28);
}
.hero p{
  max-width:650px;
  font-size:18px;
  line-height:1.5;
  font-weight:700;
}
.hero-eyebrow{
  font-size:12px;
  padding:7px 12px;
  margin-bottom:16px;
  letter-spacing:.10em;
}
@media(max-width:620px){
  .hero h1{
    font-size:clamp(32px,9vw,43px);
    line-height:1.08;
    font-weight:800;
    letter-spacing:-.9px;
  }
  .hero-subtitle-main{
    font-size:clamp(20px,5.8vw,27px);
    font-weight:700;
  }
  .hero p{
    font-size:16px;
  }
}


/* v34: spokojniejszy, bardziej premium hero */
.hero-copy-premium{
  position:relative;
  max-width:720px;
  padding-left:28px;
}
.hero-copy-premium:before{
  content:"";
  position:absolute;
  left:0;
  top:6px;
  bottom:7px;
  width:3px;
  background:linear-gradient(180deg,#d6a17f,#7a4e3b);
  border-radius:999px;
  box-shadow:0 0 24px rgba(184,115,74,.25);
}
.hero-copy-premium .hero-eyebrow{
  display:block;
  width:max-content;
  margin:0 0 16px;
  padding:0;
  border:0;
  background:transparent;
  backdrop-filter:none;
  color:#d8a98f;
  font-size:13px;
  line-height:1;
  font-weight:800;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.hero-copy-premium h1{
  max-width:680px;
  margin:0;
  color:#fff;
  font-size:clamp(36px,3.35vw,54px);
  line-height:1.08;
  font-weight:700;
  letter-spacing:-1px;
  text-shadow:0 4px 18px rgba(0,0,0,.32);
}
.hero-copy-premium p{
  margin:22px 0 0;
  max-width:640px;
  color:#f3f3f3;
  font-size:18px;
  line-height:1.58;
  font-weight:600;
  text-shadow:0 3px 14px rgba(0,0,0,.25);
}
.hero-service-line{
  margin-top:20px;
  color:#d8a98f;
  font-size:14px;
  line-height:1.3;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.hero-subtitle-main{
  display:none;
}
@media(max-width:620px){
  .hero-copy-premium{
    padding-left:20px;
    max-width:100%;
  }
  .hero-copy-premium h1{
    font-size:clamp(31px,8.4vw,42px);
    line-height:1.1;
    font-weight:700;
  }
  .hero-copy-premium p{
    font-size:16px;
    line-height:1.5;
  }
  .hero-service-line{
    font-size:12px;
    letter-spacing:.05em;
  }
}


/* v36: hero bardziej subtelny - mniejsze i lżejsze czcionki */
.hero-copy-premium{display:none;}
.hero-copy-v35{
  max-width:920px;
}
.hero-copy-v35 .hero-badge{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:0 12px;
  margin:0 0 18px;
  background:rgba(35,31,31,.68);
  border-left:2px solid #b8734a;
  color:#efe5de;
  font-size:12px;
  font-weight:700;
  letter-spacing:.07em;
  text-transform:uppercase;
}
.hero-copy-v35 h1{
  margin:0;
  max-width:920px;
  color:#fff;
  font-size:clamp(34px,3.6vw,52px);
  line-height:1.06;
  font-weight:700;
  letter-spacing:-.8px;
  text-shadow:0 4px 14px rgba(0,0,0,.22);
}
.hero-copy-v35 .hero-accent-row{
  display:flex;
  align-items:center;
  gap:0;
  margin-top:12px;
  max-width:760px;
}
.hero-copy-v35 .hero-accent-text{
  flex:0 0 auto;
  color:#d8a98f;
  font-size:clamp(20px,1.9vw,32px);
  line-height:1.08;
  font-weight:600;
  letter-spacing:-.2px;
  text-shadow:0 3px 10px rgba(0,0,0,.18);
}
.hero-copy-v35 .hero-accent-line{
  display:none;
}
.hero-copy-v35 p{
  margin:14px 0 0;
  max-width:760px;
  color:#fff;
  font-size:clamp(15px,1.05vw,18px);
  line-height:1.5;
  font-weight:600;
  text-shadow:0 2px 10px rgba(0,0,0,.18);
}
.hero .hero-copy-v35 + .hero-actions{
  margin-top:24px;
}
@media (max-width: 980px){
  .hero-copy-v35{max-width:760px;}
  .hero-copy-v35 h1{max-width:760px;font-size:clamp(32px,5.5vw,46px);}
  .hero-copy-v35 .hero-accent-text{font-size:clamp(20px,3.8vw,28px);}
  .hero-copy-v35 .hero-accent-line{display:none;}
}
@media (max-width: 720px){
  .hero-copy-v35{max-width:100%;}
  .hero-copy-v35 .hero-badge{font-size:10px;min-height:28px;padding:0 10px;letter-spacing:.05em;margin-bottom:16px;}
  .hero-copy-v35 h1{max-width:100%;font-size:clamp(30px,9vw,40px);line-height:1.04;}
  .hero-copy-v35 .hero-accent-row{flex-direction:column;align-items:flex-start;gap:8px;}
  .hero-copy-v35 .hero-accent-text{font-size:clamp(18px,5vw,24px);}
  .hero-copy-v35 .hero-accent-line{display:none;}
  .hero-copy-v35 p{font-size:15px;line-height:1.5;max-width:96%;}
}


/* v41: stara mapka zasięgu, ale zasięg zmniejszony do 40 km */
.old-range-page{
  background:linear-gradient(135deg,#111,#232323);
  color:#fff;
  min-height:100vh;
}
.old-map-section{
  min-height:100vh;
  padding:178px 42px 70px;
  background:linear-gradient(135deg,#111,#242424);
}
.old-map-inner{
  max-width:var(--max);
  margin:0 auto;
}
.old-map-inner h1{
  display:flex;
  align-items:center;
  gap:16px;
  margin:0 0 40px;
  color:#fff;
  font-size:clamp(32px,3vw,48px);
  line-height:1.05;
  font-weight:900;
  letter-spacing:-.8px;
}
.old-map-inner h1 span{
  width:5px;
  height:40px;
  display:block;
  background:linear-gradient(180deg,#d6a17f,#8a543e);
}
.old-map-wrap{
  position:relative;
  width:min(860px, 100%);
  height:560px;
  margin:-14px auto 0;
}
.range-circle{
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  border-radius:50%;
  pointer-events:none;
}
.range-circle.range-40{
  width:230px;
  height:230px;
  background:rgba(184,115,74,.17);
  box-shadow:0 0 0 86px rgba(184,115,74,.075);
}
.city-point{
  position:absolute;
  transform:translate(-50%,-50%);
  z-index:3;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:8px;
  color:#fff;
  text-align:center;
  white-space:nowrap;
  transition:transform .18s ease, color .18s ease;
}
.city-point b{
  display:block;
  font-size:13px;
  line-height:1;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.02em;
  text-shadow:0 3px 12px rgba(0,0,0,.45);
}
.city-point i{
  width:12px;
  height:12px;
  display:block;
  border-radius:50%;
  background:#fff;
  box-shadow:0 0 0 4px rgba(255,255,255,.08);
}
.city-point.main{
  gap:11px;
  z-index:5;
}
.city-point.main b{
  font-size:23px;
  color:#d8a98f;
  text-shadow:0 6px 18px rgba(0,0,0,.55);
  letter-spacing:.03em;
}
.city-point.main i{
  width:20px;
  height:20px;
  background:#d8a98f;
  border:3px solid #fff;
  box-shadow:0 0 0 7px rgba(216,169,143,.14);
}
a.city-point:hover{
  transform:translate(-50%,-55%);
  color:#d8a98f;
}
.range-info{
  width:min(780px,100%);
  margin:28px auto 0;
  text-align:center;
}
.range-info span{
  display:inline-flex;
  padding:8px 14px;
  border-radius:999px;
  background:rgba(184,115,74,.14);
  border:1px solid rgba(184,115,74,.38);
  color:#d8a98f;
  font-size:13px;
  line-height:1;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.range-info p{
  margin:14px auto 0;
  max-width:720px;
  color:#d7d7d7;
  font-size:16px;
  line-height:1.55;
}
.area-links{
  max-width:var(--max);
  margin:46px auto 0;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:24px 34px;
}
.area-link{
  display:flex;
  align-items:center;
  gap:16px;
  color:#fff;
  font-size:26px;
  line-height:1;
  font-weight:900;
  letter-spacing:-.5px;
}
.area-link span{
  width:42px;
  height:42px;
  border:3px solid #fff;
  border-radius:50% 50% 50% 0;
  transform:rotate(-45deg);
  flex:0 0 auto;
  position:relative;
}
.area-link span:after{
  content:"";
  width:10px;
  height:10px;
  border-radius:50%;
  background:#fff;
  position:absolute;
  left:13px;
  top:13px;
}
.area-link:hover{
  color:#d8a98f;
}
@media(max-width:980px){
  .old-map-section{
    padding:205px 24px 68px;
  }
  .old-map-wrap{
    height:560px;
  }
  .area-links{
    grid-template-columns:repeat(2,1fr);
  }
}
@media(max-width:620px){
  .old-map-section{
    padding:214px 18px 58px;
  }
  .old-map-inner h1{
    margin-bottom:34px;
    font-size:32px;
  }
  .old-map-wrap{
    height:650px;
    transform:scale(.86);
    transform-origin:top center;
    margin:-10px auto -70px;
  }
  .city-point b{
    font-size:11px;
  }
  .city-point.main b{
    font-size:18px;
  }
  .range-circle.range-40{
    width:190px;
    height:190px;
    box-shadow:0 0 0 58px rgba(184,115,74,.075);
  }
  .area-links{
    grid-template-columns:1fr;
    gap:18px;
  }
  .area-link{
    font-size:22px;
  }
}


/* v42: zasięg zmniejszony do 35 km */
.range-circle.range-35{
  width:205px;
  height:205px;
  background:rgba(184,115,74,.16);
  box-shadow:0 0 0 68px rgba(184,115,74,.065);
}
@media(max-width:620px){
  .range-circle.range-35{
    width:170px;
    height:170px;
    box-shadow:0 0 0 46px rgba(184,115,74,.065);
  }
}


/* v43: dopracowanie mapy zasięgu */
.range-circle{display:none !important;}


/* v44: podstrony lokalne z odmienionymi nazwami miejscowości */
.local-seo-page{
  background:#080808;
  color:#fff;
  min-height:100vh;
}
.local-seo-hero{
  position:relative;
  padding:210px 42px 88px;
  background:
    linear-gradient(90deg, rgba(0,0,0,.84), rgba(0,0,0,.52)),
    linear-gradient(180deg, rgba(0,0,0,.22), rgba(0,0,0,.80)),
    url('hero-antresola-perfect-interior.webp');
  background-size:cover;
  background-position:center center;
}
.local-seo-inner{
  max-width:var(--max);
  margin:0 auto;
}
.back-link{
  display:inline-flex;
  margin-bottom:22px;
  color:#d8a98f;
  font-size:14px;
  font-weight:800;
}
.local-kicker{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:0 12px;
  margin-bottom:18px;
  background:rgba(35,31,31,.70);
  border-left:2px solid #b8734a;
  color:#efe5de;
  font-size:12px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.local-seo-hero h1{
  margin:0;
  max-width:950px;
  color:#fff;
  font-size:clamp(36px,4vw,62px);
  line-height:1.06;
  font-weight:750;
  letter-spacing:-1.1px;
  text-shadow:0 4px 18px rgba(0,0,0,.28);
}
.local-seo-hero p{
  margin:22px 0 0;
  max-width:780px;
  color:#f2f2f2;
  font-size:19px;
  line-height:1.58;
  font-weight:600;
}
.local-cta-row{
  display:flex;
  gap:14px;
  flex-wrap:wrap;
  margin-top:30px;
}
.local-seo-content{
  padding:82px 42px;
  background:#080808;
}
.local-seo-grid{
  max-width:var(--max);
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(0,1fr) 360px;
  gap:50px;
  align-items:start;
}
.local-seo-main h2,
.local-nearby h2{
  margin:0 0 18px;
  color:#fff;
  font-size:clamp(30px,2.6vw,44px);
  line-height:1.1;
  font-weight:760;
  letter-spacing:-.7px;
}
.local-seo-main p{
  max-width:760px;
  color:#cfcfcf;
  font-size:17px;
  line-height:1.65;
  margin:0 0 26px;
}
.local-service-list{
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:14px;
  list-style:none;
  margin:0;
  padding:0;
}
.local-service-list li{
  padding:16px 18px;
  border:1px solid rgba(184,115,74,.28);
  background:#111;
  color:#f3f3f3;
  border-radius:8px;
  font-size:15px;
  line-height:1.35;
  font-weight:700;
}
.local-seo-box{
  padding:30px;
  border:1px solid rgba(184,115,74,.42);
  border-radius:10px;
  background:linear-gradient(135deg,rgba(184,115,74,.13),rgba(255,255,255,.035));
  box-shadow:0 18px 55px rgba(0,0,0,.26);
}
.local-seo-box h3{
  margin:0 0 8px;
  font-size:28px;
  color:#fff;
}
.local-seo-box p{
  margin:0 0 20px;
  color:#d8a98f;
  font-weight:800;
}
.local-seo-box strong{
  display:block;
  margin-bottom:20px;
  color:#fff;
  font-size:20px;
}
.local-seo-box a{
  display:flex;
  justify-content:center;
  align-items:center;
  min-height:44px;
  margin-top:10px;
  border-radius:999px;
  border:1px solid rgba(216,169,143,.45);
  color:#fff;
  font-weight:850;
}
.local-seo-box a:hover{
  background:rgba(184,115,74,.18);
}
.local-nearby{
  padding:0 42px 92px;
  background:#080808;
}
.local-nearby-inner{
  max-width:var(--max);
  margin:0 auto;
  padding-top:38px;
  border-top:1px solid rgba(255,255,255,.08);
}
.nearby-links{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:24px;
}
.nearby-links a{
  display:inline-flex;
  min-height:38px;
  align-items:center;
  padding:0 14px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.10);
  background:#111;
  color:#f3f3f3;
  font-size:14px;
  font-weight:800;
}
.nearby-links a:hover{
  border-color:rgba(216,169,143,.58);
  color:#d8a98f;
}
.old-range-page .area-links{
  grid-template-columns:repeat(4,1fr);
}
.old-range-page .area-link{
  font-size:22px;
}
@media(max-width:980px){
  .local-seo-hero{
    padding:230px 24px 70px;
  }
  .local-seo-grid{
    grid-template-columns:1fr;
  }
  .local-seo-content,
  .local-nearby{
    padding-left:24px;
    padding-right:24px;
  }
  .local-service-list{
    grid-template-columns:1fr;
  }
  .old-range-page .area-links{
    grid-template-columns:repeat(2,1fr);
  }
}
@media(max-width:620px){
  .local-seo-hero{
    padding:235px 20px 62px;
  }
  .local-seo-hero h1{
    font-size:clamp(31px,9vw,42px);
  }
  .local-seo-hero p{
    font-size:16px;
  }
  .old-range-page .area-links{
    grid-template-columns:1fr;
  }
}


/* v45: jasny wygląd podstron lokalnych jak w poprzednim układzie */
.local-light-page{
  background:#fff;
  color:#111;
}
.local-light-page .local-copy h2{
  margin:0 0 18px;
  max-width:760px;
  color:#101820;
  font-size:clamp(32px,3.35vw,54px);
  line-height:1.08;
  letter-spacing:-1.4px;
  font-weight:850;
}
.local-light-page .label-title{
  margin-bottom:22px;
}
.local-light-page .label-title h1{
  color:#101820;
}
.local-light-page .local-copy p{
  max-width:760px;
  color:#59636c;
  font-size:19px;
  line-height:1.6;
}
.local-light-page .local-box{
  background:linear-gradient(135deg,#fff,#fafafa);
  border-left:7px solid #b8734a;
  box-shadow:0 12px 36px rgba(42,80,101,.06);
}
.local-light-page .local-box h3{
  color:#101820;
}
.local-light-page .local-box ul{
  color:#59636c;
}
.local-light-page .local-service{
  border:1px solid #e5e5e5;
  border-bottom:4px solid #b8734a;
  background:#fff;
  box-shadow:0 14px 38px rgba(0,0,0,.045);
}
.local-light-page .local-service h3{
  color:#101820;
}
.local-light-page .local-service p{
  color:#59636c;
}
.local-bottom-links{
  margin-top:34px;
  display:flex;
  gap:12px;
  flex-wrap:wrap;
}
.local-bottom-links a{
  min-height:40px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 15px;
  border-radius:999px;
  border:1px solid rgba(184,115,74,.35);
  color:#101820;
  background:#fff;
  font-size:14px;
  font-weight:850;
}
.local-bottom-links a:hover{
  background:rgba(184,115,74,.08);
}
@media(max-width:920px){
  .local-light-page .local-copy h2{
    font-size:clamp(30px,6vw,42px);
  }
}
@media(max-width:620px){
  .local-light-page .local-copy h2{
    font-size:29px;
    letter-spacing:-0.7px;
    line-height:1.1;
  }
}


/* v47: jeszcze mniejszy tytuł na podstronach miejscowości */
.local-light-page .local-copy h2{
  font-size:clamp(29px,2.8vw,46px);
  line-height:1.12;
  font-weight:800;
  letter-spacing:-1px;
  max-width:720px;
}
.local-light-page .local-copy p{
  font-size:18px;
}
@media(max-width:920px){
  .local-light-page .local-copy h2{
    font-size:clamp(28px,5.4vw,38px);
  }
}
@media(max-width:620px){
  .local-light-page .local-copy h2{
    font-size:27px;
    line-height:1.14;
    letter-spacing:-.5px;
  }
}


/* v48: zasięg działania wyżej + 35 km na stronie głównej */
.old-map-section{
  padding-top:145px;
}
.old-map-inner h1{
  margin-bottom:22px;
}
.old-map-wrap{
  margin:-30px auto 0;
  height:520px;
}
.range-info{
  margin-top:12px;
}
.old-range-page .area-links{
  margin-top:32px;
}
@media(max-width:980px){
  .old-map-section{
    padding-top:175px;
  }
  .old-map-wrap{
    margin:-18px auto 0;
  }
}
@media(max-width:620px){
  .old-map-section{
    padding-top:190px;
  }
  .old-map-wrap{
    margin:-14px auto -70px;
  }
}


/* v49: Polityka prywatności */
footer a{
  color:#d8a98f;
  font-weight:800;
}
footer a:hover{
  color:#fff;
}
.privacy-page{
  background:#f7f7f5;
  color:#101820;
  min-height:100vh;
}
.privacy-hero{
  padding:210px 42px 70px;
  background:
    linear-gradient(90deg,rgba(0,0,0,.82),rgba(0,0,0,.55)),
    linear-gradient(180deg,rgba(0,0,0,.18),rgba(0,0,0,.76)),
    url('hero-antresola-perfect-interior.webp');
  background-size:cover;
  background-position:center center;
  color:#fff;
}
.privacy-inner{
  max-width:1000px;
  margin:0 auto;
}
.privacy-kicker{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:0 12px;
  margin-bottom:18px;
  background:rgba(35,31,31,.70);
  border-left:2px solid #b8734a;
  color:#efe5de;
  font-size:12px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.privacy-hero h1{
  margin:0;
  color:#fff;
  font-size:clamp(38px,4vw,62px);
  line-height:1.06;
  font-weight:800;
  letter-spacing:-1.2px;
}
.privacy-hero p{
  margin:14px 0 0;
  color:#e7e7e7;
  font-size:20px;
  font-weight:650;
}
.privacy-content{
  padding:68px 42px 96px;
}
.privacy-card{
  background:#fff;
  border:1px solid #e2e2df;
  border-top:5px solid #b8734a;
  box-shadow:0 18px 55px rgba(0,0,0,.07);
  padding:52px;
}
.privacy-card h2{
  margin:44px 0 16px;
  color:#101820;
  font-size:28px;
  line-height:1.18;
  letter-spacing:-.4px;
}
.privacy-card h2:first-child{
  margin-top:0;
}
.privacy-card h3{
  margin:28px 0 12px;
  color:#101820;
  font-size:20px;
}
.privacy-card p,
.privacy-card li{
  color:#4f5a63;
  font-size:16px;
  line-height:1.72;
}
.privacy-card p{
  margin:0 0 14px;
}
.privacy-card ul{
  margin:0 0 18px;
  padding-left:22px;
}
.privacy-card li{
  margin-bottom:9px;
}
.privacy-card a{
  color:#a66245;
  font-weight:800;
}
.privacy-card strong{
  color:#101820;
}
.privacy-version{
  margin-top:48px;
  padding:26px;
  border-left:4px solid #b8734a;
  background:#f7f4f1;
}
.privacy-version strong{
  display:block;
  margin-bottom:8px;
  font-size:18px;
}
.privacy-version span{
  display:block;
  margin-bottom:12px;
  color:#a66245;
  font-weight:850;
}
.privacy-version p{
  margin:0;
}
@media(max-width:920px){
  .privacy-hero{
    padding:230px 24px 62px;
  }
  .privacy-content{
    padding:48px 24px 78px;
  }
  .privacy-card{
    padding:34px 26px;
  }
}
@media(max-width:620px){
  .privacy-hero h1{
    font-size:34px;
  }
  .privacy-hero p{
    font-size:17px;
  }
  .privacy-card{
    padding:28px 20px;
  }
  .privacy-card h2{
    font-size:23px;
  }
  .privacy-card p,
  .privacy-card li{
    font-size:15px;
  }
}


/* v51: działający formularz wyceny pod nowy styl strony */
.quote-page{
  background:#080808;
  color:#fff;
  min-height:100vh;
}
.quote-hero{
  position:relative;
  padding:210px 42px 92px;
  background:
    linear-gradient(90deg,rgba(0,0,0,.86),rgba(0,0,0,.58)),
    linear-gradient(180deg,rgba(0,0,0,.22),rgba(0,0,0,.82)),
    url('hero-antresola-perfect-interior.webp');
  background-size:cover;
  background-position:center center;
}
.quote-inner{
  max-width:var(--max);
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(0, .82fr) minmax(460px, .92fr);
  gap:52px;
  align-items:start;
}
.quote-kicker{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:0 12px;
  margin-bottom:18px;
  background:rgba(35,31,31,.70);
  border-left:2px solid #b8734a;
  color:#efe5de;
  font-size:12px;
  font-weight:850;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.quote-intro h1{
  margin:0;
  max-width:720px;
  color:#fff;
  font-size:clamp(36px,4vw,62px);
  line-height:1.06;
  font-weight:780;
  letter-spacing:-1.1px;
  text-shadow:0 4px 18px rgba(0,0,0,.30);
}
.quote-intro p{
  margin:22px 0 0;
  max-width:650px;
  color:#ececec;
  font-size:18px;
  line-height:1.58;
  font-weight:600;
}
.quote-points{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
  max-width:650px;
  margin-top:34px;
}
.quote-points div{
  padding:18px;
  border:1px solid rgba(184,115,74,.35);
  background:rgba(15,15,15,.66);
  backdrop-filter:blur(7px);
  border-radius:10px;
}
.quote-points strong{
  display:block;
  color:#d8a98f;
  font-size:24px;
  line-height:1;
  margin-bottom:8px;
}
.quote-points span{
  display:block;
  color:#cfcfcf;
  font-size:13px;
  line-height:1.35;
  font-weight:700;
}
.quote-form-card{
  padding:34px;
  border-radius:12px;
  background:rgba(12,12,12,.88);
  border:1px solid rgba(216,169,143,.28);
  box-shadow:0 24px 70px rgba(0,0,0,.34);
  backdrop-filter:blur(10px);
}
.quote-form-head h2{
  margin:0 0 8px;
  color:#fff;
  font-size:30px;
  line-height:1.1;
  letter-spacing:-.5px;
}
.quote-form-head p{
  margin:0 0 26px;
  color:#bdbdbd;
  font-size:15px;
  line-height:1.55;
}
.quote-field-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.quote-field{
  display:block;
  margin-bottom:15px;
}
.quote-field span{
  display:block;
  margin:0 0 8px;
  color:#d8d8d8;
  font-size:13px;
  font-weight:850;
}
.quote-field input,
.quote-field textarea,
.quote-field select{
  width:100%;
  min-height:52px;
  border-radius:8px;
  border:1px solid rgba(255,255,255,.13);
  background:rgba(255,255,255,.055);
  color:#fff;
  padding:14px 15px;
  font:inherit;
  font-size:15px;
  outline:none;
  transition:border-color .18s ease, box-shadow .18s ease, background .18s ease;
}
.quote-field select option{
  color:#111;
}
.quote-field textarea{
  min-height:145px;
  resize:none;
  overflow:hidden;
  line-height:1.55;
}
.quote-field input:focus,
.quote-field textarea:focus,
.quote-field select:focus{
  border-color:rgba(216,169,143,.72);
  background:rgba(255,255,255,.08);
  box-shadow:0 0 0 4px rgba(184,115,74,.13);
}
.upload-area{
  min-height:124px;
  border:1.5px dashed rgba(216,169,143,.55);
  border-radius:10px;
  background:rgba(184,115,74,.08);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:8px;
  text-align:center;
  cursor:pointer;
  transition:background .18s ease, border-color .18s ease, transform .18s ease;
}
.upload-area strong{
  color:#fff;
  font-size:17px;
}
.upload-area span{
  color:#cfcfcf;
  font-size:13px;
  font-weight:700;
}
.upload-area:hover,
.upload-area.dragover{
  background:rgba(184,115,74,.14);
  border-color:rgba(216,169,143,.85);
  transform:translateY(-1px);
}
.quote-small-note,
.quote-rodo{
  margin:12px 0 15px;
  color:#a8a8a8;
  font-size:12px;
  line-height:1.55;
}
.preview-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:10px;
  margin:14px 0;
}
.preview-item{
  position:relative;
  overflow:hidden;
  border-radius:8px;
  border:1px solid rgba(255,255,255,.12);
  background:#151515;
  aspect-ratio:1/1;
}
.preview-item img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
}
.remove-btn{
  position:absolute;
  top:6px;
  right:6px;
  width:26px;
  height:26px;
  border-radius:50%;
  border:0;
  background:rgba(0,0,0,.72);
  color:#fff;
  cursor:pointer;
  font-size:18px;
  line-height:1;
}
.progress{
  display:none;
  height:8px;
  margin:12px 0 16px;
  border-radius:999px;
  background:rgba(255,255,255,.10);
  overflow:hidden;
}
.progress-bar{
  width:0;
  height:100%;
  background:linear-gradient(90deg,#8c5a43,#d8a98f);
  transition:width .18s ease;
}
.quote-checkbox{
  display:flex;
  align-items:flex-start;
  gap:10px;
  margin-top:10px;
  color:#d6d6d6;
  font-size:13px;
  line-height:1.45;
}
.quote-checkbox input{
  width:auto;
  min-height:auto;
  margin-top:2px;
}
.quote-checkbox a{
  color:#d8a98f;
  font-weight:850;
}
.honeypot{
  position:absolute !important;
  left:-9999px !important;
  opacity:0 !important;
  height:0 !important;
  width:0 !important;
  pointer-events:none !important;
}
.quote-submit{
  width:100%;
  min-height:54px;
  margin-top:18px;
  border:0;
  border-radius:8px;
  background:linear-gradient(135deg,#6f5143 0%, #b07a60 24%, #d9d9d9 53%, #b98167 76%, #7b594a 100%);
  color:#0b0b0b;
  font:inherit;
  font-weight:900;
  cursor:pointer;
  box-shadow:0 14px 30px rgba(0,0,0,.22);
  transition:transform .18s ease, filter .18s ease, opacity .18s ease;
}
.quote-submit:hover{
  transform:translateY(-1px);
  filter:saturate(1.06);
}
.quote-submit:disabled{
  opacity:.7;
  cursor:wait;
}
.popup{
  position:fixed;
  inset:0;
  z-index:3000;
  display:none;
  align-items:center;
  justify-content:center;
  padding:20px;
  background:rgba(0,0,0,.64);
}
.popup-box{
  width:min(420px,100%);
  padding:32px 28px;
  border-radius:14px;
  background:#fff;
  color:#111;
  text-align:center;
  box-shadow:0 24px 70px rgba(0,0,0,.34);
}
.popup-icon{
  width:54px;
  height:54px;
  margin:0 auto 16px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:25px;
  font-weight:900;
}
.popup-success .popup-icon{
  background:rgba(37,211,102,.13);
  color:#128c3a;
}
.popup-error .popup-icon{
  background:rgba(220,38,38,.12);
  color:#b91c1c;
}
.popup-box p{
  margin:0 0 18px;
  color:#333;
  font-size:16px;
  line-height:1.45;
}
.popup-box button{
  min-width:110px;
  min-height:42px;
  border:0;
  border-radius:999px;
  background:#111;
  color:#fff;
  font-weight:850;
  cursor:pointer;
}
@media(max-width:1100px){
  .quote-inner{
    grid-template-columns:1fr;
  }
  .quote-form-card{
    max-width:760px;
  }
}
@media(max-width:920px){
  .quote-hero{
    padding:230px 24px 78px;
  }
}
@media(max-width:680px){
  .quote-hero{
    padding:235px 20px 64px;
  }
  .quote-intro h1{
    font-size:34px;
  }
  .quote-points,
  .quote-field-grid{
    grid-template-columns:1fr;
  }
  .quote-form-card{
    padding:24px 18px;
  }
  .preview-grid{
    grid-template-columns:repeat(3,1fr);
  }
}


/* v52: lżejszy lewy blok formularza */
.quote-inner{
  grid-template-columns:minmax(0,.62fr) minmax(520px,1fr);
  gap:62px;
}
.quote-intro{
  padding-top:36px;
}
.quote-intro h1{
  max-width:520px;
  font-size:clamp(34px,3.35vw,52px);
  line-height:1.08;
  font-weight:760;
  letter-spacing:-.9px;
}
.quote-intro p{
  max-width:520px;
  font-size:17px;
  line-height:1.62;
}
.quote-points{
  display:none !important;
}
.quote-form-card{
  max-width:780px;
  width:100%;
}
@media(max-width:1100px){
  .quote-inner{
    grid-template-columns:1fr;
    gap:34px;
  }
  .quote-intro{
    padding-top:0;
  }
  .quote-intro h1,
  .quote-intro p{
    max-width:760px;
  }
}
@media(max-width:680px){
  .quote-intro h1{
    font-size:32px;
  }
}


/* v53: naprawa układu formularza — formularz po prawej stronie */
.quote-hero{
  padding-top:205px;
  padding-bottom:92px;
}
.quote-inner{
  display:grid !important;
  grid-template-columns:minmax(360px, 0.82fr) minmax(620px, 1.18fr) !important;
  gap:58px !important;
  align-items:start !important;
}
.quote-intro{
  padding-top:38px;
  max-width:560px;
}
.quote-intro h1{
  max-width:560px;
  font-size:clamp(34px,3.2vw,50px);
}
.quote-intro p{
  max-width:540px;
}
.quote-form-card{
  width:100%;
  max-width:820px;
  justify-self:end;
}
@media(max-width:1250px){
  .quote-inner{
    grid-template-columns:minmax(300px, .75fr) minmax(560px, 1.25fr) !important;
    gap:40px !important;
  }
  .quote-form-card{
    max-width:760px;
  }
}
@media(max-width:1050px){
  .quote-inner{
    grid-template-columns:1fr !important;
    gap:32px !important;
  }
  .quote-intro{
    max-width:760px;
    padding-top:0;
  }
  .quote-intro h1,
  .quote-intro p{
    max-width:760px;
  }
  .quote-form-card{
    justify-self:start;
    max-width:760px;
  }
}


/* v54: formularz wyceny podniesiony na desktopie */
@media(min-width:1051px){
  .quote-form-card{
    margin-top:-145px;
  }
  .quote-intro{
    padding-top:0;
  }
  .quote-hero{
    padding-top:225px;
  }
}
@media(min-width:1251px){
  .quote-form-card{
    margin-top:-125px;
  }
}
@media(max-width:1050px){
  .quote-form-card{
    margin-top:0;
  }
}


/* v55: mobilne menu hamburger */
.mobile-menu-toggle{
  display:none;
  width:46px;
  height:42px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:10px;
  background:rgba(255,255,255,.04);
  align-items:center;
  justify-content:center;
  flex-direction:column;
  gap:6px;
  cursor:pointer;
}
.mobile-menu-toggle span{
  width:21px;
  height:2px;
  display:block;
  border-radius:999px;
  background:#fff;
  transition:transform .22s ease, opacity .22s ease;
}
.site-head.nav-open .mobile-menu-toggle span:nth-child(1){
  transform:translateY(8px) rotate(45deg);
}
.site-head.nav-open .mobile-menu-toggle span:nth-child(2){
  opacity:0;
}
.site-head.nav-open .mobile-menu-toggle span:nth-child(3){
  transform:translateY(-8px) rotate(-45deg);
}

@media(max-width:760px){
  .topbar{
    height:auto;
    padding:7px 0;
  }
  .topbar-inner{
    min-height:0;
    height:auto;
    justify-content:center;
    gap:8px 14px;
    flex-wrap:wrap;
    padding:0 12px;
  }
  .topbar-item{
    font-size:11px;
    gap:5px;
  }
  .topbar-icon,
  .topbar-icon svg{
    width:13px;
    height:13px;
  }
  .topbar-contact-group{
    gap:7px;
  }
  .topbar-whatsapp{
    min-height:19px;
    padding:3px 8px;
    font-size:10px;
  }

  .site-head{
    position:sticky;
    top:0;
    z-index:1200;
  }
  .head-inner{
    position:relative;
    min-height:92px;
    padding:14px 18px;
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:center;
    gap:14px;
  }
  .brand-title{
    font-size:clamp(22px,6vw,29px);
    letter-spacing:.18em;
    white-space:nowrap;
  }
  .brand-sub{
    font-size:11px;
    letter-spacing:.18em;
  }
  .brand-rule{
    max-width:100%;
  }

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

  .nav{
    position:absolute;
    left:18px;
    right:18px;
    top:calc(100% - 4px);
    z-index:1300;
    display:none;
    grid-column:1 / -1;
    flex-direction:column;
    align-items:stretch;
    gap:0;
    padding:12px;
    border:1px solid rgba(216,169,143,.25);
    border-radius:14px;
    background:rgba(10,10,10,.96);
    box-shadow:0 22px 50px rgba(0,0,0,.42);
    backdrop-filter:blur(10px);
  }
  .site-head.nav-open .nav{
    display:flex;
  }
  .nav a{
    width:100%;
    min-height:44px;
    display:flex;
    align-items:center;
    justify-content:flex-start;
    padding:0 13px;
    border-radius:9px;
    font-size:14px;
    color:#fff;
  }
  .nav a:hover{
    background:rgba(255,255,255,.06);
  }
  .nav .btn{
    justify-content:center;
    min-height:46px;
    margin-top:8px;
    color:#111;
  }
  .nav .circle{
    width:100%;
    height:42px;
    border-radius:9px;
    justify-content:center;
    margin-top:6px;
  }

  .hero{
    padding-top:94px;
  }
  .quote-hero{
    padding-top:180px;
  }
  .privacy-hero{
    padding-top:180px;
  }
  .old-map-section{
    padding-top:180px;
  }
}

@media(max-width:430px){
  .brand-title{
    font-size:22px;
    letter-spacing:.13em;
  }
  .brand-sub{
    font-size:10px;
    letter-spacing:.12em;
  }
  .head-inner{
    padding-left:15px;
    padding-right:15px;
  }
  .nav{
    left:15px;
    right:15px;
  }
}


/* v56: mniej pustej przestrzeni pod menu na telefonie */
@media(max-width:760px){
  .hero{
    padding-top:34px !important;
    min-height:calc(100vh - 132px);
    display:flex;
    align-items:flex-start;
  }
  .hero-inner,
  .hero .hero-inner{
    padding-top:0 !important;
    margin-top:0 !important;
  }
  .hero-copy-v35{
    margin-top:0 !important;
  }
  .hero-copy-v35 .hero-badge{
    margin-bottom:12px;
  }
  .hero-copy-v35 h1{
    font-size:clamp(31px,8.2vw,39px);
    line-height:1.04;
  }
  .hero-copy-v35 .hero-accent-row{
    margin-top:8px;
  }
  .hero-copy-v35 p{
    margin-top:12px;
    font-size:15px;
    line-height:1.45;
  }
  .hero .hero-copy-v35 + .hero-actions{
    margin-top:18px;
  }
}

@media(max-width:430px){
  .hero{
    padding-top:28px !important;
    min-height:calc(100vh - 126px);
  }
}


/* v57: delikatnie mniejszy hero na telefonie */
@media(max-width:760px){
  .hero-copy-v35 .hero-badge{
    min-height:25px;
    padding:0 9px;
    font-size:9.5px;
    letter-spacing:.045em;
    margin-bottom:10px;
  }
  .hero-copy-v35 h1{
    font-size:clamp(28px,7.4vw,34px);
    line-height:1.05;
    letter-spacing:-.6px;
  }
  .hero-copy-v35 .hero-accent-text{
    font-size:clamp(18px,5vw,23px);
    line-height:1.08;
  }
  .hero-copy-v35 p{
    max-width:92%;
    font-size:14px;
    line-height:1.42;
    margin-top:10px;
  }
  .hero .hero-copy-v35 + .hero-actions{
    margin-top:15px;
    gap:10px;
  }
  .hero-actions a,
  .hero-actions .primary,
  .hero-actions .secondary{
    min-height:44px;
    padding:0 18px;
    font-size:14px;
  }
}

@media(max-width:430px){
  .hero-copy-v35 h1{
    font-size:31px;
  }
  .hero-copy-v35 .hero-accent-text{
    font-size:20px;
  }
  .hero-copy-v35 p{
    font-size:13.5px;
  }
}


/* v58: jeszcze mniej pustej przestrzeni między menu a hero na telefonie */
@media(max-width:760px){
  .hero{
    padding-top:8px !important;
    min-height:calc(100vh - 118px);
    background-position:center top;
  }
  .hero-inner{
    align-items:flex-start !important;
  }
  .hero-copy-v35{
    margin-top:-4px !important;
  }
  .hero-copy-v35 .hero-badge{
    margin-bottom:9px;
  }
}

@media(max-width:430px){
  .hero{
    padding-top:4px !important;
    min-height:calc(100vh - 112px);
  }
  .hero-copy-v35{
    margin-top:-8px !important;
  }
}


/* v59: hero mobile jeszcze wyżej i bardziej zwarty */
@media(max-width:760px){
  .hero{
    min-height:calc(100vh - 150px) !important;
    padding-top:0 !important;
    padding-bottom:28px !important;
    background-position:center 18%;
  }
  .hero-inner{
    min-height:auto !important;
    height:auto !important;
    padding-top:0 !important;
    padding-bottom:0 !important;
    transform:translateY(-58px);
  }
  .hero-copy-v35{
    margin-top:0 !important;
  }
}

@media(max-width:430px){
  .hero{
    min-height:calc(100vh - 155px) !important;
    padding-bottom:22px !important;
    background-position:center 16%;
  }
  .hero-inner{
    transform:translateY(-68px);
  }
}


/* v60: usunięcie pustego fragmentu zdjęcia pod menu na mobile */
@media(max-width:760px){
  /* Strona główna */
  .hero{
    min-height:auto !important;
    height:auto !important;
    padding-top:0 !important;
    padding-bottom:34px !important;
    display:block !important;
    background-position:center 32% !important;
  }
  .hero-inner{
    min-height:auto !important;
    height:auto !important;
    padding-top:145px !important;
    padding-bottom:0 !important;
    transform:none !important;
    display:block !important;
  }
  .hero-copy-v35{
    margin-top:0 !important;
  }

  /* Podstrony z hero / dużym topem */
  .quote-hero,
  .privacy-hero,
  .local-seo-hero{
    padding-top:135px !important;
    padding-bottom:54px !important;
    min-height:auto !important;
    background-position:center 32% !important;
  }

  /* Podstrony lokalne w jasnym stylu */
  .local-page,
  .local-light-page{
    padding-top:0 !important;
  }
  .local-wrap{
    padding-top:42px !important;
  }

  /* Zasięg działania */
  .old-map-section{
    padding-top:132px !important;
  }
}

@media(max-width:430px){
  .hero-inner{
    padding-top:132px !important;
  }
  .quote-hero,
  .privacy-hero,
  .local-seo-hero{
    padding-top:124px !important;
  }
  .old-map-section{
    padding-top:124px !important;
  }
}


/* v61: mocne skrócenie pustej przestrzeni w hero na telefonie */
@media(max-width:760px){
  .hero{
    position:relative !important;
    min-height:auto !important;
    height:auto !important;
    padding:0 0 32px !important;
    display:block !important;
    background-position:center top !important;
  }

  .hero-inner{
    position:relative !important;
    min-height:0 !important;
    height:auto !important;
    padding-top:72px !important;
    padding-bottom:0 !important;
    display:block !important;
    transform:none !important;
  }

  .hero-copy-v35{
    margin-top:0 !important;
    transform:none !important;
  }

  .hero-copy-v35 .hero-badge{
    margin-bottom:8px !important;
  }
}

@media(max-width:430px){
  .hero-inner{
    padding-top:58px !important;
  }
}


/* v62: realne skrócenie pustego fragmentu zdjęcia na mobile */
@media(max-width:760px){
  body .hero{
    height:auto !important;
    min-height:0 !important;
    padding:0 0 30px !important;
    display:block !important;
    overflow:hidden !important;

    /* zamiast pokazywać górę zdjęcia z pustą ścianą, przesuwamy kadr */
    background-position:center 56% !important;
    background-size:cover !important;
  }

  body .hero::before,
  body .hero:before,
  body .hero::after,
  body .hero:after{
    display:none !important;
    content:none !important;
  }

  body .hero .hero-inner{
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    padding:34px 20px 0 !important;
    margin:0 !important;
    display:block !important;
    align-items:initial !important;
    justify-content:initial !important;
    transform:none !important;
  }

  body .hero .hero-copy-v35{
    margin:0 !important;
    padding:0 !important;
    transform:none !important;
    max-width:100% !important;
  }

  body .hero .hero-copy-v35 .hero-badge{
    margin:0 0 10px !important;
  }

  body .hero .hero-copy-v35 h1{
    margin:0 !important;
  }

  body .hero .hero-copy-v35 + .hero-actions{
    margin-top:15px !important;
  }
}

@media(max-width:430px){
  body .hero .hero-inner{
    padding-top:24px !important;
  }
}


/* v63: poprawka właściwej klasy .hero-title — realne usunięcie pustej przestrzeni */
@media(max-width:760px){
  /* Strona główna — właściwy kontener tekstu to .hero-title */
  .hero{
    min-height:auto !important;
    height:auto !important;
    display:block !important;
    padding:0 !important;
  }

  .hero-bg{
    background-position:center 28% !important;
    background-size:cover !important;
  }

  .hero-title{
    padding:62px 20px 34px !important;
    margin:0 !important;
    min-height:0 !important;
    height:auto !important;
    transform:none !important;
  }

  .hero-copy-v35{
    margin:0 !important;
    padding:0 !important;
  }

  .hero-copy-v35 .hero-badge{
    margin-bottom:9px !important;
  }

  .hero-copy-v35 h1{
    font-size:clamp(28px,7.2vw,34px) !important;
    line-height:1.05 !important;
  }

  .hero-copy-v35 .hero-accent-text{
    font-size:clamp(18px,4.8vw,22px) !important;
  }

  .hero-copy-v35 p{
    max-width:92% !important;
    margin-top:10px !important;
    font-size:13.5px !important;
    line-height:1.42 !important;
  }

  .hero-actions{
    margin-top:14px !important;
    gap:10px !important;
  }

  .hero-actions a,
  .hero-actions .primary,
  .hero-actions .secondary{
    min-height:42px !important;
    padding:0 16px !important;
    font-size:14px !important;
  }

  /* Inne podstrony — zmniejszamy pustą przestrzeń pod menu */
  .quote-hero,
  .privacy-hero,
  .local-seo-hero{
    padding-top:56px !important;
    padding-bottom:52px !important;
    min-height:auto !important;
    background-position:center 28% !important;
  }

  .old-map-section{
    padding-top:58px !important;
  }

  .local-wrap{
    padding-top:34px !important;
  }
}

@media(max-width:430px){
  .hero-title{
    padding-top:48px !important;
    padding-bottom:30px !important;
  }

  .quote-hero,
  .privacy-hero,
  .local-seo-hero{
    padding-top:48px !important;
  }

  .old-map-section{
    padding-top:48px !important;
  }
}


/* v64: dynamiczne opinie klientów */
.dynamic-reviews-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:30px;
}
.dynamic-review-card{
  min-height:320px;
}
.dynamic-review-card .review-text{
  color:#ddd;
  font-style:italic;
  line-height:1.6;
}
.stars .stars-full{
  color:#d8a98f;
}
.stars .stars-empty{
  color:rgba(216,169,143,.22);
}
.review-read-more{
  display:inline-flex;
  padding:0;
  margin-top:2px;
  border:0;
  background:transparent;
  color:#d8a98f;
  cursor:pointer;
  font:inherit;
  font-size:12px;
  font-weight:800;
}
.review-read-more:hover{
  color:#fff;
}
@media(max-width:1024px){
  .dynamic-reviews-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}
@media(max-width:600px){
  .dynamic-reviews-grid{
    grid-template-columns:1fr;
  }
  .dynamic-review-card{
    min-height:280px;
  }
}


/* v65: opinie — czytaj więcej niżej i rozsuwanie tylko klikniętej karty */
.dynamic-reviews-grid{
  align-items:start !important;
}
.dynamic-review-card{
  align-self:start !important;
  height:auto !important;
  display:flex;
  flex-direction:column;
}
.dynamic-review-card .review-text{
  margin-bottom:12px;
}
.review-read-more{
  margin-top:10px !important;
  margin-bottom:20px !important;
  align-self:flex-start;
  line-height:1.2;
}
.dynamic-review-card .review-separator{
  margin-top:auto;
}
.dynamic-review-card:has(.review-read-more) .review-separator{
  margin-top:0;
}


/* v66: równe boxy opinii, dopiero rozwinięta karta rośnie */
.dynamic-reviews-grid{
  align-items:start !important;
}
.dynamic-review-card{
  height:330px !important;
  min-height:330px !important;
  overflow:hidden;
}
.dynamic-review-card .review-text{
  margin-bottom:0;
}
.dynamic-review-card .review-separator{
  margin-top:auto !important;
}
.dynamic-review-card.review-expanded{
  height:auto !important;
  min-height:330px !important;
  overflow:visible;
}
.dynamic-review-card.review-expanded .review-separator{
  margin-top:22px !important;
}
.review-read-more{
  margin-top:16px !important;
  margin-bottom:18px !important;
}
@media(max-width:1024px){
  .dynamic-review-card{
    height:320px !important;
    min-height:320px !important;
  }
  .dynamic-review-card.review-expanded{
    min-height:320px !important;
  }
}
@media(max-width:600px){
  .dynamic-review-card{
    height:300px !important;
    min-height:300px !important;
  }
  .dynamic-review-card.review-expanded{
    min-height:300px !important;
  }
}


/* v67: opinie bez ucinania zawartości */
.dynamic-reviews-grid{
  align-items:start !important;
}
.dynamic-review-card{
  height:360px !important;
  min-height:360px !important;
  overflow:visible !important;
  display:flex !important;
  flex-direction:column !important;
}
.dynamic-review-card .stars{
  flex:0 0 auto;
}
.dynamic-review-card .review-text{
  flex:0 0 auto;
  margin-bottom:0 !important;

  /* zabezpieczenie, żeby skrócona treść nie wypychała autora poza kartę */
  display:-webkit-box;
  -webkit-line-clamp:6;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.dynamic-review-card .review-read-more{
  flex:0 0 auto;
  margin-top:16px !important;
  margin-bottom:18px !important;
}
.dynamic-review-card .review-separator{
  flex:0 0 auto;
  margin-top:auto !important;
}
.dynamic-review-card strong,
.dynamic-review-card span{
  flex:0 0 auto;
}
.dynamic-review-card.review-expanded{
  height:auto !important;
  min-height:360px !important;
}
.dynamic-review-card.review-expanded .review-text{
  display:block;
  -webkit-line-clamp:unset;
  overflow:visible;
}
.dynamic-review-card.review-expanded .review-separator{
  margin-top:22px !important;
}
@media(max-width:1024px){
  .dynamic-review-card{
    height:350px !important;
    min-height:350px !important;
  }
  .dynamic-review-card.review-expanded{
    min-height:350px !important;
  }
}
@media(max-width:600px){
  .dynamic-review-card{
    height:320px !important;
    min-height:320px !important;
  }
  .dynamic-review-card.review-expanded{
    min-height:320px !important;
  }
}


/* v68: mała powiewająca flaga Polski zamiast napisu „Polska” */
.topbar-location-name{
  display:inline-flex;
  align-items:center;
}
.pl-flag-wave{
  position:relative;
  display:inline-flex;
  width:24px;
  height:16px;
  margin-left:6px;
  transform-origin:left center;
  filter:drop-shadow(0 1px 2px rgba(0,0,0,.35));
}
.pl-flag-wave:before{
  content:"";
  position:absolute;
  left:-3px;
  top:-1px;
  width:1px;
  height:18px;
  background:rgba(255,255,255,.65);
  border-radius:999px;
}
.pl-flag-wave span{
  position:absolute;
  inset:0;
  border-radius:2px;
  overflow:hidden;
  background:linear-gradient(180deg,#fff 0 50%,#dc143c 50% 100%);
  clip-path:polygon(0 0, 100% 5%, 94% 50%, 100% 95%, 0 100%);
  animation:plFlagWave 2.4s ease-in-out infinite;
  transform-origin:left center;
}
@keyframes plFlagWave{
  0%,100%{
    transform:skewY(0deg) scaleX(1);
  }
  50%{
    transform:skewY(-5deg) scaleX(.97);
  }
}
@media(max-width:760px){
  .pl-flag-wave{
    width:21px;
    height:14px;
    margin-left:5px;
  }
  .pl-flag-wave:before{
    height:16px;
  }
}


/* v69: flaga Polski bez pionowej kreski */
.pl-flag-wave:before{
  display:none !important;
  content:none !important;
}
.pl-flag-wave{
  margin-left:7px;
}


/* v71: formularz wyceny sam na środku strony */
.quote-inner{
  grid-template-columns:1fr !important;
  max-width:860px !important;
  justify-items:center !important;
  gap:0 !important;
}
.quote-form-card{
  justify-self:center !important;
  margin:0 auto !important;
  max-width:820px !important;
  width:100% !important;
}
.quote-hero{
  padding-top:210px !important;
  padding-bottom:92px !important;
}
@media(min-width:1051px){
  .quote-form-card{
    margin-top:0 !important;
  }
}
@media(max-width:760px){
  .quote-hero{
    padding-top:56px !important;
    padding-bottom:60px !important;
  }
}

/* v71: więcej oddechu pod napisami w stopce */
.contact-strip,
.footer-contact,
.footer-top,
.contact-band{
  padding-bottom:72px !important;
}
footer{
  padding-top:24px !important;
  padding-bottom:30px !important;
  line-height:1.8 !important;
}
@media(max-width:760px){
  .contact-strip,
  .footer-contact,
  .footer-top,
  .contact-band{
    padding-bottom:54px !important;
  }
  footer{
    padding-top:22px !important;
    padding-bottom:32px !important;
  }
}


/* v72: większy odstęp pod tekstem w stopce */
footer{
  padding-bottom:72px !important;
}
@media(max-width:760px){
  footer{
    padding-bottom:64px !important;
  }
}


/* v74: sekcja O nas pod usługami */
.services + .section.home-intro{
  padding-top:28px !important;
}
@media(max-width:760px){
  .services + .section.home-intro{
    padding-top:18px !important;
  }
}


/* v75: realizacje bez nagłówka "Wybrane realizacje" */
.projects,
.realizations,
.realizations-section,
.portfolio-section{
  padding-top:52px !important;
}
@media(max-width:760px){
  .projects,
  .realizations,
  .realizations-section,
  .portfolio-section{
    padding-top:38px !important;
  }
}


/* v76: usunięty pusty nagłówek/kreska nad realizacjami */
.realizations-head.compact:empty,
.realizations-head.compact .label-title:empty{
  display:none !important;
}
.realizations-section{
  padding-top:44px !important;
}
@media(max-width:760px){
  .realizations-section{
    padding-top:32px !important;
  }
}


/* v77: równe odstępy nad i pod realizacjami */
.realizations-section{
  padding-top:58px !important;
  padding-bottom:58px !important;
}
.realizations-marquee{
  margin:0 !important;
}
.realizations-track{
  align-items:center !important;
}
@media(max-width:760px){
  .realizations-section{
    padding-top:42px !important;
    padding-bottom:42px !important;
  }
}
