/* ─────────────────────────────────────────────────────────
   Blue Terra — the launch page (launch.html)

   Only what this page adds. The header, the photograph at the top, the
   trip cards, the four points, the contact panel and the footer all come
   from styles.css, so they look exactly as on the home page.
   ───────────────────────────────────────────────────────── */

/* ── The photograph at the top: "Ab Januar 2027" above the headline ── */
.ln-eyebrow {
  display: inline-block; margin: 0 0 1rem; padding: .4rem .95rem;
  border: 1px solid rgba(255, 255, 255, .55); border-radius: 999px;
  background: rgba(8, 24, 38, .28); color: #fff;
  font-size: .8125rem; font-weight: 600; letter-spacing: .14em; text-transform: uppercase;
}

/* The small terracotta line above a heading. */
.ln-overline {
  font-size: .8rem; font-weight: 600; letter-spacing: .16em; text-transform: uppercase;
  color: var(--terra); margin: 0 0 .8rem;
}

/* ── 1. Who we are: words beside the turtle photograph. On a phone the
   words come first and the photograph follows, just above "What to expect". ── */
.ln-who { background: var(--cream); }
.ln-row { display: grid; gap: clamp(1.75rem, 4vw, 4.5rem); align-items: center; }
@media (min-width: 860px) {
  .ln-row { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
}
.ln-text h2 { color: var(--heading); margin: 0 0 1.1rem; text-wrap: balance; }
.ln-text p:not(.ln-overline) { margin: 0 0 1rem; color: var(--text); line-height: 1.7; }
.ln-text p:last-child { margin-bottom: 0; }
.ln-figure { margin: 0; }
.ln-figure img {
  display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover;
  border-radius: var(--radius); box-shadow: var(--shadow);
}
@media (max-width: 859px) { .ln-figure img { aspect-ratio: 3 / 2; } }

/* ── 2. What to expect: the home page's four points, on white ── */
.ln-expect { background: #fff; padding-top: clamp(1.875rem, 6vw, 6rem); }
.ln-expect .ln-overline { text-align: center; }

/* ── 3. The first expeditions: the home page's cards ── */
#expeditions h2 { margin-bottom: clamp(1.5rem, 3vw, 2.5rem); }

/* ── 4. Founding members: words over a photograph, darkened ── */
.ln-founding {
  position: relative; isolation: isolate; color: #fff; text-align: center;
  background: center 40% / cover no-repeat var(--navy-deep);
  padding: clamp(4rem, 10vw, 7.5rem) 0;
  scroll-margin-top: var(--header-h);
}
.ln-founding-scrim {
  position: absolute; inset: 0; z-index: -1;
  background: linear-gradient(180deg, rgba(10, 34, 52, .72), rgba(10, 34, 52, .6));
}
.ln-founding-inner { max-width: 720px; }
.ln-founding h2 { margin: 0 0 1rem; }
.ln-founding-text { font-size: clamp(1.05rem, 1.6vw, 1.25rem); line-height: 1.6; margin: 0 auto .6rem; color: #fff; }
.ln-founding-note { margin: 0 0 1.75rem; color: rgba(255, 255, 255, .85); font-weight: 600; }

/* ── 5. Questions: one open at a time is up to the reader ── */
.ln-faq { background: var(--cream); }
.ln-faq-inner { max-width: 820px; }
.ln-faq h2 { margin-bottom: clamp(1.5rem, 3vw, 2.25rem); color: var(--heading); }
.ln-faq-list { display: grid; gap: .75rem; }
.ln-faq-item { background: #fff; border-radius: var(--radius-sm); box-shadow: var(--shadow); }
.ln-faq-item summary {
  list-style: none; cursor: pointer; position: relative;
  padding: 1.1rem 3.25rem 1.1rem 1.4rem;
  font-family: var(--display); font-weight: 600; font-size: 1.25rem; line-height: 1.3; color: var(--heading);
}
.ln-faq-item summary::-webkit-details-marker { display: none; }
/* A plus that turns into a minus when the answer is open. */
.ln-faq-item summary::after {
  content: "+"; position: absolute; right: 1.3rem; top: 50%; transform: translateY(-50%);
  font-family: var(--sans); font-weight: 400; font-size: 1.6rem; color: var(--terra);
}
.ln-faq-item[open] summary::after { content: "\2212"; }
.ln-faq-item p { margin: 0; padding: 0 1.4rem 1.25rem; color: var(--text); line-height: 1.7; }

/* The contact panel follows the cream FAQ band without a seam. */
.launch-page .contact-wrap { padding-top: clamp(1rem, 3vw, 2rem); }

/* The page's two big buttons carry long German labels; on a narrow phone
   they wrap onto two lines instead of running off the screen. */
.launch-page .btn-lg { white-space: normal; max-width: 100%; text-align: center; line-height: 1.3; }

/* ── The top line: logo and EN | DE only, no menu ──
   It scrolls away with the photograph instead of following the reader. */
.launch-page .ln-top { position: absolute; }

/* ── The legal line that stands in for the footer ── */
.ln-legal .footer-bottom { border-top: 0; padding-block: 1.5rem; }

/* ── The early-bird request window: the expedition list ──
   Dressed like the text fields around it, with its own small arrow. */
.ov-box-form .fld select {
  width: 100%; height: 48px; font: inherit; font-size: 1rem; color: var(--text);
  border: 1px solid #ddd8cc; border-radius: 12px; padding: 0 2.5rem 0 14px;
  background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='18' height='18' fill='none' stroke='%234a453c' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 14px center;
  appearance: none; -webkit-appearance: none; cursor: pointer;
}
.ov-box-form .fld select:focus { outline: 2px solid var(--terra); outline-offset: 1px; }
