/* Anlassseite Praxisgründung – editorial, material-led and aligned with the parent site. */
.founder-page {
  font-size: 18px;
}

.founder-hero {
  position: relative;
  min-height: max(780px, 100svh);
  display: flex;
  align-items: center;
  padding: 88px clamp(40px, 7vw, 126px) 100px;
  background: var(--paper-light);
  overflow: hidden;
  isolation: isolate;
}

.founder-hero-copy {
  position: relative;
  z-index: 3;
  width: min(54%, 760px);
}

.breadcrumb {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: clamp(48px, 7vh, 82px);
  color: var(--muted);
  font-family: var(--sans);
  font-size: 13px;
}

.breadcrumb a {
  text-underline-offset: 4px;
}

.breadcrumb a:hover,
.breadcrumb a:focus-visible {
  color: var(--copper);
}

.founder-hero h1,
.founder-facts h2,
.founder-packages h2,
.founder-reference h2,
.founder-process h2,
.founder-faq h2 {
  font-family: var(--sans);
  font-weight: 500;
  letter-spacing: -.045em;
}

.founder-hero h1 {
  max-width: 770px;
  margin: 19px 0 28px;
  font-size: clamp(56px, 6vw, 94px);
  line-height: .97;
}

.founder-lead {
  max-width: 660px;
  margin: 0;
  font-size: clamp(18px, 1.45vw, 23px);
  line-height: 1.52;
}

.founder-hero-art {
  position: absolute;
  z-index: 1;
  top: 50%;
  right: -1.5%;
  width: min(78vw, 1220px);
  margin: 0;
  transform: translateY(-48%);
  pointer-events: none;
}

.founder-hero-art img {
  display: block;
  width: 100%;
  height: auto;
}

.founder-hero-art figcaption {
  position: absolute;
  right: 4%;
  bottom: 1%;
  max-width: 320px;
  color: var(--muted);
  font-size: 13px;
  text-align: right;
}

.founder-orbit {
  position: absolute;
  z-index: 0;
  border: 1px solid rgba(201, 126, 95, .46);
  border-radius: 50%;
  pointer-events: none;
}

.founder-orbit-one {
  width: 520px;
  height: 520px;
  top: -310px;
  right: -80px;
}

.founder-orbit-two {
  width: 350px;
  height: 350px;
  bottom: -250px;
  left: 33%;
  border-color: rgba(127, 141, 124, .38);
}

.founder-facts {
  display: grid;
  grid-template-columns: minmax(360px, .88fr) minmax(520px, 1.12fr);
  gap: clamp(60px, 9vw, 160px);
  padding: clamp(95px, 10vw, 160px) clamp(40px, 7vw, 126px);
  color: var(--paper-light);
  background: var(--forest);
}

.founder-facts-intro {
  align-self: start;
}

.founder-facts .section-label,
.founder-reference .section-label {
  color: var(--copper-light);
}

.founder-facts h2 {
  max-width: 690px;
  margin: 27px 0 30px;
  font-size: clamp(45px, 5vw, 76px);
  line-height: 1;
}

.founder-facts-intro > p:last-child {
  max-width: 600px;
  margin: 0;
  color: rgba(255, 250, 243, .78);
  font-size: clamp(17px, 1.25vw, 20px);
  line-height: 1.58;
}

.founder-fact-list,
.founder-process-list {
  margin: 0;
  padding: 0;
  list-style: none;
  border-top: 1px solid rgba(255, 250, 243, .3);
}

.founder-fact-list li {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  gap: 20px;
  padding: 25px 0 27px;
  border-bottom: 1px solid rgba(255, 250, 243, .3);
}

.founder-fact-list li > span,
.founder-process-list li > span,
.founder-package-index {
  padding-top: 4px;
  color: var(--copper-light);
  font-family: var(--sans);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .1em;
}

.founder-fact-list h3 {
  margin: 0 0 7px;
  font-size: clamp(24px, 2.2vw, 33px);
  line-height: 1.12;
}

.founder-fact-list p {
  max-width: 670px;
  margin: 0;
  color: rgba(255, 250, 243, .72);
  font-size: 17px;
  line-height: 1.5;
}

.founder-packages {
  padding: clamp(95px, 10vw, 160px) clamp(40px, 7vw, 126px);
  background: var(--paper-light);
}

.founder-packages-heading {
  max-width: 1080px;
}

.founder-packages h2,
.founder-process h2,
.founder-faq h2 {
  margin: 25px 0 24px;
  font-size: clamp(48px, 5.4vw, 82px);
  line-height: 1;
}

.founder-packages-heading > p:last-child {
  max-width: 720px;
  margin: 0;
  color: var(--muted);
  font-size: clamp(18px, 1.4vw, 22px);
}

.founder-package-list {
  max-width: 1380px;
  margin: clamp(62px, 7vw, 100px) auto 0;
  border-bottom: 1px solid var(--line);
}

.founder-package {
  display: grid;
  grid-template-columns: 45px minmax(130px, .38fr) minmax(0, 1.35fr) minmax(230px, .58fr);
  gap: clamp(22px, 3.4vw, 54px);
  align-items: start;
  padding: clamp(34px, 4vw, 55px) 0;
  border-top: 1px solid var(--line);
}

.founder-package-index {
  color: var(--copper);
}

.founder-package-phase {
  padding-top: 4px;
  color: #97543b;
  font-family: var(--sans);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .1em;
  line-height: 1.4;
  text-transform: uppercase;
}

.founder-package h3 {
  margin: 0 0 12px;
  font-size: clamp(29px, 3vw, 44px);
  line-height: 1.05;
}

.founder-package p {
  max-width: 690px;
  margin: 0;
  color: var(--muted);
  font-size: 18px;
  line-height: 1.5;
}

.founder-package ul {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px 26px;
  margin: 24px 0 0;
  padding: 19px 0 0;
  list-style: none;
  border-top: 1px solid var(--line);
}

.founder-package li {
  position: relative;
  padding-left: 18px;
  color: var(--forest);
  font-size: 16px;
  line-height: 1.42;
}

.founder-package li::before {
  content: "↘";
  position: absolute;
  left: 0;
  color: var(--copper);
  font-size: 11px;
}

.founder-package strong {
  justify-self: end;
  padding-top: 1px;
  color: var(--forest);
  font-family: var(--sans);
  font-size: clamp(21px, 1.75vw, 28px);
  font-weight: 500;
  letter-spacing: -.035em;
  text-align: right;
  white-space: nowrap;
}

.founder-package strong small {
  display: block;
  margin-top: 5px;
  color: var(--muted);
  font-family: var(--body);
  font-size: 12px;
  font-weight: 400;
  letter-spacing: 0;
}

.founder-packages-note {
  max-width: 930px;
  margin: 29px 0 0;
  color: var(--muted);
  font-size: 15px;
  line-height: 1.55;
}

.founder-reference {
  display: grid;
  grid-template-columns: minmax(380px, .75fr) minmax(520px, 1fr);
  gap: clamp(55px, 8vw, 135px);
  align-items: start;
  padding: clamp(95px, 10vw, 160px) clamp(40px, 7vw, 126px);
  color: var(--paper-light);
  background: var(--forest-soft);
}

.founder-reference-copy {
  position: sticky;
  top: 48px;
  align-self: start;
}

.founder-reference h2 {
  max-width: 690px;
  margin: 25px 0 31px;
  font-size: clamp(44px, 4.8vw, 74px);
  line-height: 1.01;
}

.founder-reference-copy > p:not(.section-label) {
  max-width: 570px;
  margin: 0 0 20px;
  color: rgba(255, 250, 243, .79);
  font-size: clamp(17px, 1.25vw, 20px);
  line-height: 1.58;
}

.founder-reference-link {
  display: inline-flex;
  align-items: baseline;
  gap: 14px;
  margin-top: 19px;
  padding-bottom: 5px;
  color: var(--paper-light);
  border-bottom: 1px solid currentColor;
  font-family: var(--sans);
  font-weight: 500;
  text-decoration: none;
}

.founder-reference-link:hover,
.founder-reference-link:focus-visible {
  color: var(--copper-light);
}

.founder-reference-figure {
  margin: 0;
}

.founder-reference-figure img {
  display: block;
  width: 100%;
  height: auto;
  background: #f8f0e6;
  border: 1px solid rgba(255, 250, 243, .3);
  box-shadow: 0 28px 58px rgba(12, 40, 34, .22);
}

.founder-reference-figure figcaption {
  margin-top: 13px;
  color: rgba(255, 250, 243, .67);
  font-size: 13px;
}

.founder-process {
  display: grid;
  grid-template-columns: minmax(380px, .8fr) minmax(520px, 1.2fr);
  gap: clamp(60px, 9vw, 160px);
  padding: clamp(95px, 10vw, 160px) clamp(40px, 7vw, 126px);
  background: var(--paper);
}

.founder-process-heading {
  align-self: start;
}

.founder-process h2 {
  max-width: 700px;
}

.founder-process-list {
  border-color: var(--line);
}

.founder-process-list li {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  gap: 20px;
  padding: 26px 0 28px;
  border-bottom: 1px solid var(--line);
}

.founder-process-list li > span {
  color: var(--copper);
}

.founder-process-list h3 {
  margin: 0 0 8px;
  font-size: clamp(24px, 2vw, 32px);
  line-height: 1.12;
}

.founder-process-list p {
  max-width: 680px;
  margin: 0;
  color: var(--muted);
  font-size: 17px;
}

.founder-faq {
  display: grid;
  grid-template-columns: minmax(360px, .74fr) minmax(540px, 1.26fr);
  gap: clamp(60px, 9vw, 160px);
  padding: clamp(95px, 10vw, 160px) clamp(40px, 7vw, 126px);
  background: var(--paper-light);
}

.founder-faq-heading {
  align-self: start;
}

.founder-faq h2 {
  max-width: 620px;
}

.founder-faq-list {
  border-top: 1px solid var(--line);
}

.founder-faq details {
  border-bottom: 1px solid var(--line);
}

.founder-faq summary {
  position: relative;
  padding: 25px 52px 25px 0;
  cursor: pointer;
  font-family: var(--sans);
  font-size: clamp(21px, 1.8vw, 28px);
  font-weight: 500;
  line-height: 1.25;
  list-style: none;
}

.founder-faq summary::-webkit-details-marker {
  display: none;
}

.founder-faq summary::after {
  content: "+";
  position: absolute;
  top: 22px;
  right: 4px;
  color: var(--copper);
  font-size: 28px;
  font-weight: 400;
}

.founder-faq details[open] summary::after {
  content: "−";
}

.founder-faq details p {
  max-width: 760px;
  margin: -2px 54px 28px 0;
  color: var(--muted);
  line-height: 1.58;
}

.founder-contact .contact-copy > p a {
  text-underline-offset: 4px;
}

@media (max-width: 1180px) {
  .founder-hero-copy { width: 58%; }
  .founder-hero-art { right: -5%; width: 91vw; }
  .founder-facts,
  .founder-reference,
  .founder-process,
  .founder-faq { gap: 55px; }
  .founder-package { grid-template-columns: 36px 120px minmax(0, 1fr) 210px; gap: 22px; }
}

@media (max-width: 900px) {
  .founder-hero { min-height: 930px; align-items: flex-start; padding-top: 74px; }
  .founder-hero-copy { width: min(82%, 680px); }
  .founder-hero-art { top: auto; right: -6%; bottom: -3%; width: 104vw; transform: none; }
  .founder-hero-art figcaption { right: 8%; }
  .founder-facts,
  .founder-reference,
  .founder-process,
  .founder-faq { grid-template-columns: 1fr; }
  .founder-reference-copy { position: static; }
  .founder-reference-figure { width: min(100%, 720px); margin-inline: auto; }
  .founder-package { grid-template-columns: 38px 130px minmax(0, 1fr); }
  .founder-package strong { grid-column: 3; justify-self: start; text-align: left; }
}

@media (max-width: 760px) {
  .founder-page { font-size: 17px; }
  .founder-hero {
    min-height: 980px;
    display: block;
    padding: 42px 22px 420px;
  }
  .founder-hero-copy { width: 100%; }
  .breadcrumb { margin-bottom: 40px; }
  .founder-hero h1 { font-size: clamp(45px, 12.3vw, 64px); }
  .founder-lead { font-size: 17px; }
  .founder-hero-art { right: -28%; bottom: 1%; width: 170%; }
  .founder-hero-art figcaption { right: calc(28% + 22px); bottom: -7px; max-width: 280px; font-size: 11px; }
  .founder-orbit-one { width: 300px; height: 300px; top: -180px; right: -130px; }
  .founder-orbit-two { width: 220px; height: 220px; bottom: -160px; left: -80px; }
  .founder-facts,
  .founder-packages,
  .founder-reference,
  .founder-process,
  .founder-faq { padding-right: 22px; padding-left: 22px; }
  .founder-facts h2,
  .founder-packages h2,
  .founder-reference h2,
  .founder-process h2,
  .founder-faq h2 { font-size: clamp(40px, 11vw, 58px); }
  .founder-package {
    grid-template-columns: 34px minmax(0, 1fr);
    gap: 10px 15px;
    padding: 31px 0 36px;
  }
  .founder-package-phase { grid-column: 2; }
  .founder-package-copy,
  .founder-package strong { grid-column: 2; }
  .founder-package-copy { margin-top: 6px; }
  .founder-package strong { margin-top: 9px; }
  .founder-package ul { grid-template-columns: 1fr; }
  .founder-reference-copy > p:not(.section-label) { font-size: 17px; }
  .founder-faq summary { font-size: 21px; }
  .founder-faq details p { margin-right: 28px; }
}

@media (max-width: 430px) {
  .founder-hero { min-height: 1010px; padding-bottom: 390px; }
  .founder-hero-art { right: -36%; bottom: 2%; width: 187%; }
  .founder-hero-art figcaption { right: calc(36% + 18px); max-width: 220px; }
  .founder-hero .hero-actions { justify-content: flex-start; }
  .founder-fact-list li,
  .founder-process-list li { grid-template-columns: 34px minmax(0, 1fr); gap: 12px; }
}

@media (max-width: 360px) {
  .founder-hero { min-height: 1050px; }
}
