/* jirous.pl - szablon "A - Klasyka": magenta + grafit z dawnego naglowka, skosne pasy, jasne tlo. */
:root{
	--mag:#bf33a0; --mag-ciem:#8e1f76; --graf:#2b2e35; --szary:#eef0f3; --linia:#dfe2e7; --tekst:#23252b; --dim:#5f6572;
	--ok:#2f7d4f; --zle:#c62828;
	--disp:"Saira Semi Condensed","Arial Narrow",Arial,sans-serif; --body:"Source Sans 3","Segoe UI",Arial,sans-serif;
	--szer:1240px;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:#fff;color:var(--tekst);font:16px/1.5 var(--body)}
img{max-width:100%;height:auto}
a{color:var(--mag-ciem)}
:focus-visible{outline:2px solid var(--mag);outline-offset:2px}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
[hidden]{display:none!important}
.dim{color:var(--dim)}
.pomin{position:absolute;left:-999px;top:0;background:var(--graf);color:#fff;padding:8px 12px;z-index:9}
.pomin:focus{left:8px}
.tylko-druk{display:none}

/* naglowek */
.top{display:flex;align-items:center;flex-wrap:wrap;gap:14px 20px;padding:14px max(16px,calc((100% - var(--szer))/2));border-bottom:1px solid var(--linia);position:relative;overflow:hidden}
.top::after{content:"";position:absolute;right:-30px;top:0;bottom:0;width:280px;background:repeating-linear-gradient(115deg,transparent 0 18px,var(--mag) 18px 46px,transparent 46px 58px,#c9ccd3 58px 66px);clip-path:polygon(30% 0,100% 0,100% 100%,0 100%);pointer-events:none}
.logo{display:flex;align-items:center;gap:12px;text-decoration:none;color:inherit;position:relative;z-index:1}
.logo img{width:46px}
.logo b{font:700 26px/1 var(--disp);letter-spacing:.02em;color:#7d8089}
.logo b em{font-style:normal;color:var(--mag)}
.logo small{display:block;font:600 11px/1.4 var(--disp);letter-spacing:.18em;color:#9a9da6}
.szukaj{margin-left:auto;margin-right:250px;position:relative;z-index:1;display:flex;border:1px solid var(--linia);border-radius:6px;overflow:hidden;background:#fff;min-width:0}
.szukaj input{border:0;padding:9px 12px;width:300px;max-width:52vw;font:inherit;min-width:0}
.szukaj button{border:0;background:var(--graf);color:#fff;padding:0 16px;cursor:pointer;font:600 15px var(--disp)}
.szukaj.duze{margin:0;max-width:520px}
.szukaj.duze input{width:100%;flex:1}
@media (max-width:980px){.szukaj{margin-right:0}.top::after{width:90px}}
@media (max-width:640px){.szukaj{margin-left:0;width:100%}.szukaj input{width:100%;max-width:none;flex:1}}
.menu{display:flex;background:var(--graf);padding:0 max(6px,calc((100% - var(--szer))/2 - 14px));overflow-x:auto;position:sticky;top:0;z-index:5}
.menu a{color:#e8e9ec;font:600 16px var(--disp);letter-spacing:.03em;padding:12px 14px;text-decoration:none;border-bottom:3px solid transparent;white-space:nowrap}
.menu a:hover,.menu a.on{border-bottom-color:var(--mag);color:#fff}
.menu .prawo{margin-left:auto}

/* uklad */
.wnetrze{max-width:var(--szer);margin:0 auto;padding:24px 16px 48px;display:grid;gap:34px}
.wnetrze>*{min-width:0}
.okruszki{font-size:14px;color:var(--dim);margin-bottom:-18px}
.okruszki a{text-decoration:none}
.h1{font:700 clamp(28px,3.4vw,38px)/1.1 var(--disp);margin:0 0 8px;text-wrap:balance}
.h1 small,.h2 small{font:400 15px var(--body);color:var(--dim);margin-left:8px}
.h2{font:700 24px/1.2 var(--disp);margin:0 0 14px}
.h3{font:700 18px var(--disp);margin:22px 0 6px}
.lead{color:var(--dim);max-width:75ch;margin:0 0 18px}
.oko{font:600 12px var(--disp);letter-spacing:.16em;text-transform:uppercase;color:var(--mag)}
.rzad{display:flex;gap:10px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;gap:8px;border-radius:6px;padding:10px 18px;font:600 16px var(--disp);letter-spacing:.03em;cursor:pointer;border:1px solid var(--graf);background:var(--graf);color:#fff;text-decoration:none}
.btn.jasny{background:transparent;color:var(--graf)}
.btn.mag{background:var(--mag);border-color:var(--mag)}
.btn:hover{filter:brightness(1.08)}

/* slajdy */
.hero{position:relative;background:var(--szary);border-radius:8px;overflow:hidden}
.slajd{display:grid;grid-template-columns:1.05fr 1fr;min-height:360px}
@media (max-width:820px){.slajd{grid-template-columns:1fr}}
.hero-txt{padding:34px;display:flex;flex-direction:column;gap:14px;justify-content:center}
.hero h1{font:700 clamp(32px,4vw,46px)/1.02 var(--disp);margin:0}
.hero p{margin:0;color:var(--dim);max-width:52ch}
.liczby{display:flex;gap:26px;flex-wrap:wrap;margin:4px 0}
.liczby div{display:flex;flex-direction:column}
.liczby b{font:700 30px/1 var(--disp);color:var(--graf);font-variant-numeric:tabular-nums}
.liczby span{font-size:12px;color:var(--dim);text-transform:uppercase;letter-spacing:.06em;margin-top:4px}
.hero-img{background:linear-gradient(115deg,transparent 55%,rgba(191,51,160,.12) 55% 70%,transparent 70%),#e4e7ec;display:flex;align-items:center;justify-content:center;padding:24px 20px 40px}
.hero-img img{max-height:320px;width:auto;filter:drop-shadow(0 18px 18px rgba(0,0,0,.18))}
.kropki{display:flex;gap:6px;position:absolute;bottom:14px;right:25%;transform:translateX(50%)}
.kropki button{width:28px;height:4px;border:0;background:#c3c7cf;cursor:pointer;padding:0}
.kropki button.on{background:var(--mag)}
@media (max-width:820px){.kropki{right:50%}}

/* pasma, karty, kafle */
.pasma{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px}
.pasmo{border:1px solid var(--linia);border-radius:8px;padding:12px 14px;background:#fff;text-decoration:none;color:inherit;display:flex;flex-direction:column;gap:2px}
.pasmo:hover{border-color:var(--mag)}
.pasmo b{font:700 20px var(--disp);color:var(--graf)}
.pasmo span{font-size:14px;color:var(--dim);line-height:1.35}
.karty{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:16px}
.karta{border:1px solid var(--linia);border-radius:8px;overflow:hidden;background:#fff;text-decoration:none;color:inherit;display:flex;flex-direction:column}
.karta:hover{border-color:#b9bdc6;box-shadow:0 6px 20px rgba(0,0,0,.07)}
/* zdjecia maja jeden format 4:3 na bialym tle (zbuduj_strone.py na_bialym), ramka 4:3 o stalej wysokosci */
.karta .fot{aspect-ratio:4/3;background:#fff;position:relative;display:flex;align-items:center;justify-content:center;border-bottom:1px solid var(--linia)}
.karta .fot img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.karta .tresc{padding:12px 14px 14px;display:flex;flex-direction:column;gap:4px;flex:1}
.karta b{font:700 18px var(--disp)}
.karta .tresc>span{font-size:14px;color:var(--dim);line-height:1.35}
.karta .spec{margin-top:auto;padding-top:8px;display:flex;gap:12px;font-size:14px;color:var(--graf);font-weight:600}
.nowe{position:absolute;top:10px;left:10px;background:var(--mag);color:#fff;font:600 11px var(--disp);letter-spacing:.08em;padding:3px 8px;border-radius:3px;text-transform:uppercase}
.brak{color:var(--dim);font-size:14px}
.kafle{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
@media (max-width:820px){.kafle{grid-template-columns:1fr}}
.kafel{border-radius:8px;padding:22px;min-height:180px;display:flex;flex-direction:column;gap:8px;text-decoration:none;color:#fff;position:relative;overflow:hidden}
.kafel h3{margin:0;font:700 22px var(--disp);text-transform:uppercase;letter-spacing:.04em}
.kafel p{margin:0;font-size:15px;line-height:1.45;max-width:36ch;opacity:.92}
.kafel.k1{background:#3a3e47}.kafel.k2{background:var(--mag)}.kafel.k3{background:#646a76}
.kafel svg{position:absolute;right:-10px;bottom:-14px;opacity:.18;width:150px;height:150px}
.kafel .wiecej{margin-top:auto;font:600 13px var(--disp);letter-spacing:.06em;text-transform:uppercase}

/* listy z filtrami */
.kat{display:grid;grid-template-columns:240px minmax(0,1fr);gap:26px;align-items:start}
@media (max-width:820px){.kat{grid-template-columns:1fr}}
.filtry{border:1px solid var(--linia);border-radius:8px;padding:16px;display:grid;gap:16px;background:#fff}
.filtry h5{margin:0 0 6px;font:700 14px var(--disp);letter-spacing:.06em;text-transform:uppercase;color:var(--graf)}
.filtry label,.pasmo-link{display:flex;gap:8px;align-items:center;font-size:15px;padding:3px 0;cursor:pointer;color:inherit;text-decoration:none}
.filtry label span,.pasmo-link span{margin-left:auto;color:var(--dim);font-size:13px}
.pasmo-link.on{color:var(--mag-ciem);font-weight:700}
.brak-wynikow{color:var(--dim)}

/* produkt */
.prod{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:36px;align-items:start}
@media (max-width:880px){.prod{grid-template-columns:1fr}}
.gal-glowne{aspect-ratio:4/3;background:#fff;border:1px solid var(--linia);border-radius:8px;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}
.gal-glowne a{position:absolute;inset:0;cursor:zoom-in}
.gal-glowne img{width:100%;height:100%;object-fit:contain}
.miniatury{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap}
.miniatury button{width:88px;height:66px;border:1px solid var(--linia);background:#fff;border-radius:6px;padding:0;overflow:hidden;cursor:pointer}
.miniatury button.on{border-color:var(--mag);box-shadow:0 0 0 1px var(--mag)}
.miniatury img{width:100%;height:100%;object-fit:contain;display:block}
.prod-h1{font:700 36px/1.05 var(--disp);margin:6px 0 6px}
.fakty{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));border:1px solid var(--linia);border-radius:8px;overflow:hidden;margin:16px 0}
.fakty div{padding:12px 14px;border-right:1px solid var(--linia)}
.fakty div:last-child{border-right:0}
.fakty b{display:block;font:700 22px var(--disp);font-variant-numeric:tabular-nums}
.fakty span{font-size:12px;color:var(--dim);text-transform:uppercase;letter-spacing:.05em}
.zakl{display:flex;border-bottom:2px solid var(--linia);gap:4px;flex-wrap:wrap;margin-top:26px}
.zakl button{background:none;border:0;padding:10px 14px;font:600 16px var(--disp);cursor:pointer;color:var(--dim);border-bottom:3px solid transparent;margin-bottom:-2px}
.zakl button[aria-selected="true"]{color:var(--graf);border-bottom-color:var(--mag)}
.zakl-tresc{padding-top:14px}
.zakl-tresc p{margin:0 0 12px}
.js .zakl-tresc:not(.on){display:none}
.lista{margin:0 0 12px;padding-left:20px}
.lista li{margin:3px 0}
.przewin{overflow-x:auto}
.param{border-collapse:collapse;width:100%}
.param th,.param td{padding:8px 10px;border-bottom:1px solid var(--linia);text-align:left;font-size:15px;vertical-align:top}
.param th{font-weight:600;width:45%;color:var(--dim)}
.param td{font-variant-numeric:tabular-nums}
.pliki{display:grid;gap:8px}
.plik{display:flex;align-items:center;gap:12px;border:1px solid var(--linia);border-radius:6px;padding:10px 12px;text-decoration:none;color:inherit}
.plik:hover{border-color:var(--mag)}
.plik i{font:700 11px var(--disp);font-style:normal;background:#d7263d;color:#fff;border-radius:3px;padding:3px 6px}
.plik em{margin-left:auto;font-style:normal;color:var(--dim);font-size:14px;white-space:nowrap}
.rysunki{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.rysunki a{border:1px solid var(--linia);border-radius:6px;overflow:hidden;background:#fff;cursor:zoom-in;aspect-ratio:4/3}
.rysunki img{width:100%;height:100%;object-fit:contain;display:block}
.lightbox{position:fixed;inset:0;background:rgba(20,22,26,.92);z-index:20;display:flex;align-items:center;justify-content:center;padding:30px}
.lightbox img{max-width:100%;max-height:100%;background:#fff;border-radius:6px}
.lightbox button{position:absolute;top:12px;right:16px;background:none;border:0;color:#fff;font-size:40px;cursor:pointer;line-height:1}

/* kalkulator */
.kalk{display:grid}
.kp{display:grid;grid-template-columns:1fr 120px 44px;gap:8px;align-items:center;padding:7px 0;border-bottom:1px solid var(--linia)}
.kp input{border:1px solid var(--linia);border-radius:5px;padding:7px 9px;text-align:right;font:inherit;min-width:0;width:100%}
.kp em{font-style:normal;color:var(--dim);font-size:14px}
.fakty b.ok{color:var(--ok)}.fakty b.zle{color:var(--zle)}

/* kontakt */
.adres{line-height:1.8}
.form{display:grid;gap:14px;max-width:560px}
.form label{display:grid;gap:5px;font-weight:600}
.form input,.form textarea{border:1px solid var(--linia);border-radius:6px;padding:10px 12px;font:400 16px var(--body);width:100%}
.form [aria-invalid="true"]{border-color:var(--zle)}
.form .zgoda{display:flex;flex-wrap:wrap;gap:8px;font-weight:400;align-items:flex-start}
.form .zgoda input{width:auto;margin-top:5px}
.blad{color:var(--zle);font-weight:400;font-size:14px;flex-basis:100%}
.ukryte{position:absolute;left:-9999px}
.kom{border-radius:6px;padding:12px 16px}
.kom.ok{background:#e9f6ee;color:#1e6b3c}
.kom.zle{background:#fdecea;color:#8e1c1c;margin-bottom:14px}
.materialy{display:grid;grid-template-columns:110px 1fr;gap:8px 14px;margin:0}
.materialy dt{font:700 16px var(--disp)}
.materialy dd{margin:0}

/* stopka */
.stopka{background:var(--graf);color:#c9ccd3;padding:28px max(16px,calc((100% - var(--szer))/2));display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;font-size:15px;line-height:1.6}
.stopka b{color:#fff;font:600 15px var(--disp);letter-spacing:.04em;display:block;margin-bottom:6px}
.stopka a{color:#fff;text-decoration:none}
.stopka a:hover{text-decoration:underline}

@media print{.top::after,.menu,.stopka,.zakl,.miniatury,.rzad,.szukaj{display:none!important}.js .zakl-tresc{display:block!important}.tylko-druk{display:block}}
