/* ============================================================
   layout.css — struktura strony i układ sekcji
   (nagłówek, hero, sekcje, stopka)
   ============================================================ */

/* ---------------- HEADER ---------------- */
.header{position:fixed;top:0;left:0;right:0;z-index:50;transition:background .3s,border-color .3s;
  border-bottom:1px solid transparent}
.header.scrolled{background:rgba(8,10,18,.85);backdrop-filter:blur(12px);border-bottom-color:var(--line)}

/* pasek strefowy (marka-parasol) */
.zonebar{background:#05070d;border-bottom:1px solid var(--line)}
.zb-tabs{display:flex;width:100%}
.zb-tabs a{flex:1;text-align:center;font:800 11px var(--f-semi);letter-spacing:.2em;text-transform:uppercase;
  color:var(--muted);padding:5px 8px;border-right:1px solid var(--line);transition:color .25s,text-shadow .25s,background .25s}
.zb-tabs a:last-child{border-right:none}
.zb-tabs a:hover{color:var(--pink);text-shadow:0 0 14px rgba(255,26,107,.65);background:rgba(255,26,107,.05)}
.zb-tabs a.active{color:var(--pink)}
.header .wrap{display:flex;align-items:center;justify-content:space-between;padding-top:16px;padding-bottom:16px}
.brand{display:flex;align-items:center;gap:12px}
.brand img{width:46px;height:46px;border-radius:11px;object-fit:cover;box-shadow:0 0 0 1px rgba(255,255,255,.1)}
.brand b{display:block;font:900 17px/.92 var(--f-cond);letter-spacing:.02em}
.brand span{display:block;font:800 11px/1 var(--f-cond);letter-spacing:.42em;color:var(--pink)}
.nav{display:flex;align-items:center;gap:30px}
.nav a{font:600 14px/1 var(--f-body);letter-spacing:.06em;color:#dfe3ec;transition:color .2s}
.nav a:hover{color:var(--pink)}
.header-cta{display:inline-flex}
.burger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:8px}
.burger span{width:26px;height:2px;background:#fff;transition:.3s}

/* menu mobilne (pełnoekranowe) */
.mobile-menu{position:fixed;inset:0;z-index:49;background:rgba(5,7,13,.97);backdrop-filter:blur(8px);
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:26px;
  opacity:0;pointer-events:none;transition:opacity .3s}
.mobile-menu.open{opacity:1;pointer-events:auto}
.mobile-menu a{font:900 34px/1 var(--f-cond);font-style:italic;letter-spacing:.02em;text-transform:uppercase}
.mobile-menu a:hover{color:var(--pink)}

/* ---------------- HERO ---------------- */
.hero{position:relative;min-height:100svh;display:flex;flex-direction:column;
  overflow:hidden;background:var(--bg2);padding-top:0}
.hero-mid{flex:1;display:flex;flex-direction:column;justify-content:center;padding-top:117px}
.hero-media{position:absolute;inset:-140px;z-index:0}
.hero-media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1;filter:saturate(.6) contrast(1.06) brightness(.72) hue-rotate(-5deg)}
.hero-tex{position:absolute;inset:0;z-index:2;pointer-events:none;opacity:.28;mix-blend-mode:overlay;
  background:repeating-linear-gradient(122deg,#0f131e 0 14px,#0b0e17 14px 28px)}
.hero-tone{position:absolute;inset:0;z-index:2;pointer-events:none;
  background:radial-gradient(90% 80% at 75% 22%,rgba(255,26,107,.3),transparent 55%),
             radial-gradient(80% 90% at 8% 95%,rgba(225,29,58,.2),transparent 55%),
             linear-gradient(180deg,rgba(5,7,13,.5),rgba(11,14,23,.4) 45%,rgba(11,14,23,.72))}
.hero-sweep{position:absolute;top:0;bottom:0;left:0;width:38%;z-index:2;pointer-events:none;filter:blur(8px);
  background:linear-gradient(105deg,transparent,rgba(255,26,107,.12),transparent);animation:heroSweep 7.5s ease-in-out infinite}
@keyframes heroSweep{0%{transform:translateX(-130%)}100%{transform:translateX(330%)}}
.hero-fallback{position:absolute;inset:0;z-index:0;background:repeating-linear-gradient(122deg,#0f131e 0 14px,#0b0e17 14px 28px)}
.hero-glow{position:absolute;inset:-140px;z-index:0;animation:glow 5s ease-in-out infinite;
  background:radial-gradient(120% 90% at 72% 30%,rgba(255,26,107,.16),transparent 60%),
             radial-gradient(90% 80% at 12% 90%,rgba(225,29,58,.13),transparent 55%)}
.hero-scrim{position:absolute;inset:0;z-index:1;
  background:linear-gradient(#05070d66,transparent 22%,transparent 50%,var(--bg) 98%)}
.streak{position:absolute;height:2px;left:0;z-index:1;opacity:.5;
  background:linear-gradient(90deg,transparent,var(--pink));animation:streak linear infinite}
@keyframes streak{0%{transform:translateX(-120%)}100%{transform:translateX(120vw)}}
.hero-inner{position:relative;z-index:2;width:100%}
.hero-film{display:inline-flex;align-items:center;gap:10px;padding:8px 16px;border:1px solid var(--line2);
  border-radius:100px;background:rgba(5,7,13,.5);backdrop-filter:blur(4px);margin-bottom:26px}
.hero-film .dot{width:8px;height:8px;border-radius:50%;background:var(--pink);animation:pulse 1.4s infinite}
.hero-film span{font:700 11px/1 var(--f-body);letter-spacing:.22em;color:#c8cede}
.hero h1{margin:0;font-family:var(--f-cond);font-style:italic;font-weight:900;
  font-size:clamp(52px,11vw,120px);line-height:.85;letter-spacing:-.01em;text-transform:uppercase}
.hero p{max-width:560px;margin:26px 0 0;font:500 clamp(16px,2.2vw,20px)/1.5 var(--f-body);color:#aab2c4}
.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:36px}

/* pasek statystyk */
.stats{position:relative;z-index:2;margin-top:auto;display:grid;grid-template-columns:repeat(4,1fr);
  border-top:1px solid var(--line2);background:rgba(8,10,18,.4);backdrop-filter:blur(6px)}
.stats .stat{padding:22px var(--pad);border-right:1px solid var(--line)}
.stats .stat:last-child{border-right:none}
.stat .num{font:900 clamp(28px,4vw,40px)/1 var(--f-cond);font-style:italic;color:#fff}
.stat .num i{font-style:normal;font-size:.5em;color:var(--pink)}
.stat .lbl{font:600 clamp(10px,1.3vw,12px)/1 var(--f-body);letter-spacing:.18em;color:var(--muted);margin-top:6px}

/* ---------------- O TORZE ---------------- */
.about{position:relative;overflow:hidden}
.about .grid{display:grid;grid-template-columns:1.02fr .98fr;gap:clamp(32px,5vw,70px);align-items:center}
.about p{max-width:520px;margin:24px 0 0;font:500 clamp(15px,2vw,18px)/1.6 var(--f-body);color:#aab2c4}
.chips{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.about-glow{position:absolute;right:-120px;top:40px;width:520px;height:520px;pointer-events:none;
  background:radial-gradient(circle,rgba(255,26,107,.1),transparent 65%);animation:glow 5s ease-in-out infinite}
@keyframes glow{0%,100%{opacity:.35}50%{opacity:.8}}
.track-card{position:relative;aspect-ratio:6/4.4;background:radial-gradient(90% 90% at 50% 45%,#12151f,#0b0e17);
  border:1px solid var(--line);overflow:hidden;
  clip-path:polygon(0 0,100% 0,100% 88%,90% 100%,0 100%)}
.track-card svg{position:absolute;inset:0;width:100%;height:100%}
.track-tag{position:absolute;top:16px;left:16px;padding:6px 12px;background:var(--pink);
  font:800 11px/1 var(--f-semi);letter-spacing:.12em;color:#fff;z-index:3}
.track-foot{position:absolute;bottom:18px;left:20px;font:700 12px/1.4 var(--f-body);letter-spacing:.08em;color:var(--muted);z-index:3}
@keyframes dash{to{stroke-dashoffset:-1000}}

/* ---------------- GOKART ---------------- */
.kart{background:var(--bg2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.kart .grid{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(32px,5vw,56px);align-items:center}
.kart-img{position:relative;aspect-ratio:1.3/1;background:radial-gradient(80% 80% at 50% 60%,#171b28,#0b0e17);
  border:1px solid var(--line);display:flex;align-items:center;justify-content:center;overflow:hidden}
.kart-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1;
  filter:grayscale(.85) brightness(.78) contrast(1.04);transition:filter .6s ease,transform .6s ease}
.kart-img .kart-tint{position:absolute;inset:0;z-index:2;pointer-events:none;transition:opacity .6s ease;
  background:repeating-linear-gradient(122deg,rgba(255,26,107,.04) 0 18px,transparent 18px 50px),
             linear-gradient(135deg,rgba(255,26,107,.05),rgba(255,26,107,.01)),
             repeating-linear-gradient(122deg,rgba(9,12,20,.07) 0 30px,rgba(16,20,31,.03) 30px 60px);
  animation:tileTex 7s linear infinite}
.kart-img .kart-hint{position:absolute;bottom:16px;right:16px;z-index:3;font:600 11px var(--f-body);
  letter-spacing:.06em;color:#c8cede;background:rgba(5,7,13,.55);padding:6px 11px;border:1px solid var(--line2);
  backdrop-filter:blur(4px);transition:opacity .4s ease}
.kart-img:hover img{filter:none;transform:scale(1.04)}
.kart-img:hover .kart-tint{opacity:0}
.kart-img:hover .kart-hint{opacity:0}
.kart-img .badge{z-index:3}
.kart-img .glow{position:absolute;bottom:44px;left:50%;transform:translateX(-50%);width:60%;height:60px;
  background:radial-gradient(ellipse,rgba(255,26,107,.25),transparent 70%);filter:blur(6px)}
.kart-img .badge{position:absolute;top:20px;left:20px;padding:7px 14px;border:1px solid var(--pink);
  font:800 11px/1 var(--f-semi);letter-spacing:.12em;color:var(--pink)}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
.kart-desc>p{margin:0 0 24px;font:500 clamp(15px,2vw,17px)/1.6 var(--f-body);color:#aab2c4}
.specs{border-top:1px solid var(--line)}
.specs .row{display:flex;justify-content:space-between;align-items:baseline;padding:15px 0;border-bottom:1px solid var(--line);gap:16px}
.specs .row:last-child{border-bottom:none}
.specs .k{font:600 15px var(--f-body);color:var(--muted);letter-spacing:.04em}
.specs .v{font:800 clamp(15px,2vw,17px) var(--f-semi);color:#fff;letter-spacing:.04em;text-align:right}
.specs .v.hi{color:var(--pink)}

/* ---------------- CENNIK ---------------- */
.pricing .cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.pricing .note{text-align:center;margin:32px 0 0;font:500 15px var(--f-body);color:var(--muted)}

/* ---------------- GALERIA ---------------- */
.gallery{background:var(--bg2);border-top:1px solid var(--line)}
.gallery .head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:40px}
.gallery .grid{display:grid;grid-template-columns:2fr 1fr 1fr;grid-auto-rows:200px;gap:14px}

/* ---------------- OPINIE ---------------- */
.reviews .head{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-bottom:44px}
.reviews .score{margin-left:auto;text-align:right}
.reviews .score b{font-family:var(--f-cond);font-style:italic;font-weight:900;font-size:clamp(40px,5vw,56px);line-height:1;color:var(--pink)}
.reviews .score b i{font-style:normal;color:#fff;font-size:.42em}
.reviews .score span{display:block;font:600 13px var(--f-body);letter-spacing:.08em;color:var(--muted)}
.reviews .cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}

/* ---------------- FAQ ---------------- */
.faq{background:var(--bg2);border-top:1px solid var(--line)}
.faq .grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(32px,5vw,60px);align-items:start}
.faq .intro p{margin:22px 0 0;font:500 16px/1.6 var(--f-body);color:#aab2c4}
.faq .list{display:flex;flex-direction:column;gap:12px}

/* ---------------- KONTAKT ---------------- */
.contact .grid{display:grid;grid-template-columns:1fr 1.05fr;gap:clamp(32px,5vw,56px);align-items:stretch}
.contact-info{display:flex;flex-direction:column}
.contact-info .map{flex:1;min-height:200px}
.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}
.hours{margin-bottom:14px}

/* ---------------- CTA ---------------- */
.cta{position:relative;text-align:center;overflow:hidden;border-top:1px solid var(--line)}
.cta::before{content:"";position:absolute;inset:0;background:radial-gradient(70% 120% at 50% 0%,rgba(255,26,107,.16),transparent 60%);animation:glow 5s ease-in-out infinite}
.cta .inner{position:relative}
.cta h2{font-size:clamp(44px,8vw,80px)}
.cta p{margin:18px auto 32px;max-width:520px;font:500 clamp(16px,2vw,18px)/1.5 var(--f-body);color:#aab2c4}

/* ---------------- STREFY (Beskid Active Zone) ---------------- */
.zones{position:relative;background:var(--bg2);border-top:1px solid var(--line);overflow:hidden}
.zn-streak{position:absolute;top:0;left:0;height:1px;width:40%;pointer-events:none;
  background:linear-gradient(90deg,transparent,var(--pink),transparent);opacity:.55;animation:znStreak 6s linear infinite}
@keyframes znStreak{0%{transform:translateX(-100%)}100%{transform:translateX(350%)}}
.zones-lead{max-width:620px;margin:20px auto 0;font:500 clamp(15px,2vw,18px)/1.6 var(--f-body);color:#aab2c4}
.zone-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.zone-card{position:relative;display:flex;flex-direction:column;min-height:238px;background:var(--card);
  border:1px solid var(--line);padding:34px 32px;text-decoration:none;overflow:hidden;
  transition:transform .35s cubic-bezier(.2,.75,.2,1),border-color .35s,box-shadow .35s}
.zone-card::before{content:"";position:absolute;top:0;left:0;height:3px;width:100%;background:var(--pink);
  transform:scaleX(0);transform-origin:left;transition:transform .45s cubic-bezier(.2,.75,.2,1)}
a.zone-card:hover::before{transform:scaleX(1)}
a.zone-card:hover{transform:translateY(-8px);border-color:rgba(255,26,107,.5);box-shadow:0 26px 64px rgba(255,26,107,.16)}
.zc-index{position:absolute;top:16px;right:26px;font-family:var(--f-cond);font-style:italic;font-weight:900;
  font-size:66px;line-height:1;color:transparent;-webkit-text-stroke:1.5px rgba(255,255,255,.13);
  transition:-webkit-text-stroke .4s,transform .4s}
a.zone-card:hover .zc-index{-webkit-text-stroke:1.5px rgba(255,26,107,.55);transform:translateY(-3px)}
.zone-card h3{margin:0 0 12px;font-family:var(--f-cond);font-style:italic;font-weight:900;
  font-size:38px;line-height:.9;text-transform:uppercase;color:#fff}
.zone-card p{margin:0;font:500 15px/1.55 var(--f-body);color:#aab2c4;max-width:90%}
.zc-go{margin-top:auto;padding-top:24px;display:inline-flex;align-items:center;gap:9px;
  font:800 12px var(--f-semi);letter-spacing:.14em;text-transform:uppercase;color:var(--pink)}
.zc-go .arw{transition:transform .3s}
a.zone-card:hover .zc-go .arw{transform:translateX(7px)}
.zone-card.current{border-color:rgba(255,26,107,.32)}
.zc-go.here{color:var(--muted);letter-spacing:.14em}
.zc-go.here::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--pink);
  box-shadow:0 0 0 0 rgba(255,26,107,.5);animation:pulse 1.6s infinite}

/* ---------------- FOOTER ---------------- */
.footer{background:var(--ink);border-top:1px solid var(--line)}
.footer .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px 30px;flex-wrap:wrap;padding-top:28px;padding-bottom:20px}
.foot-zones{display:flex;align-items:center;gap:16px}
.fz-label{font:800 10px var(--f-semi);letter-spacing:.2em;text-transform:uppercase;color:var(--muted2)}
.foot-zones a{font:700 13px var(--f-semi);letter-spacing:.06em;color:#cdd3df;transition:color .2s}
.foot-zones a:hover{color:var(--pink)}
.foot-zones a.active{color:var(--pink)}
.foot-bottom{display:flex;justify-content:center;padding-top:14px;padding-bottom:24px;border-top:1px solid var(--line)}
.footer .brand b{font-size:14px}
.footer .brand img{width:34px;height:34px;border-radius:8px}
.footer .brand img{width:34px;height:34px;border-radius:8px}
.footer .cp{font:500 13px var(--f-body);color:var(--muted2)}
.footer .soc{display:flex;gap:18px}
.footer .soc a{font:600 13px var(--f-body);color:var(--muted);transition:color .2s}
.footer .soc a:hover{color:var(--pink)}
