/* Local, self-hosted fonts — no requests to Google/third parties on page load (RODO) */
  @font-face{font-family:'Sora';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/4fa0aa0cc4.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
  @font-face{font-family:'Sora';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/f9e5e3391a.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
  @font-face{font-family:'Sora';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/4fa0aa0cc4.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
  @font-face{font-family:'Sora';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/f9e5e3391a.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
  @font-face{font-family:'Sora';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/4fa0aa0cc4.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
  @font-face{font-family:'Sora';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/f9e5e3391a.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
  @font-face{font-family:'Sora';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/4fa0aa0cc4.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
  @font-face{font-family:'Sora';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/f9e5e3391a.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
  @font-face{font-family:'Sora';font-style:normal;font-weight:800;font-display:swap;src:url('fonts/4fa0aa0cc4.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
  @font-face{font-family:'Sora';font-style:normal;font-weight:800;font-display:swap;src:url('fonts/f9e5e3391a.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
  @font-face{font-family:'Manrope';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/cf48e3e1de.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
  @font-face{font-family:'Manrope';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/b4290e9b7e.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
  @font-face{font-family:'Manrope';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/cf48e3e1de.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
  @font-face{font-family:'Manrope';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/b4290e9b7e.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
  @font-face{font-family:'Manrope';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/cf48e3e1de.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
  @font-face{font-family:'Manrope';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/b4290e9b7e.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
  @font-face{font-family:'Manrope';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/cf48e3e1de.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
  @font-face{font-family:'Manrope';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/b4290e9b7e.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
  @font-face{font-family:'Chakra Petch';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/e309d5454f.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
  @font-face{font-family:'Chakra Petch';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/865e19f1b1.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
  @font-face{font-family:'Chakra Petch';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/e05b48909b.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
  @font-face{font-family:'Chakra Petch';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/33d0932634.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
  @font-face{font-family:'Chakra Petch';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/4e4bf6c99f.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
  @font-face{font-family:'Chakra Petch';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/2479b991bc.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}

  :root{
    --green:#00E676;
    --red:#FF1744;
    --bg:#000000;
    --panel:#0a0c0b;
    --panel-2:#0f1312;
    --line:rgba(255,255,255,.09);
    --line-2:rgba(255,255,255,.06);
    --text:#f3f6f4;
    --muted:#8d978f;
    --muted-2:#646d67;
    --grad:linear-gradient(90deg,var(--green),var(--red));
    --grad-soft:linear-gradient(90deg,rgba(0,230,118,.18),rgba(255,23,68,.18));
    --maxw:1200px;
    --ease:cubic-bezier(.22,.61,.36,1);
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{
    margin:0;
    background:var(--bg);
    color:var(--text);
    font-family:'Manrope',system-ui,sans-serif;
    font-size:17px;
    line-height:1.6;
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
  }
  h1,h2,h3,h4{font-family:'Sora',sans-serif;margin:0;line-height:1.05;letter-spacing:-.02em;font-weight:700;}
  p{margin:0;}
  a{color:inherit;text-decoration:none;}
  ul{margin:0;padding:0;list-style:none;}
  img{display:block;max-width:100%;}
  .wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px;}
  .eyebrow{
    font-family:'Chakra Petch',monospace;
    font-weight:600;
    font-size:13px;
    letter-spacing:.32em;
    text-transform:uppercase;
    color:var(--green);
    display:inline-flex;align-items:center;gap:10px;
  }
  .eyebrow::before{content:"";width:26px;height:1px;background:var(--green);box-shadow:0 0 8px var(--green);}
  .grad-text{
    background:var(--grad);
    -webkit-background-clip:text;background-clip:text;
    -webkit-text-fill-color:transparent;color:transparent;
  }

  /* ---------- Buttons ---------- */
  .btn{
    --gl:var(--green);
    display:inline-flex;align-items:center;justify-content:center;gap:10px;
    font-family:'Sora',sans-serif;font-weight:600;font-size:15.5px;
    padding:15px 26px;border-radius:10px;cursor:pointer;border:1px solid transparent;
    transition:transform .25s var(--ease), box-shadow .25s var(--ease), background .25s var(--ease), border-color .25s var(--ease);
    white-space:nowrap;
  }
  .btn svg{width:18px;height:18px;}
  .btn-primary{
    background:var(--grad);color:#04110a;font-weight:700;
    box-shadow:0 0 0 rgba(0,230,118,0);
  }
  .btn-primary:hover{transform:translateY(-2px);box-shadow:0 10px 34px -8px rgba(0,230,118,.55), 0 6px 30px -10px rgba(255,23,68,.5);}
  .btn-ghost{
    background:rgba(0,230,118,.04);color:var(--text);border-color:rgba(0,230,118,.35);
  }
  .btn-ghost:hover{transform:translateY(-2px);border-color:var(--green);box-shadow:0 0 28px -6px rgba(0,230,118,.5);color:#fff;}

  /* ---------- Nav ---------- */
  header.nav{
    position:fixed;top:0;left:0;right:0;z-index:50;
    transition:background .3s var(--ease), border-color .3s var(--ease), backdrop-filter .3s var(--ease);
    border-bottom:1px solid transparent;
  }
  header.nav.scrolled{
    background:rgba(4,6,5,.78);
    backdrop-filter:blur(14px) saturate(140%);
    border-bottom:1px solid var(--line);
  }
  .nav-inner{display:flex;align-items:center;justify-content:space-between;height:74px;}
  .brand{display:flex;align-items:center;gap:11px;font-family:'Sora',sans-serif;font-weight:700;font-size:19px;letter-spacing:-.01em;}
  .brand .dot{width:9px;height:9px;border-radius:50%;background:var(--green);box-shadow:0 0 10px var(--green);animation:pulse-dot 1.6s var(--ease) infinite;}
  @keyframes pulse-dot{0%,100%{transform:scale(1);opacity:1;}50%{transform:scale(.55);opacity:.5;}}
  .brand b{font-weight:800;}
  .brand span{color:var(--muted);font-weight:500;font-size:13px;font-family:'Chakra Petch',monospace;letter-spacing:.18em;text-transform:uppercase;}
  .nav-links{display:flex;align-items:center;gap:34px;}
  .nav-links a{font-size:15px;color:var(--muted);font-weight:500;transition:color .2s;position:relative;}
  .nav-links a:hover{color:var(--text);}
  .nav-cta{display:flex;align-items:center;gap:14px;}
  .menu-btn{display:none;background:none;border:1px solid var(--line);border-radius:9px;width:46px;height:46px;align-items:center;justify-content:center;cursor:pointer;}
  .menu-btn svg{width:22px;height:22px;stroke:var(--text);}

  /* ---------- ECG line ---------- */
  .ecg{display:block;width:100%;overflow:visible;}
  .ecg .ln-dim{fill:none;stroke:url(#gradLine);stroke-width:2.4;opacity:.22;}
  .ecg .ln-hot{fill:none;stroke:url(#gradLine);stroke-width:3;stroke-linecap:round;
    filter:drop-shadow(0 0 6px rgba(0,230,118,.9)) drop-shadow(0 0 10px rgba(255,23,68,.6));}
  .sweep{stroke-dasharray:70 930;stroke-dashoffset:1000;animation:sweep 3.4s linear infinite;}
  @keyframes sweep{to{stroke-dashoffset:0;}}

  .divider{padding:8px 0;opacity:.9;}
  .divider .ecg{height:64px;}

  /* ---------- Hero ---------- */
  .hero{position:relative;padding:150px 0 90px;text-align:center;overflow:hidden;}
  .hero-glow{position:absolute;inset:0;z-index:0;pointer-events:none;}
  .hero-glow::before,.hero-glow::after{content:"";position:absolute;width:60vw;height:60vw;max-width:760px;max-height:760px;border-radius:50%;filter:blur(120px);opacity:.5;}
  .hero-glow::before{left:-12vw;top:2vw;background:radial-gradient(circle,rgba(0,230,118,.5),transparent 65%);}
  .hero-glow::after{right:-12vw;top:6vw;background:radial-gradient(circle,rgba(255,23,68,.42),transparent 65%);}
  .hero-bg-ecg{position:absolute;left:0;right:0;top:46%;transform:translateY(-50%);z-index:0;opacity:.5;pointer-events:none;}
  .hero-bg-ecg .ecg{height:230px;}
  .hero-inner{position:relative;z-index:2;}
  .hero-logo{width:min(560px,82vw);margin:0 auto 6px;filter:drop-shadow(0 8px 50px rgba(0,230,118,.12));}
  .hero h1{font-size:clamp(34px,6vw,68px);font-weight:800;margin:22px auto 0;max-width:14ch;}
  .hero .sub{color:var(--muted);font-size:clamp(16px,2.1vw,20px);max-width:50ch;margin:22px auto 0;line-height:1.55;}
  .hero .sub b{color:var(--text);font-weight:600;}
  .hero-cta{display:flex;gap:16px;justify-content:center;margin-top:38px;flex-wrap:wrap;}
  .hero-meta{display:flex;gap:30px;justify-content:center;flex-wrap:wrap;margin-top:46px;color:var(--muted-2);font-family:'Chakra Petch',monospace;font-size:12.5px;letter-spacing:.18em;text-transform:uppercase;}
  .hero-meta span{display:inline-flex;align-items:center;gap:9px;}
  .hero-meta span::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--green);box-shadow:0 0 8px var(--green);}

  /* ---------- Section base ---------- */
  section{position:relative;}
  .section-pad{padding:90px 0;}
  .sec-head{max-width:680px;margin-bottom:54px;}
  .sec-head.center{margin-left:auto;margin-right:auto;text-align:center;}
  .sec-head h2{font-size:clamp(28px,4.4vw,46px);margin-top:16px;}
  .sec-head p{color:var(--muted);margin-top:16px;font-size:17.5px;}

  /* ---------- Services bento ---------- */
  .bento{display:grid;grid-template-columns:repeat(6,1fr);gap:18px;}
  .card{
    position:relative;background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:30px;
    overflow:hidden;transition:transform .3s var(--ease), border-color .3s var(--ease), background .3s var(--ease);
    display:flex;flex-direction:column;
  }
  .card::before{content:"";position:absolute;inset:0;border-radius:16px;padding:1px;background:var(--grad);
    -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;
    opacity:0;transition:opacity .3s var(--ease);pointer-events:none;}
  .card::after{content:"";position:absolute;width:280px;height:280px;border-radius:50%;top:-140px;right:-120px;
    background:radial-gradient(circle,rgba(0,230,118,.16),transparent 68%);opacity:0;transition:opacity .35s var(--ease);pointer-events:none;}
  .card:hover{transform:translateY(-5px);background:var(--panel-2);}
  .card:hover::before{opacity:1;}
  .card:hover::after{opacity:1;}
  .card.featured::after{background:radial-gradient(circle,rgba(255,23,68,.15),transparent 68%);}
  .card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;}
  .card-ico{width:54px;height:54px;border-radius:13px;display:flex;align-items:center;justify-content:center;
    background:rgba(0,230,118,.07);border:1px solid rgba(0,230,118,.22);}
  .card-ico svg{width:27px;height:27px;stroke:var(--green);fill:none;stroke-width:1.7;}
  .card.featured .card-ico{background:rgba(255,23,68,.07);border-color:rgba(255,23,68,.25);}
  .card.featured .card-ico svg{stroke:#ff5277;}
  .card-num{font-family:'Chakra Petch',monospace;font-size:13px;letter-spacing:.18em;color:var(--muted-2);font-weight:600;}
  .card h3{font-size:21px;letter-spacing:-.01em;margin-bottom:14px;font-weight:600;line-height:1.18;}
  .card.featured h3{font-size:26px;}
  .card ul{display:flex;flex-direction:column;gap:11px;margin-top:auto;}
  .card li{display:flex;gap:11px;color:var(--muted);font-size:15px;line-height:1.45;}
  .card li svg{width:17px;height:17px;flex-shrink:0;margin-top:3px;stroke:var(--green);fill:none;stroke-width:2.2;}
  .card.featured li svg{stroke:#ff5277;}
  /* bento placement (4 cards → clean 2×2) */
  .card.c1{grid-column:span 3;}
  .card.c2{grid-column:span 3;}
  .card.c3{grid-column:span 3;}
  .card.c4{grid-column:span 3;}

  /* ---------- Jak to działa ---------- */
  .how{background:linear-gradient(180deg,transparent,rgba(0,230,118,.02),transparent);}
  .how-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:60px;align-items:center;}
  .steps{display:flex;flex-direction:column;gap:0;}
  .step{display:flex;gap:22px;position:relative;padding-bottom:34px;}
  .step:last-child{padding-bottom:0;}
  .step-num{flex-shrink:0;width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;
    font-family:'Chakra Petch',monospace;font-weight:700;font-size:18px;color:var(--green);
    background:var(--panel);border:1px solid rgba(0,230,118,.3);position:relative;z-index:2;}
  .step:not(:last-child)::before{content:"";position:absolute;left:26px;top:52px;bottom:0;width:1.5px;
    background:linear-gradient(180deg,rgba(0,230,118,.5),rgba(0,230,118,.06));}
  .step-body h4{font-size:19px;font-weight:600;margin-bottom:6px;}
  .step-body p{color:var(--muted);font-size:15.5px;}
  .how-card{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:38px;position:relative;overflow:hidden;}
  .how-card .badge{display:inline-flex;align-items:center;gap:9px;font-family:'Chakra Petch',monospace;font-size:12.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--green);
    padding:8px 14px;border-radius:30px;background:rgba(0,230,118,.07);border:1px solid rgba(0,230,118,.22);margin-bottom:22px;}
  .how-card p{color:var(--text);font-size:18px;line-height:1.65;}
  .how-card .free{color:var(--green);font-weight:600;}
  .how-card::after{content:"";position:absolute;width:340px;height:340px;border-radius:50%;right:-160px;bottom:-180px;
    background:radial-gradient(circle,rgba(0,230,118,.12),transparent 70%);pointer-events:none;}

  /* ---------- Dlaczego my ---------- */
  .why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;}
  .why-item{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:28px;transition:border-color .3s var(--ease),transform .3s var(--ease);}
  .why-item:hover{border-color:rgba(0,230,118,.35);transform:translateY(-4px);}
  .why-ico{width:46px;height:46px;border-radius:11px;display:flex;align-items:center;justify-content:center;margin-bottom:20px;
    background:var(--grad-soft);border:1px solid var(--line);}
  .why-ico svg{width:24px;height:24px;stroke:var(--green);fill:none;stroke-width:1.8;}
  .why-item h4{font-size:17.5px;font-weight:600;line-height:1.25;}

  /* ---------- Kontakt ---------- */
  .contact-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:40px;align-items:stretch;}
  .contact-info{display:flex;flex-direction:column;gap:16px;}
  .info-row{display:flex;gap:18px;align-items:flex-start;background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:24px;transition:border-color .3s;}
  .info-row:hover{border-color:rgba(0,230,118,.3);}
  .info-ico{width:48px;height:48px;flex-shrink:0;border-radius:12px;display:flex;align-items:center;justify-content:center;background:rgba(0,230,118,.07);border:1px solid rgba(0,230,118,.22);}
  .info-ico svg{width:23px;height:23px;stroke:var(--green);fill:none;stroke-width:1.8;}
  .info-row .label{font-family:'Chakra Petch',monospace;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted-2);margin-bottom:6px;}
  .info-row .val{font-size:19px;font-weight:600;font-family:'Sora',sans-serif;}
  .info-row .val.ph{color:var(--green);}
  .info-cta{display:flex;gap:14px;margin-top:6px;flex-wrap:wrap;}
  .map{position:relative;border-radius:16px;overflow:hidden;border:1px solid var(--line);background:#070908;min-height:380px;display:flex;align-items:center;justify-content:center;}
  .map-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(0,230,118,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(0,230,118,.06) 1px,transparent 1px);background-size:42px 42px;mask:radial-gradient(circle at 50% 45%,#000 30%,transparent 78%);}
  .map-roads{position:absolute;inset:0;opacity:.5;}
  .map-pin{position:relative;z-index:2;text-align:center;}
  .pin-dot{width:22px;height:22px;border-radius:50%;background:var(--red);margin:0 auto 14px;box-shadow:0 0 0 6px rgba(255,23,68,.18),0 0 24px rgba(255,23,68,.7);position:relative;}
  .pin-dot::after{content:"";position:absolute;inset:-6px;border-radius:50%;border:1px solid var(--red);animation:ping 2s var(--ease) infinite;}
  @keyframes ping{0%{transform:scale(.7);opacity:.8;}100%{transform:scale(2.2);opacity:0;}}
  .map-pin .ml{font-family:'Chakra Petch',monospace;font-size:12.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);}
  .map-pin .ml b{color:var(--text);display:block;margin-top:4px;font-size:14px;letter-spacing:.05em;}

  /* ---------- Footer ---------- */
  footer{border-top:1px solid var(--line);padding:60px 0 40px;margin-top:20px;position:relative;}
  .foot-top{display:flex;justify-content:space-between;gap:40px;flex-wrap:wrap;align-items:flex-start;margin-bottom:42px;}
  .foot-brand{max-width:340px;}
  .foot-brand .brand{margin-bottom:16px;}
  .foot-brand p{color:var(--muted);font-size:15px;}
  .foot-cols{display:flex;gap:64px;flex-wrap:wrap;}
  .foot-col h5{font-family:'Chakra Petch',monospace;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted-2);margin:0 0 16px;font-weight:600;}
  .foot-col a,.foot-col p{display:block;color:var(--muted);font-size:15px;margin-bottom:11px;transition:color .2s;}
  .foot-col a:hover{color:var(--green);}
  .foot-legal{border-top:1px solid var(--line-2);padding-top:26px;display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;align-items:center;}
  .foot-legal .reqs{color:var(--muted-2);font-size:13.5px;font-family:'Chakra Petch',monospace;letter-spacing:.04em;}
  .foot-legal .reqs b{color:var(--muted);font-weight:600;}
  .foot-legal .dom{font-family:'Sora',sans-serif;font-weight:700;font-size:15px;}

  /* ---------- Mobile sticky bar ---------- */
  .mbar{display:none;position:fixed;bottom:0;left:0;right:0;z-index:60;gap:10px;padding:12px 16px calc(12px + env(safe-area-inset-bottom));
    background:rgba(4,6,5,.9);backdrop-filter:blur(14px);border-top:1px solid var(--line);}
  .mbar .btn{flex:1;padding:14px;font-size:15px;}

  /* ---------- reveal ---------- */
  .reveal{opacity:0;transform:translateY(26px);transition:opacity .7s var(--ease),transform .7s var(--ease);}
  .reveal.in{opacity:1;transform:none;}

  /* ---------- mobile menu panel ---------- */
  .mobile-menu{position:fixed;inset:0;z-index:55;background:rgba(3,5,4,.97);backdrop-filter:blur(10px);display:none;flex-direction:column;padding:90px 28px 40px;}
  .mobile-menu.open{display:flex;}
  .mobile-menu a{font-family:'Sora',sans-serif;font-size:26px;font-weight:600;padding:16px 0;border-bottom:1px solid var(--line-2);color:var(--text);}
  .mobile-menu .btn{margin-top:24px;}
  .mm-close{position:absolute;top:22px;right:22px;background:none;border:1px solid var(--line);border-radius:9px;width:46px;height:46px;color:var(--text);font-size:24px;cursor:pointer;}

  /* ---------- responsive ---------- */
  @media(max-width:980px){
    .nav-links{display:none;}
    .nav-cta .btn-ghost{display:none;}
    .menu-btn{display:flex;}
    .how-grid{grid-template-columns:1fr;gap:40px;}
    .why-grid{grid-template-columns:repeat(2,1fr);}
    .contact-grid{grid-template-columns:1fr;}
    .card.c1,.card.c2,.card.c3,.card.c4{grid-column:span 3;}
  }
  @media(max-width:680px){
    body{font-size:16px;}
    .section-pad{padding:64px 0;}
    .hero{padding:124px 0 60px;}
    .bento{grid-template-columns:1fr;gap:14px;}
    .card.c1,.card.c2,.card.c3,.card.c4{grid-column:span 1;}
    .why-grid{grid-template-columns:1fr;}
    .card.featured h3{font-size:23px;}
    .mbar{display:flex;}
    footer{padding-bottom:96px;}
    .nav-cta .btn-primary{display:none;}
    .foot-top{flex-direction:column;gap:30px;}
    .hero-cta .btn{flex:1;}
  }
  @media(max-width:420px){
    .wrap{padding:0 18px;}
    .hero{padding:116px 0 52px;}
    .hero-cta{flex-direction:column;}
    .hero-cta .btn{width:100%;flex:none;}
    .hero-meta{gap:14px 22px;}
    .card{padding:24px;}
    .card.featured h3{font-size:21px;}
    .how-card{padding:26px;}
    .how-card p{font-size:16.5px;}
    .info-row{padding:20px;}
    .info-cta .btn{width:100%;}
    .foot-legal{flex-direction:column;align-items:flex-start;gap:12px;}
  }
  @media(prefers-reduced-motion:reduce){
    .reveal{opacity:1;transform:none;transition:none;}
    .sweep{animation:none;opacity:0;}
    .brand .dot,.pin-dot::after{animation:none;}
  }

  /* ---------- WhatsApp button ---------- */
  .btn-wa{background:rgba(37,211,102,.08);color:var(--text);border-color:rgba(37,211,102,.4);}
  .btn-wa:hover{transform:translateY(-2px);border-color:#25D366;box-shadow:0 0 28px -6px rgba(37,211,102,.55);color:#fff;}
  .btn-wa svg{width:18px;height:18px;}

  /* ---------- Cookie banner (RODO) ---------- */
  .cookie{position:fixed;left:0;right:0;bottom:0;z-index:100;display:flex;align-items:center;justify-content:center;gap:18px;flex-wrap:wrap;
    padding:16px 24px calc(16px + env(safe-area-inset-bottom));
    background:rgba(8,10,9,.93);backdrop-filter:blur(14px) saturate(140%);border-top:1px solid var(--line);}
  .cookie p{color:var(--muted);font-size:14px;max-width:760px;line-height:1.5;margin:0;}
  .cookie p a{color:var(--green);text-decoration:underline;text-underline-offset:2px;}
  .cookie .btn{padding:12px 26px;font-size:14.5px;flex-shrink:0;}
  @media(max-width:680px){
    .cookie{left:12px;right:12px;bottom:calc(72px + env(safe-area-inset-bottom));border:1px solid var(--line);border-radius:14px;
      padding:16px 18px;justify-content:flex-start;text-align:left;}
    .cookie .btn{width:100%;}
  }

/* ================= MULTI-PAGE ADDITIONS ================= */
.nav-links .has-dd{position:relative;}
.nav-links .dd-trigger{display:inline-flex;align-items:center;gap:6px;}
.nav-links .dd-trigger::after{content:"";width:6px;height:6px;border-right:1.6px solid currentColor;border-bottom:1.6px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .25s var(--ease);}
.dd{position:absolute;top:100%;left:-18px;padding-top:16px;min-width:290px;opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .25s var(--ease),transform .25s var(--ease),visibility .25s;}
.dd-inner{background:rgba(8,10,9,.97);border:1px solid var(--line);border-radius:14px;padding:8px;backdrop-filter:blur(14px);box-shadow:0 24px 60px -20px rgba(0,0,0,.9);}
.nav-links .dd a{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:9px;color:var(--muted);font-size:15px;}
.nav-links .dd a:hover{background:rgba(0,230,118,.07);color:var(--text);}
.dd a i{font-style:normal;font-family:'Chakra Petch',monospace;font-size:12px;letter-spacing:.14em;color:var(--green);}
.has-dd:hover .dd,.has-dd:focus-within .dd{opacity:1;visibility:visible;transform:none;}
.has-dd:hover .dd-trigger::after,.has-dd:focus-within .dd-trigger::after{transform:rotate(225deg) translateY(-2px);}
.nav-links a.active{color:var(--text);}
.mobile-menu{overflow-y:auto;}
.mobile-menu a.sub{font-size:19px;font-weight:500;padding:13px 0 13px 18px;color:var(--muted);}
.card-more{margin-top:24px;display:inline-flex;align-items:center;gap:8px;font-family:'Chakra Petch',monospace;font-weight:600;font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--green);transition:gap .25s var(--ease);}
.card.featured .card-more{color:#ff5277;}
.card:hover .card-more{gap:14px;}
.sec-head p a,.how-card a.inline{color:var(--green);border-bottom:1px solid rgba(0,230,118,.4);}
.sec-head p a:hover,.how-card a.inline:hover{border-bottom-color:var(--green);}
.how-card .card-more{margin-top:22px;}

/* service page hero */
.phero{position:relative;padding:150px 0 70px;overflow:hidden;}
.phero .hero-bg-ecg{top:56%;opacity:.35;}
.phero .wrap{position:relative;z-index:2;}
.crumbs{font-family:'Chakra Petch',monospace;font-size:12.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted-2);margin-bottom:26px;display:flex;gap:10px;flex-wrap:wrap;}
.crumbs a{color:var(--muted);transition:color .2s;}
.crumbs a:hover{color:var(--green);}
.crumbs span{color:var(--muted-2);}
.phero h1{font-size:clamp(32px,5.4vw,58px);font-weight:800;margin-top:20px;max-width:18ch;}
.phero .lead{color:var(--muted);font-size:clamp(16.5px,2vw,19.5px);max-width:56ch;margin-top:22px;line-height:1.6;}
.phero .lead b{color:var(--text);font-weight:600;}
.phero .hero-cta{justify-content:flex-start;}
.card.c-third{grid-column:span 2;}
.rel-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.rel{display:block;}
.rel .why-ico svg{stroke:var(--green);}
.rel h4{margin-bottom:10px;}
.rel p{color:var(--muted);font-size:15px;line-height:1.5;}
.rel .card-more{margin-top:18px;}
.cta-band{position:relative;background:var(--panel);border:1px solid var(--line);border-radius:20px;padding:46px;overflow:hidden;display:grid;grid-template-columns:1.2fr 1fr;gap:34px;align-items:center;}
.cta-band::before{content:"";position:absolute;inset:0;border-radius:20px;padding:1px;background:var(--grad);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:.6;pointer-events:none;}
.cta-band h2{font-size:clamp(26px,3.6vw,38px);}
.cta-band p{color:var(--muted);margin-top:14px;}
.cta-band .meta{color:var(--text);font-size:15.5px;margin-top:18px;line-height:1.7;}
.cta-band .meta b{font-family:'Chakra Petch',monospace;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted-2);font-weight:600;display:block;}
.cta-btns{display:flex;flex-direction:column;gap:14px;}
.cta-btns .btn{width:100%;}
@media(max-width:980px){
  .card.c-third{grid-column:span 6;}
  .rel-grid{grid-template-columns:1fr;}
  .cta-band{grid-template-columns:1fr;padding:34px;}
  .phero{padding:124px 0 56px;}
}
@media(max-width:680px){
  .card.c-third{grid-column:span 1;}
  .cta-band{padding:26px;}
  .phero .hero-cta{flex-direction:column;}
  .phero .hero-cta .btn{width:100%;flex:none;}
}

/* ================= LIGHT THEME OVERRIDES ================= */
:root{
  --green:#00A651; --red:#E8102F;
  --bg:#ffffff; --panel:#f5f7f6; --panel-2:#edf1ef;
  --line:rgba(8,20,14,.11); --line-2:rgba(8,20,14,.07);
  --text:#0b1410; --muted:#4f5b54; --muted-2:#7b867f;
  --grad:linear-gradient(90deg,#00C853,#FF1744);
  --grad-soft:linear-gradient(90deg,rgba(0,200,83,.16),rgba(255,23,68,.14));
}
body{background:#fff;color:var(--text);}
header.nav.scrolled{background:rgba(255,255,255,.86);}
.btn-primary{color:#04110a;}
.btn-primary:hover{box-shadow:0 10px 30px -10px rgba(0,200,83,.55),0 6px 26px -12px rgba(255,23,68,.45);}
.btn-ghost{background:rgba(0,166,81,.05);border-color:rgba(0,166,81,.45);color:var(--text);}
.btn-ghost:hover{color:var(--text);box-shadow:0 0 24px -8px rgba(0,166,81,.5);}
.btn-wa{background:rgba(37,211,102,.1);border-color:rgba(18,140,70,.5);color:var(--text);}
.btn-wa:hover{color:var(--text);}
.eyebrow::before{box-shadow:none;}
.brand .dot,.hero-meta span::before{box-shadow:0 0 8px rgba(0,200,83,.7);}
.hero-glow::before,.hero-glow::after{opacity:.22;}
.hero-bg-ecg,.phero .hero-bg-ecg{opacity:.4;}
.ecg .ln-dim{opacity:.3;}
.ecg .ln-hot{filter:drop-shadow(0 0 4px rgba(0,200,83,.55)) drop-shadow(0 0 6px rgba(255,23,68,.35));}
.hero-logo{border-radius:24px;box-shadow:0 30px 70px -30px rgba(0,0,0,.55);filter:none;}
.card,.why-item,.info-row,.how-card,.cta-band{box-shadow:0 1px 2px rgba(8,20,14,.04),0 10px 30px -18px rgba(8,20,14,.18);}
.card:hover{background:#fff;box-shadow:0 18px 40px -18px rgba(8,20,14,.25);}
.card::after{background:radial-gradient(circle,rgba(0,200,83,.14),transparent 68%);}
.card.featured::after{background:radial-gradient(circle,rgba(255,23,68,.12),transparent 68%);}
.card-ico,.info-ico{background:rgba(0,166,81,.08);border-color:rgba(0,166,81,.28);}
.card.featured .card-ico{background:rgba(232,16,47,.07);border-color:rgba(232,16,47,.28);}
.card.featured .card-ico svg,.card.featured li svg{stroke:#E8102F;}
.card.featured .card-more{color:#E8102F;}
.step-num{background:#fff;border-color:rgba(0,166,81,.4);}
.how-card::after{background:radial-gradient(circle,rgba(0,200,83,.12),transparent 70%);}
.how-card .badge{background:rgba(0,166,81,.08);border-color:rgba(0,166,81,.3);}
.how-card .free{color:var(--green);}
.map{background:#eef2f0;}
.why-item:hover{border-color:rgba(0,166,81,.45);}
.info-row:hover{border-color:rgba(0,166,81,.4);}
.mobile-menu{background:rgba(255,255,255,.98);}
.mbar{background:rgba(255,255,255,.93);}
.cookie{background:rgba(255,255,255,.96);box-shadow:0 -10px 40px -20px rgba(8,20,14,.3);}
.dd-inner{background:rgba(255,255,255,.98);box-shadow:0 24px 60px -24px rgba(8,20,14,.35);}
.nav-links .dd a:hover{background:rgba(0,166,81,.08);}
.sec-head p a,.how-card a.inline{border-bottom-color:rgba(0,166,81,.5);}
footer{background:var(--panel);}
.menu-btn svg{stroke:var(--text);}
