/* Lesbarkeit (15.10.2026): Zahlen, Zeiten und Preise nicht mehr in der Display-Schrift Syne (zu weite, stilisierte
   Ziffern), sondern in DM Mono 500 (Zeiten) bzw. Figtree 600 (Preise, Kennzahlen). Kleine Mono-Labels mindestens 12 px,
   Sekundärtext mit mehr Kontrast, Headlines mit weniger negativem Letter-Spacing. Wird NACH dem Inline-Style geladen. */

/* Zeiten (tabellarisch, monospaced) */
.tt .t, .tt .arr, .sail__time, .tt-card__time, .tt-card__arrive,
.result-time-depart, .result-time-arrive, .day__d, .ticker-route, .ticker-time, .spec-val, .schedule-time {
  font-family: var(--font-mono) !important; font-weight: 500 !important; letter-spacing: 0 !important; font-variant-numeric: tabular-nums;
}
.sail__time { font-size: 21px !important; }
.tt .t { font-size: 17px !important; color: var(--navy) !important; }
.tt .arr { font-size: 14px !important; }
.day__d { font-size: 16px !important; }

/* Preise und Kennzahlen */
.sail__price-val, .hero-op__stat-val, .hero__stat-val, .route-fact__val, .op-card__row-val, .result-price,
.operator-price, .operator-stat-val, .tt-card__price, .ticker-price, .price-cal-day__price, .day__p, .stat-val, .fact-val {
  font-family: var(--font-body) !important; font-weight: 600 !important; letter-spacing: -0.01em !important; font-variant-numeric: tabular-nums;
}
.hero-op__stat-val, .hero__stat-val { font-size: 30px; }

/* Kleine Mono-Labels: nie unter 12 px, weniger Sperrung */
.section-overline, .hero-op__overline, .hero__overline, .hero-op__badge, .footer-badge, .badge, .day__wd, .sail__dur, .live-pill,
.ticket-table th, .tt th, .result-time-label, .result-price-note, .result-time-duration, .nav__lang a, .footer-langs a,
.footer-col-title, .ticker-item, .label-mono {
  font-size: 12px !important; letter-spacing: 0.08em !important;
}
.result-time-duration, .sail__dur { font-size: 12px !important; letter-spacing: 0.02em !important; }

/* Sekundärtext: mehr Kontrast (WCAG AA auf Weiß/Navy) */
.section-lead, .hero-op__sub, .hero__sub { color: rgba(13,45,78,0.74) !important; font-weight: 400 !important; }
.hero-op__sub, .hero__sub, .cta-mid__s { color: rgba(255,255,255,0.78) !important; }
.hero-op__stat-label, .hero__stat-label { color: rgba(255,255,255,0.65) !important; font-size: 13px !important; }
.route-fact__label, .op-header__meta, .op-card__row-label, .tt-card__arrive, .tt-card__ship, .sail__ship, .sail__price-note,
.sail__price-from, .live__meta, .tt-note, .tip__x, .info-item__text, .result-operator-ship, .result-time-label, .result-price-note,
.breadcrumb__inner, .live__foot, .footer-tagline, .footer-links a, .footer-legal { color: rgba(13,45,78,0.68) !important; }
.footer-tagline, .footer-links a, .footer-legal, .section--navy .info-item__text { color: rgba(255,255,255,0.62) !important; }
.section--navy .section-overline { color: rgba(255,255,255,0.55) !important; }
.footer-col-title { color: rgba(255,255,255,0.5) !important; }
.tt td, .ticket-table td { color: rgba(13,45,78,0.82) !important; font-size: 14.5px !important; }

/* Headlines: Syne bleibt, aber ohne zusammenlaufende Buchstaben */
.hero-op__title, .hero__title { letter-spacing: -0.02em !important; line-height: 1.02 !important; }
.section-title { letter-spacing: -0.015em !important; }
.cta-banner__title, .cta-mid__t, .op-card__name, .op-header__name { letter-spacing: -0.01em !important; }

/* Grundschrift */
body { font-size: 16.5px; }
