/*
Theme Name: SY Rubberduck
Description: Schiffs- und Crew-Seite der SY Rubberduck — maritime Kielwasser-Optik auf
rubberduck-software-Unterbau (Task #50, 16.07.2026). Nur DE/EN.
Version: 1.0
Author: rubberduck software
*/

/* ── Design-Tokens: Kielwasser-Farbwelt (maritim), rs-Strukturqualität ── */
:root {
    --sy-navy:    #0B1E33;   /* Header/Hero/Footer — Kielwasser-Navy */
    --sy-navy2:   #12314F;   /* Hero-Verlauf Mitte */
    --sy-navy3:   #14405C;   /* Hero-Verlauf Ende */
    --sy-foam:    #FAFBF9;   /* Seitengrund */
    --sy-water:   #EAF4F5;   /* Sektions-Wechselgrund */
    --sy-spray:   #2FA8A0;   /* Hauptakzent Teal */
    --sy-duck:    #FFC93C;   /* Positionslicht Gold — sparsam */
    --sy-coral:   #E4796B;   /* Warn-/Sonderakzent */
    --sy-ink:     #1E2B38;   /* Fließtext */
    --sy-mist:    #7C8B9C;   /* Sekundärtext */
    --sy-line:    #E2E8E6;   /* Rahmen */
    --sy-serif:   "Charter", "Iowan Old Style", Georgia, serif;
    --sy-sans:    "Inter", -apple-system, "Helvetica Neue", system-ui, sans-serif;
    --sy-display: "Sora", -apple-system, system-ui, sans-serif;
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
    margin: 0;
    font-family: var(--sy-sans);
    color: var(--sy-ink);
    background: var(--sy-foam);
    line-height: 1.6;
}
img { max-width: 100%; height: auto; display: block; }
a { color: var(--sy-spray); }

/* ── Header: größer (Christian-Feedback), App-Icon + Wortmarke ── */
.sy-header {
    position: sticky; top: 0; z-index: 50;
    background: var(--sy-navy);
    border-bottom: 1px solid rgba(255,255,255,0.08);
}
.sy-header-inner {
    max-width: 1160px; margin: 0 auto;
    display: flex; align-items: center; gap: 16px;
    padding: 18px 24px;
}
.sy-brand { display: flex; align-items: center; gap: 14px; text-decoration: none; }
.sy-brand img { width: 52px; height: 52px; border-radius: 12px; }
.sy-brand-name {
    font-family: var(--sy-display); font-weight: 700; font-size: 1.35rem;
    color: #fff; letter-spacing: 0.01em;
}
/* „sy" wie im alten Logo: klein, kursiv, schräg gedreht und leicht angehoben */
.sy-brand-name .sy {
    display: inline-block;
    font-family: 'Playfair Display', Georgia, serif; font-style: italic;
    color: var(--sy-mist); font-weight: 600; margin-right: 5px; font-size: 1.05rem;
    text-transform: lowercase;
    transform: rotate(-12deg) translateY(-5px);
}
.sy-nav { margin-left: auto; display: flex; align-items: center; gap: 22px; }
.sy-nav a {
    color: rgba(255,255,255,0.85); text-decoration: none;
    font-size: 0.95rem; font-weight: 600;
}
.sy-nav a:hover { color: var(--sy-duck); }
.sy-lang { display: flex; gap: 6px; margin-left: 10px; }
.sy-lang a, .sy-lang span {
    font-size: 0.8rem; font-weight: 700; padding: 4px 9px; border-radius: 7px;
    text-decoration: none; color: rgba(255,255,255,0.75);
}
.sy-lang .aktiv { background: var(--sy-spray); color: #fff; }

/* ── Hero: echtes Foto als Hintergrund (Feedback: kein Wake-Logo) ── */
.sy-hero {
    position: relative; min-height: 62vh;
    display: flex; align-items: center; justify-content: center; text-align: center;
    background-size: cover; background-position: center;
    color: #fff;
}
.sy-hero::before {
    content: ""; position: absolute; inset: 0;
    background: linear-gradient(180deg, rgba(11,30,51,0.55) 0%, rgba(11,30,51,0.35) 45%, rgba(11,30,51,0.72) 100%);
}
.sy-hero-inner { position: relative; padding: 90px 24px; max-width: 820px; }
.sy-eyebrow {
    font-size: 0.75rem; font-weight: 700; letter-spacing: 0.22em; text-transform: uppercase;
    color: var(--sy-duck); margin-bottom: 18px;
}
.sy-eyebrow::before {
    content: ""; display: inline-block; width: 8px; height: 8px; border-radius: 50%;
    background: var(--sy-duck); margin-right: 9px; vertical-align: 1px;
}
.sy-hero h1 {
    font-family: var(--sy-display); font-weight: 800;
    font-size: clamp(2.2rem, 5.4vw, 3.6rem); line-height: 1.1; margin: 0 0 18px;
}
.sy-hero p { font-family: var(--sy-sans); font-size: 1.15rem; color: rgba(255,255,255,0.88); margin: 0 0 30px; }
.sy-btn {
    display: inline-block; background: var(--sy-spray); color: #fff;
    font-weight: 700; font-size: 1rem; padding: 13px 26px; border-radius: 12px;
    text-decoration: none; border: none;
}
.sy-btn:hover { color: var(--sy-duck); }

/* ── Wellen-Übergang (Kielwasser-Motiv): ragt ins Hero-Foto, schneidet die
   Unterkante geschwungen ab (Mockup-Look) ── */
.sy-wellen { display: block; width: 100%; height: 56px; margin-top: -55px; position: relative; z-index: 2; }

/* ── Sektionen ── */
.sy-sec { max-width: 1160px; margin: 0 auto; padding: 64px 24px; }
.sy-sec-kopf { margin-bottom: 30px; }
.sy-sec-kopf h2 {
    font-family: var(--sy-display); font-weight: 800;
    font-size: clamp(1.6rem, 3.4vw, 2.3rem); margin: 0 0 8px; color: var(--sy-navy);
}
.sy-sec-kopf p { color: var(--sy-mist); font-family: var(--sy-sans); font-size: 1.05rem; margin: 0; }
.sy-sec-water { background: var(--sy-water); }

/* ── Galerie (echte Fotos) ── */
.sy-galerie { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 14px; }
.sy-galerie img { border-radius: 14px; aspect-ratio: 4/3; object-fit: cover; width: 100%; }

/* ── Fakten-Zeile ── */
.sy-fakten { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 14px; margin-top: 26px; }
.sy-fakt {
    background: #fff; border: 1px solid var(--sy-line); border-radius: 14px;
    border-top: 3px solid var(--sy-spray); padding: 16px 18px;
}
.sy-fakt .label { font-size: 0.72rem; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: var(--sy-mist); }
.sy-fakt .wert { font-family: var(--sy-display); font-weight: 700; font-size: 1.1rem; color: var(--sy-navy); margin-top: 4px; }

/* ── Törn-Karten (kw_trips liefert eigenes Markup — Grundrahmen) ── */
.sy-toerns .rd-trip-card, .sy-toerns article {
    background: #fff; border: 1px solid var(--sy-line); border-radius: 16px; overflow: hidden;
}

/* ── App-Sektion: Kielwasser-Einbettung bekommt den Navy/Spray-Skin via rd_app-Skin ── */

/* ── Footer ── */
.sy-footer { background: var(--sy-navy); color: rgba(255,255,255,0.75); margin-top: 40px; }
.sy-footer-inner {
    max-width: 1160px; margin: 0 auto; padding: 34px 24px;
    display: flex; flex-wrap: wrap; gap: 12px 26px; align-items: center;
    font-size: 0.9rem;
}
.sy-footer a { color: var(--sy-spray); text-decoration: none; }
.sy-footer .copy { margin-left: auto; color: var(--sy-mist); }

@media (max-width: 720px) {
    .sy-nav { display: none; }
    .sy-hero { min-height: 52vh; }
}

/* ── Unterseiten (Impressum/Datenschutz, 404) ── */
.sy-seite { background: var(--sy-foam); padding: 56px 24px 72px; min-height: 55vh; }
.sy-seite-inner { max-width: 780px; margin: 0 auto; }
.sy-seite-inner h1 {
    font-family: var(--sy-display); color: var(--sy-navy);
    font-size: clamp(1.6rem, 3.5vw, 2.2rem); margin: 0 0 24px; text-wrap: balance;
}
.sy-seite-inhalt { color: var(--sy-ink); line-height: 1.7; }
.sy-seite-inhalt h2, .sy-seite-inhalt h3 { font-family: var(--sy-display); color: var(--sy-navy); margin: 28px 0 10px; }
.sy-seite-inhalt a { color: var(--sy-spray); }
.sy-seite-inhalt a:hover { color: var(--sy-navy); }

/* Skipper-Karte (Boots-Seite) — Foto/Name/Bio live aus dem Kielwasser-Profil */
.sy-skipper{display:flex;gap:24px;align-items:center;margin:30px auto 0;max-width:760px;
  background:var(--sy-water);border:1px solid var(--sy-line);border-radius:18px;padding:22px 26px}
.sy-skipper-foto{width:112px;height:112px;border-radius:50%;object-fit:cover;flex:none;
  box-shadow:0 2px 10px rgba(0,0,0,.12)}
.sy-skipper-mono{display:flex;align-items:center;justify-content:center;
  font:700 46px/1 var(--sy-display);color:#fff;
  background:linear-gradient(160deg,var(--sy-navy),#14405C)}
.sy-skipper-tx h3{margin:0;font-family:var(--sy-display);font-size:23px;color:var(--sy-navy)}
.sy-skipper-tx p{color:var(--sy-ink);font-size:15px;line-height:1.55}
@media(max-width:560px){.sy-skipper{flex-direction:column;text-align:center}
  .sy-skipper-tx p{margin-inline:auto}}
