  :root{
    /* kolorystyka z Księgi Identyfikacji Wizualnej FALP Event (1.6) */
    --green:#76B837;
    --green-mid:#76B837;
    --green-deep:#67A82C;
    --green-dark:#5D9126;
    --green-pale:#F1F7E9;
    --ink:#494948;
    --gray:#7A7A78;
    --paper:#FFFFFF;
    --line:#EAEAE8;
    --watermark:#F4F4F2;
  }
  *{margin:0;padding:0;box-sizing:border-box}
  html{scroll-behavior:smooth}
  body{
    font-family:'Montserrat',Verdana,sans-serif;
    background:var(--paper);
    color:var(--ink);
    line-height:1.6;
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
  }
  ::selection{background:var(--green);color:#fff}

  /* ── layout ── */
  .wrap{max-width:1200px;margin:0 auto;padding:0 24px}
  section{padding:110px 0;position:relative}
  @media(max-width:760px){section{padding:70px 0}}

  /* boczny pasek jak w prezentacji */
  .rail{
    position:fixed;left:0;top:0;bottom:0;width:64px;
    border-right:1px solid var(--line);
    display:flex;flex-direction:column;justify-content:space-between;align-items:center;
    padding:24px 0;background:#F6F8F3;z-index:50;
  }
  .rail .brand-vert{
    writing-mode:vertical-rl;transform:rotate(180deg);
    font-weight:700;font-size:15px;letter-spacing:.04em;
  }
  .rail .brand-vert em{font-style:normal;color:var(--green)}
  .rail .page-no{font-size:13px;color:var(--ink);font-weight:600;font-variant-numeric:tabular-nums;}
  main{margin-left:64px}
  @media(max-width:900px){.rail{display:none}main{margin-left:0}}

  /* gigantyczna litera-watermark jak "K" na slajdach */
  .wm{
    position:absolute;top:-40px;right:-30px;z-index:0;pointer-events:none;user-select:none;
    font-weight:700;color:var(--watermark);
    font-size:clamp(300px,38vw,640px);line-height:.8;letter-spacing:-.05em;
  }
  section>.wrap{position:relative;z-index:1}

  /* ── nagłówek ── */
  header{
    position:sticky;top:0;z-index:40;
    background:rgba(252,253,251,.88);backdrop-filter:blur(10px);
    border-bottom:1px solid var(--line);
  }
  .nav{display:flex;align-items:center;justify-content:space-between;height:70px}
  .logo{font-weight:700;font-size:22px;text-decoration:none;color:var(--ink);letter-spacing:-.01em}
  .logo em{font-style:normal;color:var(--green);font-weight:600}
  .nav ul{display:flex;gap:34px;list-style:none}
  .nav a{text-decoration:none;color:var(--ink);font-size:15px;font-weight:500}
  .nav a:hover{color:var(--green-dark)}
  .nav .cta{
    background:var(--green);color:#fff;padding:10px 22px;border-radius:999px;
    font-weight:600;transition:background .2s;
  }
  .nav .cta:hover{background:var(--green-dark);color:#fff}
  @media(max-width:900px){.nav ul.menu{display:none}}

  /* hashtag — motyw z prezentacji */
  .hash{
    display:inline-block;color:var(--green-dark);font-weight:600;font-size:17px;
    margin-bottom:18px;letter-spacing:.01em;
  }
  .hash::before{content:'#';color:var(--green);margin-right:2px}

  /* wielkie nagłówki jak na slajdach */
  .display{
    font-weight:700;letter-spacing:-.03em;line-height:1.02;
    font-size:clamp(44px,7.2vw,96px);
  }
  h2.display{font-size:clamp(38px,5.8vw,74px)}
  .underline-green{
    display:block;width:64px;height:5px;background:var(--green);
    border-radius:3px;margin:26px 0;
  }

  /* ── hero ── */
  .hero{padding:120px 0 90px;position:relative;overflow:hidden}
  .hero .wm{top:auto;bottom:-120px;right:-60px}
  .hero .memories-img{
    display:block;width:min(540px,74vw);height:auto;margin-top:22px;
  }
  .hero .lead{max-width:560px;font-size:19px;color:var(--gray);margin-top:30px}
  .hero .actions{margin-top:40px;display:flex;gap:16px;flex-wrap:wrap}
  .btn{
    font-weight:600;font-size:16px;text-decoration:none;
    padding:15px 34px;border-radius:999px;transition:.2s;display:inline-block;
  }
  .btn-green{background:var(--green);color:#fff}
  .btn-green:hover{background:var(--green-dark);transform:translateY(-2px)}
  .btn-ghost{border:2px solid var(--ink);color:var(--ink)}
  .btn-ghost:hover{background:var(--ink);color:#fff}
  /* izometryczna kostka — bryła z okładki */
  /* blok tekstowy hero nie może zjadać hoveru kostki */
  .hero .wrap{pointer-events:none}
  .hero .wrap a{pointer-events:auto}
  .cube-wrap{
    position:absolute;right:-30px;top:40px;width:600px;aspect-ratio:200/230;
    pointer-events:none;animation:floaty 9s ease-in-out infinite;
  }
  .cube-wrap svg{position:absolute;inset:0;width:100%;height:100%;display:block}
  .cube-wrap .face{
    pointer-events:all;cursor:pointer;
    transition:fill-opacity .3s,filter .25s;
  }
  .cube-wrap .face:hover{filter:brightness(1.1)}
  .cube-wrap .face.playing{fill-opacity:0;filter:none;stroke:#fff;stroke-width:1.6}
  /* filmy przycięte dokładnie do kształtu ścianek */
  .fv{
    position:absolute;object-fit:cover;
    opacity:0;transition:opacity .35s;pointer-events:none;
  }
  .fv.on{opacity:1}
  /* każdy film wypełnia prostokąt swojej ścianki — szerszy kadr */
  .fv1{left:5%;top:4.35%;width:90%;height:45.22%;clip-path:polygon(50% 0%,100% 50%,50% 100%,0% 50%)}
  .fv2{left:5%;top:26.96%;width:45%;height:67.82%;clip-path:polygon(0% 0%,100% 33.34%,100% 100%,0% 66.66%)}
  .fv3{left:50%;top:26.96%;width:45%;height:67.82%;clip-path:polygon(100% 0%,0% 33.34%,0% 100%,100% 66.66%)}
  .cube-tag{
    position:absolute;left:50%;top:47%;transform:translate(-50%,8px);
    background:var(--green);color:#fff;font-weight:700;font-size:13.5px;
    padding:8px 18px;border-radius:999px;opacity:0;transition:.25s;
    pointer-events:none;box-shadow:0 10px 26px -8px rgba(0,0,0,.35);white-space:nowrap;
  }
  .cube-wrap.showtag .cube-tag{opacity:1;transform:translate(-50%,0)}
  .cube-hint{
    position:absolute;left:50%;bottom:1%;transform:translateX(-50%);
    background:#fff;border:1px solid var(--line);border-radius:999px;
    padding:8px 18px;font-size:12.5px;font-weight:600;color:var(--gray);
    box-shadow:0 8px 22px -8px rgba(0,0,0,.18);white-space:nowrap;
  }
  @keyframes floaty{0%,100%{transform:translateY(0)}50%{transform:translateY(-20px)}}
  @media(max-width:960px){.cube-wrap{width:380px;right:-50px}}
  @media(max-width:700px){.cube-wrap{display:none}}
  .hero-stats{display:flex;gap:46px;margin-top:56px;flex-wrap:wrap}
  .hero-stats div{border-left:4px solid var(--green);padding-left:18px}
  .hero-stats b{display:block;font-size:32px;font-weight:700;color:var(--ink);line-height:1.1}
  .hero-stats span{color:var(--gray);font-size:14px}

  /* pasek marquee */
  .marquee{
    border-top:1px solid var(--line);border-bottom:1px solid var(--line);
    overflow:hidden;white-space:nowrap;padding:18px 0;background:#fff;
  }
  .marquee-inner{display:inline-block;animation:scroll 30s linear infinite}
  .marquee span{
    font-weight:700;font-size:22px;margin-right:56px;
    color:var(--ink);
  }
  .marquee img.mem-inline{height:24px;vertical-align:-4px}
  @keyframes scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}

  /* ── o nas ── */
  .fe-badge{display:block;width:80px;height:auto;margin-bottom:34px}
  .about-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:start;margin-top:10px}
  @media(max-width:900px){.about-grid{grid-template-columns:1fr;gap:40px}}
  .about-big{
    font-weight:600;font-size:clamp(23px,2.8vw,33px);
    line-height:1.35;letter-spacing:-.01em;
  }
  .about-big strong{color:var(--green-dark)}
  .about-side{border-top:5px solid var(--green);padding-top:24px;max-width:420px}
  .about-side p{color:var(--ink);font-size:17px;font-weight:500}

  /* co posiadamy — karty ze skośnym blokiem jak na slajdach 4–8 */
  .tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:64px}
  @media(max-width:900px){.tiles{grid-template-columns:repeat(2,1fr)}}
  @media(max-width:600px){.tiles{grid-template-columns:1fr}}
  .tile{
    background:#fff;border:1px solid var(--line);border-radius:20px;
    padding:130px 30px 32px;position:relative;overflow:hidden;
    transition:transform .25s,box-shadow .25s;
  }
  .tile:hover{transform:translateY(-6px);box-shadow:0 18px 40px -18px rgba(78,148,32,.3)}
  .tile .corner{
    position:absolute;top:0;right:0;width:64%;height:96px;background:var(--green);
    clip-path:polygon(0 0,100% 0,100% 100%,22% 100%);
    display:flex;align-items:center;justify-content:center;padding-left:12%;
    transition:width .3s cubic-bezier(.22,1,.36,1);
  }
  .tile:hover .corner{width:78%}
  .tile .corner svg{width:44px;height:44px;stroke:#fff}
  .tile .kicker{font-weight:600;font-size:14px;color:var(--gray);margin-bottom:6px}
  .tile h3{font-size:24px;font-weight:700;margin-bottom:8px;letter-spacing:-.02em;line-height:1.15}
  .tile p{color:var(--gray);font-size:15px}

  /* ── liczby — styl "PONAD 3780" ze slajdów ── */
  .numbers{border-top:1px solid var(--line)}
  .num-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:70px 60px;margin-top:70px}
  @media(max-width:760px){.num-grid{grid-template-columns:1fr;gap:50px}}
  .num{display:flex;gap:18px;align-items:stretch}
  .num .ponad{
    writing-mode:vertical-rl;transform:rotate(180deg);
    font-weight:700;font-size:14px;letter-spacing:.22em;
    text-transform:uppercase;color:var(--ink);
    border-right:none;display:flex;align-items:center;
  }
  .num .val{
    font-weight:700;letter-spacing:-.04em;
    font-size:clamp(70px,9vw,128px);color:var(--green);line-height:.95;
  }
  .num .val sup{font-size:.4em;font-weight:700;top:-0.9em}
  .num .body{display:flex;flex-direction:column;justify-content:flex-end}
  .num .cap{margin-top:14px;font-weight:600;font-size:18px;}
  .num .cap::before{content:'';display:block;width:48px;height:4px;background:var(--green);border-radius:2px;margin-bottom:12px}
  .num .sub{color:var(--gray);font-size:14.5px}

  /* ── możliwości ── */
  .svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:64px;border-top:1px solid var(--line);border-left:1px solid var(--line)}
  @media(max-width:900px){.svc-grid{grid-template-columns:repeat(2,1fr)}}
  @media(max-width:600px){.svc-grid{grid-template-columns:1fr}}
  .svc{
    border-right:1px solid var(--line);border-bottom:1px solid var(--line);
    padding:38px 32px;background:#fff;transition:background .25s;position:relative;
  }
    .svc{z-index:0}
  .svc>*{position:relative;z-index:1}
  .svc::before{
    content:'';position:absolute;inset:0;background-size:cover;background-position:center;
    opacity:0;transition:opacity .35s;z-index:0;
  }
  .svc:hover::before{opacity:.17}
  /* zdjęcia poglądowe — do podmiany na fotografie z realizacji klienta */
  .svc:nth-child(1)::before{background-image:url('https://picsum.photos/seed/falp-av/640/440')}
  .svc:nth-child(2)::before{background-image:url('https://picsum.photos/seed/falp-graf/640/440')}
  .svc:nth-child(3)::before{background-image:url('https://picsum.photos/seed/falp-print/640/440')}
  .svc:nth-child(4)::before{background-image:url('https://picsum.photos/seed/falp-gadget/640/440')}
  .svc:nth-child(5)::before{background-image:url('https://picsum.photos/seed/falp-log/640/440')}
  .svc:nth-child(6)::before{background-image:url('https://picsum.photos/seed/falp-promo/640/440')}
  .svc:nth-child(7)::before{background-image:url('https://picsum.photos/seed/falp-ads/640/440')}
  .svc:nth-child(8)::before{background-image:url('https://picsum.photos/seed/falp-art/640/440')}
  .svc:nth-child(9)::before{background-image:url('https://picsum.photos/seed/falp-trip/640/440')}
  .svc .no{
    color:var(--green-dark);font-weight:700;font-size:15px;
  }
  .svc .no::before{content:'#';color:var(--green)}
  .svc h3{font-size:22px;font-weight:700;margin:10px 0 0;letter-spacing:-.01em;line-height:1.2}
  .svc .u{display:block;width:44px;height:4px;background:var(--green);border-radius:2px;margin:16px 0}
  .svc p{color:var(--gray);font-size:15px}

  /* ── EKO ── */
  .eko-sec{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
  .eko-head{display:flex;align-items:baseline;gap:28px;flex-wrap:wrap}
  .eko-word{
    font-weight:700;color:var(--green);
    font-size:clamp(90px,13vw,190px);letter-spacing:-.02em;line-height:.9;
  }
  .eko-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:60px}
  @media(max-width:900px){.eko-grid{grid-template-columns:1fr}}
  .eko-card{background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:34px 30px}
  .eko-card h3{font-size:21px;font-weight:700;letter-spacing:-.01em}
  .eko-card .u{display:block;width:44px;height:4px;background:var(--green);border-radius:2px;margin:16px 0}
  .eko-card p{color:var(--gray);font-size:15px}
  .esg{
    margin-top:44px;display:flex;gap:14px;flex-wrap:wrap;align-items:center;
    color:var(--gray);font-size:15px;
  }
  .esg .pill{
    background:var(--green-pale);color:var(--green-dark);font-weight:600;
    border-radius:999px;padding:8px 18px;font-size:14px;
  }

  /* ── pełnozielone pasy z kostkami (okładka / slajd klientów) ── */
  .cube-band{
    position:relative;background:var(--green-mid);color:#fff;overflow:hidden;
  }
  .cube-band .cubes{position:absolute;inset:0;width:100%;height:100%}
  .cube-band .inner{position:relative;z-index:1}

  /* klienci na zielonym */
  .clients-band{padding:110px 0}
  .clients-band h2{
    font-size:clamp(28px,3.8vw,48px);font-weight:700;letter-spacing:-.02em;text-align:center;
  }
  .client-grid{
    display:grid;grid-template-columns:repeat(4,1fr);gap:8px 24px;margin-top:64px;
  }
  @media(max-width:900px){.client-grid{grid-template-columns:repeat(3,1fr)}}
  @media(max-width:600px){.client-grid{grid-template-columns:repeat(2,1fr)}}
  .client-grid span{
    font-weight:600;font-size:clamp(15px,1.6vw,19px);
    text-align:center;padding:18px 6px;color:#fff;opacity:.92;transition:.2s;
  }
  .client-grid span:hover{opacity:1;transform:scale(1.06)}

  /* separator we create memories */
  .memo-band{padding:100px 0;text-align:center}
  .memo-band .sq{display:inline-block;width:20px;height:20px;background:#fff;margin-right:22px;vertical-align:middle}
  .memo-band .t1{
    font-weight:400;font-size:clamp(26px,4vw,44px);
    vertical-align:middle;letter-spacing:.01em;
  }
  .memo-band .t2-img{width:min(380px,58vw);height:auto;vertical-align:middle;margin-left:22px}

  /* ── lokalizacja ── */
  .loc-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:60px;align-items:center}
  @media(max-width:900px){.loc-grid{grid-template-columns:1fr}}
  .czesc{
    font-weight:700;color:var(--green);
    font-size:clamp(56px,7vw,96px);letter-spacing:-.02em;line-height:1;
  }
  .tutaj{font-weight:700;font-size:24px;margin-top:6px}
  .ast{
    font-size:64px;color:var(--green);line-height:1;
    margin:34px 0 14px;
  }
  .kable{font-size:17px;font-weight:600;max-width:470px;line-height:1.6}
  .map-box svg{width:100%;height:auto;display:block}

  /* ── kontakt ── */
  .contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}
  @media(max-width:900px){.contact-grid{grid-template-columns:1fr;gap:44px}}
  .c-item{padding:22px 0;border-bottom:1px solid var(--line)}
  .c-item .lbl{font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:var(--gray);margin-bottom:6px}
  .c-item .big{font-weight:700;font-size:24px;letter-spacing:-.01em}
  .c-item a{color:var(--ink);text-decoration:none}
  .c-item a:hover{color:var(--green-dark)}

  footer{border-top:1px solid var(--line);padding:36px 0;background:#fff}
  .foot{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:14px;color:var(--gray);font-size:14px}

  /* chipy z logo klienta na hover */
  .client-grid .cl{position:relative;cursor:default}
  .cl .chip{
    position:absolute;left:50%;bottom:calc(100% - 2px);transform:translateX(-50%) scale(.88);
    opacity:0;pointer-events:none;background:#fff;border-radius:14px;
    box-shadow:0 14px 34px -10px rgba(0,0,0,.4);padding:10px 16px;
    display:flex;align-items:center;gap:10px;transition:.25s;white-space:nowrap;z-index:6;
  }
  .cl:hover .chip{opacity:1;transform:translateX(-50%) scale(1)}
  .chip img{height:36px;width:auto;max-width:130px;object-fit:contain;display:none}
  .chip.has-img img{display:block}
  .chip.has-img b{display:none}
  .chip b{
    min-width:36px;height:36px;border-radius:9px;background:var(--green-pale);
    color:var(--green-dark);display:grid;place-items:center;font-size:14px;padding:0 6px;
  }

  /* diagram ESG */
  .esg-diagram{max-width:700px;margin:70px auto 0}
  .esg-diagram svg{width:100%;height:auto;display:block}

  /* Falpik — asystent AI (demo) */
  .ai-fab{
    position:fixed;right:22px;bottom:22px;width:64px;height:64px;border-radius:50%;
    background:#fff;box-shadow:0 12px 32px -8px rgba(0,0,0,.32);display:grid;place-items:center;
    cursor:pointer;z-index:90;transition:transform .2s;border:2px solid var(--green-pale);
  }
  .ai-fab:hover{transform:scale(1.08)}
  .ai-fab svg{width:42px;height:42px}
  .ai-panel{
    position:fixed;right:22px;bottom:98px;width:min(340px,calc(100vw - 44px));
    background:#fff;border-radius:20px;box-shadow:0 26px 60px -18px rgba(0,0,0,.38);
    z-index:90;overflow:hidden;opacity:0;transform:translateY(14px);pointer-events:none;transition:.3s;
  }
  .ai-panel.open{opacity:1;transform:none;pointer-events:auto}
  .ai-head{display:flex;align-items:center;gap:10px;background:var(--green);padding:12px 14px;color:#fff}
  .ai-head svg{width:34px;height:34px;flex-shrink:0}
  .ai-head b{display:block;font-size:15px;line-height:1.2}
  .ai-head span{font-size:11.5px;opacity:.92}
  .ai-head button{margin-left:auto;background:none;border:none;color:#fff;font-size:24px;cursor:pointer;line-height:1}
  .ai-body{padding:14px;display:flex;flex-direction:column;gap:8px;max-height:280px;overflow:auto}
  .msg{border-radius:14px;padding:10px 12px;font-size:13.5px;line-height:1.5;max-width:88%}
  .msg.bot{background:var(--green-pale);color:var(--ink);align-self:flex-start;border-bottom-left-radius:4px}
  .msg.user{background:var(--green);color:#fff;align-self:flex-end;border-bottom-right-radius:4px}
  .ai-quick{display:flex;flex-wrap:wrap;gap:8px;padding:0 14px 14px}
  .ai-quick button{
    border:1.5px solid var(--green);background:#fff;color:var(--green-dark);border-radius:999px;
    padding:7px 12px;font-size:12.5px;font-weight:600;cursor:pointer;font-family:inherit;transition:.2s;
  }
  .ai-quick button:hover{background:var(--green-pale)}
  .ai-form{display:flex;gap:8px;padding:0 14px 14px}
  .ai-form input{
    flex:1;border:1.5px solid var(--line);border-radius:999px;padding:10px 16px;
    font-family:inherit;font-size:13.5px;color:var(--ink);
  }
  .ai-form input:focus{outline:none;border-color:var(--green)}
  .ai-form button{
    width:42px;height:42px;border-radius:50%;border:none;background:var(--green);
    color:#fff;font-size:15px;cursor:pointer;flex-shrink:0;
  }
  .ai-form button:hover{background:var(--green-text)}
  .msg.pisze::after{content:'…';animation:kropki 1s steps(4) infinite}
  @keyframes kropki{0%{content:''}25%{content:'.'}50%{content:'..'}75%{content:'...'}}
  @media (prefers-reduced-motion: reduce){
    *,*::before,*::after{animation-duration:.01ms !important;transition-duration:.01ms !important}
  }

  /* ── reveal on scroll ── */
  .rv{opacity:0;transform:translateY(26px);transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1)}
  .rv.in{opacity:1;transform:none}
  /* ── formularz kontaktowy ── */
  .cform{
    background:#fff;border:1px solid var(--line);border-radius:22px;padding:34px;
    box-shadow:0 30px 70px -38px rgba(73,73,72,.35);
  }
  @media(max-width:560px){.cform{padding:24px 20px}}
  .cform .f-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
  @media(max-width:560px){.cform .f-row{grid-template-columns:1fr}}
  .cform label{
    display:block;font-size:12px;font-weight:700;letter-spacing:.07em;
    text-transform:uppercase;color:var(--gray);margin:18px 0 7px;
  }
  .cform label .opc{text-transform:none;letter-spacing:0;font-weight:500;color:#A5A5A3}
  .cform input[type=text],.cform select,.cform textarea{
    width:100%;border:1.5px solid var(--line);border-radius:12px;padding:12px 14px;
    font-family:inherit;font-size:15px;color:var(--ink);background:#fff;
  }
  .cform input:focus,.cform select:focus,.cform textarea:focus{outline:none;border-color:var(--green)}
  .cform textarea{min-height:96px;resize:vertical;line-height:1.55}

  .range-row{display:flex;justify-content:space-between;align-items:center;gap:12px}
  .range-row label{margin:20px 0 8px}
  .pill{
    background:var(--green-pale);color:var(--green-dark);font-weight:700;font-size:14px;
    padding:5px 14px;border-radius:999px;white-space:nowrap;font-variant-numeric:tabular-nums;
    margin-top:10px;
  }
  .cform input[type=range]{
    -webkit-appearance:none;appearance:none;width:100%;height:6px;border-radius:999px;
    background:linear-gradient(90deg,var(--green) 50%,var(--line) 50%);
    outline:none;cursor:pointer;margin:6px 0 4px;
  }
  .cform input[type=range]::-webkit-slider-thumb{
    -webkit-appearance:none;appearance:none;width:24px;height:24px;border-radius:50%;
    background:#fff;border:4px solid var(--green);box-shadow:0 2px 10px rgba(73,73,72,.28);
    cursor:grab;transition:transform .15s;
  }
  .cform input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.12)}
  .cform input[type=range]::-moz-range-thumb{
    width:16px;height:16px;border-radius:50%;
    background:#fff;border:4px solid var(--green);box-shadow:0 2px 10px rgba(73,73,72,.28);cursor:grab;
  }

  .hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
  .zgoda{display:flex;gap:10px;align-items:flex-start;margin-top:20px;cursor:pointer}
  .zgoda span{font-size:12.5px;line-height:1.5;color:var(--gray);font-weight:500;text-transform:none;letter-spacing:0}
  .zgoda input{accent-color:var(--green);margin-top:2px;width:16px;height:16px;flex:none}
  .cform button.btn{width:100%;border:none;cursor:pointer;font-family:inherit;margin-top:22px}
  .cform button.btn:disabled{opacity:.6;cursor:default;transform:none}
  .f-info{margin-top:14px;font-size:14px;font-weight:600;display:none}
  .f-info.ok{display:block;color:var(--green-dark)}
  .f-info.blad{display:block;color:#C0392B}
  .c-sukces{text-align:center;padding:40px 10px}
  .c-sukces .znak{
    width:64px;height:64px;border-radius:50%;background:var(--green-pale);color:var(--green-dark);
    display:flex;align-items:center;justify-content:center;font-size:30px;margin:0 auto 18px;
  }
  .c-sukces h3{font-size:22px;letter-spacing:-.02em;margin-bottom:8px}
  .c-sukces p{color:var(--gray);font-size:14.5px}
