@charset "UTF-8";
/* ═══════════════════════════════════════════════════════════════════
   MTL NIERUCHOMOŚCI — strona publiczna
   Real Estate Design System: ciepła biel + beż + szałwia, krój Manrope.
   Miedź WYŁĄCZNIE jako linia włosowa i drobny detal — nigdy jako płaszczyzna.
   ═══════════════════════════════════════════════════════════════════ */

@font-face {
  font-family: "Manrope";
  src: url("/statyczne/fonty/Manrope.ttf") format("truetype");
  font-weight: 200 800;
  font-display: swap;
}

:root {
  --sand-25:#FBFAF7; --sand-50:#F5F1EA; --sand-100:#EAE5DB; --sand-200:#DCD6CA;
  --stone-500:#8A857C; --stone-700:#565149; --ink-900:#1F1E1B;
  --sage-50:#EDF0EA; --sage-100:#DCE2D6; --sage-300:#A8B49F;
  --sage-500:#7C8C72; --sage-700:#5A6851; --sage-900:#39422F;
  --copper:#B47854; --amber:#C08B4A;
  --r:6px;
  --cien-karty:0 10px 26px rgba(60,56,48,.08);
  --cien-panelu:0 18px 44px rgba(60,56,48,.18);
  --szer:1180px;
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:"Manrope",system-ui,-apple-system,"Segoe UI",sans-serif;
  background:var(--sand-25); color:var(--ink-900);
  font-size:17px; line-height:1.6; -webkit-font-smoothing:antialiased;
}
img{max-width:100%; display:block}
a{color:inherit; text-decoration:none}
.wrap{max-width:var(--szer); margin:0 auto; padding:0 40px}

h1,h2,h3,h4{font-weight:600; letter-spacing:-.018em; line-height:1.16; color:var(--ink-900)}
h1{font-size:48px} h2{font-size:36px} h3{font-size:25px} h4{font-size:19px}
p{color:var(--stone-700)}
strong{font-weight:700; color:var(--ink-900)}

/* nadtytuł — jedyne miejsce na wersaliki */
.nadtytul{
  display:flex; align-items:center; gap:14px;
  font-size:13px; font-weight:600; letter-spacing:.16em; text-transform:uppercase;
  color:var(--sage-700);
}
.nadtytul::before{content:""; width:26px; height:2px; background:var(--copper); flex:none}
.nadtytul.srodek{justify-content:center}

/* ─────────────────────────────────────────── przyciski */
.btn,.btn-obrys,.btn-tekst{
  display:inline-flex; align-items:center; justify-content:center; gap:9px;
  font-family:inherit; font-weight:600; border-radius:var(--r); cursor:pointer;
  border:none; transition:background .15s, border-color .15s, color .15s;
  text-align:center;
}
.btn{background:var(--sage-700); color:#fff; font-size:15px; padding:15px 26px;
     box-shadow:0 6px 16px rgba(60,56,48,.16)}
.btn:hover{background:var(--sage-900)}
.btn-obrys{background:transparent; color:var(--sage-700); font-size:15px; padding:13px 24px;
           border:2px solid var(--sage-700)}
.btn-obrys:hover{background:var(--sage-50)}
.btn-tekst{color:var(--sage-700); font-size:15px; padding:6px 0; border-bottom:1px solid var(--copper);
           border-radius:0}
.btn-jasny{background:#fff; color:var(--sage-700); border:1px solid var(--sand-200)}
.btn-jasny:hover{background:var(--sand-50)}
.btn.maly,.btn-obrys.maly{font-size:14px; padding:10px 18px}
.btn[disabled]{background:var(--sand-100); color:var(--stone-500); box-shadow:none; cursor:default}

/* ─────────────────────────────────────────── nagłówek strony */
header.gora{
  position:sticky; top:0; z-index:60;
  background:rgba(251,250,247,.94); backdrop-filter:blur(9px);
  border-bottom:1px solid var(--sand-200);
}
.gora-rzad{display:flex; align-items:center; justify-content:space-between; height:88px; gap:24px}
.znak{display:flex; flex-direction:column; flex:none}
.znak img{height:29px; width:auto}
.znak .podpis{
  font-size:8.5px; letter-spacing:.34em; color:var(--stone-700); font-weight:700;
  border-top:1px solid var(--copper); padding-top:5px; margin-top:5px; width:180px;
}
header.gora .wrap{max-width:1280px}
nav.menu{display:flex; align-items:center; gap:22px; font-size:14.5px; font-weight:500;
         color:var(--stone-700); margin-left:auto}
nav.menu a{white-space:nowrap}
nav.menu a:hover{color:var(--ink-900)}
nav.menu a.akt{color:var(--sage-700); font-weight:700}
.gora-akcje{display:flex; align-items:center; gap:16px; flex:none}
.gora-tel{font-size:16px; font-weight:700; letter-spacing:-.01em; white-space:nowrap}
.gora-tel span{display:block; font-size:10px; font-weight:600; letter-spacing:.14em;
               color:var(--stone-500); text-transform:uppercase}
.hamburger{display:none; background:none; border:1px solid var(--sand-200); border-radius:var(--r);
           width:46px; height:42px; cursor:pointer; align-items:center; justify-content:center}
.hamburger span{display:block; width:20px; height:2px; background:var(--ink-900); position:relative}
.hamburger span::before,.hamburger span::after{
  content:""; position:absolute; left:0; width:20px; height:2px; background:var(--ink-900)}
.hamburger span::before{top:-6px} .hamburger span::after{top:6px}

/* ─────────────────────────────────────────── sekcje */
section{padding:88px 0}
section.waska{padding:64px 0}
.tlo-piasek{background:var(--sand-50)}
.tlo-szalwia{background:var(--sage-50)}
.naglowek-sekcji{display:flex; justify-content:space-between; align-items:flex-end;
                 gap:32px; margin-bottom:38px; flex-wrap:wrap}
.naglowek-sekcji h2{margin-top:12px}
.naglowek-sekcji p{margin-top:12px; max-width:620px; font-size:17px}
.srodek{text-align:center}
.srodek .naglowek-sekcji{flex-direction:column; align-items:center}
.srodek .naglowek-sekcji p{margin-left:auto; margin-right:auto}

/* ─────────────────────────────────────────── hero */
.hero{position:relative; min-height:600px; display:flex; align-items:flex-end;
      overflow:hidden; background:var(--sand-100)}
.hero-foto{position:absolute; inset:0}
.hero-foto img{width:100%; height:100%; object-fit:cover}
.hero .wrap{width:100%; position:relative; padding-bottom:56px; padding-top:120px}
.hero-panel{background:rgba(251,250,247,.96); border-radius:var(--r); padding:42px 46px;
            max-width:640px; box-shadow:var(--cien-panelu)}
.hero-panel h1{margin:20px 0 16px; font-size:44px}
.hero-panel p{font-size:18px}
.hero-akcje{display:flex; gap:14px; margin-top:28px; flex-wrap:wrap}
.hero-pusty{background:var(--sand-50); min-height:auto; padding:120px 0 72px; display:block}
.hero-pusty .hero-panel{background:none; box-shadow:none; padding:0; max-width:760px}

/* nagłówek stron wewnętrznych */
.naglowek-strony{padding:78px 0 46px; background:var(--sand-50);
                 border-bottom:1px solid var(--sand-200)}
.naglowek-strony h1{margin:18px 0 14px; max-width:900px}
.naglowek-strony p{font-size:19px; max-width:720px}
.naglowek-strony.ze-zdjeciem{background:none; border:none; padding-bottom:0}
.naglowek-foto{margin-top:38px; border-radius:var(--r); overflow:hidden; height:380px;
               box-shadow:var(--cien-karty)}
.naglowek-foto img{width:100%; height:100%; object-fit:cover}

/* okruszki */
.okruszki{font-size:14px; color:var(--stone-500); font-weight:500; padding:22px 0 0}
.okruszki a:hover{color:var(--sage-700)}
.okruszki span{margin:0 8px; color:var(--sand-200)}

/* ─────────────────────────────────────────── karty ofert */
.siatka{display:grid; grid-template-columns:repeat(3,1fr); gap:26px}
.siatka.dwa{grid-template-columns:repeat(2,1fr)}
.karta{background:#fff; border:1px solid var(--sand-200); border-radius:var(--r);
       overflow:hidden; box-shadow:var(--cien-karty); display:flex; flex-direction:column;
       transition:transform .18s, box-shadow .18s}
.karta:hover{transform:translateY(-3px); box-shadow:0 16px 34px rgba(60,56,48,.13)}
.karta-foto{position:relative; height:250px; background:var(--sand-100); flex:none}
.karta-foto img{width:100%; height:100%; object-fit:cover}
.karta-foto .brak{display:flex; align-items:center; justify-content:center; height:100%;
                  color:var(--stone-500); font-size:14px; font-weight:600}
.chip{position:absolute; left:14px; top:14px; font-size:11px; font-weight:700;
      letter-spacing:.1em; text-transform:uppercase; color:#fff; padding:7px 12px;
      border-radius:3px; background:var(--sage-500)}
.chip.rezerwacja{background:var(--amber)}
.chip.ukryta{background:var(--stone-500)}
.chip.rodzaj{left:auto; right:14px; background:rgba(251,250,247,.94); color:var(--stone-700)}
.karta-tresc{padding:24px; display:flex; flex-direction:column; flex:1}
.karta h3{font-size:21px}
.karta .adres{display:flex; align-items:center; gap:8px; color:var(--stone-500);
              font-size:14px; font-weight:500; margin-top:9px}
.karta .skrot{font-size:15px; color:var(--stone-700); margin-top:12px; line-height:1.55}
.parametry{display:flex; gap:20px; flex-wrap:wrap; border-top:1px solid var(--sand-200);
           margin-top:auto; padding-top:15px}
.parametry span{display:flex; align-items:center; gap:7px; font-size:14px; font-weight:600;
                color:var(--stone-700)}
.parametry.pusta{border-top:none; padding-top:0; margin-top:auto}
.karta-stopka{display:flex; justify-content:space-between; align-items:center; gap:14px;
              margin-top:18px}
.karta-stopka .cena{font-size:24px; font-weight:700; letter-spacing:-.015em}
.karta-stopka .cena.zapytanie{font-size:16px; font-weight:600; color:var(--stone-700)}

/* filtry */
.filtry{display:flex; gap:10px; flex-wrap:wrap; margin-bottom:34px; align-items:center}
.filtr{font-size:14px; font-weight:600; padding:10px 18px; border-radius:var(--r);
       border:1px solid var(--sand-200); background:#fff; color:var(--stone-700)}
.filtr:hover{border-color:var(--sage-300)}
.filtr.akt{background:var(--sage-700); border-color:var(--sage-700); color:#fff}
.filtr .ile{opacity:.65; font-weight:500; margin-left:5px}
.filtry-rozdzial{width:1px; height:26px; background:var(--sand-200); margin:0 6px}

/* pusto */
.pusto{text-align:center; padding:72px 32px; background:var(--sand-50);
       border:1px dashed var(--sand-200); border-radius:var(--r)}
.pusto h3{margin-bottom:10px}
.pusto p{max-width:520px; margin:0 auto 24px}

/* ─────────────────────────────────────────── podstrona oferty */
.oferta-gora{display:grid; grid-template-columns:1fr 380px; gap:44px; align-items:start}
.galeria{border-radius:var(--r); overflow:hidden; box-shadow:var(--cien-karty);
         background:var(--sand-100)}
.galeria-duze{position:relative; height:520px}
.galeria-duze img{width:100%; height:100%; object-fit:cover}
.galeria-duze .chip{left:18px; top:18px}
.galeria-strzalka{position:absolute; top:50%; transform:translateY(-50%);
  width:46px; height:46px; border-radius:50%; background:rgba(251,250,247,.92); border:none;
  cursor:pointer; display:flex; align-items:center; justify-content:center;
  box-shadow:0 6px 16px rgba(60,56,48,.18)}
.galeria-strzalka.lewo{left:16px} .galeria-strzalka.prawo{right:16px}
.galeria-licznik{position:absolute; right:18px; bottom:18px; background:rgba(31,30,27,.72);
  color:#fff; font-size:13px; font-weight:600; padding:6px 12px; border-radius:3px}
.miniatury{display:flex; gap:8px; padding:10px; background:#fff; overflow-x:auto}
.miniatury button{flex:none; width:96px; height:68px; border-radius:4px; overflow:hidden;
  border:2px solid transparent; padding:0; cursor:pointer; background:none}
.miniatury button.akt{border-color:var(--sage-700)}
.miniatury img{width:100%; height:100%; object-fit:cover}

.oferta-panel{background:#fff; border:1px solid var(--sand-200); border-radius:var(--r);
              padding:30px; box-shadow:var(--cien-karty); position:sticky; top:112px}
.oferta-panel h1{font-size:27px; margin:14px 0 8px}
.oferta-panel .adres{display:flex; align-items:center; gap:8px; color:var(--stone-500);
                     font-size:15px; font-weight:500}
.oferta-cena{font-size:34px; font-weight:700; letter-spacing:-.02em; margin:20px 0 4px}
.oferta-cena.zapytanie{font-size:22px}
.oferta-cena-m2{font-size:14px; color:var(--stone-500); font-weight:500}
.oferta-parametry{display:grid; grid-template-columns:1fr 1fr; background:#fff;
  border:1px solid var(--sand-200); border-radius:var(--r); overflow:hidden; margin:24px 0}
.oferta-parametry div{padding:14px 16px; border-top:1px solid var(--sand-200);
  border-left:1px solid var(--sand-200)}
.oferta-parametry div:nth-child(-n+2){border-top:none}
.oferta-parametry div:nth-child(odd){border-left:none}
.oferta-parametry dt{font-size:11px; font-weight:700; letter-spacing:.12em; text-transform:uppercase;
                     color:var(--stone-500); margin-bottom:5px}
.oferta-parametry dd{font-size:17px; font-weight:600}
.oferta-akcje{display:flex; flex-direction:column; gap:10px}
.oferta-akcje .btn,.oferta-akcje .btn-obrys{width:100%}

.oferta-tresc{display:grid; grid-template-columns:1fr 380px; gap:44px; align-items:start;
              margin-top:64px}
.opis{font-size:17px; line-height:1.72}
.opis h2{font-size:27px; margin:34px 0 14px} .opis h3{font-size:21px; margin:26px 0 10px}
.opis p{margin-bottom:16px}
.opis ul,.opis ol{margin:0 0 18px 22px} .opis li{margin-bottom:8px; color:var(--stone-700)}
.opis a{color:var(--sage-700); border-bottom:1px solid var(--copper)}
.atuty{list-style:none; margin:0; display:grid; grid-template-columns:1fr 1fr; gap:12px}
.atuty li{display:flex; gap:11px; align-items:flex-start; font-size:16px; color:var(--stone-700);
          font-weight:500}
.atuty li::before{content:""; flex:none; width:18px; height:18px; margin-top:3px;
  border-radius:50%; background:var(--sage-100);
  box-shadow:inset 0 0 0 2px var(--sage-500)}
.blok{margin-top:52px}
.blok > h2{margin-bottom:18px}
.rzuty{display:grid; grid-template-columns:repeat(2,1fr); gap:18px}
.rzuty figure{background:#fff; border:1px solid var(--sand-200); border-radius:var(--r);
              overflow:hidden; padding:12px}
.rzuty img{width:100%; height:auto}
.film{position:relative; padding-top:56.25%; border-radius:var(--r); overflow:hidden;
      background:var(--sand-100)}
.film iframe{position:absolute; inset:0; width:100%; height:100%; border:none}
.mapa{border-radius:var(--r); overflow:hidden; border:1px solid var(--sand-200); height:380px}
.mapa iframe{width:100%; height:100%; border:none}
.pliki-oferty{list-style:none; display:flex; flex-direction:column; gap:10px}
.pliki-oferty a{display:flex; align-items:center; gap:12px; background:#fff; padding:15px 18px;
  border:1px solid var(--sand-200); border-radius:var(--r); font-weight:600; font-size:15px}
.pliki-oferty a:hover{border-color:var(--sage-300)}

/* ─────────────────────────────────────────── kroki */
.kroki{display:grid; grid-template-columns:repeat(4,1fr); gap:22px}
.kroki.dwa-rzedy{grid-template-columns:repeat(4,1fr)}
.krok{background:#fff; border:1px solid var(--sand-200); border-radius:var(--r); padding:28px 24px}
.krok .nr{display:block; font-size:12px; font-weight:700; letter-spacing:.14em;
          color:var(--sage-700); margin-bottom:16px}
.krok h4{margin-bottom:8px}
.krok p{font-size:15px; line-height:1.6}

/* lista zakresu */
.zakres{list-style:none; display:grid; grid-template-columns:repeat(3,1fr); gap:14px 28px}
.zakres li{display:flex; gap:12px; align-items:flex-start; font-size:16px; font-weight:500;
           color:var(--stone-700); padding-bottom:14px; border-bottom:1px solid var(--sand-200)}
.zakres li::before{content:""; flex:none; width:8px; height:8px; margin-top:8px; border-radius:2px;
                   background:var(--sage-500)}

/* sześć obszarów pracy — cienkie linie, numer, zero ikon i kolorów */
.obszary{display:grid; grid-template-columns:1fr 1fr; gap:0 56px}
.obszar{display:flex; gap:22px; align-items:flex-start; padding:26px 0;
        border-top:1px solid var(--sand-200)}
.obszar .nr{flex:none; font-size:13px; font-weight:700; letter-spacing:.1em;
            color:var(--sage-700); padding-top:5px; min-width:26px}
.obszar h3{font-size:20px; margin-bottom:7px}
.obszar p{font-size:16px; line-height:1.6}

/* dwie karty pomocnicze na stronie głównej — odnośnik zawsze przy dolnej krawędzi */
.karta > .btn-tekst{margin-top:auto; padding-top:20px; align-self:flex-start}

/* sekcja: ile warta jest nieruchomość */
.wartosc{display:flex; justify-content:space-between; align-items:center; gap:44px;
  background:var(--sand-50); border:1px solid var(--sand-200); border-radius:var(--r);
  padding:44px 48px; flex-wrap:wrap}
.wartosc h2{margin:12px 0 12px; font-size:31px; max-width:640px}
.wartosc p{max-width:620px; font-size:17px}
.wartosc .btn{flex:none}

/* dwie kolumny tekst + zdjęcie */
.duo{display:grid; grid-template-columns:1fr 1fr; gap:56px; align-items:center}
.duo.wzdluz{align-items:start}
.duo figure{border-radius:var(--r); overflow:hidden; box-shadow:var(--cien-karty); height:460px}
.duo figure img{width:100%; height:100%; object-fit:cover}
.duo .tresc h2{margin:16px 0 18px}
.duo .tresc p{font-size:17px; margin-bottom:14px}

/* znaczniki miejscowości */
.miejscowosci{display:flex; flex-wrap:wrap; gap:10px; margin-top:24px}
.miejscowosci span{background:#fff; border:1px solid var(--sand-200); border-radius:var(--r);
  padding:9px 16px; font-size:15px; font-weight:600; color:var(--stone-700)}

/* pasek wezwania */
.pasek-cta{display:flex; justify-content:space-between; align-items:center; gap:40px;
  background:#fff; border:1px solid var(--sand-200); border-radius:var(--r); padding:42px 48px;
  box-shadow:var(--cien-karty)}
.pasek-cta h3{font-size:27px}
.pasek-cta p{margin-top:8px; max-width:560px}
.pasek-cta .akcje{display:flex; gap:12px; flex:none; flex-wrap:wrap}

/* ─────────────────────────────────────────── formularze */
.formularz{background:#fff; border:1px solid var(--sand-200); border-radius:var(--r);
           padding:38px 40px; box-shadow:var(--cien-karty)}
.pola{display:grid; grid-template-columns:1fr 1fr; gap:20px}
.pole{display:flex; flex-direction:column; gap:7px}
.pole.szeroko{grid-column:1 / -1}
.pole label{font-size:13px; font-weight:700; letter-spacing:.06em; color:var(--stone-700)}
.pole .podpowiedz{font-size:13px; color:var(--stone-500); font-weight:500}
input[type=text],input[type=email],input[type=tel],input[type=password],input[type=number],
input[type=url],select,textarea{
  font-family:inherit; font-size:16px; color:var(--ink-900); background:#fff;
  border:1px solid var(--sand-200); border-radius:var(--r); padding:13px 15px; width:100%;
  transition:border-color .15s, box-shadow .15s;
}
input:focus,select:focus,textarea:focus{outline:none; border-color:var(--sage-700);
  box-shadow:0 0 0 1px var(--sage-700)}
textarea{resize:vertical; min-height:130px; line-height:1.6}
select{appearance:none; background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%238A857C' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");
  background-repeat:no-repeat; background-position:right 15px center; padding-right:42px}
.zgoda{display:flex; gap:12px; align-items:flex-start; font-size:14px; color:var(--stone-700);
       line-height:1.55}
.zgoda input{margin-top:3px; width:18px; height:18px; accent-color:var(--sage-700); flex:none}
.pulapka{position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden}
.komunikat{padding:16px 20px; border-radius:var(--r); font-size:15px; font-weight:600;
           margin-bottom:24px; border:1px solid}
.komunikat.blad{background:#FBF1EC; border-color:#E5C7B5; color:#8C4A28}
.komunikat.ok{background:var(--sage-50); border-color:var(--sage-300); color:var(--sage-900)}
.wgraj{display:block; border:2px dashed var(--sand-200); border-radius:var(--r); padding:26px;
       text-align:center; background:var(--sand-50); cursor:pointer}
.wgraj svg{margin:0 auto}
.wgraj:hover,.wgraj.nad{border-color:var(--sage-500); background:var(--sage-50)}
.wgraj p{font-size:15px; font-weight:600; color:var(--stone-700)}
.wgraj small{color:var(--stone-500); font-size:13px}
.wybrane-pliki{display:flex; flex-wrap:wrap; gap:8px; margin-top:14px}
.wybrane-pliki span{background:#fff; border:1px solid var(--sand-200); border-radius:4px;
  padding:6px 11px; font-size:13px; font-weight:600; color:var(--stone-700)}

/* ochrona przed botami — widget Cloudflare, w spoczynku niewidoczny */
.ochrona{margin:6px 0 2px}
.ochrona:empty{display:none}
.ochrona .cf-turnstile:not(:empty){margin-bottom:14px}
.ochrona-info{font-size:14px; color:var(--stone-500); margin:10px 0 14px}
.ochrona .cf-turnstile{margin-bottom:12px}
.ochrona-bez-js{font-size:14px; color:var(--stone-700); background:var(--sand-50);
  border:1px solid var(--sand-200); border-radius:var(--r); padding:14px 16px; margin-bottom:14px}

/* obietnica pod formularzem */
.obietnica{list-style:none; display:flex; flex-direction:column; gap:14px}
.obietnica li{display:flex; gap:12px; align-items:flex-start; font-size:16px; font-weight:500;
              color:var(--stone-700)}
.obietnica li::before{content:""; flex:none; width:20px; height:20px; margin-top:2px;
  border-radius:50%; background:var(--sage-100); box-shadow:inset 0 0 0 2px var(--sage-500)}

/* karta kontaktu */
.karta-kontakt{background:#fff; border:1px solid var(--sand-200); border-radius:var(--r);
               padding:32px; box-shadow:var(--cien-karty)}
.karta-kontakt h4{font-size:12px; font-weight:700; letter-spacing:.14em; text-transform:uppercase;
                  color:var(--stone-500); margin-bottom:14px}
.karta-kontakt .duzy-tel{font-size:29px; font-weight:700; letter-spacing:-.02em; display:block}
.karta-kontakt .mail{font-size:17px; font-weight:600; color:var(--sage-700); word-break:break-all}
.karta-kontakt .linia{height:1px; background:var(--sand-200); margin:22px 0}

/* dokumenty */
.dokumenty{display:flex; flex-direction:column; gap:14px}
.dokument{display:flex; align-items:center; gap:22px; background:#fff; padding:22px 26px;
  border:1px solid var(--sand-200); border-radius:var(--r); flex-wrap:wrap}
.dokument .ikona{flex:none; width:46px; height:46px; border-radius:var(--r);
  background:var(--sage-50); display:flex; align-items:center; justify-content:center}
.dokument .info{flex:1; min-width:240px}
.dokument h3{font-size:19px}
.dokument .kat{font-size:12px; font-weight:700; letter-spacing:.1em; text-transform:uppercase;
               color:var(--sage-700); margin-bottom:6px}
.dokument p{font-size:15px; margin-top:6px}
.dokument .pobierz{display:flex; gap:10px; flex:none; flex-wrap:wrap}
.zastrzezenie{font-size:14px; color:var(--stone-500); line-height:1.65; margin-top:32px;
  padding:20px 24px; background:var(--sand-50); border-left:2px solid var(--copper);
  border-radius:0 var(--r) var(--r) 0}

/* ─────────────────────────────────────────── stopka */
footer.dol{border-top:1px solid var(--sand-200); background:var(--sand-50);
           padding:56px 0 40px; margin-top:0}
.dol-siatka{display:grid; grid-template-columns:1.4fr 1fr 1fr 1.1fr; gap:40px}
.dol-siatka h5{font-size:12px; font-weight:700; letter-spacing:.14em; text-transform:uppercase;
               color:var(--stone-500); margin-bottom:16px}
.dol-siatka a,.dol-siatka p{font-size:15px; color:var(--stone-700); line-height:2}
.dol-siatka a:hover{color:var(--sage-700)}
.dol-tel{font-size:24px; font-weight:700; letter-spacing:-.015em; line-height:1.3; display:block}
.dol-mail{font-weight:600; color:var(--sage-700); word-break:break-all}
.dol-dol{border-top:1px solid var(--sand-200); margin-top:40px; padding-top:24px;
  display:flex; justify-content:space-between; gap:24px; flex-wrap:wrap;
  font-size:13px; color:var(--stone-500); line-height:1.7}
.dol-dol a:hover{color:var(--sage-700)}

/* ─────────────────────────────────────────── pasek na telefonie */
.pasek-mobilny{display:none; position:fixed; left:0; right:0; bottom:0; z-index:70;
  background:rgba(251,250,247,.97); border-top:1px solid var(--sand-200);
  padding:10px 14px calc(10px + env(safe-area-inset-bottom)); gap:10px;
  box-shadow:0 -6px 20px rgba(60,56,48,.10)}
.pasek-mobilny a{flex:1; font-size:14px; padding:13px 10px}

/* ─────────────────────────────────────────── telefon i tablet */
@media (max-width:1200px){
  .gora-tel{display:none}
}
@media (max-width:1080px){
  .siatka{grid-template-columns:repeat(2,1fr)}
  .kroki,.kroki.dwa-rzedy{grid-template-columns:repeat(2,1fr)}
  .zakres{grid-template-columns:repeat(2,1fr)}
  .oferta-gora,.oferta-tresc{grid-template-columns:1fr}
  .oferta-panel{position:static}
  nav.menu{display:none}
  .hamburger{display:flex}
}
@media (max-width:860px){
  body{font-size:16px}
  .wrap{padding:0 22px}
  h1{font-size:34px} h2{font-size:28px} h3{font-size:22px}
  section{padding:56px 0}
  .gora-rzad{height:74px}
  .gora-akcje .btn{display:none}
  .gora-tel{display:none}
  .hero{min-height:auto}
  .hero .wrap{padding-top:64px; padding-bottom:32px}
  .hero-panel{padding:28px 24px; max-width:none}
  .hero-panel h1{font-size:31px}
  .hero-akcje .btn,.hero-akcje .btn-obrys{flex:1; min-width:180px}
  .naglowek-strony{padding:44px 0 32px}
  .naglowek-foto{height:230px}
  .siatka,.siatka.dwa{grid-template-columns:1fr}
  .kroki,.kroki.dwa-rzedy,.zakres,.atuty,.rzuty,.obszary{grid-template-columns:1fr}
  .wartosc{flex-direction:column; align-items:flex-start; padding:28px 24px; gap:24px}
  .wartosc h2{font-size:25px}
  .wartosc .btn{width:100%}
  .duo{grid-template-columns:1fr; gap:30px}
  .duo figure{height:280px}
  .galeria-duze{height:280px}
  .oferta-parametry{grid-template-columns:1fr 1fr}
  .oferta-cena{font-size:29px}
  .pasek-cta{flex-direction:column; align-items:flex-start; padding:28px 24px}
  .pasek-cta .akcje{width:100%}
  .pasek-cta .akcje .btn,.pasek-cta .akcje .btn-obrys{flex:1}
  .formularz{padding:24px 20px}
  .pola{grid-template-columns:1fr}
  .dol-siatka{grid-template-columns:1fr 1fr; gap:30px}
  .dokument{gap:16px}
  .dokument .pobierz{width:100%}
  .dokument .pobierz .btn-obrys{flex:1}
  .pasek-mobilny{display:flex}
  body{padding-bottom:72px}
}
@media (max-width:520px){
  .dol-siatka{grid-template-columns:1fr}
  .oferta-parametry{grid-template-columns:1fr}
}

/* menu rozwijane na telefonie */
.menu-mobilne{display:none; position:fixed; inset:0; z-index:80; background:var(--sand-25);
              padding:26px 22px; overflow-y:auto}
.menu-mobilne.otwarte{display:block}
.menu-mobilne .zamknij{position:absolute; right:20px; top:22px; background:none; border:none;
  font-size:30px; line-height:1; cursor:pointer; color:var(--ink-900)}
.menu-mobilne a{display:block; font-size:21px; font-weight:600; padding:15px 0;
                border-bottom:1px solid var(--sand-200)}
.menu-mobilne .btn{margin-top:26px; width:100%}
.menu-mobilne .tel-mob{display:block; font-size:26px; font-weight:700; margin-top:26px}

@media print{
  header.gora,.pasek-mobilny,.pasek-cta,footer.dol{display:none}
}
