
:root{--bg:#07090a;--panel:#111518;--panel2:#161b1e;--text:#f5f5f5;--muted:#aeb5b8;--red:#e52b2f;--red2:#ff3c40;--line:#2a3033;--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,Arial,sans-serif;line-height:1.55}a{color:inherit;text-decoration:none}.wrap{max-width:var(--max);margin:auto;padding:0 22px}.top{position:sticky;top:0;z-index:20;background:#07090a;backdrop-filter:blur(2px);border-bottom:1px solid #2b3032;overflow:hidden}.top:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(5,7,8,.28),rgba(5,7,8,.04) 48%,rgba(5,7,8,.18)),url('/assets/header-walnut-clean.jpg') center/cover no-repeat;opacity:1}
.top:after{content:"";position:absolute;left:-20%;bottom:0;width:40%;height:2px;background:linear-gradient(90deg,transparent,var(--red),transparent);animation:navGlow 5s ease-in-out infinite}.nav{min-height:124px;display:flex;align-items:center;gap:16px;position:relative;z-index:1}.logo{height:78px;width:auto;max-width:190px;display:block;background:#fff;border-radius:10px;padding:3px;object-fit:contain;box-shadow:0 0 0 1px rgba(255,255,255,.12),0 5px 22px rgba(0,0,0,.35);transition:transform .2s ease,box-shadow .2s ease}.logo:hover{transform:translateY(-1px) scale(1.015);box-shadow:0 0 0 1px rgba(229,43,47,.5),0 7px 26px rgba(229,43,47,.18)}.home-link{font-weight:900;font-size:13px;color:#fff;white-space:nowrap;border:1px solid #3a4144;padding:9px 12px;border-radius:999px;background:rgba(18,22,24,.8);transition:.2s ease}.home-link:hover{border-color:var(--red);background:rgba(229,43,47,.12);color:#fff}.navlinks{display:flex;gap:7px;margin-left:auto;flex-wrap:wrap;align-items:center;padding:5px;border:1px solid rgba(255,255,255,.035);border-radius:14px;background:rgba(7,9,10,.10);transition:background .25s ease,border-color .25s ease,box-shadow .25s ease}.navlinks a{font-weight:800;font-size:13px;color:rgba(255,255,255,.92);padding:9px 11px;border-radius:9px;position:relative;transition:background .25s ease,color .2s ease,transform .2s ease,border-color .25s ease;border:1px solid transparent;background:rgba(7,9,10,.08);text-shadow:0 1px 4px rgba(0,0,0,.9)}.navlinks a:after{content:"";position:absolute;left:11px;right:11px;bottom:5px;height:2px;background:var(--red);transform:scaleX(0);transform-origin:center;transition:.2s ease}.top:hover .navlinks{background:rgba(7,9,10,.62);border-color:rgba(255,255,255,.14);box-shadow:0 6px 24px rgba(0,0,0,.18)}.top:hover .navlinks a{background:rgba(10,13,15,.62);border-color:rgba(255,255,255,.10);text-shadow:none}.navlinks a:hover,.navlinks a.active{color:#fff;background:rgba(229,43,47,.88)!important;border-color:rgba(255,255,255,.18);transform:translateY(-1px);box-shadow:0 5px 16px rgba(229,43,47,.25)}.navlinks a:hover:after,.navlinks a.active:after{transform:scaleX(1)}.btn{display:inline-flex;align-items:center;justify-content:center;background:var(--red);padding:12px 20px;border-radius:10px;font-weight:900;text-transform:uppercase;letter-spacing:.3px;box-shadow:0 5px 18px rgba(229,43,47,.16);transition:.2s ease}.btn:hover{background:var(--red2);transform:translateY(-1px);box-shadow:0 7px 22px rgba(229,43,47,.25)}
@keyframes navGlow{0%,100%{left:-20%;opacity:.15}50%{left:80%;opacity:1}}.btn.dark{background:#202629}.hero{min-height:650px;position:relative;display:flex;align-items:center;overflow:hidden}.hero:before{content:"";position:absolute;inset:-3%;background:linear-gradient(90deg,rgba(4,6,7,.96) 0%,rgba(4,6,7,.82) 42%,rgba(4,6,7,.25) 100%),url('/assets/hero.jpg') center/cover;animation:heroZoom 16s ease-in-out infinite alternate;transform-origin:center}.hero:after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 78% 48%,rgba(229,43,47,.16),transparent 28%);animation:heroPulse 6s ease-in-out infinite}.hero .wrap{position:relative;z-index:1;width:100%;padding-top:80px;padding-bottom:80px}
@keyframes heroZoom{0%{transform:scale(1)}100%{transform:scale(1.055)}}@keyframes heroPulse{0%,100%{opacity:.25}50%{opacity:.7}}
.eyebrow{color:#ff4a4d;text-transform:uppercase;font-weight:900;letter-spacing:1.4px;font-size:13px}.hero h1{font-size:clamp(42px,7vw,78px);line-height:.98;text-transform:uppercase;max-width:760px;margin:12px 0 18px;font-weight:950}.hero h1 span{color:var(--red)}.lead{font-size:19px;color:#d4d8da;max-width:700px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.section{padding:72px 0}.section.dark{background:#0d1113}.section h2{font-size:clamp(30px,4vw,48px);line-height:1.05;text-transform:uppercase;margin:10px 0 24px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:30px}.panel{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:26px}.ba{display:grid;grid-template-columns:1fr 1fr;gap:12px}.ba img{width:100%;height:310px;object-fit:cover;border-radius:14px;border:1px solid #343b3e}.tag{display:inline-block;background:var(--red);padding:6px 12px;border-radius:8px;font-weight:900;margin-bottom:8px}.pricegrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.price{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:22px}.price strong{display:block;font-size:28px;margin-top:8px}.muted{color:var(--muted)}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.step{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:22px}.num{width:38px;height:38px;border-radius:50%;background:var(--red);display:flex;align-items:center;justify-content:center;font-weight:900}.symptoms{display:flex;flex-wrap:wrap;gap:10px}.symptoms span{border:1px solid #333b3e;border-radius:999px;padding:10px 15px;background:#101416}.engines{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.engine{background:#111518;border:1px solid var(--line);padding:18px;border-radius:14px;font-weight:900}.engine.button{display:block;text-align:center;transition:.18s ease}.engine.button:hover{border-color:var(--red);transform:translateY(-2px)}.engine-selector{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0 8px}.engine-selector a{background:#171c1f;border:1px solid #343b3e;border-radius:999px;padding:10px 16px;font-weight:900}.engine-selector a:hover{background:var(--red);border-color:var(--red)}.engine-section{scroll-margin-top:95px}.engine-empty{padding:24px;background:var(--panel);border:1px dashed #3b4346;border-radius:14px;color:#c4cacc}.engine small{display:block;color:var(--muted);margin-top:5px}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.gallery img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:12px;border:1px solid #292f31;background:#111}.cases{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.case{background:var(--panel);border:1px solid var(--line);border-radius:16px;overflow:hidden}.case img{width:100%;aspect-ratio:16/10;object-fit:cover}.casebody{padding:18px}.case h3{margin:0 0 5px;font-size:21px}.case p{margin:0;color:var(--muted)}.cta{padding:55px 0;background:linear-gradient(135deg,#171a1c,#0c0f10);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}footer{padding:45px 0 100px;color:#bfc5c7}.footergrid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px}.mobilebar{display:none}.notice{padding:14px 18px;background:#161a1c;border-left:4px solid var(--red);border-radius:8px;color:#d8dcdd}.back{margin-bottom:22px;display:inline-block;color:#ff5558;font-weight:800}@media(max-width:900px){.top:before{background:linear-gradient(90deg,rgba(7,9,10,.24),rgba(7,9,10,.05) 48%,rgba(7,9,10,.18)),url('/assets/header-walnut-clean.jpg') center/cover no-repeat}.nav{min-height:92px;gap:10px}.navlinks{display:none}.grid2,.ba{grid-template-columns:1fr}.pricegrid,.steps,.cases{grid-template-columns:1fr 1fr}.engines{grid-template-columns:repeat(3,1fr)}.hero{min-height:610px}.hero:before{background:linear-gradient(90deg,rgba(4,6,7,.96),rgba(4,6,7,.55)),url('/assets/hero.jpg') center/cover}.gallery{grid-template-columns:1fr 1fr}.footergrid{grid-template-columns:1fr 1fr}.mobilebar{position:fixed;display:flex;gap:8px;bottom:0;left:0;right:0;background:#090b0c;padding:10px;z-index:30;border-top:1px solid #252a2c}.mobilebar .btn{flex:1}.logo{height:54px;max-width:155px}}@media(max-width:560px){.wrap{padding:0 16px}.hero h1{font-size:42px}.hero .wrap{padding-top:65px}.section{padding:50px 0}.pricegrid,.steps,.cases,.gallery{grid-template-columns:1fr}.engines{grid-template-columns:1fr 1fr}.footergrid{grid-template-columns:1fr}.ba img{height:220px}}

/* Porównanie przed / po z suwakiem */
.compare{position:relative;overflow:hidden;border-radius:18px;border:1px solid #343b3e;background:#0b0d0e;aspect-ratio:3/2;touch-action:none;user-select:none}.compare-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}.compare-overlay{position:absolute;inset:0;width:50%;overflow:hidden}.compare-overlay .compare-img{width:100%;max-width:none}.compare-range{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;margin:0}.compare-divider{position:absolute;top:0;bottom:0;left:50%;width:3px;background:#fff;transform:translateX(-50%);pointer-events:none;box-shadow:0 0 12px rgba(0,0,0,.55);display:flex;align-items:center;justify-content:center}.compare-divider span{width:46px;height:46px;border-radius:50%;background:var(--red);display:flex;align-items:center;justify-content:center;font-size:25px;font-weight:900;color:#fff;border:3px solid #fff}.compare-label{position:absolute;top:18px;z-index:3;padding:8px 13px;border-radius:8px;font-size:13px;font-weight:900;letter-spacing:1px;pointer-events:none}.compare-label.before{left:18px;background:#1a1d1f;color:#fff}.compare-label.after{right:18px;background:var(--red);color:#fff}.compare-note{margin-top:12px}.notice{margin-top:22px}
@media(max-width:560px){.compare{aspect-ratio:4/3}.compare-divider span{width:40px;height:40px;font-size:21px}.compare-label{top:12px;padding:6px 10px;font-size:11px}}

.gallery img{cursor:zoom-in;transition:transform .18s ease,filter .18s ease}.gallery img:hover{transform:scale(1.015);filter:brightness(1.06)}.special-note{margin-top:18px}.lightbox{position:fixed;inset:0;z-index:100;background:rgba(0,0,0,.94);display:none;align-items:center;justify-content:center;padding:55px 70px}.lightbox.open{display:flex}.lightbox-img{max-width:calc(100vw - 140px);max-height:calc(100vh - 110px);width:auto;height:auto;object-fit:contain;border-radius:8px;box-shadow:0 12px 50px rgba(0,0,0,.6)}.lightbox button{position:absolute;border:0;color:#fff;background:rgba(20,23,25,.8);width:46px;height:46px;border-radius:50%;font-size:34px;line-height:1;cursor:pointer}.lightbox-close{top:18px;right:18px}.lightbox-prev{left:18px;top:50%;transform:translateY(-50%)}.lightbox-next{right:18px;top:50%;transform:translateY(-50%)}.lightbox-counter{position:absolute;bottom:15px;left:50%;transform:translateX(-50%);color:#ddd;background:rgba(0,0,0,.6);padding:5px 10px;border-radius:999px;font-size:13px}.lightbox-open{overflow:hidden}@media(max-width:560px){.lightbox{padding:45px 12px 55px}.lightbox-img{max-width:calc(100vw - 24px);max-height:calc(100vh - 100px)}.lightbox button{width:42px;height:42px}.lightbox-prev{left:8px}.lightbox-next{right:8px}.lightbox-close{top:10px;right:10px}}
@media(prefers-reduced-motion:reduce){.top:after,.hero:before,.hero:after{animation:none!important}.btn,.logo,.navlinks a{transition:none!important}}


/* V20: mobilne menu - na telefonie nawigacja jest zawsze dostępna */
.menu-toggle{display:none;align-items:center;justify-content:center;width:46px;height:46px;margin-left:auto;border:1px solid rgba(255,255,255,.28);border-radius:12px;background:rgba(5,7,8,.28);color:#fff;font-size:24px;line-height:1;cursor:pointer;backdrop-filter:blur(4px);transition:.2s ease;text-shadow:0 1px 4px #000}
.menu-toggle:hover,.menu-toggle:focus{background:rgba(229,43,47,.82);border-color:rgba(255,255,255,.5);outline:none}
@media(max-width:900px){
  .top{overflow:visible}
  .nav{min-height:82px}
  .menu-toggle{display:flex}
  .navlinks{display:none;position:absolute;top:calc(100% + 8px);left:16px;right:16px;margin:0;padding:10px;flex-direction:column;align-items:stretch;gap:6px;border-radius:16px;background:rgba(7,9,10,.94);border:1px solid rgba(255,255,255,.16);box-shadow:0 18px 45px rgba(0,0,0,.55);backdrop-filter:blur(12px);z-index:50}
  .top.menu-open .navlinks{display:flex}
  .navlinks a{display:block;text-align:left;padding:13px 15px;background:rgba(255,255,255,.045);border-color:rgba(255,255,255,.09);font-size:14px}
  .navlinks a:hover,.navlinks a.active{background:rgba(229,43,47,.9)!important}
  .nav>.btn{display:none}
  .top.menu-open .menu-toggle{background:rgba(229,43,47,.88);border-color:rgba(255,255,255,.45)}
}
@media(max-width:560px){
  .nav{min-height:76px}
  .logo{height:50px;max-width:145px}
  .navlinks{left:10px;right:10px}
}


/* V21: stabilne menu mobilne + formularz wyceny */
@media(max-width:900px){
  .top{overflow:visible}
  .menu-toggle{position:relative;z-index:60;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
  .navlinks{pointer-events:none;visibility:hidden;opacity:0;transform:translateY(-8px);transition:opacity .18s ease,transform .18s ease,visibility .18s;}
  .top.menu-open .navlinks{display:flex;pointer-events:auto;visibility:visible;opacity:1;transform:translateY(0)}
}
.quote-form{display:grid;gap:18px;margin-top:28px}
.quote-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.quote-field{display:flex;flex-direction:column;gap:7px}
.quote-field.full{grid-column:1/-1}
.quote-field label{font-weight:800;font-size:14px;color:#e8ebec}
.quote-field input,.quote-field textarea,.quote-field select{width:100%;border:1px solid #394144;background:#0d1113;color:#fff;border-radius:10px;padding:13px 14px;font:inherit;outline:none;transition:.18s ease}
.quote-field textarea{min-height:130px;resize:vertical}
.quote-field input:focus,.quote-field textarea:focus,.quote-field select:focus{border-color:var(--red);box-shadow:0 0 0 3px rgba(229,43,47,.12)}
.quote-options{display:flex;gap:12px;flex-wrap:wrap}
.quote-option{flex:1;min-width:220px;border:1px solid #394144;background:#0d1113;border-radius:12px;padding:14px;cursor:pointer}
.quote-option input{width:auto;margin-right:8px;accent-color:var(--red)}
.quote-submit{border:0;cursor:pointer;width:100%;font-size:16px}
.quote-note{font-size:13px;color:var(--muted);margin:0}
@media(max-width:700px){.quote-grid{grid-template-columns:1fr}.quote-field.full{grid-column:auto}.quote-option{min-width:100%}}
