:root{
  --navy:#1e2a4a; --navy-700:#172038; --gold:#e8b33d; --gold-600:#d39f2c;
  --ink:#1c2333; --muted:#5b6478; --bg:#ffffff; --bg-tint:#eef1f6; --line:#e2e6ee;
  --radius:12px; --maxw:1080px;
  --serif:'Lora',Georgia,serif; --sans:'Inter',system-ui,Arial,sans-serif;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--sans);color:var(--ink);background:var(--bg);line-height:1.55}
.container{max-width:var(--maxw);margin:0 auto;padding:0 20px}
.container--narrow{max-width:720px}
h1,h2,h3{font-family:var(--serif);font-weight:600;line-height:1.18;margin:0 0 .4em}
h1{font-size:clamp(1.9rem,4.5vw,3rem);color:var(--navy)}
h2{font-size:clamp(1.5rem,3.2vw,2.1rem);color:var(--navy)}
h3{font-size:1.15rem;color:var(--navy)}
p{margin:0 0 1em}
a{color:inherit}
svg{width:1.15em;height:1.15em;vertical-align:-.15em}

/* Header */
.site-header{border-bottom:1px solid var(--line);background:var(--bg)}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:14px;padding-bottom:14px}
.wordmark{font-family:var(--serif);font-weight:600;font-size:1.18rem;color:var(--navy);text-decoration:none}
.wordmark .tld{color:var(--gold)}

/* Buttons */
.btn{display:inline-flex;align-items:center;gap:.5em;border:0;border-radius:10px;
  font-family:var(--sans);font-weight:700;text-decoration:none;cursor:pointer;white-space:nowrap;
  padding:.62em 1.15em;font-size:.98rem;line-height:1;transition:background .15s,transform .05s}
.btn-cta{background:var(--gold);color:var(--navy)}
.btn-cta:hover{background:var(--gold-600)}
.btn-cta:active{transform:translateY(1px)}
.btn-lg{padding:.85em 1.6em;font-size:1.08rem}

/* Hero */
.hero{padding:clamp(40px,8vw,86px) 0 clamp(28px,5vw,56px);background:
  radial-gradient(120% 90% at 50% -10%,var(--bg-tint),var(--bg))}
.hero .container{text-align:center;max-width:760px}
.eyebrow{font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-600);font-weight:700;margin:0 0 .8em}
.eyebrow.center{text-align:center}
.hero-sub{font-size:1.12rem;color:var(--muted);max-width:34em;margin:0 auto 1.6em}
.hero-cta{display:flex;flex-direction:column;align-items:center;gap:.7em;margin-bottom:1.8em}
.hero-tel{font-weight:700;color:var(--navy);text-decoration:none;font-size:1.05rem}
.hero-tel:hover{text-decoration:underline}
.badges{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:.6em 1.4em;padding:0;margin:0;color:var(--navy)}
.badges li{display:inline-flex;align-items:center;gap:.4em;font-weight:600;font-size:.95rem}
.badges svg{color:var(--gold-600)}

/* Sections */
.section{padding:clamp(40px,7vw,72px) 0}
.steps-section{background:var(--bg-tint)}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:14px}
.step{background:var(--bg);border:1px solid var(--line);border-radius:var(--radius);padding:22px;text-align:center}
.step-ic{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:50%;
  background:var(--navy);color:var(--gold);margin-bottom:10px}
.step-ic svg{width:22px;height:22px}
.step p{color:var(--muted);margin:0}

/* CTA band */
.cta-section .container{display:flex;justify-content:center}
.cta-band{background:var(--navy);color:#fff;border-radius:18px;padding:clamp(28px,5vw,48px);text-align:center;width:100%;max-width:760px}
.cta-band h2{color:#fff}
.cta-band p{color:#c3cbe0;margin-bottom:1.4em}
.cta-band .hero-tel{color:#fff;display:block;margin-top:.7em}

/* Footer */
.site-footer{border-top:1px solid var(--line);padding:22px 0;text-align:center}
.site-footer a{color:var(--muted);text-decoration:none;font-size:.92rem}
.site-footer a:hover{text-decoration:underline}

/* Legal */
.legal{font-size:.98rem}
.legal h1{margin-bottom:.5em}
.legal h2{margin-top:1.5em;font-size:1.25rem}
.legal ul{padding-left:1.2em;margin:0 0 1em}
.legal li{margin-bottom:.35em}
.legal-meta{color:var(--muted);font-size:.92rem;border-bottom:1px solid var(--line);padding-bottom:1em;margin-bottom:1.4em}

/* Rejestracja online — kontener widgetu MedFile */
.booking-embed{max-width:760px;margin:0 auto;min-height:480px}
.booking-embed iframe{width:100%;border:0;display:block}
.booking-tel{text-align:center;color:var(--muted);margin:1.2em auto 0;max-width:760px}
.booking-tel a{color:var(--navy);font-weight:700;text-decoration:none}
.booking-tel a:hover{text-decoration:underline}

@media(max-width:720px){
  .steps{grid-template-columns:1fr}
}

/* Nagłówkowy przycisk CTA — kompaktowy na małych ekranach (nie łamie się) */
@media(max-width:560px){
  .header-inner{gap:10px}
  .wordmark{font-size:1.04rem}
  .nav-cta{padding:.55em .85em;font-size:.9rem;gap:.35em}
  .nav-cta-extra{display:none}
}
