/*
Theme Name: DYKBAN STUDIO
Theme URI: https://dykbanstudio.pl/
Author: Elsii
Author URI: https://elsii.pl
Description: Autorski motyw one-page dla DYKBAN STUDIO — produkcja filmowa i telewizyjna. Zbudowany 1:1 z zatwierdzonej makiety. Treść edytowalna przez wtyczkę „Edytor Elsii" (klik w podgląd), układ po stronie motywu.
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: dykban
Tags: one-page, portfolio, video, dark
*/

:root{
  --bg:#0A0D16;
  --bg-2:#0E1320;
  --surface:#141B29;
  --surface-2:#1A2334;
  --line:rgba(255,255,255,.09);
  --line-2:rgba(255,255,255,.14);
  --txt:#F2F5F9;
  --muted:#A6AEBD;
  --muted-2:#7F8898;
  --gold:#2F80C9;
  --gold-soft:#6FB1E8;
  --cyan:#56E0E0;
  --maxw:1280px;
  --pad-lg:170px;
  --pad-sm:96px;
  --ease:cubic-bezier(.22,1,.36,1);
}
*{margin:0;padding:0;box-sizing:border-box}
.has-cursor,.has-cursor *{cursor:none!important}
body{
  background:var(--bg);
  color:var(--txt);
  font-family:'Inter',system-ui,sans-serif;
  font-size:17px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
h1,h2,h3,h4,.display{font-family:'Poppins',sans-serif;font-weight:600;line-height:1.02;letter-spacing:-.02em}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 clamp(20px,5vw,32px)}
section{position:relative}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:4px}
.eyebrow{font-family:'Poppins',sans-serif;font-size:12px;letter-spacing:.28em;text-transform:uppercase;color:var(--gold);display:inline-flex;align-items:center;gap:12px}
.eyebrow::before{content:"";width:28px;height:1px;background:var(--gold);display:inline-block;opacity:.8}

/* ---------- Custom cursor ---------- */
.cursor,.cursor-ring{display:none}
.has-cursor .cursor{display:block;position:fixed;top:0;left:0;width:8px;height:8px;border-radius:50%;background:var(--gold);pointer-events:none;z-index:9999;transform:translate(-50%,-50%);transition:width .3s var(--ease),height .3s var(--ease),opacity .3s}
.has-cursor .cursor-ring{display:block;position:fixed;top:0;left:0;width:38px;height:38px;border:1px solid rgba(255,255,255,.4);border-radius:50%;pointer-events:none;z-index:9998;transform:translate(-50%,-50%);transition:width .35s var(--ease),height .35s var(--ease),border-color .35s,background .35s}
.has-cursor .cursor.hover{width:4px;height:4px}
.has-cursor .cursor-ring.hover{width:72px;height:72px;border-color:transparent;background:rgba(47,128,201,.16);backdrop-filter:blur(2px)}
.cursor-ring .clabel{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:'Poppins';font-size:10px;letter-spacing:.15em;text-transform:uppercase;opacity:0;transition:opacity .3s;color:#fff}
.cursor-ring.show-label .clabel{opacity:1}

/* ---------- Preloader ---------- */
.preloader{position:fixed;inset:0;background:var(--bg);z-index:10000;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:24px;transition:opacity .8s var(--ease),visibility .8s}
.preloader.done{opacity:0;visibility:hidden}
.pl-logo{font-family:'Poppins';font-size:clamp(28px,5vw,52px);font-weight:600;letter-spacing:-.03em;overflow:hidden}
.pl-logo span{display:inline-block;transform:translateY(110%);animation:plRise .9s var(--ease) forwards}
.pl-logo .dot{color:var(--gold)}
@keyframes plRise{to{transform:translateY(0)}}
.pl-bar{width:180px;height:2px;background:rgba(255,255,255,.12);position:relative;overflow:hidden;border-radius:2px}
.pl-bar i{position:absolute;inset:0;left:-100%;background:var(--gold);animation:plLoad 1s var(--ease) .25s forwards}
@keyframes plLoad{to{left:0}}

/* ---------- Nav ---------- */
.nav{position:fixed;top:0;left:0;right:0;z-index:900;padding:22px 0;transition:padding .4s var(--ease),background .4s,border-color .4s;border-bottom:1px solid transparent}
.nav.scrolled{padding:14px 0;background:rgba(10,13,22,.78);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}
.nav-inner{max-width:var(--maxw);margin:0 auto;padding:0 clamp(20px,5vw,32px);display:flex;align-items:center;justify-content:space-between}
.brand{font-family:'Poppins';font-size:22px;font-weight:600;letter-spacing:-.02em;display:flex;align-items:center;gap:2px}
.brand .dot{color:var(--gold)}
.nav-links{display:flex;align-items:center;gap:36px}
.nav-links a{font-size:14.5px;color:var(--muted);position:relative;transition:color .3s}
.nav-links a::after{content:"";position:absolute;left:0;bottom:-6px;width:0;height:1px;background:var(--gold);transition:width .35s var(--ease)}
.nav-links a:hover{color:var(--txt)}
.nav-links a:hover::after{width:100%}
.nav-cta{display:flex;align-items:center;gap:9px;background:var(--gold);color:#FFFFFF;padding:11px 20px;border-radius:100px;font-weight:700;font-size:14px;font-family:'Poppins';transition:transform .3s var(--ease),box-shadow .3s}
.nav-cta:hover{transform:translateY(-2px);box-shadow:0 10px 30px rgba(47,128,201,.35)}
.nav-cta svg{width:15px;height:15px}
.nav-right{display:flex;align-items:center;gap:18px}
.burger{display:none;flex-direction:column;gap:5px;background:none;border:0;cursor:pointer;width:34px;height:24px;justify-content:center;position:relative;z-index:960}
.burger span{width:26px;height:2px;background:var(--txt);transition:.35s var(--ease);transform-origin:center}
.burger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.burger.open span:nth-child(2){opacity:0}
.burger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
@media(max-width:900px){
  .nav-links{display:none}
  .burger{display:flex}
}
/* Mobile menu */
.mmenu{position:fixed;inset:0;z-index:940;background:var(--bg);display:flex;flex-direction:column;justify-content:center;padding:0 8vw;gap:6px;opacity:0;visibility:hidden;transform:translateY(-12px);transition:.5s var(--ease)}
.mmenu.open{opacity:1;visibility:visible;transform:none}
.mmenu a.ml{font-family:'Poppins';font-size:clamp(34px,9vw,56px);font-weight:600;color:var(--txt);padding:10px 0;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:16px}
.mmenu a.ml small{font-family:'Poppins';font-size:13px;color:var(--gold)}
.mmenu .mcta{margin-top:34px;display:inline-flex;align-items:center;gap:10px;background:var(--gold);color:#FFFFFF;padding:16px 26px;border-radius:100px;font-weight:700;font-size:17px;align-self:flex-start}
.mmenu .mcta svg{width:18px;height:18px}

/* ---------- Hero ---------- */
.hero{min-height:100svh;display:flex;align-items:flex-end;position:relative;overflow:hidden;padding-bottom:7vh}
.hero-bg{position:absolute;inset:0;z-index:0}
.hero-bg .film{position:absolute;inset:-12%;will-change:transform;
  background:
    radial-gradient(55% 50% at 72% 28%, rgba(47,128,201,.26), transparent 60%),
    radial-gradient(50% 60% at 18% 78%, rgba(86,224,224,.12), transparent 62%),
    radial-gradient(42% 42% at 88% 82%, rgba(47,128,201,.14), transparent 55%),
    linear-gradient(180deg,#0c1018,#070a12);
  filter:saturate(1.12);animation:meshFloat 20s ease-in-out infinite alternate;transform-origin:center}
@keyframes meshFloat{0%{transform:scale(1.05) translate(0,0)}100%{transform:scale(1.2) translate(-2.5%,-2%)}}
.hero-bg .hero-video{position:absolute;inset:0;z-index:0;overflow:hidden;background:#0A0D16}
.hero-bg .hero-video iframe{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100vw;height:56.25vw;min-height:100%;min-width:177.78svh;border:0;pointer-events:none}
/* film scanlines */
.hero-bg .photo{position:absolute;inset:0;background:url('https://dykbanstudio.pl/wp-content/uploads/2026/02/20200515-U-roboty-Dopiewo-film-30-lat-07-copy-1024x1024.webp') center/cover;opacity:.30;mix-blend-mode:luminosity;filter:grayscale(.25) contrast(1.05);will-change:transform;animation:meshFloat 24s ease-in-out infinite alternate}
.hero-bg .lines{position:absolute;inset:0;background:repeating-linear-gradient(180deg,transparent 0 3px,rgba(0,0,0,.16) 3px 4px);opacity:.5;mix-blend-mode:multiply}
.hero-bg .vign{position:absolute;inset:0;background:radial-gradient(120% 90% at 50% 18%,transparent 38%,rgba(0,0,0,.6) 100%),linear-gradient(180deg,rgba(10,13,22,.55) 0%,transparent 30%,rgba(10,13,22,.9) 100%)}
/* 35mm film strip detail */
.hero-bg .strip{position:absolute;top:0;bottom:0;right:0;width:44px;z-index:1;opacity:.45;
  background:repeating-linear-gradient(180deg,#0c0c10 0 34px,#070709 34px 40px);
  border-left:1px solid rgba(255,255,255,.05)}
.hero-bg .strip::before{content:"";position:absolute;inset:0;
  background:repeating-linear-gradient(180deg,transparent 0 13px,rgba(0,0,0,.7) 13px 21px);
  -webkit-mask:repeating-linear-gradient(180deg,#000 0 26px,transparent 26px 40px);
  mask:repeating-linear-gradient(180deg,#000 0 26px,transparent 26px 40px)}
@media(max-width:640px){.hero-bg .strip{display:none}}
.grain{position:absolute;inset:0;z-index:1;opacity:.06;pointer-events:none;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
/* letterbox intro */
.lbar{position:fixed;left:0;right:0;height:0;background:#000;z-index:9500;pointer-events:none;animation:lbar 1.4s var(--ease) forwards}
.lbar.top{top:0}.lbar.bot{bottom:0}
@keyframes lbar{0%{height:18vh}100%{height:0}}
.hero-inner{position:relative;z-index:2;width:100%;max-width:var(--maxw);margin:0 auto;padding:0 clamp(20px,5vw,32px)}
.hero-tag{margin-bottom:26px;opacity:0;animation:fadeUp .9s var(--ease) .9s forwards}
.hero h1{font-size:clamp(42px,9vw,150px);font-weight:600;letter-spacing:-.035em}
.hero h1 .ln{display:block;overflow:hidden}
.hero h1 .ln span{display:block;transform:translateY(105%);animation:lineRise 1s var(--ease) forwards}
.hero h1 .ln:nth-child(1) span{animation-delay:1s}
.hero h1 .ln:nth-child(2) span{animation-delay:1.12s}
.hero h1 em{font-style:normal;font-family:'Poppins';background:linear-gradient(118deg,var(--gold) 10%,var(--gold-soft) 55%,#E8F3FF);-webkit-background-clip:text;background-clip:text;color:transparent}
@keyframes lineRise{to{transform:translateY(0)}}
.hero-sub{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:32px;margin-top:38px;opacity:0;animation:fadeUp 1s var(--ease) 1.45s forwards}
.hero-sub p{max-width:440px;color:var(--muted);font-size:18px}
.hero-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.btn-play{display:flex;align-items:center;gap:14px;font-family:'Poppins';font-size:14px;letter-spacing:.05em;text-transform:uppercase}
.btn-play .pcirc{width:58px;height:58px;border-radius:50%;border:1px solid var(--line-2);display:grid;place-items:center;transition:.4s var(--ease);position:relative}
.btn-play .pcirc::before{content:"";position:absolute;inset:0;border-radius:50%;border:1px solid var(--gold);transform:scale(1);opacity:0;animation:pulse 2.4s ease-out infinite}
@keyframes pulse{0%{transform:scale(1);opacity:.7}100%{transform:scale(1.6);opacity:0}}
.btn-play:hover .pcirc{background:var(--gold);border-color:var(--gold)}
.btn-play .pcirc svg{width:18px;height:18px;fill:var(--txt);transition:.3s}
.btn-play:hover .pcirc svg{fill:#FFFFFF}
.btn-call{display:inline-flex;align-items:center;gap:10px;border:1px solid var(--line-2);padding:16px 24px;border-radius:100px;font-weight:600;font-size:15px;transition:.35s var(--ease)}
.btn-call svg{width:16px;height:16px;stroke:var(--gold)}
.btn-call:hover{background:var(--txt);color:#FFFFFF;border-color:var(--txt)}
.btn-call:hover svg{stroke:#FFFFFF}
.scroll-cue{position:absolute;bottom:30px;right:clamp(20px,5vw,32px);z-index:2;display:flex;flex-direction:column;align-items:center;gap:10px;font-family:'Poppins';font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted-2);writing-mode:vertical-rl}
.scroll-cue i{width:1px;height:54px;background:linear-gradient(var(--gold),transparent);position:relative;overflow:hidden}
.scroll-cue i::after{content:"";position:absolute;top:-50%;left:0;width:100%;height:50%;background:var(--gold);animation:cueDrop 1.8s ease-in-out infinite}
@keyframes cueDrop{0%{top:-50%}100%{top:100%}}
@keyframes fadeUp{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:640px){.scroll-cue{display:none}}

/* ---------- Trust marquee ---------- */
.trust{padding:34px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--bg-2);overflow:hidden}
.trust-label{text-align:center;font-family:'Poppins';font-size:11px;letter-spacing:.25em;text-transform:uppercase;color:var(--muted-2);margin-bottom:24px}
.trust-label b{color:var(--txt);font-weight:600}
.marquee{display:flex;gap:0;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}
.marquee-track{display:flex;align-items:center;gap:64px;padding-right:64px;white-space:nowrap;animation:marq 30s linear infinite}
.marquee:hover .marquee-track{animation-play-state:paused}
.marquee-track .lg{display:inline-flex;align-items:center;height:44px;margin-right:0;opacity:.8;transition:opacity .3s}
.marquee-track .lg:hover{opacity:1}
.marquee-track .lg img{height:30px;width:auto;display:block}
.marquee-track .lg b{font-family:'Poppins';font-weight:600;font-size:21px;letter-spacing:.02em;color:rgba(255,255,255,.85);text-transform:uppercase;white-space:nowrap}
@keyframes marq{to{transform:translateX(-50%)}}

/* ---------- Section heads ---------- */
.shead{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:64px}
.shead h2{font-size:clamp(40px,6.5vw,92px)}
.shead p{max-width:380px;color:var(--muted);font-size:16px}
.pad{padding:var(--pad-lg) 0}
.pad-sm{padding:var(--pad-sm) 0}

/* ---------- Services ---------- */
.svc-row{display:grid;grid-template-columns:80px 1.1fr 1.4fr auto;gap:32px;align-items:center;padding:38px 0;border-top:1px solid var(--line);transition:padding .4s var(--ease);cursor:pointer;position:relative}
.svc-row:last-child{border-bottom:1px solid var(--line)}
.svc-row::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(47,128,201,.06),transparent);opacity:0;transition:opacity .4s}
.svc-row:hover::before{opacity:1}
.svc-row:hover{padding-left:18px}
.svc-num{font-family:'Poppins';font-size:14px;color:var(--gold);letter-spacing:.1em}
.svc-row h3{font-size:27px;transition:color .3s;display:flex;align-items:center;gap:14px}
.svc-row:hover h3{color:var(--gold-soft)}
.svc-row p{color:var(--muted);font-size:15.5px;margin:0}
.live-dot{display:inline-flex;align-items:center;gap:7px;font-family:'Poppins';font-size:10px;letter-spacing:.16em;color:var(--cyan);border:1px solid rgba(86,224,224,.4);padding:3px 9px;border-radius:100px}
.live-dot i{width:7px;height:7px;border-radius:50%;background:var(--cyan);box-shadow:0 0 0 0 rgba(86,224,224,.6);animation:livep 1.8s infinite}
@keyframes livep{0%{box-shadow:0 0 0 0 rgba(86,224,224,.6)}100%{box-shadow:0 0 0 9px rgba(86,224,224,0)}}
.svc-arrow{width:46px;height:46px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center;transition:.4s var(--ease)}
.svc-row:hover .svc-arrow{background:var(--gold);border-color:var(--gold);transform:rotate(-45deg)}
.svc-arrow svg{width:18px;height:18px;stroke:var(--txt);transition:.3s}
.svc-row:hover .svc-arrow svg{stroke:#FFFFFF}
@media(max-width:840px){
  .svc-row{grid-template-columns:44px 1fr;gap:12px 18px}
  .svc-row p{grid-column:1/-1}
  .svc-arrow{display:none}
  .svc-row h3{font-size:22px}
}

/* ---------- Floating gear behind services ---------- */
.services{position:relative;overflow:hidden}
.services .wrap{position:relative;z-index:2}
.svc-deco{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.svc-deco img{position:absolute;opacity:.62;filter:drop-shadow(0 12px 40px rgba(47,128,201,.45));will-change:transform}
.svc-deco .d-cam{width:clamp(320px,40vw,580px);top:4%;right:0%;animation:fl1 19s ease-in-out infinite alternate}
.svc-deco .d-drone{width:clamp(300px,38vw,540px);top:38%;left:-2%;animation:fl2 23s ease-in-out infinite alternate}
.svc-deco .d-dslr{width:clamp(280px,30vw,440px);bottom:5%;right:4%;animation:fl3 17s ease-in-out infinite alternate}
.svc-deco .d-klaps{width:clamp(240px,26vw,380px);bottom:15%;left:2%;animation:fl4 21s ease-in-out infinite alternate}
@keyframes fl1{0%{transform:translate(0,0) rotate(-3deg)}100%{transform:translate(-26px,28px) rotate(3deg)}}
@keyframes fl2{0%{transform:translate(0,0) rotate(2deg)}100%{transform:translate(30px,-24px) rotate(-3deg)}}
@keyframes fl3{0%{transform:translate(0,0) rotate(3deg)}100%{transform:translate(-20px,-26px) rotate(-2deg)}}
@keyframes fl4{0%{transform:translate(0,0) rotate(-2deg)}100%{transform:translate(24px,20px) rotate(4deg)}}
@media(max-width:640px){.svc-deco{display:none}}

/* ---------- Featured case ---------- */
.feat{position:relative;overflow:hidden;min-height:82vh;display:flex;align-items:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.feat-video{position:absolute;inset:0;z-index:0;overflow:hidden;background:#0A0D16}
.feat-video iframe{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100vw;height:56.25vw;min-height:100%;min-width:177.78svh;border:0;pointer-events:none}
.feat-ov{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(10,13,22,.92),rgba(10,13,22,.66) 52%,rgba(10,13,22,.3)),linear-gradient(180deg,rgba(10,13,22,.4),rgba(10,13,22,.62))}
.feat-content{position:relative;z-index:2;max-width:660px;padding:72px 0}
.feat-content h2{font-size:clamp(34px,5.2vw,72px);margin:16px 0 20px}
.feat-content p{color:rgba(255,255,255,.84);font-size:17px;max-width:560px;margin-bottom:30px}
.feat-content .feat-stats{margin-bottom:0}
.feat-inner{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.feat-visual{position:relative;border-radius:16px;overflow:hidden;aspect-ratio:4/3;background:#0E1320 url('https://i.ytimg.com/vi/Sr2egCjpeog/hqdefault.jpg') center/cover;border:1px solid var(--line)}
.feat-visual .ovl{position:absolute;inset:0;background:linear-gradient(180deg,transparent,rgba(10,13,22,.7))}
.feat-visual .brackets,.card .brackets{position:absolute;inset:14px;pointer-events:none;z-index:3}
.feat-visual .brackets::before,.feat-visual .brackets::after,.card .brackets::before,.card .brackets::after{content:"";position:absolute;width:26px;height:26px;border:1.5px solid rgba(255,255,255,.55)}
.brackets::before{top:0;left:0;border-right:0;border-bottom:0}
.brackets::after{bottom:0;right:0;border-left:0;border-top:0}
.feat-visual .tc{position:absolute;top:18px;right:18px;z-index:4;font-family:'Poppins';font-size:12px;letter-spacing:.1em;color:#fff;background:rgba(0,0,0,.45);padding:4px 10px;border-radius:6px}
.feat-visual .recd{position:absolute;top:18px;left:22px;z-index:4;display:flex;align-items:center;gap:8px;font-family:'Poppins';font-size:12px;letter-spacing:.12em;color:#fff}
.feat-visual .recd i{width:9px;height:9px;border-radius:50%;background:#ff4438;animation:livep2 1.5s infinite}
@keyframes livep2{50%{opacity:.3}}
.feat-visual .pbig{position:absolute;inset:0;display:grid;place-items:center;z-index:4}
.feat-visual .pbig span{width:84px;height:84px;border-radius:50%;background:rgba(47,128,201,.92);display:grid;place-items:center}
.feat-visual .pbig svg{width:30px;height:30px;fill:#FFFFFF;margin-left:4px}
.feat-visual .thirds{position:absolute;inset:0;z-index:2;pointer-events:none;opacity:.7;
  background-image:linear-gradient(rgba(255,255,255,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.09) 1px,transparent 1px);
  background-size:100% 33.33%,33.33% 100%}
.feat-visual .wave{position:absolute;bottom:18px;left:22px;z-index:4;display:flex;align-items:flex-end;gap:3px;height:26px}
.feat-visual .wave i{width:3px;background:rgba(255,255,255,.55);border-radius:2px;height:30%;animation:wv 1.1s ease-in-out infinite}
@keyframes wv{0%,100%{height:18%}50%{height:100%}}
.feat-txt .eyebrow{margin-bottom:20px}
.feat-txt h3{font-size:clamp(28px,3.6vw,46px);margin-bottom:18px}
.feat-txt p{color:var(--muted);margin-bottom:28px;max-width:440px}
.feat-stats{display:flex;gap:40px;flex-wrap:wrap}
.feat-stats .fs .n{font-family:'Poppins';font-size:38px;font-weight:600;color:var(--gold)}
.feat-stats .fs .l{color:var(--muted-2);font-size:13px}
@media(max-width:840px){.feat-inner{grid-template-columns:1fr;gap:34px}}

/* ---------- Portfolio ---------- */
.work{position:relative;overflow:hidden;background:var(--bg)}
.work .wrap{position:relative;z-index:2}
.work-bg{position:absolute;inset:-20%;z-index:0;will-change:transform;background:radial-gradient(38% 46% at 18% 24%,rgba(47,128,201,.30),transparent 60%),radial-gradient(42% 52% at 82% 28%,rgba(86,224,224,.16),transparent 62%),radial-gradient(48% 58% at 62% 86%,rgba(47,128,201,.24),transparent 60%),radial-gradient(40% 50% at 12% 82%,rgba(111,177,232,.16),transparent 60%),var(--bg);animation:workFloat 22s ease-in-out infinite alternate}
.work-bg::after{content:"";position:absolute;inset:0;background:conic-gradient(from 0deg at 50% 50%,transparent,rgba(47,128,201,.10),transparent,rgba(86,224,224,.08),transparent);animation:workSpin 40s linear infinite;mix-blend-mode:screen}
@keyframes workFloat{0%{transform:scale(1.05) translate(0,0)}100%{transform:scale(1.22) translate(-3%,-2.5%)}}
@keyframes workSpin{to{transform:rotate(360deg)}}
.filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:46px}
.filters button{background:none;border:1px solid var(--line);color:var(--muted);padding:10px 20px;border-radius:100px;font-family:'Poppins';font-size:14px;cursor:pointer;transition:.3s}
.filters button:hover{border-color:var(--line-2);color:var(--txt)}
.filters button.active{background:var(--txt);color:#FFFFFF;border-color:var(--txt);font-weight:600}
.grid{display:grid;grid-template-columns:repeat(12,1fr);gap:20px}
.card{position:relative;border-radius:14px;overflow:hidden;background:var(--surface);border:1px solid var(--line);min-height:300px;display:flex;flex-direction:column;justify-content:flex-end;padding:26px;transition:transform .5s var(--ease),border-color .4s;color:inherit}
.card.c-lg{grid-column:span 8;min-height:460px}
.card.c-md{grid-column:span 4;min-height:460px}
.card.c-sm{grid-column:span 4}
.card.c-half{grid-column:span 6}
.card:hover{transform:translateY(-6px);border-color:var(--gold)}
.card-bg{position:absolute;inset:0;z-index:0;transition:transform .8s var(--ease);background-size:cover;background-position:center}
.card:hover .card-bg{transform:scale(1.06)}
.card-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,13,22,.15) 0%,rgba(10,13,22,.55) 55%,rgba(10,13,22,.93) 100%)}
.card-grain{position:absolute;inset:0;z-index:1;opacity:.5;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.2' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.5'/%3E%3C/svg%3E")}
.card .brackets{inset:16px;opacity:0;transition:opacity .4s}
.card:hover .brackets{opacity:1}
.card .fnum{position:absolute;top:20px;left:24px;z-index:3;font-family:'Poppins';font-size:18px;font-weight:600;color:rgba(255,255,255,.85);letter-spacing:.04em}
.card .tc{position:absolute;top:22px;right:24px;z-index:3;font-family:'Poppins';font-size:11px;letter-spacing:.08em;color:rgba(255,255,255,.7)}
.card-body{position:relative;z-index:2}
.card .cat{font-family:'Poppins';font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin-bottom:10px;display:block}
.card h3{font-size:23px;line-height:1.1;margin-bottom:6px}
.card .meta{color:var(--muted);font-size:13.5px;display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.card .meta .views{display:flex;align-items:center;gap:5px}
.card .play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(.8);z-index:3;width:60px;height:60px;border-radius:50%;background:rgba(47,128,201,.94);display:grid;place-items:center;opacity:0;transition:.4s var(--ease)}
.card:hover .play{opacity:1;transform:translate(-50%,-50%) scale(1)}
.card .play svg{width:20px;height:20px;fill:#FFFFFF;margin-left:3px}
.card.hide{display:none}
@media(max-width:840px){.card,.card.c-lg,.card.c-md,.card.c-sm,.card.c-half{grid-column:1/-1;min-height:300px}}
.work-more{text-align:center;margin-top:54px}

/* ---------- Showreel band ---------- */
.reel{padding:0;position:relative;overflow:hidden}
.reel-inner{position:relative;z-index:2;min-height:62vh;display:grid;place-items:center;text-align:center;padding:96px 0;
  background:radial-gradient(70% 120% at 50% 0%,rgba(47,128,201,.14),transparent 60%),linear-gradient(180deg,rgba(10,13,22,.32),rgba(10,13,22,.58))}
.reel-video{position:absolute;inset:0;z-index:0;overflow:hidden;background:#0A0D16}
.reel-video iframe{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100vw;height:56.25vw;min-height:100%;min-width:177.78svh;border:0;pointer-events:none}
.reel .big{font-size:clamp(44px,9vw,128px);line-height:.96;letter-spacing:-.03em}
.reel .big em{font-style:normal;color:var(--gold)}
.reel p{color:var(--muted);max-width:520px;margin:24px auto 36px}
.reel-play{display:inline-flex;align-items:center;gap:16px;font-family:'Poppins';font-size:15px;letter-spacing:.05em;text-transform:uppercase;background:none;border:0;color:var(--txt);cursor:pointer}
.reel-play .pc{width:74px;height:74px;border-radius:50%;background:var(--gold);display:grid;place-items:center;transition:.4s var(--ease)}
.reel-play:hover .pc{transform:scale(1.08);box-shadow:0 0 50px rgba(47,128,201,.5)}
.reel-play .pc svg{width:24px;height:24px;fill:#FFFFFF;margin-left:3px}

/* ---------- Social feed ---------- */
.feed{position:relative;overflow:hidden;background:var(--bg-2);border-top:1px solid var(--line)}
.feed .wrap{position:relative;z-index:2}
.feed-bg{position:absolute;inset:-20%;z-index:0;will-change:transform;background:radial-gradient(42% 50% at 78% 22%,rgba(47,128,201,.26),transparent 60%),radial-gradient(46% 56% at 18% 30%,rgba(86,224,224,.14),transparent 62%),radial-gradient(50% 60% at 40% 88%,rgba(47,128,201,.22),transparent 60%),radial-gradient(40% 50% at 88% 80%,rgba(111,177,232,.14),transparent 60%),var(--bg-2);animation:workFloat 26s ease-in-out infinite alternate}
.feed-bg::after{content:"";position:absolute;inset:0;background:conic-gradient(from 90deg at 50% 50%,transparent,rgba(86,224,224,.08),transparent,rgba(47,128,201,.10),transparent);animation:workSpin 46s linear infinite;mix-blend-mode:screen}
.feed-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:48px}
.feed-head h2{font-size:clamp(38px,6vw,84px)}
.sync-badge{display:inline-flex;align-items:center;gap:8px;font-family:'Poppins';font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--cyan);border:1px solid rgba(86,224,224,.35);padding:6px 12px;border-radius:100px;margin-bottom:18px}
.sync-badge i{width:7px;height:7px;border-radius:50%;background:var(--cyan);animation:livep 1.8s infinite}
.platforms{display:flex;flex-wrap:wrap;gap:10px}
.platforms a{display:inline-flex;align-items:center;gap:9px;border:1px solid var(--line);padding:10px 16px;border-radius:100px;font-size:14px;font-weight:600;transition:.3s}
.platforms a:hover{border-color:var(--gold);color:var(--gold);transform:translateY(-2px)}
.platforms a svg{width:16px;height:16px;fill:currentColor}
.feed-wall{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.ftile{position:relative;border-radius:12px;overflow:hidden;aspect-ratio:1;border:1px solid var(--line);display:block;background:#111;transition:.4s var(--ease)}
.ftile:hover{transform:translateY(-4px);border-color:var(--gold)}
.ftile .img{position:absolute;inset:0;background-size:cover;background-position:center;transition:.6s var(--ease)}
.ftile:hover .img{transform:scale(1.07)}
.ftile .ov{position:absolute;inset:0;background:linear-gradient(180deg,transparent 38%,rgba(0,0,0,.86));z-index:1}
.ftile .pf{position:absolute;top:12px;left:12px;z-index:2;width:30px;height:30px;border-radius:8px;display:grid;place-items:center}
.ftile .pf svg{width:16px;height:16px;fill:#fff}
.pf.yt{background:#ff0000}.pf.ig{background:linear-gradient(45deg,#f09433,#dc2743,#bc1888)}.pf.fb{background:#1877f2}.pf.tt{background:#0b0b0b;border:1px solid rgba(255,255,255,.25)}
.ftile .cap{position:absolute;bottom:12px;left:12px;right:12px;z-index:2;font-size:13px;line-height:1.3;color:#fff}
.ftile .cap b{display:block;font-family:'Poppins';font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--gold-soft);margin-bottom:4px}
.ftile .vbadge{position:absolute;top:12px;right:12px;z-index:2;font-family:'Poppins';font-size:11px;color:#fff;background:rgba(0,0,0,.55);padding:3px 8px;border-radius:6px}
@media(max-width:840px){.feed-wall{grid-template-columns:1fr 1fr}}

/* ---------- Events ---------- */
.events{position:relative;overflow:hidden;background:var(--bg-2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.events .wrap{position:relative;z-index:2}
.events-bg{position:absolute;inset:-20%;z-index:0;will-change:transform;background:radial-gradient(40% 48% at 80% 18%,rgba(47,128,201,.26),transparent 60%),radial-gradient(44% 54% at 16% 24%,rgba(86,224,224,.13),transparent 62%),radial-gradient(50% 60% at 60% 92%,rgba(47,128,201,.2),transparent 60%),var(--bg-2);animation:workFloat 27s ease-in-out infinite alternate}
.ev-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:26px}
.ev-item{position:relative;padding:30px 30px 28px;border-radius:18px;background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.02));border:1px solid var(--line);backdrop-filter:blur(8px);overflow:hidden;transition:transform .4s var(--ease),border-color .4s,box-shadow .4s}
.ev-item::before{content:"";position:absolute;left:0;top:0;height:3px;width:100%;background:linear-gradient(90deg,var(--gold),transparent);opacity:0;transition:opacity .4s}
.ev-item:hover{transform:translateY(-5px);border-color:rgba(47,128,201,.55);box-shadow:0 22px 54px rgba(0,0,0,.4)}
.ev-item:hover::before{opacity:1}
.ev-ico{width:50px;height:50px;border-radius:13px;display:grid;place-items:center;background:rgba(47,128,201,.16);border:1px solid rgba(47,128,201,.34);margin-bottom:18px}
.ev-ico svg{width:24px;height:24px;stroke:var(--gold-soft);fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.ev-item h4{font-size:19px;margin-bottom:9px;color:var(--txt);font-family:'Poppins'}
.ev-item p{color:var(--muted);font-size:14.5px}
.ev-usp{position:relative;display:flex;gap:18px;align-items:flex-start;border:1px solid rgba(47,128,201,.4);border-radius:16px;padding:24px 28px;background:linear-gradient(135deg,rgba(47,128,201,.18),rgba(47,128,201,.04));color:var(--txt);font-size:17px;line-height:1.6;margin-bottom:28px}
.ev-usp .star{flex-shrink:0;width:42px;height:42px;border-radius:50%;background:var(--gold);display:grid;place-items:center;box-shadow:0 0 26px rgba(47,128,201,.5)}
.ev-usp .star svg{width:22px;height:22px;fill:#0A0D16}
.ev-usp b{color:var(--gold-soft)}
@media(max-width:740px){.ev-grid{grid-template-columns:1fr}.ev-usp{flex-direction:column;gap:12px}}

/* ---------- Process ---------- */
.proc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.proc-step{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:var(--surface);transition:transform .4s var(--ease),border-color .4s}
.proc-step:hover{transform:translateY(-6px);border-color:var(--gold)}
.proc-photo{position:relative;aspect-ratio:4/3;overflow:hidden}
.proc-photo img{width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.06) brightness(.8);transition:transform .6s var(--ease)}
.proc-step:hover .proc-photo img{transform:scale(1.06)}
.proc-photo .duo{position:absolute;inset:0;background:linear-gradient(150deg,rgba(11,18,32,.6),rgba(47,128,201,.6));mix-blend-mode:color}
.proc-photo .shade{position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(10,13,22,.88))}
.proc-photo .pn{position:absolute;left:20px;bottom:8px;z-index:2;font-family:'Poppins';font-weight:600;font-size:54px;line-height:1;letter-spacing:-.02em;color:#fff;text-shadow:0 4px 22px rgba(0,0,0,.55)}
.proc-photo .pn b{color:var(--gold-soft);font-weight:600}
.proc-body{padding:22px 24px}
.proc-body h3{font-size:20px;margin-bottom:8px}
.proc-body p{color:var(--muted);font-size:14.5px}
@media(max-width:980px){.proc-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.proc-grid{grid-template-columns:1fr}}

/* ---------- Stats ---------- */
.stats{background:var(--bg-2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}
.stat .num{font-family:'Poppins';font-size:clamp(42px,6vw,80px);font-weight:600;letter-spacing:-.03em;line-height:1}
.stat .num em{font-style:normal;color:var(--gold)}
.stat .lbl{color:var(--muted);font-size:14.5px;margin-top:8px}
@media(max-width:700px){.stats-grid{grid-template-columns:1fr 1fr;gap:38px}}

/* ---------- Team ---------- */
.team-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.member{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:40px;display:flex;gap:28px;align-items:center;transition:.4s var(--ease)}
.member:hover{border-color:var(--line-2);transform:translateY(-4px)}
.member .av{width:96px;height:96px;border-radius:50%;flex-shrink:0;background:linear-gradient(135deg,var(--gold),#15324f);display:grid;place-items:center;font-family:'Poppins';font-size:34px;color:#FFFFFF;font-weight:600}
.member h3{font-size:24px}
.member .role{color:var(--gold);font-size:14px;font-family:'Poppins';letter-spacing:.04em;margin:4px 0 10px}
.member p{color:var(--muted);font-size:14.5px;margin-bottom:14px}
.member .ph{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:15px}
.member .ph svg{width:15px;height:15px;stroke:var(--gold)}
@media(max-width:740px){.team-grid{grid-template-columns:1fr}.member{flex-direction:column;text-align:center;padding:34px 24px}}

/* ---------- Contact ---------- */
.contact{position:relative;overflow:hidden;background:var(--bg)}
.contact-video{position:absolute;inset:0;z-index:0;overflow:hidden;background:#0A0D16}
.contact-video iframe{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100vw;height:56.25vw;min-height:100%;min-width:177.78svh;border:0;pointer-events:none}
.contact-video::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,13,22,.84),rgba(10,13,22,.9)),radial-gradient(70% 90% at 50% 110%,rgba(47,128,201,.14),transparent 60%)}
.contact .wrap{position:relative;z-index:2}
.contact .big{font-size:clamp(44px,9vw,140px);line-height:.95;letter-spacing:-.035em;margin-bottom:50px}
.contact .big em{font-style:normal;color:var(--gold)}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}
.cinfo a.line{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 0;border-top:1px solid var(--line);transition:.3s;font-size:clamp(18px,2.4vw,28px);font-family:'Poppins';font-weight:500}
.cinfo a.line:last-of-type{border-bottom:1px solid var(--line)}
.cinfo a.line:hover{padding-left:14px;color:var(--gold)}
.cinfo a.line small{font-family:'Poppins';font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:var(--muted-2);display:block}
.cinfo a.line .arr{width:40px;height:40px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center;transition:.3s;flex-shrink:0}
.cinfo a.line:hover .arr{background:var(--gold);border-color:var(--gold)}
.cinfo a.line .arr svg{width:16px;height:16px;stroke:var(--txt)}
.cinfo a.line:hover .arr svg{stroke:#FFFFFF}
.form{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:36px}
.form label{display:block;font-size:13px;color:var(--muted);margin-bottom:8px;font-family:'Poppins';letter-spacing:.04em}
.form input,.form textarea{width:100%;background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:14px 16px;color:var(--txt);font-family:'Poppins';font-size:15px;margin-bottom:20px;transition:.3s}
.form input:focus,.form textarea:focus{outline:none;border-color:var(--gold);background:var(--bg-2)}
.form textarea{resize:vertical;min-height:110px}
.form button{width:100%;background:var(--gold);color:#FFFFFF;border:0;padding:16px;border-radius:100px;font-family:'Poppins';font-weight:700;font-size:16px;cursor:pointer;transition:.3s var(--ease)}
.form button:hover{transform:translateY(-2px);box-shadow:0 12px 34px rgba(47,128,201,.34)}
.form button[disabled]{opacity:.6;cursor:default;transform:none;box-shadow:none}
.form .note{font-size:13px;color:var(--muted);margin-top:14px;text-align:center}
.form .ok{color:var(--cyan);font-size:14px;margin-top:14px;text-align:center;min-height:1px}
.form .ok.err{color:#ff8a7a}
/* Honeypot — pole-pułapka na boty. Ukryte przed ludźmi i czytnikami ekranu,
   bot wypełnia wszystko jak leci → odrzucamy zgłoszenie po stronie serwera. */
.form .hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
@media(max-width:840px){.contact-grid{grid-template-columns:1fr;gap:40px}}

/* ---------- Footer ---------- */
.footer{background:var(--bg);border-top:1px solid var(--line);padding:70px 0 36px}
.foot-top{display:flex;flex-wrap:wrap;justify-content:space-between;gap:40px;padding-bottom:50px;border-bottom:1px solid var(--line)}
.foot-brand .brand{font-size:32px;margin-bottom:14px}
.foot-brand p{color:var(--muted);max-width:300px;font-size:15px}
.foot-cols{display:flex;gap:70px;flex-wrap:wrap}
.foot-col h4{font-family:'Poppins';font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted-2);margin-bottom:18px}
.foot-col a{display:block;color:var(--muted);font-size:15px;margin-bottom:11px;transition:.3s}
.foot-col a:hover{color:var(--gold)}
.foot-bot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:14px;padding-top:28px;color:var(--muted-2);font-size:13px}
.foot-bot .socs{display:flex;gap:22px}
.foot-bot .socs a:hover{color:var(--gold)}

/* ---------- Sticky call ---------- */
.sticky-call{position:fixed;right:24px;bottom:24px;z-index:850;display:flex;align-items:center;gap:10px;background:var(--gold);color:#FFFFFF;padding:14px 22px;border-radius:100px;font-weight:700;font-size:15px;box-shadow:0 14px 40px rgba(47,128,201,.4);transform:translateY(120px);transition:transform .5s var(--ease)}
.sticky-call.show{transform:translateY(0)}
.sticky-call svg{width:18px;height:18px}
.sticky-call:hover{transform:translateY(-3px) scale(1.02)}
@media(max-width:900px){.sticky-call{bottom:18px;right:18px}}

/* ---------- Modal ---------- */
.modal{position:fixed;inset:0;z-index:9000;background:rgba(6,9,15,.92);backdrop-filter:blur(10px);display:grid;place-items:center;padding:32px;opacity:0;visibility:hidden;transition:.4s}
.modal.open{opacity:1;visibility:visible}
.modal-box{width:min(960px,100%);aspect-ratio:16/9;background:var(--surface);border:1px solid var(--line-2);border-radius:14px;display:grid;place-items:center;text-align:center;padding:40px;position:relative}
.modal-box .mp{font-family:'Poppins';color:var(--muted);font-size:15px;line-height:1.7}
.modal-box .mp b{color:var(--gold)}
.modal-close{position:absolute;top:-48px;right:0;background:none;border:1px solid var(--line-2);color:var(--txt);width:40px;height:40px;border-radius:50%;cursor:pointer;font-size:18px}
#reelModal .modal-box{padding:0;background:#000;overflow:hidden}
.vid-wrap{position:absolute;inset:0}
.vid-wrap iframe{width:100%;height:100%;border:0;border-radius:14px}

/* ---------- Reveal ---------- */
.reveal{opacity:0;transform:translateY(40px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
.reveal.in{opacity:1;transform:none}
.reveal.d1{transition-delay:.08s}.reveal.d2{transition-delay:.16s}.reveal.d3{transition-delay:.24s}.reveal.d4{transition-delay:.32s}
@media (prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .reveal{opacity:1;transform:none}
  .has-cursor,.has-cursor *{cursor:auto!important}
  .cursor,.cursor-ring{display:none!important}
}

/* ---------- Baner cookies ----------
   Ten sam jezyk wizualny co reszta strony: granat, akcent #2F80C9, Poppins,
   promienie i obramowania jak w kartach eventow. Baner ma wygladac jak czesc
   strony, a nie jak plomba doklejona przez wtyczke.
   Kotwiczymy po LEWEJ: prawy dol zajmuje przycisk „Zadzwon" (.sticky-call),
   a to jedyne CTA na tej stronie — nie zaslaniamy go banerem. */
.ck{position:fixed;left:24px;bottom:24px;z-index:9600;width:min(460px,calc(100vw - 48px));
  background:rgba(14,19,32,.97);backdrop-filter:blur(14px);
  border:1px solid var(--line-2);border-radius:18px;padding:22px 24px;
  box-shadow:0 26px 70px rgba(0,0,0,.6);
  transform:translateY(24px);opacity:0;transition:.5s var(--ease)}
.ck.show{transform:none;opacity:1}
.ck[hidden]{display:none}
.ck h4{font-family:'Poppins';font-size:17px;margin-bottom:8px;color:var(--txt)}
.ck p{font-size:13.5px;line-height:1.55;color:var(--muted)}
.ck p a{color:var(--gold-soft);text-decoration:underline}
/* Odrzucenie ma te sama wage wizualna co akceptacja: rowna szerokosc (1fr 1fr),
   ta sama wysokosc, ten sam font. Rozni je tylko kolor tla — to jest dozwolone,
   w przeciwienstwie do robienia „Odrzuc" mniejszym, bledszym albo chowania go
   w ustawieniach. */
.ck-acts{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:16px}
.ck-btn{padding:12px 14px;border-radius:100px;font-family:'Poppins';
  font-size:13px;font-weight:600;cursor:pointer;transition:.3s var(--ease);white-space:nowrap}
.ck-neutral{background:var(--surface-2);border:1px solid var(--line-2);color:var(--txt)}
.ck-neutral:hover{transform:translateY(-2px);border-color:var(--muted-2)}
.ck-solid{background:var(--gold);border:1px solid var(--gold);color:#fff}
.ck-solid:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(47,128,201,.4)}
.ck-link{display:block;margin:12px auto 0;background:none;border:0;cursor:pointer;
  font-family:'Poppins';font-size:12px;color:var(--muted-2);text-decoration:underline;
  text-underline-offset:3px;transition:color .3s}
.ck-link:hover{color:var(--gold-soft)}
.ck-panel{margin-top:16px;padding-top:16px;border-top:1px solid var(--line)}
.ck-panel[hidden]{display:none}
.ck-row{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;
  padding:11px 0;border-bottom:1px solid var(--line);cursor:pointer}
.ck-row:last-of-type{border-bottom:0}
.ck-row b{font-family:'Poppins';font-size:13.5px;color:var(--txt);display:block}
.ck-row small{font-size:12px;color:var(--muted-2);display:block;margin-top:2px;line-height:1.45}
.ck-row input{width:18px;height:18px;flex-shrink:0;margin-top:2px;accent-color:var(--gold);cursor:pointer}
.ck-fixed{opacity:.75;cursor:default}
.ck-acts-panel{margin-top:14px}
.ck-reopen{cursor:pointer}
/* Na waskich ekranach baner i tak zajalby caly dol — podnosimy „Zadzwon",
   zeby oba byly klikalne zamiast nachodzic na siebie. */
@media(max-width:620px){
  .ck{left:12px;right:12px;bottom:12px;width:auto;padding:18px 18px 16px}
  body.ck-open .sticky-call{transform:translateY(-260px)}
}

/* ---------- WordPress: pasek admina i tryb edycji ----------
   Makieta nie znała paska admina (32/46 px u góry). Bez tego stały nav
   chowałby się pod paskiem dla zalogowanych. Gość widzi stronę 1:1. */
.admin-bar .nav{top:32px}
@media screen and (max-width:782px){.admin-bar .nav{top:46px}}
@media screen and (max-width:600px){.admin-bar .nav{top:0}}
/* W trybie edytora wyłączamy własny kursor i preloader — przeszkadzają
   w klikaniu w pola i zasłaniają podgląd w iframe panelu. */
body.els-editing .preloader{display:none}
body.els-editing .cursor,body.els-editing .cursor-ring{display:none!important}
html.has-cursor body.els-editing,html.has-cursor body.els-editing *{cursor:auto!important}
body.els-editing .lbar{display:none}
body.els-editing .ck{display:none}

/* ---------- Tryb edycji: przepuszczenie klikniec do pol pod nakladkami ----------
   BLAD, ktory to naprawia: tla kafli (.card-bg), zdjecia procesu i sprzet w tle
   uslug LEZA POD dekoracyjnymi warstwami (ziarno, gradienty, ramki, ikona play).
   Pole zapisywalo sie poprawnie, ale klik nigdy do niego nie docieral —
   elementFromPoint zwracal .card-grain / .shade, a editor.js szuka
   closest('[data-elf]') i konczyl z niczym. Efekt: „edytor nie dziala".
   Nakladki sa CZYSTO dekoracyjne, wiec w trybie edycji wylaczamy im
   lapanie myszy. Na zwyklym froncie zostaja bez zmian — hovery kafli dzialaja
   jak wczesniej, bo to :hover na rodzicu, a nie na nakladce. */
body.els-editing .card-grain,
body.els-editing .card .brackets,
body.els-editing .card .play,
body.els-editing .card .fnum,
body.els-editing .card-bg::after,
body.els-editing .ftile .ov,
body.els-editing .ftile .pf,
body.els-editing .ftile .vbadge,
body.els-editing .proc-photo .duo,
body.els-editing .proc-photo .shade,
body.els-editing .proc-photo .pn,
body.els-editing .hero-bg .lines,
body.els-editing .hero-bg .strip,
body.els-editing .hero-bg .vign,
body.els-editing .grain,
body.els-editing .feat-ov,
body.els-editing .work-bg,
body.els-editing .events-bg,
body.els-editing .feed-bg,
body.els-editing .scroll-cue{pointer-events:none}

/* .svc-deco ma pointer-events:none na froncie (zeby sprzet w tle nie przechwytywal
   klikniec w liste uslug). W trybie edycji musi byc odwrotnie — inaczej tych
   czterech zdjec nie da sie ruszyc. */
body.els-editing .svc-deco{pointer-events:none}
body.els-editing .svc-deco img{pointer-events:auto}

/* Podpowiedz, ze pole tla/zdjecia jest klikalne — bez tego trzeba zgadywac,
   ktory obszar cokolwiek robi. */
body.els-editing [data-el-type="bg"],
body.els-editing [data-el-type="image"]{outline:1px dashed rgba(47,128,201,.55);outline-offset:-3px}
body.els-editing [data-el-type="bg"]:hover,
body.els-editing [data-el-type="image"]:hover{outline:2px solid var(--gold)}

/* ---------- Tryb edycji: podmiana filmu ----------
   Iframe'y YouTube maja pointer-events:none (celowo — tlo nie ma lapac myszy),
   a nawet gdyby nie mialy, klikniecia w cross-origin iframe i tak nie dostaniemy.
   Dlatego film edytuje sie przez wlasny znacznik nad nim. */
.dyk-vid-edit{display:none}
body.els-editing .dyk-vid-edit{display:inline-flex;align-items:center;gap:8px;
  position:absolute;top:14px;left:14px;z-index:60;
  background:rgba(10,13,22,.9);border:1px solid var(--gold);color:var(--txt);
  font-family:'Poppins';font-size:12px;font-weight:600;
  padding:8px 14px;border-radius:100px;cursor:pointer;backdrop-filter:blur(6px)}
body.els-editing .dyk-vid-edit:hover{background:var(--gold);color:#fff}
body.els-editing .hero .dyk-vid-edit{top:auto;bottom:14px;left:14px}
