/* FitPoprawny landing v2 (źródło: fitpoprawny-landing-v2.html) */
.fp-landing{
  --ink:#0b2f36; --ink-2:#143f46; --ink-3:#082328;
  --accent:#d16b46; --accent-ink:#ec8f6b; --accent-text:#a9532f;
  --cta:#b95b39; --cta-hover:#a24d2f;
  --paper:#fbfaf7; --paper-2:#f2eee8; --white:#fffdf8;
  --muted:#556b6e; --line:rgba(11,47,54,.14);
  --on-ink:#fffdf8; --on-ink-muted:rgba(255,253,248,.72); --on-ink-line:rgba(255,253,248,.14);
  --f-display:"Montserrat",system-ui,-apple-system,"Segoe UI",sans-serif;
  --f-body:"Montserrat",system-ui,-apple-system,"Segoe UI",sans-serif;
  --f-mono:"IBM Plex Mono",ui-monospace,"SFMono-Regular",Menlo,Consolas,monospace;
  --wrap:1240px; --gutter:clamp(16px,4vw,40px);
  --radius:6px;
  color-scheme:light;
}.fp-landing,.fp-landing *{box-sizing:border-box}.fp-landing{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){.fp-landing{scroll-behavior:auto}}.fp-landing{margin:0;background:var(--paper);color:var(--ink);font-family:var(--f-body);font-weight:500;font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}.fp-landing img{max-width:100%;display:block}.fp-landing a{color:inherit}.fp-landing :focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:3px}.fp-landing .wrap{width:100%;max-width:calc(var(--wrap) + 2*var(--gutter));margin-inline:auto;padding-inline:var(--gutter)}.fp-landing .section{padding-block:clamp(72px,10vw,128px)}.fp-landing .ink{background:var(--ink);color:var(--on-ink)}.fp-landing .paper-2{background:var(--paper-2)}.fp-landing h1,.fp-landing h2,.fp-landing h3{font-family:var(--f-display);margin:0;text-wrap:balance;letter-spacing:-.025em}.fp-landing h1{font-weight:800;font-size:clamp(44px,7.2vw,89.6px);line-height:.98}.fp-landing h2{font-weight:800;font-size:clamp(32px,4.4vw,54.4px);line-height:1.04}.fp-landing h3{font-weight:700;font-size:19.2px;line-height:1.25;letter-spacing:-.01em}.fp-landing p{margin:0}.fp-landing .label{font-family:var(--f-mono);font-size:12.48px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-text)}.fp-landing .ink .label{color:var(--accent-ink)}.fp-landing .lead{font-size:clamp(16.8px,1.6vw,20px);line-height:1.55;max-width:34ch;color:var(--muted)}.fp-landing .ink .lead{color:var(--on-ink-muted)}.fp-landing .mono{font-family:var(--f-mono);font-variant-numeric:tabular-nums}.fp-landing .sec-head{display:grid;gap:18px;max-width:760px;margin-bottom:clamp(40px,6vw,72px)}.fp-landing .btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:14px 24px;border-radius:var(--radius);background:var(--cta);color:#fff;font-weight:700;font-size:16px;text-decoration:none;border:0;transition:background .2s,transform .2s}.fp-landing .btn:hover{background:var(--cta-hover)}.fp-landing .btn:active{transform:translateY(1px)}.fp-landing .btn .price{font-family:var(--f-mono);font-weight:500;opacity:.85;padding-left:10px;border-left:1px solid rgba(255,255,255,.35);white-space:nowrap;flex-shrink:0}.fp-landing .link{font-weight:700;text-decoration:none;border-bottom:2px solid currentColor;padding-bottom:2px}.fp-landing .link:hover{color:var(--accent-text)}.fp-landing .ink .link:hover{color:var(--accent-ink)}.fp-landing .strike{position:relative;display:inline;text-decoration:none;color:var(--muted)}.fp-landing .ink .strike{color:var(--on-ink-muted)}.fp-landing .strike::after{content:"";position:absolute;left:-3%;right:-3%;top:55%;height:3px;background:var(--accent);border-radius:2px;transform:rotate(-2deg) scaleX(1);transform-origin:left center;transition:transform .55s cubic-bezier(.6,0,.2,1)}.fp-landing .strike.pending::after{transform:rotate(-2deg) scaleX(0)}@media (prefers-reduced-motion:reduce){.fp-landing .strike::after{transition:none}}.fp-landing .site-header{position:sticky;top:env(safe-area-inset-top,0px);z-index:30;background:var(--ink);border-bottom:1px solid var(--on-ink-line)}.fp-landing .site-header .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:64px}.fp-landing .brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--on-ink)}.fp-landing .brand img{height:34px;width:auto}.fp-landing .brand .word{font-weight:800;font-size:18.4px;letter-spacing:-.02em}.fp-landing .brand .word b{color:var(--accent-ink);font-weight:800}.fp-landing .nav{display:flex;align-items:center;gap:28px}.fp-landing .nav a{color:var(--on-ink-muted);text-decoration:none;font-weight:600;font-size:15.2px}.fp-landing .nav a:hover{color:var(--on-ink)}.fp-landing .site-header .btn{min-height:42px;padding:9px 18px;font-size:14.72px}@media (max-width:900px){.fp-landing .nav{display:none}}.fp-landing .hero{padding-block:clamp(48px,7vw,96px) clamp(64px,8vw,112px)}.fp-landing .hero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(40px,6vw,88px);align-items:center}.fp-landing .hero-copy{display:grid;gap:26px;min-width:0}.fp-landing .hero h1 .accent{color:var(--accent-ink)}.fp-landing .hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px 28px}.fp-landing .facts{display:flex;flex-wrap:wrap;gap:8px 22px;color:var(--on-ink-muted);font-size:13.6px;padding-top:22px;border-top:1px solid var(--on-ink-line)}.fp-landing .facts span{display:inline-flex;align-items:center;gap:8px}.fp-landing .facts span::before{content:"";width:6px;height:6px;background:var(--accent-ink);border-radius:50%}@media (max-width:960px){.fp-landing .hero-grid{grid-template-columns:1fr}}.fp-landing .cal{--h:30px;background:var(--ink-2);border:1px solid var(--on-ink-line);border-radius:10px;padding:18px 18px 16px;box-shadow:0 30px 80px rgba(0,0,0,.28);min-width:0}.fp-landing .cal-top{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:14px}.fp-landing .cal-top .mono{font-size:12.48px;color:var(--on-ink-muted)}.fp-landing .cal-top strong{font-weight:700;font-size:16px}.fp-landing .cal-body{display:grid;grid-template-columns:38px repeat(5,minmax(0,1fr));gap:0 6px}.fp-landing .cal-hours{display:grid;grid-template-rows:22px repeat(13,var(--h))}.fp-landing .cal-hours span{font-family:var(--f-mono);font-size:10.56px;color:var(--on-ink-muted);transform:translateY(-6px)}.fp-landing .day{min-width:0}.fp-landing .day-name{height:22px;font-family:var(--f-mono);font-size:11.2px;color:var(--on-ink-muted);text-transform:uppercase;letter-spacing:.06em}.fp-landing .day-col{position:relative;height:calc(13*var(--h));background:repeating-linear-gradient(to bottom,var(--on-ink-line) 0 1px,transparent 1px var(--h));border-radius:4px}.fp-landing .ev{position:absolute;left:0;right:0;top:calc((var(--s) - 7)*var(--h) + 1px);height:calc(var(--d)*var(--h) - 3px);border-radius:4px;padding:4px 6px;font-size:10.88px;line-height:1.2;font-weight:600;overflow:hidden;background:rgba(255,253,248,.10);color:var(--on-ink-muted);border-left:2px solid rgba(255,253,248,.28)}.fp-landing .ev small{display:block;font-family:var(--f-mono);font-weight:400;font-size:9.6px;opacity:.8}.fp-landing .ev.train{background:var(--accent);color:#fff;border-left-color:#fff;box-shadow:0 6px 18px rgba(209,107,70,.35)}.fp-landing .ev.train small{opacity:.9}.fp-landing .ev.gym{background:transparent;border:1px dashed rgba(255,253,248,.35);color:var(--on-ink-muted)}.fp-landing .ev.gym .strike{color:inherit}.fp-landing .ev.gym .strike::after{height:2px;top:50%}.fp-landing .cal-legend{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:14px;padding-top:12px;border-top:1px solid var(--on-ink-line);font-size:12px;color:var(--on-ink-muted)}.fp-landing .cal-legend span{display:inline-flex;align-items:center;gap:7px}.fp-landing .sw{width:11px;height:11px;border-radius:2px;background:rgba(255,253,248,.18)}.fp-landing .sw.t{background:var(--accent)}.fp-landing .sw.g{background:transparent;border:1px dashed rgba(255,253,248,.5)}@media (max-width:560px){.fp-landing .cal{--h:27px;padding:14px 12px 12px}.fp-landing .cal-body{grid-template-columns:32px repeat(3,minmax(0,1fr))}.fp-landing .day.hide-sm{display:none}.fp-landing .ev{font-size:10.56px}
}.fp-landing .reviews-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:end;gap:24px;margin-bottom:44px}.fp-landing .score{display:flex;align-items:center;gap:16px}.fp-landing .score .big{font-family:var(--f-display);font-weight:800;font-size:54.4px;line-height:1;letter-spacing:-.04em}.fp-landing .score .stars{color:var(--accent);letter-spacing:2px;font-size:16.8px}.fp-landing .score .mono{font-size:12.8px;color:var(--muted)}.fp-landing .review-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.fp-landing .review{display:grid;align-content:space-between;gap:28px;padding:28px;background:var(--white);border:1px solid var(--line);border-radius:var(--radius)}.fp-landing .review blockquote{margin:0;font-size:17.28px;line-height:1.55;font-weight:600}.fp-landing .review blockquote::before{content:"„";display:block;font-family:var(--f-display);font-weight:800;font-size:41.6px;line-height:.6;color:var(--accent);margin-bottom:8px}.fp-landing .review figcaption{display:grid;gap:2px;padding-top:16px;border-top:1px solid var(--line)}.fp-landing .review figcaption b{font-weight:700}.fp-landing .review figcaption .mono{font-size:12px;color:var(--muted)}@media (max-width:900px){.fp-landing .review-row{display:flex;gap:16px;grid-template-columns:none;grid-auto-flow:unset;grid-auto-columns:unset;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:12px;margin-inline:calc(-1*var(--gutter));padding-inline:var(--gutter);scroll-padding-inline:var(--gutter)}.fp-landing .review{flex:0 0 min(84%,360px);scroll-snap-align:start}
}.fp-landing .week-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(40px,6vw,96px);align-items:start}.fp-landing .week-grid .sec-head{position:sticky;top:110px;margin-bottom:0}.fp-landing .log{list-style:none;margin:0;padding:0;border-left:2px solid var(--line)}.fp-landing .log li{position:relative;display:grid;grid-template-columns:118px minmax(0,1fr);gap:20px;padding:22px 0 22px 26px;border-bottom:1px solid var(--line)}.fp-landing .log li:last-child{border-bottom:0}.fp-landing .log li::before{content:"";position:absolute;left:-7px;top:30px;width:12px;height:12px;border-radius:50%;background:var(--paper-2);border:2px solid var(--ink)}.fp-landing .log li.bad::before{background:var(--accent);border-color:var(--accent)}.fp-landing .log time{font-family:var(--f-mono);font-size:13.12px;color:var(--muted);padding-top:3px}.fp-landing .log b{display:block;font-weight:700;font-size:17.28px;margin-bottom:4px}.fp-landing .log p{color:var(--muted);font-size:16px}.fp-landing .verdict{margin-top:36px;padding:26px 28px;background:var(--ink);color:var(--on-ink);border-radius:var(--radius);font-size:18.4px;font-weight:600;line-height:1.5}.fp-landing .verdict em{font-style:normal;color:var(--accent-ink)}@media (max-width:900px){.fp-landing .week-grid{grid-template-columns:1fr}.fp-landing .week-grid .sec-head{position:static}}@media (max-width:520px){.fp-landing .log li{grid-template-columns:1fr;gap:6px}}.fp-landing .fixes{list-style:none;margin:0;padding:0;counter-reset:fix}.fp-landing .fix{display:grid;grid-template-columns:96px minmax(0,1fr) minmax(0,1.15fr);gap:12px 32px;align-items:baseline;padding:28px 0;border-top:1px solid var(--line)}.fp-landing .fix:last-child{border-bottom:1px solid var(--line)}.fp-landing .fix .mark{font-family:var(--f-mono);font-size:12.48px;color:var(--accent-text);letter-spacing:.04em}.fp-landing .fix .old{font-family:var(--f-display);font-weight:700;font-size:clamp(20px,2.2vw,26.4px);letter-spacing:-.02em;line-height:1.2}.fp-landing .fix .new{font-size:17.28px;line-height:1.5;font-weight:600}.fp-landing .fix .new::before{content:"⌃ ";font-family:var(--f-mono);color:var(--accent);font-weight:600}.fp-landing .fixes-cta{display:flex;flex-wrap:wrap;align-items:center;gap:16px 28px;margin-top:48px}.fp-landing .fixes-cta p{color:var(--muted);max-width:40ch}@media (max-width:820px){.fp-landing .fix{grid-template-columns:1fr;gap:8px}}.fp-landing .calc{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(40px,6vw,96px);align-items:center}.fp-landing .calc-panel{background:var(--ink-2);border:1px solid var(--on-ink-line);border-radius:10px;padding:clamp(22px,3vw,36px);display:grid;gap:26px;min-width:0}.fp-landing .calc-panel label{font-weight:700;font-size:16px}.fp-landing .range-wrap{display:grid;gap:10px}.fp-landing input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:44px;background:transparent;cursor:pointer;margin:0}.fp-landing input[type=range]::-webkit-slider-runnable-track{height:4px;border-radius:2px;background:linear-gradient(to right,var(--accent) var(--p,33%),var(--on-ink-line) var(--p,33%))}.fp-landing input[type=range]::-moz-range-track{height:4px;border-radius:2px;background:var(--on-ink-line)}.fp-landing input[type=range]::-moz-range-progress{height:4px;border-radius:2px;background:var(--accent)}.fp-landing input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:26px;height:26px;border-radius:50%;background:var(--white);border:4px solid var(--accent);margin-top:-11px}.fp-landing input[type=range]::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:var(--white);border:4px solid var(--accent)}.fp-landing .ticks{display:flex;justify-content:space-between;font-family:var(--f-mono);font-size:12.48px;color:var(--on-ink-muted)}.fp-landing .ticks span.on{color:var(--on-ink);font-weight:600}.fp-landing .mini-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.fp-landing .mini-week div{display:grid;gap:6px;text-align:center;font-family:var(--f-mono);font-size:11.2px;color:var(--on-ink-muted)}.fp-landing .mini-week i{display:block;height:58px;border-radius:4px;background:rgba(255,253,248,.07);border:1px solid var(--on-ink-line);transition:background .25s,border-color .25s}.fp-landing .mini-week i.on{background:var(--accent);border-color:var(--accent)}.fp-landing .calc-out{display:grid;gap:8px;min-height:7.5em}.fp-landing .calc-out b{font-family:var(--f-display);font-size:23.2px;font-weight:800;letter-spacing:-.02em}.fp-landing .calc-out p{color:var(--on-ink-muted)}@media (max-width:900px){.fp-landing .calc{grid-template-columns:1fr}}.fp-landing .photo{position:relative;aspect-ratio:4/5;max-width:100%;border-radius:var(--radius);overflow:hidden;background:var(--ink)}.fp-landing .photo img{width:100%;height:100%;object-fit:cover;object-position:50% 20%}.fp-landing .photo .tag{position:absolute;left:14px;bottom:14px;background:var(--paper);color:var(--ink);font-family:var(--f-mono);font-size:11.52px;padding:6px 10px;border-radius:3px}.fp-landing .plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch}.fp-landing .plan{display:grid;grid-template-rows:auto auto 1fr auto;gap:16px;padding:30px;border:1px solid var(--line);border-radius:var(--radius);background:var(--white)}.fp-landing .plan.feat{background:var(--ink);color:var(--on-ink);border-color:var(--ink)}.fp-landing .plan .label{margin-bottom:-6px}.fp-landing .plan .cost{font-family:var(--f-display);font-weight:800;font-size:36.8px;letter-spacing:-.03em;line-height:1}.fp-landing .plan .cost small{font-family:var(--f-mono);font-size:13.6px;font-weight:500;color:var(--muted);letter-spacing:0;margin-left:6px}.fp-landing .plan.feat .cost small{color:var(--on-ink-muted)}.fp-landing .plan .cost.todo{font-size:20.8px;color:var(--muted);font-family:var(--f-mono);font-weight:500}.fp-landing .plan.feat .cost.todo{color:var(--on-ink-muted)}.fp-landing .plan ul{list-style:none;margin:0;padding:0;display:grid;gap:10px;font-size:15.68px}.fp-landing .plan li{display:grid;grid-template-columns:18px 1fr;gap:8px}.fp-landing .plan li::before{content:"✓";color:var(--accent-text);font-weight:700}.fp-landing .plan.feat li::before{color:var(--accent-ink)}.fp-landing .plan .btn{width:100%}.fp-landing .plan .btn.ghost{background:transparent;color:var(--ink);border:2px solid var(--ink)}.fp-landing .plan .btn.ghost:hover{background:var(--ink);color:var(--on-ink)}.fp-landing .plans-note{margin-top:28px;color:var(--muted)}.fp-landing .plans-note b{color:var(--ink)}@media (max-width:960px){.fp-landing .plans{grid-template-columns:1fr;max-width:560px}}.fp-landing .faq-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(32px,6vw,96px);align-items:start}.fp-landing .faq details{border-top:1px solid var(--line)}.fp-landing .faq details:last-child{border-bottom:1px solid var(--line)}.fp-landing .faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:20px;align-items:center;min-height:64px;padding-block:16px;font-weight:700;font-size:17.6px}.fp-landing .faq summary::-webkit-details-marker{display:none}.fp-landing .faq summary::after{content:"+";font-family:var(--f-mono);font-size:22.4px;color:var(--accent-text);transition:transform .2s}.fp-landing .faq details[open] summary::after{transform:rotate(45deg)}.fp-landing .faq details p{padding:0 0 22px;color:var(--muted);max-width:60ch}@media (max-width:900px){.fp-landing .faq-grid{grid-template-columns:1fr}}.fp-landing .final-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(40px,6vw,96px);align-items:center}.fp-landing .final-copy{display:grid;gap:24px}.fp-landing .slot{display:grid;gap:18px}.fp-landing .slot .old{font-family:var(--f-display);font-weight:700;font-size:20.8px;color:var(--on-ink-muted)}.fp-landing .slot-card{background:var(--accent);color:#fff;border-radius:10px;padding:26px 28px;display:grid;gap:10px;box-shadow:0 30px 70px rgba(0,0,0,.3)}.fp-landing .slot-card .mono{font-size:13.6px;opacity:.9}.fp-landing .slot-card b{font-family:var(--f-display);font-size:27.2px;font-weight:800;letter-spacing:-.02em;line-height:1.1}.fp-landing .slot-card .row{display:flex;flex-wrap:wrap;gap:6px 18px;font-family:var(--f-mono);font-size:12.8px;padding-top:12px;border-top:1px solid rgba(255,255,255,.35)}@media (max-width:900px){.fp-landing .final-grid{grid-template-columns:1fr}}.fp-landing .foot{background:var(--ink-3);color:var(--on-ink-muted);padding-block:40px;font-size:14.4px}.fp-landing .foot .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px 32px;align-items:center}.fp-landing .foot a{color:var(--on-ink);text-decoration:none;font-weight:600}.fp-landing .foot nav{display:flex;flex-wrap:wrap;gap:12px 24px}@media (min-width:901px){.fp-landing .foot{padding-bottom:40px}}

/* ===== ODPORNOŚĆ NA MOTYW: reset elementów, które motyw może nadpisać ===== */
.fp-landing{display:block;width:100%;max-width:none;overflow-x:clip;text-align:left;letter-spacing:normal;word-break:normal;hyphens:manual}
.fp-landing :is(h1,h2,h3){text-transform:none;color:inherit;padding:0;border:0;background:none}
.fp-landing :is(p,ul,ol,li,figure,blockquote,figcaption,details,summary){margin:0;text-transform:none}
.fp-landing :is(ul,ol){padding:0}
.fp-landing a{text-decoration:none;box-shadow:none}
.fp-landing .link{text-decoration:none}
.fp-landing a.btn,.fp-landing a.btn:hover,.fp-landing a.btn:focus{color:#fff;text-decoration:none}
.fp-landing a.btn.ghost{color:var(--ink)}
.fp-landing a.btn.ghost:hover{color:var(--on-ink)}
.fp-landing img{height:auto;border:0}
.fp-landing .photo img{height:100%}
.fp-landing section{margin:0}
.fp-landing section[id]{scroll-margin-top:96px}

/* ===== KALENDARZ: tekst nigdy nie wychodzi poza blok ===== */
.fp-landing .cal-top{flex-wrap:wrap}
.fp-landing .cal-top strong,.fp-landing .cal-top .mono{white-space:nowrap}
.fp-landing .ev{white-space:nowrap;text-overflow:ellipsis}
.fp-landing .ev small{overflow:hidden;text-overflow:ellipsis}
.fp-landing .cal-hours span{white-space:nowrap}
@media (max-width:560px){
  .fp-landing .cal{--h:26px}
  .fp-landing .ev{font-size:11px;padding:0 5px;line-height:calc(var(--h) - 4px)}
  .fp-landing .ev small{display:none}
  .fp-landing .cal-hours span{font-size:10px}
  .fp-landing .day-name{font-size:10px}
  .fp-landing .cal-legend{font-size:11px;gap:4px 12px}
}
@media (max-width:380px){
  .fp-landing .cal{padding:12px 10px 10px}
  .fp-landing .cal-body{grid-template-columns:28px repeat(3,minmax(0,1fr));gap:0 4px}
}

/* ===== OPINIE na telefonie ===== */
@media (max-width:560px){
  .fp-landing .review{padding:22px;gap:20px}
  .fp-landing .review blockquote{font-size:16px}
  .fp-landing .score .big{font-size:44px}
}

/* v3 landing fixes and scoped motion */
@media (max-width:560px){
  .fp-landing .hero-actions .btn,
  .fp-landing .fixes-cta .btn,
  .fp-landing .final-copy .btn{width:100%;justify-content:space-between;font-size:15px;padding-inline:20px}
}
.fp-landing .cal .ev{transition:opacity .35s ease,transform .45s cubic-bezier(.2,.8,.2,1);transition-delay:var(--delay,0ms)}
.fp-landing .cal .ev.train{transition-timing-function:ease,cubic-bezier(.2,1.6,.4,1)}
.fp-landing .cal.is-pre .ev{opacity:0;transform:translateY(6px) scale(.97)}
.fp-landing .cal.is-pre .ev.train{transform:scale(.6)}
.fp-landing .log{position:relative}
.fp-landing .log.is-pre::after{content:"";position:absolute;left:-2px;top:0;width:2px;height:calc(var(--prog,0) * 100%);background:var(--accent)}
.fp-landing .log.is-pre li::before{background:var(--paper-2);border-color:var(--line);transition:background .3s,border-color .3s,transform .3s}
.fp-landing .log.is-pre li.lit::before{border-color:var(--ink)}
.fp-landing .log.is-pre li.bad.lit::before{background:var(--accent);border-color:var(--accent);transform:scale(1.15)}
.fp-landing .slot-card{transition:opacity .4s ease,transform .6s cubic-bezier(.2,1.2,.4,1)}
.fp-landing .slot.is-pre .slot-card{opacity:0;transform:translateY(28px) rotate(-2deg)}
/* v4 homepage offer and Google reviews */
.fp-landing *::before,.fp-landing *::after{box-sizing:border-box}
.fp-landing .log li::before{width:14px;height:14px;left:-8px;top:29px}
.fp-landing .pricing{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.5fr);gap:clamp(40px,6vw,96px);align-items:start}
.fp-landing .pricing-head{position:sticky;top:110px;margin-bottom:0}
.fp-landing .pricing .plans{grid-template-columns:repeat(2,minmax(0,1fr));max-width:none}
.fp-landing .pricing .plans-note{margin-top:0;max-width:34ch}
@media (max-width:1100px){.fp-landing .pricing{grid-template-columns:1fr}.fp-landing .pricing-head{position:static}}
@media (max-width:700px){.fp-landing .pricing .plans{grid-template-columns:1fr}}
.fp-landing .review-row.has-dynamic-reviews{overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:12px}
@media (min-width:901px){.fp-landing .review-row.has-dynamic-reviews{display:flex;gap:20px}.fp-landing .review-row.has-dynamic-reviews .review{flex:0 0 min(32%,380px);min-width:320px;scroll-snap-align:start}}
.fp-landing .score{align-items:center}
.fp-landing .score-link{display:inline-flex;align-items:center;gap:8px;margin-top:6px;color:var(--muted);text-decoration:none;font-family:var(--f-mono);font-size:.78rem}
.fp-landing .score-link:hover{color:var(--accent-text)}
.fp-landing .google-g{width:18px;height:18px;flex:0 0 auto}
.fp-landing .review{position:relative}
.fp-landing .review .review-stars{color:var(--accent);letter-spacing:1px;font-size:.9rem;line-height:1;margin-bottom:10px}
.fp-landing .review-source{display:inline-flex;align-items:center;gap:6px;position:absolute;right:18px;top:18px;color:var(--muted);font-family:var(--f-mono);font-size:.68rem}
.fp-landing .review-source .google-g{width:14px;height:14px}
.fp-landing .review-text{display:-webkit-box;-webkit-line-clamp:6;-webkit-box-orient:vertical;overflow:hidden;white-space:pre-line}
.fp-landing .review-more{display:none;justify-self:start;margin-top:-14px;border:0;border-bottom:2px solid currentColor;background:transparent;color:var(--accent-text);font:700 .9rem/1 var(--f-body);padding:0 0 3px;cursor:pointer}
.fp-landing .review-more.is-visible{display:inline-flex}
.fp-landing .review-date{font-size:.75rem;color:var(--muted)}
.fp-landing .review-dialog{width:min(680px,calc(100vw - 32px));max-height:min(760px,calc(100vh - 48px));border:0;border-radius:10px;padding:0;background:var(--paper);color:var(--ink);box-shadow:0 30px 80px rgba(0,0,0,.35)}
.fp-landing .review-dialog::backdrop{background:rgba(8,35,40,.62)}
.fp-landing .review-dialog-inner{display:grid;gap:18px;padding:clamp(22px,4vw,36px)}
.fp-landing .review-dialog-head{display:flex;justify-content:space-between;gap:18px;align-items:start}
.fp-landing .review-dialog-close{width:40px;height:40px;border:1px solid var(--line);background:var(--white);border-radius:50%;font-size:24px;line-height:1;cursor:pointer;color:var(--ink)}
.fp-landing .review-dialog-text{display:grid;gap:14px;white-space:normal;color:var(--ink)}
.fp-landing .review-dialog-text p{margin:0}
.fp-landing .review-dialog-meta{display:flex;flex-wrap:wrap;gap:8px 18px;align-items:center;color:var(--muted)}
.fp-landing .review-dialog-link{color:var(--accent-text);font-weight:700;text-decoration:none;border-bottom:2px solid currentColor;justify-self:start}
@media (max-width:560px){.fp-landing .review-dialog{width:100vw;max-width:none;height:100vh;max-height:none;border-radius:0}.fp-landing .review-dialog-inner{min-height:100%;align-content:start;padding:24px 18px calc(24px + env(safe-area-inset-bottom,0px))}}

/* v5 hero, fixes and FAQ */
.fp-landing .hero{position:relative;isolation:isolate;overflow:hidden}
.fp-landing .hero::before{content:"";position:absolute;inset:0;z-index:-1;background:url("assets/img/herobg.webp") center/cover no-repeat;opacity:.2;pointer-events:none}
@media (max-width:900px){.fp-landing .hero::before{background-image:url("assets/img/herobg-900.webp")}}
.fp-landing .hero-title .w{display:inline-block;overflow:hidden;vertical-align:top;padding-block:.08em .18em;margin-block:-.08em -.18em}
.fp-landing .hero-title .w>span{display:inline-block}
.fp-anim .fp-landing .hero-title .w>span{animation:fpWordUp .75s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--i)*80ms + 100ms)}
.fp-anim .fp-landing .hero .label{animation:fpFadeUp .5s ease both}
.fp-anim .fp-landing .hero .lead{animation:fpFadeUp .6s ease both;animation-delay:1250ms}
.fp-anim .fp-landing .hero-actions{animation:fpFadeUp .6s ease both;animation-delay:1350ms}
.fp-anim .fp-landing .hero .facts{animation:fpFadeUp .6s ease both;animation-delay:1450ms}
.fp-anim .fp-landing .hero .cal{animation:fpFadeUp .7s ease both;animation-delay:1250ms}
@keyframes fpWordUp{from{transform:translateY(110%)}to{transform:none}}
@keyframes fpFadeUp{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.fp-anim .fp-landing .hero *{animation:none!important}}
@media (min-width:821px){
  .fp-landing .fix .old .strike{white-space:nowrap}
  .fp-landing .fix .old .strike::after,
  .fp-landing .slot .old .strike::after{left:-2px;right:-2px;top:52%;height:3px;transform:rotate(-1deg) scaleX(1)}
  .fp-landing .fix .old .strike.pending::after,
  .fp-landing .slot .old .strike.pending::after{transform:rotate(-1deg) scaleX(0)}
}
@media (max-width:820px){
  .fp-landing .fix .old .strike::after{content:none}
  .fp-landing .fix .old .strike{text-decoration:line-through;text-decoration-thickness:3px;text-decoration-color:var(--accent);transition:text-decoration-color .5s ease}
  .fp-landing .fix .old .strike.pending{text-decoration-color:transparent}
}
.fp-landing .fix .new{display:grid;grid-template-columns:22px minmax(0,1fr);align-items:baseline}
.fp-landing .fix .new::before{content:"⌃";font-family:var(--f-mono);color:var(--accent);font-weight:600}
.fp-landing .faq-head{position:sticky;top:110px;margin-bottom:0}
.fp-landing .faq-head .lead{max-width:30ch}
.fp-landing .ask{display:grid;gap:8px;max-width:360px;margin-top:12px;padding:22px 24px;background:var(--white);border:1px solid var(--line);border-radius:var(--radius)}
.fp-landing .ask b{font-weight:700;font-size:17px}
.fp-landing .ask p{color:var(--muted);font-size:16px}
.fp-landing .ask .link{justify-self:start;margin-top:4px}
@media (max-width:900px){.fp-landing .faq-head{position:static}}

/* ===== TRENER (#trener): dwie kolumny równej wysokości | telefon: kolejność przez order (kolumny display:contents) ===== */
.fp-landing .coach{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);grid-template-rows:auto 1fr;grid-template-areas:". label" "left right";column-gap:clamp(40px,6vw,88px);row-gap:14px;align-items:stretch}
.fp-landing .coach-label{grid-area:label}
.fp-landing .coach-col{display:flex;flex-direction:column;min-width:0}
.fp-landing .coach-col--l{grid-area:left}
.fp-landing .coach-col--r{grid-area:right;gap:22px}
.fp-landing .coach-head{display:grid;gap:14px}
.fp-landing .coach-spec{font-size:13px;line-height:1.5;color:var(--accent-text)}
.fp-landing .coach-text{display:grid;gap:22px}
.fp-landing .coach-text p{max-width:56ch}
.fp-landing .coach-quals{margin-top:auto;min-width:0}
.fp-landing .coach-cta{display:flex;flex-wrap:wrap;align-items:center;gap:14px 24px;margin-top:6px}
.fp-landing .coach-cta .link{font-size:15px}

/* zdjęcie: wysokość z kolumny (desktop) albo stałe 4/5 (telefon); wszystkie obrazy absolutnie, nic nie zmienia wysokości */
.fp-landing .coach-photo{position:relative;flex:1 1 auto;min-height:420px;aspect-ratio:auto;border-radius:var(--radius) var(--radius) 0 0;overflow:hidden;background:var(--ink)}
.fp-landing .coach-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.fp-landing .coach-photo > img:not(.photo-slide){object-position:50% 20%}
.fp-landing .photo .photo-slide{object-position:50% 25%;opacity:0;transition:opacity .8s ease}
.fp-landing .photo .photo-slide.is-on{opacity:1}
.fp-landing .photo .photo-slide.is-top{z-index:1}
.fp-landing .photo .tag{z-index:2}

/* Poza salą */
.fp-landing .offgym{position:relative;flex:0 0 auto;margin-top:-1px;padding:22px 26px 20px;background:var(--ink);color:var(--on-ink);border-radius:0 0 var(--radius) var(--radius);display:grid;gap:12px}
.fp-landing .offgym .label{color:var(--accent-ink)}
.fp-landing .offgym-lead{font-weight:600;font-size:17px;line-height:1.45}
.fp-landing .offgym-list{list-style:none;margin:0;padding:0}
.fp-landing .offgym-list li{display:flex;justify-content:space-between;align-items:baseline;gap:6px 16px;flex-wrap:wrap;padding:9px 0;border-top:1px solid var(--on-ink-line)}
.fp-landing .offgym-list li:last-child{border-bottom:1px solid var(--on-ink-line)}
.fp-landing .offgym-list b{font-family:var(--f-display);font-weight:700;font-size:16px;line-height:1.3}
.fp-landing .offgym-list .mono{font-size:12px;color:var(--on-ink-muted);text-align:right}
.fp-landing .offgym-foot{font-size:16px;color:var(--on-ink-muted);line-height:1.5}

/* liczby */
.fp-landing .stats{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.fp-landing .stats li{display:grid;align-content:start;gap:8px;padding:0 18px;border-left:1px solid var(--line);min-width:0}
.fp-landing .stats li:first-child{padding-left:0;border-left:0}
.fp-landing .stat-num{font-family:var(--f-display);font-weight:800;font-size:clamp(36px,4vw,52px);line-height:1;letter-spacing:-.03em;white-space:nowrap;font-variant-numeric:tabular-nums}
.fp-landing .stat-num .js-count{display:inline-block}
.fp-landing .stat-cap{font-size:12px;line-height:1.4;color:var(--muted)}
.fp-landing a.stat-link{display:grid;align-content:start;gap:8px;color:inherit;text-decoration:none}
.fp-landing .stat-google{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--ink)}
.fp-landing .stat-google .google-g{width:14px;height:14px;flex:0 0 14px}
.fp-landing .stat-star{color:var(--accent)}
.fp-landing a.stat-link:hover .stat-cap{color:var(--accent-text)}

/* pasek certyfikatów: odchudzone karty */
.fp-landing .certs{display:grid;gap:14px;min-width:0}
.fp-landing .certs-head{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px}
.fp-landing .certs-count{font-size:12px;color:var(--muted)}
.fp-landing .certs-nav{margin-left:auto;display:flex;align-items:center;gap:10px}
.fp-landing .certs-nav[hidden]{display:none}
.fp-landing .certs-btn{width:40px;height:40px;padding:0;border-radius:50%;border:1px solid var(--line);background:transparent;color:var(--ink);font-size:17px;line-height:1;cursor:pointer;transition:background .2s,color .2s}
.fp-landing .certs-btn:hover:not(:disabled){background:var(--ink);color:var(--on-ink)}
.fp-landing .certs-btn:disabled{opacity:.35;cursor:default}
.fp-landing .certs-pos{font-size:12px;color:var(--muted);min-width:7ch;text-align:center}
.fp-landing .certs-track{list-style:none;margin:0 -4px;padding:4px 4px 6px;display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:4px;scroll-behavior:smooth;scrollbar-width:none;
  -webkit-mask-image:linear-gradient(90deg,#000 0,#000 calc(100% - 48px),transparent);mask-image:linear-gradient(90deg,#000 0,#000 calc(100% - 48px),transparent)}
.fp-landing .certs-track::-webkit-scrollbar{display:none}
.fp-landing .certs-track.at-end{-webkit-mask-image:none;mask-image:none}
.fp-landing .certs-track > li{flex:0 0 clamp(170px,30%,200px);scroll-snap-align:start;min-width:0}
.fp-landing .cert-slot{display:grid}
.fp-landing .cert{position:relative;display:grid;align-content:space-between;gap:10px;aspect-ratio:4/5;margin:0;padding:18px;background:var(--white);border:0;border-top:2px solid var(--ink);border-radius:0 0 6px 6px;color:var(--ink);overflow:hidden;transition:transform .25s ease}
.fp-landing .cert-top{display:grid;gap:8px;min-width:0}
.fp-landing .cert-type,.fp-landing .cert-issuer{font-size:10px;line-height:1.35;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.fp-landing .cert-name{font-family:var(--f-display);font-weight:700;font-size:15px;line-height:1.25;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.fp-landing .cert-note{font-size:11px;line-height:1.35;color:var(--muted)}
.fp-landing .cert-foot{display:flex;align-items:flex-end;justify-content:space-between;gap:8px}
.fp-landing .cert-issuer{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.fp-landing .cert-stamp{flex:0 0 40px;width:40px;height:40px;border-radius:50%;border:1.5px solid var(--accent);color:var(--accent-text);display:grid;place-items:center;font-size:10.5px;font-weight:600;transform:rotate(-8deg)}
.fp-landing .cert--main{border-top-color:var(--accent)}
.fp-landing .cert--main .cert-stamp{background:var(--accent);color:#fff}
.fp-landing button.cert{width:100%;font:inherit;text-align:left;cursor:zoom-in;-webkit-appearance:none;appearance:none}
.fp-landing .cert-zoom{position:absolute;top:10px;right:10px;width:22px;height:22px;padding:4px;border-radius:50%;background:var(--paper-2);fill:none;stroke:var(--ink);stroke-width:2.4;stroke-linecap:round}
.fp-landing .cert--img .cert-type{padding-right:26px}
@media (hover:hover){.fp-landing .cert:hover{transform:translateY(-2px)}}

/* podgląd skanu */
.fp-landing .cert-modal{padding:0;border:0;border-radius:var(--radius);background:var(--white);color:var(--ink);max-width:min(920px,calc(100vw - 32px));max-height:calc(100dvh - 32px);box-shadow:0 30px 80px rgba(0,0,0,.35)}
.fp-landing .cert-modal::backdrop{background:rgba(8,35,40,.78)}
.fp-landing .cert-modal-box{position:relative;display:grid;gap:12px;padding:16px}
.fp-landing .cert-modal-img{display:block;width:auto;max-width:100%;height:auto;max-height:85vh;object-fit:contain;margin-inline:auto}
.fp-landing .cert-modal-meta{display:grid;gap:2px;padding-right:48px}
.fp-landing .cert-modal-meta b{font-weight:700;line-height:1.3}
.fp-landing .cert-modal-meta .mono{font-size:12px;color:var(--muted)}
.fp-landing .cert-modal-close{position:absolute;right:12px;bottom:12px;width:44px;height:44px;padding:0;border-radius:50%;border:1px solid var(--line);background:var(--white);color:var(--ink);font-size:18px;line-height:1;cursor:pointer}
.fp-landing .cert-modal-close:hover{background:var(--ink);color:var(--on-ink)}

/* tablet i telefon: jedna kolumna, kolejność: nagłówek, zdjęcie, akapity, liczby, Poza salą, kwalifikacje, CTA */
@media (max-width:999px){
  .fp-landing .coach{display:flex;flex-direction:column;gap:22px}
  .fp-landing .coach-col{display:contents}
  .fp-landing .coach-label{order:1;margin-bottom:-8px}
  .fp-landing .coach-head{order:2}
  .fp-landing .coach-photo{order:3;flex:none;min-height:0;aspect-ratio:4/5;width:100%;max-width:520px;border-radius:var(--radius)}
  .fp-landing .coach-text{order:4}
  .fp-landing .coach-stats{order:5}
  .fp-landing .offgym{order:6;margin-top:0;max-width:520px;border-radius:var(--radius)}
  .fp-landing .coach-quals{order:7;margin-top:10px}
  .fp-landing .coach-cta{order:8;margin-top:0}
}
@media (max-width:620px){.fp-landing .certs-track > li{flex-basis:62%}}
@media (max-width:560px){
  .fp-landing .stats li{padding:0 10px}
  .fp-landing .stat-num{font-size:32px}
  .fp-landing .offgym{padding:22px 20px 20px}
  .fp-landing .coach-cta .btn{width:100%;justify-content:space-between}
}
@media (prefers-reduced-motion:reduce){
  .fp-landing .certs-track{scroll-behavior:auto}
  .fp-landing .cert,.fp-landing .certs-btn,.fp-landing .photo .photo-slide{transition:none}
  .fp-landing .cert:hover{transform:none}
}

/* ===== kontakt (finał + FAQ) ===== */
.fp-landing .btn-ico{width:20px;height:20px;flex:0 0 20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.fp-landing .contact-actions{display:flex;flex-wrap:wrap;gap:12px}
.fp-landing a.btn.btn--wa{background:var(--white);color:var(--ink)}
.fp-landing a.btn.btn--wa:hover,.fp-landing a.btn.btn--wa:focus{background:#fff;color:var(--ink)}
.fp-landing a.btn.btn--wa .btn-ico{color:#1c9a50}
.fp-landing a.btn.btn--tel{background:transparent;color:var(--on-ink);box-shadow:inset 0 0 0 1.5px rgba(255,253,248,.35)}
.fp-landing a.btn.btn--tel:hover,.fp-landing a.btn.btn--tel:focus{background:rgba(255,253,248,.08);color:var(--on-ink)}
.fp-landing .contact-actions .btn--wa,.fp-landing .contact-actions .btn--tel{justify-content:flex-start}
.fp-landing .contact-note{font-size:15px;line-height:1.5;color:var(--on-ink-muted);max-width:44ch}
.fp-landing .final-copy > .link{justify-self:start;font-size:15px}

.fp-landing .ask-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.fp-landing a.ask-btn{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:8px 14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);color:var(--ink);font-weight:700;font-size:15px;transition:background .2s,color .2s}
.fp-landing a.ask-btn:hover{background:var(--ink);color:var(--on-ink)}
.fp-landing .ask-btn .btn-ico{width:18px;height:18px;flex-basis:18px}



@media (prefers-reduced-motion:reduce){.fp-landing a.ask-btn{transition:none}}

/* ===== KTO U MNIE TRENUJE (#kto): otwarty notatnik; liniatura 32px, każdy wiersz tekstu = 32px ===== */
.fp-landing .notebook{--nb-pad-top:48px;--nb-margin:56px;position:relative;display:grid;grid-template-columns:1fr 1fr;max-width:1100px;border-radius:6px;overflow:hidden;box-shadow:0 30px 60px -20px rgba(11,47,54,.18)}
.fp-landing .notebook::before{content:"";position:absolute;top:0;bottom:0;left:50%;width:48px;transform:translateX(-50%);z-index:2;pointer-events:none;background:linear-gradient(90deg,rgba(11,47,54,.0),rgba(11,47,54,.10) 48%,rgba(11,47,54,.16) 50%,rgba(11,47,54,.10) 52%,rgba(11,47,54,.0))}
.fp-landing .nb-page{position:relative;padding:var(--nb-pad-top) 48px 48px 80px;background-color:var(--white);background-image:repeating-linear-gradient(to bottom,transparent 0 31px,var(--line) 31px 32px);background-position:0 calc(var(--nb-pad-top) - 32px)}
.fp-landing .nb-page::before{content:"";position:absolute;top:0;bottom:0;left:var(--nb-margin);width:1px;background:var(--accent);opacity:.45}
.fp-landing .nb-meta{display:block;margin-bottom:32px;font-size:11px;line-height:32px;color:var(--muted)}
.fp-landing .nb-list{list-style:none;margin:0;padding:0}
.fp-landing .nb-note{position:relative}
.fp-landing .nb-note + .nb-note{margin-top:64px}
.fp-landing .nb-num{position:absolute;top:0;right:calc(100% + 80px - var(--nb-margin) + 10px);font-size:12px;line-height:32px;color:var(--accent-text);text-align:right}
.fp-landing .nb-quote{font-family:var(--f-display);font-weight:700;font-size:19px;line-height:32px;color:var(--ink)}
.fp-landing .nb-fix{display:grid;grid-template-columns:20px minmax(0,1fr);font-family:var(--f-display);font-weight:600;font-size:16px;line-height:32px;color:var(--accent-text)}
.fp-landing .nb-caret{font-family:var(--f-mono);font-weight:600;color:var(--accent)}
.fp-landing .nb-cta{display:flex;flex-wrap:wrap;justify-content:center;align-items:baseline;gap:6px 14px;max-width:1100px;margin-top:40px;text-align:center;font-weight:600}

/* poprawki „dopisują się” po kolei (klasę nb-pre dodaje JS; bez JS / reduce motion wszystko widoczne) */
.fp-landing .notebook.nb-pre .nb-fix{clip-path:inset(0 100% 0 0)}
.fp-landing .notebook.nb-pre .nb-fix.is-in{clip-path:inset(0 0 0 0);transition:clip-path .5s ease-out}

/* tablet: jedna strona, bez grzbietu; obie strony zlewają się w jedną kartkę */
@media (max-width:899px){
  .fp-landing .notebook{grid-template-columns:minmax(0,1fr)}
  .fp-landing .notebook::before{content:none}
  .fp-landing .nb-page--l{padding-bottom:0}
  .fp-landing .nb-page--r{padding-top:64px;background-position:0 0}
  .fp-landing .nb-page--r .nb-meta{display:none}
}
/* telefon: margines 40px, numer nad cytatem */
@media (max-width:599px){
  .fp-landing .notebook{--nb-pad-top:28px;--nb-margin:40px}
  .fp-landing .nb-page{padding:var(--nb-pad-top) 20px 28px 52px}
  .fp-landing .nb-page--l{padding-bottom:0}
  .fp-landing .nb-page--r{padding-top:64px}
  .fp-landing .nb-num{position:static;display:block;text-align:left}
  .fp-landing .nb-quote{font-size:18px}
}
@media (prefers-reduced-motion:reduce){.fp-landing .notebook.nb-pre .nb-fix{clip-path:none;transition:none}}

/* finał #umow: maks. 96px (desktop) / 64px (telefon) od linku „Spoza Szczecina…” do stopki */
.fp-landing .section#umow{padding-bottom:clamp(64px,8vw,96px)}
@media (max-width:900px){.fp-landing #umow .slot{display:none}}

/* hero v8: druga część H1 zawsze od nowej linii; lead 46ch; fakt z opiniami Google; fakty w kolumnie na telefonie */
.fp-landing .hero .lead{max-width:40ch}
.fp-landing a.facts-g,.fp-landing .facts-g{display:inline-flex;align-items:center;gap:8px;color:inherit;text-decoration:none}
.fp-landing a.facts-g:hover{color:var(--on-ink)}
.fp-landing .facts-g .google-g{width:14px;height:14px;flex:0 0 14px}
@media (max-width:560px){.fp-landing .facts{flex-direction:column;align-items:flex-start;gap:8px}}

/* hero v9: „Trenuj więcej / poprawnie.” – przekreślenie rysowaną kreską */
.fp-landing .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.fp-landing .hero-title{font-size:clamp(44px,6.2vw,84px)}
.fp-landing .hero-strike>span{position:relative;color:var(--on-ink-muted)}
.fp-landing .hero-strike>span::after{content:"";position:absolute;left:0;right:0;top:56%;height:.07em;background:var(--accent);border-radius:.035em;transform:rotate(-2deg);transform-origin:left center}
@keyframes fpStrike{from{transform:rotate(-2deg) scaleX(0)}to{transform:rotate(-2deg) scaleX(1)}}
.fp-anim .fp-landing .hero-strike>span::after{animation:fpStrike .45s cubic-bezier(.6,0,.2,1) both;animation-delay:650ms}
.fp-anim .fp-landing .hero-title .hero-fix>span{animation-delay:1050ms}
/* fakty hero w jednej linii na szerokim desktopie (mogą wejść w odstęp między kolumnami, nie w kalendarz) */
@media (min-width:1280px){.fp-landing .hero .facts{flex-wrap:nowrap;width:max-content;font-size:12.5px;column-gap:16px}.fp-landing .hero .facts>*{white-space:nowrap}}

/* hero v10: pełny ekran minus header motywu (UiCore: 117px od 1026px, 81px 768–1025px, 59px do 767px; bez paska admina) */
.fp-landing .hero{--hdr:117px;min-height:min(calc(100svh - var(--hdr)),1000px);display:grid;align-items:center;padding-block:clamp(32px,5vh,64px)}
@supports not (height:100svh){.fp-landing .hero{min-height:min(calc(100vh - var(--hdr)),1000px)}}
@media (max-width:1025px){.fp-landing .hero{--hdr:81px}}
@media (max-width:767px){.fp-landing .hero{--hdr:59px}}
/* telefon i tablet (jedna kolumna): pierwszy ekran = cały tekst, kalendarz pod spodem */
@media (max-width:960px){
  .fp-landing .hero{min-height:0;display:block;padding-top:0;padding-bottom:clamp(48px,8vw,72px)}
  .fp-landing .hero-copy{min-height:calc(100svh - var(--hdr));align-content:center;padding-block:clamp(32px,5vh,64px)}
}
@supports not (height:100svh){@media (max-width:960px){.fp-landing .hero-copy{min-height:calc(100vh - var(--hdr))}}}

/* ===== OPINIE (#opinie): automatyczny slider; 3 / 2 / 1 karta, krok = jedna karta ===== */
.fp-landing #opinie .review-row{display:flex;gap:20px;margin:0;padding:4px 0 12px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:0;scroll-behavior:auto;scrollbar-width:none;grid-template-columns:none}
.fp-landing #opinie .review-row::-webkit-scrollbar{display:none}
.fp-landing #opinie .review-row > .review{flex:0 0 calc((100% - 40px) / 3);min-width:0;scroll-snap-align:start}
.fp-landing .rv-bar{display:flex;align-items:center;gap:16px;margin:0 0 20px}
.fp-landing .rv-bar[hidden],.fp-landing .rv-bar [hidden]{display:none}
.fp-landing .rv-count{flex:0 0 auto;min-width:7ch;font-size:12px;color:var(--muted)}
.fp-landing .rv-progress{flex:1 1 auto;height:2px;background:var(--line);overflow:hidden}
.fp-landing .rv-progress i{display:block;height:100%;background:var(--accent);transform:scaleX(0);transform-origin:left center}
.fp-landing .rv-nav{flex:0 0 auto;display:flex;gap:8px;margin-left:auto}
.fp-landing .rv-btn{display:grid;place-items:center;width:40px;height:40px;padding:0;border-radius:50%;border:1px solid var(--line);background:transparent;color:var(--ink);font-size:17px;line-height:1;cursor:pointer;transition:background .2s,color .2s}
.fp-landing .rv-btn:hover{background:var(--ink);color:var(--on-ink)}
.fp-landing .rv-btn svg{width:14px;height:14px;fill:currentColor}
.fp-landing .rv-pause .rv-ico-play,.fp-landing .rv-pause[aria-pressed="true"] .rv-ico-pause{display:none}
.fp-landing .rv-pause[aria-pressed="true"] .rv-ico-play{display:block}
@media (max-width:1099px){.fp-landing #opinie .review-row > .review{flex-basis:calc((100% - 20px) / 2)}}
@media (max-width:640px){.fp-landing #opinie .review-row{gap:14px}.fp-landing #opinie .review-row > .review{flex-basis:86%}}
@media (prefers-reduced-motion:reduce){.fp-landing .rv-btn{transition:none}}

/* ===== REVEAL: wspólny mechanizm animacji wejścia sekcji (v9) =====
   Użycie:
   - element z atrybutem data-reveal (domyślnie: z dołu 18px; "right": z prawej 24px; "fade": samo krycie),
     opóźnienie przez zmienną --d (np. style="--d:300ms");
   - JS: fpReveal(el) obserwuje el; przy wejściu w ekran dodaje .is-in (raz) i wysyła zdarzenie fp:in.
     .is-in odsłania sam element oraz wszystkie [data-reveal] w środku;
   - nagłówki: .rv-title + słowa <span class="w" style="--i:N"><span>słowo</span></span> (maski jak w hero),
     aria-label z pełnym tekstem na H2, aria-hidden na wrapperze słów;
   - stan ukryty tylko pod html.fp-anim (bez JS / prefers-reduced-motion wszystko widoczne). Tylko transform i opacity. */
.fp-anim .fp-landing [data-reveal]{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .7s cubic-bezier(.2,.8,.2,1);transition-delay:var(--d,0ms)}
.fp-anim .fp-landing [data-reveal="right"]{transform:translateX(24px)}
.fp-anim .fp-landing [data-reveal="fade"]{transform:none}
.fp-anim .fp-landing .is-in [data-reveal],
.fp-anim .fp-landing [data-reveal].is-in{opacity:1;transform:none}
.fp-landing .rv-title .w{display:inline-block;overflow:hidden;vertical-align:top;padding-block:.06em .16em;margin-block:-.06em -.16em}
.fp-landing .rv-title .w>span{display:inline-block}
.fp-anim .fp-landing .rv-title .w>span{transform:translateY(110%);transition:transform .75s cubic-bezier(.2,.8,.2,1);transition-delay:calc(var(--i)*70ms + var(--d,0ms))}
.fp-anim .fp-landing .is-in .rv-title .w>span{transform:none}

/* #opinie: gwiazdki zapalane po kolei (JS dodaje .on), tor paska rysowany od lewej */
.fp-landing #opinie .stars .star{display:inline-block}
.fp-anim .fp-landing #opinie .stars .star{opacity:.3;transform:scale(.6);transition:opacity .3s ease,transform .3s cubic-bezier(.2,1.6,.4,1)}
.fp-anim .fp-landing #opinie .stars .star.on{opacity:1;transform:none}
.fp-anim .fp-landing #opinie .rv-progress{transform:scaleX(0);transform-origin:left center;transition:transform .6s cubic-bezier(.2,.8,.2,1) .5s}
.fp-anim .fp-landing #opinie.is-in .rv-progress{transform:none}
.fp-landing #opinie .score .big{font-variant-numeric:tabular-nums}

/* #tydzien: kropka na osi wskakuje przy wejściu wpisu (potem rządzi istniejące .lit) */
.fp-anim .fp-landing .log li[data-reveal]::before{transition:background .3s,border-color .3s,transform .3s cubic-bezier(.2,1.6,.4,1)}
.fp-anim .fp-landing .log li[data-reveal]:not(.is-in)::before{transform:scale(0)}
/* klamra pętli: ostatni wpis dostaje podkreślenie tytułu; podsumowanie: podkreślenie fragmentu <em> */
.fp-landing .log li:last-child b{position:relative;width:fit-content}
.fp-landing .log li:last-child b::after,.fp-landing .verdict em::after{content:"";position:absolute;left:0;right:0;bottom:-3px;height:2px;background:var(--accent);transform-origin:left center}
.fp-landing .verdict em{position:relative;display:inline-block}
.fp-anim .fp-landing .log li:last-child b::after{transform:scaleX(0);transition:transform .5s cubic-bezier(.2,.8,.2,1) .3s}
.fp-anim .fp-landing .log li:last-child.is-in b::after{transform:none}
.fp-anim .fp-landing .verdict em::after{transform:scaleX(0);transition:transform .6s cubic-bezier(.2,.8,.2,1) .4s}
.fp-anim .fp-landing .verdict.is-in em::after{transform:none}
@media (prefers-reduced-motion:reduce){.fp-anim .fp-landing [data-reveal],.fp-anim .fp-landing .rv-title .w>span{opacity:1;transform:none;transition:none}}
