/* Minimal, Schwarz/Weiß, ohne Design */
:root { color-scheme: light; }
* { box-sizing: border-box; }
html,body { margin:0; padding:0; }
body { font-family: system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, Helvetica, Arial, "Apple Color Emoji", "Segoe UI Emoji"; background:#fff; color:#000; line-height:1.5; }
img { max-width:100%; height:auto; display:block; }
a { color:#000; text-decoration: underline; }
.visually-hidden { position:absolute; clip:rect(1px,1px,1px,1px); padding:0; border:0; height:1px; width:1px; overflow:hidden; white-space:nowrap; }

/* File: assets/css/base.css */

/* ---------- Reset & Base ---------- */
*,
*::before,
*::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body {
    margin: 0;
    font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Apple Color Emoji", "Segoe UI Emoji";
    line-height: 1.55;
    color: var(--c-text);
    background: var(--c-bg);
}

/* ---------- Theme ---------- */
:root{
    /* Teal/Türkis – nahe am alten Auftritt */
    --c-teal-700:#0E7E86;
    --c-teal-600:#13919A;
    --c-teal-500:#19A8B3; /* Primär */
    --c-teal-400:#31BCC6;
    --c-teal-100:#E6F7F8;

    --c-bg:#FFFFFF;
    --c-surface:#FAFCFC;
    --c-border:#E5EEF0;
    --c-text:#101418;
    --c-muted:#55616A;

    --radius-squircle:18px;   /* "Squircle"-Feeling */
    --radius-card:16px;
    --radius-chip:12px;

    --shadow-sm:0 1px 2px rgba(0,0,0,.06);
    --shadow-md:0 6px 16px rgba(16,20,24,.10);
    --shadow-lg:0 10px 24px rgba(16,20,24,.14);

    --focus-ring:0 0 0 3px rgba(25,168,179,.25);
}

/* Typography helpers */
.h1, h1 { font-size: clamp(28px, 3vw, 40px); line-height:1.2; margin: 0 0 .5rem; }
.h2, h2 { font-size: clamp(22px, 2.3vw, 28px); line-height:1.25; margin: 0 0 .5rem; }
.h3, h3 { font-size: 18px; line-height:1.3; margin: 0 0 .5rem; }
p { margin: 0 0 1rem; color: var(--c-text); }
.lead { font-size: clamp(16px, 1.8vw, 18px); color: var(--c-muted); }
.muted { color: var(--c-muted); }

/* Links */
a { color: var(--c-teal-600); text-decoration: none; }
a:hover { color: var(--c-teal-700); }
.link { text-decoration: underline; text-underline-offset: 2px; }
.link:hover { text-underline-offset: 3px; color: var(--c-teal-700); }

/* Lists */
ul, ol { margin: 0 0 1rem 1.25rem; }
ul[role="list"], .list { list-style: none; padding: 0; margin: 0; }

/* Images */
img, svg, video { max-width: 100%; height: auto; display: block; }

/* Accessibility */
:focus-visible {
    outline: none;
    box-shadow: var(--focus-ring);
    border-radius: var(--radius-squircle);
}

/* Utility */
.container { width: min(1120px, 92%); margin-inline: auto; }
.hr { height:1px; background:var(--c-border); border:0; margin: 1.5rem 0; }

/* Globaler Link-Hover darf Buttons/Header nicht umlackieren */
.btn, .btn:hover, .btn:focus{ color:#fff; text-decoration:none; }
header nav a, header nav a:hover{ color:#111 !important; }