/* Inner pages of sufitnapinany.info (kontakt, realizacje, …) — same tokens and type as the approved home (ver6.css). */
.pg{padding:28px 0 72px}
.crumbs{display:flex;flex-wrap:wrap;gap:6px;font-size:13px;color:var(--muted);margin-bottom:20px}
.crumbs a{color:var(--muted);text-decoration:underline;text-underline-offset:3px}.crumbs a:hover{color:var(--text)}
.crumbs span[aria-hidden]{opacity:.6}
.pg-head{max-width:760px;margin-bottom:40px}
.pg-head .h1{font-size:60px}
.pg-head .lead{max-width:60ch;margin:16px 0 0;font-size:18px}
.sec-t{font-family:var(--head);font-weight:500;font-size:34px;line-height:1.15;margin:0 0 18px}

/* ---------- kontakt ---------- */
.k-grid{display:grid;grid-template-columns:5fr 6fr;gap:32px;align-items:start}
.k-cards{display:grid;gap:14px}
.k-card{background:var(--surface);border-radius:8px;padding:20px 22px}
.k-card h2{font:600 13px/1.3 var(--body);letter-spacing:.12em;text-transform:uppercase;color:var(--gold-t);margin:0 0 10px}
.k-card p{margin:0;font-size:16px;line-height:1.6}
.k-tel{display:flex;flex-direction:column;gap:6px}
.k-tel a{font-size:22px;font-weight:600;color:var(--text);text-decoration:none;display:inline-flex;align-items:baseline;gap:10px;min-height:44px;align-items:center}
.k-tel a small{font-size:14px;font-weight:400;color:var(--muted)}
.k-tel a:hover{color:var(--accent)}
.k-card a.mail{color:var(--text);font-size:17px;text-decoration:underline;text-underline-offset:4px}
.k-hours{width:100%;border-collapse:collapse;font-size:15px}.k-hours td{padding:3px 0}.k-hours td+td{text-align:right;color:var(--muted)}
.k-map{margin:0;border-radius:8px;overflow:hidden;background:var(--surface)}
.k-map img{display:block;width:100%;height:auto}
.k-map figcaption{display:flex;flex-wrap:wrap;gap:8px 18px;justify-content:space-between;align-items:center;padding:12px 16px;font-size:14px;color:var(--muted)}
.k-map figcaption a{color:var(--accent);font-weight:600}
.k-form{background:var(--surface);border-radius:8px;padding:24px;margin-top:24px}
.k-form .sec-t{font-size:28px;margin-bottom:6px}
.k-form>p{color:var(--muted);font-size:15px;margin:0 0 18px}
.fld{display:grid;gap:6px;margin-bottom:14px}
.fld label{font-size:14px;color:var(--muted)}
.fld input,.fld textarea{font:400 16px/1.4 var(--body);color:var(--text);background:var(--bg);border:1px solid color-mix(in srgb,var(--text) 22%,transparent);
  border-radius:6px;padding:12px 14px;width:100%}
.fld textarea{min-height:120px;resize:vertical}
.fld input:focus,.fld textarea:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:transparent}
.f2{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}
.k-note{font-size:13px;color:var(--muted);margin:12px 0 0}

/* ---------- realizacje: hub ---------- */
.rz-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px 22px}
.rz{display:block;color:inherit;text-decoration:none}
.rz .ph{position:relative;display:block;border-radius:8px;overflow:hidden;background:var(--surface)}
.rz img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;transition:transform .5s var(--out),filter .5s var(--out)}
a.rz:hover img{transform:scale(1.03);filter:brightness(1.06)}
.rz h2{font:500 22px/1.25 var(--head);margin:14px 0 4px}
.rz p{font-size:15px;color:var(--muted);margin:0}
.rz .soon{position:absolute;left:12px;top:12px;background:rgb(5 8 9/.7);color:#F8F7F4;font-size:12px;letter-spacing:.06em;padding:5px 10px;border-radius:999px}
.rz .go{position:absolute;right:12px;bottom:12px;width:40px;height:40px;border-radius:50%;background:#F8F7F4;color:#091114;display:grid;place-items:center}
.rz .go .ar{width:18px;height:18px}

/* ---------- realizacje: one work ---------- */
.w-hero{margin:0 0 36px;border-radius:8px;overflow:hidden;background:var(--surface)}
.w-hero img{display:block;width:100%;max-height:72vh;object-fit:cover}
.w-body{max-width:760px}
.w-body h2{font:500 32px/1.2 var(--head);margin:44px 0 14px}
.w-body p{font-size:17px;line-height:1.75;margin:0 0 16px}
.w-body a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}
.gal{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:22px 0 8px;max-width:1100px}
.gal.n1{grid-template-columns:1fr;max-width:440px}.gal.n2{grid-template-columns:1fr 1fr;max-width:900px}
.gal a{display:block;border-radius:6px;overflow:hidden;background:var(--surface)}
.gal img{display:block;width:100%;aspect-ratio:3/4;object-fit:cover;transition:transform .4s var(--out)}
.gal a:hover img{transform:scale(1.03)}
.faq{max-width:760px;margin-top:56px}
.faq details{border-top:1px solid color-mix(in srgb,var(--text) 14%,transparent);padding:4px 0}
.faq details:last-child{border-bottom:1px solid color-mix(in srgb,var(--text) 14%,transparent)}
.faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:16px;align-items:center;min-height:52px;font-size:17px;font-weight:600}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font:300 26px/1 var(--body);color:var(--gold-t);transition:transform .2s var(--out)}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{margin:0 0 16px;color:var(--muted);font-size:16px;line-height:1.7}
.w-cta{margin-top:56px;background:var(--surface2);border-radius:8px;padding:32px;display:grid;grid-template-columns:1fr auto;gap:20px 32px;align-items:center}
.w-cta p{margin:0;font-size:17px;line-height:1.65;max-width:62ch}
.w-cta .ctas{justify-content:flex-end}
.w-more{margin-top:56px}
.w-more .rz-grid{grid-template-columns:repeat(3,1fr)}

@media (max-width:1100px){.rz-grid,.w-more .rz-grid{grid-template-columns:1fr 1fr}.k-grid{grid-template-columns:1fr}}
@media (max-width:700px){
  .pg{padding:16px 0 48px}
  .pg-head{margin-bottom:28px}.pg-head .h1{font-size:40px}.pg-head .lead{font-size:16px}
  .rz-grid,.w-more .rz-grid{grid-template-columns:1fr 1fr;gap:20px 12px}.rz h2{font-size:18px}.rz p{font-size:13px}
  .gal{grid-template-columns:1fr 1fr;gap:8px}.gal.n1{grid-template-columns:1fr}
  .w-hero{margin:0 calc(-1*var(--gut)) 28px;border-radius:0}
  .w-body h2{font-size:26px;margin-top:36px}.w-body p{font-size:16px}
  .w-cta{grid-template-columns:1fr;padding:24px 20px}.w-cta .ctas{justify-content:stretch}
  .f2{grid-template-columns:1fr}.k-form{padding:20px 16px}.k-tel a{font-size:20px}
}

/* ---------- oferta / jak pracujemy ---------- */
.of-txt{background:var(--surface);border-radius:8px;padding:22px 22px 18px;height:100%;display:flex;flex-direction:column}
.of-txt h2{margin-top:0}.of-txt p{flex:1}.of-txt .more{margin-top:10px;font-size:14px}
.of-grid li{display:flex}.of-grid li>a{width:100%}
.of-war{margin-top:56px;max-width:760px}.of-war p{font-size:17px;line-height:1.7}
.jp{display:grid;gap:14px;max-width:820px;counter-reset:none;padding:0;margin:0;list-style:none}
.jp li{display:grid;grid-template-columns:72px 1fr;gap:18px;background:var(--surface);border-radius:8px;padding:22px 24px}
.jp .no{font:500 44px/1 var(--head);color:var(--gold-t);font-variant-numeric:lining-nums}
.jp h2{font:600 19px/1.3 var(--body);margin:4px 0 6px}.jp p{margin:0;color:var(--muted);font-size:16px;line-height:1.65}
@media (max-width:700px){.jp li{grid-template-columns:48px 1fr;gap:12px;padding:18px 16px}.jp .no{font-size:32px}.of-txt{padding:18px 16px}}
/* ---------- opinie ---------- */
.op-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;max-width:820px}
.op{display:flex;flex-direction:column;gap:6px;background:var(--surface);border-radius:8px;padding:26px 26px 22px;color:var(--text);text-decoration:none}
.op-n{font:500 64px/1 var(--head);font-variant-numeric:lining-nums}.op-n small{font-size:24px;color:var(--muted);margin-left:6px}
.op-s{color:var(--gold-t);letter-spacing:.12em;font-size:18px}.op-t{color:var(--muted);font-size:15px}.op .more{margin-top:8px}
@media (max-width:700px){.op-grid{grid-template-columns:1fr}.op-n{font-size:52px}}
/* ---------- server form (FORM_API=1, 06.10.2026): honeypot off screen, the error under the button, the named field marked, the thank-you ---------- */
.hp{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.k-form .blad{margin:12px 0 0;padding:10px 14px;border-radius:6px;font-size:15px;line-height:1.5;color:#FFD2CC;background:rgb(229 72 77/.16)}
[data-theme=light] .k-form .blad{color:#9F1C16;background:rgb(229 72 77/.1)}
.fld.err input,.fld.err textarea{border-color:#E5484D;box-shadow:0 0 0 1px #E5484D}
.fld.err label{color:#E5484D}
.k-ok{margin-top:24px}.k-ok p{margin:0;font-size:16px;line-height:1.6}
.k-form .k-note a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}
/* ---------- photo window on work pages (CEO 06.10 13:30; a/galeria.js): over everything (header 20, cookies 18, WhatsApp 15), a dark
   background in both themes, the photo as large as the screen allows, ‹ › at the sides (48 px, also on phones), × in the corner ---------- */
.lb{position:fixed;inset:0;z-index:60;display:flex;align-items:center;justify-content:center;background:rgb(5 8 10/.97);color:#F8F7F4;
  -webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);   /* .159 12:38: at .94 the page text still showed through — only a dark field under the window */
  padding:56px 72px 12px;touch-action:pan-y}
.lb[hidden]{display:none}
.lb-top{position:absolute;top:0;left:0;right:0;height:56px;display:flex;align-items:center;justify-content:space-between;padding:0 8px 0 20px}
.lb-n{font:500 15px/1 var(--body);letter-spacing:.04em;color:#D9DEE0}
.lb-f{margin:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;width:100%;height:100%;min-height:0}
.lb-i{display:block;max-width:100%;max-height:calc(100% - 30px);   /* as tall as the window allows minus the caption line */
  width:auto;height:auto;object-fit:contain;border-radius:4px;transition:transform .2s ease;user-select:none;-webkit-user-drag:none}
.lb-c{max-width:760px;text-align:center;font-size:14px;line-height:1.45;color:#D9DEE0}
.lb button{display:grid;place-items:center;width:48px;height:48px;padding:0;border:0;border-radius:50%;background:rgb(255 255 255/.12);color:#fff;cursor:pointer}
.lb button:hover{background:rgb(255 255 255/.22)}
.lb button:focus-visible{outline:2px solid #A4EB96;outline-offset:2px}
.lb button svg{width:24px;height:24px}
.lb-p,.lb-q{position:absolute;top:50%;margin-top:-24px}
.lb-p{left:12px}.lb-q{right:12px}.lb-q svg{transform:scaleX(-1)}
.lb-p[hidden],.lb-q[hidden]{display:none}
html.lb-on{overflow:hidden}
@media (max-width:700px){.lb{padding:60px 8px 16px}.lb-top{height:60px;padding-left:16px}.lb-p,.lb-q{top:auto;bottom:max(16px,env(safe-area-inset-bottom));margin:0;background:rgb(255 255 255/.16)}
  .lb-p{left:16px}.lb-q{right:16px}.lb-f{padding-bottom:64px}.lb-c{font-size:13px;padding:0 8px}}
@media (prefers-reduced-motion:reduce){.lb-i{transition:none}}
