/* Homepage refinements, shared by the German and English versions. */
@media (max-width:620px) {
  body[data-page="home"] .film-hero { height:auto; min-height:0; }
  body[data-page="home"] .film-hero .film-hero-content {
    padding-top:clamp(112px,15svh,132px);
    padding-bottom:44px;
  }
}
@media (min-width:621px) and (max-width:900px) and (max-height:500px) {
  body[data-page="home"] .film-hero { height:auto; min-height:0; }
  body[data-page="home"] .film-hero .film-hero-content { padding-top:110px; padding-bottom:44px; }
}
body[data-page="home"] .film-landscape video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

body[data-page="home"] .film-hero::after { background: rgb(0 0 0 / .28); }
body[data-page="home"] .film-hero-content { text-shadow: 0 2px 24px rgb(0 0 0 / .24); }
body[data-page="home"] .film-hero .actions { text-shadow: none; }

body[data-page="home"] .client-section[data-client-globe] .client-globe-view {
  width: min(1120px, calc(100vw - 32px));
  height: clamp(360px, 68vw, 780px);
  margin-left: 50%;
  transform: translateX(-50%);
}

#behind-impact .phone-stage { width: 80%; margin-inline: auto; }

.home-strategy { border-top: 1px solid var(--line); }
.home-strategy .strategy-intro { max-width: 850px; margin-inline: auto; text-align: center; }
.home-strategy .strategy-location {
  margin: 0 auto 20px;
  color: var(--muted);
  font-size: 16px;
  font-weight: 600;
}
.home-strategy h2 {
  max-width: 19ch;
  margin: 0 auto;
  font-size: clamp(38px, 5.2vw, 76px);
  font-weight: 800;
  line-height: 1.04;
  letter-spacing: -.04em;
  text-align: center;
  text-wrap: balance;
  hyphens: none;
}
.home-strategy .strategy-copy {
  max-width: 62ch;
  margin: 28px auto 0;
  color: var(--muted);
  font-size: clamp(17px, 1.5vw, 21px);
  line-height: 1.65;
}
.strategy-steps {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(24px, 3vw, 44px);
  margin: clamp(44px, 5vw, 72px) 0 0;
  padding: 0;
  list-style: none;
}
.strategy-steps li { min-width: 0; border-top: 1px solid var(--line); padding-top: 24px; text-align: center; }
.strategy-step-number {
  display: block;
  margin-bottom: 32px;
  color: var(--ink);
  font-size: clamp(36px, 3.8vw, 54px);
  font-weight: 500;
  line-height: 1;
  letter-spacing: -.05em;
  font-variant-numeric: tabular-nums;
}
.home-strategy .strategy-steps h3 {
  margin: 0;
  font-size: clamp(21px, 1.8vw, 27px);
  font-weight: 750;
  line-height: 1.2;
  letter-spacing: -.025em;
  text-align: center;
  hyphens: none;
}
.strategy-steps p { margin: 16px auto 0; max-width: 32ch; color: var(--muted); font-size: 16px; line-height: 1.7; }

@media (min-width: 768px) and (max-width: 1050px) {
  .strategy-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 36px; }
}
@media (max-width: 767px) {
  .strategy-steps { grid-template-columns: 1fr; gap: 26px; }
  .strategy-steps li { padding-top: 22px; }
  .strategy-step-number { margin-bottom: 20px; font-size: 34px; }
  .strategy-steps p { max-width: 44ch; margin-top: 10px; }
  .home-strategy .strategy-copy { margin-top: 24px; }
}

/* Founder profiles link to the same accounts as the original website. */
.team-home .founder-links { display: flex; justify-content: center; flex-wrap: wrap; gap: 0 18px; margin-top: 14px; }
.team-home .founder-links a { display: inline-flex; align-items: center; min-height: 44px; color: var(--ink); font-size: 14px; text-decoration: underline; text-underline-offset: 4px; text-decoration-thickness: 1px; }
.team-home .founder-links a:hover { text-decoration-thickness: 2px; }
@media (max-width: 560px) { .team-home .founder-links { gap: 0 12px; margin-top: 10px; } .team-home .founder-links a { font-size: 12px; } }
