:root{
  --bg:#f4eddf; --karta:#fffdf8; --bok:#f8f2e6; --linia:#e4d9c6; --tekst:#2a2420; --szary:#7a6f63;
  --ziel:#3d5a3f; --ziel2:#2f4832; --ziel-tlo:#e3ead9; --ziel-t:#2f4832;
  --czer-tlo:#f6e1d6; --czer-t:#b5482b; --amb-tlo:#f8ecd2; --amb-t:#7d5a1a; --amb-l:#eedcb3;
  --terakota:#c1613f; --oliwka:#8a9a4b; --piasek:#e9dcc3;
  --neut:#efe7d8; --cien:0 1px 2px rgba(60,40,20,.05), 0 8px 22px rgba(80,50,20,.08);
}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--tekst);font:14px/1.45 Inter,system-ui,-apple-system,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit}
.wrap{max-width:860px;margin:0 auto;padding:28px 20px 60px}

/* naglowek */
.top{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}
.eyebrow{color:var(--ziel);font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.eyebrow a{text-decoration:none;color:var(--szary);font-weight:600}
.eyebrow a:hover{color:var(--ziel)}
h1{font:600 40px/1.05 Fraunces,Georgia,serif;letter-spacing:-.01em;margin:6px 0 10px}
.sub{color:var(--szary);font-size:13px}
.sub i{font-style:normal;margin:0 8px;color:#b9bcb4}
.pill{flex:none;margin-top:6px;display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--linia);border-radius:999px;padding:7px 14px;font-size:12px;color:var(--szary);white-space:nowrap}
.pill:before{content:"";width:8px;height:8px;border-radius:50%;background:#1a9a5c}

/* pasek budzetu */
.budzet{margin-top:22px;background:var(--karta);border:1px solid var(--linia);border-radius:14px;box-shadow:var(--cien);padding:16px 18px;display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center}
.bl{min-width:0}
.bl .r{display:flex;justify-content:space-between;font-size:13px;margin-bottom:8px}
.bl .r b{font-weight:600}
.bl .r span{color:var(--szary);font-size:12px}
.bar{height:6px;background:var(--neut);border-radius:6px;overflow:hidden}
.bar i{display:block;height:100%;background:var(--ziel);border-radius:6px}
.bar i.ponad{background:var(--czer-t)}
.liczby{display:flex}
.liczby div{padding:0 18px;border-left:1px solid var(--linia)}
.liczby div:first-child{border:0}
.liczby b{display:block;font-size:22px;font-weight:600;line-height:1}
.liczby span{font-size:11px;color:var(--szary)}

/* sekcje */
.sek{display:flex;justify-content:space-between;align-items:baseline;margin:26px 0 12px;gap:12px;flex-wrap:wrap}
.sek h2{font-size:16px;font-weight:600;margin:0}
.sek span{font-size:12px;color:var(--szary)}

/* decyzja: top 3 */
.decyzja{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.dk{background:var(--karta);border:1px solid var(--linia);border-radius:14px;box-shadow:var(--cien);padding:14px 16px;cursor:pointer;position:relative}
.dk:hover{border-color:#c9c7bf}
.dk .nr{position:absolute;top:-9px;left:14px;background:var(--ziel);color:#fff;font-size:11px;font-weight:700;border-radius:999px;padding:2px 9px}
.dk .nz{font-size:14px;font-weight:600;margin-top:4px}
.dk .cena{font-size:20px;font-weight:600;margin:6px 0 4px}
.dk .cena small{font-size:11.5px;color:var(--szary);font-weight:400;margin-left:4px}
.dk .dlaczego{font-size:12px;color:var(--szary);line-height:1.4}

/* mapa */
#mapa{height:400px;border-radius:14px;border:1px solid var(--linia);box-shadow:var(--cien);background:#e9ebe3;z-index:0}
.leaflet-container{font:inherit}
.pin{position:absolute;left:0;top:0;transform:translate(-50%,-50%);background:var(--ziel);color:#fff;border-radius:999px;padding:3px 8px;font-size:11.5px;font-weight:700;white-space:nowrap;line-height:1.3;box-shadow:0 2px 6px rgba(0,0,0,.25);border:2px solid #fff;cursor:pointer}
.leaflet-marker-icon:hover .pin{z-index:2;transform:translate(-50%,-50%) scale(1.08)}
.pin.ponad{background:var(--terakota)}
.pin.przybl{opacity:.85;border-style:dashed}
.pin.lotnisko{background:#1b1d1a;font-size:11px}
.pin.gw{box-shadow:0 0 0 3px #f0c26b, 0 2px 6px rgba(0,0,0,.25)}
.leaflet-tooltip.podglad{padding:0;border:0;border-radius:12px;box-shadow:0 8px 24px rgba(0,0,0,.18);overflow:hidden;width:230px;white-space:normal}
.podglad .pf{height:110px;background:#dfe3d6 center/cover no-repeat}
.podglad .pt{padding:10px 12px;font-size:12px;line-height:1.4}
.podglad .pt b{display:block;font-size:13px}
.podglad .pt .pc{font-size:16px;font-weight:600;margin:4px 0 2px}
.podglad .pt .pc small{font-size:11px;color:var(--szary);font-weight:400;margin-left:4px}
.podglad .pt .pm{color:var(--szary)}
.legenda{display:flex;gap:14px;flex-wrap:wrap;margin-top:8px;font-size:11.5px;color:var(--szary)}
.legenda i{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:5px;vertical-align:-1px}

/* filtry */
.filtry{margin-top:18px;display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.filtry button{border:1px solid var(--linia);background:#fff;border-radius:999px;padding:7px 13px;font:inherit;font-size:12.5px;font-weight:500;cursor:pointer;color:var(--tekst)}
.filtry button.on{background:var(--tekst);color:#fff;border-color:var(--tekst)}
.filtry select{margin-left:auto;border:1px solid var(--linia);background:#fff;border-radius:10px;padding:8px 12px;font:inherit;font-size:12.5px;color:var(--tekst)}

/* karta oferty */
/* karta oferty: gesta lista w stylu portali rezerwacyjnych, kolory nasze */
.k{background:var(--karta);border:1px solid var(--linia);border-radius:10px;box-shadow:0 1px 2px rgba(60,40,20,.05);margin-bottom:10px;overflow:hidden;display:grid;grid-template-columns:186px 1fr 196px;scroll-margin-top:16px;transition:box-shadow .18s ease,border-color .18s ease}
.k:hover{box-shadow:var(--cien);border-color:#d6c8ae}
.k.ponad{border-color:#eddcd8}
.k.blysk{animation:blysk 1.6s ease-out}
@keyframes blysk{0%{box-shadow:0 0 0 4px #f0c26b}100%{box-shadow:var(--cien)}}
.foto{position:relative;min-height:172px;margin:8px 0 8px 8px;border-radius:7px;background:#e3dccb;overflow:hidden}
.foto:before{content:"";position:absolute;inset:0;background-image:var(--img);background-size:cover;background-position:center;transition:transform .6s ease}
.k:hover .foto:before{transform:scale(1.05)}
.foto>*{position:relative}
.foto.brak{display:flex;align-items:center;justify-content:center;font:italic 500 38px Fraunces,Georgia,serif;color:#6f7a68;background:linear-gradient(135deg,#e7e9df,#c9d1c1)}
.odz{position:absolute;left:7px;top:7px;background:#fff;border-radius:6px;padding:3px 7px;font-size:10.5px;font-weight:600}
.odz.uwaga{background:var(--czer-tlo);color:var(--czer-t)}
.nowe{position:absolute;left:7px;bottom:7px;background:var(--oliwka);color:#fff;border-radius:6px;padding:2px 7px;font-size:10px;font-weight:700;letter-spacing:.04em}
.gw{position:absolute;right:7px;top:7px;width:27px;height:27px;border-radius:50%;background:#fff;border:0;cursor:pointer;font-size:14px;color:#8a8e86;display:flex;align-items:center;justify-content:center}
.gw.on{color:#c9702a}
.tresc{padding:12px 14px;display:flex;flex-direction:column;gap:7px;min-width:0}
.nag{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
.nl{min-width:0}
.nz{display:inline-block;font-size:16px;font-weight:600;color:var(--ziel2);text-decoration:none;line-height:1.2}
.nz:hover{text-decoration:underline}
.ms{color:var(--szary);font-size:11.5px;margin-top:3px}
.ms b{color:var(--tekst);font-weight:600}
.ms i{font-style:normal;margin:0 5px;color:#c2bcae}
/* ocena po prawej: podpis slowny + kwadrat z liczba */
.oc{flex:none;display:flex;align-items:center;gap:7px}
.ot{text-align:right;line-height:1.25}
.ot b{display:block;font-size:12px;font-weight:600}
.ot span{font-size:10.5px;color:var(--szary)}
.sr{flex:none;min-width:34px;text-align:center;border-radius:7px 7px 7px 2px;padding:6px 7px;font-size:13px;font-weight:700;background:var(--ziel2);color:#fff}
.sr.b{background:#5a7040}.sr.c{background:#a8802c}.sr.d{background:var(--czer-t)}.sr.x{background:#b3aa9c}
.tagi{display:flex;flex-wrap:wrap;gap:5px}
.t{background:var(--neut);border-radius:6px;padding:3px 7px;font-size:11px;font-weight:500}
.t.y{background:var(--ziel-tlo);color:var(--ziel-t)}.t.n{background:var(--czer-tlo);color:var(--czer-t)}
/* blok "co dostajemy" — odpowiednik szarej ramki z pokojem */
.pok{margin-top:auto;background:var(--bok);border:1px solid var(--linia);border-radius:8px;padding:7px 9px;font-size:11.5px;line-height:1.45}
.pok b{font-weight:600}
.pok span{color:var(--szary)}
.pok .st{display:block;font-weight:600;margin-top:2px}
.pok .st.ok{color:#2c6b45}.pok .st.zle{color:var(--czer-t)}.pok .st.czek{color:var(--amb-t)}
/* prawa kolumna: termin, cena, przyciski — dosuniete do dolu */
.bok{border-left:1px solid var(--linia);padding:12px 12px;display:flex;flex-direction:column;align-items:flex-end;text-align:right;gap:5px}
.term{align-self:stretch;border-radius:6px;padding:4px 7px;font-size:10.5px;font-weight:600;text-align:center;background:var(--amb-tlo);color:var(--amb-t)}
.term.zle{background:var(--czer-tlo);color:var(--czer-t)}
.cnag{margin-top:auto;font-size:10.5px;color:var(--szary)}
.cena{font-size:21px;font-weight:700;line-height:1}
.cena.ponad{color:var(--czer-t)}
.cena small{display:block;font-size:11.5px;color:var(--szary);font-weight:400;margin-top:5px}
.ceur{font-size:10.5px;color:var(--szary);line-height:1.35}
.ceur b{color:var(--tekst);font-weight:600}
.nota{align-self:stretch;text-align:left;border-radius:9px;padding:9px 10px;font-size:11.5px;line-height:1.35;background:var(--amb-tlo);color:var(--amb-t);border:1px solid var(--amb-l)}
.nota b{display:block;font-weight:600;margin-bottom:2px}
.nota.ok{background:var(--ziel-tlo);color:var(--ziel-t);border-color:#cfe4d6}
.nota.zle{background:var(--czer-tlo);color:var(--czer-t);border-color:#f0cbc4}
.nota.szara{background:var(--neut);color:var(--szary);border-color:var(--linia)}
.b1,.b2{display:block;width:100%;text-align:center;border-radius:8px;padding:8px 10px;font:inherit;font-size:12.5px;font-weight:600;cursor:pointer;text-decoration:none}
.b1{background:var(--terakota);color:#fff;border:1px solid var(--terakota);margin-top:6px}
.b1:hover{background:#a94f31;border-color:#a94f31}
.b2{background:#fff;color:var(--tekst);border:1px solid var(--linia);padding:6px 10px;font-size:12px}
.b2:hover{border-color:#c9c7bf}

/* szczegoly (rozwijane) */
.szcz{grid-column:1/-1;border-top:1px solid var(--linia);background:#fcfbf8;padding:16px 18px;display:none;grid-template-columns:1fr 1fr;gap:18px 26px;font-size:12.5px}
.k.otw .szcz{display:grid}
.szcz h4{margin:0 0 8px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--szary)}
.szcz ul{margin:0;padding-left:16px}
.szcz li{margin:3px 0}
.p li::marker{color:var(--ziel)}.mn li::marker{color:var(--czer-t)}
.wr{display:flex;justify-content:space-between;gap:12px;padding:5px 0;border-bottom:1px dashed var(--linia)}
.wr span:first-child{color:var(--szary);flex:none}
.wr span:last-child{text-align:right}
.wr.pusty span:last-child{color:#b3b6ae;font-style:italic}
.przekr{text-decoration:line-through;color:var(--szary);margin-right:6px}
.szcz .pelna{grid-column:1/-1}

/* os czasu negocjacji */
.os{list-style:none;margin:0;padding:0 0 0 14px;border-left:2px solid var(--linia)}
.os li{position:relative;padding:0 0 10px 12px;font-size:12.5px}
.os li:last-child{padding-bottom:0}
.os li:before{content:"";position:absolute;left:-20px;top:4px;width:10px;height:10px;border-radius:50%;background:#fff;border:2px solid var(--szary)}
.os li.ok:before{background:var(--ziel);border-color:var(--ziel)}
.os li.zle:before{background:var(--czer-t);border-color:var(--czer-t)}
.os li.czek:before{border-color:#d9a83a;background:var(--amb-tlo)}
.os li small{display:block;color:var(--szary);font-size:11px}

/* notatki */
.notatka textarea{width:100%;min-height:64px;border:1px solid var(--linia);border-radius:9px;padding:8px 10px;font:inherit;font-size:12.5px;resize:vertical;background:#fff}
.notatka textarea:focus{outline:2px solid var(--ziel);outline-offset:1px}
.notatka small{display:block;color:#a3a69e;font-size:11px;margin-top:4px}

/* listy pomocnicze */
.lista{background:var(--karta);border:1px solid var(--linia);border-radius:14px;box-shadow:var(--cien);overflow:hidden}
.lista .w{display:grid;grid-template-columns:1fr 1.4fr auto;gap:12px;padding:11px 16px;border-top:1px solid var(--linia);font-size:12.5px;align-items:center}
.lista .w:first-child{border:0}
.lista .w b{font-weight:600}
.lista .w span{color:var(--szary)}
.lista .w a{font-size:12px;color:var(--ziel);font-weight:600;text-decoration:none;white-space:nowrap}
.stopka{margin-top:28px;color:var(--szary);font-size:12px}
.pusto{padding:28px;text-align:center;color:var(--szary);background:#fff;border:1px dashed var(--linia);border-radius:14px}

/* strona glowna: kafelki wyjazdow */
.kafle{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;margin-top:22px}
.kafel{display:block;text-decoration:none;background:var(--karta);border:1px solid var(--linia);border-radius:14px;box-shadow:var(--cien);padding:20px 20px 18px;position:relative}
.kafel:hover{border-color:#c9c7bf}
.kafel .em{font-size:28px}
.kafel h3{font:600 22px Fraunces,Georgia,serif;margin:10px 0 2px}
.kafel .dt{color:var(--szary);font-size:12.5px}
.kafel p{font-size:12.5px;color:var(--szary);margin:10px 0 0;line-height:1.4}
.kafel .st{display:inline-block;margin-top:12px;border-radius:999px;padding:4px 10px;font-size:11px;font-weight:600;background:var(--ziel-tlo);color:var(--ziel-t)}
.kafel.wkrotce{opacity:.6;pointer-events:none}
.kafel.wkrotce .st{background:var(--neut);color:var(--szary)}

@media (max-width:720px){
  h1{font-size:30px}
  .top{flex-direction:column}
  .budzet{grid-template-columns:1fr}
  .liczby div{padding:0 12px}
  .decyzja{grid-template-columns:1fr}
  #mapa{height:300px}
  .k{grid-template-columns:1fr}
  .foto{min-height:160px}
  .bok{border-left:0;border-top:1px solid var(--linia);align-items:stretch;text-align:left}
  .foto{margin:0;border-radius:0;min-height:150px}
  .porl{justify-content:flex-start}
  .szcz{grid-template-columns:1fr}
  .lista .w{grid-template-columns:1fr;gap:3px}
  .filtry select{margin-left:0;width:100%}
}

/* brama logowania */
.brama{position:fixed;inset:0;background:var(--bg);z-index:10;display:flex;align-items:center;justify-content:center;padding:20px}
.bkarta{background:#fff;border:1px solid var(--linia);border-radius:16px;box-shadow:var(--cien);padding:28px;width:100%;max-width:360px}
.bkarta h2{font:600 26px Fraunces,Georgia,serif;margin:0 0 4px}
.bkarta p{color:var(--szary);font-size:13px;margin:0 0 18px}
.bkarta label{display:block;font-size:12px;font-weight:600;margin:12px 0 5px}
.bkarta input{width:100%;border:1px solid var(--linia);border-radius:9px;padding:10px 12px;font:inherit;font-size:14px}
.bkarta input:focus{outline:2px solid var(--ziel);outline-offset:1px;border-color:var(--ziel)}
.bkarta button{width:100%;margin-top:18px;background:var(--ziel);color:#fff;border:0;border-radius:9px;padding:11px;font:inherit;font-size:14px;font-weight:600;cursor:pointer}
.bkarta button:disabled{opacity:.6}
.blad{color:var(--czer-t);font-size:12.5px;margin-top:10px;min-height:16px}

/* narzedzia w naglowku */
.narz{flex:none;display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.narz .pill{margin:0}
.narz button{border:1px solid var(--linia);background:#fff;border-radius:999px;padding:7px 12px;font:inherit;font-size:12px;font-weight:600;cursor:pointer;color:var(--tekst)}
.narz button:hover{border-color:#c9c7bf}

/* co dalej */
.codalej .w{grid-template-columns:auto 1fr;cursor:default}
.codalej .w[data-n]{cursor:pointer}
.codalej .w[data-n]:hover{background:#fcfbf8}
.codalej .w i{width:9px;height:9px;border-radius:50%;background:#d9a83a;display:inline-block}
.codalej .w.pilne i{background:var(--czer-t)}
.codalej .w.pilne span{color:var(--czer-t);font-weight:500}
.codalej .w span{color:var(--tekst)}
.codalej .w small{color:var(--szary)}

/* rezerwacja (po decyzji) */
.rez{background:var(--karta);border:2px solid var(--ziel);border-radius:14px;box-shadow:var(--cien);overflow:hidden;display:grid;grid-template-columns:240px 1fr}
.rez .foto{min-height:220px}
.rez .rt{padding:18px 20px}
.rez .nz{font-size:20px;font-weight:600}
.rez .rk{display:flex;gap:22px;margin:12px 0 14px;padding:12px 0;border-top:1px solid var(--linia);border-bottom:1px solid var(--linia)}
.rez .rk span{display:block;font-size:11px;color:var(--szary)}
.rez .rk b{font-size:20px;font-weight:600}
.rez .rk small{margin-left:4px;color:var(--szary)}
.po-decyzji #grid .k:not(.otw){opacity:.72}
.po-decyzji #grid .k:hover{opacity:1}

/* porownanie */
.k.por{outline:2px solid #f0c26b;outline-offset:-2px}
.porl{display:flex;align-items:center;justify-content:flex-end;align-self:stretch;gap:6px;margin-top:2px;font-size:11.5px;color:var(--szary);cursor:pointer;user-select:none}
.porl input{accent-color:var(--ziel);margin:0}
.porpasek{position:fixed;left:50%;bottom:18px;transform:translateX(-50%);z-index:5;background:var(--tekst);color:#fff;border:0;border-radius:999px;padding:11px 18px;font:inherit;font-size:13px;font-weight:600;cursor:pointer;box-shadow:0 8px 24px rgba(0,0,0,.25)}
.porpasek b{color:#f0c26b}
.tabela{background:var(--karta);border:1px solid var(--linia);border-radius:14px;box-shadow:var(--cien);overflow-x:auto}
.tabela table{border-collapse:collapse;width:100%;font-size:12.5px;min-width:520px}
.tabela th,.tabela td{padding:9px 12px;border-bottom:1px solid var(--linia);vertical-align:top;text-align:left}
.tabela thead th{background:#fcfbf8;font-weight:600;font-size:13px}
.tabela thead th small{display:block;color:var(--szary);font-weight:400;font-size:11px}
.tabela thead th a{text-decoration:none;color:var(--ziel)}
.tabela tbody th{color:var(--szary);font-weight:500;width:150px;white-space:nowrap}
.tabela td small{display:block;color:var(--szary);font-size:11px}
.tabela td.naj{background:var(--ziel-tlo)}
.tabela td.zle{background:var(--czer-tlo)}
.tabela i{font-style:normal;font-weight:600}
.tabela i.y{color:var(--ziel-t)}.tabela i.n{color:var(--czer-t)}
.tabela .b1{display:inline-block;padding:6px 10px}
#porownanie{margin-top:8px}

/* karta lotu */
.k.lot .lotfoto{font-size:48px;color:var(--ziel);flex-direction:column}
.k.lot .lotfoto img{max-width:120px;max-height:60px;object-fit:contain}
.k.lot.kupiony{border-color:#cfe4d6}
.trasa{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;padding:6px 0}
.trasa > div b{display:block;font-size:20px;font-weight:600;line-height:1.1}
.trasa > div span{font-size:12px;color:var(--szary)}
.trasa .strzalka{text-align:center;font-size:11.5px;color:var(--szary)}
.trasa .strzalka i{display:block;height:2px;background:var(--linia);margin:4px 0;position:relative}
.trasa .strzalka i:after{content:"✈";position:absolute;left:50%;top:-9px;transform:translateX(-50%);background:#fff;padding:0 4px;color:var(--ziel);font-size:12px}

@media (max-width:720px){
  .rez{grid-template-columns:1fr}
  .rez .rk{flex-wrap:wrap;gap:14px}
  .narz{justify-content:flex-start}
  .trasa > div b{font-size:16px}
}

/* hero ze zdjeciem */
.hero{position:relative;margin:-28px -20px 0;padding:34px 20px 28px;min-height:300px;display:flex;flex-direction:column;justify-content:flex-end;color:#fff;background:linear-gradient(160deg,#3d5a3f 0%,#7a6a3e 55%,#c1613f 100%);border-radius:0 0 22px 22px;overflow:hidden;isolation:isolate}
.hero:before{content:"";position:absolute;inset:0;background-image:var(--hero);background-size:cover;background-position:center 60%;z-index:-2;transform:scale(1.02)}
.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,18,12,.15) 0%,rgba(20,18,12,.05) 35%,rgba(20,18,12,.72) 100%);z-index:-1}
.hero .eyebrow{color:#f0dfae}
.hero .eyebrow a{color:#f6efdc;opacity:.85}
.hero h1{color:#fff;font-size:48px;text-shadow:0 2px 18px rgba(0,0,0,.35)}
.hero .sub{color:#f3ead8}
.hero .sub i{color:#d9c99b}
.hero .narz{position:absolute;top:22px;right:20px}
.hero .narz button,.hero .pill{background:rgba(255,253,248,.92);border-color:transparent}
.odlicz{display:flex;gap:18px;align-items:center;margin-top:18px;flex-wrap:wrap}
.odlicz .dni{background:rgba(255,253,248,.95);color:var(--tekst);border-radius:14px;padding:10px 16px;line-height:1}
.odlicz .dni b{display:block;font:600 30px/1 Fraunces,Georgia,serif}
.odlicz .dni span{font-size:11px;color:var(--szary);font-weight:600;letter-spacing:.06em;text-transform:uppercase}
.osczasu{display:flex;align-items:center;flex:1;min-width:220px;font-size:11.5px;color:#f3ead8}
.osczasu div{position:relative;flex:1;text-align:center;padding-top:14px}
.osczasu div:before{content:"";position:absolute;top:0;left:50%;width:10px;height:10px;border-radius:50%;background:#fff;transform:translateX(-50%);box-shadow:0 0 0 3px rgba(255,255,255,.25);z-index:1}
.osczasu div:after{content:"";position:absolute;top:4px;left:50%;right:-50%;height:2px;background:rgba(255,255,255,.45)}
.osczasu div:last-child:after{display:none}
.osczasu div.teraz:before{background:#f0c26b}
.osczasu div.pilne:before{background:var(--terakota)}
.osczasu b{display:block;font-weight:600;color:#fff}

/* klimat: atrakcje w okolicy */
.klimat{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.kl{position:relative;border-radius:16px;overflow:hidden;min-height:200px;display:flex;align-items:flex-end;color:#fff;box-shadow:var(--cien);background:#c9bfa8}
.kl:before{content:"";position:absolute;inset:0;background-image:var(--img);background-size:cover;background-position:center;transition:transform .7s ease}
.kl:hover:before{transform:scale(1.06)}
.kl:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 30%,rgba(20,15,10,.8) 100%)}
.kl .kt{position:relative;z-index:1;padding:14px 16px}
.kl h3{margin:0 0 3px;font:600 20px Fraunces,Georgia,serif}
.kl p{margin:0 0 6px;font-size:12px;line-height:1.4;color:#eee4d2}
.kl small{font-size:11px;color:#f0dfae}

/* ikony w tagach */
.t .ik{margin-right:4px}

/* ozywienie: wjazd kart, nalewanie paska, wskakiwanie pinezek */
@keyframes wjazd{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@keyframes skok{0%{opacity:0;transform:translate(-50%,-50%) scale(.4)}70%{transform:translate(-50%,-50%) scale(1.12)}100%{opacity:1;transform:translate(-50%,-50%) scale(1)}}
.k,.dk,.kl{animation:wjazd .5s ease both}
.k:nth-child(2),.dk:nth-child(2),.kl:nth-child(2){animation-delay:.07s}.k:nth-child(3),.dk:nth-child(3),.kl:nth-child(3){animation-delay:.14s}.k:nth-child(4),.kl:nth-child(4){animation-delay:.21s}.k:nth-child(5),.kl:nth-child(5){animation-delay:.28s}.k:nth-child(6),.kl:nth-child(6){animation-delay:.35s}
.bar i{transition:width 1.1s cubic-bezier(.2,.8,.2,1)}
.pin{animation:skok .45s ease both;animation-delay:var(--op,0s)}
@media (prefers-reduced-motion:reduce){.k,.dk,.kl,.pin{animation:none}.bar i{transition:none}}

@media (max-width:720px){
  .hero{min-height:260px;padding-top:70px}
  .hero h1{font-size:34px}
  .hero .narz{top:14px;right:14px;left:14px;justify-content:flex-end}
  .hero .narz .pill{display:none}
  .klimat{grid-template-columns:1fr 1fr}
  .kl{min-height:160px}
}

/* przelacznik nasluchu */
#nasluch[data-on="1"]{color:var(--ziel-t);border-color:var(--ziel)}
#nasluch[data-on="0"]{color:var(--czer-t)}

/* dziennik: ostatnie zmiany na stronie */
.dziennik{margin-top:12px;background:var(--karta);border:1px solid var(--linia);border-radius:14px;box-shadow:var(--cien);padding:12px 16px 6px}
.dziennik .dnag{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:6px}
.dziennik .dnag b{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--szary)}
.dziennik .dnag span{font-size:11.5px;color:var(--szary)}
.dziennik .dw{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:baseline;padding:6px 0;border-top:1px solid var(--linia);font-size:13px}
.dziennik .dw:first-of-type{border-top:0}
.dziennik .dw i{width:7px;height:7px;border-radius:50%;background:var(--szary);display:inline-block}
.dziennik .dw i.bot{background:var(--ziel)}
.dziennik .dw small{color:var(--szary);font-size:11.5px;white-space:nowrap}
@media (max-width:720px){.dziennik .dw{grid-template-columns:auto 1fr;gap:8px}.dziennik .dw small{grid-column:2;margin-top:-4px}}
#sprawdz{font-weight:700}
#sprawdz:disabled{opacity:.6;cursor:progress}

/* dziennik: same zmiany obiektow */
.dziennik .dw{grid-template-columns:auto auto 1fr;gap:10px;align-items:baseline}
.dziennik .dw small{color:var(--szary);font-variant-numeric:tabular-nums;white-space:nowrap}
.dziennik .dw b{font-weight:700}
.dziennik .dw span{color:var(--tekst)}
.dziennik .dw.klik{cursor:pointer;border-radius:8px}
.dziennik .dw.klik:hover{background:var(--pole,#f6f4ee)}
/* pasek zmiany na karcie oferty */
.k .zmiana{grid-column:1/-1;display:flex;gap:9px;align-items:baseline;background:var(--amb-tlo);color:var(--amb-t);padding:7px 16px;font-size:12.5px;font-weight:600;border-bottom:1px solid var(--amb-l)}
.k .zmiana i{flex:none;width:7px;height:7px;border-radius:50%;background:var(--amb-t);display:inline-block}
.k .zmiana span{flex:1}
.k .zmiana small{font-weight:500;opacity:.8;white-space:nowrap}

/* minimapa i wizytowka Google w szczegolach */
.ms .mp{display:inline-block;margin-left:8px;font-size:11px;color:var(--ziel2);text-decoration:none;font-weight:600;white-space:nowrap}
.ms .mp:hover{text-decoration:underline}
.mapka iframe{width:100%;height:190px;border:1px solid var(--linia);border-radius:8px;background:#e9e5dc;display:block}
.mapka .brakmapy{padding:14px;background:var(--neut);border-radius:8px;color:var(--szary)}
.mlinki{display:flex;gap:16px;flex-wrap:wrap;margin-top:8px;font-size:12px}
.mlinki a{color:var(--ziel2);font-weight:600;text-decoration:none}
.mlinki a:hover{text-decoration:underline}

/* ostrzezenie: wycena nie obejmuje calego pobytu */
.brakn{align-self:stretch;margin-top:4px;background:var(--amb-tlo);color:var(--amb-t);border:1px solid var(--amb-l);border-radius:6px;padding:5px 7px;font-size:10.5px;font-weight:600;line-height:1.3;text-align:left}

/* archiwum szukania — po rezerwacji zwiniete na dole strony */
.archiwum{margin-top:26px}
.archiwum > summary{list-style:none;cursor:pointer;display:flex;align-items:baseline;gap:10px 14px;flex-wrap:wrap;background:var(--karta);border:1px solid var(--linia);border-radius:10px;padding:13px 16px;box-shadow:0 1px 2px rgba(60,40,20,.05)}
.archiwum > summary::-webkit-details-marker{display:none}
.archiwum > summary:before{content:"▸";color:var(--ziel);font-size:13px}
.archiwum[open] > summary:before{content:"▾"}
.archiwum > summary b{font:600 18px Fraunces,Georgia,serif}
.archiwum > summary span{font-size:12px;color:var(--szary)}
.archiwum > summary:hover{border-color:#d6c8ae}
#podroz .k.lot{margin-bottom:10px}

/* porownanie aut z wypozyczalni */
.przewin-auta{overflow-x:auto;border:1px solid var(--linia);border-radius:12px}
.auta{width:100%;border-collapse:collapse;font-size:12.5px;background:var(--karta)}
.auta th,.auta td{padding:9px 10px;border-bottom:1px solid var(--linia);text-align:left;vertical-align:top}
.auta thead th{font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:var(--szary);background:#faf7f0;white-space:nowrap}
.auta small{display:block;font-size:11px;color:var(--szary);margin-top:2px}
.auta small.etk{display:inline-block;margin:4px 0 0;padding:1px 8px;border-radius:999px;background:#eef6ea;color:#3d6b2c;font-weight:600}
.auta td.naj{background:#f8efda;box-shadow:inset 0 0 0 2px #c99a3e}
.auta tr.pol td:first-child{box-shadow:inset 4px 0 0 #3d6b2c}
.uwaga-auta{font-size:12px;color:var(--szary);margin:10px 2px 0}
