/*
 * Claudia Paulsen – minimale mobile Korrekturen
 * Keine Theme-Container, Spalten, Bilder oder Hero-Elemente werden verändert.
 */

@media screen and (max-width: 600px) {
  /*
   * The7 behält seine originalen alignfull-Breiten. Lediglich der außerhalb
   * des Viewports liegende Teil erzeugt keine horizontale Scrollfläche mehr.
   */
  html,
  body {
    overflow-x: clip;
  }

  /*
   * Startseite: Die Hero-Textspalte wird vom Theme mobil mit ca. 476 px
   * berechnet und dadurch im 309-px-Inhaltsbereich seitlich abgeschnitten.
   * Nur diese Textspalte wird auf die tatsächlich verfügbare Breite gesetzt.
   */
  body.home .wp-container-content-9cfa9a5a,
  body.home .wp-container-content-9cfa9a5a > .wp-block-group {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    margin-right: 0;
    margin-left: 0;
  }

  /* Lange Hero-Überschrift vollständig innerhalb der Textspalte halten. */
  body.home .wp-container-content-9cfa9a5a h2.wpbbe-af598664 {
    max-width: 100%;
    font-size: clamp(1.75rem, 8vw, 2.25rem) !important;
    line-height: 1.08 !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
  }

  /* Hero-Fließtext auf kleinen Displays gut lesbar halten. */
  body.home .wp-container-content-9cfa9a5a p {
    font-size: max(1rem, 16px) !important;
    line-height: 1.55 !important;
  }

  /* Der Hero-CTA bleibt vollständig lesbar und gut antippbar. */
  body.home .wp-container-content-9cfa9a5a .wp-block-button,
  body.home .wp-container-content-9cfa9a5a .wp-block-button__link {
    max-width: 100%;
  }

  body.home .wp-container-content-9cfa9a5a .wp-block-button__link {
    min-height: 48px;
    padding: 0.8rem 1.1rem;
    white-space: normal;
    overflow-wrap: break-word;
  }

  /* Mobile Kopfzeile: Logo und Menüschalter erhalten sichere Tapflächen. */
  header .custom-logo-link {
    display: inline-flex;
    min-height: 44px;
    align-items: center;
  }

  header .wp-block-navigation__responsive-container-open,
  header .wp-block-navigation__responsive-container-close {
    width: 44px;
    height: 44px;
    padding: 7px;
    align-items: center;
    justify-content: center;
  }

  /* Links im geöffneten Mobilmenü sind mit dem Finger sicher erreichbar. */
  header .wp-block-navigation__responsive-container.is-menu-open
    .wp-block-navigation-item__content {
    display: flex;
    min-height: 44px;
    align-items: center;
    padding-top: 0.65rem;
    padding-bottom: 0.65rem;
  }

  /* Social-Media-Symbole im Footer: größere Tapfläche, gleiche Icongröße. */
  footer .wp-block-social-link-anchor {
    width: 44px;
    height: 44px;
    align-items: center;
    justify-content: center;
  }

  footer .wp-block-navigation-item__content {
    display: flex;
    min-height: 44px;
    align-items: center;
    padding-top: 0.55rem;
    padding-bottom: 0.55rem;
  }

  /* Kontaktseite: ausschließlich überbreite Formularelemente korrigieren. */
  .wpcf7-form,
  .wpcf7-form p,
  .wpcf7-form label,
  .wpcf7-form-control-wrap {
    max-width: 100%;
    min-width: 0;
  }

  .wpcf7-form-control-wrap {
    display: block;
  }

  .wpcf7 input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
  .wpcf7 select,
  .wpcf7 textarea {
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    font-size: 16px;
  }

  .wpcf7 textarea {
    resize: vertical;
  }
}
