/*!
Theme Name: DM Clinic
Theme URI: https://dm-clinic.pl
Author: Grupa TOM / Kreatorzy Biznesu
Description: Motyw DM Clinic Centrum Medyczne Szczecin — ACF Pro (Flexible Content), CPT, Rank Math, HTML Forms. Bazuje na underscores.
Version: 1.0.0
Requires at least: 6.4
Tested up to: 7.0
Requires PHP: 8.1
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: dm-clinic
Tags: custom-theme, acf
*/

/* DM Clinic — UX strony głównej (v1, 29.08.2026)
   Paleta: granat #00173C · krem #F6F1EB · miedź #FCBF98→#B27B58 (akcenty, NIE CTA) · CTA #0E7A6E
   Typografia: DM Serif Display (nagłówki) + Inter (tekst) */

:root{
  --navy:#00173C; --navy-2:#062454; --navy-3:#0B2E66;
  --cream:#F6F1EB; --cream-2:#EFE6DC; --white:#FFFFFF;
  --ink:#14213D; --muted:#5B6478; --line:#E4DCD2;
  --copper:#B27B58; --copper-light:#FCBF98; --copper-mid:#D9A07B;
  --copper-grad:linear-gradient(120deg,#FCBF98 0%,#D9A07B 45%,#B27B58 100%);
  --cta:#0E7A6E; --cta-dark:#0A6157; --cta-soft:#E3F2EF;
  --radius:20px; --radius-sm:12px;
  --shadow:0 12px 40px rgba(0,23,60,.10); --shadow-sm:0 4px 16px rgba(0,23,60,.08);
  --container:1200px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink);background:var(--white);line-height:1.6;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
ul{list-style:none}
h1,h2,h3,.serif{font-family:"DM Serif Display",Georgia,serif;font-weight:400;line-height:1.1;letter-spacing:-.01em}
h2{font-size:clamp(30px,3.6vw,46px);color:var(--navy)}
h3{font-size:22px;color:var(--navy)}
.container{width:min(var(--container),calc(100% - 40px));margin:0 auto}
.eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:12px;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:var(--copper)}
.eyebrow::before{content:"";width:28px;height:2px;background:var(--copper-grad);border-radius:2px}
.on-dark .eyebrow{color:var(--copper-light)}
.lead{font-size:18px;color:var(--muted);max-width:60ch}
.on-dark .lead{color:rgba(255,255,255,.78)}
.italic-copper{font-style:italic;background:var(--copper-grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.section{padding:96px 0}
.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:48px}
.section-head .lead{margin-top:14px}
.bg-cream{background:var(--cream)}
.bg-navy{background:var(--navy);color:#fff}
.bg-navy h2,.bg-navy h3{color:#fff}

/* Buttons */
.btn{display:inline-flex;align-items:center;gap:10px;padding:14px 24px;border-radius:999px;font-weight:600;font-size:15px;border:1.5px solid transparent;cursor:pointer;transition:.2s;white-space:nowrap;font-family:inherit}
.btn svg{width:18px;height:18px;flex:none}
.btn-primary{background:var(--cta);color:#fff;box-shadow:0 8px 24px rgba(14,122,110,.28)}
.btn-primary:hover{background:var(--cta-dark);transform:translateY(-1px)}
.btn-ghost{background:transparent;color:var(--navy);border-color:rgba(0,23,60,.22)}
.btn-ghost:hover{border-color:var(--navy);background:rgba(0,23,60,.04)}
.on-dark .btn-ghost{color:#fff;border-color:rgba(255,255,255,.35)}
.on-dark .btn-ghost:hover{border-color:#fff;background:rgba(255,255,255,.08)}
.btn-link{color:var(--cta);font-weight:600;display:inline-flex;align-items:center;gap:6px}
.btn-link:hover{gap:10px}
.btn-lg{padding:17px 30px;font-size:16px}

/* Topbar */
.topbar{background:var(--navy);color:rgba(255,255,255,.85);font-size:13px}
.topbar .container{display:flex;justify-content:space-between;align-items:center;min-height:38px;gap:24px}
.topbar ul{display:flex;gap:28px}
.topbar li{display:flex;align-items:center;gap:8px}
.topbar svg{width:14px;height:14px;color:var(--copper-light)}
.topbar .social{display:flex;gap:14px}
.topbar .social a{opacity:.8}.topbar .social a:hover{opacity:1}

/* Header */
.header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.92);backdrop-filter:saturate(180%) blur(12px);border-bottom:1px solid var(--line)}
.header .container{display:flex;align-items:center;justify-content:space-between;height:84px;gap:24px}
.logo img{height:64px;width:auto}
.nav{display:flex;gap:4px}
.nav>li>a{display:flex;align-items:center;gap:6px;padding:10px 14px;border-radius:10px;font-weight:500;font-size:15px;color:var(--navy)}
.nav>li>a:hover{background:var(--cream)}
.nav svg{width:14px;height:14px;opacity:.6}
.header-cta{display:flex;align-items:center;gap:10px}
.burger{display:none;width:44px;height:44px;border:1px solid var(--line);border-radius:10px;background:#fff;align-items:center;justify-content:center;cursor:pointer}
.burger span{display:block;width:18px;height:2px;background:var(--navy);box-shadow:0 -6px 0 var(--navy),0 6px 0 var(--navy)}

/* Mega menu */
.has-mega{position:relative}
.mega{position:absolute;top:100%;left:0;background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:24px;gap:32px;min-width:640px;display:grid;grid-template-columns:1fr 1fr 220px;opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .15s,transform .15s,visibility .15s;z-index:60}
.has-mega::after{content:"";position:absolute;left:0;right:0;top:100%;height:14px}
.has-mega:hover .mega,.has-mega:focus-within .mega{opacity:1;visibility:visible;transform:translateY(8px)}
.mega.mega-sm{grid-template-columns:1fr;min-width:240px;padding:16px 18px;gap:0}
.mega.mega-sm a{padding:8px 10px}
.mega h4{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:12px;font-weight:600}
.mega a{display:flex;align-items:center;gap:10px;padding:7px 8px;border-radius:8px;font-size:14px;color:var(--ink)}
.mega a:hover{background:var(--cream)}
.mega a img{width:22px;height:22px}
.mega .soon{color:var(--muted);opacity:.7}
.mega .soon::after{content:"wkrótce";font-size:10px;letter-spacing:.08em;text-transform:uppercase;background:var(--cream-2);padding:2px 6px;border-radius:4px;margin-left:auto}
.mega-promo{background:var(--navy);border-radius:14px;padding:20px;color:#fff;display:flex;flex-direction:column;justify-content:space-between;gap:12px}
.mega-promo strong{font-family:"DM Serif Display",serif;font-size:20px;font-weight:400;line-height:1.2}
.mega-promo small{color:rgba(255,255,255,.7);font-size:13px}
.mega-promo .btn{align-self:flex-start;padding:10px 16px;font-size:13px}

/* Photo placeholder */
.ph{position:relative;overflow:hidden;background:
  radial-gradient(120% 90% at 80% 10%,rgba(252,191,152,.35),transparent 60%),
  linear-gradient(160deg,#EFE6DC,#D9CBBD);display:flex;align-items:center;justify-content:center;color:var(--navy);text-align:center}
.ph::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(0,23,60,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(0,23,60,.06) 1px,transparent 1px);background-size:32px 32px;opacity:.6}
.ph span{position:relative;z-index:1;font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:600;opacity:.65;display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px}
.ph span::before{content:"";width:40px;height:40px;border-radius:50%;border:2px dashed currentColor;opacity:.5}
.ph.dark{background:radial-gradient(120% 90% at 80% 10%,rgba(252,191,152,.25),transparent 60%),linear-gradient(160deg,#0B2E66,#00173C);color:#fff}

/* Hero */
.hero{position:relative;background:var(--navy);color:#fff;overflow:hidden}
.hero::before{content:"";position:absolute;inset:0;background:
  radial-gradient(800px 500px at 85% 20%,rgba(11,46,102,.9),transparent 60%),
  radial-gradient(600px 400px at 10% 100%,rgba(178,123,88,.18),transparent 60%)}
.hero .dna{position:absolute;right:-80px;top:-60px;width:620px;opacity:.07;pointer-events:none}
.hero .container{position:relative;display:grid;grid-template-columns:1.05fr .95fr;gap:64px;align-items:center;padding:88px 0 96px}
.hero h1{font-size:clamp(40px,5.4vw,72px);margin:22px 0 22px}
.hero h1 .italic-copper{display:block}
.hero .lead{font-size:19px;max-width:54ch}
.hero-actions{display:flex;gap:14px;margin-top:34px;flex-wrap:wrap}
.hero-meta{display:flex;gap:28px;margin-top:38px;padding-top:28px;border-top:1px solid rgba(255,255,255,.14);flex-wrap:wrap}
.hero-meta div{display:flex;flex-direction:column;gap:2px}
.hero-meta strong{font-family:"DM Serif Display",serif;font-size:30px;font-weight:400;color:var(--copper-light)}
.hero-meta small{font-size:13px;color:rgba(255,255,255,.7)}
.hero-visual{position:relative}
.hero-visual .ph{height:560px;border-radius:220px 220px 28px 28px}
.hero-card{position:absolute;background:#fff;color:var(--navy);border-radius:16px;padding:16px 18px;box-shadow:var(--shadow);display:flex;gap:14px;align-items:center}
.hero-card.a{left:-40px;bottom:64px}
.hero-card.b{right:-24px;top:72px}
.hero-card .ic{width:44px;height:44px;border-radius:12px;background:var(--cta-soft);display:grid;place-items:center;color:var(--cta)}
.hero-card .ic svg{width:22px;height:22px}
.hero-card strong{display:block;font-size:15px}
.hero-card small{font-size:13px;color:var(--muted)}
.hero-card .stars{color:var(--copper);letter-spacing:2px;font-size:13px}

/* USP */
.usp{background:var(--cream);padding:72px 0}
.usp-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.usp-item{background:#fff;border-radius:var(--radius);padding:28px;border:1px solid var(--line);position:relative;overflow:hidden}
.usp-item::after{content:"";position:absolute;left:28px;right:28px;bottom:0;height:3px;background:var(--copper-grad);border-radius:3px 3px 0 0;opacity:0;transition:.2s}
.usp-item:hover::after{opacity:1}
.usp-item .num{font-family:"DM Serif Display",serif;font-size:14px;color:var(--copper);letter-spacing:.1em;margin-bottom:14px}
.usp-item h3{font-size:20px;margin-bottom:8px}
.usp-item p{font-size:14.5px;color:var(--muted)}
.seo-lead{margin-top:40px;display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}
.seo-lead h2{font-size:clamp(26px,2.8vw,36px)}
.seo-lead p{color:var(--muted);font-size:16px}

/* Help cards */
.help-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.help-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:32px;display:flex;flex-direction:column;gap:16px;transition:.25s;position:relative}
.help-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:transparent}
.help-card .icon{width:72px;height:72px;border-radius:20px;background:var(--navy);display:grid;place-items:center}
.help-card .icon img{width:46px;height:46px}
.help-card h3{font-size:24px}
.help-card p{color:var(--muted);font-size:15px;flex:1}
.help-card ul{display:flex;flex-wrap:wrap;gap:6px}
.help-card ul li{font-size:12.5px;background:var(--cream);color:var(--navy);padding:4px 10px;border-radius:999px}

/* Specialties */
.spec-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.spec{display:flex;align-items:center;gap:14px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px 16px;transition:.2s}
.spec:hover{border-color:var(--copper-mid);box-shadow:var(--shadow-sm);transform:translateY(-2px)}
.spec img{width:40px;height:40px}
.spec strong{display:block;font-size:15px;color:var(--navy);font-weight:600}
.spec small{font-size:12.5px;color:var(--muted)}
.spec.soon{opacity:.62;background:transparent;border-style:dashed}
.spec.soon strong::after{content:"wkrótce";margin-left:8px;font-size:10px;letter-spacing:.08em;text-transform:uppercase;background:var(--cream-2);color:var(--muted);padding:2px 6px;border-radius:4px;vertical-align:middle}
.spec-groups{display:grid;grid-template-columns:1fr;gap:36px}
.spec-groups>div>h3{font-size:14px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-family:Inter,sans-serif;font-weight:600;margin-bottom:16px;display:flex;align-items:center;gap:12px}
.spec-groups>div>h3::after{content:"";flex:1;height:1px;background:var(--line)}

/* Paths */
.paths{background:var(--navy);color:#fff;position:relative;overflow:hidden}
.paths::before{content:"";position:absolute;inset:0;background:radial-gradient(700px 400px at 100% 0%,rgba(11,46,102,.9),transparent 60%)}
.paths .container{position:relative}
.path-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.path{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);border-radius:var(--radius);padding:32px;backdrop-filter:blur(6px)}
.path .tag{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--copper-light);font-weight:600}
.path h3{font-size:26px;margin:12px 0 18px;color:#fff}
.path ol{list-style:none;display:flex;flex-direction:column;gap:0;counter-reset:s}
.path ol li{position:relative;padding:10px 0 10px 40px;color:rgba(255,255,255,.85);font-size:15px}
.path ol li::before{counter-increment:s;content:counter(s);position:absolute;left:0;top:9px;width:26px;height:26px;border-radius:50%;background:var(--copper-grad);color:var(--navy);font-weight:700;font-size:12px;display:grid;place-items:center}
.path ol li:not(:last-child)::after{content:"";position:absolute;left:12.5px;top:37px;bottom:-8px;width:1px;background:linear-gradient(rgba(252,191,152,.6),rgba(252,191,152,.1))}
.path p{margin-top:18px;color:rgba(255,255,255,.7);font-size:14px}

/* Team */
.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.doc{background:#fff;border-radius:var(--radius);overflow:hidden;border:1px solid var(--line);transition:.25s}
.doc:hover{box-shadow:var(--shadow);transform:translateY(-4px)}
.doc .ph{aspect-ratio:3/4}
.doc-body{padding:20px 22px 22px}
.doc .role{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--copper);font-weight:600}
.doc h3{font-size:20px;margin:6px 0 8px}
.doc p{font-size:14px;color:var(--muted);min-height:42px}
.doc .when{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--navy);margin:14px 0 16px;padding:10px 12px;background:var(--cream);border-radius:10px}
.doc .when svg{width:16px;height:16px;color:var(--cta)}
.doc-actions{display:flex;gap:8px}
.doc-actions .btn{padding:11px 16px;font-size:14px;flex:1;justify-content:center}

/* CTA band */
.band{padding:0}
.band-inner{display:grid;grid-template-columns:1.2fr .8fr;gap:48px;align-items:center;background:var(--cream);border-radius:28px;padding:56px 64px;position:relative;overflow:hidden;border:1px solid var(--line)}
.band-inner::before{content:"";position:absolute;right:-120px;top:-120px;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(252,191,152,.5),transparent 70%)}
.band-inner h2{font-size:clamp(28px,3.2vw,42px);position:relative}
.band-inner p{color:var(--muted);margin-top:12px;font-size:17px;position:relative}
.band-actions{display:flex;flex-direction:column;gap:12px;align-items:flex-end;position:relative}
.band-actions .btn{min-width:260px;justify-content:center}
.phone-big{font-family:"DM Serif Display",serif;font-size:34px;color:var(--navy);display:flex;align-items:center;gap:12px}
.phone-big svg{width:26px;height:26px;color:var(--cta)}
.band-actions small{color:var(--muted);font-size:13px}

/* Classes banner */
.classes .inner{display:grid;grid-template-columns:.9fr 1.1fr;gap:0;border-radius:28px;overflow:hidden;background:var(--navy);color:#fff}
.classes .ph{min-height:460px;border-radius:0}
.classes .txt{padding:64px}
.classes h2{color:#fff;margin:14px 0 16px}
.classes p{color:rgba(255,255,255,.78);font-size:16px}
.sched{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:28px 0 32px}
.sched div{display:flex;justify-content:space-between;gap:12px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);padding:11px 14px;border-radius:10px;font-size:14px}
.sched span{color:var(--copper-light);font-size:12.5px;white-space:nowrap}

/* Reviews */
.rev-top{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:24px}
.score{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px;display:flex;align-items:center;gap:20px}
.score .big{font-family:"DM Serif Display",serif;font-size:48px;color:var(--navy);line-height:1}
.score .stars{color:var(--copper);font-size:16px;letter-spacing:2px}
.score small{display:block;color:var(--muted);font-size:13px;margin-top:4px}
.score .src{margin-left:auto;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);text-align:right}
.score.cta{background:var(--navy);color:#fff;border-color:transparent}
.score.cta strong{font-family:"DM Serif Display",serif;font-size:22px;font-weight:400;display:block;margin-bottom:6px}
.score.cta small{color:rgba(255,255,255,.7)}
.quotes{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.quote{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px;position:relative}
.quote::before{content:"“";position:absolute;top:8px;right:22px;font-family:"DM Serif Display",serif;font-size:80px;line-height:1;background:var(--copper-grad);-webkit-background-clip:text;background-clip:text;color:transparent;opacity:.6}
.quote .stars{color:var(--copper);letter-spacing:2px;font-size:14px}
.quote p{margin:12px 0 16px;font-size:15px;color:var(--ink)}
.quote footer{font-size:13px;color:var(--muted)}
.quote footer b{color:var(--navy);font-weight:600}

/* Blog */
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.post{border-radius:var(--radius);overflow:hidden;border:1px solid var(--line);background:#fff;transition:.25s}
.post:hover{box-shadow:var(--shadow);transform:translateY(-4px)}
.post .ph{aspect-ratio:16/10}
.post-body{padding:22px 24px 26px}
.post .cat{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--copper);font-weight:600}
.post h3{font-size:21px;margin:8px 0 10px;line-height:1.25}
.post p{font-size:14.5px;color:var(--muted)}
.post .by{display:flex;align-items:center;gap:10px;margin-top:16px;font-size:13px;color:var(--muted)}
.post .by i{width:28px;height:28px;border-radius:50%;background:var(--copper-grad);display:inline-block}

/* FAQ */
.faq-wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:64px;align-items:start}
.faq-side{position:sticky;top:110px}
.faq-side p{color:var(--muted);margin:14px 0 24px}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 0;font-weight:600;font-size:17px;color:var(--navy)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";width:34px;height:34px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center;font-weight:400;font-size:20px;color:var(--cta);flex:none;transition:.2s}
.faq details[open] summary::after{content:"–";background:var(--cta);color:#fff;border-color:var(--cta)}
.faq details p{padding:0 0 22px;color:var(--muted);max-width:68ch;font-size:15.5px}

/* Careers */
.careers .inner{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.careers .ph{aspect-ratio:4/3;border-radius:28px}
.careers h2{margin:14px 0 16px}
.careers p{color:var(--muted);font-size:16.5px}
.jobs{margin:28px 0 30px;display:grid;gap:10px}
.job{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 18px;border:1px solid var(--line);border-radius:14px;background:#fff;transition:.2s}
.job:hover{border-color:var(--copper-mid);box-shadow:var(--shadow-sm)}
.job b{font-weight:600;color:var(--navy);display:flex;align-items:center;gap:10px}
.job b img{width:28px;height:28px}
.job span{font-size:12px;letter-spacing:.08em;text-transform:uppercase;padding:4px 10px;border-radius:999px;background:var(--cta-soft);color:var(--cta);font-weight:600}
.job span.p2{background:var(--cream);color:var(--copper)}
.careers .perks{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:22px;font-size:14px;color:var(--navy)}
.careers .perks li{display:flex;align-items:center;gap:8px}
.careers .perks svg{width:16px;height:16px;color:var(--cta)}

/* SEO block */
.seo{padding:72px 0}
.seo details{max-width:900px}
.seo summary{list-style:none;cursor:pointer;color:var(--cta);font-weight:600;display:inline-flex;align-items:center;gap:8px;margin-top:14px}
.seo summary::-webkit-details-marker{display:none}
.seo details[open] summary .more{display:none}.seo details:not([open]) summary .less{display:none}
.seo .txt{color:var(--muted);font-size:15.5px;display:grid;gap:14px}
.seo .txt h3{font-size:18px;color:var(--navy);margin-top:6px;font-family:Inter,sans-serif;font-weight:600}
.seo .txt a{color:var(--cta);text-decoration:underline}

/* Footer */
.footer{background:var(--navy);color:rgba(255,255,255,.78);padding:72px 0 0;font-size:14px}
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr 1fr;gap:40px}
.footer h4{color:#fff;font-size:13px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:18px;font-weight:600}
.footer li{margin-bottom:9px}
.footer a:hover{color:var(--copper-light)}
.footer .logo img{height:64px;margin-bottom:18px}
.footer address{font-style:normal;line-height:1.7}
.footer .social{display:flex;gap:10px;margin-top:18px}
.footer .social a{width:38px;height:38px;border-radius:10px;border:1px solid rgba(255,255,255,.15);display:grid;place-items:center}
.footer .social a:hover{border-color:var(--copper-light)}
.footer .social svg{width:16px;height:16px}
.map-ph{margin-top:20px;height:120px;border-radius:12px}
.foot-bottom{margin-top:56px;border-top:1px solid rgba(255,255,255,.12);padding:22px 0;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:13px;color:rgba(255,255,255,.55)}
.foot-bottom ul{display:flex;gap:20px;flex-wrap:wrap}

/* Mobile sticky */
.sticky-bar{display:none;position:fixed;left:0;right:0;bottom:0;z-index:60;background:#fff;border-top:1px solid var(--line);padding:10px 14px calc(10px + env(safe-area-inset-bottom));gap:10px;box-shadow:0 -8px 30px rgba(0,23,60,.12)}
.sticky-bar .btn{flex:1;justify-content:center;padding:13px}


/* Responsive */
@media (max-width:1100px){
  .usp-grid,.spec-grid,.team-grid{grid-template-columns:repeat(2,1fr)}
  .help-grid,.path-grid,.quotes,.rev-top,.blog-grid{grid-template-columns:repeat(2,1fr)}
  .hero .container{grid-template-columns:1fr;gap:48px}
  .hero-visual .ph{height:420px;border-radius:160px 160px 24px 24px}
  .hero-card.a{left:8px;bottom:16px}.hero-card.b{right:8px;top:16px}
  .foot-grid{grid-template-columns:1fr 1fr 1fr}
  .band-inner{grid-template-columns:1fr;padding:44px}
  .band-actions{align-items:flex-start}
  .faq-wrap,.careers .inner,.seo-lead,.classes .inner{grid-template-columns:1fr}
  .faq-side{position:static}
  .classes .ph{min-height:280px}
  .classes .txt{padding:44px}
}
@media (max-width:820px){
  .topbar ul li:nth-child(2){display:none}
  .topbar .social{display:none}
  .nav,.header-cta .btn-ghost{display:none}
  .burger{display:flex}
  .header .container{height:72px}
  .logo img{height:46px}
  .section{padding:64px 0}
  .section-head{flex-direction:column;align-items:flex-start;gap:16px;margin-bottom:32px}
  .usp-grid,.spec-grid,.team-grid,.help-grid,.path-grid,.quotes,.rev-top,.blog-grid{grid-template-columns:1fr}
  .foot-grid{grid-template-columns:1fr 1fr}
  .sticky-bar{display:flex}
  body{padding-bottom:70px}
  .hero .container{padding:56px 0 64px}
  .hero-visual .ph{height:340px}
  .hero-card.b{display:none}
  .hero-meta{gap:20px}
  .sched{grid-template-columns:1fr}
  .header-cta .btn-primary{display:none}
}

/* ===================== PODSTRONY (v1) ===================== */

/* Breadcrumbs + page hero */
.crumbs{display:flex;flex-wrap:wrap;gap:8px;font-size:13px;color:var(--muted)}
.crumbs a:hover{color:var(--cta)}
.crumbs li+li::before{content:"/";margin-right:8px;opacity:.5}
.on-dark .crumbs{color:rgba(255,255,255,.65)}
.page-hero{background:var(--navy);color:#fff;position:relative;overflow:hidden}
.page-hero::before{content:"";position:absolute;inset:0;background:radial-gradient(700px 400px at 90% 0%,rgba(11,46,102,.95),transparent 60%),radial-gradient(500px 300px at 0% 100%,rgba(178,123,88,.16),transparent 60%)}
.page-hero .dna{position:absolute;right:-60px;top:-40px;width:520px;opacity:.06;pointer-events:none}
.page-hero .container{position:relative;padding:40px 0 64px;display:grid;grid-template-columns:1.15fr .85fr;gap:56px;align-items:center}
.page-hero.single .container{grid-template-columns:1fr}
.page-hero h1{font-size:clamp(34px,4.4vw,58px);margin:18px 0 18px}
.page-hero h1 .italic-copper{display:inline}
.page-hero .lead{font-size:18px}
.page-hero .hero-actions{margin-top:28px}
.page-hero .hero-meta{margin-top:30px;padding-top:22px}
.page-hero .hero-meta strong{font-size:26px}
.page-hero .ph{height:380px;border-radius:28px 160px 28px 28px}
.page-hero.light{background:var(--cream);color:var(--ink)}
.page-hero.light::before{background:radial-gradient(600px 300px at 100% 0%,rgba(252,191,152,.35),transparent 60%)}
.page-hero.light h1{color:var(--navy)}
.page-hero.light .lead{color:var(--muted)}
.page-hero.light .crumbs{color:var(--muted)}
.page-hero.light .eyebrow{color:var(--copper)}
.page-hero.light .btn-ghost{color:var(--navy);border-color:rgba(0,23,60,.22)}

/* Two-column layout with sticky aside */
.layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:48px;align-items:start}
.aside{position:sticky;top:104px;display:grid;gap:18px;align-self:start;min-width:0}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px}
.card h3{font-size:20px;margin-bottom:12px}
.card.navy{background:var(--navy);color:#fff;border-color:transparent}
.card.navy h3{color:#fff}
.card.navy p{color:rgba(255,255,255,.75);font-size:14.5px}
.card .btn{width:100%;justify-content:center;margin-top:12px}
.card .phone-big{font-size:26px;margin-top:8px}
.card.navy .phone-big{color:#fff}
.card small{color:var(--muted);font-size:13px}
.card.navy small{color:rgba(255,255,255,.6)}
.kv{display:grid;gap:10px;font-size:14.5px}
.kv div{display:flex;justify-content:space-between;gap:12px;padding-bottom:10px;border-bottom:1px solid var(--line)}
.kv div:last-child{border:0;padding:0}
.kv span{color:var(--muted)}
.kv b{color:var(--navy);font-weight:600;text-align:right;min-width:0;overflow-wrap:anywhere}
.card.navy .kv div{border-color:rgba(255,255,255,.12)}
.card.navy .kv span{color:rgba(255,255,255,.6)}
.card.navy .kv b{color:#fff}

/* Prose blocks */
.prose{display:grid;gap:56px}
.prose section>h2{font-size:clamp(26px,3vw,36px);margin-bottom:18px}
.prose p{color:var(--muted);font-size:16px;max-width:70ch}
.prose p+p{margin-top:12px}
.prose h3{font-size:20px;margin:22px 0 10px}
.check{display:grid;grid-template-columns:1fr 1fr;gap:10px 24px;margin-top:18px}
.check li{display:flex;gap:10px;align-items:flex-start;font-size:15px;color:var(--ink);padding:10px 12px;background:var(--cream);border-radius:10px}
.check li::before{content:"";flex:none;width:18px;height:18px;margin-top:2px;border-radius:50%;background:var(--cta);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3'%3E%3Cpath d='m5 12 5 5L20 7'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3'%3E%3Cpath d='m5 12 5 5L20 7'/%3E%3C/svg%3E") center/contain no-repeat}
.symptoms{display:grid;grid-template-columns:1fr 1fr;gap:10px 32px;margin-top:20px}
.symptoms li{position:relative;padding:4px 0 4px 22px;font-size:15.5px;color:var(--ink);line-height:1.5}
.symptoms li::before{content:"";position:absolute;left:0;top:13px;width:9px;height:9px;border-radius:50%;background:var(--copper-grad)}
@media (max-width:820px){.symptoms{grid-template-columns:1fr}}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:22px}
.step{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px}
.step .n{width:34px;height:34px;border-radius:50%;background:var(--copper-grad);color:var(--navy);font-weight:700;display:grid;place-items:center;font-size:14px;margin-bottom:12px}
.step h4{font-size:16px;color:var(--navy);margin-bottom:6px}
.step p{font-size:14px}
.note{background:var(--cta-soft);border-left:3px solid var(--cta);padding:16px 20px;border-radius:0 12px 12px 0;color:var(--navy);font-size:15px;margin-top:18px}
.note.copper{background:#FBEFE6;border-color:var(--copper)}

/* Price table */
.price{width:100%;border-collapse:collapse;font-size:15px;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden}
.price th,.price td{padding:14px 18px;text-align:left;border-bottom:1px solid var(--line)}
.price th{background:var(--cream);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-weight:600}
.price td:last-child,.price th:last-child{text-align:right;white-space:nowrap}
.price td:last-child{font-weight:600;color:var(--navy)}
.price tr:last-child td{border:0}
.price small{display:block;color:var(--muted);font-size:13px;font-weight:400}
.price-wrap{overflow-x:auto;border-radius:16px}
.anchors{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0 8px}
.anchors a{padding:9px 16px;border-radius:999px;border:1px solid var(--line);background:#fff;font-size:14px;font-weight:500;color:var(--navy)}
.anchors a:hover{border-color:var(--cta);color:var(--cta)}
.price-updated{font-size:13px;color:var(--muted);margin-top:14px}

/* Doctor profile */
.profile-hero .ph{aspect-ratio:3/4;height:auto;max-width:380px;border-radius:24px 120px 24px 24px;margin-left:auto}
.badges{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.badges li{font-size:13px;padding:6px 12px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);color:rgba(255,255,255,.85)}
.days{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:14px}
.days div{background:var(--cream);border-radius:10px;padding:10px 6px;text-align:center}
.days b{display:block;font-family:"DM Serif Display",serif;font-size:22px;color:var(--navy);font-weight:400}
.days small{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.card.navy .days div{background:rgba(255,255,255,.06)}
.card.navy .days b{color:var(--copper-light)}
.card.navy .days small{color:rgba(255,255,255,.6)}

/* Team list */
.filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:32px}
.filters a{padding:9px 16px;border-radius:999px;border:1px solid var(--line);font-size:14px;color:var(--navy);background:#fff}
.filters a.on{background:var(--navy);color:#fff;border-color:var(--navy)}

/* Schedule table */
.grafik{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;font-size:14.5px}
.grafik th{background:var(--navy);color:#fff;padding:14px 16px;text-align:left;font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:600}
.grafik td{padding:14px 16px;border-bottom:1px solid var(--line);vertical-align:top}
.grafik tr:last-child td{border:0}
.grafik .day{font-family:"DM Serif Display",serif;font-size:18px;color:var(--navy);white-space:nowrap}
.grafik .t{font-weight:600;color:var(--cta);white-space:nowrap}
.grafik .who{color:var(--muted);font-size:13px}
.grafik a{color:var(--navy);font-weight:600}
.grafik a:hover{color:var(--cta)}
.pill{display:inline-block;font-size:11px;letter-spacing:.08em;text-transform:uppercase;padding:3px 8px;border-radius:5px;background:var(--cream-2);color:var(--copper);font-weight:600;margin-left:6px;vertical-align:middle}

/* Programme weeks */
.weeks{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:20px}
.weeks div{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px}
.weeks b{display:block;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--copper);margin-bottom:6px}
.weeks span{font-size:14.5px;color:var(--navy);font-weight:500}

/* Glossary */
.az{display:flex;flex-wrap:wrap;gap:6px;margin:24px 0}
.az a{width:38px;height:38px;display:grid;place-items:center;border-radius:10px;border:1px solid var(--line);background:#fff;font-weight:600;color:var(--navy);font-size:14px}
.az a:hover,.az a.on{background:var(--navy);color:#fff;border-color:var(--navy)}
.az a.off{opacity:.35;pointer-events:none}
.search{display:flex;gap:10px;max-width:640px;background:#fff;border:1px solid var(--line);border-radius:999px;padding:6px 6px 6px 20px;align-items:center;box-shadow:var(--shadow-sm)}
.search input{flex:1;border:0;outline:0;font:inherit;font-size:16px;color:var(--ink);background:transparent}
.search .btn{padding:12px 20px}
.terms{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.term{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px;transition:.2s}
.term:hover{box-shadow:var(--shadow);transform:translateY(-3px)}
.term h3{font-size:19px;margin-bottom:6px}
.term p{font-size:14px;color:var(--muted)}
.term .to{display:inline-flex;align-items:center;gap:6px;margin-top:12px;font-size:12.5px;color:var(--copper);font-weight:600;letter-spacing:.04em}
.letter{font-family:"DM Serif Display",serif;font-size:40px;color:var(--copper);margin:40px 0 16px;display:flex;align-items:center;gap:16px}
.letter::after{content:"";flex:1;height:1px;background:var(--line)}
.related{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.related a{padding:7px 12px;border-radius:999px;background:var(--cream);font-size:13.5px;color:var(--navy);font-weight:500}
.related a:hover{background:var(--cream-2)}
.def{font-size:20px;line-height:1.55;color:var(--navy);padding:26px 30px;background:var(--cream);border-radius:18px;border-left:4px solid var(--copper)}
.who-helps{display:flex;align-items:center;gap:18px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px 22px}
.who-helps .ph{width:72px;height:72px;border-radius:50%;flex:none}
.who-helps .ph span{font-size:9px;padding:0}
.who-helps .ph span::before{display:none}
.who-helps b{display:block;color:var(--navy);font-size:16px}
.who-helps small{color:var(--muted);font-size:13.5px}
.who-helps .btn{margin-left:auto}

/* Blog article */
.article{max-width:760px}
.article .tldr{background:var(--cta-soft);border-radius:18px;padding:24px 28px;margin:28px 0}
.article .tldr b{display:block;color:var(--cta);font-size:12px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:8px}
.article .tldr p{color:var(--navy);font-size:17px;max-width:none}
.article h2{font-size:28px;margin:40px 0 14px}
.article p{font-size:17px;line-height:1.75}
.article ul{margin:14px 0 14px 20px;list-style:disc;color:var(--muted);font-size:16.5px;line-height:1.7}
.author-box{display:flex;gap:18px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px}
.author-box .ph{width:80px;height:80px;border-radius:50%;flex:none}
.author-box .ph span{font-size:9px;padding:0}.author-box .ph span::before{display:none}
.meta-line{display:flex;gap:14px;flex-wrap:wrap;font-size:13.5px;color:rgba(255,255,255,.7);margin-top:20px}
.page-hero.light .meta-line{color:var(--muted)}
.toc{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px}
.toc h4{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:12px}
.toc a{display:block;padding:7px 0;font-size:14.5px;color:var(--navy);border-bottom:1px solid var(--line)}
.toc a:last-child{border:0}

/* Contact */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.contact-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px;display:flex;gap:18px}
.contact-card .ic{width:52px;height:52px;border-radius:14px;background:var(--cta-soft);color:var(--cta);display:grid;place-items:center;flex:none}
.contact-card .ic svg{width:24px;height:24px}
.contact-card h3{font-size:18px;margin-bottom:6px}
.contact-card p{color:var(--muted);font-size:15px}
.contact-card a.big{font-family:"DM Serif Display",serif;font-size:26px;color:var(--navy);display:block;margin-top:4px}
.form{display:grid;gap:14px}
.form .row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.form label{font-size:13px;font-weight:600;color:var(--navy);display:grid;gap:6px}
.form input,.form select,.form textarea{width:100%;border:1px solid var(--line);border-radius:12px;padding:13px 14px;font:inherit;font-size:15px;color:var(--ink);background:#fff;outline:0}
.form input:focus,.form select:focus,.form textarea:focus{border-color:var(--cta);box-shadow:0 0 0 3px rgba(14,122,110,.15)}
.form textarea{min-height:120px;resize:vertical}
.form .consent{display:flex;gap:10px;align-items:flex-start;font-size:13px;color:var(--muted);font-weight:400}
.form .consent input{width:18px;height:18px;margin-top:2px}
.map-big{height:420px;border-radius:24px}
.hours{display:grid;gap:8px}
.hours div{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--line);font-size:15px}
.hours div:last-child{border:0}
.hours b{color:var(--navy);font-weight:600}
.hours .off{color:var(--muted)}

/* Booking */
.channels{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.channel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:30px;display:flex;flex-direction:column;gap:14px;position:relative}
.channel.primary{background:var(--navy);color:#fff;border-color:transparent}
.channel.primary h3{color:#fff}
.channel.primary p{color:rgba(255,255,255,.75)}
.channel .tag{position:absolute;top:18px;right:18px;font-size:11px;letter-spacing:.1em;text-transform:uppercase;background:var(--copper-grad);color:var(--navy);padding:4px 10px;border-radius:6px;font-weight:700}
.channel .ic{width:56px;height:56px;border-radius:16px;background:var(--cta-soft);color:var(--cta);display:grid;place-items:center}
.channel.primary .ic{background:rgba(255,255,255,.1);color:var(--copper-light)}
.channel .ic svg{width:26px;height:26px}
.channel h3{font-size:22px}
.channel p{color:var(--muted);font-size:15px;flex:1}
.channel ul{display:grid;gap:6px;font-size:14px}
.channel ul li{display:flex;gap:8px;align-items:center}
.channel ul li::before{content:"•";color:var(--copper)}
.channel .btn{justify-content:center}
.embed-ph{height:520px;border-radius:24px;margin-top:40px}

/* Jobs */
.job-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px;display:grid;grid-template-columns:64px 1fr auto;gap:22px;align-items:center;transition:.2s}
.job-card:hover{box-shadow:var(--shadow);border-color:var(--copper-mid)}
.job-card img{width:64px;height:64px}
.job-card h3{font-size:22px;margin-bottom:4px}
.job-card p{color:var(--muted);font-size:14.5px}
.job-card .tags{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap}
.job-card .tags span{font-size:12px;padding:4px 10px;border-radius:999px;background:var(--cream);color:var(--navy)}
.job-card .tags .hot{background:var(--cta-soft);color:var(--cta);font-weight:600}
.job-list{display:grid;gap:14px}
.perk-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.perk{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:24px}
.perk b{display:block;font-family:"DM Serif Display",serif;font-weight:400;font-size:30px;color:var(--copper-light);margin-bottom:6px}
.perk span{font-size:14px;color:rgba(255,255,255,.8)}

/* About */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.stat{background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px;text-align:center}
.stat b{display:block;font-family:"DM Serif Display",serif;font-weight:400;font-size:40px;color:var(--navy)}
.stat span{font-size:13.5px;color:var(--muted)}
.gallery{display:grid;grid-template-columns:2fr 1fr 1fr;grid-auto-rows:220px;gap:14px}
.gallery .ph:first-child{grid-row:span 2}
.gallery .ph{border-radius:18px}
.values{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.value{padding:26px;border-radius:18px;background:var(--cream)}
.value b{display:block;font-family:"DM Serif Display",serif;font-weight:400;font-size:22px;color:var(--navy);margin-bottom:8px}
.value p{font-size:14.5px;color:var(--muted)}

/* Hub tiles */
.tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.tile{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:.25s;display:flex;flex-direction:column}
.tile:hover{box-shadow:var(--shadow);transform:translateY(-4px)}
.tile .ph{aspect-ratio:16/9}
.tile-body{padding:22px 24px 24px;display:flex;flex-direction:column;gap:10px;flex:1}
.tile h3{font-size:22px}
.tile p{font-size:14.5px;color:var(--muted);flex:1}
.tile .row{display:flex;justify-content:space-between;align-items:center;font-size:14px}
.tile .row b{color:var(--navy)}
.tile .row a,.tile .row .more{color:var(--cta);font-weight:600}

/* Slots info (doctor days) */
.slots{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:14px}
.slots div{background:var(--cream);border-radius:12px;padding:12px 14px;font-size:14px}
.slots b{display:block;color:var(--navy)}
.slots span{color:var(--muted);font-size:13px}

@media (max-width:1100px){
  .layout{grid-template-columns:1fr}.aside{position:static}
  .page-hero .container{grid-template-columns:1fr}
  .page-hero .ph{height:260px}
  .steps,.terms,.tiles,.channels{grid-template-columns:repeat(2,1fr)}
  .weeks,.perk-grid,.stats,.values{grid-template-columns:repeat(2,1fr)}
  .gallery{grid-template-columns:1fr 1fr}.gallery .ph:first-child{grid-row:auto;grid-column:span 2}
}
@media (max-width:820px){
  .check,.steps,.terms,.tiles,.channels,.contact-grid,.form .row,.weeks,.perk-grid,.stats,.values,.gallery,.slots{grid-template-columns:1fr}
  .days{grid-template-columns:repeat(2,1fr)}
  .job-card{grid-template-columns:48px 1fr}.job-card .btn{grid-column:1/-1}
  .page-hero .container{padding:28px 0 48px}
  .profile-hero .ph{max-width:100%;aspect-ratio:4/3}
  .who-helps{flex-wrap:wrap}.who-helps .btn{margin-left:0;width:100%;justify-content:center}
  .grafik{font-size:13px}.grafik th,.grafik td{padding:10px}
}

/* Lekarz — szeroka karta (strona specjalizacji) */
.doc-wide{display:grid;grid-template-columns:220px 1fr;gap:28px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;margin-top:20px}
.doc-wide .ph{aspect-ratio:auto;width:100%;height:100%;min-height:320px}
.doc-wide .body{padding:28px 28px 28px 0;display:flex;flex-direction:column;gap:12px}
.doc-wide h3{font-size:26px}
.doc-wide p{color:var(--muted);font-size:15px;max-width:none}
.doc-wide .tags{display:flex;flex-wrap:wrap;gap:8px}
.doc-wide .tags li{font-size:12.5px;padding:5px 11px;border-radius:999px;background:var(--cream);color:var(--navy)}
.doc-wide .doc-actions{margin-top:auto;padding-top:8px;max-width:420px}
@media (max-width:820px){.doc-wide{grid-template-columns:1fr}.doc-wide .ph{aspect-ratio:4/3}.doc-wide .body{padding:22px}}
/* Filtry zespołu */
.filters a{cursor:pointer}
.team-grid .doc[hidden]{display:none}

.on-dark .anchors a{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.18);color:#fff}
.on-dark .anchors a:hover{border-color:var(--copper-light);color:var(--copper-light)}
.on-dark .filters a{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.18);color:#fff}
.on-dark .filters a.on{background:var(--cta);border-color:var(--cta)}
.on-dark .az a{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.18);color:#fff}
.on-dark .az a.on{background:var(--cta);border-color:var(--cta)}
.on-dark .search{border-color:transparent}
.on-dark .meta-line{color:rgba(255,255,255,.7)}
.page-hero.single .container{padding-bottom:56px}

/* ===== Poprawki z feedbacku Pastel (09.2026) ===== */
/* zdjęcia w miejscach placeholderów */
.ph.has-img::before{display:none}
.ph.has-img{width:100%}
.ph.has-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
/* ukrywanie bloków przygotowanych na później (atrybut hidden) */
[hidden]{display:none!important}
/* #10 — logo DNA w tle hero: w całości widoczne, poza zdjęciem */
.hero .dna{left:8%;right:auto;top:-16px;width:460px;opacity:.09}
/* hero — niższe po usunięciu paska metryk */
.hero .container{padding:64px 0 72px}
.hero-visual .ph{height:500px}
/* #5 — miedziany komunikat o szybszym terminie na hero */
.hero-note{display:block;margin-top:22px;color:var(--copper-light);font-weight:600;font-size:15.5px;line-height:1.6;max-width:54ch}
.hero-note a{color:var(--copper-light);text-decoration:underline}
/* #15 — pasek partnerów (ukryty do czasu podpisania umów) */
.partners-bar{margin-top:22px;padding:10px 16px;border:1px dashed rgba(255,255,255,.3);border-radius:12px;font-size:13.5px;color:rgba(255,255,255,.8)}
.partners-bar span{color:var(--copper-light);font-weight:600;margin-right:6px}
/* #54 — sekcja aktualnej kampanii */
.promo-now{padding:56px 0 0}
.promo-now .promo-inner{display:grid;grid-template-columns:.45fr .55fr;gap:0;border-radius:28px;overflow:hidden;background:var(--cream);border:1px solid var(--line)}
.promo-now .ph{min-height:340px;border-radius:0}
.promo-now .txt{padding:48px 56px;display:flex;flex-direction:column;justify-content:center;gap:14px}
.promo-now h2{font-size:clamp(26px,3vw,38px)}
.promo-now p{color:var(--muted);font-size:16px}
/* #3 — listy w kartach „Jak możemy Ci pomóc": zwarta lista 2-kolumnowa zamiast chipów */
.help-card ul{display:grid;grid-template-columns:1fr 1fr;gap:5px 14px}
.help-card ul li{background:none;padding:0 0 0 13px;border-radius:0;font-size:13.5px;color:var(--muted);position:relative;line-height:1.45}
.help-card ul li::before{content:"";position:absolute;left:0;top:7px;width:5px;height:5px;border-radius:50%;background:var(--copper)}
.help-card ul li a{color:inherit}
/* #25 — akcje w kartach: dyskretny link + lekkie turkusowe CTA */
.help-card .card-actions{display:flex;gap:14px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-top:auto;padding-top:16px;border-top:1px solid var(--line)}
.help-card .card-actions .btn-link{font-size:14px}
.cta-mini{display:inline-flex;align-items:center;background:var(--cta);color:#fff;font-weight:600;font-size:13.5px;padding:9px 16px;border-radius:999px;transition:.2s;white-space:nowrap}
.cta-mini:hover{filter:brightness(1.08);transform:translateY(-1px)}
/* #36 — przyciski w kartach lekarzy nie nachodzą na tekst */
.doc .doc-actions{margin-top:16px}
/* #48 — klikalny, wyraźny numer w notce */
.note-phone{display:inline-flex;align-items:center;gap:8px;margin-left:12px;font-family:"DM Serif Display",serif;font-size:22px;color:var(--navy);white-space:nowrap;vertical-align:middle}
.note-phone svg{width:18px;height:18px;color:var(--cta)}
/* #55 — sekcja Instagram przy stopce */
.ig-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.ig-grid a{display:block;aspect-ratio:1/1;border-radius:16px;overflow:hidden;border:1px solid var(--line)}
.ig-grid img{width:100%;height:100%;object-fit:cover;transition:.3s}
.ig-grid a:hover img{transform:scale(1.04)}
/* hero-card jako link (#11) */
a.hero-card{text-decoration:none}
a.hero-card:hover{box-shadow:0 18px 44px rgba(0,23,60,.18)}
@media (max-width:960px){
  .promo-now .promo-inner{grid-template-columns:1fr}
  .promo-now .ph{min-height:240px}
  .ig-grid{grid-template-columns:repeat(2,1fr)}
}

/* =========================================================
   DM CLINIC — KIERUNEK KREATYWNY V3 (05.09.2026)
   Autorski home: editorial + boutique medical + ACF-ready
   ========================================================= */
:root{
  --navy-deep:#000f29;
  --paper:#fbf9f6;
  --sand:#eee5da;
  --copper-line:rgba(217,160,123,.58);
  --ease:cubic-bezier(.22,1,.36,1);
}

body{background:var(--paper)}
body:has(.home-v3){background:var(--paper)}
.home-v3{overflow:clip;background:var(--paper)}
.home-v3 em{font-weight:400}
.home-v3 .section-v3{padding:clamp(84px,8vw,132px) 0}
.home-v3 .kicker{display:inline-flex;align-items:center;gap:12px;color:var(--copper);font-size:11px;font-weight:700;line-height:1.2;letter-spacing:.19em;text-transform:uppercase}
.home-v3 .kicker::before{content:"";width:34px;height:1px;background:var(--copper-grad)}
.home-v3 .kicker-light{color:var(--copper-light)}
.home-v3 .section-intro{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);gap:80px;align-items:end;margin-bottom:52px}
.home-v3 .section-intro.compact{margin-bottom:30px}
.home-v3 .section-intro h2{max-width:820px;margin-top:14px;font-size:clamp(38px,4.7vw,66px);letter-spacing:-.035em}
.home-v3 .section-intro p{max-width:44ch;color:var(--muted);font-size:16px}
.home-v3 .section-intro em{color:var(--copper);font-style:italic}
.home-v3 .text-link{display:inline-flex;align-items:center;gap:10px;width:max-content;color:var(--navy);font-size:14px;font-weight:700;border-bottom:1px solid var(--copper-line);padding-bottom:5px;transition:color .25s var(--ease),border-color .25s var(--ease)}
.home-v3 .text-link span,.home-v3 .btn-arrow span{transition:transform .25s var(--ease)}
.home-v3 .text-link:hover{color:var(--cta);border-color:var(--cta)}
.home-v3 .text-link:hover span,.home-v3 .btn-arrow:hover span{transform:translateX(4px)}
.btn-light{color:#fff;border-color:rgba(255,255,255,.34);background:rgba(255,255,255,.035)}
.btn-light:hover{background:#fff;color:var(--navy);border-color:#fff}
.btn-soft{background:var(--cta-soft);color:var(--cta);box-shadow:none}
.btn-soft:hover{background:var(--cta);color:#fff}
.btn-outline-light{border-color:rgba(255,255,255,.35);color:#fff;background:transparent}
.btn-outline-light:hover{border-color:#fff;background:#fff;color:var(--navy)}

/* Global header refinement + no-JS mobile navigation */
.header{transition:box-shadow .35s var(--ease),background .35s var(--ease),border-color .35s var(--ease)}
.header.is-scrolled{background:rgba(255,255,255,.97);border-color:transparent;box-shadow:0 12px 36px rgba(0,23,60,.09)}
.header.is-scrolled .container{height:72px}
.header .container{transition:height .35s var(--ease)}
.mobile-menu{display:none;position:relative}
.mobile-menu summary{list-style:none}
.mobile-menu summary::-webkit-details-marker{display:none}
.mobile-menu-panel{position:absolute;top:calc(100% + 14px);right:0;width:min(420px,calc(100vw - 28px));background:#fff;border:1px solid var(--line);border-radius:22px;padding:18px;box-shadow:0 22px 60px rgba(0,23,60,.18)}
.mobile-menu-panel nav{display:grid}
.mobile-menu-panel nav a{padding:13px 10px;border-bottom:1px solid var(--line);color:var(--navy);font-weight:600}
.mobile-menu-panel nav a:last-child{border-bottom:0}
.mobile-menu-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}
.mobile-menu-actions .btn{justify-content:center;padding:12px}
.mobile-menu[open] .burger span{background:transparent;box-shadow:none}
.mobile-menu[open] .burger span::before,.mobile-menu[open] .burger span::after{content:"";position:absolute;width:18px;height:2px;background:var(--navy);transform:rotate(45deg)}
.mobile-menu[open] .burger span::after{transform:rotate(-45deg)}

/* Hero */
.hero-v3{position:relative;min-height:730px;background:
  radial-gradient(circle at 83% 12%,rgba(16,60,124,.76),transparent 33%),
  radial-gradient(circle at 8% 94%,rgba(178,123,88,.18),transparent 30%),
  linear-gradient(115deg,var(--navy-deep),var(--navy) 62%,#062654);color:#fff}
.hero-v3::after{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:12.5vw 100%;mask-image:linear-gradient(to bottom,#000,transparent 82%)}
.hero-v3-grid{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,.93fr) minmax(470px,1.07fr);gap:80px;align-items:center;padding:88px 0 118px}
.hero-v3-copy,.hero-v3-visual{min-width:0}
.hero-v3-copy h1{max-width:760px;margin:22px 0 24px;color:#fff;font-size:clamp(50px,5.8vw,84px);line-height:.98;letter-spacing:-.045em;overflow-wrap:break-word}
.hero-v3-copy h1 em{display:block;margin-top:8px;background:var(--copper-grad);-webkit-background-clip:text;background-clip:text;color:transparent;font-style:italic}
.hero-v3-lead{max-width:55ch;color:rgba(255,255,255,.76);font-size:18px;line-height:1.75}
.hero-v3-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}
.hero-v3-note{display:flex;gap:11px;align-items:flex-start;max-width:56ch;margin-top:24px;color:rgba(255,255,255,.72);font-size:13px;line-height:1.55}
.hero-v3-note>span{width:7px;height:7px;flex:0 0 7px;margin-top:7px;border-radius:50%;background:var(--copper-light);box-shadow:0 0 0 5px rgba(252,191,152,.1)}
.hero-shortcuts{display:flex;gap:26px;flex-wrap:wrap;margin-top:38px;padding-top:25px;border-top:1px solid rgba(255,255,255,.14)}
.hero-shortcuts a{display:flex;gap:8px;align-items:center;color:rgba(255,255,255,.72);font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;transition:color .25s}
.hero-shortcuts a span{color:var(--copper-light);transition:transform .25s var(--ease)}
.hero-shortcuts a:hover{color:#fff}.hero-shortcuts a:hover span{transform:translateX(4px)}
.hero-v3-visual{position:relative;min-height:570px}
.hero-photo{position:absolute;overflow:hidden;margin:0;background:var(--navy-2);box-shadow:0 30px 80px rgba(0,0,0,.28)}
.hero-photo img{width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease)}
.hero-v3-visual:hover .hero-photo-main img{transform:scale(1.025)}
.hero-photo-main{inset:0 3% 0 16%;border-radius:220px 220px 28px 28px}
.hero-photo-main::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,15,41,.22),transparent 45%)}
.hero-photo-small{left:0;bottom:44px;width:37%;height:230px;border:7px solid var(--navy);border-radius:92px 18px 92px 18px}
.hero-rating{position:absolute;z-index:3;top:62px;right:-22px;display:flex;align-items:center;gap:12px;min-width:245px;padding:15px 17px;border:1px solid rgba(255,255,255,.55);border-radius:16px;background:rgba(255,255,255,.94);color:var(--navy);box-shadow:0 20px 50px rgba(0,0,0,.2);backdrop-filter:blur(12px);transition:transform .25s var(--ease)}
.hero-rating:hover{transform:translateY(-3px)}
.hero-rating .rating-star{display:grid;width:42px;height:42px;place-items:center;border-radius:12px;background:#f8ece3;color:var(--copper);font-size:19px}
.hero-rating strong,.hero-rating small{display:block}.hero-rating strong{font-size:14px}.hero-rating small{color:var(--muted);font-size:11px}.hero-rating i{margin-left:auto;color:var(--cta);font-style:normal}
.hero-location{position:absolute;z-index:3;right:0;bottom:24px;padding:15px 22px;border-left:1px solid var(--copper-light);background:rgba(0,15,41,.78);backdrop-filter:blur(10px)}
.hero-location b,.hero-location span{display:block}.hero-location b{font-family:"DM Serif Display",serif;color:#fff;font-size:20px;font-weight:400}.hero-location span{color:rgba(255,255,255,.65);font-size:11px;text-transform:uppercase;letter-spacing:.12em}
.hero-dna{position:absolute;z-index:1;left:-145px;top:-80px;width:560px;opacity:.045;filter:brightness(2);pointer-events:none;animation:dna-drift 16s ease-in-out infinite alternate}
.hero-v3-edge{position:absolute;z-index:3;right:0;bottom:-1px;left:0;height:62px;background:var(--paper);clip-path:polygon(0 72%,58% 72%,64% 0,100% 0,100% 100%,0 100%)}
@keyframes dna-drift{to{transform:translate3d(14px,20px,0) rotate(.4deg)}}

/* Promotional mosaic */
.promo-suite{position:relative;padding:42px 0 98px;background:var(--paper)}
.promo-grid{display:grid;grid-template-columns:1.55fr .85fr;grid-template-rows:1fr 1fr;gap:18px;min-height:540px}
.promo-card{position:relative;isolation:isolate;overflow:hidden;border:1px solid var(--line);border-radius:26px;background:#fff}
.promo-card-main{grid-row:1 / 3}
.promo-card>img{position:absolute;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}
.promo-card:hover>img{transform:scale(1.035)}
.promo-shade{position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(0,15,41,.94) 0%,rgba(0,23,60,.72) 48%,rgba(0,23,60,.05) 100%)}
.promo-content{display:flex;height:100%;flex-direction:column;align-items:flex-start;justify-content:flex-end;padding:clamp(26px,4vw,54px)}
.promo-label{display:inline-flex;margin-bottom:12px;color:var(--copper-light);font-size:10px;font-weight:700;letter-spacing:.17em;text-transform:uppercase}
.promo-card h3{max-width:520px;margin-bottom:10px;font-size:clamp(26px,3.3vw,45px)}
.promo-card p{max-width:47ch;margin-bottom:23px;font-size:14px;line-height:1.65}
.promo-dark{color:#fff}.promo-dark h3{color:#fff}.promo-dark p{color:rgba(255,255,255,.75)}
.promo-light{display:grid;grid-template-columns:1.12fr .88fr;background:linear-gradient(135deg,#fff,var(--cream))}
.promo-light .promo-content{justify-content:center;padding:30px 10px 30px 34px}
.promo-light>img{position:relative;z-index:0;align-self:stretch;min-height:100%;clip-path:ellipse(78% 88% at 85% 50%)}
.promo-light h3{font-size:27px}.promo-light p{margin-bottom:15px;color:var(--muted)}.promo-light .promo-label{color:var(--copper)}
.promo-copper{color:#fff}.promo-copper .promo-shade{background:linear-gradient(90deg,rgba(0,23,60,.9),rgba(0,23,60,.36))}.promo-copper h3{color:#fff;font-size:29px}.promo-copper p{color:rgba(255,255,255,.75);margin-bottom:12px}.promo-copper .promo-content{padding:29px 34px}
.text-link-light{color:#fff!important;border-color:rgba(255,255,255,.35)!important}
.promo-scroll-hint{display:none}

/* Fast care finder */
.care-finder{background:#fff}
.care-finder-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}
.care-route{position:relative;display:grid;grid-template-columns:34px 58px 1fr 28px;gap:18px;align-items:center;min-height:146px;padding:27px 30px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:background .3s var(--ease),color .3s var(--ease)}
.care-route::after{content:"";position:absolute;right:0;bottom:0;left:0;height:2px;background:var(--copper-grad);transform:scaleX(0);transform-origin:left;transition:transform .4s var(--ease)}
.care-route:hover{background:var(--cream)}.care-route:hover::after{transform:scaleX(1)}
.care-route .route-no{align-self:start;color:var(--copper);font-family:"DM Serif Display",serif;font-size:13px}
.care-route img{width:52px;height:52px;object-fit:contain}.care-route b,.care-route small{display:block}.care-route b{margin-bottom:5px;color:var(--navy);font-family:"DM Serif Display",serif;font-size:22px;font-weight:400}.care-route small{max-width:44ch;color:var(--muted);font-size:13px;line-height:1.5}.care-route i{color:var(--cta);font-size:19px;font-style:normal;transition:transform .25s var(--ease)}.care-route:hover i{transform:translateX(5px)}

/* Clinic story */
.clinic-story{background:var(--cream)}
.clinic-story-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:clamp(60px,9vw,130px);align-items:center}
.story-collage{position:relative;min-height:650px}
.story-collage figure{position:absolute;overflow:hidden;margin:0;background:#ddd;box-shadow:0 26px 60px rgba(0,23,60,.15)}
.story-collage img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}
.story-collage:hover img{transform:scale(1.025)}
.story-photo-large{inset:0 16% 70px 0;border-radius:190px 24px 24px 24px}
.story-photo-small{right:0;bottom:0;width:43%;height:290px;border:8px solid var(--cream);border-radius:18px 18px 116px 18px}
.story-seal{position:absolute;top:70px;right:2%;display:grid;width:132px;height:132px;place-items:center;border:1px solid var(--copper-line);border-radius:50%;background:rgba(251,249,246,.94);text-align:center;box-shadow:var(--shadow-sm);backdrop-filter:blur(8px)}
.story-seal::before{content:"";position:absolute;inset:7px;border:1px dashed var(--copper-line);border-radius:50%}
.story-seal strong{font-family:"DM Serif Display",serif;color:var(--navy);font-size:29px;font-weight:400;line-height:1}.story-seal span{max-width:78px;margin-top:-34px;color:var(--copper);font-size:8px;font-weight:700;line-height:1.4;letter-spacing:.15em;text-transform:uppercase}
.story-copy h2{max-width:640px;margin:18px 0 24px;font-size:clamp(42px,5.2vw,68px);letter-spacing:-.04em}.story-copy h2 em{display:block;color:var(--copper);font-style:italic}
.story-lead{max-width:59ch;color:var(--muted);font-size:17px;line-height:1.8}
.story-points{display:grid;gap:0;margin:34px 0 30px;border-top:1px solid var(--copper-line)}
.story-points>div{display:grid;grid-template-columns:44px 1fr;gap:18px;padding:18px 0;border-bottom:1px solid var(--copper-line)}
.story-points>div>span{color:var(--copper);font-family:"DM Serif Display",serif;font-size:14px}.story-points b,.story-points small{display:block}.story-points b{color:var(--navy);font-size:14px}.story-points small{margin-top:3px;color:var(--muted);font-size:12px}

/* Specialty editorial gallery */
.specialties-v3{position:relative;background:
  radial-gradient(circle at 90% 8%,rgba(15,64,126,.48),transparent 28%),
  linear-gradient(160deg,var(--navy-deep),var(--navy));color:#fff}
.specialties-v3::before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(252,191,152,.15) .7px,transparent .7px);background-size:18px 18px;mask-image:linear-gradient(90deg,transparent,#000 70%,transparent)}
.specialties-v3 .container{position:relative}
.section-intro-light h2{color:#fff}.section-intro-light p{color:rgba(255,255,255,.66)!important}
.specialty-gallery{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:250px;grid-auto-flow:dense;gap:14px}
.specialty-card{position:relative;isolation:isolate;overflow:hidden;border:1px solid rgba(255,255,255,.14);border-radius:18px;background:var(--navy-2)}
.specialty-card-wide{grid-column:span 2}.specialty-card-tall{grid-row:span 2}
.specialty-card>img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease),filter .7s var(--ease)}
.specialty-card:hover>img{transform:scale(1.045);filter:saturate(.92) contrast(1.03)}
.specialty-overlay{position:absolute;z-index:1;inset:0;background:linear-gradient(to top,rgba(0,15,41,.96),rgba(0,23,60,.05) 70%)}
.specialty-copy{position:absolute;z-index:2;right:0;bottom:0;left:0;display:grid;grid-template-columns:1fr 28px;gap:2px 10px;align-items:end;padding:22px;color:#fff}
.specialty-copy small{grid-column:1 / 3;color:var(--copper-light);font-size:9px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.specialty-copy b{font-family:"DM Serif Display",serif;font-size:22px;font-weight:400}.specialty-copy i{align-self:center;color:var(--copper-light);font-style:normal;transition:transform .25s var(--ease)}.specialty-card:hover i{transform:translateX(5px)}
.specialties-footer{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:30px;padding-top:28px;border-top:1px solid rgba(255,255,255,.13)}
.specialties-footer p{color:rgba(255,255,255,.62);font-size:14px}

/* Pathways */
.pathways-v3{background:var(--paper)}
.pathways-layout{display:grid;grid-template-columns:.83fr 1.17fr;gap:70px;align-items:stretch}
.pathways-image{position:relative;min-height:650px;overflow:hidden;border-radius:190px 24px 24px 24px}
.pathways-image>img{width:100%;height:100%;object-fit:cover}
.image-caption{position:absolute;right:0;bottom:0;left:0;display:flex;gap:18px;align-items:center;padding:26px 28px;background:linear-gradient(to top,rgba(0,15,41,.95),rgba(0,23,60,.62),transparent);color:#fff}
.image-caption span{color:var(--copper-light);font-family:"DM Serif Display",serif}.image-caption p{padding-left:18px;border-left:1px solid var(--copper-line);font-size:12px;line-height:1.5}
.pathway-list{display:grid;align-content:center}
.pathway-list>a{display:grid;grid-template-columns:48px 1fr 28px;gap:22px;align-items:start;padding:30px 0;border-top:1px solid var(--line);transition:padding .3s var(--ease)}
.pathway-list>a:last-child{border-bottom:1px solid var(--line)}.pathway-list>a:hover{padding-left:12px}
.pathway-list>a>span{display:grid;width:42px;height:42px;place-items:center;border:1px solid var(--copper-line);border-radius:50%;color:var(--copper);font-family:"DM Serif Display",serif;font-size:13px}
.pathway-list small{color:var(--copper);font-size:10px;font-weight:700;letter-spacing:.15em;text-transform:uppercase}.pathway-list h3{margin:7px 0 9px;font-size:clamp(25px,2.6vw,36px)}.pathway-list p{color:var(--muted);font-size:13px}.pathway-list i{align-self:center;color:var(--cta);font-size:21px;font-style:normal;transition:transform .25s}.pathway-list>a:hover i{transform:translateX(5px)}

/* Doctors */
.team-v3{background:#fff}
.team-v3-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.doctor-v3{min-width:0}.doctor-v3-offset{padding-top:46px}
.doctor-photo{position:relative;display:block;aspect-ratio:3/4;overflow:hidden;border-radius:112px 18px 18px 18px;background:var(--cream)}
.doctor-v3:nth-child(even) .doctor-photo{border-radius:18px 18px 112px 18px}
.doctor-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,23,60,.6),transparent 42%);opacity:0;transition:opacity .35s}
.doctor-photo img{width:100%;height:100%;object-fit:cover;transition:transform .65s var(--ease)}
.doctor-photo>span{position:absolute;z-index:2;right:18px;bottom:16px;left:18px;color:#fff;font-size:12px;font-weight:600;opacity:0;transform:translateY(8px);transition:.35s var(--ease)}
.doctor-photo:hover::after,.doctor-photo:hover>span{opacity:1}.doctor-photo:hover>span{transform:none}.doctor-photo:hover img{transform:scale(1.035)}
.doctor-v3>div{padding:20px 4px}.doctor-v3>div>small{color:var(--copper);font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.doctor-v3 h3{margin:7px 0 9px;font-size:22px}.doctor-v3 p{min-height:63px;color:var(--muted);font-size:13px}.doctor-v3>div>a{display:inline-flex;gap:8px;margin-top:15px;color:var(--cta);font-size:13px;font-weight:700}.doctor-v3>div>a span{transition:transform .25s}.doctor-v3>div>a:hover span{transform:translateX(4px)}

/* Movement feature */
.movement-v3{padding-top:40px!important;background:#fff}
.movement-card{display:grid;grid-template-columns:1.12fr .88fr;min-height:580px;overflow:hidden;border-radius:32px;background:var(--navy);box-shadow:0 36px 90px rgba(0,23,60,.18)}
.movement-photo{position:relative;overflow:hidden}.movement-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 60%,rgba(0,23,60,.3))}.movement-photo img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}.movement-card:hover .movement-photo img{transform:scale(1.025)}
.movement-line{position:absolute;z-index:2;right:-72px;top:50%;width:144px;height:144px;border:1px solid var(--copper-line);border-radius:50%;transform:translateY(-50%)}.movement-line::before,.movement-line::after{content:"";position:absolute;inset:12px;border:1px dashed var(--copper-line);border-radius:50%}.movement-line::after{inset:34px;border-style:solid}
.movement-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:clamp(42px,6vw,76px);color:#fff}.movement-copy h2{margin:16px 0 18px;color:#fff;font-size:clamp(38px,4.4vw,59px)}.movement-copy h2 em{display:block;color:var(--copper-light);font-style:italic}.movement-copy>p{color:rgba(255,255,255,.72);font-size:15px}.movement-copy ul{display:flex;gap:8px;flex-wrap:wrap;margin:25px 0 30px}.movement-copy li{padding:7px 11px;border:1px solid rgba(255,255,255,.18);border-radius:99px;color:rgba(255,255,255,.78);font-size:11px}

/* Trust */
.trust-v3{background:var(--cream)}
.trust-grid{display:grid;grid-template-columns:.73fr 1.27fr;gap:clamp(60px,9vw,140px);align-items:center}
.trust-score{position:relative;padding:46px;border:1px solid var(--copper-line);border-radius:22px 22px 130px 22px;background:rgba(255,255,255,.7)}
.quote-mark{position:absolute;top:-23px;right:34px;color:var(--copper-light);font-family:"DM Serif Display",serif;font-size:110px;line-height:1}.trust-score>small{color:var(--copper);font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.trust-score>strong{display:block;margin-top:10px;color:var(--navy);font-family:"DM Serif Display",serif;font-size:90px;font-weight:400;line-height:1}.trust-score sup{font-size:26px}.trust-stars{color:var(--copper);letter-spacing:6px}.trust-score p{margin:22px 0;color:var(--muted);font-size:14px}
.trust-copy h2{margin:17px 0 32px;font-size:clamp(42px,5.2vw,69px)}.trust-copy h2 em{display:block;color:var(--copper);font-style:italic}
.trust-values{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--copper-line)}
.trust-values>div{padding:20px 20px 10px 0}.trust-values>div+div{padding-left:20px;border-left:1px solid var(--copper-line)}.trust-values>div>span{color:var(--copper);font-family:"DM Serif Display",serif;font-size:13px}.trust-values b,.trust-values small{display:block}.trust-values b{margin-top:12px;color:var(--navy);font-size:13px}.trust-values small{margin-top:5px;color:var(--muted);font-size:11px;line-height:1.5}

/* Knowledge */
.knowledge-v3{background:var(--paper)}
.knowledge-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:28px}
.knowledge-main{position:relative;isolation:isolate;min-height:540px;overflow:hidden;border-radius:24px 120px 24px 24px;color:#fff}.knowledge-main>img{position:absolute;z-index:-2;width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}.knowledge-main:hover>img{transform:scale(1.035)}.knowledge-shade{position:absolute;z-index:-1;inset:0;background:linear-gradient(to top,rgba(0,15,41,.96),rgba(0,23,60,.12) 74%)}.knowledge-main>div{position:absolute;right:0;bottom:0;left:0;padding:42px}.knowledge-main small{color:var(--copper-light);font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.knowledge-main h3{max-width:650px;margin:10px 0 22px;color:#fff;font-size:clamp(27px,3.4vw,43px)}.knowledge-main>div>span{font-size:13px;font-weight:700}
.knowledge-list{display:grid}.knowledge-list>a{display:grid;grid-template-columns:112px 1fr 25px;gap:22px;align-items:center;padding:24px;border-top:1px solid var(--line);transition:background .25s,padding .25s var(--ease)}.knowledge-list>a:last-child{border-bottom:1px solid var(--line)}.knowledge-list>a:hover{padding-left:31px;background:#fff}.knowledge-list>a>span{color:var(--copper);font-size:9px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.knowledge-list h3{margin-bottom:5px;font-size:22px}.knowledge-list p{color:var(--muted);font-size:12px}.knowledge-list i{color:var(--cta);font-style:normal}

/* FAQ */
.faq-v3{background:#fff}
.faq-v3-grid{display:grid;grid-template-columns:.73fr 1.27fr;gap:clamp(60px,10vw,150px);align-items:start}
.faq-v3-side{position:sticky;top:120px}.faq-v3-side h2{margin:16px 0 18px;font-size:clamp(40px,4.7vw,62px)}.faq-v3-side p{max-width:40ch;margin-bottom:25px;color:var(--muted);font-size:14px}
.faq-v3-list{border-top:1px solid var(--line)}.faq-v3-list details{border-bottom:1px solid var(--line)}.faq-v3-list summary{display:grid;grid-template-columns:1fr 42px;gap:20px;align-items:center;padding:25px 0;color:var(--navy);font-family:"DM Serif Display",serif;font-size:22px;line-height:1.25;list-style:none;cursor:pointer}.faq-v3-list summary::-webkit-details-marker{display:none}.faq-v3-list summary::after{content:"+";display:grid;width:38px;height:38px;place-items:center;border:1px solid var(--line);border-radius:50%;color:var(--cta);font-family:Inter,sans-serif;font-size:18px;transition:.3s var(--ease)}.faq-v3-list details[open] summary::after{transform:rotate(45deg);background:var(--cta);border-color:var(--cta);color:#fff}.faq-v3-list details>div{overflow:hidden}.faq-v3-list details p{max-width:67ch;padding:0 60px 24px 0;color:var(--muted);font-size:14px}

/* Final CTA */
.final-cta-v3{padding-bottom:55px!important;background:#fff}.final-cta-inner{position:relative;isolation:isolate;overflow:hidden;padding:clamp(58px,8vw,105px);border-radius:28px;background:radial-gradient(circle at 90% 20%,rgba(12,61,123,.8),transparent 35%),var(--navy);color:#fff}.final-cta-inner::after{content:"";position:absolute;z-index:-1;right:5%;bottom:-62%;width:390px;height:390px;border:1px solid rgba(252,191,152,.17);border-radius:50%}.final-cta-inner h2{max-width:900px;margin:18px 0 23px;color:#fff;font-size:clamp(42px,5.5vw,72px);letter-spacing:-.04em}.final-cta-inner h2 em{color:var(--copper-light);font-style:italic}.final-cta-inner p{max-width:57ch;color:rgba(255,255,255,.7);font-size:15px}.final-cta-inner>div{display:flex;gap:12px;flex-wrap:wrap;margin-top:31px}.final-dna{position:absolute;z-index:-1;right:-100px;top:-145px;width:530px;opacity:.045;filter:brightness(2)}

/* Social gallery */
.social-v3{padding-top:55px!important;background:#fff}.social-gallery{display:grid;grid-template-columns:1.15fr .85fr .85fr 1.15fr;gap:12px}.social-gallery a{position:relative;overflow:hidden;aspect-ratio:4/5;border-radius:16px}.social-gallery a:first-child{border-radius:90px 16px 16px 16px}.social-gallery a:last-child{border-radius:16px 16px 90px 16px}.social-gallery img{width:100%;height:100%;object-fit:cover;transition:transform .65s var(--ease)}.social-gallery a::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,15,41,.78),transparent 54%)}.social-gallery span{position:absolute;z-index:2;right:18px;bottom:17px;left:18px;color:#fff;font-size:11px;font-weight:600;letter-spacing:.04em}.social-gallery a:hover img{transform:scale(1.045)}
.seo-v3{background:var(--cream);border-top:1px solid var(--line)}

/* Progressive reveal: content remains visible without JavaScript */
.has-js [data-reveal]{opacity:0;transform:translateY(18px);transition:opacity .45s var(--ease),transform .45s var(--ease);transition-delay:var(--reveal-delay,0ms)}
.has-js [data-reveal].is-visible{opacity:1;transform:none}

@media (max-width:1180px){
  .hero-v3-grid{grid-template-columns:.9fr 1.1fr;gap:38px}.hero-v3-copy h1{font-size:64px}.hero-rating{right:0}.hero-photo-main{right:0}
  .team-v3-grid{grid-template-columns:repeat(2,1fr)}.doctor-v3-offset{padding-top:0}
  .specialty-gallery{grid-template-columns:repeat(3,1fr)}
  .specialty-card-wide{grid-column:span 1}.specialty-card-tall{grid-row:span 1}
  .trust-grid{grid-template-columns:.85fr 1.15fr;gap:65px}
}

@media (max-width:900px){
  .header-cta>.burger{display:none}
  .home-v3 .section-intro{grid-template-columns:1fr;gap:18px}.home-v3 .section-intro p{max-width:62ch}
  .hero-v3{min-height:0}.hero-v3-grid{grid-template-columns:1fr;padding:70px 0 118px}.hero-v3-copy h1{font-size:clamp(48px,9vw,74px)}.hero-v3-visual{min-height:520px;max-width:660px;width:100%;margin:0 auto}.hero-photo-main{left:13%}
  .promo-grid{grid-template-columns:1.2fr .8fr;min-height:520px}
  .promo-light{display:block}.promo-light>img{position:absolute;z-index:-1;inset:0;width:100%;height:100%;clip-path:none;opacity:.24}.promo-light .promo-content{position:relative;z-index:2;height:100%;justify-content:flex-end;padding:26px}.promo-light::after{content:"";position:absolute;z-index:0;inset:0;background:linear-gradient(to top,#fff 12%,rgba(255,255,255,.73),transparent)}.promo-light .promo-content{z-index:1}.promo-light h3{font-size:24px}
  .clinic-story-grid{grid-template-columns:1fr}.story-collage{min-height:600px;max-width:660px}.story-copy{max-width:680px}
  .specialty-gallery{grid-template-columns:repeat(2,1fr)}
  .pathways-layout{grid-template-columns:1fr}.pathways-image{min-height:540px;max-width:660px}
  .movement-card{grid-template-columns:1fr}.movement-photo{min-height:420px}.movement-line{right:50%;top:auto;bottom:-72px;transform:translateX(50%)}
  .trust-grid,.faq-v3-grid{grid-template-columns:1fr}.trust-score{max-width:520px}.faq-v3-side{position:static}
  .knowledge-grid{grid-template-columns:1fr}.knowledge-main{min-height:480px}
  .social-gallery{grid-template-columns:repeat(2,1fr)}
}

@media (max-width:820px){
  .mobile-menu{display:block}
  .mobile-menu .burger{display:flex}
}

@media (max-width:700px){
  .container{width:min(var(--container),calc(100% - 30px))}
  .topbar .container{justify-content:center}.topbar ul li:first-child{display:none}.topbar ul{width:100%;justify-content:center}
  .home-v3 .section-v3{padding:76px 0}.home-v3 .section-intro{margin-bottom:34px}.home-v3 .section-intro h2{font-size:38px}.home-v3 .section-intro.compact{margin-bottom:24px}
  .hero-v3-grid{padding-top:55px;gap:48px}.hero-v3-copy h1{font-size:48px}.hero-v3-lead{font-size:16px}.hero-v3-actions{display:grid}.hero-v3-actions .btn{justify-content:center}.hero-shortcuts{gap:16px}.hero-shortcuts a{font-size:10px}
  .hero-v3-visual{min-height:400px}.hero-photo-main{inset:0 0 0 8%;border-radius:150px 150px 22px 22px}.hero-photo-small{width:40%;height:155px;bottom:22px;border-width:5px;border-radius:58px 14px 58px 14px}.hero-rating{top:25px;right:-4px;min-width:204px;padding:11px}.hero-rating .rating-star{width:34px;height:34px}.hero-rating small{font-size:9px}.hero-location{right:0;bottom:12px;padding:10px 14px}.hero-location b{font-size:17px}.hero-v3-edge{height:34px}
  .promo-suite{padding:32px 0 72px}.promo-suite .section-intro p{display:none}.promo-grid{display:flex;min-height:0;gap:13px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin-right:-15px;padding-right:15px;padding-bottom:8px}.promo-grid::-webkit-scrollbar{display:none}.promo-card{flex:0 0 86%;min-height:440px;scroll-snap-align:start}.promo-card-main{min-height:440px}.promo-card .promo-content{padding:28px}.promo-card h3{font-size:34px}.promo-light{background:#fff}.promo-light>img{opacity:.45}.promo-light::after{background:linear-gradient(to top,#fff 18%,rgba(255,255,255,.8),rgba(255,255,255,.1))}.promo-copper h3{font-size:31px}.promo-scroll-hint{display:flex;justify-content:center;gap:7px;margin-top:18px}.promo-scroll-hint span{width:6px;height:6px;border-radius:50%;background:var(--line)}.promo-scroll-hint span:first-child{width:22px;border-radius:6px;background:var(--copper)}
  .care-finder-grid{grid-template-columns:1fr}.care-route{grid-template-columns:28px 48px 1fr 18px;gap:12px;min-height:126px;padding:22px 16px}.care-route img{width:44px;height:44px}.care-route b{font-size:20px}
  .story-collage{min-height:480px}.story-photo-large{right:12%;bottom:55px;border-radius:130px 20px 20px 20px}.story-photo-small{width:46%;height:215px;border-width:6px;border-radius:15px 15px 76px 15px}.story-seal{top:42px;width:104px;height:104px}.story-seal strong{font-size:24px}.story-copy h2{font-size:43px}
  .specialty-gallery{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin-right:-15px;padding-right:15px}.specialty-gallery::-webkit-scrollbar{display:none}.specialty-card,.specialty-card-wide,.specialty-card-tall{flex:0 0 78%;height:390px;scroll-snap-align:start}.specialties-footer{align-items:flex-start;flex-direction:column}.specialties-footer .btn{width:100%;justify-content:center}
  .pathways-image{min-height:460px;border-radius:130px 20px 20px 20px}.pathway-list>a{grid-template-columns:42px 1fr 18px;gap:13px;padding:24px 0}.pathway-list h3{font-size:26px}
  .team-v3-grid{display:flex;gap:15px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin-right:-15px;padding-right:15px}.team-v3-grid::-webkit-scrollbar{display:none}.doctor-v3{flex:0 0 78%;scroll-snap-align:start}.doctor-v3 p{min-height:0}
  .movement-v3{padding-top:20px!important}.movement-card{width:calc(100% - 18px);border-radius:24px}.movement-photo{min-height:320px}.movement-copy{padding:38px 25px 42px}.movement-copy h2{font-size:40px}
  .trust-values{grid-template-columns:1fr}.trust-values>div+div{padding-left:0;border-left:0;border-top:1px solid var(--copper-line)}.trust-score{padding:34px 30px;border-radius:20px 20px 92px 20px}.trust-score>strong{font-size:72px}.trust-copy h2{font-size:43px}
  .knowledge-main{min-height:450px;border-radius:20px 80px 20px 20px}.knowledge-main>div{padding:28px}.knowledge-main h3{font-size:29px}.knowledge-list>a{grid-template-columns:1fr 20px;gap:10px;padding:22px 8px}.knowledge-list>a>span{grid-column:1 / 3}.knowledge-list p{display:none}
  .faq-v3-list summary{font-size:19px}.faq-v3-list details p{padding-right:12px}
  .final-cta-v3{padding-bottom:35px!important}.final-cta-inner{padding:52px 25px;border-radius:22px}.final-cta-inner h2{font-size:42px}.final-cta-inner>div{display:grid}.final-cta-inner .btn{justify-content:center}
  .social-v3{padding-top:35px!important}.social-gallery{gap:8px}.social-gallery a:first-child{border-radius:56px 12px 12px 12px}.social-gallery a:last-child{border-radius:12px 12px 56px 12px}.social-gallery span{right:12px;bottom:12px;left:12px;font-size:9px}
}

:focus-visible{outline:3px solid var(--copper-light);outline-offset:4px}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}
  .has-js [data-reveal]{opacity:1;transform:none}
}

/* ========================================================================== */
/* DM Clinic V4 — wspólny editorial UI wszystkich podstron                    */
/* ========================================================================== */
.hero-dna,.final-dna,.hero .dna,.page-hero .dna{display:none!important}
.footer-route{display:inline-flex;margin-top:20px;padding-bottom:5px;border-bottom:1px solid rgba(252,191,152,.42);color:var(--copper-light);font-size:13px;font-weight:600}

.page-ui-v4:not(.page-index){overflow:clip;background:var(--paper)}
.page-ui-v4:not(.page-index) .page-hero{isolation:isolate;background:
  radial-gradient(circle at 88% 6%,rgba(22,72,137,.72),transparent 34%),
  radial-gradient(circle at 5% 100%,rgba(178,123,88,.17),transparent 28%),
  linear-gradient(124deg,var(--navy-deep),var(--navy) 60%,#072855)}
.page-ui-v4:not(.page-index) .page-hero::before{z-index:-1;background:
  linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:12.5vw 100%;mask-image:linear-gradient(to bottom,#000,transparent 94%)}
.page-ui-v4:not(.page-index) .page-hero::after{content:"";position:absolute;z-index:-1;right:-8%;bottom:-190px;width:470px;height:470px;border:1px solid rgba(252,191,152,.12);border-radius:50%}
.page-ui-v4:not(.page-index) .page-hero .container{min-height:510px;padding:66px 0 84px;grid-template-columns:minmax(0,1.08fr) minmax(360px,.72fr);gap:clamp(48px,7vw,100px)}
.page-ui-v4:not(.page-index) .page-hero.single .container{min-height:430px;grid-template-columns:minmax(0,920px)}
.page-ui-v4:not(.page-index) .page-hero h1{max-width:940px;margin:18px 0 21px;font-size:clamp(42px,4.7vw,67px);line-height:1.02;letter-spacing:-.035em}
.page-ui-v4:not(.page-index) .page-hero h1 .italic-copper{background:var(--copper-grad);-webkit-background-clip:text;background-clip:text;color:transparent;font-style:italic}
.page-ui-v4:not(.page-index) .page-hero .lead{max-width:66ch;color:rgba(255,255,255,.72);font-size:17px;line-height:1.78}
.page-ui-v4:not(.page-index) .page-hero .crumbs{margin-bottom:22px;color:rgba(255,255,255,.5);font-size:11px;letter-spacing:.06em;text-transform:uppercase}
.page-ui-v4:not(.page-index) .page-hero .crumbs a{color:rgba(255,255,255,.72)}
.page-ui-v4:not(.page-index) .page-hero .eyebrow{color:var(--copper-light)}
.page-ui-v4:not(.page-index) .page-hero .hero-actions{margin-top:30px}
.page-ui-v4:not(.page-index) .page-hero .hero-meta{gap:0;margin-top:32px;padding-top:0;border:1px solid rgba(255,255,255,.12);border-radius:15px;background:rgba(255,255,255,.035);backdrop-filter:blur(8px)}
.page-ui-v4:not(.page-index) .page-hero .hero-meta>div{min-width:130px;padding:17px 21px}
.page-ui-v4:not(.page-index) .page-hero .hero-meta>div+div{border-left:1px solid rgba(255,255,255,.11)}
.page-ui-v4:not(.page-index) .page-hero .hero-meta strong{font-size:23px}
.page-ui-v4:not(.page-index) .page-hero .hero-meta small{color:rgba(255,255,255,.58);font-size:10px}

.subhero-media,.page-ui-v4:not(.page-index) .page-hero .container>.ph{position:relative;min-height:390px;overflow:hidden;margin:0;border:1px solid rgba(255,255,255,.2);border-radius:145px 20px 20px 20px;background:var(--navy-2);box-shadow:0 30px 70px rgba(0,0,0,.25)}
.subhero-media::after,.page-ui-v4:not(.page-index) .page-hero .container>.ph::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,23,60,.27),transparent 52%);pointer-events:none}
.subhero-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .75s var(--ease)}
.page-ui-v4:not(.page-index) .page-hero .container>.ph img{width:100%;height:100%;object-fit:cover;transition:transform .75s var(--ease)}
.page-hero:hover .subhero-media img,.page-ui-v4:not(.page-index) .page-hero:hover .container>.ph img{transform:scale(1.025)}
.page-ui-v4:not(.page-index) .page-hero.profile-hero .container>.ph{min-height:500px;border-radius:180px 20px 20px 20px}
.page-ui-v4:not(.page-index) .page-hero.profile-hero .container>.ph img{object-position:center top}

/* Rytm i typografia treści */
.page-ui-v4:not(.page-index)>.section{position:relative;padding:100px 0}
.page-ui-v4:not(.page-index)>.section:nth-of-type(3n):not(.on-dark):not(.bg-navy):not(.paths):not(.booking-section){background:#fff}
.page-ui-v4:not(.page-index) .section-head{margin-bottom:42px}
.page-ui-v4:not(.page-index) .section-head h2,.page-ui-v4:not(.page-index) .prose h2{letter-spacing:-.025em}
.page-ui-v4:not(.page-index) .layout{grid-template-columns:minmax(0,1fr) 350px;gap:clamp(48px,6vw,84px)}
.page-ui-v4:not(.page-index) .prose{gap:0}
.page-ui-v4:not(.page-index) .prose>section{position:relative;padding:52px 0;border-top:1px solid var(--line)}
.page-ui-v4:not(.page-index) .prose>section:first-child{padding-top:0;border-top:0}
.page-ui-v4:not(.page-index) .prose>section::before{content:"";position:absolute;top:-1px;left:0;width:68px;height:1px;background:var(--copper-grad)}
.page-ui-v4:not(.page-index) .prose>section:first-child::before{display:none}
.page-ui-v4:not(.page-index) .prose p{font-size:16px;line-height:1.82}
.page-ui-v4:not(.page-index) .aside{position:sticky;top:118px}
.page-ui-v4:not(.page-index) .aside .card{border-radius:20px;border-color:rgba(0,23,60,.1);box-shadow:0 16px 40px rgba(0,23,60,.055)}
.page-ui-v4:not(.page-index) .aside .card.navy{position:relative;overflow:hidden;background:linear-gradient(145deg,var(--navy),#082d63)}
.page-ui-v4:not(.page-index) .aside .card.navy::after{content:"";position:absolute;right:-70px;bottom:-90px;width:180px;height:180px;border:1px solid rgba(252,191,152,.2);border-radius:50%}
.page-ui-v4:not(.page-index) .steps{gap:14px}.page-ui-v4:not(.page-index) .step{border-color:var(--copper-line);border-radius:18px;background:linear-gradient(145deg,#fff,var(--cream))}
.page-ui-v4:not(.page-index) .step .n{display:grid;width:34px;height:34px;place-items:center;border:1px solid var(--copper-line);border-radius:50%;font-size:11px}
.page-ui-v4:not(.page-index) .price-wrap{overflow:hidden;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 16px 45px rgba(0,23,60,.045)}
.page-ui-v4:not(.page-index) .faq details{background:transparent}
.page-ui-v4:not(.page-index) .faq summary{font-size:18px}

/* Karty i zdjęcia */
.tile-media{position:relative;aspect-ratio:16/10;overflow:hidden;margin:0;background:var(--cream)}
.tile-media::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,23,60,.18),transparent 48%)}
.tile-media img{width:100%;height:100%;object-fit:cover;transition:transform .65s var(--ease)}
.tile:hover .tile-media img{transform:scale(1.045)}
.media-focus-right img{object-position:75% center}.media-focus-left img{object-position:25% center}
.tile-media-icon{display:grid;place-items:center;background:linear-gradient(135deg,var(--cream),#f1e1d5)}
.tile-media-icon img{width:92px;height:92px;object-fit:contain}
.page-ui-v4:not(.page-index) .tiles{gap:18px}
.page-ui-v4:not(.page-index) .tile{border-color:rgba(0,23,60,.095);border-radius:19px;box-shadow:0 12px 35px rgba(0,23,60,.035);transition:transform .35s var(--ease),box-shadow .35s,border-color .35s}
.page-ui-v4:not(.page-index) .tile:hover{transform:translateY(-7px);border-color:var(--copper-line);box-shadow:0 25px 55px rgba(0,23,60,.11)}
.page-ui-v4:not(.page-index) .tile-body{padding:24px 25px 26px}
.page-ui-v4:not(.page-index) .tile h3{font-size:24px;letter-spacing:-.015em}
.page-ui-v4:not(.page-index) .tile .more{transition:transform .25s var(--ease)}
.page-ui-v4:not(.page-index) .tile:hover .more{transform:translateX(4px)}
.page-ui-v4:not(.page-index) .spec-groups>div>h3{margin-bottom:25px;color:var(--copper);font-family:Inter,sans-serif;font-size:11px;letter-spacing:.15em;text-transform:uppercase}

/* Zespół — ten sam język co karty na stronie głównej */
.page-specjalisci .team-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:34px 22px}
.page-specjalisci .team-grid .doc{overflow:visible;border:0;border-radius:0;background:transparent}
.page-specjalisci .team-grid .doc:hover{transform:none;box-shadow:none}
.page-specjalisci .doc>.ph,.page-specjalisci .doc>.specialist-monogram{aspect-ratio:3/4;overflow:hidden;border-radius:112px 18px 18px 18px;background:var(--cream);box-shadow:0 18px 45px rgba(0,23,60,.09)}
.page-specjalisci .doc:nth-child(even)>.ph,.page-specjalisci .doc:nth-child(even)>.specialist-monogram{border-radius:18px 18px 112px 18px}
.page-specjalisci .doc>.ph img{width:100%;height:100%;object-fit:cover;object-position:center top;transition:transform .65s var(--ease)}
.page-specjalisci .doc:hover>.ph img{transform:scale(1.035)}
.page-specjalisci .doc-body{padding:20px 3px 0}
.page-specjalisci .doc h3{font-size:21px}.page-specjalisci .doc p{min-height:64px;font-size:13px;line-height:1.55}
.page-specjalisci .doc-actions .btn{padding:10px 13px}
.specialist-monogram{display:grid;place-items:center;background:
  radial-gradient(circle at 72% 24%,rgba(252,191,152,.23),transparent 24%),
  linear-gradient(145deg,var(--navy),#0a346d)!important;color:var(--copper-light);font-family:"DM Serif Display",serif;font-size:58px}
.specialist-monogram::after{content:"";width:52%;aspect-ratio:1;position:absolute;border:1px solid rgba(252,191,152,.22);border-radius:50%}
.doc>.specialist-monogram{position:relative}
.doc-wide-no-photo{grid-template-columns:220px 1fr}.doc-wide-no-photo>.specialist-monogram{min-height:320px;border-radius:0;font-size:52px}

/* Kontakt i mapy */
.page-kontakt .contact-grid{gap:18px}.page-kontakt .contact-card{border-radius:19px;box-shadow:0 15px 40px rgba(0,23,60,.045);transition:transform .3s var(--ease),border-color .3s}
.page-kontakt .contact-card:hover{transform:translateY(-4px);border-color:var(--copper-line)}
.map-embed{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:22px;background:var(--cream);box-shadow:0 20px 50px rgba(0,23,60,.09)}
.map-embed iframe{display:block;width:100%;height:100%;border:0}
.map-embed-contact{height:430px;border-radius:22px 90px 22px 22px}
.map-embed-compact{height:290px;margin-top:18px}
.contact-gallery{display:grid;grid-template-columns:1.2fr .8fr;gap:12px;margin-top:14px}
.contact-gallery figure{height:190px;overflow:hidden;margin:0;border-radius:16px}
.contact-gallery figure:last-child{border-radius:16px 16px 70px 16px}
.contact-gallery img{width:100%;height:100%;object-fit:cover;transition:transform .65s var(--ease)}
.contact-gallery figure:hover img{transform:scale(1.04)}

/* eGabinet */
.booking-section{background:linear-gradient(180deg,var(--cream),#fff)}
.booking-head a{color:var(--cta);font-weight:700}
.booking-widgets{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,440px),1fr));gap:24px;align-items:start}
.booking-widget-card{overflow:hidden;border:1px solid var(--copper-line);border-radius:24px;background:#fff;box-shadow:0 24px 60px rgba(0,23,60,.09)}
.booking-widget-copy{position:relative;padding:27px 30px 23px;border-bottom:1px solid var(--line);background:linear-gradient(135deg,#fff,var(--cream))}
.booking-widget-copy::after{content:"";position:absolute;top:0;right:30px;width:52px;height:2px;background:var(--copper-grad)}
.booking-widget-copy h3{margin:8px 0 5px;font-size:25px}.booking-widget-copy p{color:var(--muted);font-size:13px}
.booking-widget-card iframe{display:block;width:100%;height:470px;border:0;background:#fff}
.booking-gateway{display:flex;align-items:center;justify-content:space-between;gap:40px;margin-top:44px;padding:42px 46px;border-radius:24px;background:
  radial-gradient(circle at 90% 20%,rgba(16,61,122,.75),transparent 34%),var(--navy);color:#fff;box-shadow:0 28px 65px rgba(0,23,60,.17)}
.booking-gateway h2{margin:10px 0;color:#fff}.booking-gateway p{max-width:60ch;color:rgba(255,255,255,.68)}
.review-source{display:flex;min-height:170px;flex-direction:column;align-items:flex-start;justify-content:center;padding:28px;border:1px solid var(--copper-line);border-radius:20px;background:linear-gradient(145deg,#fff,var(--cream))}
.review-source small{color:var(--copper);font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.review-source strong{max-width:260px;margin:9px 0 15px;color:var(--navy);font-family:"DM Serif Display",serif;font-size:22px;font-weight:400}.review-source span{color:var(--cta);font-size:12px;font-weight:700}

@media (max-width:1100px){
  .page-specjalisci .team-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .page-ui-v4:not(.page-index) .page-hero .container{grid-template-columns:minmax(0,1fr) minmax(310px,.75fr);gap:42px}
}

@media (max-width:900px){
  .page-ui-v4:not(.page-index) .page-hero .container{grid-template-columns:1fr;min-height:0;padding:54px 0 72px}
  .page-ui-v4:not(.page-index) .page-hero.single .container{min-height:370px}
  .subhero-media,.page-ui-v4:not(.page-index) .page-hero .container>.ph{width:min(100%,660px);min-height:420px}
  .page-ui-v4:not(.page-index) .page-hero.profile-hero .container>.ph{min-height:540px}
  .page-ui-v4:not(.page-index) .layout{grid-template-columns:1fr}.page-ui-v4:not(.page-index) .aside{position:static}
  .page-specjalisci .team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .page-kontakt .layout[style]{grid-template-columns:1fr!important}
  .booking-gateway{align-items:flex-start;flex-direction:column}
}

@media (max-width:700px){
  .page-ui-v4:not(.page-index)>.section{padding:74px 0}
  .page-ui-v4:not(.page-index) .page-hero h1{font-size:42px}
  .page-ui-v4:not(.page-index) .page-hero .lead{font-size:15px}
  .page-ui-v4:not(.page-index) .page-hero .hero-actions{display:grid}.page-ui-v4:not(.page-index) .page-hero .hero-actions .btn{justify-content:center}
  .page-ui-v4:not(.page-index) .page-hero .hero-meta{display:grid;grid-template-columns:1fr 1fr}
  .page-ui-v4:not(.page-index) .page-hero .hero-meta>div{min-width:0}.page-ui-v4:not(.page-index) .page-hero .hero-meta>div+div{border-left:0}.page-ui-v4:not(.page-index) .page-hero .hero-meta>div:nth-child(even){border-left:1px solid rgba(255,255,255,.11)}.page-ui-v4:not(.page-index) .page-hero .hero-meta>div:nth-child(n+3){border-top:1px solid rgba(255,255,255,.11)}
  .subhero-media,.page-ui-v4:not(.page-index) .page-hero .container>.ph{min-height:340px;border-radius:110px 18px 18px 18px}
  .page-ui-v4:not(.page-index) .page-hero.profile-hero .container>.ph{min-height:430px;border-radius:130px 18px 18px 18px}
  .page-ui-v4:not(.page-index) .tiles{grid-template-columns:1fr}
  .page-specjalisci .filters{display:flex;flex-wrap:nowrap;overflow-x:auto;padding-bottom:8px;scroll-snap-type:x proximity}.page-specjalisci .filters a{flex:none;scroll-snap-align:start}
  .page-specjalisci .team-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px 13px}.page-specjalisci .doc>.ph,.page-specjalisci .doc>.specialist-monogram{border-radius:72px 13px 13px 13px}.page-specjalisci .doc:nth-child(even)>.ph,.page-specjalisci .doc:nth-child(even)>.specialist-monogram{border-radius:13px 13px 72px 13px}.page-specjalisci .doc-body{padding-top:14px}.page-specjalisci .doc h3{font-size:17px}.page-specjalisci .doc p{display:none}.page-specjalisci .doc .role{font-size:9px}.page-specjalisci .doc-actions{display:grid}.page-specjalisci .doc-actions .btn{font-size:11px;padding:9px 7px}
  .specialist-monogram{font-size:40px}.doc-wide-no-photo{grid-template-columns:1fr}.doc-wide-no-photo>.specialist-monogram{min-height:220px}
  .contact-gallery{grid-template-columns:1fr 1fr}.contact-gallery figure{height:140px}.map-embed-contact{height:360px}
  .booking-widgets{grid-template-columns:1fr}.booking-widget-copy{padding:23px 21px}.booking-widget-copy h3{font-size:22px}.booking-widget-card iframe{height:500px}
  .booking-gateway{padding:35px 24px}.booking-gateway .btn{width:100%;justify-content:center}
}

/* ========================================================================== */
/* DM Clinic V5 — dopracowanie podstron do języka strony głównej (05.09.2026) */
/* popup eGabinet · sticky sidebar · reveal · kontakt · specjalizacje · fizjo   */
/* ========================================================================== */

/* Kicker + nagłówki sekcji jak na home (section-intro) */
.page-ui-v4:not(.page-index) .eyebrow{gap:12px;font-size:11px;font-weight:700;letter-spacing:.19em}
.page-ui-v4:not(.page-index) .eyebrow::before{width:34px;height:1px;border-radius:0}
.page-ui-v4:not(.page-index) .section-head{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.6fr);gap:20px 64px;align-items:end;margin-bottom:46px}
.page-ui-v4:not(.page-index) .section-head h2{max-width:780px;font-size:clamp(34px,4.1vw,56px);letter-spacing:-.032em;line-height:1.04}
.page-ui-v4:not(.page-index) .section-head .lead{margin:0;max-width:44ch;font-size:16px;line-height:1.7}
.page-ui-v4:not(.page-index) .section-head>.btn,.page-ui-v4:not(.page-index) .section-head>.text-link{justify-self:end}
.page-ui-v4:not(.page-index) .prose section>h2{font-size:clamp(28px,3.1vw,40px);letter-spacing:-.028em}
.page-ui-v4:not(.page-index) .lead{line-height:1.7}
.page-ui-v4:not(.page-index) .text-link{display:inline-flex;align-items:center;gap:10px;width:max-content;padding-bottom:5px;border-bottom:1px solid var(--copper-line);color:var(--navy);font-size:14px;font-weight:700;transition:color .25s var(--ease),border-color .25s var(--ease)}
.page-ui-v4:not(.page-index) .text-link:hover{color:var(--cta);border-color:var(--cta)}
.page-ui-v4:not(.page-index) .text-link span{transition:transform .25s var(--ease)}
.page-ui-v4:not(.page-index) .text-link:hover span{transform:translateX(4px)}

/* Przyciski — ruch jak na home */
.btn{transition:background .25s var(--ease),color .25s var(--ease),border-color .25s var(--ease),transform .25s var(--ease),box-shadow .25s var(--ease)}
.btn-primary:hover{box-shadow:0 14px 30px rgba(14,122,110,.32);transform:translateY(-2px)}
.btn .arrow{display:inline-block;transition:transform .25s var(--ease)}
.btn:hover .arrow{transform:translateX(4px)}

/* Reveal na podstronach (elementy oznacza site.js, treść widoczna bez JS) */
.has-js .page-ui-v4:not(.page-index) [data-reveal]{opacity:0;transform:translateY(22px);transition:opacity .6s var(--ease),transform .6s var(--ease);transition-delay:var(--reveal-delay,0ms)}
.has-js .page-ui-v4:not(.page-index) [data-reveal].is-visible{opacity:1;transform:none}
.has-js .page-hero [data-reveal]{transform:translateY(14px)}

/* Karty i kafle — spójny hover */
.page-ui-v4:not(.page-index) .post{border-color:rgba(0,23,60,.095);border-radius:19px;box-shadow:0 12px 35px rgba(0,23,60,.035);transition:transform .35s var(--ease),box-shadow .35s,border-color .35s}
.page-ui-v4:not(.page-index) .post:hover{transform:translateY(-7px);border-color:var(--copper-line);box-shadow:0 25px 55px rgba(0,23,60,.11)}
.page-ui-v4:not(.page-index) .post .ph.has-img img{transition:transform .65s var(--ease)}
.page-ui-v4:not(.page-index) .post:hover .ph.has-img img{transform:scale(1.045)}
.page-ui-v4:not(.page-index) .usp-item,.page-ui-v4:not(.page-index) .stat,.page-ui-v4:not(.page-index) .value,.page-ui-v4:not(.page-index) .channel,.page-ui-v4:not(.page-index) .job-card,.page-ui-v4:not(.page-index) .term{border-radius:19px;transition:transform .35s var(--ease),box-shadow .35s var(--ease),border-color .35s var(--ease)}
.page-ui-v4:not(.page-index) .usp-item:hover,.page-ui-v4:not(.page-index) .stat:hover,.page-ui-v4:not(.page-index) .channel:hover,.page-ui-v4:not(.page-index) .term:hover{transform:translateY(-5px);border-color:var(--copper-line);box-shadow:0 22px 50px rgba(0,23,60,.09)}
.page-ui-v4:not(.page-index) .channel.primary:hover{box-shadow:0 28px 60px rgba(0,23,60,.25)}
.page-ui-v4:not(.page-index) .value{background:linear-gradient(145deg,#fff,var(--cream));border:1px solid rgba(0,23,60,.08)}
.page-ui-v4:not(.page-index) .stat b{font-size:46px;letter-spacing:-.03em}
.page-ui-v4:not(.page-index) .doc-wide{border-radius:22px;border-color:rgba(0,23,60,.1);box-shadow:0 18px 45px rgba(0,23,60,.06)}
.page-ui-v4:not(.page-index) .doc-wide .ph.has-img img{transition:transform .7s var(--ease)}
.page-ui-v4:not(.page-index) .doc-wide:hover .ph.has-img img{transform:scale(1.03)}
.page-ui-v4:not(.page-index) .band-inner{border-radius:28px;background:radial-gradient(circle at 92% 10%,rgba(252,191,152,.35),transparent 38%),linear-gradient(135deg,#fff,var(--cream));border-color:var(--copper-line)}
.page-ui-v4:not(.page-index) .faq summary{font-family:"DM Serif Display",serif;font-weight:400;font-size:21px;line-height:1.25}
.page-ui-v4:not(.page-index) .faq summary::after{width:38px;height:38px;font-size:18px;transition:.3s var(--ease)}
.page-ui-v4:not(.page-index) .faq details[open] summary::after{transform:rotate(45deg);content:"+"}
.page-ui-v4:not(.page-index) .faq details p{font-size:15px;line-height:1.75}
.page-ui-v4:not(.page-index) .symptoms li{transition:border-color .25s,background .25s}
.page-ui-v4:not(.page-index) .symptoms li:hover{border-color:var(--copper-line);background:var(--cream)}
.page-ui-v4:not(.page-index) .check li{border-radius:12px;background:linear-gradient(145deg,#fff,var(--cream));border:1px solid rgba(0,23,60,.06)}
.page-ui-v4:not(.page-index) .kv b{font-family:Inter,sans-serif}
.page-ui-v4:not(.page-index) .note{border-radius:0 16px 16px 0}
.page-ui-v4:not(.page-index) .grafik th{background:linear-gradient(135deg,var(--navy-deep),var(--navy))}
.page-ui-v4:not(.page-index) .grafik tbody tr{transition:background .2s}.page-ui-v4:not(.page-index) .grafik tbody tr:hover{background:var(--cream)}

/* Galerie ze zdjęciami (o nas, praca) */
.gallery figure{position:relative;overflow:hidden;margin:0;border-radius:18px;background:var(--cream)}
.gallery figure img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}
.gallery figure:hover img{transform:scale(1.04)}
.gallery figure:first-child{grid-row:span 2;border-radius:120px 18px 18px 18px}
.gallery figure:last-child{border-radius:18px 18px 90px 18px}
.gallery figcaption{position:absolute;z-index:1;right:16px;bottom:14px;left:16px;color:#fff;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;text-shadow:0 2px 12px rgba(0,15,41,.7)}
.gallery figure::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,15,41,.55),transparent 45%);pointer-events:none}
.partner-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:20px}
.partner-strip div{display:grid;place-items:center;min-height:82px;padding:14px;border:1px dashed var(--copper-line);border-radius:14px;color:var(--copper);font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;text-align:center;background:linear-gradient(145deg,#fff,var(--cream))}

/* Zespół na hubie fizjoterapii — ten sam język co /specjalisci */
.team-grid-3{grid-template-columns:repeat(3,1fr)}
.page-fizjoterapia .team-grid .doc{overflow:visible;border:0;border-radius:0;background:transparent}
.page-fizjoterapia .team-grid .doc:hover{transform:none;box-shadow:none}
.page-fizjoterapia .doc>.ph{aspect-ratio:3/4;overflow:hidden;border-radius:112px 18px 18px 18px;background:var(--cream);box-shadow:0 18px 45px rgba(0,23,60,.09)}
.page-fizjoterapia .doc:nth-child(even)>.ph{border-radius:18px 18px 112px 18px}
.page-fizjoterapia .doc>.ph img{object-position:center top;transition:transform .65s var(--ease)}
.page-fizjoterapia .doc:hover>.ph img{transform:scale(1.035)}
.page-fizjoterapia .doc-body{padding:20px 3px 0}
.page-fizjoterapia .doc-actions .btn{padding:10px 13px}

/* Specjalizacje — kafle „wkrótce” i karta CTA */
.tile.tile-soon{cursor:default}
.tile.tile-soon .tile-media img{filter:saturate(.75)}
.tile .pill{margin-left:8px;font-size:10px}
.tile-body .row .more{color:var(--cta);font-weight:600}
.tile-cta{display:flex;flex-direction:column;justify-content:center;gap:12px;padding:32px;border-radius:19px;color:#fff;background:radial-gradient(circle at 90% 15%,rgba(16,61,122,.85),transparent 40%),linear-gradient(145deg,var(--navy-deep),var(--navy));border:1px solid transparent;box-shadow:0 18px 45px rgba(0,23,60,.18)}
.tile-cta .eyebrow{color:var(--copper-light)}
.tile-cta h3{color:#fff;font-size:26px;line-height:1.1}
.tile-cta p{color:rgba(255,255,255,.72);font-size:14.5px}
.tile-cta .phone-big{margin-top:4px;color:#fff;font-family:"DM Serif Display",serif;font-size:28px}
.tile-cta .phone-big:hover{color:var(--copper-light)}
.page-ui-v4:not(.page-index) .spec-groups{display:grid;gap:72px}
.page-ui-v4:not(.page-index) .spec-groups>div>h3{display:flex;align-items:center;gap:14px}
.page-ui-v4:not(.page-index) .spec-groups>div>h3::after{content:"";flex:1;height:1px;background:var(--line)}

/* Kontakt — dojazd bez emoji, wyrównany układ */
.route-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);gap:clamp(32px,4vw,56px);align-items:start}
.route-list{display:grid;gap:14px}
.route-card{display:grid;grid-template-columns:54px 1fr;gap:18px;align-items:start;padding:22px 24px;border:1px solid rgba(0,23,60,.1);border-radius:18px;background:#fff;box-shadow:0 12px 35px rgba(0,23,60,.035);transition:transform .3s var(--ease),border-color .3s,box-shadow .3s}
.route-card:hover{transform:translateY(-4px);border-color:var(--copper-line);box-shadow:0 22px 50px rgba(0,23,60,.09)}
.route-card .ic{display:grid;width:54px;height:54px;place-items:center;border-radius:15px;background:var(--cta-soft);color:var(--cta)}
.route-card .ic svg{width:24px;height:24px}
.route-card h3{margin-bottom:6px;font-size:20px}
.route-card p{color:var(--muted);font-size:14.5px;line-height:1.7}
.route-card p i{color:var(--copper);font-size:13px}
.route-card .text-link{margin-top:10px}
.page-kontakt .contact-card{align-items:flex-start}
.page-kontakt .contact-card .ic{border-radius:15px}
.page-kontakt .contact-card a.big{transition:color .25s}.page-kontakt .contact-card a.big:hover{color:var(--cta)}
.page-kontakt .form-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:clamp(40px,5vw,72px);align-items:start}
.page-kontakt .form input,.page-kontakt .form select,.page-kontakt .form textarea{border-radius:14px;padding:14px 16px;transition:border-color .25s,box-shadow .25s}
.page-kontakt .social-list a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);color:var(--navy);font-size:14.5px;font-weight:500;transition:color .2s,padding-left .25s var(--ease)}
.page-kontakt .social-list a:last-child{border:0}
.page-kontakt .social-list a:hover{color:var(--cta);padding-left:6px}
.page-kontakt .social-list a span{color:var(--copper);font-size:12px}

/* eGabinet — sekcja inline na całą szerokość (widget ma stałe ~460 px, więc dostaje własną kolumnę) */
.booking-widgets{grid-template-columns:1fr;gap:22px}
.booking-widget-card{display:grid;grid-template-columns:minmax(0,1fr) 500px;align-items:stretch;border-radius:26px}
.booking-widget-copy{display:flex;flex-direction:column;justify-content:center;gap:6px;padding:40px 44px;border-bottom:0;border-right:1px solid var(--line)}
.booking-widget-copy::after{right:auto;left:44px;top:34px}
.booking-widget-copy h3{margin:14px 0 6px;font-size:clamp(26px,2.6vw,34px);letter-spacing:-.02em}
.booking-widget-copy p{font-size:14.5px;line-height:1.65}
.booking-widget-copy .booking-tips{display:grid;gap:10px;margin-top:22px;padding-top:20px;border-top:1px solid var(--line)}
.booking-widget-copy .booking-tips div{display:grid;grid-template-columns:28px 1fr;gap:10px;align-items:start;color:var(--ink);font-size:13.5px;line-height:1.5}
.booking-widget-copy .booking-tips span{color:var(--copper);font-family:"DM Serif Display",serif;font-size:13px;padding-top:2px}
.booking-widget-copy .booking-phone{display:inline-flex;align-items:center;gap:10px;margin-top:22px;color:var(--navy);font-family:"DM Serif Display",serif;font-size:26px;transition:color .25s}
.booking-widget-copy .booking-phone:hover{color:var(--cta)}
.booking-widget-copy .booking-phone svg{width:20px;height:20px;color:var(--cta)}
.booking-widget-copy .booking-open{margin-top:8px;color:var(--cta);font-size:13px;font-weight:700}
.booking-widget-frame{position:relative;display:grid;place-items:start center;padding:18px;background:linear-gradient(180deg,#f6f6f7,#fff)}
.booking-widget-frame iframe{display:block;width:464px;max-width:100%;height:600px;border:0;background:#fff;border-radius:14px;box-shadow:0 10px 30px rgba(0,23,60,.06)}
.booking-widget-card.booking-widget-wide{grid-template-columns:1fr}
.booking-widget-card.booking-widget-wide .booking-widget-copy{border-right:0;border-bottom:1px solid var(--line);padding:34px 44px}
.booking-widget-card.booking-widget-wide .booking-widget-frame{padding:0;background:#fff}
.booking-widget-card.booking-widget-wide .booking-widget-frame iframe{width:100%;height:820px;border-radius:0;box-shadow:none}

/* eGabinet — popup */
body.modal-open{overflow:hidden}
.booking-modal{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:20px}
.booking-modal[hidden]{display:none}
.booking-modal .booking-backdrop{position:absolute;inset:0;background:rgba(0,15,41,.72);backdrop-filter:blur(6px);animation:bm-fade .3s var(--ease) both}
.booking-modal .booking-panel{position:relative;z-index:1;display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:min(1120px,100%);height:min(900px,calc(100dvh - 40px));overflow:hidden;border-radius:26px;background:#fff;box-shadow:0 40px 120px rgba(0,0,0,.4);animation:bm-rise .45s var(--ease) both}
.booking-modal.is-compact .booking-panel{width:min(560px,100%);height:min(860px,calc(100dvh - 40px))}
.booking-modal .booking-top{display:flex;align-items:center;gap:20px;padding:20px 26px;border-bottom:1px solid var(--line);background:linear-gradient(135deg,#fff,var(--cream))}
.booking-modal .booking-top>div{min-width:0;flex:1}
.booking-modal .booking-top .eyebrow{font-size:10px}
.booking-modal .booking-top h2{margin-top:6px;font-size:clamp(20px,2.2vw,28px);line-height:1.1;letter-spacing:-.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.booking-modal .booking-top .booking-sub{margin-top:4px;color:var(--muted);font-size:13px}
.booking-modal .booking-close{display:grid;width:46px;height:46px;flex:none;place-items:center;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--navy);cursor:pointer;transition:.25s var(--ease)}
.booking-modal .booking-close:hover{background:var(--navy);color:#fff;border-color:var(--navy);transform:rotate(90deg)}
.booking-modal .booking-close svg{width:18px;height:18px}
.booking-modal .booking-body{position:relative;display:grid;place-items:center;min-height:0;background:#f6f6f7}
.booking-modal .booking-body iframe{display:block;width:100%;height:100%;border:0;background:#fff}
.booking-modal .booking-body.is-loaded iframe{opacity:1}
.booking-modal.is-compact .booking-body{padding:16px;background:linear-gradient(180deg,#f6f6f7,#fff)}
.booking-modal.is-compact .booking-body iframe{max-width:470px;border-radius:14px;box-shadow:0 10px 30px rgba(0,23,60,.06)}
.booking-modal .booking-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 20px;padding:14px 26px;border-top:1px solid var(--line);color:var(--muted);font-size:13px;background:#fff}
.booking-modal .booking-foot b{color:var(--navy)}
.booking-modal .booking-foot a{color:var(--cta);font-weight:700}
.booking-modal .booking-foot a+a{margin-left:18px}
@keyframes bm-fade{from{opacity:0}}
@keyframes bm-rise{from{opacity:0;transform:translateY(28px) scale(.98)}}

/* Hero podstron — delikatny ruch pierścienia w tle */
.page-ui-v4:not(.page-index) .page-hero::after{animation:hero-ring 18s ease-in-out infinite alternate}
@keyframes hero-ring{to{transform:translate3d(-30px,-24px,0) scale(1.06)}}

@media (max-width:1100px){
  .booking-widget-card{grid-template-columns:minmax(0,1fr) 440px}
  .booking-widget-copy{padding:32px}
}
@media (max-width:900px){
  .page-ui-v4:not(.page-index) .section-head{grid-template-columns:1fr;gap:14px;align-items:start}
  .page-ui-v4:not(.page-index) .section-head>.btn,.page-ui-v4:not(.page-index) .section-head>.text-link{justify-self:start}
  .route-layout,.page-kontakt .form-layout{grid-template-columns:1fr}
  .booking-widget-card{grid-template-columns:1fr}
  .booking-widget-copy{border-right:0;border-bottom:1px solid var(--line)}
  .booking-widget-frame{padding:14px}
  .booking-widget-card.booking-widget-wide .booking-widget-frame iframe{height:720px}
  .partner-strip{grid-template-columns:repeat(2,1fr)}
  .booking-modal{padding:0}
  .booking-modal .booking-panel,.booking-modal.is-compact .booking-panel{width:100%;height:100dvh;border-radius:0}
  .booking-modal .booking-top{padding:14px 16px}
  .booking-modal .booking-top h2{white-space:normal;font-size:19px}
  .booking-modal .booking-foot{padding:12px 16px;font-size:12px}
  .booking-modal.is-compact .booking-body{padding:0}.booking-modal.is-compact .booking-body iframe{max-width:none;border-radius:0;box-shadow:none}
}
@media (max-width:700px){
  .route-card{grid-template-columns:46px 1fr;gap:14px;padding:18px}
  .route-card .ic{width:46px;height:46px}
  .gallery figure:first-child{border-radius:80px 16px 16px 16px}
  .booking-widget-frame iframe{height:560px}
  .booking-widget-copy .booking-phone{font-size:22px}
  .page-fizjoterapia .team-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px 13px}.page-fizjoterapia .doc>.ph{border-radius:72px 13px 13px 13px}.page-fizjoterapia .doc:nth-child(even)>.ph{border-radius:13px 13px 72px 13px}.page-fizjoterapia .doc h3{font-size:17px}.page-fizjoterapia .doc p{display:none}.page-fizjoterapia .doc-actions{display:grid}
  .tile-cta{padding:26px}
}

/* ========================================================================== */
/* DM Clinic V6 — organiczne hero i lżejsze szablony usług (06.09.2026)      */
/* ========================================================================== */

/* Zamiast skośnego cięcia hero — miękka, asymetryczna fala zbudowana z łuków. */
.hero-v3-edge{height:88px;overflow:hidden;background:transparent;clip-path:none}
.hero-v3-edge::before,.hero-v3-edge::after{content:"";position:absolute;background:var(--paper);pointer-events:none}
.hero-v3-edge::before{left:-15%;bottom:-82px;width:130%;height:154px;border-radius:50% 50% 0 0 / 100% 100% 0 0}
.hero-v3-edge::after{display:none}

/* Większe zdjęcie na hero stron specjalizacji i usług fizjoterapii. */
.page-ui-v4:not(.page-index) .page-hero.service-hero .container{min-height:610px;grid-template-columns:minmax(0,.94fr) minmax(440px,.86fr);gap:clamp(42px,5vw,76px)}
.page-ui-v4:not(.page-index) .page-hero.service-hero .subhero-media,
.page-ui-v4:not(.page-index) .page-hero.service-hero .container>.ph{min-height:500px;border-radius:185px 24px 24px 24px}

/* Pierwsze sekcje: krótkie wprowadzenie, najważniejsze elementy i reszta na żądanie. */
.service-intro{margin-bottom:20px}
.service-overview{width:100%;max-width:100%;min-width:0}
.service-overview>*{min-width:0}
.page-ui-v4:not(.page-index) .service-intro h2{max-width:720px;margin:10px 0 0}
.service-brief{margin-bottom:24px;padding:21px 24px;border-left:3px solid var(--cta);border-radius:0 18px 18px 0;background:linear-gradient(120deg,var(--cta-soft),rgba(255,255,255,.72))}
.page-ui-v4:not(.page-index) .service-brief>p{max-width:62ch;color:var(--navy);font-size:17px;line-height:1.65}
.service-list-block{padding:25px;border:1px solid rgba(0,23,60,.075);border-radius:22px;background:var(--cream);box-shadow:0 16px 42px rgba(0,23,60,.035)}
.service-list-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:17px}
.page-ui-v4:not(.page-index) .service-list-head h3{margin:0;font-size:22px}
.service-list-head span{max-width:250px;color:var(--muted);font-size:12px;line-height:1.45;text-align:right}
.mobile-scroll-hint{display:none}
.page-ui-v4:not(.page-index) .service-card-list{gap:12px;margin-top:0}
.page-ui-v4:not(.page-index) .service-card-list li{min-height:58px;align-items:center;padding:14px 16px;border:1px solid rgba(0,23,60,.075);border-radius:16px;background:#fff;box-shadow:0 9px 24px rgba(0,23,60,.035)}
.page-ui-v4:not(.page-index) .symptoms.service-card-list li{display:flex;padding-left:44px}
.page-ui-v4:not(.page-index) .symptoms.service-card-list li::before{left:18px;top:50%;width:10px;height:10px;transform:translateY(-50%)}
.page-ui-v4:not(.page-index) .check.service-card-list li::before{margin-top:0}
.care-highlight{margin-top:24px;padding:24px 26px;border:1px solid var(--copper-line);border-radius:20px;background:linear-gradient(135deg,rgba(252,191,152,.16),#fff 62%)}
.page-ui-v4:not(.page-index) .care-highlight h3{margin:0 0 7px;font-size:22px}
.page-ui-v4:not(.page-index) .care-highlight p{font-size:14.5px;line-height:1.7}
.page-ui-v4:not(.page-index) .service-steps{margin-top:0}

/* Adres jest wizualnie połączony z mapą. */
.route-address{display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:16px;align-items:center;padding:18px 20px;border:1px solid var(--line);border-bottom:0;border-radius:22px 22px 0 0;background:#fff;box-shadow:0 12px 35px rgba(0,23,60,.045)}
.route-address-icon{display:grid;width:52px;height:52px;place-items:center;border-radius:50%;background:var(--cta-soft);color:var(--cta)}
.route-address-icon svg{width:24px;height:24px}
.route-address span,.route-address strong,.route-address small{display:block}
.route-address>div:nth-child(2)>span{margin-bottom:3px;color:var(--copper);font-size:10px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}
.route-address strong{color:var(--navy);font-family:"DM Serif Display",serif;font-size:22px;font-weight:400;line-height:1.2}
.route-address small{margin-top:3px;color:var(--muted);font-size:12.5px}
.route-address-meta{display:flex;justify-content:flex-end;gap:7px;flex-wrap:wrap;max-width:180px}
.route-address-meta span{padding:6px 9px;border-radius:999px;background:var(--cream);color:var(--navy);font-size:10px;font-weight:600;white-space:nowrap}
.route-address+.map-embed-contact{border-radius:0 0 22px 22px}

@media (max-width:1100px){
  .page-ui-v4:not(.page-index) .page-hero.service-hero .container{grid-template-columns:minmax(0,1fr) minmax(390px,.82fr)}
}

@media (max-width:900px){
  .page-ui-v4:not(.page-index) .page-hero.service-hero .container{grid-template-columns:1fr;min-height:0}
  .page-ui-v4:not(.page-index) .page-hero.service-hero .subhero-media,
  .page-ui-v4:not(.page-index) .page-hero.service-hero .container>.ph{width:100%;min-height:480px}
}

@media (max-width:700px){
  .hero-v3-edge{height:54px}
  .hero-v3-edge::before{left:-25%;bottom:-52px;width:150%;height:88px}
  .page-ui-v4:not(.page-index) .page-hero.service-hero .subhero-media,
  .page-ui-v4:not(.page-index) .page-hero.service-hero .container>.ph{min-height:390px;border-radius:132px 18px 18px 18px}
  .service-intro{margin-bottom:16px}
  .page-ui-v4:not(.page-index) .service-intro h2{margin:8px 0 0;font-size:30px}
  .service-brief{margin-bottom:18px;padding:17px 18px}
  .page-ui-v4:not(.page-index) .service-brief>p{font-size:15px;line-height:1.62}
  .service-list-block{padding:18px}
  .service-list-head{display:block;margin-bottom:13px}
  .page-ui-v4:not(.page-index) .service-list-head h3{font-size:20px}
  .service-list-head span{display:block;margin-top:4px;text-align:left}
  .mobile-scroll-hint{display:block!important;margin:0 0 12px;color:var(--copper)!important;font-size:11px!important;font-weight:700;letter-spacing:.04em}
  .page-ui-v4:not(.page-index) .layout{grid-template-columns:minmax(0,1fr)}
  .page-ui-v4:not(.page-index) .prose{min-width:0}
  .page-ui-v4:not(.page-index) .service-card-list,
  .page-ui-v4:not(.page-index) .service-steps{display:grid;max-width:none;grid-auto-flow:column;grid-auto-columns:min(78vw,300px);grid-template-columns:none;grid-template-rows:repeat(2,minmax(72px,auto));gap:10px;overflow-x:auto;margin-right:0;padding:2px 15px 16px 0;scroll-padding-inline:15px;scroll-snap-type:x proximity;overscroll-behavior-inline:contain;scrollbar-width:none}
  .page-ui-v4:not(.page-index) .service-card-list{width:calc(100vw - 48px)}
  .page-ui-v4:not(.page-index) .service-steps{width:calc(100vw - 30px)}
  .page-ui-v4:not(.page-index) .service-card-list::-webkit-scrollbar,
  .page-ui-v4:not(.page-index) .service-steps::-webkit-scrollbar{display:none}
  .page-ui-v4:not(.page-index) .service-card-list li,
  .page-ui-v4:not(.page-index) .service-steps .step{height:100%;scroll-snap-align:start}
  .page-ui-v4:not(.page-index) .service-steps{grid-template-rows:1fr;grid-auto-columns:min(82vw,320px)}
  .care-highlight{padding:20px 18px}
  .route-address{grid-template-columns:44px minmax(0,1fr);padding:16px}
  .route-address-icon{width:44px;height:44px}
  .route-address strong{font-size:19px}
  .route-address-meta{grid-column:2;justify-content:flex-start;max-width:none}
}

/* V7 · katalogi specjalizacji i fizjoterapii, 06.09.2026 */
:root{--header-height:84px;--section-nav-height:58px;--copper-text:#8b593d}
.page-ui-v4:not(.page-index)>.section:not(.on-dark):not(.bg-navy) .eyebrow,
.page-ui-v4:not(.page-index) .prose .cat,
.page-ui-v4:not(.page-index) .prose .step .n{color:var(--copper-text)}
.page-ui-v4:not(.page-index) .role,.page-ui-v4:not(.page-index) .mobile-scroll-hint{color:var(--copper-text)!important}
.page-ui-v4:not(.page-index)>.section .tile-cta .eyebrow{color:var(--copper-light)}
html{scroll-padding-top:calc(var(--header-height) + var(--section-nav-height) + 24px)}
.page-ui-v4:not(.page-index) .page-hero.directory-hero .container{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);min-height:0;gap:64px;padding:46px 0 58px}
.page-ui-v4:not(.page-index) .page-hero.directory-hero h1{font-size:clamp(40px,4.15vw,60px);line-height:1.06;text-wrap:balance}
.page-ui-v4:not(.page-index) .page-hero.directory-hero .crumbs{margin-bottom:30px}
.page-ui-v4:not(.page-index) .page-hero.directory-hero .lead{max-width:55ch;font-size:16px;line-height:1.8}
.directory-hero-media{align-self:stretch;min-height:390px;border-radius:140px 22px 22px 22px}
.directory-hero-media::after{background:linear-gradient(0deg,rgba(0,17,44,.84),transparent 58%)}
.directory-hero-media figcaption{position:absolute;z-index:1;bottom:30px;left:30px;right:24px;color:#fff}
.directory-hero-media figcaption span,.directory-hero-media figcaption strong{display:block}
.directory-hero-media figcaption span{margin-bottom:5px;font-size:12px;color:rgba(255,255,255,.85)}
.directory-hero-media figcaption strong{font-family:"DM Serif Display",serif;font-size:24px;font-weight:400;line-height:1.2}
.page-ui-v4:not(.page-index) .physio-hero .hero-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:25px}
.page-ui-v4:not(.page-index) .physio-hero .hero-meta>div{min-width:0;padding:15px 18px}
.page-ui-v4:not(.page-index) .physio-hero .hero-meta small{font-size:11px}

.page-ui-v4:not(.page-index)>.directory-section,.page-ui-v4:not(.page-index)>.physio-services{padding:72px 0 80px}
.directory-tools{margin:0 0 30px;padding:24px 26px 20px;border:1px solid var(--line);border-radius:18px;background:#fff}
.directory-search-row{display:flex;align-items:flex-end;gap:32px;justify-content:space-between}
.directory-search{width:min(100%,640px)}
.directory-search label{display:block;margin-bottom:9px;color:var(--navy);font-size:13px;font-weight:600}
.directory-input{display:flex;align-items:center;gap:12px;min-height:54px;padding:0 15px;border:1px solid #b6bebd;border-radius:10px;background:#fff;transition:border-color .2s,box-shadow .2s}
.directory-input:focus-within{border-color:var(--cta);box-shadow:0 0 0 3px rgba(14,122,110,.12)}
.directory-input>svg{width:21px;height:21px;flex:none;color:var(--cta)}
.directory-input input{width:100%;min-width:0;padding:14px 0;border:0;background:transparent;outline:none;font:400 16px Inter,system-ui,sans-serif;color:var(--navy)}
.directory-input input::placeholder{color:#697586;opacity:1}
.directory-input input::-webkit-search-cancel-button{display:none}
.search-clear{flex:none;display:grid;place-items:center;width:40px;height:42px;border:0;border-radius:8px;background:var(--cream);color:var(--navy);font-size:25px;cursor:pointer}
.directory-count{padding-bottom:16px;white-space:nowrap;font-size:12px;color:var(--muted)}
.directory-filters{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.directory-filters button{min-height:42px;padding:9px 15px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--muted);font:500 12px Inter,system-ui,sans-serif;cursor:pointer;transition:color .2s,border-color .2s,background .2s}
.directory-filters button:hover{border-color:var(--cta);color:var(--cta)}
.directory-filters button[aria-pressed="true"]{background:var(--cta);border-color:var(--cta);color:#fff}
.page-ui-v4:not(.page-index) .directory-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.page-ui-v4:not(.page-index) .directory-card{border-radius:18px;box-shadow:none}
.page-ui-v4:not(.page-index) .directory-card:hover{transform:translateY(-4px);box-shadow:0 16px 36px rgba(0,23,60,.08)}
.directory-card .tile-media{display:block;aspect-ratio:16/9;flex:none}
.directory-card .tile-media img{width:100%;height:100%;object-fit:cover}
.page-ui-v4:not(.page-index) .directory-card .tile-body{padding:24px;gap:11px}
.directory-area{font:600 10px/1.5 Inter,system-ui,sans-serif;text-transform:uppercase;letter-spacing:.09em;color:#756050}
.page-ui-v4:not(.page-index) .directory-card h3{font-size:28px;line-height:1.13;overflow-wrap:break-word}
.directory-card h3 a:hover{color:var(--cta)}
.page-ui-v4:not(.page-index) .directory-card p{margin:0;font-size:14px;line-height:1.7;flex:1}
.directory-price{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding-top:18px;margin-top:4px;border-top:1px solid var(--line)}
.directory-price>span{font-size:11px;color:var(--muted)}
.directory-price strong{font-size:16px;font-weight:600;color:var(--navy)}
.directory-price .price-contact{font-size:13px}
.directory-actions{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:7px}
.directory-actions .btn{justify-content:center;min-height:44px;padding:10px 17px;font-size:12px;box-shadow:none}
.directory-actions .text-link{display:inline-flex;gap:8px;align-items:center;min-height:44px;font-size:12px;color:var(--cta);font-weight:600}
.directory-actions .text-link:hover{text-decoration:underline;text-underline-offset:4px}
.directory-empty{padding:40px 24px;text-align:center;border:1px dashed #bac6c4;border-radius:18px;background:#fff}
.directory-empty h3{font-size:28px}
.directory-empty p{max-width:52ch;margin:14px auto 20px;color:var(--muted);font-size:15px}
.directory-empty>div{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:20px}
.directory-help{display:flex;justify-content:space-between;align-items:center;gap:32px;margin-top:36px;padding:30px 34px;border:1px solid #cfdfdb;border-radius:18px;background:linear-gradient(110deg,#eaf4f1,#f8fbf9)}
.directory-help h3{margin-top:10px;font-size:28px}
.directory-help p{margin-top:8px;max-width:62ch;font-size:14px;color:var(--muted)}
.directory-help>.btn{flex-shrink:0;font-size:14px;box-shadow:none}
.page-ui-v4:not(.page-index)>.directory-coming{background:var(--cream)!important;padding:72px 0}
a.tile.tile-soon{cursor:pointer}
.path-more{display:block;margin-top:24px;font-size:13px;font-weight:600;color:var(--copper-light)}
.page-ui-v4:not(.page-index) .physio-grid h3{font-size:27px}
.page-ui-v4:not(.page-index)>.physio-team{background:var(--cream)!important}

/* Czytelne skróty do długich opisów, cen i przygotowania do wizyty. */
.section-nav{position:sticky;top:var(--header-height);z-index:40;border-bottom:1px solid var(--line);background:rgba(255,255,255,.97);backdrop-filter:blur(12px)}
.section-nav .container{display:flex;gap:32px;min-height:var(--section-nav-height);align-items:stretch;overflow-x:auto;scrollbar-width:thin;scrollbar-color:#b8cbc5 transparent}
.section-nav a{display:flex;position:relative;align-items:center;flex:none;padding:15px 0;color:var(--muted);font-size:13px;font-weight:500;white-space:nowrap}
.section-nav a:hover,.section-nav a[aria-current="location"]{color:var(--cta)}
.section-nav a[aria-current="location"]::after{content:"";position:absolute;inset:auto 0 0;height:3px;border-radius:3px;background:var(--cta)}
.page-ui-v4:not(.page-index) .page-hero.service-hero .container{padding-top:42px;padding-bottom:58px;gap:56px}
.page-ui-v4:not(.page-index) .page-hero.service-hero h1{font-size:clamp(40px,3.75vw,54px);line-height:1.07;overflow-wrap:break-word}
.page-ui-v4:not(.page-index) .page-hero.service-hero .eyebrow{margin-top:8px!important}
.page-ui-v4:not(.page-index) .page-hero.service-hero .lead{font-size:16px;line-height:1.75}
.page-ui-v4:not(.page-index) .page-hero.service-hero .hero-meta small{font-size:11px}
.page-ui-v4:not(.page-index):has(.section-nav) .aside{top:calc(var(--header-height) + var(--section-nav-height) + 24px)}
.page-ui-v4:not(.page-index) .service-list-block{padding:24px;background:#fbf9f6;box-shadow:none}
.page-ui-v4:not(.page-index) .service-card-list li{box-shadow:none;border-radius:10px;line-height:1.55}
.service-price-summary{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);margin:24px 0 18px;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff}
.service-price-summary>div{padding:24px}
.service-price-summary>div+div{border-left:1px solid var(--line)}
.service-price-summary span,.service-price-summary strong{display:block}
.service-price-summary span{font-size:13px;color:var(--muted)}
.service-price-summary strong{margin-top:8px;color:var(--navy);font:400 28px/1.2 "DM Serif Display",serif}

/* Jeden wybrany kalendarz; wszystkie pozostają dostępne bez JavaScript. */
.booking-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:24px}
.booking-tabs button{min-height:82px;padding:18px 22px;border:1px solid var(--line);border-radius:14px;background:#fff;text-align:left;color:var(--muted);font-family:Inter,system-ui,sans-serif;cursor:pointer}
.booking-tabs button strong,.booking-tabs button span{display:block}
.booking-tabs button strong{font-size:15px;font-weight:600}
.booking-tabs button span{margin-top:5px;font-size:12px}
.booking-tabs button[aria-selected="true"]{color:var(--cta-dark);border-color:var(--cta);background:var(--cta-soft);box-shadow:inset 0 0 0 1px var(--cta)}
.booking-tabs button:hover{border-color:var(--cta)}
.nav>li>a[aria-current],.mobile-menu-panel nav>a[aria-current]{color:var(--cta);background:var(--cta-soft)}
.nav .mega a[aria-current="page"]{color:var(--cta);background:var(--cta-soft)}
.skip-link{position:fixed;z-index:300;left:16px;top:12px;padding:12px 20px;border-radius:8px;background:var(--cta);color:white;transform:translateY(-200%);font-weight:600}
.skip-link:focus{transform:translateY(0)}
.foot-grid>div{min-width:0}
.footer a{overflow-wrap:anywhere}
.footer .social{flex-wrap:wrap}
.aside .card.navy::after{pointer-events:none}
.booking-modal:focus-visible{outline:none}
.page-ui-v4:not(.page-index) .prose{grid-template-columns:minmax(0,1fr)}
.page-ui-v4:not(.page-index) .prose>section{min-width:0}
.page-ui-v4:not(.page-index) .price-wrap{max-width:100%;overflow-x:auto;scrollbar-width:thin}
.page-ui-v4:not(.page-index) .doc-wide .body,.page-ui-v4:not(.page-index) .post-body{min-width:0}
.author-box>div:not(.ph){min-width:0;overflow-wrap:break-word}
.search input{min-width:0}

@media(max-width:1100px){
  .page-ui-v4:not(.page-index) .page-hero.directory-hero .container{gap:36px}
  .page-ui-v4:not(.page-index) .directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .directory-search-row{gap:20px}
  .directory-help{padding:26px}
  .section-nav .container{gap:24px}
}
@media(max-width:900px){
  .author-box{display:grid;grid-template-columns:64px minmax(0,1fr);gap:16px}
  .author-box .ph{width:64px;height:64px}
  .author-box>.btn{grid-column:2;justify-self:start;margin-left:0!important}
  .route-layout{grid-template-columns:minmax(0,1fr)}
  .route-media{min-width:0}
  .route-layout>div{min-width:0}
  .route-card{min-width:0;grid-template-columns:54px minmax(0,1fr)}
  .route-card>div{min-width:0}
  .page-ui-v4:not(.page-index) .route-card .text-link{white-space:normal;width:fit-content;max-width:100%}
  .page-diagnostyka .tiles{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .page-ui-v4:not(.page-index) .page-hero.directory-hero .container{grid-template-columns:1fr}
  .directory-hero-media{width:100%;min-height:360px}
  .directory-search-row{display:block}
  .directory-search{width:100%}
  .directory-count{padding:12px 0 0}
  .directory-help{align-items:flex-start;flex-direction:column;gap:20px}
  .booking-tabs{gap:8px}
  .booking-tabs button{padding:15px}
  .page-ui-v4:not(.page-index) .layout{grid-template-columns:minmax(0,1fr)}
  .page-ui-v4:not(.page-index):has(.section-nav) .aside{position:static}
}
@media(max-width:700px){
  :root{--header-height:72px;--section-nav-height:52px}
  .page-ui-v4:not(.page-index) .page-hero.directory-hero .container{gap:28px;padding:30px 0 40px}
  .page-ui-v4:not(.page-index) .page-hero.directory-hero h1{font-size:clamp(34px,9.5vw,42px)}
  .page-ui-v4:not(.page-index) .page-hero.directory-hero .crumbs{margin-bottom:24px}
  .page-ui-v4:not(.page-index) .page-hero.directory-hero .lead{font-size:15px;line-height:1.75}
  .page-ui-v4:not(.page-index) .page-hero.directory-hero .hero-actions{margin-top:24px}
  .directory-hero-media{min-height:280px;border-radius:95px 16px 16px 16px}
  .directory-hero-media figcaption{left:24px;bottom:24px}
  .directory-hero-media figcaption strong{font-size:22px}
  .page-specjalizacje .directory-hero-media{display:none}
  .page-ui-v4:not(.page-index) .physio-hero .hero-meta{grid-template-columns:repeat(3,minmax(0,1fr))}
  .page-ui-v4:not(.page-index) .physio-hero .hero-meta>div{padding:13px 10px;border:0!important}
  .page-ui-v4:not(.page-index) .physio-hero .hero-meta>div+div{border-left:1px solid rgba(255,255,255,.11)!important}
  .page-ui-v4:not(.page-index) .physio-hero .hero-meta strong{font-size:21px}
  .page-ui-v4:not(.page-index) .physio-hero .hero-meta small{font-size:10px;line-height:1.55}
  .page-ui-v4:not(.page-index)>.directory-section,.page-ui-v4:not(.page-index)>.physio-services,.page-ui-v4:not(.page-index)>.directory-coming{padding:48px 0}
  .directory-tools{padding:18px 16px;margin-bottom:24px}
  .directory-filters{gap:7px;margin-top:14px}
  .directory-filters button{padding:9px 12px;font-size:11px}
  .directory-input{padding:0 10px;gap:8px}
  .directory-search label{font-size:12px}
  .page-ui-v4:not(.page-index) .directory-grid{grid-template-columns:minmax(0,1fr);gap:20px}
  .page-ui-v4:not(.page-index) .directory-card .tile-body{padding:22px}
  .page-ui-v4:not(.page-index) .directory-card h3{font-size:27px}
  .page-specjalizacje.page-ui-v4 .directory-card{display:grid;grid-template-columns:90px minmax(0,1fr);gap:6px 16px;padding:18px}
  .page-specjalizacje.page-ui-v4 .directory-card .tile-body{display:contents}
  .page-specjalizacje .directory-card .tile-media{grid-column:1;grid-row:1/3;aspect-ratio:1;border-radius:12px;align-self:start}
  .page-specjalizacje .directory-card .directory-area{grid-column:2;align-self:end;font-size:9px}
  .page-specjalizacje.page-ui-v4 .directory-card h3{grid-column:2;align-self:start;font-size:25px}
  .page-specjalizacje.page-ui-v4 .directory-card p{grid-column:1/-1;padding-top:10px;font-size:13px}
  .page-specjalizacje .directory-price,.page-specjalizacje .directory-actions{grid-column:1/-1}
  .page-specjalizacje .directory-price{padding-top:12px;margin-top:8px}
  .directory-actions .btn{padding:10px 16px}
  .directory-help{padding:24px;margin-top:28px}
  .directory-help h3{font-size:26px}
  .directory-help>.btn{white-space:normal;justify-content:center;width:100%;font-size:13px}
  .directory-empty>div>.btn{white-space:normal}
  .section-nav .container{gap:24px}
  .section-nav a{font-size:12px;padding:13px 0}
  .page-ui-v4:not(.page-index) .page-hero.service-hero .container{padding:30px 0 42px;gap:32px}
  .page-ui-v4:not(.page-index) .page-hero.service-hero h1{font-size:clamp(32px,9.25vw,40px);line-height:1.08}
  .page-ui-v4:not(.page-index) .page-hero.service-hero .lead{font-size:15px}
  .page-ui-v4:not(.page-index) .page-hero.service-hero .hero-meta>div{padding:14px 16px}
  .page-ui-v4:not(.page-index) .page-hero.service-hero .hero-meta>div:last-child:nth-child(odd){grid-column:1/-1}
  .page-ui-v4:not(.page-index) .service-list-block{padding:18px}
  .page-ui-v4:not(.page-index) .service-card-list,.page-ui-v4:not(.page-index) .service-steps{width:100%;max-width:100%;grid-auto-columns:86%;padding:2px 2px 14px;scroll-padding-inline:2px;scrollbar-width:thin;scrollbar-color:#9fbab3 transparent}
  .page-ui-v4:not(.page-index) .service-card-list::-webkit-scrollbar,.page-ui-v4:not(.page-index) .service-steps::-webkit-scrollbar{display:block;height:4px}
  .page-ui-v4:not(.page-index) .service-card-list::-webkit-scrollbar-thumb,.page-ui-v4:not(.page-index) .service-steps::-webkit-scrollbar-thumb{background:#9fbab3;border-radius:4px}
  .service-price-summary{grid-template-columns:minmax(0,1fr)}
  .service-price-summary>div{padding:20px}
  .service-price-summary>div+div{border-left:0;border-top:1px solid var(--line)}
  .page-ui-v4:not(.page-index) .prose .tiles,.page-ui-v4:not(.page-index) .prose .blog-grid{grid-template-columns:minmax(0,1fr)!important}
  .page-ui-v4:not(.page-index) .prose .rev-top,.page-ui-v4:not(.page-index) .prose .quotes,.page-ui-v4:not(.page-index) .prose .spec-grid,.page-diagnostyka .tiles{grid-template-columns:minmax(0,1fr)!important}
  .page-specjalisci .team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .page-specjalisci .team-grid .doc{min-width:0}
  .page-specjalisci .team-grid>a .btn{white-space:normal;padding:10px 12px;font-size:12px;max-width:100%;text-align:center;justify-content:center}
  .route-card{grid-template-columns:46px minmax(0,1fr)}
  .page-ui-v4:not(.page-index) .prose .steps:not(.service-steps){grid-template-columns:minmax(0,1fr)}
  .page-ui-v4:not(.page-index) .price th,.page-ui-v4:not(.page-index) .price td{padding:12px 10px;font-size:13px}
  .page-ui-v4:not(.page-index) .price th{font-size:10px}
  .booking-tabs{grid-template-columns:minmax(0,1fr)}
  .booking-tabs button{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px}
  .booking-tabs button strong{font-size:13px}
  .booking-tabs button span{margin:0;font-size:11px;text-align:right}
  .page-fizjoterapia .team-grid{grid-template-columns:minmax(0,1fr);gap:34px}
  .page-fizjoterapia .team-grid .doc{display:grid;grid-template-columns:112px minmax(0,1fr);gap:18px;align-items:start}
  .page-fizjoterapia .doc>.ph{border-radius:40px 10px 10px 10px}
  .page-fizjoterapia .doc:nth-child(even)>.ph{border-radius:10px 10px 40px 10px}
  .page-fizjoterapia .doc-body{padding:4px 0 0}
  .page-fizjoterapia .doc h3{font-size:23px}
  .page-fizjoterapia .doc .role{font-size:10px}
  .page-fizjoterapia .doc p{display:block;font-size:12px;line-height:1.65}
  .page-fizjoterapia .doc-actions{display:flex;flex-wrap:wrap;gap:8px}
  .page-fizjoterapia .doc-actions .btn{min-height:42px;padding:9px 13px;font-size:11px}
  .foot-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 24px}
  .foot-grid>div:first-child{grid-column:1/-1}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}

/* Service introductions: topic disclosures + a readable, vertical visit path.
   Scoped to the first two sections; native details work without JavaScript. */
.care-discovery{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);grid-template-rows:min-content 1fr;column-gap:32px;align-items:start}
.page-ui-v4:not(.page-index) .care-overview .care-lead{margin:0 0 24px;color:var(--navy);font-size:16px;line-height:1.7}
.care-discovery>.care-lead{grid-column:1;grid-row:1}
.care-options{grid-column:2;grid-row:1/3;min-width:0}
.care-context{grid-column:1;grid-row:2;border-top:1px solid var(--line);padding-top:18px}
.page-ui-v4:not(.page-index) .care-context p{font-size:14px;line-height:1.75}
.page-ui-v4:not(.page-index) .care-context .care-important{color:var(--navy);font-weight:600;border-left:3px solid var(--cta);padding-left:14px}
.care-options-head{margin-bottom:14px}
.page-ui-v4:not(.page-index) .care-options-head h3{margin:0 0 4px;font:600 13px/1.45 Inter,sans-serif;color:var(--navy)}
.care-options-head>span{display:block;font-size:11px;line-height:1.5;color:var(--muted)}
.care-groups{display:grid;gap:10px}
.care-group{min-width:0;border:1px solid var(--line);border-radius:14px;background:#fff;transition:border-color .2s}
.care-group[open]{border-color:#a3c4bd;background:linear-gradient(135deg,#edf6f3,#fff 80%)}
.care-group>summary{display:grid;grid-template-columns:34px minmax(0,1fr) 24px;gap:12px;align-items:center;min-height:72px;padding:14px 16px;list-style:none;cursor:pointer;color:var(--navy)}
.care-group>summary::-webkit-details-marker{display:none}
.care-group>summary::marker{content:""}
.care-group>summary:hover .care-group-title{color:var(--cta)}
.care-group>summary:focus-visible{outline:3px solid var(--cta);outline-offset:3px;border-radius:12px}
.care-group-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--cta-soft);color:var(--cta)}
.care-group-icon svg{width:21px;height:21px}
.care-group-title{font-size:14px;font-weight:600;line-height:1.4}
.care-group-toggle{position:relative;display:block;width:24px;height:24px;border:1px solid #bfd3cd;border-radius:50%;color:var(--cta)}
.care-group-toggle::before,.care-group-toggle::after{content:"";position:absolute;top:10px;left:6px;width:10px;height:2px;background:currentColor}
.care-group-toggle::after{transform:rotate(90deg);transition:transform .2s}
.care-group[open] .care-group-toggle{background:var(--cta);border-color:var(--cta);color:#fff}
.care-group[open] .care-group-toggle::after{transform:rotate(0)}
.care-group-items{list-style:none;margin:0;padding:0 20px 18px 62px}
.care-group-items>li{position:relative;padding:9px 0 9px 15px;color:var(--navy);font-size:14px;line-height:1.6}
.care-group-items>li+li{border-top:1px solid rgba(0,23,60,.07)}
.care-group-items>li::before{content:"";position:absolute;left:0;top:18px;width:5px;height:5px;border-radius:50%;background:var(--cta)}
.care-timeline{list-style:none;margin:26px 0 30px;padding:0}
.care-stage{display:grid;grid-template-columns:48px minmax(0,1fr);position:relative;gap:22px;padding:0 0 28px}
.care-stage:not(:last-child)::before{content:"";position:absolute;left:23px;top:48px;bottom:0;width:1px;background:#b8d0c9}
.care-stage:last-child{padding-bottom:0}
.care-stage-number{position:relative;display:grid;place-items:center;width:48px;height:48px;border:1px solid #b8d0c9;border-radius:50%;background:#edf6f3;color:var(--cta);font:600 14px/1 Inter,sans-serif}
.care-stage:last-child .care-stage-number{color:#fff;background:var(--cta);border-color:var(--cta)}
.page-ui-v4:not(.page-index) .care-stage h3{margin:8px 0 8px;font-size:25px;line-height:1.2}
.page-ui-v4:not(.page-index) .care-stage p{font-size:15px;line-height:1.7;max-width:60ch}
.care-scope{padding-top:24px;border-top:1px solid var(--line)}
.care-scope .care-group>summary{min-height:64px}
.page-ui-v4:not(.page-index) .care-overview>.note{margin-top:28px}
@media(max-width:700px){
  .care-discovery{display:flex;flex-direction:column;gap:0}
  .care-options,.care-context{width:100%}
  .page-ui-v4:not(.page-index) .care-overview .care-lead{font-size:15px;line-height:1.65;margin-bottom:22px}
  .care-context{margin-top:22px;padding-top:18px}
  .page-ui-v4:not(.page-index) .care-context p{font-size:13px;line-height:1.7}
  .care-options-head{margin-bottom:12px}
  .care-group>summary{padding:13px 14px;gap:10px;min-height:68px}
  .care-group-items{padding:0 18px 14px 58px}
  .care-group-items>li{font-size:13px;padding-top:8px;padding-bottom:8px}
  .care-group-items>li::before{top:16px}
  .care-timeline{margin:22px 0 26px}
  .care-stage{grid-template-columns:40px minmax(0,1fr);gap:16px;padding-bottom:26px}
  .care-stage-number{width:40px;height:40px;font-size:12px}
  .care-stage:not(:last-child)::before{left:19px;top:40px}
  .page-ui-v4:not(.page-index) .care-stage h3{font-size:24px;margin:5px 0 8px}
  .page-ui-v4:not(.page-index) .care-stage p{font-size:14px;line-height:1.65}
  .page-ui-v4:not(.page-index) .care-overview .care-highlight{padding:22px;margin-top:24px}
}
@media print{
  .care-group::details-content{display:block!important;content-visibility:visible!important}
  .care-group>summary .care-group-toggle{display:none}
}

/* ========================================================================== */
/* DM Clinic V8 — feedback klienta z 07.09.2026 (usepastel 4glwnxro)          */
/* hybryda: typografia/kolory/kolejność z UI, układ wybranych sekcji z UX     */
/* ========================================================================== */

/* #8 mniejsze marginesy między sekcjami — cała strona */
.section{padding:72px 0}
.home-v3 .section-v3{padding:clamp(56px,6vw,84px) 0}
.home-v3 .section-intro{margin-bottom:40px}
.page-ui-v4:not(.page-index)>.section{padding:72px 0}
.page-ui-v4:not(.page-index) .section-head{margin-bottom:34px}
.promo-suite.section-v3{padding-top:28px!important}

/* #7 tekst nagłówków sekcji z lewej, w jednym miejscu */
.home-v3 .section-intro.single{grid-template-columns:1fr;gap:0;align-items:start}
.home-v3 .section-intro.single-with-action{grid-template-columns:minmax(0,1fr) auto;gap:32px;align-items:end}
.home-v3 .section-intro.single p,.home-v3 .section-intro.single-with-action p{max-width:72ch;margin-top:16px;font-size:16.5px;line-height:1.7}
.home-v3 .section-intro h2{max-width:900px}
.page-ui-v4:not(.page-index) .section-head{display:flex;flex-direction:column;align-items:flex-start;gap:16px}
.page-ui-v4:not(.page-index) .section-head .lead{margin-top:0;max-width:72ch}

/* HERO: #3 sam numer · #5 etykieta na jasnym tle · #2 większe zdjęcie wejścia */
.hero-note-label{display:grid;grid-template-columns:44px 1fr;gap:14px;align-items:center;max-width:560px;margin-top:22px;padding:14px 18px;border-radius:16px;background:rgba(255,255,255,.96);color:var(--navy);box-shadow:0 18px 44px rgba(0,0,0,.22);border:1px solid rgba(255,255,255,.6);transition:transform .25s var(--ease)}
.hero-note-label:hover{transform:translateY(-2px)}
.hero-note-icon{display:grid;width:44px;height:44px;place-items:center;border-radius:12px;background:#f8ece3;color:var(--copper)}
.hero-note-icon svg{width:20px;height:20px}
.hero-note-label b,.hero-note-label small{display:block}
.hero-note-label b{font-size:15px;line-height:1.3}
.hero-note-label small{margin-top:3px;color:var(--muted);font-size:12.5px;line-height:1.45}
.hero-photo-entrance{width:44%;height:272px;bottom:34px}
.hero-photo-entrance img{object-position:center 60%}
.hero-shortcuts{margin-top:30px}

/* #26 pasek partnerów (ukryty na start) */
.partners-bar{padding:18px 0;background:#fff;border-bottom:1px solid var(--line)}
.partners-bar .container{display:flex;flex-wrap:wrap;align-items:center;gap:14px 34px}
.partners-label{color:var(--muted);font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.partners-list{display:flex;flex-wrap:wrap;gap:10px 34px;align-items:center}
.partner-logo{display:inline-flex;align-items:center;min-height:34px;color:var(--navy);font-family:"DM Serif Display",serif;font-size:19px;letter-spacing:-.01em;opacity:.75}
.partner-logo img{height:34px;width:auto}

/* #46 etykieta rejestracji z UX pod hero */
.band-hero{position:relative;z-index:4;margin-top:-34px;padding-bottom:0}
.band-hero .band-inner{background:#fff;border-color:rgba(0,23,60,.08);box-shadow:0 30px 70px rgba(0,23,60,.14);padding:44px 54px}
.band-hero .band-inner h2{margin-top:14px;font-size:clamp(26px,2.8vw,38px);letter-spacing:-.02em}
.band-hero .band-inner p{font-size:15.5px}
.band-hero .band-actions .btn{min-width:240px}

/* #16–#25 kafle „Jak możemy Ci pomóc” — układ z UX (3 w linii) */
.care-finder{background:#fff}
.care-cards{gap:18px}
.care-cards .help-card{gap:14px;padding:30px 28px 26px;border-radius:22px;border-color:rgba(0,23,60,.1)}
.care-cards .help-card:hover{border-color:var(--copper-line);box-shadow:0 25px 55px rgba(0,23,60,.1)}
.care-cards .help-card .icon{width:64px;height:64px;border-radius:18px;background:linear-gradient(135deg,var(--cream),#f1e1d5)}
.care-cards .help-card .icon img{width:40px;height:40px}
.care-cards .help-card h3{font-size:24px;letter-spacing:-.015em}
.care-cards .help-card p{font-size:14.5px;line-height:1.65}
.care-cards .help-card ul li{font-size:12.5px;padding:5px 11px;border:1px solid var(--line);background:var(--paper)}
.care-cards .help-card ul li.soon{background:var(--cta-soft);color:var(--cta);border-color:transparent;font-weight:600}
.care-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;margin-top:6px;padding-top:16px;border-top:1px solid var(--line)}
.care-actions .btn{padding:11px 18px;font-size:14px}
.care-help{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px;margin-top:28px;padding:26px 32px;border-radius:22px;background:var(--cream);border:1px solid var(--line)}
.care-help strong{display:block;color:var(--navy);font-family:"DM Serif Display",serif;font-size:24px;font-weight:400;letter-spacing:-.01em}
.care-help span{display:block;margin-top:4px;color:var(--muted);font-size:15px}

/* #27–#33 Poznaj DM Clinic */
.story-collage-v8{min-height:640px;padding-bottom:70px}
.story-collage-v8 .story-photo-large{inset:0 16% 120px 0}
.story-collage-v8 .story-photo-large img{object-position:center top}
.story-collage-v8 .story-photo-small{bottom:56px}
.story-caption{position:absolute;left:0;bottom:0;display:block;padding:14px 20px;border-left:2px solid var(--copper);background:#fff;border-radius:0 14px 14px 0;box-shadow:var(--shadow-sm)}
.story-caption b,.story-caption span{display:block}
.story-caption b{color:var(--navy);font-family:"DM Serif Display",serif;font-size:19px;font-weight:400}
.story-caption span{margin-top:2px;color:var(--muted);font-size:12.5px}
.story-points-boxes{gap:12px;margin:30px 0 28px;border-top:0}
.story-points-boxes>div{grid-template-columns:40px 1fr;gap:14px;padding:18px 22px;border:1px solid var(--line);border-bottom:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 10px 30px rgba(0,23,60,.04)}
.story-points-boxes b{font-size:16px;font-family:"DM Serif Display",serif;font-weight:400;letter-spacing:-.01em}
.story-points-boxes small{margin-top:6px;font-size:13.5px;line-height:1.6}

/* #35–#37 Specjalizacje */
.specialty-copy small{font-size:8.5px;letter-spacing:.1em}
.specialties-footer-center{justify-content:center}

/* #39, #42 Ścieżki opieki — układ z UX, bez grafiki */
.pathways-v8 .section-intro{margin-bottom:40px}
.pathways-v8 .path-grid{gap:20px;align-items:stretch}
.pathways-v8 .path{display:flex;flex-direction:column;padding:30px 30px 28px;border-radius:22px}
.pathways-v8 .path h3{margin:12px 0 14px;font-size:26px;letter-spacing:-.015em}
.pathways-v8 .path-intro{margin:0 0 18px;color:rgba(255,255,255,.78);font-size:14.5px;line-height:1.65}
.pathways-v8 .path-sub{display:block;margin-bottom:6px;color:var(--copper-light);font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.pathways-v8 .path ol li{font-size:14px;padding:8px 0 8px 38px}
.pathways-v8 .path ol li::before{width:24px;height:24px;top:8px;font-size:11px}
.pathways-v8 .path ol li:not(:last-child)::after{left:11.5px;top:32px}
.pathways-v8 .path p{margin-top:16px;font-size:13.5px}
.pathways-v8 .path p b{color:#fff}
.pathways-v8 .path .btn.btn-primary{align-self:flex-start;margin-top:auto;padding:13px 22px}
.pathways-v8 .path p+.btn.btn-primary{margin-top:22px}

/* #47, #48, #61 Zajęcia — układ z UX (zdjęcie + granatowy panel), etykiety z grafikiem, bez cen */
.movement-v3{padding-top:0!important}
.movement-card{min-height:520px}
.movement-copy>p{max-width:56ch}
.sched-v8{grid-template-columns:1fr 1fr;gap:9px;margin:24px 0 26px;width:100%}
.sched-v8 a{display:flex;justify-content:space-between;gap:12px;padding:11px 14px;border:1px solid rgba(255,255,255,.14);border-radius:10px;background:rgba(255,255,255,.06);color:#fff;font-size:13.5px;font-weight:600;transition:background .25s,border-color .25s}
.sched-v8 a:hover{background:rgba(255,255,255,.12);border-color:var(--copper-light)}
.sched-v8 a span{color:var(--copper-light);font-size:12.5px;font-weight:500;white-space:nowrap}
.movement-actions{display:flex;flex-wrap:wrap;gap:12px}

/* #41, #43–#45 Zespół — buttony z UX */
.team-label{margin:-18px 0 26px;color:var(--copper);font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.doctor-v3 .doc-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.doctor-v3 .doc-actions .btn{padding:10px 14px;font-size:13.5px}
.doctor-v3 .doc-actions .btn-ghost{border-color:rgba(0,23,60,.18)}
.doctor-v3 p{min-height:0}
.team-footer{margin-top:30px;text-align:center}
.team-footer .text-link{margin:0 auto}

/* #49 Opinie — ocena zostaje, reszta z UX */
.trust-v8{display:grid;grid-template-columns:.7fr 1.3fr;gap:24px;align-items:stretch}
.trust-v8 .trust-score{display:flex;flex-direction:column;justify-content:center}
.quotes-v8{grid-template-columns:1fr 1fr;gap:18px}
.quotes-v8 .quote{padding:26px 26px 22px;border-radius:20px}
.quotes-v8 .quote p{font-size:14.5px;line-height:1.65}
.quotes-v8 .score.cta{border-radius:20px;padding:26px;gap:18px;flex-wrap:wrap}
.quotes-v8 .score.cta .btn{margin-left:auto;white-space:nowrap}

/* #50–#53 Baza wiedzy — 3 artykuły w linii, bez autorów, etykieta do słownika */
.blog-grid-v8{gap:20px}
.blog-grid-v8 .post{display:flex;flex-direction:column;border-radius:20px;border-color:rgba(0,23,60,.1)}
.blog-grid-v8 .post-media{aspect-ratio:16/10;overflow:hidden;margin:0;background:var(--cream)}
.blog-grid-v8 .post-media img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease)}
.blog-grid-v8 .post:hover .post-media img{transform:scale(1.04)}
.blog-grid-v8 .post-body{display:flex;flex:1;flex-direction:column;padding:22px 24px 24px}
.blog-grid-v8 .post h3{font-size:22px;letter-spacing:-.015em}
.blog-grid-v8 .post p{flex:1;font-size:14px;line-height:1.6}
.post-more{display:inline-block;margin-top:16px;color:var(--cta);font-size:13.5px;font-weight:700}
.knowledge-glossary{display:grid;grid-template-columns:auto 1fr 28px;gap:12px 28px;align-items:center;margin-top:22px;padding:22px 30px;border:1px solid var(--copper-line);border-radius:20px;background:linear-gradient(135deg,#fff,var(--cream));transition:transform .3s var(--ease),box-shadow .3s}
.knowledge-glossary:hover{transform:translateY(-3px);box-shadow:0 20px 50px rgba(0,23,60,.09)}
.knowledge-glossary b,.knowledge-glossary>div>span{display:block}
.knowledge-glossary b{color:var(--navy);font-family:"DM Serif Display",serif;font-size:21px;font-weight:400}
.knowledge-glossary>div>span{margin-top:3px;color:var(--muted);font-size:13.5px}
.knowledge-glossary i{color:var(--cta);font-size:22px;font-style:normal}

/* #54 FAQ — układ z UX */
.faq-v3.faq .faq-wrap{gap:56px}
.faq-v3.faq .faq-side h2{margin:14px 0 14px;font-size:clamp(34px,4vw,50px);letter-spacing:-.03em}
.faq-v3.faq .faq-side p{font-size:15px}
.faq-v3.faq summary{font-family:"DM Serif Display",serif;font-weight:400;font-size:20px;letter-spacing:-.01em}
.faq-v3.faq details p a{color:var(--cta);text-decoration:underline}

/* #55 Praca w DM Clinic — układ z UX, bez buttonów */
.careers-v8{background:var(--cream)}
.careers-v8 .inner{grid-template-columns:1.05fr .95fr;gap:56px}
.careers-v8 h2{margin:14px 0 16px;font-size:clamp(34px,4vw,50px);letter-spacing:-.03em}
.careers-v8 p{font-size:15.5px;line-height:1.7}
.careers-quiet{margin-top:14px;padding:14px 18px;border-left:2px solid var(--copper);background:#fff;border-radius:0 14px 14px 0}
.careers-quiet b{color:var(--navy)}
.careers-recruit{margin-top:24px}
.careers-recruit-label{display:block;margin-bottom:10px;color:var(--copper);font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.jobs-v8{margin:0;grid-template-columns:1fr 1fr}
.jobs-v8 .job{border-radius:14px}
.careers-contact{margin-top:20px;color:var(--navy)!important;font-weight:600}
.careers-contact a{color:var(--cta);text-decoration:underline}
.careers-visual{margin:0;overflow:hidden;border-radius:26px;box-shadow:0 30px 70px rgba(0,23,60,.14);border:1px solid var(--line)}
.careers-visual img{width:100%;height:auto;display:block}

/* #58 mapka w stopce */
.map-embed-footer{height:210px;margin-top:20px;border-radius:14px;border-color:rgba(255,255,255,.14);box-shadow:none}

/* Podstrony */
.page-cennik .aside .card.navy h3{font-size:28px}
.page-cennik .aside .card.navy p{font-size:16px}
.page-cennik .aside .card.navy .phone-big{font-size:30px!important}
.cennik-meta{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:22px;color:rgba(255,255,255,.8);font-size:14px}
.cennik-meta b{color:#fff}
.booking-channels{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:22px}
.booking-channel{display:flex;flex-direction:column;gap:12px;padding:26px 26px 24px;border:1px solid rgba(0,23,60,.1);border-radius:20px;background:#fff;box-shadow:0 15px 40px rgba(0,23,60,.045)}
.booking-channel .num{color:var(--copper);font-family:"DM Serif Display",serif;font-size:14px;letter-spacing:.1em}
.booking-channel h3{font-size:22px;letter-spacing:-.015em}
.booking-channel p{flex:1;color:var(--muted);font-size:14.5px}
.booking-channel .btn{align-self:flex-start}
.page-kontakt .contact-gallery{grid-template-columns:1fr 1fr;gap:16px;margin-top:18px}
.page-kontakt .contact-gallery figure{height:320px;border-radius:18px}
.page-kontakt .contact-gallery img{object-position:center 40%}
.page-kontakt .map-embed-contact{height:460px}
.page-zajecia .section-head .btn{margin-top:4px}

@media (max-width:1100px){
  .care-cards{grid-template-columns:repeat(2,1fr)}
  .trust-v8{grid-template-columns:1fr}
  .booking-channels{grid-template-columns:1fr 1fr}
}
@media (max-width:900px){
  .home-v3 .section-intro.single-with-action{grid-template-columns:1fr;gap:18px;align-items:start}
  .band-hero{margin-top:-20px}.band-hero .band-inner{grid-template-columns:1fr;padding:32px 26px}.band-hero .band-actions{align-items:flex-start}
  .hero-photo-entrance{width:44%;height:220px}
  .care-cards{grid-template-columns:1fr}
  .story-collage-v8{min-height:560px}
  .pathways-v8 .path-grid{grid-template-columns:1fr}
  .quotes-v8{grid-template-columns:1fr}
  .blog-grid-v8{grid-template-columns:1fr}
  .knowledge-glossary{grid-template-columns:1fr;gap:10px}.knowledge-glossary i{display:none}
  .faq-v3.faq .faq-wrap{grid-template-columns:1fr;gap:28px}.faq-v3.faq .faq-side{position:static}
  .careers-v8 .inner{grid-template-columns:1fr;gap:34px}.careers-visual{max-width:520px}
  .jobs-v8{grid-template-columns:1fr}
  .booking-channels{grid-template-columns:1fr}
  .page-kontakt .contact-gallery figure{height:240px}
}
@media (max-width:700px){
  .home-v3 .section-v3{padding:56px 0}
  .hero-note-label{max-width:none}
  .hero-photo-entrance{width:46%;height:170px;bottom:22px}
  .partners-bar .container{gap:10px 20px}
  .care-help{padding:22px}.care-help .btn{width:100%;justify-content:center}
  .story-collage-v8{min-height:470px;padding-bottom:64px}.story-collage-v8 .story-photo-large{inset:0 12% 110px 0}
  .story-points-boxes>div{grid-template-columns:32px 1fr;padding:16px}
  .sched-v8{grid-template-columns:1fr}
  .movement-actions{width:100%}.movement-actions .btn{flex:1;justify-content:center}
  .page-kontakt .contact-gallery{grid-template-columns:1fr}.page-kontakt .contact-gallery figure{height:220px}
}

/* V8 poprawki po QA */
.nav{gap:0}
.nav>li>a{white-space:nowrap;padding:10px 11px;font-size:14.5px}
.header .container{gap:18px}
@media (max-width:1260px){.nav>li>a{padding:10px 8px;font-size:13.5px}.header-cta .btn{padding:12px 16px;font-size:14px}}
.care-cards .help-card p{flex:0 0 auto}
.care-cards .help-card ul{margin-top:2px}
.care-actions{margin-top:auto}
.sched-v8{grid-template-columns:1fr;gap:8px}
.sched-v8 a{padding:10px 14px}
.kv b{white-space:nowrap}

/* V8.1 — poprawki po review Pawła (08.09) */
/* paddingi: hero → etykieta → nowości → kafle */
.hero-v3-grid{padding:76px 0 128px}
.band-hero{margin-top:-30px}
.promo-suite.section-v3{padding-top:76px!important;padding-bottom:0!important}
.home-v3 .section-intro.single h2,.home-v3 .section-intro.single-with-action h2{font-size:clamp(36px,4vw,56px)}
.promo-card-list h3{font-size:clamp(24px,2.4vw,34px);line-height:1.15;max-width:560px}
/* kafle „Jak możemy Ci pomóc” — 1:1 z UX (etykiety jako kremowe pigułki, ikona na granacie) */
.care-cards .help-card{gap:16px;padding:32px;border-radius:var(--radius);border-color:var(--line)}
.care-cards .help-card:hover{box-shadow:var(--shadow);border-color:transparent}
.care-cards .help-card .icon{width:72px;height:72px;border-radius:20px;background:var(--navy)}
.care-cards .help-card .icon img{width:46px;height:46px}
.care-cards .help-card p{font-size:15px;line-height:1.6}
.care-cards .help-card ul{display:flex;flex-wrap:wrap;gap:6px;margin:0}
.care-cards .help-card ul li{position:static;padding:4px 10px;border:0;border-radius:999px;background:var(--cream);color:var(--navy);font-size:12.5px;line-height:1.5}
.care-cards .help-card ul li::before{display:none}
.care-cards .help-card ul li.soon{background:var(--cta-soft);color:var(--cta)}
.care-actions{padding-top:18px}
/* ścieżki opieki — jasne tło (sekcja wyżej jest granatowa) */
.pathways-light{background:var(--cream)}
.pathways-light .path{background:#fff;border:1px solid var(--line);backdrop-filter:none;box-shadow:0 12px 35px rgba(0,23,60,.04)}
.pathways-light .path .tag{color:var(--copper)}
.pathways-light .path h3{color:var(--navy)}
.pathways-light .path-intro{color:var(--muted)}
.pathways-light .path-sub{color:var(--copper)}
.pathways-light .path ol li{color:var(--ink)}
.pathways-light .path ol li::before{color:var(--navy)}
.pathways-light .path ol li:not(:last-child)::after{background:linear-gradient(rgba(178,123,88,.5),rgba(178,123,88,.1))}
.pathways-light .path p{color:var(--muted)}
.pathways-light .path p b{color:var(--navy)}
/* zajęcia — sekcja z normalnym paddingiem, mniejszy nagłówek w wąskim panelu */
.home-v3 .movement-v3.section-v3{padding:clamp(56px,6vw,84px) 0!important;background:#fff}
.movement-copy h2{font-size:clamp(30px,3.1vw,42px);margin:14px 0 16px}
.movement-copy h2 em{display:inline}
@media (max-width:700px){.hero-v3-grid{padding:55px 0 110px}.promo-suite.section-v3{padding-top:56px!important}}

/* V8.2 — etykieta rejestracji nie nachodzi na hero, większy odstęp */
.band-hero{margin-top:64px}
.hero-v3-grid{padding-bottom:110px}
@media (max-width:900px){.band-hero{margin-top:44px}}

/* V8.3 — oba zdjęcia hero +20% */
.hero-v3-grid{grid-template-columns:minmax(0,.86fr) minmax(520px,1.14fr);gap:56px}
.hero-v3-visual{min-height:680px}
.hero-photo-main{inset:0 0 0 12%}
.hero-photo-entrance{width:50%;height:326px;bottom:30px}
@media (max-width:1180px){.hero-v3-grid{grid-template-columns:.85fr 1.15fr}.hero-v3-visual{min-height:600px}.hero-photo-entrance{width:48%;height:280px}}
@media (max-width:900px){.hero-v3-visual{min-height:600px;max-width:720px}.hero-photo-main{left:10%}.hero-photo-entrance{width:48%;height:260px}}
@media (max-width:700px){.hero-v3-visual{min-height:460px}.hero-photo-main{inset:0 0 0 6%}.hero-photo-entrance{width:50%;height:200px;bottom:20px}}

/* V8.4 — zdjęcie Dariusza (pion 613×1279): kadr na twarz i tułów */
.story-collage-v8 .story-photo-large img{object-position:center 18%}

/* V8.5 — logo w nagłówku: element flex nie może się kurczyć (po dodaniu „Medycyna estetyczna” do menu logo było ściskane) */
.header .logo{flex:0 0 auto;display:block}
.header .logo img{height:60px;width:auto;max-width:none}
@media (max-width:1260px){.header .logo img{height:52px}}
@media (max-width:820px){.header .logo img{height:46px}}

/* V8.5b — nagłówek na węższych ekranach: chowamy „Zadzwoń” (numer jest w topbarze), ciaśniejsze menu */
@media (max-width:1340px){.header-cta .btn-ghost{display:none}}
@media (max-width:1100px){.nav>li>a{padding:9px 6px;font-size:13px}.header .logo img{height:46px}.header-cta .btn-primary{padding:11px 14px;font-size:13.5px}}
@media (max-width:960px){.nav>li>a{padding:8px 5px;font-size:12.5px}}

/* V8.5c — poniżej 1000 px menu chowa się do burgera (7 pozycji się nie mieści), topbar bez godzin */
@media (max-width:1000px){.nav{display:none}.mobile-menu{display:block}.mobile-menu .burger{display:flex}.header-cta>.burger{display:none}.topbar ul li:first-child{display:none}.header .logo img{height:52px}}

/* V8.6 — bez etykiety rejestracji pod hero (zostaje etykieta w hero); normalny odstęp do „Nowości” */
.promo-suite.section-v3{padding-top:clamp(56px,6vw,84px)!important}

/* V8.7 — jeszcze mniejsze odstępy między sekcjami */
.section{padding:60px 0}
.home-v3 .section-v3{padding:clamp(44px,4.6vw,64px) 0}
.home-v3 .movement-v3.section-v3{padding:clamp(44px,4.6vw,64px) 0!important}
.promo-suite.section-v3{padding-top:clamp(44px,4.6vw,64px)!important}
.home-v3 .section-intro{margin-bottom:32px}
.page-ui-v4:not(.page-index)>.section{padding:60px 0}
.page-ui-v4:not(.page-index) .section-head{margin-bottom:28px}
.page-ui-v4:not(.page-index) .prose>section{padding:42px 0}
@media (max-width:700px){.home-v3 .section-v3{padding:44px 0}.page-ui-v4:not(.page-index)>.section{padding:52px 0}}

/* V8.7 — cennik wg Excela klienta (09.09): wiersze podgrup (specjalizacja) w tabeli cen */
.price tr.group td{background:var(--cream);color:var(--navy);font-weight:600;font-size:13px;letter-spacing:.04em;padding:10px 18px;text-align:left}
.price tr.group:not(:first-child) td{border-top:1px solid var(--line)}
.price-note{font-size:14px;color:var(--muted);margin-top:12px}
.price-note a{color:var(--cta);text-decoration:underline}
@media (max-width:640px){.price tr.group td{padding:9px 10px;font-size:12px}}

/* WP fix (09.09): .ph.has-img{width:100%} z v8 nadpisywało okrągłe miniatury w kartach „Kto pomoże” i autora */
.who-helps .ph.has-img{width:72px;height:72px}
.author-box .ph.has-img{width:80px;height:80px}
@media (max-width:640px){.author-box .ph.has-img{width:64px;height:64px}}

/* V8.5 (14.09) — POPRAWKA RWD HERO NA STRONIE GŁÓWNEJ.
   Blok „V8.3 — oba zdjęcia hero +20%" (wyżej) ustawia hero na 2 kolumny w regule
   @media (max-width:1180px). Ta reguła stoi w arkuszu PO oryginalnej @media (max-width:900px)
   { .hero-v3-grid{grid-template-columns:1fr} }, więc przy równej specyficzności ją nadpisywała
   i poniżej 900 px hero zostawało dwukolumnowe. Kolumna tekstu miała wtedy ~36% szerokości
   (129 px przy viewporcie 390 px), przez co nagłówek 48 px łamał się w środku wyrazów
   („Zdrow / ie / całej / rodzin / y"). Poniżej przywracamy układ jednokolumnowy. */
@media (max-width:900px){
  .hero-v3-grid{grid-template-columns:1fr;gap:38px}
}
@media (max-width:700px){
  .hero-v3-grid{gap:28px}
}
