/* Zusammengefasst aus assets/css/schrift-lokal.css und dem Design-System-Export.
   Grund: neun einzelne Stylesheets ergaben eine lange Ladekette. Erzeugt am
   07.08.2026 beim Ueberfuehren in statisches HTML. Quelle bleibt der Export,
   nach einem erneuten Export hier neu zusammenfassen. */

/* Inter, lokal ausgeliefert.

   Grund: Der Design-System-Export bindet die Schrift per @import von
   fonts.googleapis.com ein. Dabei wird die IP-Adresse jedes Besuchers an
   Google übertragen. Für eine Arztpraxis ist das ein vermeidbares
   Datenschutzrisiko und ein bekanntes Abmahnthema (LG München I, 20.01.2022).

   Lokal gehostet entfällt jeder Drittanbieter-Request. Inter steht unter der
   SIL Open Font License, das Selbsthosten ist ausdrücklich erlaubt.
   Dateien aus @fontsource/inter v5, Zeichensatz latin.

   ACHTUNG: Der @import in _ds/…/tokens/fonts.css ist entfernt. Ein erneuter
   Design-System-Export bringt ihn zurück. Nach jedem Export prüfen. */

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('../fonts/inter-latin-400-normal.woff2') format('woff2');
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('../fonts/inter-latin-500-normal.woff2') format('woff2');
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('../fonts/inter-latin-600-normal.woff2') format('woff2');
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('../fonts/inter-latin-700-normal.woff2') format('woff2');
}

/* --- tokens/fonts.css --- */
/* Google-Fonts-Import entfernt: Datenschutz. Inter wird lokal ausgeliefert,
   siehe assets/css/schrift-lokal.css. Kommt bei einem erneuten
   Design-System-Export zurueck, dann wieder entfernen. */
:root{--font-sans:"Inter","Helvetica Neue",Arial,sans-serif;--font-core:var(--font-sans)}

/* --- tokens/colors.css --- */
:root{
/* Brand — gemessen aus der Logo-Datei. Die Palette ist abschliessend. */
--navy-700:#003A5C;--navy-600:#004D7A;--cyan-700:#00719E;--cyan-500:#00ACE0;
--blue-200:#CBE7F5;--blue-100:#EAF4FB;--white:#FFFFFF;
/* Neutrals */
--ink-900:#2B3440;--ink-600:#47566B;--line-200:#DCE7EE;--surface-050:#F5F9FC;
/* Semantic — Text */
--text-heading:var(--navy-600);--text-body:var(--ink-900);--text-muted:var(--ink-600);
--text-on-dark:var(--white);--text-link:var(--cyan-700);--text-link-hover:var(--navy-600);
/* Semantic — Flächen */
--surface-page:var(--blue-100);--surface-card:var(--white);--surface-subtle:var(--surface-050);
--surface-tile:var(--blue-200);--surface-tile-active:var(--navy-600);--surface-footer:var(--navy-600);
--surface-page-gradient:linear-gradient(180deg,#EAF4FB 0%,#FFFFFF 62%);
/* Semantic — Linien & Fokus */
--border-subtle:var(--line-200);--border-strong:var(--navy-600);
--focus-ring:var(--cyan-700);--focus-ring-width:2px;--focus-ring-offset:2px;
/* Semantic — Aktionen */
--action-primary-bg:var(--navy-600);--action-primary-bg-hover:var(--navy-700);--action-primary-fg:var(--white);
--action-secondary-bg:var(--white);--action-secondary-fg:var(--navy-600);--action-secondary-border:var(--navy-600);
--action-ghost-fg:var(--navy-600);--action-ghost-fg-hover:var(--cyan-700);
/* Akzent — nur Flächen, Icons, Linien. Nie Text. */
--accent-fill:var(--cyan-500);--accent-icon:var(--cyan-500);--accent-rule:var(--cyan-500);
/* Fehler (Formular) */
--danger-600:#B3261E;--border-error:var(--danger-600);--text-error:var(--danger-600);
/* Badge */
--badge-bg:rgba(0,77,122,0.08);--badge-fg:var(--navy-600)}

/* --- tokens/typography.css --- */
:root{
--text-h1:48px;--text-h1-mobile:32px;--text-h2:34px;--text-h2-mobile:26px;--text-h3:22px;
--text-body-size:17px;--text-small:15px;--text-eyebrow:14px;
--leading-tight:1.15;--leading-heading:1.25;--leading-body:1.65;
--tracking-heading:-0.01em;--tracking-eyebrow:0.08em;
--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;
--measure:75ch}

/* --- tokens/spacing.css --- */
:root{
--space-1:8px;--space-2:16px;--space-3:24px;--space-4:32px;--space-6:48px;--space-8:64px;--space-12:96px;
--section-y:96px;--section-y-mobile:56px;
--container-max:1140px;--grid-columns:12;/* @kind other */
--grid-gutter:24px;
--radius-sm:8px;--radius-md:14px;--radius-lg:24px;--radius-pill:999px;
--tap-min:44px}

/* --- tokens/elevation.css --- */
:root{
--shadow-card:0 10px 30px rgba(0,77,122,0.10);
--shadow-card-hover:0 16px 38px rgba(0,77,122,0.14);
--shadow-header:0 2px 12px rgba(0,77,122,0.07)}

/* --- tokens/motion.css --- */
:root{
--duration-fast:200ms; /* @kind other */
--duration-base:250ms; /* @kind other */
--duration-slow:300ms; /* @kind other */
--ease-out:cubic-bezier(0.16,1,0.3,1); /* @kind other */
--enter-offset:8px;
--hover-lift:-2px}
@media (prefers-reduced-motion:reduce){:root{
--duration-fast:1ms; /* @kind other */
--duration-base:1ms; /* @kind other */
--duration-slow:1ms; /* @kind other */
--enter-offset:0px;
--hover-lift:0px}}

/* --- tokens/base.css --- */
*,*::before,*::after{box-sizing:border-box}
body{margin:0;font-family:var(--font-sans);font-size:var(--text-body-size);line-height:var(--leading-body);color:var(--text-body);background:var(--surface-page-gradient);-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{color:var(--text-heading);letter-spacing:var(--tracking-heading);line-height:var(--leading-heading);font-weight:var(--weight-semibold);margin:0}
h1{font-size:var(--text-h1);font-weight:var(--weight-bold);line-height:var(--leading-tight)}
h2{font-size:var(--text-h2)}
h3{font-size:var(--text-h3)}
p{margin:0;max-width:var(--measure);text-wrap:pretty}
a{color:var(--text-link);text-underline-offset:3px}
a:hover{color:var(--text-link-hover)}
:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring);outline-offset:var(--focus-ring-offset);border-radius:var(--radius-sm)}
@media (max-width:900px){h1{font-size:var(--text-h1-mobile)}h2{font-size:var(--text-h2-mobile)}}

/* --- styles.css --- */
@import url("tokens/fonts.css");
@import url("tokens/colors.css");
@import url("tokens/typography.css");
@import url("tokens/spacing.css");
@import url("tokens/elevation.css");
@import url("tokens/motion.css");
@import url("tokens/base.css");
