body.medical-page { color: var(--white); background: var(--navy); }
.medical-page .primary-navigation a[aria-current="page"] { color: var(--gold-light); }

.medical-hero {
  position: relative;
  min-height: min(820px, 82svh);
  display: flex;
  align-items: center;
  overflow: hidden;
  background:
    radial-gradient(circle at 78% 42%, rgba(72,153,205,.22), transparent 25%),
    radial-gradient(circle at 62% 20%, rgba(196,160,94,.13), transparent 28%),
    linear-gradient(145deg, #061a2d 0%, #0b2c48 52%, #071b2f 100%);
}
.medical-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: .17;
  background-image: linear-gradient(rgba(255,255,255,.08) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.08) 1px, transparent 1px);
  background-size: 54px 54px;
  mask-image: linear-gradient(to left, #000, transparent 75%);
}
.medical-hero-layout {
  position: relative;
  z-index: 1;
  width: 100%;
  display: grid;
  grid-template-columns: minmax(0, 1.18fr) minmax(300px, .82fr);
  gap: clamp(2rem, 6vw, 6rem);
  align-items: center;
  padding-block: clamp(8rem, 14vw, 11rem) clamp(4.5rem, 8vw, 7rem);
}
.medical-kicker { margin:0 0 1rem; color:var(--gold-light); font-size:.72rem; font-weight:700; letter-spacing:.28em; text-transform:uppercase; }
.medical-hero h1 { max-width:10ch; margin:0; color:var(--white); font-size:clamp(3.4rem,7.2vw,7.7rem); font-weight:700; letter-spacing:-.06em; line-height:.87; }
.medical-claim { margin:1.55rem 0 .75rem; font-size:clamp(1.35rem,2.5vw,2.65rem); font-weight:300; letter-spacing:-.02em; line-height:1.12; }
.medical-intro { max-width:710px; margin:0; color:rgba(255,255,255,.78); font-size:clamp(1rem,1.45vw,1.2rem); }
.medical-pills { display:flex; flex-wrap:wrap; gap:.55rem; margin-top:1.6rem; }
.medical-pills span { padding:.45rem .78rem; border:1px solid rgba(255,255,255,.22); border-radius:999px; background:rgba(4,20,34,.38); color:rgba(255,255,255,.86); font-size:.64rem; font-weight:700; letter-spacing:.11em; text-transform:uppercase; }

.medical-certificate-wrap { perspective:1000px; display:flex; justify-content:center; }
.medical-certificate {
  width:min(100%, 430px);
  min-height:540px;
  padding:2rem;
  color:#173044;
  background:linear-gradient(145deg, #fbfcfa 0%, #eef4f2 100%);
  border:1px solid rgba(255,255,255,.7);
  border-radius:1.1rem;
  box-shadow:0 35px 90px rgba(0,0,0,.32);
  transform:rotate(2.5deg);
}
.medical-cert-top { display:flex; justify-content:space-between; gap:1rem; color:#567080; font-size:.57rem; font-weight:700; letter-spacing:.18em; }
.medical-cert-mark { margin:3.5rem 0 .9rem; color:#b69558; font-size:2.1rem; }
.medical-cert-label { margin:0; color:#597082; font-size:.67rem; font-weight:700; letter-spacing:.18em; }
.medical-certificate > strong { display:block; margin:.25rem 0 1.2rem; color:#10283b; font-size:5.3rem; line-height:1; letter-spacing:-.06em; }
.medical-cert-rule { height:1px; background:#b9c8cc; margin-bottom:1.3rem; }
.medical-certificate dl { margin:0; }
.medical-certificate dl div { display:grid; grid-template-columns:1fr 1fr; gap:1rem; padding:.7rem 0; border-bottom:1px solid #d5dfe0; }
.medical-certificate dt { color:#718795; font-size:.72rem; text-transform:uppercase; letter-spacing:.08em; }
.medical-certificate dd { margin:0; text-align:right; font-weight:700; }
.medical-certificate small { display:block; margin-top:2.2rem; color:#718795; font-size:.65rem; line-height:1.5; }

.medical-section { padding-block:clamp(5.5rem,9vw,8rem); }
.medical-heading { max-width:980px; }
.medical-page h2 { color:inherit; }
.medical-lead { max-width:930px; color:rgba(255,255,255,.74); font-size:clamp(1.15rem,2vw,1.5rem); }
.medical-grid-three { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; margin-top:2.3rem; }
.medical-info-card { min-height:18rem; padding:1.65rem; background:linear-gradient(150deg,rgba(255,255,255,.075),rgba(255,255,255,.025)); border:1px solid rgba(255,255,255,.13); border-radius:var(--radius); }
.medical-info-card > span { color:var(--gold-light); font-size:.66rem; font-weight:700; letter-spacing:.17em; text-transform:uppercase; }
.medical-info-card h3 { margin:3rem 0 .75rem; color:var(--white); font-weight:400; }
.medical-info-card p { margin:0; color:rgba(255,255,255,.67); }
.medical-info-card-accent { background:linear-gradient(145deg,rgba(190,152,87,.18),rgba(255,255,255,.025)); border-color:rgba(213,178,112,.34); }

.medical-section-soft { color:var(--ink); background:#edf4f8; }
.medical-check-layout { display:grid; grid-template-columns:1.2fr .8fr; gap:clamp(2rem,6vw,5rem); align-items:center; }
.medical-soft-lead { max-width:780px; color:#435d70; font-size:clamp(1.08rem,1.7vw,1.32rem); }
.medical-check-list { display:grid; gap:.65rem; }
.medical-check-list span { padding:1rem 1.1rem; background:#fff; border:1px solid rgba(9,35,59,.08); border-radius:.8rem; box-shadow:0 10px 28px rgba(9,35,59,.06); color:#16344c; font-weight:600; }

.medical-story-grid { display:grid; grid-template-columns:.8fr 1.2fr; gap:clamp(2rem,7vw,6rem); align-items:start; }
.medical-story-copy { font-size:clamp(1.04rem,1.55vw,1.23rem); color:rgba(255,255,255,.72); }
.medical-story-copy p:first-child { margin-top:0; }
.medical-story-highlight { padding:1.25rem 1.4rem; border-left:3px solid var(--gold-light); background:rgba(255,255,255,.035); color:rgba(255,255,255,.86); }

.medical-doctor { background:#0a253d; }
.medical-doctor-grid { display:grid; grid-template-columns:1.25fr .75fr; gap:clamp(2rem,7vw,6rem); align-items:center; }
.medical-doctor-copy p { max-width:830px; color:rgba(255,255,255,.72); }
.medical-actions { display:flex; flex-wrap:wrap; gap:.7rem; margin-top:1.5rem; }
.medical-button { display:inline-flex; align-items:center; justify-content:center; min-height:2.8rem; padding:.65rem 1rem; border:1px solid rgba(255,255,255,.26); border-radius:999px; color:var(--white); text-decoration:none; font-size:.71rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; transition:.2s ease; }
.medical-button:hover { border-color:var(--gold-light); color:var(--gold-light); transform:translateY(-1px); }
.medical-button-secondary { color:rgba(255,255,255,.72); }
.medical-doctor-card { padding:2rem; background:linear-gradient(145deg,rgba(193,157,91,.18),rgba(255,255,255,.035)); border:1px solid rgba(213,178,112,.28); border-radius:var(--radius); }
.medical-doctor-card > span { color:var(--gold-light); font-size:.65rem; font-weight:700; letter-spacing:.17em; text-transform:uppercase; }
.medical-doctor-card strong { display:block; margin-top:.5rem; font-size:clamp(1.55rem,3vw,2.5rem); font-weight:300; letter-spacing:-.03em; }
.medical-doctor-card p { margin:1.5rem 0 0; color:rgba(255,255,255,.5); font-size:.75rem; }

.medical-sources { padding:1.5rem 0 4rem; color:rgba(255,255,255,.38); font-size:.69rem; }
.medical-sources p { max-width:900px; margin:0; }

@media (max-width:900px) {
  .medical-hero { min-height:0; }
  .medical-hero-layout, .medical-grid-three, .medical-check-layout, .medical-story-grid, .medical-doctor-grid { grid-template-columns:1fr; }
  .medical-certificate-wrap { margin-top:1rem; }
  .medical-certificate { min-height:0; transform:none; }
}


/* Mobile Feinschliff: lange Hero-Wörter bleiben vollständig im Viewport. */
@media (max-width: 640px) {
  .medical-hero-layout {
    gap: 2rem;
    padding-block: 6.3rem 3.2rem;
  }

  .medical-hero h1 {
    max-width: none;
    font-size: clamp(2.05rem, 10.4vw, 3.1rem);
    letter-spacing: -0.055em;
    line-height: 0.92;
  }

  .medical-kicker {
    font-size: 0.67rem;
    letter-spacing: 0.22em;
  }

  .medical-claim {
    margin-top: 1.35rem;
  }

  .medical-certificate {
    width: 100%;
    padding: 1.55rem;
  }
}
