/* buyin.ge / rentin.ge — warstwa wizualna: wariant B „Dom aukcyjny” (research MENTORA 2026-09-16 01:22, wdrożenie K3 04:5x).
   Zasady z pomiaru: jedno duże prawdziwe zdjęcie · jeden akcent (mosiądz) poniżej 5 % · szeryf tylko w nagłówkach i cenach ·
   jedna proporcja zdjęcia (4:3) · zero bibliotek animacji · zero pomarańczu i czerwieni poza błędem formularza.
   WSZYSTKIE kolory, kroje i odstępy = zmienne w :root — podmiana palety to jedna zmiana tutaj. */
:root{
  --bg:#0A1420;            /* granat nocny — tło strony */
  --bg-2:#0F1C2B;          /* karta, okno */
  --bg-3:#152537;          /* pole formularza */
  --line:rgba(214,226,238,.15);
  --line-2:rgba(214,226,238,.07);
  --txt:#EAF0F6;
  --txt-2:#9FB0C2;
  --txt-3:#6F8296;
  --brass:#B08D57;         /* jedyny akcent */
  --brass-l:#CBA972;
  --brass-bg:rgba(176,141,87,.12);
  --ge:#28C983;            /* wyłącznie „.ge” w logo i kropka „online” */
  --err:#C9534F;           /* wyłącznie błąd formularza (:user-invalid) */
  --bg-rgb:10,20,32;       /* kanały --bg do półprzezroczystości (nagłówek, menu, nakładki) */
  --map-bg:#0C1826;        /* tło mapy pod kafelkami */
  --uwaga:#E9CD7A;         /* wyłącznie znaczniki robocze [Do potwierdzenia] i pasek podglądu — nigdy element interfejsu */
  --serif:"Newsreader","Noto Serif Georgian",Georgia,"Times New Roman",serif;   /* W13: Noto Georgian = własne pliki z unicode-range (fonts.css), dalej krój systemowy */
  --sans:"Inter","Noto Sans Georgian",system-ui,-apple-system,"Segoe UI",sans-serif;
  --tt:uppercase;          /* kapitaliki etykiet; html[lang=ka] → none (mchedruli nie ma wielkich liter, a przeglądarka zamieniłaby je na mtavruli) */
  --lsk:1;                 /* mnożnik światła między literami etykiet; html[lang=ka] → mniejszy (bez kapitalików szerokie światło rozsypuje wyraz) */
  --r:0px;                 /* ostre krawędzie = dom aukcyjny */
  --wrap:1300px;
  --gutter:30px;
  --foto:4/3;              /* jedna proporcja zdjęć ogłoszeń */
  --intro:1.45s;           /* opóźnienie wejścia treści hero, gdy gra intro; .bez-intro = 0 */
  --ease:cubic-bezier(.2,.7,.2,1);
}
.bez-intro{--intro:.1s}
/* ---------- W13: gruziński — bez kapitalików i z ciaśniejszym światłem; etykiety o krok większe (glify mchedruli są niższe od wersalików łaciny) ---------- */
html[lang=ka]{--tt:none;--lsk:.35}
html[lang=ka] .eyebrow,html[lang=ka] .label,html[lang=ka] .lot .no,html[lang=ka] .searchbar label,html[lang=ka] .filters label,html[lang=ka] .mini-label,
html[lang=ka] .nav,html[lang=ka] .foot-nav,html[lang=ka] .lot .cta,html[lang=ka] .lot .addr,html[lang=ka] .crumbs,html[lang=ka] .facts>* small,
html[lang=ka] .kluczowe div small,html[lang=ka] .params small,html[lang=ka] .count small,html[lang=ka] .side .nr,html[lang=ka] .gal-info,
html[lang=ka] .filters .f-head,html[lang=ka] .oferta-bar .cena small,html[lang=ka] .do-potw,html[lang=ka] .lot .img .tag{font-size:12px}
html[lang=ka] .btn,html[lang=ka] .searchbar button,html[lang=ka] .czat-btn,html[lang=ka] .kb,html[lang=ka] .more,html[lang=ka] .link-u,html[lang=ka] .oferta-bar a{font-size:12.5px}

*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--txt);font:300 16px/1.7 var(--sans);-webkit-font-smoothing:antialiased;overflow-x:hidden;overflow-wrap:anywhere}   /* W13: słowo dłuższe niż kolumna (gruziński, adres) łamie się zamiast wystawać */
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
h1,h2,h3,.serif{font-family:var(--serif);font-weight:300;letter-spacing:-.005em;line-height:1.08;margin:0}
h1{font-size:clamp(38px,5.2vw,72px)}
h2{font-size:clamp(30px,3.6vw,48px)}
h3{font-size:25px}
h1 i,h2 i{font-style:italic;color:var(--brass-l)}
p{margin:0 0 1em}
b,strong{font-weight:500}
.wrap{max-width:var(--wrap);margin:0 auto;padding-inline:var(--gutter)}
.rule{height:1px;background:var(--line)}
.muted{color:var(--txt-2)} .small{font-size:13px} .center{text-align:center}
.eyebrow{font-size:10.5px;letter-spacing:calc(.42em*var(--lsk));text-transform:var(--tt);color:var(--brass);margin:0 0 22px}
.label,.lot .no,.searchbar label,.filters label,.mini-label{font-size:10px;letter-spacing:calc(.24em*var(--lsk));text-transform:var(--tt);color:var(--txt-2)}
.price,.cena{font-family:var(--serif);color:var(--brass-l);font-weight:300}
.more,.link-u{font-size:11.5px;letter-spacing:calc(.26em*var(--lsk));text-transform:var(--tt);color:var(--brass-l);border-bottom:1px solid var(--brass);padding-bottom:5px}
.more{white-space:nowrap}
.more:hover,.link-u:hover{color:var(--txt);border-color:var(--txt)}
section{padding-block:96px}
section.tight{padding-block:56px}
.head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:44px}
.head p{margin:8px 0 0;color:var(--txt-2);max-width:60ch}

/* paski robocze (podgląd) — nigdy na produkcji */
.test-bar{background:#2A2208;color:var(--uwaga);text-align:center;font-size:11.5px;letter-spacing:calc(.12em*var(--lsk));text-transform:var(--tt);padding:6px 12px;position:relative;z-index:50}

/* ---------- PRZYCISKI ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:1px solid var(--brass);background:transparent;color:var(--brass-l);
  font:400 11.5px/1 var(--sans);letter-spacing:calc(.26em*var(--lsk));text-transform:var(--tt);padding:16px 28px;cursor:pointer;transition:.3s;border-radius:var(--r);text-align:center;line-height:1.5;max-width:100%}   /* W13: przycisk łamie się na dwie linie zamiast wystawać poza ekran (dłuższy tekst EN/KA) */
.btn:hover{background:var(--brass);color:#14202C}
.btn-solid{background:var(--brass);color:#14202C}
.btn-solid:hover{background:var(--brass-l)}
.btn-ghost{border-color:var(--line);color:var(--txt-2)}
.btn-ghost:hover{border-color:var(--txt);color:var(--txt);background:transparent}
.btn-block{width:100%}

/* ---------- INTRO: kurtyna + sygnet (tylko strona główna, raz na sesję; klik pomija) ---------- */
#intro{position:fixed;inset:0;z-index:99;background:var(--bg);display:grid;place-items:center;cursor:pointer;animation:curtain .9s cubic-bezier(.65,0,.35,1) 1.25s forwards}
#intro .box{text-align:center;opacity:0;animation:fade .9s ease .2s forwards}
#intro .est{font-size:10.5px;letter-spacing:calc(.42em*var(--lsk));color:var(--brass);margin-bottom:14px;text-transform:var(--tt)}
#intro .mk{font-family:var(--serif);font-size:40px;letter-spacing:calc(.06em*var(--lsk))}
#intro .mk .ge{color:var(--ge)}
#intro .ln{height:1px;background:var(--brass);width:0;margin:20px auto 0;animation:ln .9s var(--ease) .4s forwards}
#intro .skip{position:absolute;bottom:26px;left:0;right:0;text-align:center;font-size:10px;letter-spacing:calc(.3em*var(--lsk));text-transform:var(--tt);color:var(--txt-3);opacity:0;animation:fade .5s ease .6s forwards}
#intro.off,.bez-intro #intro{display:none}
@keyframes fade{to{opacity:1}}
@keyframes ln{to{width:220px}}
@keyframes curtain{to{transform:translateY(-100%);visibility:hidden}}
@keyframes up{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
.wej{opacity:0;animation:up 1s ease both;animation-delay:calc(var(--intro) + var(--d,0s))}

/* ---------- NAGŁÓWEK ---------- */
.top{position:sticky;top:0;z-index:40;background:rgba(var(--bg-rgb),.86);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line-2)}
body.home .top{position:absolute;inset:0 0 auto;background:transparent;backdrop-filter:none;border-bottom:0}
.top-in{display:flex;align-items:center;justify-content:space-between;gap:28px;padding-block:22px}
.logo{font-family:var(--serif);font-size:26px;letter-spacing:calc(.05em*var(--lsk));white-space:nowrap;line-height:1}
.logo .tld{color:var(--ge)}
.nav{display:flex;flex-wrap:wrap;gap:6px 30px;font-size:12px;letter-spacing:calc(.2em*var(--lsk));text-transform:var(--tt);color:var(--txt-2)}
.nav a{white-space:nowrap}   /* W15: `overflow-wrap:anywhere` z W13 łamało pozycje menu w środku słowa („KUPN|O”) — cała pozycja przechodzi do drugiego rzędu, słowo nigdy */
.nav a:hover,.nav a.on{color:var(--brass-l)}
.top-r{display:flex;align-items:center;gap:22px;flex:0 0 auto}
.lang{display:flex;gap:2px;font-size:11px;letter-spacing:calc(.12em*var(--lsk));color:var(--txt-3)}
.lang a{padding:8px 7px;border:1px solid transparent;line-height:1}
.lang a:hover{color:var(--txt)}
.lang a.on{color:var(--brass-l);border-color:var(--brass)}
.lang-foot a.on{color:var(--brass-l)}
.top-tel{font-size:12px;letter-spacing:calc(.18em*var(--lsk));color:var(--txt-2);white-space:nowrap}
/* C18 / PD-1400 (W23): ikony kanałów w nagłówku zamiast cyfr numeru */
.top-ch{display:flex;gap:6px}.top-ch a{width:36px;height:36px;display:grid;place-items:center;color:var(--txt-2);border:1px solid var(--line);transition:.3s}.top-ch a:hover{color:var(--brass-l);border-color:var(--brass)}
.top-tel:hover{color:var(--brass-l)}
.burger{display:none;background:none;border:1px solid var(--line);color:var(--txt);width:44px;height:44px;font-size:0;cursor:pointer;position:relative}   /* W13: ikona zamiast słowa „Menu” — słowo w EN/KA nie mieści się w 44 px; etykieta zostaje w aria-label */
.burger::before{content:"";position:absolute;left:12px;right:12px;top:14px;height:1px;background:currentColor;box-shadow:0 7px 0 currentColor,0 14px 0 currentColor}

/* ---------- HERO: pełny kadr + ramka ---------- */
.hero{position:relative;min-height:100vh;min-height:100svh;display:grid;align-items:center;padding:120px 0 64px}
.hero .frame{position:absolute;inset:88px var(--gutter) 30px;border:1px solid var(--line);z-index:3;pointer-events:none}
.hero .shot{position:absolute;inset:0;overflow:hidden}
.hero .shot img{width:100%;height:100%;object-fit:cover;object-position:50% 45%;animation:zoom 22s ease-out both}
@keyframes zoom{from{transform:scale(1.08)}to{transform:scale(1)}}
.hero .shot::after{content:"";position:absolute;inset:0;background:
  linear-gradient(100deg,rgba(10,20,32,.96) 0%,rgba(10,20,32,.86) 38%,rgba(10,20,32,.6) 70%,rgba(10,20,32,.5) 100%),
  linear-gradient(to top,rgba(10,20,32,.94) 0%,rgba(10,20,32,.28) 42%,transparent 70%)}
.hero-in{position:relative;z-index:4}
.hero h1{max-width:14ch;margin:0 0 22px}
.hero h1.dlugi{font-size:clamp(34px,4.3vw,58px);max-width:18ch}
.lede{max-width:48ch;color:var(--txt-2);font-size:17px;margin:0}
.facts{display:flex;gap:48px;margin-top:40px;flex-wrap:wrap}
.facts>* span{display:block;font-family:var(--serif);font-size:34px;color:var(--brass-l);line-height:1}
.facts>* small{display:block;margin-top:8px;font-size:11px;letter-spacing:calc(.24em*var(--lsk));text-transform:var(--tt);color:var(--txt-2)}
.facts a:hover span{color:var(--txt)}

/* pasek wyszukiwania (hero) */
.searchbar{margin-top:46px;margin-right:340px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:repeat(4,1fr) auto}
.searchbar .c{padding:18px 26px;border-right:1px solid var(--line);min-width:0}
.searchbar .c:first-child{padding-left:0}
.searchbar label{display:block;margin-bottom:4px}
.searchbar select,.searchbar input{width:100%;background:transparent;border:0;color:var(--txt);font:300 16px/1.4 var(--sans);padding:0;outline:0;-webkit-appearance:none;appearance:none}
.searchbar select option{color:#111}
.searchbar input::placeholder{color:var(--txt-3)}
.searchbar button{border:0;background:transparent;color:var(--brass-l);font:400 11.5px/1 var(--sans);letter-spacing:calc(.26em*var(--lsk));text-transform:var(--tt);padding-inline:30px;cursor:pointer;transition:.3s}
.searchbar button:hover{color:var(--txt);background:var(--brass-bg)}
.live{margin-top:14px;font-size:12.5px;color:var(--txt-2);letter-spacing:calc(.1em*var(--lsk))}
.live b{color:var(--brass-l);font-weight:300;font-family:var(--serif);font-size:16px}

/* ---------- CZŁOWIEK: kto prowadzi transakcję (ustalenie 4 MENTORA — miejsce na pierwszym ekranie po hero) ---------- */
.osoba{display:grid;grid-template-columns:minmax(260px,380px) 1fr;gap:64px;align-items:center;border:1px solid var(--line);padding:56px}
.osoba .portret{aspect-ratio:4/5;border:1px solid var(--line);position:relative;background:var(--bg-2);overflow:hidden;filter:saturate(.9) contrast(1.05)}
.osoba .portret img{width:100%;height:100%;object-fit:cover}
.osoba .portret .brak{position:absolute;inset:0;display:grid;place-items:center;text-align:center;padding:24px;color:var(--txt-2);font-size:11px;letter-spacing:calc(.24em*var(--lsk));text-transform:var(--tt);line-height:1.9}
.osoba .portret::after{content:"";position:absolute;inset:14px;border:1px solid var(--line-2);pointer-events:none}
.osoba h2{margin:0 0 18px}
.osoba .cyt{font-family:var(--serif);font-size:clamp(20px,2vw,26px);line-height:1.4;color:var(--txt);max-width:34ch;margin:0 0 26px}
.osoba .cyt i{color:var(--brass-l)}
.osoba .akcje{display:flex;gap:14px;flex-wrap:wrap;align-items:center}
.do-potw{display:inline-block;font-size:10px;letter-spacing:calc(.22em*var(--lsk));text-transform:var(--tt);color:var(--uwaga);border:1px dashed var(--uwaga);opacity:.85;padding:4px 8px;margin-bottom:14px}

/* ---------- LISTA OFERT: siatka włoskowata + numeracja katalogowa ---------- */
.lots{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}
.lot{background:var(--bg);padding:22px;transition:background .5s;display:flex;flex-direction:column;position:relative}
.lot:hover{background:var(--bg-2)}
.lot .no{margin-bottom:16px;display:flex;justify-content:space-between;gap:12px}
.lot .no .ok{color:var(--brass-l)}
.lot .img{aspect-ratio:var(--foto);position:relative;overflow:hidden;background:var(--bg-3);filter:saturate(.9) contrast(1.06)}
.lot .img img{width:100%;height:100%;object-fit:cover;object-position:50% 40%;transition:transform 1.2s var(--ease)}
.lot:hover .img img{transform:scale(1.04)}
.lot .img::after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);background:linear-gradient(to top,rgba(var(--bg-rgb),.88) 0,rgba(var(--bg-rgb),.45) 22%,transparent 55%);pointer-events:none}
.lot .img .tag{position:absolute;left:14px;bottom:12px;z-index:2;font-size:10px;letter-spacing:calc(.22em*var(--lsk));text-transform:var(--tt);color:var(--txt);max-width:62%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:0 1px 2px rgba(0,0,0,.6)}
.lot .img .n{position:absolute;right:14px;bottom:12px;z-index:2;font-size:10.5px;letter-spacing:calc(.18em*var(--lsk));color:var(--txt);text-shadow:0 1px 2px rgba(0,0,0,.6)}
.lot h2,.lot h3{margin:20px 0 4px;font-size:23px}
.lot .addr{font-size:12px;color:var(--txt-2);letter-spacing:calc(.08em*var(--lsk));text-transform:var(--tt)}
.lot .price{font-size:28px;margin-top:16px;line-height:1}
.lot .price small{font-family:var(--sans);font-size:12px;color:var(--txt-2);letter-spacing:calc(.06em*var(--lsk));margin-left:8px}
.lot .meta{font-size:12.5px;color:var(--txt-2);margin-top:8px}
.lot .cta{margin-top:auto;padding-top:16px;border-top:1px solid var(--line);font-size:11px;letter-spacing:calc(.24em*var(--lsk));text-transform:var(--tt);color:var(--txt-2);transition:.3s}
.lot:hover .cta{color:var(--brass-l)}
.lot a.cover{position:absolute;inset:0;z-index:3}
.pusto{grid-column:1/-1;padding:64px 26px;text-align:center;color:var(--txt-2);background:var(--bg)}

/* ---------- LISTA: filtry + wyniki ---------- */
.listing{display:grid;grid-template-columns:240px 1fr;gap:36px;align-items:start}
.filters{position:sticky;top:96px;display:grid;gap:0;border-top:1px solid var(--line)}
.filters .f{padding:16px 0;border-bottom:1px solid var(--line)}
.filters label{display:block;margin-bottom:4px}
.filters select,.filters input[type=number]{width:100%;background:transparent;border:0;color:var(--txt);font:300 15px/1.4 var(--sans);padding:0;outline:0;-webkit-appearance:none;appearance:none}
.filters select option{color:#111}
.filters input::placeholder{color:var(--txt-3)}
.filters .row2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.filters .chk{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--txt-2);padding:12px 0;border-bottom:1px solid var(--line);cursor:pointer}
.filters .chk input{appearance:none;-webkit-appearance:none;width:14px;height:14px;border:1px solid var(--line);background:transparent;margin:0;position:relative;flex:none}
.filters .chk input:checked{border-color:var(--brass);background:var(--brass)}
.filters .f-head{display:none}
.filters .wyczysc{padding:14px 0 0;font-size:11px;letter-spacing:calc(.2em*var(--lsk));text-transform:var(--tt);color:var(--txt-3)}
.filters .wyczysc:hover{color:var(--brass-l)}
.bar{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:26px;flex-wrap:wrap}
.count{font-family:var(--serif);font-size:30px;line-height:1.1}
.count b{color:var(--brass-l);font-weight:300}
.count small{display:block;font-family:var(--sans);font-size:11px;letter-spacing:calc(.24em*var(--lsk));text-transform:var(--tt);color:var(--txt-2);margin-top:8px}
.bar-r{display:flex;gap:18px;align-items:center}
.widok{display:inline-flex;border:1px solid var(--line)}
.widok button{background:transparent;color:var(--txt-2);border:0;padding:12px 16px;font:400 11px/1 var(--sans);letter-spacing:calc(.2em*var(--lsk));text-transform:var(--tt);cursor:pointer}
.widok button.on{color:var(--brass-l);background:var(--brass-bg)}
.widok button:disabled{opacity:.4;cursor:default}
.sort{background:transparent;border:1px solid var(--line);color:var(--txt-2);padding:12px 16px;font:400 11px/1 var(--sans);letter-spacing:calc(.2em*var(--lsk));text-transform:var(--tt);-webkit-appearance:none;appearance:none;cursor:pointer}
.sort option{color:#111}
.crumbs{font-size:11px;letter-spacing:calc(.18em*var(--lsk));text-transform:var(--tt);color:var(--txt-3);padding:22px 0}
.crumbs a:hover{color:var(--brass-l)}

/* K2: nawigacja po wynikach — „Pokaż więcej” + licznik + numeracja skrócona (nigdy pełna lista numerów) */
.wiecej{margin-top:36px;display:grid;justify-items:center;gap:18px}
.wiecej .licz{font-size:12px;letter-spacing:calc(.18em*var(--lsk));text-transform:var(--tt);color:var(--txt-2)}
.wiecej .licz b{color:var(--brass-l);font-weight:400}
.wiecej .pasek{width:220px;height:1px;background:var(--line);position:relative}
.wiecej .pasek i{position:absolute;left:0;top:0;bottom:0;background:var(--brass)}
.pag{display:flex;gap:1px;justify-content:center;margin-top:28px;background:var(--line);border:1px solid var(--line);width:max-content;margin-inline:auto}
.pag a,.pag span{min-width:46px;height:44px;display:grid;place-items:center;background:var(--bg);font-size:12px;letter-spacing:calc(.1em*var(--lsk));color:var(--txt-2);padding-inline:8px}
.pag a:hover{color:var(--brass-l);background:var(--bg-2)}
.pag .on{color:var(--brass-l);background:var(--brass-bg)}
.pag .dots{color:var(--txt-3)}

/* ---------- KARTA OFERTY ---------- */
.det{display:grid;grid-template-columns:1fr 380px;grid-template-areas:"a side" "b side";gap:0 48px;align-items:start}
.det-a{grid-area:a} .det-b{grid-area:b} .side{grid-area:side}
.gal{display:grid;grid-template-columns:2fr 1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line)}
.gal .ph{position:relative;overflow:hidden;background:var(--bg-3);display:block;cursor:zoom-in;filter:saturate(.9) contrast(1.06);aspect-ratio:var(--foto)}
.gal .ph img{width:100%;height:100%;object-fit:cover;object-position:50% 40%}
.gal .ph::after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 0 1px rgba(255,255,255,.06);pointer-events:none}
.gal .ph:first-child{grid-row:1/3}
.gal-1{grid-template-columns:1fr} .gal-1 .ph:first-child{grid-row:auto}
.gal-2{grid-template-columns:1fr 1fr} .gal-2 .ph:first-child{grid-row:auto}
.gal-3{grid-template-columns:2fr 1fr} .gal-4{grid-template-columns:3fr 1fr} .gal-4 .ph:first-child{grid-row:1/4}
.gal .more{position:absolute;inset:0;display:grid;place-items:center;background:rgba(var(--bg-rgb),.62);color:var(--txt);font-family:var(--serif);font-size:22px}
.gal-info{display:flex;justify-content:space-between;gap:16px;padding:12px 0;font-size:11px;letter-spacing:calc(.2em*var(--lsk));text-transform:var(--tt);color:var(--txt-3)}
.gal-info .ok{color:var(--brass-l)}
.h-oferta{margin:8px 0 6px;font-size:clamp(30px,3.4vw,44px)}
.kluczowe{display:flex;gap:40px;flex-wrap:wrap;margin:26px 0 0;padding:26px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.kluczowe div>span{display:block;font-family:var(--serif);font-size:30px;line-height:1;color:var(--txt)}
.kluczowe div small{display:block;margin-top:8px;font-size:10.5px;letter-spacing:calc(.24em*var(--lsk));text-transform:var(--tt);color:var(--txt-2)}
.blok{margin-top:44px}
.blok h2,.blok h3{margin:0 0 18px;font-size:22px}
.params{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}
.params>div{background:var(--bg);padding:14px 18px;font-size:15px}
.params>div:last-child:nth-child(3n+1){grid-column:1/-1} .params>div:last-child:nth-child(3n+2){grid-column:2/-1}
.params small{display:block;font-size:10px;letter-spacing:calc(.24em*var(--lsk));text-transform:var(--tt);color:var(--txt-2);margin-bottom:4px}
.chips{display:flex;gap:1px;flex-wrap:wrap;background:var(--line);border:1px solid var(--line);width:max-content;max-width:100%;margin-top:18px}
.chip{background:var(--bg);padding:8px 14px;font-size:12px;letter-spacing:calc(.08em*var(--lsk));color:var(--txt-2)}
.opis p{max-width:70ch;color:var(--txt-2)}
.side{position:sticky;top:96px;border:1px solid var(--line);padding:30px}
.side .price-big{font-size:40px;line-height:1}
.side .price-big small{font-family:var(--sans);font-size:12px;color:var(--txt-2);letter-spacing:calc(.08em*var(--lsk));margin-left:8px}
.side .pod{margin:10px 0 0;font-size:12.5px;color:var(--txt-2)}
.side .nr{margin-top:18px;padding-top:18px;border-top:1px solid var(--line);font-size:10.5px;letter-spacing:calc(.24em*var(--lsk));text-transform:var(--tt);color:var(--txt-3)}
.side hr{border:0;border-top:1px solid var(--line);margin:22px 0}
.oferta-bar{display:none}
@media (min-width:901px){ body.oferta .dock .pill{display:none} }

/* W17: kontakt — przyciski w jednej grubości kreski, nasze dane wyłącznie z konfiguracji */
.kontakt-btns{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line);margin-top:22px}
.kb{display:flex;align-items:center;justify-content:center;gap:10px;padding:14px 12px;background:var(--bg);font-size:11px;letter-spacing:calc(.2em*var(--lsk));text-transform:var(--tt);color:var(--txt-2);transition:.3s}
.kb:hover{background:var(--brass);color:#14202C}
.kb svg{width:16px;height:16px;flex:none}
.kb.szeroki{grid-column:1/-1}

/* formularz */
.lead{display:grid;gap:1px;background:var(--line);border:1px solid var(--line)}
.lead h2,.lead h3{grid-column:1/-1;background:var(--bg);padding:18px 18px 4px;font-size:20px;margin:0}
.lead input,.lead textarea{width:100%;background:var(--bg);border:0;color:var(--txt);font:300 15px/1.5 var(--sans);padding:14px 18px;outline:0;resize:vertical}
.lead input::placeholder,.lead textarea::placeholder{color:var(--txt-3)}
.lead input:focus,.lead textarea:focus{background:var(--bg-2)}
.lead input:user-invalid,.lead textarea:user-invalid{box-shadow:inset 0 0 0 1px var(--err)}
.lead .btn{border:0;background:var(--brass);color:#14202C;padding:18px}
.lead .btn:hover{background:var(--brass-l)}
.lead .uwaga{grid-column:1/-1;background:var(--bg);padding:10px 18px 16px;font-size:12px;color:var(--txt-3);margin:0}
.lead-strona{max-width:560px;margin-top:36px}
.hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}

/* ---------- MAPA (Leaflet, kafelki bez klucza; filtr = kolory strony) ---------- */
.mapa{border:1px solid var(--line);background:var(--map-bg);overflow:hidden;position:relative}
.mapa-box{margin-bottom:26px}
.mapa-lista{height:560px}
.mapa-info{margin:10px 0 0;font-size:12px;color:var(--txt-2);letter-spacing:calc(.06em*var(--lsk))}
.mapa-oferta{height:360px}
.mapa-brak{padding:44px;text-align:center;color:var(--txt-2);font-size:13px;letter-spacing:calc(.06em*var(--lsk))}
.leaflet-container{background:var(--map-bg);font:inherit}
.leaflet-tile-pane{filter:brightness(.62) invert(1) contrast(2.6) hue-rotate(195deg) saturate(.28) brightness(.72)}
.leaflet-control-attribution{background:rgba(var(--bg-rgb),.8)!important;color:var(--txt-3)!important;font-size:10px}
.leaflet-control-attribution a{color:var(--txt-2)!important}
.leaflet-bar a{background:var(--bg-2)!important;color:var(--txt)!important;border-color:var(--line)!important}
.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:var(--bg-2);color:var(--txt);box-shadow:0 10px 30px rgba(0,0,0,.5);border-radius:0}
.leaflet-popup-content{font:300 13px/1.5 var(--sans);margin:14px 16px}
.leaflet-popup-content a{color:var(--brass-l)}
.pin{display:inline-block;background:var(--bg);color:var(--brass-l);border:1px solid var(--brass);font:400 11px/1 var(--sans);letter-spacing:calc(.12em*var(--lsk));padding:6px 9px;white-space:nowrap;box-shadow:0 2px 10px rgba(0,0,0,.5);cursor:pointer;transition:background .2s,color .2s}
.pin.on,.leaflet-marker-icon:hover .pin{background:var(--brass);color:#14202C}
/* ---------- W17 K2: wyróżniona inwestycja — jedno duże zdjęcie, podpis na gradiencie, opcjonalny link (sekcja istnieje tylko ze zdjęciem) ---------- */
.inwestycja{position:relative;margin:0;overflow:hidden;border:1px solid var(--line);aspect-ratio:21/9;background:var(--bg-3)}
.inwestycja img{display:block;width:100%;height:100%;object-fit:cover;filter:saturate(.9) contrast(1.06)}
.inwestycja .pod{position:absolute;left:0;right:0;bottom:0;padding:120px 30px 28px;background:linear-gradient(to top,rgba(var(--bg-rgb),.94) 0,rgba(var(--bg-rgb),.5) 55%,transparent);display:flex;justify-content:space-between;align-items:flex-end;gap:20px 32px;flex-wrap:wrap}
.inwestycja .pod b{display:block;font-family:var(--serif);font-weight:300;font-size:clamp(24px,2.6vw,38px);line-height:1.1;margin-top:8px;max-width:22ch}
.inwestycja .pod .do-potw{margin-right:10px}
@media (max-width:900px){ .inwestycja{aspect-ratio:4/5} .inwestycja .pod{padding:90px 18px 20px} }
/* ---------- W16: grona pinezek (markercluster) i mikro-kafelek po najechaniu / dotknięciu ---------- */
.grono{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:rgba(var(--bg-rgb),.94);border:1px solid var(--brass);color:var(--brass-l);font:400 12px/1 var(--sans);letter-spacing:calc(.04em*var(--lsk));box-shadow:0 0 0 6px rgba(176,141,87,.16),0 2px 10px rgba(0,0,0,.5);cursor:pointer;transition:background .2s,color .2s}
.grono.duze{width:54px;height:54px;font-size:13px}
.leaflet-marker-icon:hover .grono{background:var(--brass);color:#14202C}
.leaflet-cluster-anim .leaflet-marker-icon,.leaflet-cluster-anim .leaflet-marker-shadow{transition:transform .3s ease-out,opacity .3s ease-in}
.leaflet-cluster-spider-leg{transition:stroke-dashoffset .3s ease-out,stroke-opacity .3s ease-in}
.mk-pop .leaflet-popup-content-wrapper{padding:0;background:var(--bg-2);border:1px solid var(--line);border-radius:0;box-shadow:0 14px 40px rgba(0,0,0,.6)}
.mk-pop .leaflet-popup-content{margin:0;width:240px!important;font:300 13px/1.5 var(--sans)}
.mk-pop .leaflet-popup-tip{background:var(--bg-2)}
.mk{display:block;width:240px;color:var(--txt);text-decoration:none}
.mk img{display:block;width:100%;aspect-ratio:var(--foto);object-fit:cover;object-position:50% 40%;background:var(--bg-3);filter:saturate(.9) contrast(1.06)}
.mk-c{display:flex;align-items:baseline;gap:8px;padding:12px 14px 0}
.mk-c .price{font-size:22px;line-height:1}
.mk-c small{font:400 11px/1 var(--sans);color:var(--txt-2);letter-spacing:calc(.06em*var(--lsk))}
.mk-p{display:block;padding:6px 14px 0;font-size:12.5px;color:var(--txt-2)}
.mk-n{display:flex;justify-content:space-between;gap:10px;padding:10px 14px 12px;font-size:10.5px;letter-spacing:calc(.2em*var(--lsk));text-transform:var(--tt);color:var(--txt-3)}
.mk-n i{font-style:normal;color:var(--brass-l);white-space:nowrap;transition:color .3s}
.mk:hover .mk-n i{color:var(--txt)}

/* ---------- SEKCJE STAŁE: dlaczego / kroki ---------- */
.siatka4{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}
.siatka4>div{background:var(--bg);padding:30px 26px}
.siatka4 .nr{font-family:var(--serif);font-size:34px;color:var(--brass-l);line-height:1;margin-bottom:18px}
.siatka4 b{display:block;font-weight:300;font-size:17px;margin-bottom:8px;font-family:var(--serif);font-size:22px}
.siatka4 span{color:var(--txt-2);font-size:14px}
.band{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--bg-2)}

/* ---------- STRONY STAŁE ---------- */
.page{max-width:820px;padding-bottom:64px}
.page h1{margin-bottom:26px}
.page .tresc{color:var(--txt-2);font-size:17px}
.page .tresc ol,.page .tresc ul{padding-left:1.2em}
.page .tresc li{margin-bottom:.4em}
.biuro{border:1px solid var(--line);padding:30px;margin-top:36px;max-width:640px}
.biuro h2,.biuro h3{margin:0 0 6px;font-size:25px}
.wygasla{border:1px solid var(--line);padding:56px;max-width:820px}
.wygasla .akcje{display:flex;gap:14px;flex-wrap:wrap;margin-top:26px}

/* ---------- STOPKA ---------- */
.foot{border-top:1px solid var(--line);padding-block:56px 40px;margin-top:40px;font-size:12.5px;color:var(--txt-2);letter-spacing:calc(.04em*var(--lsk))}
.foot-in{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}
.foot-in>*{min-width:0}
.foot .logo{font-size:22px;margin-bottom:12px}
.foot-nav{display:grid;gap:8px;font-size:11px;letter-spacing:calc(.2em*var(--lsk));text-transform:var(--tt)}
.foot a:hover{color:var(--brass-l)}
.foot .dol{margin-top:36px;padding-top:18px;border-top:1px solid var(--line-2);font-size:11px;color:var(--txt-3);display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}

/* ---------- DOCK: asystent + kontakt (jeden przycisk, nie trzy bańki) ---------- */
.dock{position:fixed;right:28px;bottom:28px;z-index:45;display:flex;flex-direction:column;align-items:flex-end;gap:12px}
.pill{display:flex;gap:1px;background:var(--line);border:1px solid var(--line)}
.pill a,.pill button{width:46px;height:44px;background:var(--bg-2);display:grid;place-items:center;color:var(--txt-2);cursor:pointer;transition:.3s;border:0;font:inherit;padding:0}
.pill a:hover,.pill button:hover{background:var(--brass);color:#14202C}
.pill svg{width:17px;height:17px;display:block}
.czat-btn{display:inline-flex;align-items:center;gap:9px;background:var(--bg-2);border:1px solid var(--line);color:var(--txt-2);font:400 11.5px/1 var(--sans);letter-spacing:calc(.24em*var(--lsk));text-transform:var(--tt);padding:0 18px;height:44px;cursor:pointer;transition:.3s}
.czat-btn:hover,.czat-btn[aria-expanded=true]{color:var(--brass-l);border-color:var(--brass)}
.czat-btn s{width:6px;height:6px;background:var(--ge);border-radius:50%;text-decoration:none;display:inline-block}

/* W18: okno asystenta — własne, w kolorach strony, domyślnie zwinięte */
.czat{padding:0;position:fixed;right:28px;bottom:132px;z-index:46;width:360px;max-width:calc(100vw - 40px);height:520px;max-height:calc(100vh - 160px);background:var(--bg-2);border:1px solid var(--line);display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.5)}
.czat[hidden]{display:none}
.czat header{display:flex;align-items:center;gap:10px;padding:16px 20px;border-bottom:1px solid var(--line);font-size:11px;letter-spacing:calc(.24em*var(--lsk));text-transform:var(--tt);color:var(--txt-2)}
.czat header b{font-weight:400;color:var(--txt)}
.czat header span{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:9.5px;letter-spacing:calc(.12em*var(--lsk))}
.czat header s{width:6px;height:6px;background:var(--ge);border-radius:50%;text-decoration:none}
.czat header button{background:none;border:0;color:var(--txt-2);font-size:20px;cursor:pointer;line-height:1;padding:0 0 0 10px}
.czat-log{flex:1;overflow:auto;padding:18px 20px;display:grid;gap:10px;align-content:start;font-size:14px;color:var(--txt-2)}
.msg{padding:11px 14px;border:1px solid var(--line);max-width:94%}
.msg.bot{border-color:rgba(176,141,87,.4);color:var(--txt)}
.msg.ja{justify-self:end}
.msg .k{display:block;border:1px solid var(--line);padding:10px 12px;margin-top:10px;background:var(--bg);color:var(--txt-2);font-size:13px}
.msg .k b{display:block;font-family:var(--serif);font-size:17px;color:var(--brass-l);font-weight:300}
.msg .k:hover{border-color:var(--brass)}
.msg .k-img{display:flex;gap:12px;align-items:center;padding:8px}
.msg .k-img img{width:76px;height:57px;object-fit:cover;flex:none}
.czat-form{display:flex;border-top:1px solid var(--line)}
.czat-form input{flex:1;background:transparent;border:0;color:var(--txt);font:300 14px/1.4 var(--sans);padding:16px 20px;outline:0;min-width:0}
.czat-form input::placeholder{color:var(--txt-3)}
.czat-form button{border:0;border-left:1px solid var(--line);background:transparent;color:var(--brass-l);font:400 11px/1 var(--sans);letter-spacing:calc(.24em*var(--lsk));text-transform:var(--tt);padding:0 20px;cursor:pointer}
.czat-form button:hover{background:var(--brass);color:#14202C}

/* podgląd zdjęć (lightbox) */
.lb{position:fixed;inset:0;z-index:80;background:rgba(6,12,20,.96);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:0 0 12px}
.lb[hidden]{display:none}
.lb img{max-width:min(94vw,1600px);max-height:84vh;width:auto;height:auto;object-fit:contain;box-shadow:0 30px 80px rgba(0,0,0,.6)}
.lb .lb-c{color:var(--txt-2);font-size:11px;letter-spacing:calc(.24em*var(--lsk));margin-top:14px}
.lb button{position:absolute;background:var(--bg-2);color:var(--txt);border:1px solid var(--line);width:46px;height:46px;font-size:22px;cursor:pointer;font-family:inherit;line-height:1}
.lb .lb-x{top:18px;right:18px} .lb .lb-p{left:16px;top:50%;transform:translateY(-50%)} .lb .lb-n{right:16px;top:50%;transform:translateY(-50%)}
.lb button:hover{background:var(--brass);color:#14202C;border-color:var(--brass)}

/* ---------- RUCH: pełne wyłączenie dla osób z ustawieniem w systemie ---------- */
@media (prefers-reduced-motion:reduce){
  #intro{display:none!important}
  *{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .wej{opacity:1!important;transform:none!important}
}

/* ---------- TELEFON ---------- */
@media (max-width:1500px){ .nav{gap:6px 20px} .top-in{gap:20px} .top-r{gap:14px} }   /* W15: siedem pozycji + telefon + PL/EN/KA mieszczą się w jednym rzędzie na 1440 px */
@media (max-width:1100px){
  .lots{grid-template-columns:repeat(2,1fr)}
  .det{grid-template-columns:1fr;grid-template-areas:"a" "side" "b"} .side{position:static;margin-top:28px}
  .listing{grid-template-columns:240px 1fr;gap:32px}
  .osoba{grid-template-columns:minmax(200px,280px) 1fr;gap:40px;padding:36px}
}
@media (max-width:900px){
  :root{--gutter:16px}
  .nav,.hero .frame,.top-tel{display:none}
  .top-in{gap:12px} .top-r{gap:10px} .logo{font-size:22px} .lang a{padding:8px 5px} .top-ch a{width:32px;height:32px}
  .nav.open{display:flex;flex-direction:column;position:absolute;left:0;right:0;top:100%;background:var(--bg);border-bottom:1px solid var(--line);padding:20px var(--gutter);gap:16px;z-index:41}
  body.home .nav.open{background:rgba(var(--bg-rgb),.96)}
  .burger{display:inline-grid;place-items:center}
  .hero{min-height:0;padding:110px 0 44px}
  .hero .shot::after{background:linear-gradient(to bottom,rgba(10,20,32,.6),rgba(10,20,32,.86) 60%,rgba(10,20,32,.97))}
  .facts{gap:22px 26px} .facts>*{flex:0 0 calc(50% - 13px)} .facts>* span{font-size:27px}
  .searchbar{grid-template-columns:1fr;margin-right:0} .searchbar .c{border-right:0;border-bottom:1px solid var(--line);padding:14px 0}
  .searchbar button{padding-block:18px;text-align:left;padding-inline:0}
  .osoba{grid-template-columns:1fr;gap:28px;padding:24px} .osoba .portret{max-width:260px}
  .lots{grid-template-columns:1fr}
  .listing{grid-template-columns:1fr;gap:20px}
  .filters{position:static;border:1px solid var(--line);padding:0 16px}
  .filters .f-head{display:flex;justify-content:space-between;align-items:center;padding:14px 0;cursor:pointer;font-size:11px;letter-spacing:calc(.24em*var(--lsk));text-transform:var(--tt);color:var(--brass-l);list-style:none}
  .filters .f-head::-webkit-details-marker{display:none}
  .filters:not([open]) .f-body{display:none}
  .gal,.gal-3,.gal-4{grid-template-columns:1fr 1fr} .gal .ph:first-child{grid-row:auto;grid-column:1/-1} .gal .ph:nth-child(n+4){display:none}
  .gal-1{grid-template-columns:1fr} .gal-2 .ph:nth-child(2){grid-column:1/-1}
  .params{grid-template-columns:1fr 1fr}
  .kluczowe{gap:24px} .kluczowe div span{font-size:24px}
  .siatka4{grid-template-columns:1fr 1fr}
  .foot-in{grid-template-columns:1fr}
  .mapa-lista{height:380px}
  section{padding-block:56px}
  .head{flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:26px}
  .dock{right:12px;bottom:12px;gap:8px;flex-direction:row;align-items:center}
  .czat-btn{padding:0;width:46px;font-size:0;letter-spacing:0;justify-content:center} .czat-btn s{width:8px;height:8px}
  html[lang=ka] .czat-btn{font-size:0} /* W22: reguła KA (12.5px, wyższa specyficzność) przywracała etykietę w 46 px przycisku → „ასისტენტი” łamane na 3 linie */
  .czat{right:12px;bottom:68px;max-width:calc(100vw - 24px);height:70vh}
  body.oferta .dock{display:none}
  .oferta-bar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:44;background:var(--bg-2);border-top:1px solid var(--line)}
  .oferta-bar .cena{flex:1;padding:12px 16px;font-size:22px;line-height:1.1;display:flex;flex-direction:column;justify-content:center}
  .oferta-bar .cena small{font-family:var(--sans);font-size:10px;letter-spacing:calc(.2em*var(--lsk));text-transform:var(--tt);color:var(--txt-2);margin-top:4px}
  .oferta-bar a{display:flex;align-items:center;gap:8px;padding:0 18px;border-left:1px solid var(--line);font-size:11px;letter-spacing:calc(.22em*var(--lsk));text-transform:var(--tt);color:var(--brass-l)}
  .oferta-bar a.solid{background:var(--brass);color:#14202C}
  .oferta-bar svg{width:16px;height:16px}
  .wygasla{padding:28px}
  body{padding-bottom:72px}
}
@media (max-width:560px){ .siatka4,.params{grid-template-columns:1fr} .kontakt-btns{grid-template-columns:1fr} .pag a,.pag span{min-width:40px} }
/* W21 K3: krótka forma opisu miejsca pod nagłówkiem listy (raz, nie na każdym kaflu) */
.okolica-krotko{margin:10px 0 0;max-width:70ch;color:var(--txt-2);font-size:17px}
