/* Strony publiczne na telefonie: jeden rytm odstępów, przyciski na całą szerokość, karty bez zbędnej wysokości.
   Ładowany jako ostatni na wszystkich stronach ofertowych. */
figure.photo{margin:0}
.form input,.form textarea{font-weight:400}
.foot-links .sep{font-style:normal}
.btn[hidden]{display:none}
.stage > .step-actions{padding:16px 32px 22px;border-top:1px solid var(--line)}

@media (max-width:760px){
  body{font-size:16px;line-height:1.6}
  .wrap{padding-left:20px;padding-right:20px}
  h2{font-size:clamp(25px,7.4vw,28px);line-height:1.15}
  .eyebrow{font-size:12px;letter-spacing:.12em;margin-bottom:12px}

  /* Sekcje: stały odstęp, a dwie białe obok siebie nie dublują pustego miejsca. */
  .sec{padding:52px 0!important}
  .paths-sec{padding:32px 0 44px!important}
  .sec:not(.tint):not(.contact) + .sec:not(.tint):not(.contact){padding-top:0!important}
  .head{margin-bottom:24px}
  .head p{font-size:16.5px;line-height:1.55;margin-top:12px}

  /* Przyciski */
  .btn{min-height:50px;padding:14px 20px;line-height:1.25;text-align:center}
  .btn.sm{min-height:44px;padding:10px 14px}
  .sec .btn{width:100%}
  .aud .btn,.plan .btn{align-self:stretch}
  .cta{display:flex;flex-direction:column;gap:10px}
  .top .wrap{height:64px;gap:10px}
  .top .btn{width:auto;min-height:40px;padding:9px 14px;font-size:14.5px;white-space:nowrap;flex:none}
  .brand{flex:none}

  /* Pierwszy ekran */
  .hero.photo-hero .wrap{padding-top:32px;padding-bottom:36px}
  .hero.photo-hero h1{font-size:clamp(30px,9.4vw,36px);line-height:1.08}
  .hero .for{font-size:14px;line-height:1.3;border-radius:16px;padding:6px 14px 6px 6px;margin-bottom:18px}
  .hero .for .dot{flex:none}
  .hero .lead{font-size:17px;line-height:1.55;margin:14px 0 22px}
  .hero .cta:has(> :nth-child(3)){display:grid;grid-template-columns:1fr 1fr}
  .hero .cta:has(> :nth-child(3)) > :first-child{grid-column:1/-1}
  .hero .cta:has(> :nth-child(3)) > :not(:first-child){padding-left:8px;padding-right:8px;font-size:15px}
  .chips{display:grid;gap:8px;margin-top:22px}
  .chips span{background:none;border:0;backdrop-filter:none;padding:0;font-size:15px;line-height:1.35;border-radius:0}
  .hero .facts{gap:10px 18px;margin-top:20px}
  .sp-hero{padding:44px 0}
  .sp-hero h1{margin:10px 0 14px}
  .sp-hero .lead{font-size:17px;line-height:1.55}
  .sp-cta{flex-direction:column;gap:10px;margin-top:22px}
  .sp-cta .btn{width:100%}

  .shots{margin:0 -20px}

  /* Dwie drogi i dyscypliny */
  .paths{gap:12px}
  .path{padding:20px;gap:12px}
  .path img{width:56px;height:56px;border-radius:14px}
  .path h3{font-size:20px;margin:4px 0 6px}
  .sports{gap:10px}
  .sports figure{aspect-ratio:4/3;border-radius:14px}
  .sports figure:nth-child(3),.sports figure:nth-child(4){display:block}

  /* Problem i zdjęcia z podpisem: podpis pod zdjęciem, bo na małym zdjęciu nie mieści się w całości. */
  .problem{gap:24px}
  .pains{margin-top:20px;gap:14px}
  .pains span{font-size:15px}
  .quote{margin-top:20px;padding:14px 16px;font-size:16.5px}
  .trust{gap:24px}
  figure.photo{background:#fff;border:1px solid var(--line);border-radius:18px}
  .photo img,.problem .photo img{aspect-ratio:16/10}
  .photo figcaption{position:static;background:none;border-radius:0;box-shadow:none;padding:14px 16px 16px;font-size:15px}
  .photo figcaption b{font-size:16.5px}

  /* Karty */
  .how{gap:12px}
  .how article{display:grid;grid-template-columns:56px 1fr;column-gap:14px;padding:18px}
  .how article::before{top:14px;right:16px;font-size:24px}
  .how img{grid-row:1/3;width:56px;height:56px;border-radius:14px;margin:0}
  .how h3{font-size:17px;margin:0 34px 4px 0}
  .how p{grid-column:2;font-size:15px;line-height:1.5}
  .mod-title{margin:28px 0 12px;font-size:20px}
  .mods{gap:12px}
  .mods article{padding:16px;gap:14px}
  .mods img{width:52px;height:52px;border-radius:13px}
  .mods h4{font-size:16.5px;line-height:1.3;margin-bottom:4px}
  .mods p{font-size:14.5px}
  .trust-grid{gap:12px}
  .trust-grid article{display:grid;grid-template-columns:40px 1fr;column-gap:14px;padding:16px}
  .trust-grid .ic{grid-row:1/3}
  .trust-grid h4{font-size:16.5px;line-height:1.3;margin:0 0 4px}
  .trust-grid p{grid-column:2;font-size:14.5px;line-height:1.5}
  .timeline{gap:12px}
  .timeline article{display:grid;grid-template-columns:36px 1fr;column-gap:14px;padding:16px}
  .timeline article::before{grid-row:1/3;margin:0}
  .timeline h4{font-size:16.5px;line-height:1.3;margin:0 0 4px}
  .timeline p{grid-column:2;font-size:14.5px;line-height:1.5}
  .shift{gap:12px}
  .shift article{padding:20px}
  .ic{margin-bottom:12px}
  .sp-grid{gap:12px;margin-top:20px}
  .sp-grid article{padding:18px}
  .sp-steps{font-size:16px;margin-top:16px}

  /* Funkcje ze zdjęciem */
  .spots{gap:36px}
  .spot{gap:16px}
  .spot figure{border-radius:18px}
  .spot figure img{aspect-ratio:16/10}
  .spot h3{font-size:22px;margin:4px 0 10px}
  .spot .checks li{font-size:15px}
  .spot-list li{padding:10px 12px}

  /* Dla kogo, współpraca, korzyści */
  .aud,.coop,.trio,.duo,.pricing{gap:14px}
  .aud .body{padding:22px 20px}
  .aud h3{font-size:22px;margin:10px 0 16px}
  .aud .blist{margin-bottom:20px}
  .blist{gap:14px}
  .blist li{grid-template-columns:38px 1fr;gap:12px}
  .blist .ic{width:38px;height:38px}
  .blist h4{font-size:16.5px;line-height:1.3}
  .blist p{font-size:15px;line-height:1.5}
  .duo > article,.plan,.trio > article{padding:22px 20px;border-radius:18px}
  .checks li{font-size:15px;line-height:1.5}
  .band{gap:12px}
  .band figure{border-radius:18px}
  .band figcaption{left:14px;right:14px;bottom:12px;font-size:16px}
  #klub-korzysci .kk-grid{gap:10px;margin:20px 0}
  #klub-korzysci .kk-card img{height:110px}
  #klub-korzysci .kk-list{gap:14px;margin-bottom:20px}

  /* Demo krok po kroku */
  .switch{margin-bottom:14px}
  .steps-nav{margin:0 -20px;padding:0 20px 6px;scroll-snap-type:x proximity;scroll-padding:0 20px}
  .steps-nav button{min-height:44px;scroll-snap-align:start}
  .step .txt{padding:20px 18px 22px}
  .gains{gap:10px;margin-bottom:16px}
  .gains div{padding:14px 16px}
  .stage > .step-actions{padding:14px 18px 18px}
  .stage > .step-actions .btn{width:auto;flex:1}
  .live{margin-top:14px;padding:16px}
  .live .btn{flex:none}

  /* FAQ */
  .faq details{margin-bottom:8px;border-radius:12px}
  .faq summary{padding:15px 44px 15px 16px;font-size:16px}
  .faq summary::after{right:16px;top:12px}
  .faq details p{padding:0 16px 16px;font-size:15px}

  /* Kontakt i formularz */
  .contact-grid{gap:28px}
  .agenda{margin-top:18px}
  .person{padding:14px;gap:14px;margin-top:20px;align-items:flex-start}
  .person br{display:none}
  .person b{display:block}
  .person .role{display:block;font-size:14.5px}
  .person .av{width:46px;height:46px;font-size:16px}
  .person a{display:block;padding:5px 0;overflow-wrap:anywhere}
  .person .sep{display:none}
  .form{padding:22px 18px;border-radius:18px}
  .form label{margin-bottom:14px}
  .form .row2{gap:0}
  .form input,.form textarea{min-height:48px}
  .form textarea{min-height:96px}
  .form .consent{align-items:flex-start;line-height:1.5}
  .form .consent input{width:22px;height:22px;min-height:0;margin:0}

  /* Stopka: linki jako wiersze łatwe do trafienia palcem. */
  footer{padding:28px 0!important}
  footer .wrap{flex-direction:column;align-items:flex-start;gap:12px}
  footer p{font-size:13.5px;line-height:1.55}
  .foot-links{display:grid;grid-template-columns:1fr 1fr;gap:0 16px;width:100%}
  .foot-links .sep{display:none}
  .foot-links > a{display:flex;align-items:center;min-height:40px}
  .foot-links .wide{grid-column:1/-1;line-height:40px}

  /* Pływający przycisk */
  .mobile-cta{left:14px;right:14px;bottom:calc(12px + env(safe-area-inset-bottom));width:auto}
}

/* Najmniejsze telefony */
@media (max-width:360px){
  .wrap{padding-left:16px;padding-right:16px}
  .steps-nav{margin:0 -16px;padding:0 16px 6px}
  .shots{margin:0 -16px}
  .brand{font-size:19px;letter-spacing:-1px}
  .brand .sym{width:30px;height:31px;margin-right:7px}
  .brand .sym svg{width:20px;height:20px}
  .top .wrap{gap:8px}
  .top .btn{padding:9px 11px;font-size:14px}
  .top .login{width:38px;height:38px}
  .foot-links{grid-template-columns:1fr}
}
