/* Service pages (shoulder, knee, ACL, meniscus, Achilles, sports, motor prep, locations) — page-specific styles from the design */
.bk-hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:56px;align-items:center}.bk-hero .lede{margin-bottom:34px}.bk-hero img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:14px;border:1px solid var(--line-2);display:block}
.bk-prose{max-width:72ch;font-size:17px;color:var(--ink-soft);display:grid;gap:16px}.bk-prose p{margin:0}.bk-prose a,.faqa .inner a{color:var(--accent-deep);text-underline-offset:3px}
.bk-list{color:var(--ink-soft);font-size:16.5px;line-height:1.8;margin:0;padding-left:20px}
.bk-conds{margin-top:44px}.bk-conds .faqq,.bk-conds .faqa{background:#fff}.bk-conds .faqa .inner p{margin:0 0 12px}.bk-conds .faqa .inner p:last-child{margin:0}.bk-conds .faqa .inner ul,.bk-conds .faqa .inner ol{margin:0 0 12px;padding-left:20px}
.bk-steps{display:grid;gap:0;border-top:1px solid var(--line-2);margin-top:8px}.bk-step{display:grid;grid-template-columns:64px minmax(0,300px) minmax(0,1fr);gap:28px;padding:30px 0;border-bottom:1px solid var(--line-2);align-items:start}.bk-step .n{font-family:"IBM Plex Mono",monospace;font-size:13px;letter-spacing:.1em;color:var(--accent-deep);padding-top:5px}.bk-step h3{font-size:22px;line-height:1.25}.bk-step .tx{font-size:16.5px;color:var(--ink-soft);line-height:1.65}.bk-step .tx p{margin:0 0 12px}.bk-step .tx p:last-child{margin:0}.bk-step ul{margin:0 0 12px;padding-left:20px}
.bk-cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:40px}
.bk-place{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:56px;align-items:start}.bk-place img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:14px;border:1px solid var(--line-2);display:block}
@media(max-width:760px){.bk-hero,.bk-place{grid-template-columns:1fr;gap:32px}.bk-hero img{aspect-ratio:4/3}.bk-step{grid-template-columns:1fr;gap:10px}}
.bk-hero .wp-block-image,.bk-place .wp-block-image{margin:0}
.bk-conds summary,.bk-conds .faqq{line-height:normal}
@media(max-width:760px){.bk-hero img{object-position:50% 72%}}
.bk-prose h3{font-size:20px;line-height:1.3;margin:14px 0 0;color:var(--ink)}
.bk-prose h3:first-child{margin-top:0}
/* Sports rehab / motor-prep pages: two-column subsections, photo beside text, FAQ intro */
.sp-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 56px;margin-top:40px;border-top:1px solid var(--line-2)}.sp-item{padding:28px 0;border-bottom:1px solid var(--line-2)}.sp-item h3{font-size:22px;margin:0 0 10px}.sp-item p{margin:0;font-size:16.5px;color:var(--ink-soft);line-height:1.65}.sp-item a{color:var(--accent-deep);text-underline-offset:3px}
.bk-place.top{align-items:center}.bk-place.top img{aspect-ratio:auto}
.faq-intro{max-width:72ch;color:var(--ink-soft);font-size:17px;margin:-8px 0 28px}.faq-intro a{color:var(--accent-deep)}
@media(max-width:760px){.sp-grid,.bk-place[class*=" s-"]{grid-template-columns:1fr}}
/* Achilles page: diagnosis list */
.dx-list{margin-top:36px;border-top:1px solid var(--line-2)}.dx-item{padding:28px 0;border-bottom:1px solid var(--line-2)}.dx-item h3{font-size:22px;margin:0 0 10px}.dx-item p{margin:0;font-size:16.5px;color:var(--ink-soft);line-height:1.65;max-width:72ch}
/* Trening przygotowania motorycznego: "Dla kogo" with a narrow photo, "Efekty" as text + podium photo and full-width rows, grey band behind it */
.bk-place.top:has(img[src*="motor-dlakogo"]){grid-template-columns:minmax(0,300px) minmax(0,1fr);align-items:start}
.bk-place.top:has(img[src*="motor-dlakogo"]) img{max-width:300px}
section:has(.bk-place img[src*="motor-podium"]){background:var(--bg-soft);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.bk-place.top:has(img[src*="motor-podium"]){grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}
.bk-place.top:has(img[src*="motor-podium"]) .wp-block-image{order:2}
.bk-place.top + .sp-grid{grid-template-columns:1fr;gap:0;margin-top:48px}
.bk-place.top + .sp-grid .sp-item{display:grid;grid-template-columns:minmax(0,260px) minmax(0,1fr);gap:32px;padding:36px 0;align-items:start}
.bk-place.top + .sp-grid .sp-item h3{margin:0}
.bk-place.top + .sp-grid .sp-item p{font-size:17px;line-height:1.7;max-width:72ch}
@media(max-width:760px){.bk-place.top:has(img[src*="motor-dlakogo"]),.bk-place.top:has(img[src*="motor-podium"]){grid-template-columns:1fr}.bk-place.top + .sp-grid .sp-item{grid-template-columns:1fr;gap:10px;padding:28px 0}}
.bk-conds.faq{max-width:none}
.bk-hero img[src*="trening-online"]{object-position:72% 50%}
/* Every hero with a photo: photo top lines up with the breadcrumb instead of being centred */
.bk-hero:has(img){align-items:start}
/* Hero pages: the hero already ends with 88px, so the next section needs no top padding */
.sub:has(.bk-hero img)+section{padding-top:0}
