:root{
    --ground:#FBF7F1;
    --ground-2:#F3E8D8;
    --surface:#FFFDF9;
    --line:#E3D6C2;
    --ink:#443428;
    --ink-soft:#6E5947;
    --ink-faint:#8D7963;
    --gold:#A37A3A;
    --gold-light:#C9A461;
    --gold-line:#CBAE78;
    --orange:#D55B21;
    --shadow:0 18px 44px rgba(90,66,40,.13);
    --shadow-sm:0 6px 18px rgba(90,66,40,.10);
  }
  @media (prefers-color-scheme: dark){
    :root:not([data-theme="light"]){
      --ground:#1C1611;
      --ground-2:#241C15;
      --surface:#2A211A;
      --line:#463829;
      --ink:#F2E7D8;
      --ink-soft:#D6C5B0;
      --ink-faint:#AC9781;
      --gold:#D9B879;
      --gold-light:#E7CE9B;
      --gold-line:#7C6337;
      --orange:#E8763C;
      --shadow:0 18px 44px rgba(0,0,0,.45);
      --shadow-sm:0 6px 18px rgba(0,0,0,.35);
    }
  }
  :root[data-theme="dark"]{
    --ground:#1C1611;
    --ground-2:#241C15;
    --surface:#2A211A;
    --line:#463829;
    --ink:#F2E7D8;
    --ink-soft:#D6C5B0;
    --ink-faint:#AC9781;
    --gold:#D9B879;
    --gold-light:#E7CE9B;
    --gold-line:#7C6337;
    --orange:#E8763C;
    --shadow:0 18px 44px rgba(0,0,0,.45);
    --shadow-sm:0 6px 18px rgba(0,0,0,.35);
  }

  *{box-sizing:border-box}
  html{scroll-behavior:smooth}
  @media (prefers-reduced-motion: reduce){ html{scroll-behavior:auto} *{transition:none!important} }

  body{
    margin:0;
    background:var(--ground);
    color:var(--ink);
    font-family:"Lora",Georgia,"Times New Roman",serif;
    font-size:17px;
    line-height:1.72;
    -webkit-font-smoothing:antialiased;
  }

  .wrap{width:100%;max-width:1040px;margin-inline:auto;padding-inline:20px}

  /* ---------- pasek gorny ---------- */
  .bar{
    position:sticky;top:env(safe-area-inset-top,0px);z-index:20;
    background:var(--ground);
    background:color-mix(in srgb, var(--ground) 88%, transparent);
    backdrop-filter:blur(10px);
    border-bottom:1px solid var(--line);
  }
  .bar-in{display:flex;align-items:center;justify-content:space-between;gap:14px;
    padding-block:11px;flex-wrap:wrap}
  .bar-name{font-family:"Poppins",system-ui,sans-serif;font-size:12px;letter-spacing:.20em;
    text-transform:uppercase;color:var(--gold);font-weight:500;white-space:nowrap}
  .bar-nav{display:flex;gap:18px}
  .bar-nav a{font-family:"Poppins",system-ui,sans-serif;font-size:13px;color:var(--ink-soft);
    text-decoration:none;border-bottom:1px solid transparent;padding-bottom:2px}
  .bar-nav a:hover,.bar-nav a:focus-visible{color:var(--orange);border-bottom-color:var(--orange)}

  /* ---------- wspolne ---------- */
  section{padding-block:clamp(52px,7vw,84px)}
  .eyebrow{font-family:"Poppins",system-ui,sans-serif;font-size:11.5px;letter-spacing:.24em;
    text-transform:uppercase;color:var(--ink-faint);margin:0 0 14px}
  h2{font-family:"Lora",Georgia,serif;font-weight:500;font-size:clamp(25px,3.4vw,33px);
    line-height:1.28;margin:0 0 6px;text-wrap:balance;color:var(--ink)}
  h3{font-family:"Lora",Georgia,serif;font-weight:600;font-size:20px;margin:0 0 6px;color:var(--ink)}
  p{margin:0 0 16px;max-width:62ch}

  .orn{display:flex;align-items:center;gap:11px;margin:20px 0}
  .orn::before,.orn::after{content:"";height:1px;background:var(--gold-line);flex:0 0 auto;width:clamp(48px,14vw,104px)}
  .orn i{width:9px;height:9px;background:var(--orange);transform:rotate(45deg);flex:0 0 auto}
  .orn.center{justify-content:center}

  .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;
    font-family:"Poppins",system-ui,sans-serif;font-size:14px;letter-spacing:.06em;
    padding:13px 26px;border-radius:2px;text-decoration:none;cursor:pointer;border:1px solid transparent;
    transition:background .18s ease,color .18s ease,border-color .18s ease}
  .btn-main{background:var(--gold);color:#FFF9EF;border-color:var(--gold)}
  .btn-main:hover,.btn-main:focus-visible{background:var(--orange);border-color:var(--orange)}
  .btn-ghost{background:transparent;color:var(--ink-soft);border-color:var(--gold-line)}
  .btn-ghost:hover,.btn-ghost:focus-visible{color:var(--orange);border-color:var(--orange)}
  a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{
    outline:2px solid var(--orange);outline-offset:3px}

  /* ---------- hero ---------- */
  .hero{display:grid;gap:clamp(26px,4vw,48px);align-items:center;
    padding-block:clamp(34px,5vw,64px) clamp(46px,6vw,76px)}
  .hero-photo{position:relative;isolation:isolate;max-width:220px;margin-inline:auto}
  .hero-photo img{display:block;width:100%;height:auto;max-width:100%;border-radius:2px;box-shadow:var(--shadow);position:relative;z-index:1}
  .hero-photo::after{content:"";position:absolute;inset:16px -16px -16px 16px;border:1px solid var(--gold-line);
    border-radius:2px;z-index:0}
  @media (min-width:820px){ .hero-photo{max-width:260px;margin-inline:0} }
  .script{font-family:"Great Vibes",cursive;font-weight:400;
    font-size:clamp(48px,9vw,74px);line-height:1.06;margin:0;
    color:var(--gold);text-wrap:balance}
  .role{font-family:"Poppins",system-ui,sans-serif;font-size:12.5px;letter-spacing:.26em;
    text-transform:uppercase;color:var(--gold);margin:12px 0 0;font-weight:500}
  .lead{font-size:clamp(18px,2.2vw,20px);line-height:1.66;color:var(--ink-soft);font-style:italic}
  .hero-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}

  @media (min-width:820px){
    .hero{grid-template-columns:1.06fr .94fr}
    .hero-text{order:1}
    .hero-photo{order:2}
  }

  /* ---------- o mnie ---------- */
  .about{background:var(--ground-2)}
  .about-text{max-width:66ch}

  /* ---------- szkolenia ---------- */
  .cards{display:grid;gap:18px;margin-top:30px}
  @media (min-width:700px){ .cards{grid-template-columns:1fr 1fr} }
  .card{background:var(--surface);border:1px solid var(--line);border-radius:2px;
    overflow:hidden;display:flex;flex-direction:column}
  .card-photo{aspect-ratio:16/10;overflow:hidden}
  .card-photo img{display:block;width:100%;height:100%;object-fit:cover}
  .card-body{padding:22px 24px 24px;display:flex;flex-direction:column;gap:2px;flex:1}
  .card .num{font-family:"Poppins",system-ui,sans-serif;font-size:11px;letter-spacing:.2em;
    text-transform:uppercase;color:var(--orange);margin-bottom:10px}
  .card p{font-size:16px;color:var(--ink-soft);margin:0 0 14px}
  .tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:auto;padding:0;list-style:none}
  .tags li{font-family:"Poppins",system-ui,sans-serif;font-size:11.5px;letter-spacing:.05em;
    color:var(--ink-faint);border:1px solid var(--line);border-radius:999px;padding:4px 11px}
  .note{font-size:15px;color:var(--ink-faint);font-style:italic;margin-top:22px}

  /* ---------- zgloszenie ---------- */
  .form-wrap{background:var(--ground-2)}
  form{background:var(--surface);border:1px solid var(--line);border-radius:2px;
    padding:clamp(22px,4vw,34px);margin-top:26px;max-width:640px}
  .field{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}
  label{font-family:"Poppins",system-ui,sans-serif;font-size:12px;letter-spacing:.12em;
    text-transform:uppercase;color:var(--ink-faint)}
  input,select,textarea{font-family:"Lora",Georgia,serif;font-size:16px;color:var(--ink);
    background:var(--ground);border:1px solid var(--line);border-radius:2px;padding:11px 13px;width:100%}
  textarea{resize:vertical;min-height:88px}
  .err{color:var(--orange);font-family:"Poppins",system-ui,sans-serif;font-size:12.5px}
  .hp{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
  .form-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:6px}
  .status{font-family:"Poppins",system-ui,sans-serif;font-size:13.5px;color:var(--ink-soft);
    margin-top:14px;min-height:20px}

  /* ---------- stopka ---------- */
  footer{background:var(--ground);border-top:1px solid var(--line);padding-block:48px 34px}
  .foot-primary h4{font-family:"Lora",Georgia,serif;font-weight:600;font-size:19px;margin:0 0 4px;color:var(--ink)}
  .foot-primary .role-sm{font-family:"Poppins",system-ui,sans-serif;font-size:11.5px;letter-spacing:.2em;
    text-transform:uppercase;color:var(--gold);margin:0 0 18px}
  .foot-contact{display:flex;flex-wrap:wrap;gap:12px 28px;margin-top:6px}
  .foot-contact a{font-family:"Poppins",system-ui,sans-serif;font-size:15px;color:var(--ink);
    text-decoration:none;border-bottom:1px solid var(--gold-line);padding-bottom:2px}
  .foot-contact a:hover,.foot-contact a:focus-visible{color:var(--orange);border-bottom-color:var(--orange)}
  .foot-div{margin:38px 0 26px;border:0;border-top:1px solid var(--line)}
  .foot-clinic{display:flex;align-items:center;gap:20px;flex-wrap:wrap}
  .foot-logo{width:min(150px,40vw);height:auto;display:block;flex:0 0 auto;opacity:.92}
  .foot-clinic-text h4{font-family:"Poppins",system-ui,sans-serif;font-size:11px;letter-spacing:.18em;
    text-transform:uppercase;color:var(--ink-faint);margin:0 0 8px;font-weight:500}
  .foot-clinic-text p{margin:0 0 4px;font-size:14.5px;color:var(--ink-faint)}
  .foot-clinic-text a{color:var(--ink-faint);text-decoration:none;border-bottom:1px solid transparent}
  .foot-clinic-text a:hover,.foot-clinic-text a:focus-visible{color:var(--orange);border-bottom-color:var(--orange)}
  .copy{margin-top:30px;padding-top:18px;border-top:1px solid var(--line);
    font-family:"Poppins",system-ui,sans-serif;font-size:12px;color:var(--ink-faint)}
