/* Lesbarer Einstieg, bis Flutter sein erstes Bild gezeichnet hat. Alle Regeln
   bleiben unter #startinhalt, damit sie die Anwendung nicht beeinflussen. */
:root {
  --start-navy: #17365B;
  --start-akzent: #115EC5;
  --start-akzent-hell: #A1C6F7;
  --start-papier: #FAF8F4;
  --start-linie: #E3DCD0;
}

#startinhalt,
#startinhalt * { box-sizing: border-box; }
body { margin: 0; }

#startinhalt {
  min-height: 100vh;
  background: var(--start-papier);
  color: var(--start-navy);
  font: 17px/1.5 system-ui, -apple-system, "Segoe UI", sans-serif;
}

#startinhalt .startkopf {
  min-height: 72px;
  padding: 12px max(16px, calc((100% - 1200px) / 2));
  background: #FFFFFF;
  border-bottom: 1px solid var(--start-linie);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}

#startinhalt .startmarke {
  color: var(--start-navy);
  font-size: 24px;
  font-weight: 800;
  text-decoration: none;
}

#startinhalt .startkopf nav a {
  color: var(--start-akzent);
  font-weight: 700;
  text-decoration: none;
}

#startinhalt .startkopf a:focus-visible,
#startinhalt .startlinks a:focus-visible {
  outline: 2px solid #2F80ED;
  outline-offset: 2px;
}

#startinhalt .startheld {
  position: relative;
  min-height: 340px;
  padding: 48px max(24px, calc((100% - 1200px) / 2));
  background: url("bilder/hero-busik-reise.webp") center / cover;
  color: #FFFFFF;
  display: flex;
  align-items: center;
}

#startinhalt .startheld::before {
  position: absolute;
  inset: 0;
  background: rgba(23, 54, 91, 0.78);
  content: "";
}

#startinhalt .startheld-inhalt {
  position: relative;
  z-index: 1;
  max-width: 720px;
}

#startinhalt h1 {
  margin: 0;
  max-width: 680px;
  font-size: 46px;
  line-height: 1.1;
  letter-spacing: 0;
}

#startinhalt .startclaim {
  margin: 24px 0 8px;
  color: var(--start-akzent-hell);
  font-size: 22px;
  font-weight: 700;
}

#startinhalt .startheld-inhalt > p:last-child {
  margin: 0;
  max-width: 680px;
}

#startinhalt .startinfo {
  max-width: 760px;
  margin: 0 auto;
  padding: 32px 16px 48px;
}

#startinhalt .startinfo h2 {
  margin: 0 0 8px;
  font-size: 28px;
  line-height: 1.2;
  letter-spacing: 0;
}

#startinhalt .startinfo p { max-width: 68ch; }
#startinhalt .startladen { color: #496B97; }

#startinhalt .startlinks {
  margin-top: 24px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px 16px;
}

#startinhalt .startlink {
  min-height: 44px;
  padding: 10px 0;
  color: var(--start-akzent);
  font-weight: 700;
}

#startinhalt .startlink-primaer {
  padding: 10px 18px;
  border-radius: 8px;
  background: var(--start-akzent);
  color: #FFFFFF;
  text-decoration: none;
}

#startinhalt .startantworten {
  max-width: 1200px;
  margin: 0 auto;
  padding: 48px 24px 64px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 32px 48px;
}

#startinhalt .startantworten article { min-width: 0; }

#startinhalt .startantworten h2 {
  margin: 0 0 8px;
  font-size: 22px;
  line-height: 1.3;
  letter-spacing: 0;
}

#startinhalt .startantworten p {
  max-width: 68ch;
  margin: 0;
}

#startinhalt .startantworten ol {
  margin: 8px 0 0;
  padding-left: 24px;
}

#startinhalt .startantworten li { margin-bottom: 4px; }

#startinhalt .startantworten a,
#startinhalt .startfaq a {
  color: var(--start-akzent);
  font-weight: 700;
}

#startinhalt .startfaq {
  padding: 48px max(24px, calc((100% - 1200px) / 2)) 64px;
  background: #FFFFFF;
}

#startinhalt .startfaq > h2 {
  margin: 0 0 8px;
  font-size: 28px;
  line-height: 1.2;
  letter-spacing: 0;
}

#startinhalt .startfaq-einleitung {
  max-width: 68ch;
  margin: 0;
  color: #496B97;
}

#startinhalt .startfaq-liste {
  margin-top: 32px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 32px 48px;
}

#startinhalt .startfaq h3 {
  margin: 0 0 6px;
  font-size: 18px;
  line-height: 1.3;
  letter-spacing: 0;
}

#startinhalt .startfaq article p { margin: 0; }

@media (max-width: 699px) {
  #startinhalt .startheld {
    min-height: 320px;
    padding: 32px 16px;
    background-position: 62% center;
  }

  #startinhalt h1 { font-size: 32px; }
  #startinhalt .startclaim { font-size: 19px; }
  #startinhalt .startantworten {
    padding: 32px 16px 48px;
    grid-template-columns: 1fr;
    gap: 32px;
  }
  #startinhalt .startfaq { padding: 32px 16px 48px; }
  #startinhalt .startfaq-liste {
    grid-template-columns: 1fr;
    gap: 24px;
  }
}
