/* Ergänzungen für den Ausbildungsstall Kolkwitz */
.brand {
  flex-shrink: 0;
}

.brand-logo {
  display: block;
  width: clamp(155px, 14vw, 205px);
  height: auto;
}

@media (max-width: 620px) {
  .brand-logo {
    width: 150px;
  }
}

/* Gemeinsames Designsystem für alle neu aufgebauten Seiten */
.new-home {
  --design-green: #24503e;
  --design-deep: #183d2e;
  --design-rust: #c85c3b;
  --design-cream: #f7f1e7;
  --design-paper: #fffdf8;
  --design-line: #dfd3c3;
  --design-olive: #6d7951;
  background: var(--design-paper);
  color: #26372f;
  font-size: 17px;
  line-height: 1.65;
}

.new-home h1,
.new-home h2,
.new-home h3 {
  color: var(--design-green);
}

.new-home h2 {
  font-size: clamp(2.35rem, 4.3vw, 4.6rem);
}

.new-home h3 {
  font-size: 1.75rem;
}

.new-home p {
  margin-top: 0;
}

.design-section {
  max-width: 1340px;
  margin: auto;
  padding: clamp(75px, 8vw, 125px) clamp(24px, 5vw, 70px);
}

.design-kicker {
  margin: 0 0 10px;
  color: #587060;
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .15em;
  text-transform: uppercase;
}

.design-kicker--light {
  color: #dae6dd;
}

.design-icon {
  display: grid;
  width: 50px;
  height: 50px;
  flex: 0 0 50px;
  place-items: center;
  border-radius: 50%;
  background: #ece9d8;
  color: var(--design-olive);
}

.design-icon svg,
.design-button svg,
.new-home-events svg {
  width: 25px;
  height: 25px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.65;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.design-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 54px;
  padding: 13px 22px;
  border-radius: 7px;
  background: var(--design-rust);
  color: #fff !important;
  font-size: .79rem;
  font-weight: 800;
  letter-spacing: .01em;
  box-shadow: 0 8px 24px #74331f2b;
  transition: transform .2s, box-shadow .2s;
}

.design-button:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 30px #74331f3d;
}

.design-button svg {
  width: 20px;
  height: 20px;
}

.design-button--light {
  background: #fffaf0;
  color: #244b39 !important;
  box-shadow: none;
}

.design-text-link {
  display: inline-block;
  padding-bottom: 3px;
  border-bottom: 1px solid #748379;
  font-size: .85rem;
  font-weight: 800;
}

.design-text-link span {
  margin-left: 12px;
  font-size: 1.1rem;
}

.design-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 25px;
  margin-top: 30px;
}

.design-heading {
  max-width: 790px;
}

.design-heading--center {
  margin: 0 auto 48px;
  text-align: center;
}

.design-heading--center > p:last-child {
  max-width: 760px;
  margin: 20px auto 0;
  color: #5d6962;
}

.new-home-hero {
  display: grid;
  grid-template-columns: 48% 52%;
  max-width: 1500px;
  min-height: 735px;
  margin: auto;
  overflow: hidden;
  background: var(--design-cream);
}

.new-home-hero__copy {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 72px clamp(25px, 5vw, 80px) 35px;
}

.new-home-hero__copy::after {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  right: -125px;
  width: 220px;
  height: 100%;
  background: linear-gradient(90deg, var(--design-cream) 12%, rgba(247, 241, 231, .94) 48%, transparent);
  filter: blur(5px);
}

.new-home-hero h1 {
  max-width: 720px;
  font-size: clamp(3.25rem, 5.65vw, 6.2rem);
  line-height: .98;
  letter-spacing: -.055em;
}

.new-home-hero h1 em {
  color: var(--design-rust);
  font-weight: 400;
}

.new-home-lead {
  max-width: 580px;
  margin: 28px 0 0;
  color: #516159;
  font-size: 1.08rem;
}

.new-home-hero__image {
  position: relative;
  min-height: 735px;
  margin: 0;
}

.new-home-hero__image img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.new-home-trust {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  margin-top: 46px;
  border-top: 1px solid var(--design-line);
}

.new-home-trust > div {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 24px 12px 4px 0;
  border-right: 1px solid var(--design-line);
  color: #375445;
  font-size: .78rem;
  line-height: 1.35;
}

.new-home-trust > div:nth-child(n+2) {
  padding-left: 12px;
}

.new-home-trust > div:last-child {
  border-right: 0;
}

.new-home-trust .design-icon {
  width: 42px;
  height: 42px;
  flex-basis: 42px;
}

.new-home-trust svg {
  width: 21px;
  height: 21px;
}

.new-home-events {
  display: grid;
  grid-template-columns: 1fr 1.15fr auto;
  align-items: center;
  gap: 40px;
  max-width: 1500px;
  min-height: 150px;
  margin: auto;
  padding: 28px clamp(25px, 6vw, 90px);
  background: linear-gradient(110deg, #b84c31, var(--design-rust));
  color: #fff;
  transition: filter .2s;
}

.new-home-events:hover {
  filter: brightness(.96);
}

.new-home-events__label span {
  display: block;
  font-size: .7rem;
  font-weight: 800;
  letter-spacing: .15em;
  text-transform: uppercase;
}

.new-home-events__label strong {
  display: block;
  font-family: Georgia, serif;
  font-size: clamp(2.2rem, 3.7vw, 4rem);
  font-weight: 400;
  line-height: 1.05;
}

.new-home-events p {
  max-width: 530px;
  margin: 0;
  color: #fff6f1;
}

.new-home-events b {
  display: flex;
  align-items: center;
  gap: 12px;
  white-space: nowrap;
  font-size: .8rem;
}

.new-home-welcome {
  display: grid;
  grid-template-columns: 1.05fr .95fr;
  gap: clamp(55px, 9vw, 135px);
}

.new-home-welcome__text {
  align-self: end;
  color: #56635c;
}

.new-home-offers {
  max-width: 1500px;
  margin: auto;
  background: var(--design-cream);
}

.new-home-offers__inner {
  max-width: 1400px;
}

.new-home-offer-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 22px;
}

.new-home-offer {
  display: grid;
  grid-template-columns: .85fr 1.15fr;
  min-height: 300px;
  overflow: hidden;
  border: 1px solid #e5d9c9;
  border-radius: 8px;
  background: #fffaf2;
  box-shadow: 0 10px 28px #2035280a;
  transition: transform .25s, box-shadow .25s;
}

.new-home-offer:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 38px #2035281c;
}

.new-home-offer--large {
  grid-column: 1 / -1;
  grid-template-columns: 1.1fr .9fr;
  min-height: 390px;
}

.new-home-offer figure {
  position: relative;
  min-height: 280px;
  margin: 0;
  overflow: hidden;
}

.new-home-offer figure img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .4s;
}

.new-home-offer:hover figure img {
  transform: scale(1.025);
}

.new-home-offer > div {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: clamp(27px, 4vw, 48px);
}

.new-home-offer small {
  color: var(--design-rust);
  font-size: .69rem;
  font-weight: 800;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.new-home-offer h3 {
  margin: 6px 0 12px;
}

.new-home-offer p {
  color: #58655e;
  font-size: .9rem;
}

.new-home-offer span {
  color: var(--design-green);
  font-size: .76rem;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.new-home-concept {
  display: grid;
  grid-template-columns: 1.05fr .95fr;
  max-width: 1500px;
  min-height: 690px;
  margin: auto;
  background: var(--design-deep);
  color: #fff;
}

.new-home-concept > figure {
  position: relative;
  min-height: 570px;
  margin: 0;
}

.new-home-concept > figure img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.new-home-concept__copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  padding: clamp(55px, 7vw, 105px);
}

.new-home-concept h2 {
  color: #fff;
}

.new-home-concept__copy > p:not(.design-kicker) {
  color: #d5e0d8;
}

.new-home-concept__features {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  width: 100%;
  margin: 25px 0 32px;
}

.new-home-concept__features > div {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 0 12px;
  border-left: 1px solid #ffffff2b;
  text-align: center;
}

.new-home-concept__features > div:first-child {
  border-left: 0;
}

.new-home-concept__features strong {
  margin-top: 9px;
  color: #fff;
}

.new-home-concept__features small {
  color: #c4d0c7;
  line-height: 1.4;
}

.new-home-horses {
  display: grid;
  grid-template-columns: .85fr 1.15fr;
  gap: clamp(50px, 8vw, 100px);
  align-items: center;
}

.new-home-horses__copy > p:not(.design-kicker) {
  color: #59665f;
}

.design-check-list {
  margin: 28px 0 0;
  padding: 0;
  list-style: none;
}

.design-check-list li {
  position: relative;
  padding: 10px 0 10px 33px;
  border-bottom: 1px solid var(--design-line);
}

.design-check-list li::before {
  content: "✓";
  position: absolute;
  top: 12px;
  left: 0;
  display: grid;
  width: 20px;
  height: 20px;
  place-items: center;
  border-radius: 50%;
  background: var(--design-olive);
  color: #fff;
  font-size: .7rem;
  font-weight: 900;
}

.new-home-horses__gallery {
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  gap: 15px;
}

.new-home-horses__gallery img {
  width: 100%;
  height: 570px;
  object-fit: cover;
  border-radius: 8px;
}

.new-home-horses__gallery img:last-child {
  height: 470px;
  margin-top: 65px;
}

.new-home-team {
  display: grid;
  grid-template-columns: .82fr 1.18fr;
  max-width: 1500px;
  margin: auto;
  background: var(--design-cream);
}

.new-home-team__copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  padding: clamp(55px, 7vw, 105px);
}

.new-home-team__copy > p:not(.design-kicker) {
  color: #58655e;
}

.new-home-team figure {
  position: relative;
  min-height: 610px;
  margin: 0;
}

.new-home-team figure img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.new-home-cta {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 50px;
  max-width: 1500px;
  margin: auto;
  padding: 58px clamp(24px, 6vw, 90px);
  background: linear-gradient(110deg, #24563f, var(--design-deep));
  color: #fff;
}

.new-home-cta h2 {
  max-width: 900px;
  color: #fff;
  font-size: clamp(2.25rem, 3.7vw, 4rem);
}

.new-home-cta p:last-child {
  max-width: 740px;
  margin-bottom: 0;
  color: #d7e2da;
}

.new-home-cta__action {
  display: flex;
  flex: 0 0 auto;
  flex-direction: column;
  align-items: center;
  gap: 12px;
}

.new-home-cta__action strong {
  font-size: 1.18rem;
  letter-spacing: .08em;
}

@media (max-width: 1050px) {
  .new-home-hero,
  .new-home-welcome,
  .new-home-concept,
  .new-home-horses,
  .new-home-team {
    grid-template-columns: 1fr;
  }

  .new-home-hero__copy::after {
    display: none;
  }

  .new-home-hero__image {
    min-height: 560px;
  }

  .new-home-events {
    grid-template-columns: 1fr auto;
  }

  .new-home-events p {
    grid-column: 1 / -1;
    grid-row: 2;
  }

  .new-home-offer-grid {
    grid-template-columns: 1fr;
  }

  .new-home-offer--large {
    grid-column: auto;
  }

  .new-home-concept > figure,
  .new-home-team figure {
    min-height: 560px;
  }

  .new-home-horses__gallery {
    order: -1;
  }

  .new-home-cta {
    flex-direction: column;
    align-items: flex-start;
  }

  .new-home-cta__action {
    align-items: flex-start;
  }
}

@media (max-width: 700px) {
  .new-home {
    font-size: 16px;
  }

  .new-home-hero {
    min-height: 0;
  }

  .new-home-hero__copy {
    padding: 55px 22px 34px;
  }

  .new-home-hero h1 {
    font-size: clamp(3rem, 14vw, 4.5rem);
  }

  .design-actions {
    flex-direction: column;
    align-items: stretch;
  }

  .design-button {
    width: 100%;
    text-align: center;
  }

  .design-text-link {
    align-self: flex-start;
  }

  .new-home-trust {
    grid-template-columns: 1fr;
  }

  .new-home-trust > div,
  .new-home-trust > div:nth-child(n+2) {
    padding: 15px 0;
    border-right: 0;
    border-bottom: 1px solid var(--design-line);
  }

  .new-home-hero__image {
    min-height: 430px;
  }

  .new-home-events {
    grid-template-columns: 1fr;
    gap: 16px;
    padding-top: 35px;
    padding-bottom: 35px;
  }

  .new-home-events p,
  .new-home-events b {
    grid-column: auto;
    grid-row: auto;
  }

  .new-home-events b {
    white-space: normal;
  }

  .new-home-offer,
  .new-home-offer--large {
    grid-template-columns: 1fr;
  }

  .new-home-offer figure {
    min-height: 310px;
  }

  .new-home-concept__copy,
  .new-home-team__copy {
    padding: 58px 24px;
  }

  .new-home-concept__features {
    grid-template-columns: 1fr;
  }

  .new-home-concept__features > div {
    padding: 19px 0;
    border-top: 1px solid #ffffff2b;
    border-left: 0;
  }

  .new-home-concept__features > div:first-child {
    border-top: 0;
  }

  .new-home-horses__gallery {
    grid-template-columns: 1fr;
  }

  .new-home-horses__gallery img,
  .new-home-horses__gallery img:last-child {
    height: 420px;
    margin-top: 0;
  }

  .new-home-cta__action {
    width: 100%;
  }
}

/* Gemeinsame Unterseiten im neuen Design */
.design-page {
  --design-green: #24503e;
  --design-deep: #183d2e;
  --design-rust: #c85c3b;
  --design-cream: #f7f1e7;
  --design-paper: #fffdf8;
  --design-line: #dfd3c3;
  --design-olive: #6d7951;
  background: var(--design-paper);
  color: #26372f;
  font-size: 17px;
  line-height: 1.65;
}

.design-page h1,
.design-page h2,
.design-page h3 {
  color: var(--design-green);
}

.design-page h2 {
  font-size: clamp(2.3rem, 4.2vw, 4.5rem);
}

.design-page h3 {
  font-size: 1.55rem;
}

.design-page p {
  margin-top: 0;
}

.design-page-hero {
  display: grid;
  grid-template-columns: 48% 52%;
  max-width: 1500px;
  min-height: 710px;
  margin: auto;
  overflow: hidden;
  background: var(--design-cream);
}

.design-page-hero__copy {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 70px clamp(25px, 5vw, 80px) 34px;
}

.design-page-hero__copy::after {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  right: -125px;
  width: 220px;
  height: 100%;
  background: linear-gradient(90deg, var(--design-cream) 12%, rgba(247, 241, 231, .95) 48%, transparent);
  filter: blur(5px);
}

.design-page-hero h1 {
  max-width: 720px;
  font-size: clamp(3.2rem, 5.65vw, 6.15rem);
  line-height: .98;
  letter-spacing: -.055em;
}

.design-page-hero h1 em {
  color: var(--design-rust);
  font-weight: 400;
}

.design-page-lead {
  max-width: 590px;
  margin: 27px 0 0;
  color: #526159;
  font-size: 1.08rem;
}

.design-page-hero__image {
  position: relative;
  min-height: 710px;
  margin: 0;
}

.design-page-hero__image img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.design-page--birthday .design-page-hero__image img {
  object-fit: contain;
  padding: 45px;
  background: #f9eee8;
}

.design-page-facts {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  margin-top: 44px;
  border-top: 1px solid var(--design-line);
}

.design-page-facts > div {
  display: flex;
  align-items: center;
  gap: 11px;
  min-width: 0;
  padding: 23px 10px 3px 0;
  border-right: 1px solid var(--design-line);
  color: #385546;
  font-size: .77rem;
  line-height: 1.35;
}

.design-page-facts > div:nth-child(n+2) {
  padding-left: 10px;
}

.design-page-facts > div:last-child {
  border-right: 0;
}

.design-page-facts .design-icon {
  width: 40px;
  height: 40px;
  flex-basis: 40px;
}

.design-page-facts svg {
  width: 20px;
  height: 20px;
}

.shared-intro {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(55px, 9vw, 135px);
}

.shared-intro > div:last-child {
  align-self: end;
  color: #56635c;
}

.shared-checks {
  margin: 24px 0 0;
  padding: 0;
  list-style: none;
}

.shared-checks li {
  position: relative;
  padding: 9px 0 9px 31px;
  border-bottom: 1px solid var(--design-line);
}

.shared-checks li::before {
  content: "✓";
  position: absolute;
  top: 11px;
  left: 0;
  display: grid;
  width: 19px;
  height: 19px;
  place-items: center;
  border-radius: 50%;
  background: var(--design-olive);
  color: #fff;
  font-size: .67rem;
  font-weight: 900;
}

.shared-cards-section,
.lesson-paths,
.event-booking,
.about-team {
  max-width: 1500px;
  margin: auto;
  background: var(--design-cream);
}

.age-card-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}

.age-card-grid article {
  position: relative;
  min-height: 320px;
  padding: 45px 34px 34px;
  border: 1px solid var(--design-line);
  border-radius: 9px;
  background: #fffaf2;
  box-shadow: 0 10px 28px #2035280b;
}

.age-card-grid article:nth-child(2) {
  background: #f8ede5;
}

.age-card-grid article b {
  position: absolute;
  top: -18px;
  left: 32px;
  display: grid;
  width: 42px;
  height: 42px;
  place-items: center;
  border-radius: 50%;
  background: var(--design-olive);
  color: #fff;
  font-family: Georgia, serif;
}

.age-card-grid article > span,
.lesson-price-grid article > span,
.about-team__grid article > div > span {
  color: var(--design-rust);
  font-size: .7rem;
  font-weight: 800;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.age-card-grid h3 {
  margin: 8px 0 16px;
  font-size: 2.3rem;
}

.age-card-grid p {
  color: #59665f;
}

.shared-dark-band {
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  gap: 70px;
  align-items: center;
  max-width: 1500px;
  margin: auto;
  padding: 70px clamp(24px, 6vw, 90px);
  background: linear-gradient(115deg, var(--design-deep), #24543e);
  color: #fff;
}

.shared-dark-band h2 {
  color: #fff;
  font-size: clamp(2.25rem, 3.7vw, 4rem);
}

.shared-dark-band > div:first-child > p:last-child {
  color: #d7e2da;
}

.shared-icon-features {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}

.shared-icon-features article {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 5px 20px;
  border-left: 1px solid #ffffff2b;
  text-align: center;
}

.shared-icon-features article:first-child {
  border-left: 0;
}

.shared-icon-features h3 {
  margin: 10px 0 6px;
  color: #fff;
  font-family: Arial, sans-serif;
  font-size: 1rem;
  font-weight: 800;
}

.shared-icon-features p {
  margin: 0;
  color: #cbd7cf;
  font-size: .79rem;
  line-height: 1.45;
}

.shared-split {
  display: grid;
  grid-template-columns: 1.05fr .95fr;
  max-width: 1500px;
  min-height: 610px;
  margin: auto;
  background: #fffaf2;
}

.shared-split figure {
  position: relative;
  min-height: 560px;
  margin: 0;
}

.shared-split figure img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.shared-split > div {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  padding: clamp(55px, 7vw, 105px);
}

.shared-split > div > p:not(.design-kicker) {
  color: #58655e;
}

.shared-split--reverse figure {
  order: 2;
}

.shared-info-row {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  max-width: 1250px;
  margin: auto;
  padding: clamp(65px, 7vw, 95px) 24px;
}

.shared-info-row > div {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 0 35px;
  border-left: 1px solid var(--design-line);
  text-align: center;
}

.shared-info-row > div:first-child {
  border-left: 0;
}

.shared-info-row strong {
  margin-top: 11px;
  color: var(--design-green);
}

.shared-info-row p {
  margin: 4px 0 0;
  color: #627068;
  font-size: .84rem;
}

.shared-info-row__warning .design-icon {
  background: #f0d9cc;
  color: #9a5944;
}

.shared-cta {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 50px;
  max-width: 1500px;
  margin: auto;
  padding: 58px clamp(24px, 6vw, 90px);
  background: linear-gradient(110deg, #24563f, var(--design-deep));
  color: #fff;
}

.shared-cta h2 {
  max-width: 900px;
  color: #fff;
  font-size: clamp(2.25rem, 3.7vw, 4rem);
}

.shared-cta p:last-child {
  max-width: 740px;
  margin-bottom: 0;
  color: #d7e2da;
}

.shared-cta > div:last-child {
  display: flex;
  flex: 0 0 auto;
  flex-direction: column;
  align-items: center;
  gap: 12px;
}

.shared-cta > div:last-child > strong {
  font-size: 1.18rem;
  letter-spacing: .08em;
}

.lesson-paths,
.event-booking,
.about-team {
  padding: clamp(75px, 8vw, 125px) clamp(24px, 5vw, 70px);
}

.lesson-price-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
  max-width: 1120px;
  margin: auto;
}

.lesson-price-grid article {
  padding: clamp(36px, 5vw, 58px);
  border: 1px solid var(--design-line);
  border-top: 5px solid var(--design-olive);
  border-radius: 8px;
  background: #fffaf2;
}

.lesson-price-grid article > strong {
  display: block;
  margin: 22px 0;
  color: var(--design-green);
  font-family: Georgia, serif;
  font-size: 2.7rem;
  font-weight: 400;
}

.lesson-price-grid article > strong small {
  font-family: Arial, sans-serif;
  font-size: .84rem;
}

.lesson-price-grid__featured {
  border-top-color: var(--design-rust) !important;
  background: var(--design-deep) !important;
  color: #fff;
}

.lesson-price-grid__featured h3,
.lesson-price-grid__featured > strong {
  color: #fff;
}

.lesson-price-grid__featured p {
  color: #d6e0d8;
}

.small-feature-pair {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 22px;
}

.small-feature-pair span {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 11px 14px;
  border: 1px solid var(--design-line);
  border-radius: 6px;
  color: var(--design-green);
  font-size: .78rem;
  font-weight: 800;
}

.small-feature-pair svg {
  width: 22px;
  height: 22px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.65;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.birthday-facts {
  display: grid;
  grid-template-columns: .85fr 1.15fr;
  gap: 75px;
  align-items: center;
}

.birthday-facts__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}

.birthday-facts__grid article {
  padding: 15px 24px;
  border-left: 1px solid var(--design-line);
}

.birthday-facts__grid strong {
  display: block;
  margin-top: 12px;
  color: var(--design-green);
}

.birthday-facts__grid p {
  color: #627068;
  font-size: .82rem;
}

.birthday-experience {
  display: grid;
  grid-template-columns: .85fr 1.15fr;
  max-width: 1500px;
  margin: auto;
  background: #f8eee8;
}

.birthday-experience figure {
  min-height: 650px;
  margin: 0;
  padding: 42px;
}

.birthday-experience figure img {
  width: 100%;
  height: 100%;
  max-height: 720px;
  object-fit: contain;
}

.birthday-experience > div {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: clamp(55px, 7vw, 105px);
}

.birthday-activity-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin: 22px 0;
}

.birthday-activity-grid span {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 55px;
  padding: 10px 14px;
  border: 1px solid #e3cfc3;
  border-radius: 6px;
  background: #fffaf4;
  color: var(--design-green);
  font-size: .82rem;
  font-weight: 800;
}

.birthday-activity-grid svg,
.about-facility__cards svg,
.about-welfare__list svg {
  width: 24px;
  height: 24px;
  flex: 0 0 24px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.65;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.birthday-note {
  padding: 17px 19px;
  border-left: 4px solid var(--design-rust);
  background: #fff8f2;
  color: #5c675f;
  font-size: .86rem;
}

.events-welcome {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 75px;
}

.event-types {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 25px;
}

.event-types span {
  padding: 9px 14px;
  border: 1px solid var(--design-green);
  border-radius: 50px;
  color: var(--design-green);
  font-size: .75rem;
  font-weight: 800;
}

.event-widget-shell {
  max-width: 1260px;
  margin: auto;
  padding: 30px;
  border: 1px solid var(--design-line);
  border-radius: 9px;
  background: #fff;
  box-shadow: 0 12px 35px #20352810;
}

.event-widget-shell .yolawo-shell {
  max-width: none;
  margin: 0;
  padding: 0;
}

.about-team__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 25px;
  max-width: 1260px;
  margin: auto;
}

.about-team__grid article {
  overflow: hidden;
  border: 1px solid var(--design-line);
  border-radius: 9px;
  background: #fffaf2;
}

.about-team__grid figure {
  position: relative;
  min-height: 520px;
  margin: 0;
}

.about-team__grid figure img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.about-team__grid article > div {
  padding: 35px;
}

.about-team__grid h3 {
  margin: 8px 0 16px;
  font-size: 2.4rem;
}

.about-team__grid p {
  color: #59665f;
}

.about-facility {
  display: grid;
  grid-template-columns: 1.05fr .95fr;
  max-width: 1500px;
  min-height: 650px;
  margin: auto;
  background: #fffaf2;
}

.about-facility > figure {
  position: relative;
  min-height: 580px;
  margin: 0;
}

.about-facility > figure img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.about-facility > div {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: clamp(55px, 7vw, 105px);
}

.about-facility__cards {
  display: grid;
  gap: 10px;
  margin-top: 22px;
}

.about-facility__cards span {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 0 13px;
  padding: 15px 17px;
  border: 1px solid var(--design-line);
  border-radius: 6px;
  color: var(--design-green);
}

.about-facility__cards svg {
  grid-row: 1 / 3;
}

.about-facility__cards small {
  color: #637068;
}

.about-welfare {
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  gap: 75px;
  align-items: center;
}

.about-welfare__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.about-welfare__list span {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 78px;
  padding: 16px;
  border: 1px solid var(--design-line);
  border-radius: 7px;
  background: #fffaf2;
  color: var(--design-green);
  font-size: .83rem;
  font-weight: 800;
}

.about-learning {
  display: grid;
  grid-template-columns: .8fr 1.2fr;
  max-width: 1500px;
  margin: auto;
  background: var(--design-cream);
}

.about-learning > div {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: clamp(55px, 7vw, 105px);
}

.about-learning figure {
  position: relative;
  min-height: 540px;
  margin: 0;
}

.about-learning figure img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@media (max-width: 1050px) {
  .design-page-hero,
  .shared-intro,
  .shared-dark-band,
  .shared-split,
  .birthday-facts,
  .birthday-experience,
  .events-welcome,
  .about-facility,
  .about-welfare,
  .about-learning {
    grid-template-columns: 1fr;
  }

  .design-page-hero__copy::after {
    display: none;
  }

  .design-page-hero__image {
    min-height: 540px;
  }

  .shared-dark-band {
    gap: 40px;
  }

  .shared-split--reverse figure {
    order: 0;
  }

  .shared-cta {
    flex-direction: column;
    align-items: flex-start;
  }

  .shared-cta > div:last-child {
    align-items: flex-start;
  }

  .birthday-facts__grid {
    margin-top: 10px;
  }

  .about-facility > figure,
  .about-learning figure {
    min-height: 520px;
  }
}

@media (max-width: 720px) {
  .design-page {
    font-size: 16px;
  }

  .design-page-hero {
    min-height: 0;
  }

  .design-page-hero__copy {
    padding: 55px 22px 34px;
  }

  .design-page-hero h1 {
    font-size: clamp(3rem, 14vw, 4.5rem);
  }

  .design-page-hero__image {
    min-height: 420px;
  }

  .design-page--birthday .design-page-hero__image img {
    padding: 20px;
  }

  .design-page-facts,
  .age-card-grid,
  .shared-icon-features,
  .shared-info-row,
  .lesson-price-grid,
  .birthday-facts__grid,
  .birthday-activity-grid,
  .about-team__grid,
  .about-welfare__list {
    grid-template-columns: 1fr;
  }

  .design-page-facts > div,
  .design-page-facts > div:nth-child(n+2) {
    padding: 15px 0;
    border-right: 0;
    border-bottom: 1px solid var(--design-line);
  }

  .shared-icon-features article,
  .shared-icon-features article:first-child {
    padding: 20px 0;
    border-top: 1px solid #ffffff2b;
    border-left: 0;
  }

  .shared-icon-features article:first-child {
    border-top: 0;
  }

  .shared-split figure {
    min-height: 430px;
  }

  .shared-split > div,
  .birthday-experience > div,
  .about-facility > div,
  .about-learning > div {
    padding: 58px 24px;
  }

  .shared-info-row > div,
  .shared-info-row > div:first-child {
    padding: 22px 0;
    border-top: 1px solid var(--design-line);
    border-left: 0;
  }

  .shared-info-row > div:first-child {
    border-top: 0;
  }

  .shared-cta > div:last-child {
    width: 100%;
  }

  .birthday-facts__grid article {
    border-top: 1px solid var(--design-line);
    border-left: 0;
  }

  .birthday-experience figure {
    min-height: 430px;
    padding: 20px;
  }

  .about-team__grid figure {
    min-height: 430px;
  }
}

/* Coaching – auf Basis des gemeinsamen Seitendesigns */
.design-page--coaching {
  background: var(--design-paper);
}

.coaching-hero .design-page-hero__image img {
  object-position: center 42%;
}

.coaching-topics {
  max-width: none;
  background: var(--design-cream);
}

.coaching-pain {
  max-width: none;
  padding-top: 25px;
  background: var(--design-paper);
}

.coaching-pain > * {
  max-width: 1200px;
  margin-right: auto;
  margin-left: auto;
}

.coaching-pain-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}

.coaching-pain-grid article {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 17px;
  align-items: start;
  padding: 28px 30px;
  border: 1px solid var(--design-line);
  border-radius: 8px;
  background: #fffaf2;
}

.coaching-pain-grid span {
  color: var(--design-rust);
  font-family: Georgia, serif;
  font-size: 3rem;
  line-height: .8;
}

.coaching-pain-grid p {
  margin: 0;
  color: var(--design-green);
  font-family: Georgia, serif;
  font-size: 1.22rem;
  line-height: 1.45;
}

.coaching-topics > * {
  max-width: 1200px;
  margin-right: auto;
  margin-left: auto;
}

.coaching-topic-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
}

.coaching-topic-grid article {
  padding: 38px 32px;
  border: 1px solid var(--design-line);
  border-radius: 8px;
  background: #fffaf2;
}

.coaching-topic-grid h3 {
  margin: 23px 0 12px;
  font-size: 1.45rem;
}

.coaching-topic-grid p {
  margin: 0;
  color: #5a675f;
}

.coaching-mirror {
  display: grid;
  grid-template-columns: 1fr 1fr;
  max-width: 1500px;
  margin: auto;
  background: var(--design-deep);
  color: #eef4ef;
}

.coaching-mirror figure {
  position: relative;
  min-height: 650px;
  margin: 0;
}

.coaching-mirror figure img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.coaching-mirror > div {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: clamp(60px, 7vw, 105px);
}

.coaching-mirror h2 {
  color: #fffaf0;
  font-size: clamp(2.4rem, 4vw, 4.2rem);
}

.coaching-mirror__features {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 25px;
  margin-top: 22px;
}

.coaching-mirror__features span {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: .8rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.coaching-mirror__features svg {
  width: 20px;
  height: 20px;
  fill: none;
  stroke: #d8ddbd;
  stroke-width: 2;
}

.coaching-quote {
  display: grid;
  grid-template-columns: .82fr 1.18fr;
  gap: clamp(45px, 7vw, 100px);
  align-items: center;
}

.coaching-quote figure {
  position: relative;
  min-height: 560px;
  margin: 0;
  overflow: hidden;
  border-radius: 8px;
}

.coaching-quote figure img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.coaching-quote blockquote {
  margin: 0;
}

.coaching-quote__mark {
  display: block;
  height: 70px;
  color: var(--design-rust);
  font-family: Georgia, serif;
  font-size: 7rem;
  line-height: 1;
}

.coaching-quote blockquote p {
  color: var(--design-green);
  font-family: Georgia, serif;
  font-size: clamp(1.65rem, 3vw, 2.8rem);
  line-height: 1.35;
}

.coaching-quote cite {
  display: block;
  margin-top: 24px;
  color: #6b746e;
  font-size: .78rem;
  font-style: normal;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.coaching-process {
  max-width: none;
  background: var(--design-cream);
}

.coaching-process > * {
  max-width: 1200px;
  margin-right: auto;
  margin-left: auto;
}

.coaching-process__steps {
  display: grid;
  grid-template-columns: 1fr auto 1fr auto 1fr;
  align-items: center;
  gap: 18px;
}

.coaching-process__steps article {
  position: relative;
  min-height: 300px;
  padding: 38px 30px 28px;
  border: 1px solid var(--design-line);
  border-radius: 8px;
  background: #fffaf2;
}

.coaching-process__steps article > b {
  position: absolute;
  top: 24px;
  right: 25px;
  color: #839075;
  font-size: .9rem;
}

.coaching-process__steps h3 {
  margin: 22px 0 10px;
  font-size: 1.45rem;
}

.coaching-process__steps article p {
  color: #5a675f;
}

.coaching-process__steps > i {
  color: var(--design-olive);
  font-size: 1.6rem;
  font-style: normal;
}

.coaching-details {
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  gap: clamp(50px, 8vw, 115px);
  max-width: 1340px;
  margin: auto;
  padding: clamp(75px, 8vw, 125px) clamp(24px, 5vw, 70px);
}

.coaching-details h2 {
  font-size: clamp(2.3rem, 4vw, 4.2rem);
}

.coaching-details__cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}

.coaching-details__cards article {
  display: flex;
  align-items: center;
  gap: 16px;
  min-height: 125px;
  padding: 20px;
  border: 1px solid var(--design-line);
  border-radius: 8px;
  background: #fffaf2;
}

.coaching-details__cards strong,
.coaching-details__cards small {
  display: block;
}

.coaching-details__cards strong {
  color: var(--design-green);
}

.coaching-details__cards small {
  margin-top: 4px;
  color: #68736c;
}

.coaching-about {
  display: grid;
  grid-template-columns: 1fr 1fr;
  max-width: 1500px;
  padding: 0;
  background: var(--design-cream);
}

.coaching-about > div {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: clamp(60px, 7vw, 105px);
}

.coaching-about > div > strong {
  margin-top: 18px;
  color: var(--design-green);
}

.coaching-about figure {
  position: relative;
  min-height: 620px;
  margin: 0;
}

.coaching-about figure img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.coaching-outcome {
  display: grid;
  grid-template-columns: .85fr 1.15fr;
  gap: clamp(45px, 7vw, 100px);
  max-width: 1500px;
  margin: auto;
  padding: clamp(75px, 8vw, 120px) clamp(24px, 6vw, 90px);
  background: var(--design-deep);
  color: #edf4ef;
}

.coaching-outcome h2 {
  color: #fffaf0;
  font-size: clamp(2.45rem, 4.2vw, 4.5rem);
}

.coaching-outcome__intro > p:last-child {
  color: #d7e3da;
}

.coaching-outcome__grid {
  display: grid;
  gap: 12px;
}

.coaching-outcome__grid article {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 15px;
  padding: 19px 22px;
  border: 1px solid #ffffff2b;
  border-radius: 8px;
  background: #ffffff0a;
}

.coaching-outcome__grid article > svg {
  width: 24px;
  height: 24px;
  margin-top: 2px;
  fill: none;
  stroke: #dce3bd;
  stroke-width: 2;
}

.coaching-outcome__grid strong {
  color: #fffaf0;
  font-family: Georgia, serif;
  font-size: 1.18rem;
}

.coaching-outcome__grid p {
  margin: 4px 0 0;
  color: #ccd9d0;
  font-size: .9rem;
}

@media (max-width: 1050px) {
  .coaching-mirror,
  .coaching-quote,
  .coaching-details,
  .coaching-about {
    grid-template-columns: 1fr;
  }

  .coaching-outcome {
    grid-template-columns: 1fr;
  }

  .coaching-mirror figure,
  .coaching-about figure {
    min-height: 540px;
  }

  .coaching-process__steps {
    grid-template-columns: 1fr;
  }

  .coaching-process__steps > i {
    display: none;
  }

  .coaching-process__steps article {
    min-height: 0;
  }
}

@media (max-width: 720px) {
  .coaching-topic-grid,
  .coaching-details__cards {
    grid-template-columns: 1fr;
  }

  .coaching-pain-grid {
    grid-template-columns: 1fr;
  }

  .coaching-mirror figure,
  .coaching-quote figure,
  .coaching-about figure {
    min-height: 430px;
  }

  .coaching-mirror > div,
  .coaching-about > div {
    padding: 58px 24px;
  }

  .coaching-quote blockquote p {
    font-size: 1.55rem;
  }
}
