/* Approved corrections and final polish, 18 September 2026. Local assets only. */
.site-header .brand img { width: 149px; height: 76px; }
.hero__positioning {
  margin: 0 0 28px;
  color: var(--ink);
  font-size: 0.85rem;
  font-weight: 700;
  line-height: 1.55;
  letter-spacing: 0.06em;
}
.hero .eyebrow { margin-bottom: 14px; }
.hero__continuation {
  grid-column: 1 / -1;
  width: var(--container);
  max-width: 900px;
  margin: 0 auto;
  padding: clamp(48px, 6vw, 88px) 0 0;
}
.hero__continuation > p:last-child { margin-bottom: 0; }
.problem__thoughts p { margin: 0 0 0.6em; }
.highlight-copy p:last-child { margin-bottom: 0; }
.button--dark { border-color: var(--magenta); background: var(--magenta); }
.button--dark:hover, .button--dark:focus-visible { color: var(--magenta); }
.button:disabled { opacity: 0.65; cursor: wait; }
.outcomes__grid p::before { width: 9.5px; height: 9.5px; }
.statement-list li::before { width: 11.5px; height: 11.5px; }
.outcomes__final p:last-child {
  font-size: clamp(1.65rem, 2.8vw, 2.7rem);
  font-weight: 600;
  line-height: 1.25;
  color: var(--peach);
}
.included li { grid-template-columns: 38px minmax(0, 1fr); align-items: start; gap: 20px; }
.included li strong { font-size: 1.2em; }
.service-icon {
  width: 32px;
  height: 32px;
  padding: 4px;
  border-radius: 50%;
  color: var(--magenta);
  background: var(--peach-light);
}
.testimonials { grid-template-columns: repeat(3, minmax(0, 1fr)); }
/* Preserve three equal card widths and center an incomplete final desktop row. */
@media (min-width: 1101px) {
  .testimonials { grid-template-columns: repeat(6, minmax(0, 1fr)); border-left-color: transparent; }
  .testimonials > .testimonial-card { grid-column: span 2; }
  .testimonials > .testimonial-card:nth-child(3n + 1) { border-left: 1px solid var(--line); }
  .testimonials > .testimonial-card:last-child:nth-child(3n + 1) { grid-column: 3 / span 2; }
  .testimonials > .testimonial-card:nth-last-child(2):nth-child(3n + 1) { grid-column: 2 / span 2; }
  /* Desktop only: Jürgen completes row two; Kathrin and Elisa share row three. */
  .testimonials > .testimonial-card:nth-child(6) { grid-row: 3; grid-column: 4 / span 2; }
  .testimonials > .testimonial-card:nth-child(7) { grid-row: 3; grid-column: 2 / span 2; }
  .testimonials > .testimonial-card:nth-child(8) { grid-row: 2; grid-column: 5 / span 2; }
}
.testimonials .testimonial-card {
  display: flex;
  flex-direction: column;
  padding: 32px;
  min-height: 0;
}
.testimonial__text { margin: 0 0 24px; }
.testimonials .testimonial__text p {
  margin: 0 0 1em;
  font-size: 1rem;
  line-height: 1.7;
  font-weight: 400;
  color: var(--ink);
}
.testimonials .testimonial__text p:last-child { margin-bottom: 0; }
.testimonials .testimonial__author {
  margin: auto 0 0;
  font-size: 1rem;
  font-weight: 700;
  color: var(--magenta);
}
.leadmagnet__intro { margin: 30px 0 0; font-size: 1.05rem; line-height: 1.7; }
.leadmagnet h2 { position: static; }
.site-footer__links { gap: 14px; }
.site-footer .site-footer__note { max-width: 26rem; white-space: normal; }
.social-icon { display: inline-flex; width: 44px; height: 44px; align-items: center; justify-content: center; }
.social-icon svg { width: 24px; height: 24px; }
.contact-notice {
  margin: 28px 0;
  padding: 20px;
  border: 1px solid var(--magenta);
  color: var(--ink);
  background: var(--peach-light);
}
.contact-honeypot {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}
/* Customer-approved motion: preserve scale, duration and timing exactly. */
@keyframes reconnect-hero-zoom {
  from { transform: scale(1); }
  to { transform: scale(1.15); }
}
@keyframes reconnect-about-zoom {
  from { transform: scale(1); }
  to { transform: scale(1.12); }
}
@media screen and (prefers-reduced-motion: no-preference) {
  .reconnect-onepager .portrait--hero > img {
    animation: reconnect-hero-zoom 4s linear infinite alternate;
  }
  .reconnect-onepager .portrait--about > img {
    animation: reconnect-about-zoom 4s linear infinite alternate;
  }
}
@media (prefers-reduced-motion: reduce) {
  .reconnect-onepager .portrait--hero > img,
  .reconnect-onepager .portrait--about > img { animation: none; transform: none; }
}
@media (max-width: 1100px) {
  .testimonials { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 980px) {
  .site-header .brand img { width: 118px; height: 60px; }
}
@media (max-width: 800px) {
  /* The offset orange background protruded left of the mobile image mask. */
  .hero__color-block { display: none; }
  .hero__positioning { font-size: 0.8rem; letter-spacing: 0.035em; }
  .hero__content { padding-top: 38px; }
  .hero__continuation { padding-top: 48px; }
  .included li { grid-template-columns: 32px minmax(0, 1fr); gap: 16px; }
}
@media (max-width: 600px) {
  .testimonials { grid-template-columns: 1fr; }
  .testimonials .testimonial-card { padding: 30px 24px; }
}
@media print {
  .portrait--hero img, .portrait--about img { animation: none; transform: none; }
}

/* A single heading scale overrides the earlier section-specific display sizes. */
.reconnect-onepager {
  --fs-h1: clamp(2rem, 1.5rem + 2.22vw, 3.5rem);
  --fs-h2: clamp(1.75rem, 1.3rem + 1.45vw, 2.625rem);
  --fs-h3: clamp(1.375rem, 1.05rem + 1.05vw, 2rem);
  --fs-h4: clamp(1.125rem, 0.95rem + 0.5vw, 1.375rem);
  --reconnect-admin-offset: 0px;
}
.reconnect-onepager.admin-bar { --reconnect-admin-offset: 32px; }
.reconnect-onepager main h1 {
  margin: 0 0 28px;
  font-size: var(--fs-h1);
  line-height: 1.12;
  text-wrap: balance;
}
.reconnect-onepager main h2 {
  font-size: var(--fs-h2);
  line-height: 1.18;
  letter-spacing: -0.04em;
  text-wrap: balance;
}
.reconnect-onepager main h3 {
  margin: 0 0 26px;
  font-size: var(--fs-h3);
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: -0.025em;
}
.reconnect-onepager main h4 {
  margin: 0 0 28px;
  font-size: var(--fs-h4);
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: -0.02em;
}
.reconnect-onepager .eyebrow { font-size: clamp(0.75rem, 0.7rem + 0.15vw, 0.875rem); }
.hero__lead {
  margin: 0 0 18px;
  font-size: clamp(1.4rem, 1.1rem + 0.9vw, 2rem);
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: -0.025em;
  color: var(--ink);
}
.hero__headline-accent { color: var(--magenta); }
.hero__content { padding-top: 42px; padding-bottom: 42px; }
.hero { min-height: auto; }
.hero__visual { min-height: 700px; }
.hero__positioning { margin-bottom: 24px; }
.hero__copy { padding-bottom: 56px; }
.entry-solution {
  width: var(--container);
  max-width: 1060px;
  margin: 0 auto;
  padding: 52px 0 80px;
  border-top: 1px solid var(--line);
}
.entry-solution h2 { max-width: 780px; color: var(--magenta); }
.entry-solution > p { max-width: 900px; }
.problem__thoughts { font-size: clamp(1.125rem, 1rem + 0.45vw, 1.4rem); font-weight: 600; line-height: 1.5; }
.problem__thoughts p { margin: 0 0 0.35em; }
.problem__thoughts p:last-child { font-weight: 700; margin-bottom: 0; }
.approach .section-heading h2 { margin-bottom: 22px; }
.approach .section-heading h3 { color: var(--magenta); }
.levels h4 { color: var(--magenta); }
.reconnect-onepager main .daily-life__big { font-size: clamp(1.875rem, 1.5rem + 0.85vw, 2.25rem); color: var(--orange); }
.reconnect-onepager main .leadmagnet__promises { color: var(--peach); line-height: 1.4; }
.testimonials article.testimonial-card { background: var(--peach-light); }
.about__highlight h3 { color: var(--white); }

/* The root supplies the header offset once; targets add only breathing room. */
.reconnect-onepager main [id] { scroll-margin-top: 20px; }
.reconnect-onepager main .section[id],
.reconnect-onepager main .leadmagnet[id] {
  scroll-margin-top: calc(20px - var(--section-space));
}
.about__visual {
  top: calc(var(--header-height) + var(--reconnect-admin-offset, 0px) + 24px);
  display: grid;
  grid-template-rows: minmax(0, 1fr) auto;
  height: min(860px, calc(100svh - var(--header-height) - var(--reconnect-admin-offset, 0px) - 48px));
  padding-bottom: 10px;
}
.about__visual .portrait--about { height: 100%; min-height: 0; max-height: none; }
.about__visual .about__script { margin-top: -24px; }
.problem__visual { top: calc(var(--header-height) + var(--reconnect-admin-offset, 0px) + 24px); }
@media (max-width: 980px) and (min-width: 801px) {
  .hero { grid-template-columns: 1.25fr 0.75fr; }
}
@media (max-width: 800px) {
  .hero__visual { min-height: 132vw; }
  .hero__content { padding-top: 38px; }
  .entry-solution { padding: 40px 0 64px; }
  .problem__visual, .about__visual { position: static; height: auto; display: block; padding-bottom: 0; }
  .about__visual .portrait--about { height: min(128vw, 680px); }
}
@media (max-width: 782px) {
  .reconnect-onepager.admin-bar { --reconnect-admin-offset: 46px; }
}
@media (min-width: 801px) and (max-height: 640px) {
  .problem__visual, .about__visual { position: static; }
  .about__visual { height: 640px; }
}
@media print {
  .about__visual, .problem__visual { position: static; height: auto; display: block; }
  .about__visual .portrait--about { height: 500px; }
}
