/* FAQ / Kundengeschichten layout. The source head and shared styles own typography, navigation and components. */
.subpage { --subpage-content-top: clamp(40px, 6vw, 80px); }

.subpage #main-content {
  padding-top: var(--site-nav-height, 70.4px);
}

.subpage #main-content > .subpage-content {
  padding-top: var(--subpage-content-top);
  padding-bottom: clamp(56px, 7vw, 96px);
}

.subpage section[id],
.subpage details[id],
.subpage #main-content {
  scroll-margin-top: calc(0px + var(--site-nav-height, 70.4px) + 24px);
}

.subpage .faq-intro {
  /* Match the initial content inset: sticky from the first scroll pixel. */
  top: calc(0px + var(--site-nav-height, 70.4px) + var(--subpage-content-top));
}

.subpage .faq-content {
  min-width: 0;
}

.subpage .subpage-stories {
  background: #F4F2EE;
}

.subpage .stories-heading {
  margin-top: 0;
}

.subpage .stories-heading h1 {
  max-width: 18ch;
  text-wrap: balance;
}

.subpage .story-grid {
  margin-top: clamp(32px, 4vw, 52px);
}

.subpage .nav-links a[aria-current="page"],
.subpage .mobile-menu a[aria-current="page"],
.subpage .footer-links a[aria-current="page"] {
  color: #225d97;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 5px;
}

/* Five reasons — moved to customer stories at Ken1313's request. */
#fuenf-gruende { background: #FCFBF8; padding-block: clamp(56px,7vw,96px); }
#fuenf-gruende .reason-heading { max-width: 850px; margin-bottom: 40px; }
#fuenf-gruende .reason-heading .eyebrow { margin-bottom: 18px; }
#fuenf-gruende .reason-heading h2 { max-width: 23ch; font-size: clamp(34px,3.6vw,52px); font-weight: 400; line-height: 1.12; letter-spacing: -.035em; text-wrap: balance; }
#fuenf-gruende .reason-grid { display: grid; grid-template-columns: repeat(12,minmax(0,1fr)); gap: 22px; }
#fuenf-gruende .reason-card { grid-column: span 4; display: flex; flex-direction: column; min-width: 0; padding: 28px; background: #F4F2EE; border: 1px solid #e4e3df; border-radius: 12px; }
#fuenf-gruende .reason-card:nth-child(-n+2) { grid-column: span 6; }
#fuenf-gruende .reason-card-metric { background: #eff5fa; border-color: #dbe6ee; }
#fuenf-gruende .reason-topline { display: flex; align-items: center; gap: 12px; margin-bottom: 24px; }
#fuenf-gruende .reason-index { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 32px; width: 32px; height: 32px; border: 1px solid #b4c9dc; border-radius: 50%; color: #2f6fb0; font-size: 12px; font-weight: 700; }
#fuenf-gruende .reason-kind { color: #4e6479; font-size: 10px; line-height: 1.5; letter-spacing: .07em; text-transform: uppercase; }
#fuenf-gruende .reason-metric { min-height: 142px; margin-bottom: 22px; }
#fuenf-gruende .reason-figure { display: flex; align-items: baseline; gap: 10px; color: #2f6fb0; }
#fuenf-gruende .reason-figure .stat-num { font-size: clamp(68px,6.5vw,94px); font-weight: 700; line-height: .95; letter-spacing: -.06em; font-variant-numeric: tabular-nums; }
#fuenf-gruende .reason-figure .stat-count-value { display: inline-block; }
#fuenf-gruende .reason-prefix { font-size: 14px; letter-spacing: 0; }
#fuenf-gruende .reason-unit { font-size: 25px; font-weight: 400; letter-spacing: -.02em; margin-left: 5px; }
#fuenf-gruende .reason-metric-label { max-width: 32ch; margin: 12px 0 0; color: #435b70; font-size: 13px; line-height: 1.5; }
#fuenf-gruende .reason-illustration { height: 142px; display: flex; align-items: flex-start; margin-bottom: 22px; color: #4c91d6; }
#fuenf-gruende .reason-illustration svg { width: 84px; height: 84px; }
#fuenf-gruende .reason-card h3 { margin: 0 0 16px; color: #1a1c20; font-size: clamp(24px,2vw,28px); line-height: 1.18; letter-spacing: -.025em; font-weight: 700; }
#fuenf-gruende .reason-card > p { color: #434b54; font-size: 15px; line-height: 1.7; }
#fuenf-gruende .reason-card > p:not(.reason-evidence) { margin: 0 0 24px; }
#fuenf-gruende .reason-card > .reason-evidence { margin: auto 0 0; padding-top: 18px; border-top: 1px solid #d0dbe4; color: #4e6479; font-size: 12px; line-height: 1.65; }
#fuenf-gruende .reason-source { max-width: 950px; margin: 26px 0 0; color: #596573; font-size: 12px; line-height: 1.7; }
@media (max-width: 1000px) {
  #fuenf-gruende .reason-card { grid-column: span 6; }
  #fuenf-gruende .reason-card:last-child { grid-column: span 12; }
  #fuenf-gruende .reason-card:last-child .reason-illustration { height: 100px; }
}
@media (max-width: 600px) {
  #fuenf-gruende .reason-grid { grid-template-columns: 1fr; gap: 16px; }
  #fuenf-gruende .reason-card, #fuenf-gruende .reason-card:nth-child(-n+2), #fuenf-gruende .reason-card:last-child { grid-column: auto; padding: 22px; }
  #fuenf-gruende .reason-heading { margin-bottom: 28px; }
  #fuenf-gruende .reason-topline { margin-bottom: 22px; }
  #fuenf-gruende .reason-metric { min-height: 0; margin-bottom: 24px; }
  #fuenf-gruende .reason-illustration, #fuenf-gruende .reason-card:last-child .reason-illustration { height: 90px; margin-bottom: 18px; }
  #fuenf-gruende .reason-illustration svg { width: 70px; height: 70px; }
}
@media print {
  .subpage #main-content { padding-top: 0; }
  .subpage .faq-intro { position: static; }
  #fuenf-gruende .reason-card { break-inside: avoid; }
}

/* Team: five equal cards in one grid; centre the two-card second row. */
.subpage-team #team .team-card[id] { min-width: 0; scroll-margin-top: calc(0px + var(--site-nav-height, 70.4px) + 24px); }
.subpage-team #team .team-photo { height: auto; aspect-ratio: 4 / 5; object-position: center top; }
@media (min-width: 761px) {
  .subpage-team #team .team-grid { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  .subpage-team #team .team-card { grid-column: span 2; }
  .subpage-team #team .team-card:nth-child(4) { grid-column: 2 / span 2; }
}

/* Ken1653 — approved static voices. The retained ID is a deep link only.
   Override the frozen head's #marquee mobile padding/overflow, nothing else. */
.subpage-kundengeschichten #marquee.approved-voices {
  padding: clamp(56px, 7vw, 96px) clamp(20px, 4.5vw, 68px) !important;
  overflow: visible !important;
  background: #FCFBF8;
  color: #1A1C20;
  text-shadow: none;
}
.subpage-kundengeschichten .approved-voices__header {
  margin-bottom: clamp(28px, 3.5vw, 48px);
}
.subpage-kundengeschichten .approved-voices__title {
  max-width: 22ch;
  margin: 0;
  font-size: clamp(32px, 3.8vw, 54px);
  font-weight: 300;
  line-height: 1.08;
  letter-spacing: -.035em;
  text-wrap: balance;
}
.subpage-kundengeschichten .approved-voices__title em {
  color: #367bbf;
  font-weight: inherit;
}
.subpage-kundengeschichten .approved-voices__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: stretch;
  gap: clamp(20px, 2.4vw, 32px);
}
.subpage-kundengeschichten .approved-voices__panel {
  display: flex;
  flex-direction: column;
  min-width: 0;
  margin: 0;
  padding: clamp(28px, 3vw, 44px);
  border: 1px solid #dbe3e9;
  border-radius: 16px;
  background: #F4F2EE;
}
.subpage-kundengeschichten .approved-voices__mark {
  display: block;
  height: 44px;
  margin-bottom: 12px;
  color: #367bbf;
  font-size: 64px;
  font-weight: 300;
  line-height: 1;
}
.subpage-kundengeschichten .approved-voices__quote {
  margin: 0 0 clamp(28px, 3vw, 40px);
  color: #283b4d;
  font-size: clamp(19px, 1.65vw, 23px);
  font-weight: 300;
  line-height: 1.55;
  letter-spacing: -.012em;
  overflow-wrap: break-word;
}
.subpage-kundengeschichten .approved-voices__quote p { margin: 0; }
.subpage-kundengeschichten .approved-voices__attribution {
  margin-top: auto;
  padding-top: 22px;
  border-top: 1px solid #cfd9e1;
}
.subpage-kundengeschichten .approved-voices__name {
  display: block;
  font-size: 17px;
  font-weight: 700;
  line-height: 1.4;
}
.subpage-kundengeschichten .approved-voices__role {
  display: block;
  max-width: 44ch;
  margin-top: 5px;
  color: #4b5967;
  font-size: 14px;
  font-weight: 300;
  line-height: 1.55;
}
@media (max-width: 760px) {
  .subpage-kundengeschichten .approved-voices__grid { grid-template-columns: 1fr; gap: 20px; }
  .subpage-kundengeschichten .approved-voices__panel { padding: 24px; border-radius: 12px; }
  .subpage-kundengeschichten .approved-voices__quote { font-size: 18px; }
}
@media (max-width: 360px) {
  .subpage-kundengeschichten .approved-voices__panel { padding: 22px; }
}
@media print {
  .subpage-kundengeschichten .approved-voices__grid { grid-template-columns: 1fr; }
  .subpage-kundengeschichten .approved-voices__panel { break-inside: avoid; }
}
