@font-face{font-family:'Manrope';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/manrope-400-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Manrope';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/manrope-400-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Manrope';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/manrope-500-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Manrope';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/manrope-500-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Manrope';font-style:normal;font-weight:600;font-display:swap;src:url('../fonts/manrope-600-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Manrope';font-style:normal;font-weight:600;font-display:swap;src:url('../fonts/manrope-600-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Manrope';font-style:normal;font-weight:700;font-display:swap;src:url('../fonts/manrope-700-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Manrope';font-style:normal;font-weight:700;font-display:swap;src:url('../fonts/manrope-700-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Sora';font-style:normal;font-weight:300;font-display:swap;src:url('../fonts/sora-300-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Sora';font-style:normal;font-weight:300;font-display:swap;src:url('../fonts/sora-300-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Sora';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/sora-400-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Sora';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/sora-400-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Sora';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/sora-500-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Sora';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/sora-500-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Sora';font-style:normal;font-weight:600;font-display:swap;src:url('../fonts/sora-600-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Sora';font-style:normal;font-weight:600;font-display:swap;src:url('../fonts/sora-600-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Sora';font-style:normal;font-weight:700;font-display:swap;src:url('../fonts/sora-700-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Sora';font-style:normal;font-weight:700;font-display:swap;src:url('../fonts/sora-700-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}

/* ===== Basis (aus dem Designsystem, design_handoff/README.md) ===== */
html { overflow-x:hidden; }
body { margin:0; background:#050B16; -webkit-font-smoothing:antialiased; font-family:Manrope,system-ui,sans-serif; color:#F4F8FF; }
a { color:#7FA9FF; text-decoration:none; }
a:hover { color:#49DCEA; }
::selection { background:rgba(47,107,255,.35); }
input, textarea, button { font-family:Manrope,system-ui,sans-serif; }
button { cursor:pointer; }

@keyframes tl-breathe { 0%,100% { opacity:.55 } 50% { opacity:1 } }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation:none !important; transition:none !important } }

/* Sichtbarer Fokus – niemals outline:none ohne Ersatz */
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible, [tabindex]:focus-visible {
  outline:2px solid #2F6BFF; outline-offset:2px; box-shadow:0 0 0 4px rgba(47,107,255,.16); border-radius:6px;
}
input:focus-visible, textarea:focus-visible { outline:none; border-color:#2F6BFF !important; background:rgba(47,107,255,.08) !important; box-shadow:0 0 0 4px rgba(47,107,255,.16); }

/* Sprungmarke zum Inhalt */
.tl-skip { position:absolute; left:-9999px; top:0; z-index:100; padding:14px 22px; background:#2F6BFF; color:#fff; font-weight:600; border-radius:0 0 11px 0; }
.tl-skip:focus-visible { left:0; color:#fff; }

/* ===== Navigation: einziger echter Umbruchpunkt 920px ===== */
.tl-nav-desktop { display:flex; align-items:center; gap:clamp(18px,2.4vw,34px); font-size:15.5px; font-weight:500; }
.tl-nav-cta-desktop { display:flex; }
.tl-burger { display:none; }
.tl-menu { display:none; }
@media (max-width: 919.98px) {
  .tl-nav-desktop, .tl-nav-cta-desktop { display:none; }
  .tl-burger { display:flex; }
  .tl-menu.offen { display:block; }
}

/* ===== Geführtes Formular (Unternehmerseite) ===== */
.tl-chip { padding:12px 20px;border-radius:999px;border:1px solid rgba(127,169,255,.24);background:rgba(255,255,255,.03);color:#B6C6DF;font-size:15.5px;font-weight:500;cursor:pointer;transition:border-color .24s cubic-bezier(.22,.61,.36,1),background .24s cubic-bezier(.22,.61,.36,1) }
.tl-groesse { flex:1 1 100px;text-align:center;padding:13px 8px;border-radius:10px;border:1px solid rgba(127,169,255,.24);background:rgba(255,255,255,.03);color:#B6C6DF;font-size:15.5px;font-weight:500;cursor:pointer;transition:border-color .24s cubic-bezier(.22,.61,.36,1),background .24s cubic-bezier(.22,.61,.36,1) }
.tl-chip.gewaehlt, .tl-groesse.gewaehlt { border-color:#2F6BFF;background:rgba(47,107,255,.14);color:#F4F8FF }
.tl-ziel { display:flex;align-items:center;gap:13px;padding:14px 18px;border-radius:11px;border:1px solid rgba(127,169,255,.24);background:rgba(255,255,255,.03);cursor:pointer;width:100%;box-sizing:border-box;text-align:left;transition:border-color .24s cubic-bezier(.22,.61,.36,1),background .24s cubic-bezier(.22,.61,.36,1) }
.tl-ziel.gewaehlt { border-color:#2F6BFF;background:rgba(47,107,255,.1) }
.tl-ziel .tl-punkt { width:18px;height:18px;border-radius:5px;border:1px solid rgba(127,169,255,.4);background:transparent;flex:none;display:grid;place-items:center;color:#fff;font-size:12px;line-height:1 }
.tl-ziel.gewaehlt .tl-punkt { border-color:#2F6BFF;background:#2F6BFF }
.tl-ziel .tl-zieltext { font-size:16px;color:#B6C6DF }
.tl-ziel.gewaehlt .tl-zieltext { color:#F4F8FF }
.tl-feld { width:100%;box-sizing:border-box;padding:15px 18px;border-radius:11px;border:1px solid rgba(127,169,255,.24);background:rgba(5,11,22,.6);color:#F4F8FF;font-size:16.5px;outline:none }
.tl-feld::placeholder { color:#8497B5 }
.tl-feld.fehler { border-color:rgba(242,114,111,.6);background:rgba(242,114,111,.07) }
.tl-fehlertext { font-size:15px;line-height:1.55;color:#F2726F;margin-top:8px }
.tl-schritt[hidden], .tl-versteckt { display:none }
.tl-weiter[disabled] { background:#1E3E7F !important;color:#8497B5;box-shadow:none;cursor:default }
