:root{
  --bg:#fcfbf9; --bg-alt:#f1efe9; --ink:#141414; --muted:#454545; --soft:#666;
  --red:#e8404a; --red-soft:#fff2f3;
  --line:rgba(20,20,20,.08); --line-strong:rgba(20,20,20,.12);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);font-family:Manrope,system-ui,sans-serif;color:var(--ink);-webkit-font-smoothing:antialiased}
a{color:var(--ink)} a:hover{color:var(--red)}
.wrap{max-width:1280px;margin:0 auto;padding-left:56px;padding-right:56px}

/* ── typografia ── */
.h-display{font:900 clamp(46px,6.6vw,84px)/0.98 Archivo,sans-serif;text-transform:uppercase;letter-spacing:-2px;margin:0}
.h-page{font:900 clamp(42px,5.6vw,68px)/1.02 Archivo,sans-serif;text-transform:uppercase;letter-spacing:-2px;margin:0;max-width:900px}
.h-section{font:900 clamp(30px,3.4vw,40px)/1.06 Archivo,sans-serif;text-transform:uppercase;letter-spacing:-1px;margin:0}
.dot{color:var(--red)}
.kicker{font:900 13px Archivo,sans-serif;text-transform:uppercase;letter-spacing:2px;color:var(--red)}
.lead{font-size:17px;line-height:1.65;color:var(--muted);margin:0;text-wrap:pretty}
.rule-head{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.rule-head .kicker{flex:none}
.rule-head::after{content:"";flex:1;height:1px;background:var(--line)}

/* ── ikony ── */
.ic{width:1em;height:1em;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;vertical-align:-.12em;flex:none}
.ico{width:42px;height:42px;border-radius:12px;background:var(--red-soft);color:var(--red);display:flex;align-items:center;justify-content:center;flex:none}
.ico .ic{width:20px;height:20px}
.ico.dark{background:#262626;color:#fff}
.ck-row{display:flex;gap:9px;align-items:flex-start;line-height:1.45}
.ck-row .ic{width:15px;height:15px;color:var(--red);margin-top:3px;stroke-width:2.6}
.dark-list .ck-row .ic{color:var(--red)}

/* ── przyciski ── */
.btn{display:inline-flex;align-items:center;gap:8px;text-decoration:none;background:var(--red);color:#fff;font:900 13px Archivo,sans-serif;text-transform:uppercase;letter-spacing:1px;padding:14px 28px;border-radius:999px;border:0;cursor:pointer;white-space:nowrap;transition:background .15s,color .15s,transform .15s}
.btn:hover{background:var(--ink);color:#fff;transform:translateY(-1px)}
.btn.big{font-size:14px;padding:16px 30px}
.btn.dark{background:var(--ink)} .btn.dark:hover{background:var(--red)}
.btn.ghost-w{background:transparent;border:2px solid #fff;color:#fff;padding:12px 26px}
.btn.ghost-w:hover{background:var(--red);border-color:var(--red);color:#fff}
.btn:focus-visible,a:focus-visible{outline:3px solid var(--red);outline-offset:2px}

/* ── nawigacja ── */
.nav{position:sticky;top:0;z-index:50;background:rgba(252,251,249,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.nav-in{max-width:1280px;margin:0 auto;padding:17px clamp(20px,4vw,56px);display:flex;align-items:center;justify-content:space-between;gap:24px}
.nav-logo{text-decoration:none;font:900 26px Archivo,sans-serif;letter-spacing:-1.2px;text-transform:uppercase;flex:none;line-height:1;display:inline-flex;align-items:center}
.nav-logo img.logo-img,.logo-img{height:24px!important;width:auto!important;max-width:240px;display:block}
.logo-txt{font:900 26px Archivo,sans-serif;letter-spacing:-1.2px;text-transform:uppercase;line-height:1;white-space:nowrap}
.nav-right{display:flex;align-items:center;gap:clamp(14px,1.8vw,24px);min-width:0}
.nav-links{display:flex;align-items:center;gap:clamp(12px,1.5vw,20px);font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:1px;white-space:nowrap;line-height:1}
.nav-links a{text-decoration:none;color:var(--muted);cursor:pointer;line-height:1;display:inline-flex;align-items:center}
.nav-links a:hover,.nav-links a.active{color:var(--red)}
.nav-tel{text-decoration:none;font-size:13px;font-weight:800;white-space:nowrap;display:inline-flex;align-items:center;gap:7px;border-left:1px solid var(--line-strong);padding-left:clamp(14px,1.8vw,24px);line-height:1}
.nav-tel .ic{width:15px;height:15px;color:var(--red)}

/* ── hamburger + mobilne menu (domyślnie ukryte na desktopie) ── */
.nav-toggle-cb{display:none}
.nav-burger{display:none;flex-direction:column;justify-content:center;gap:5px;width:42px;height:42px;cursor:pointer;flex:none}
.nav-burger span{display:block;height:2.5px;width:22px;background:var(--ink);border-radius:2px;transition:transform .25s,opacity .2s}
.nav-mobile{display:none}
.nav .btn{padding:11px 22px;flex:none}

/* ── mega menu ── */
.has-mega{position:relative;display:inline-flex;align-items:center}
.mega-trig{display:inline-flex;align-items:center;gap:5px;cursor:pointer;color:var(--muted);text-decoration:none;line-height:1}
.mega-trig .ic{width:12px;height:12px;stroke-width:3;transition:transform .18s;color:inherit}
.has-mega:hover .mega-trig,.has-mega:focus-within .mega-trig,.mega-trig.active{color:var(--red)}
.has-mega:hover .mega-trig .ic,.has-mega:focus-within .mega-trig .ic{transform:rotate(180deg)}

.mega{position:absolute;top:calc(100% + 18px);left:50%;transform:translate(-50%,6px);width:520px;max-width:calc(100vw - 40px);
  background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 20px 48px rgba(20,20,20,.16);
  padding:8px;display:flex;flex-direction:column;gap:2px;
  opacity:0;visibility:hidden;pointer-events:none;transition:opacity .16s ease,transform .16s ease,visibility .16s;
  z-index:60;text-transform:none;letter-spacing:0}
.has-mega:hover .mega,.has-mega:focus-within .mega{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,0)}
.mega::before{content:"";position:absolute;top:-20px;left:0;right:0;height:20px}

.mega-row{display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:11px;text-decoration:none;color:var(--ink);cursor:pointer;transition:background .13s}
.mega-row:hover{background:var(--bg-alt);color:var(--ink)}
.mega-row .ico{width:40px;height:40px;border-radius:11px;flex:none}
.mega-row .ico .ic{width:19px;height:19px}
.mega-row .body{flex:1;min-width:0}
.mega-row .t{font:900 14px Archivo,sans-serif;text-transform:uppercase;letter-spacing:0;line-height:1.2}
.mega-row .d{font-size:12.5px;color:var(--soft);line-height:1.45;font-weight:500;margin-top:3px;white-space:normal}
.mega-row .price{flex:none;text-align:right}
.mega-row .price .v{font:900 19px Archivo,sans-serif;letter-spacing:-.5px;line-height:1.1}
.mega-row .price .u{font-size:11px;font-weight:700;color:var(--soft);text-transform:uppercase;letter-spacing:.5px;margin-top:2px}
.mega-row.hl .ico{background:var(--ink);color:#fff}
.mega-row.hl .price .v{color:var(--red)}
.mega-sep{height:1px;background:var(--line);margin:2px 12px}
.mega-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px 8px;font-size:12.5px;color:var(--soft);white-space:normal}
.mega-foot b{font:900 12px Archivo,sans-serif;text-transform:uppercase;letter-spacing:.5px;color:var(--red);cursor:pointer;white-space:nowrap}

/* ── karty ── */
.card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px 24px;box-shadow:0 2px 8px rgba(20,20,20,.04);transition:transform .18s,box-shadow .18s,border-color .18s}
a.card:hover,.card.hov:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(20,20,20,.10);border-color:rgba(232,64,74,.35)}
.card b,.tile b{font:900 14px Archivo,sans-serif;text-transform:uppercase}
.card .desc{font-size:13px;color:var(--soft);margin-top:4px;line-height:1.55}
.feature .ico{margin-bottom:14px}
.feature b{display:block}

/* ── chipy ── */
.chips{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.chips .label{font:900 13px Archivo,sans-serif;text-transform:uppercase;letter-spacing:1px;margin-right:6px}
.chip{background:#fff;border:1px solid var(--line-strong);border-radius:999px;padding:8px 15px;font-size:13px;font-weight:600;color:var(--muted);display:inline-flex;align-items:center;gap:7px}
.chip .ic{width:13px;height:13px;color:var(--red);stroke-width:2.6}

/* ── cytat / FAQ / CTA / stopka ── */
.quote{border-left:4px solid var(--red);padding:8px 0 8px 32px;max-width:860px}
.quote .q{font:700 clamp(20px,2.5vw,28px)/1.35 Archivo,sans-serif;letter-spacing:-.5px}
.quote .who{font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:1.5px;color:var(--red);margin-top:12px}
.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.faq-grid .card b{font:700 15px Manrope,sans-serif;text-transform:none;display:flex;gap:9px;align-items:center}
.faq-grid .card b .ic{width:16px;height:16px;color:var(--red)}
.faq-grid .card .desc{font-size:14px;color:#555;line-height:1.6;margin-top:8px}
.cta-band{background:var(--ink);color:#fff;border-radius:20px;padding:40px 44px;display:flex;align-items:center;justify-content:space-between;gap:32px;flex-wrap:wrap}
.cta-band .t{font:900 26px Archivo,sans-serif;text-transform:uppercase}
.cta-band .s{font-size:14px;color:#aaa;margin-top:6px}
.footer{background:var(--ink);color:#fff;margin-top:56px}

/* ── wysuwana stopka: odsłania się spod treści przy scrollu na dół ──
   Treść ma własne tło i wyższy z-index, stopka siedzi pod nią (fixed).
   Margines dolny na treści robi miejsce, w którym stopka się odsłania.
   Tylko desktop — na mobile wysokość stopki jest zmienna, efekt byłby zawodny. */
@media(min-width:961px){
  .reveal-wrap{position:relative;z-index:2;background:var(--bg);
               margin-bottom:var(--footer-h,420px);
               box-shadow:0 30px 50px -28px rgba(20,20,20,.22)}
  .footer{position:fixed;left:0;right:0;bottom:0;z-index:1;margin-top:0}
}
/* gdy okno jest wyższe niż strona, reveal nie ma sensu — JS zdejmie klasę */
.reveal-off .reveal-wrap{position:static;margin-bottom:0;box-shadow:none}
.reveal-off .footer{position:static}
.footer .cols{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:48px;padding:56px 0 0}
.footer .brand{font:900 22px Archivo,sans-serif;text-transform:uppercase}
.footer p{font-size:14px;color:#999;line-height:1.6;max-width:340px;margin:12px 0 0}
.footer .col-h{font:900 12px Archivo,sans-serif;text-transform:uppercase;letter-spacing:1px;color:#777;margin-bottom:2px}
.footer .col{display:flex;flex-direction:column;gap:11px;font-size:14px}
.footer .col a{color:#fff;text-decoration:none;display:inline-flex;align-items:center;gap:9px;cursor:pointer}
.footer .col a .ic{width:15px;height:15px;color:var(--red)}
.footer .col a:hover{color:var(--red)}
.footer .legal{margin-top:20px;padding:0 0 28px;display:flex;justify-content:space-between;gap:16px;font-size:12px;color:#777;flex-wrap:wrap}
.footer .eko{border-top:1px solid #333;margin-top:40px;padding-top:26px;display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap;text-align:center}
.footer .eko-label{font:900 12px Archivo,sans-serif;text-transform:uppercase;letter-spacing:1px;color:#777;margin-right:4px;width:100%;text-align:center;margin-bottom:4px}
.footer .eko-item{display:inline-flex;align-items:center;gap:9px;text-decoration:none;background:#1f1f1f;border:1px solid #333;border-radius:12px;padding:10px 16px;transition:border-color .15s,background .15s}
.footer a.eko-item:hover{border-color:var(--red);background:#262626}
.footer .eko-item .ic{width:17px;height:17px;color:var(--red);flex:none}
.footer .eko-item b{font:900 13px Archivo,sans-serif;text-transform:uppercase;color:#fff}
.footer .eko-item span{font-size:12px;color:#999}
.footer .eko-current{opacity:.6}
.footer .eko-current b{color:#bbb}

/* ── realizacje ── */
.works{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:150px;gap:16px}
.work{position:relative;display:block;text-decoration:none;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 2px 8px rgba(20,20,20,.05);transition:transform .2s,box-shadow .2s;grid-row:span 2}
.work-big{grid-column:span 2}
.work-tall{grid-row:span 2}
.work:hover{transform:translateY(-4px);box-shadow:0 22px 44px rgba(20,20,20,.18);z-index:2}
.work-shot{position:absolute;inset:0;overflow:hidden;background:var(--bg-alt)}
.work-shot img{width:100%;height:100%;object-fit:cover;object-position:top center;display:block;transition:transform .5s ease}
.work:hover .work-shot img{transform:scale(1.07)}
.work-ph{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font:900 52px Archivo,sans-serif;color:#fff;letter-spacing:-2px}
.work-bar{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 16px;background:linear-gradient(0deg,rgba(20,20,20,.92),rgba(20,20,20,.72) 60%,transparent);color:#fff;transform:translateY(calc(100% - 52px));transition:transform .28s ease}
.work:hover .work-bar{transform:translateY(0)}
.work-info b{display:block;font:900 14px Archivo,sans-serif;text-transform:uppercase;line-height:1.2}
.work-info span{font-size:12px;color:#bbb}
.work-go{flex:none;width:34px;height:34px;border-radius:50%;background:var(--red);display:flex;align-items:center;justify-content:center;opacity:0;transform:scale(.6);transition:opacity .28s,transform .28s}
.work:hover .work-go{opacity:1;transform:scale(1)}
.work-go .ic{width:15px;height:15px;color:#fff}

/* ═══ KREATOR ═══ */
.kreator{background:var(--bg-alt);border-top:2px solid var(--ink);border-bottom:2px solid var(--ink)}
.kreator-box{background:#fff;border-radius:20px;box-shadow:0 18px 50px rgba(20,20,20,.12);overflow:hidden}
.k-tabs{display:flex;border-bottom:1px solid rgba(20,20,20,.1)}
.k-tab{flex:1;padding:15px 8px;text-align:center;font:900 12px Archivo,sans-serif;text-transform:uppercase;letter-spacing:1px;border:0;border-right:1px solid var(--line);cursor:pointer;background:#fff;color:#999}
.k-tab:last-child{border-right:0}
.k-tab.active{background:var(--red);color:#fff}
.k-tab.done{color:var(--ink)}
.k-grid{display:grid;grid-template-columns:1fr 300px}
.k-main{padding:28px 32px;min-height:420px}
.k-side{border-left:1px solid var(--line);background:#fcfbf9;padding:24px;display:flex;flex-direction:column;gap:12px}
.k-h{font:900 18px Archivo,sans-serif;text-transform:uppercase;margin:0 0 16px}
.k-hint{font-size:13px;color:var(--soft);margin-top:16px}
.k-err{font-size:12.5px;color:#a33;margin-top:10px;font-weight:600;min-height:16px}
.k-pkg{display:flex;gap:16px;align-items:center;border-radius:14px;border:2px solid rgba(20,20,20,.15);background:#fff;padding:18px 20px;cursor:pointer;margin-bottom:12px;transition:border-color .15s,background .15s}
.k-pkg.on{border-color:var(--red);background:var(--red-soft)}
.k-pkg .t{font:900 16px Archivo,sans-serif;text-transform:uppercase}
.k-pkg .d{font-size:13px;color:#555;margin-top:3px}
.k-pkg .p{font:900 22px Archivo,sans-serif;white-space:nowrap}
.k-pkg .body{flex:1;min-width:0}
.k-addon{display:flex;align-items:center;gap:12px;border-radius:12px;border:2px solid var(--line-strong);background:#fff;padding:11px 14px;cursor:pointer;margin-bottom:8px;transition:border-color .15s,background .15s}
.k-addon.on{border-color:var(--red);background:var(--red-soft)}
.k-addon .aico{width:34px;height:34px;border-radius:9px;background:var(--red-soft);color:var(--red);display:flex;align-items:center;justify-content:center;flex:none}
.k-addon.on .aico{background:#fff}
.k-addon .aico .ic{width:16px;height:16px}
.k-addon .box{width:19px;height:19px;border-radius:6px;border:2px solid rgba(20,20,20,.4);background:#fff;color:#fff;display:flex;align-items:center;justify-content:center;flex:none}
.k-addon.on .box{background:var(--red);border-color:var(--red)}
.k-addon .box .ic{width:12px;height:12px;stroke-width:3}
.k-addon .body{flex:1;min-width:0}
.k-addon .n{font-size:13.5px;font-weight:800}
.k-addon .d{font-size:12px;color:#777}
.k-addon .p{font:900 14px Archivo,sans-serif;flex:none;white-space:nowrap}
.k-addon .p.free{color:var(--red)}
.k-qty{display:flex;gap:6px;align-items:center}
.k-qty button{width:24px;height:24px;border-radius:8px;border:1.5px solid rgba(20,20,20,.35);background:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;cursor:pointer;font-size:14px;padding:0}
.k-qty b{font-size:14px;min-width:16px;text-align:center}
.k-form{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.k-form label{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#555}
.k-form .full{grid-column:1/-1}
.k-form input,.k-form select,.k-form textarea{border:1.5px solid rgba(20,20,20,.18);border-radius:10px;padding:11px 12px;font:600 14px Manrope,sans-serif;outline:none;background:#fff;color:var(--ink)}
.k-form input:focus,.k-form select:focus,.k-form textarea:focus{border-color:var(--red)}
.k-form textarea{resize:vertical}
.k-brief-sep{font:900 11px Archivo,sans-serif;text-transform:uppercase;letter-spacing:1px;color:var(--red);margin:20px 0 10px;padding-top:14px;border-top:1px solid var(--line)}
.kol-chip:hover{border-color:var(--red) !important}
.k-upload:hover{border-color:var(--red) !important;background:var(--red-soft) !important}
.k-sum{border:1px solid var(--line-strong);border-radius:12px;overflow:hidden}
.k-sum .row{display:flex;justify-content:space-between;gap:16px;padding:11px 16px;border-bottom:1px solid #ddd;font-size:14px}
.k-sum .row b{font:900 14px Archivo,sans-serif;white-space:nowrap}
.k-sum .total{display:flex;justify-content:space-between;padding:14px 16px;background:var(--ink);color:#fff;align-items:baseline;border-bottom:0}
.k-sum .total span{font:900 12px Archivo,sans-serif;text-transform:uppercase;letter-spacing:1px}
.k-sum .total b{font:900 22px Archivo,sans-serif}
.k-consent{display:flex;gap:10px;align-items:flex-start;margin-top:16px;font-size:12.5px;color:#555;cursor:pointer;line-height:1.5}
.k-consent .box{width:18px;height:18px;border-radius:6px;border:2px solid rgba(20,20,20,.4);background:#fff;color:#fff;display:flex;align-items:center;justify-content:center;flex:none;margin-top:1px}
.k-consent.on .box{background:var(--red);border-color:var(--red)}
.k-consent .box .ic{width:11px;height:11px;stroke-width:3}
.k-side .sh{font:900 12px Archivo,sans-serif;text-transform:uppercase;letter-spacing:1px;color:#777}
.k-side .srow{display:flex;justify-content:space-between;gap:10px;font-size:13px;border-bottom:1px solid var(--line);padding-bottom:8px}
.k-side .srow b{font:900 13px Archivo,sans-serif;white-space:nowrap}
.k-side .stotal{margin-top:auto;background:var(--ink);color:#fff;border-radius:12px;padding:16px 18px}
.k-side .stotal .l{font:900 10px Archivo,sans-serif;text-transform:uppercase;letter-spacing:1px;color:#999}
.k-side .stotal .v{font:900 24px Archivo,sans-serif;margin-top:4px}
.k-side .snote{font-size:11.5px;color:#888;line-height:1.5}
.k-nav{display:flex;justify-content:space-between;gap:12px;padding:0 32px 26px}
.k-nav .back{background:none;border:0;font:800 13px Manrope,sans-serif;color:#555;cursor:pointer;text-transform:uppercase;letter-spacing:.5px}
.k-nav .back[disabled]{visibility:hidden}
.k-success{padding:48px 40px;text-align:center}
.k-success .sico{width:64px;height:64px;border-radius:18px;background:var(--red-soft);color:var(--red);display:flex;align-items:center;justify-content:center;margin:0 auto 18px}
.k-success .sico .ic{width:30px;height:30px;stroke-width:2.4}
.k-success .big{font:900 30px Archivo,sans-serif;text-transform:uppercase}
.k-success p{font-size:14.5px;color:#555;line-height:1.65;max-width:520px;margin:14px auto 0}

/* ── responsywność ── */
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.grid-fill{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:14px}
@media(max-width:1100px){
  .mega{width:min(420px,calc(100vw - 32px));left:auto;right:0;transform:translate(0,6px)}
  .has-mega:hover .mega,.has-mega:focus-within .mega{transform:translate(0,0)}
  .mega-row .d{display:none}
}
@media(max-width:960px){
  .wrap{padding-left:22px;padding-right:22px}
  .k-grid{grid-template-columns:1fr}
  .k-side{border-left:0;border-top:1px solid var(--line)}
  .footer .cols{grid-template-columns:1fr;gap:28px}
  .grid-2,.grid-3{grid-template-columns:1fr}
  .grid-4{grid-template-columns:1fr 1fr}
  .works{grid-template-columns:repeat(2,1fr)}
  .work-big{grid-column:span 2}
  .work-tall{grid-row:span 2}
  .faq-grid{grid-template-columns:1fr}
  .nav-links{display:none}
  .nav-tel{display:none}
  .nav-cta{display:none}
  .nav-burger{display:flex}
  /* panel mobilny: wysuwany pod paskiem nawigacji */
  .nav-mobile{display:flex;flex-direction:column;gap:4px;position:absolute;top:100%;left:0;right:0;background:var(--bg);border-bottom:1px solid var(--line-strong);box-shadow:0 20px 40px rgba(20,20,20,.12);padding:14px 22px 20px;max-height:0;overflow:hidden;opacity:0;pointer-events:none;transition:max-height .3s ease,opacity .25s,padding .3s}
  .nav-toggle-cb:checked ~ .nav-mobile,
  .nav.menu-open .nav-mobile{max-height:80vh;opacity:1;pointer-events:auto;overflow:auto}
  /* animacja hamburgera w X */
  .nav-toggle-cb:checked ~ .nav-in .nav-burger span:nth-child(1),
  .nav.menu-open .nav-burger span:nth-child(1){transform:translateY(7.5px) rotate(45deg)}
  .nav-toggle-cb:checked ~ .nav-in .nav-burger span:nth-child(2),
  .nav.menu-open .nav-burger span:nth-child(2){opacity:0}
  .nav-toggle-cb:checked ~ .nav-in .nav-burger span:nth-child(3),
  .nav.menu-open .nav-burger span:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}
  .nm-item{display:flex;align-items:center;gap:12px;text-decoration:none;padding:12px 10px;border-radius:12px;background:var(--bg-alt)}
  .nm-item .ic{width:20px;height:20px;color:var(--red);flex:none}
  .nm-item b{display:block;font:900 14px Archivo,sans-serif;text-transform:uppercase;color:var(--ink)}
  .nm-item span{font-size:12.5px;color:var(--muted)}
  .nm-link{display:flex;align-items:center;gap:10px;text-decoration:none;padding:11px 10px;font:800 14px Manrope,sans-serif;color:var(--ink);border-radius:10px}
  .nm-link:hover{background:var(--bg-alt)}
  .nm-link .ic{width:16px;height:16px;color:var(--red)}
  .nav-tel{border-left:0;padding-left:0}
}
@media(max-width:560px){
  .k-form{grid-template-columns:1fr}
  .k-tab{font-size:10px;padding:12px 4px;letter-spacing:.5px}
  .nav-tel span{display:none}
  .logo-img{height:20px}
  .grid-4{grid-template-columns:1fr}
  .works{grid-template-columns:1fr;grid-auto-rows:auto}
  .work,.work-big,.work-tall{grid-row:auto;grid-column:auto}
  .work-shot{position:relative;aspect-ratio:16/10;inset:auto}
  .work-bar{transform:translateY(0)}
  .work-go{opacity:1;transform:scale(1)}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn:hover,a.card:hover,.work:hover{transform:none}}

/* ── polityka prywatności (dokument) ── */
.polityka h2{font:900 20px Archivo,sans-serif;text-transform:uppercase;letter-spacing:-.5px;margin:34px 0 12px;color:var(--ink)}
.polityka h3{font:800 15px Manrope,sans-serif;margin:22px 0 8px;color:var(--ink)}
.polityka p{font-size:15px;line-height:1.7;color:#333;margin:0 0 12px}
.polityka ul{margin:0 0 14px;padding-left:22px}
.polityka li{font-size:15px;line-height:1.7;color:#333;margin-bottom:6px}
.polityka a{color:var(--red);font-weight:600}
.polityka b{color:var(--ink)}
.polityka em{color:#888;font-size:13.5px}

/* ── radiobuttony w formularzu kontaktu ── */
.kf-label{font-size:12.5px;font-weight:700;color:var(--ink);margin-bottom:8px;text-align:center}
.kf-radios{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}
.kf-radio{display:inline-flex;align-items:center;gap:9px;border:2px solid var(--line-strong);background:#fff;border-radius:12px;padding:11px 16px;cursor:pointer;font-size:13.5px;font-weight:600;transition:border-color .15s,background .15s}
.kf-radio:hover{border-color:var(--red)}
.kf-radio input{width:17px;height:17px;accent-color:var(--red);margin:0;flex:none;cursor:pointer}
.kf-radio:has(input:checked),.kf-radio.on{border-color:var(--red);background:var(--red-soft)}

/* ── opinie klientów ── */
.opinia{display:flex;flex-direction:column;gap:12px}
.opinia .gwiazdki{display:flex;gap:3px}
.opinia .gwiazdki .ic{width:16px;height:16px;fill:var(--red);stroke:none}
.opinia .gwiazdki .ic.pusta{fill:rgba(20,20,20,.15)}
.opinia .tresc{font-size:14.5px;line-height:1.65;color:var(--ink);margin:0;flex:1}
.opinia .autor{display:flex;flex-direction:column;gap:1px;padding-top:10px;border-top:1px solid var(--line)}
.opinia .autor b{font:900 13px Archivo,sans-serif;text-transform:uppercase}
.opinia .autor span{font-size:12.5px;color:var(--muted)}

/* ── baner zgody cookies (RODO) ── */
.cookie-baner[hidden]{display:none !important}
.cookie-baner{position:fixed;left:16px;right:16px;bottom:16px;z-index:200;max-width:680px;margin:0 auto;background:#141414;color:#fff;border-radius:16px;box-shadow:0 24px 60px rgba(20,20,20,.4);padding:20px 24px;display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.cookie-baner .cb-txt{flex:1;min-width:240px;font-size:13.5px;line-height:1.55;color:#ccc}
.cookie-baner .cb-txt a{color:#fff;font-weight:700;text-decoration:underline}
.cookie-baner .cb-btns{display:flex;gap:10px;flex:none}
.cookie-baner button{border:0;border-radius:10px;padding:11px 22px;font:800 13px Manrope,sans-serif;cursor:pointer;white-space:nowrap}
.cookie-baner .cb-deny{background:transparent;color:#bbb;border:1.5px solid #444}
.cookie-baner .cb-deny:hover{border-color:#777;color:#fff}
.cookie-baner .cb-accept{background:var(--red);color:#fff}
.cookie-baner .cb-accept:hover{background:#d63340}
@media(max-width:560px){.cookie-baner{padding:16px 18px}.cookie-baner .cb-btns{width:100%}.cookie-baner button{flex:1}}
