/* Isolated to the public signup; portal dialogs retain their own styling. */
.phone-site .mp-waitlist { display:flex;align-items:center;justify-content:center;gap:16px;min-height:44px;padding:12px 21px;border:1px solid #afcfff;background:#c3dcff;color:#102135;border-radius:9px;font-family:inherit;font-size:12px;font-weight:600;white-space:nowrap;box-shadow:0 0 0 0 #9bc7ff00;transition:transform 180ms var(--ease-out),box-shadow 180ms var(--ease-out); }
.mp-waitlist svg { width:15px;height:15px; }
.phone-site .portal-legal-footer a[href="/rechtliches#portalbedingungen"] { display:none; }
.wl-open { overflow:hidden;scrollbar-gutter:stable; }
.phone-site .wl-dialog { --wl-ink:#eff6ff;--wl-soft:#a9bad0;--ease-out:cubic-bezier(.23,1,.32,1);width:min(520px,calc(100vw - 32px));max-height:calc(100dvh - 32px);margin:auto;padding:0;border:1px solid #a3c6f23d;border-radius:24px;color:var(--wl-ink);background:#091321;box-shadow:0 30px 120px #0009;overflow:auto;overscroll-behavior:contain; }
.wl-dialog[open] { animation:wl-enter 280ms var(--ease-out) both; }
.wl-dialog::backdrop { background:#02060dd9;backdrop-filter:blur(9px);animation:wl-backdrop 220ms ease-out; }
.phone-site .wl-close { position:absolute;right:17px;top:15px;width:44px;height:44px;padding:0;border:0;border-radius:50%;background:transparent;color:#a9bad0;font-size:28px;line-height:1;z-index:1; }
.wl-content { padding:38px 42px 30px; }
.wl-content[data-state] { animation:wl-content 260ms var(--ease-out) both; }
.wl-steps { display:flex;align-items:center;gap:13px;list-style:none;padding:0;margin:0 24px 35px 0;font-size:10px;color:#758ba7; }
.wl-steps li { display:flex;gap:6px;align-items:center;white-space:nowrap; }
.wl-steps li+li:before { content:'';height:1px;width:13px;background:#3a4e68;margin-right:3px; }
.wl-steps span { width:19px;height:19px;display:grid;place-items:center;border:1px solid #41516a;border-radius:50%;font-size:9px; }
.wl-steps [aria-current] { color:#c5ddff; }
.wl-steps [aria-current] span { background:#c5ddff;color:#102135;border-color:#c5ddff; }
.wl-eyebrow { font-size:9px;letter-spacing:1.7px;line-height:1.6;color:#9bc7ff; }
.phone-site .wl-dialog h2 { font-size:43px;line-height:1.05;font-weight:400;letter-spacing:-2px;margin:17px 0 20px;outline:0; }
.wl-dialog h2 em { font-style:normal;color:#a9ceff; }
.phone-site .wl-description { font-size:14px;line-height:1.75;margin:0 0 25px;color:var(--wl-soft);overflow-wrap:anywhere; }
.wl-description strong { font-weight:500;color:#edf5ff; }
.wl-form>label { display:block;margin-bottom:9px;font-size:12px;color:#dce9fa; }
.phone-site .wl-form .wl-field { width:100%;height:54px;padding:0 15px;border:1px solid #6b87aa80;border-radius:10px;font:inherit;font-size:16px;color:#f1f6ff;background:#050d18;outline:0;transition:border-color 160ms ease,box-shadow 160ms ease; }
.wl-form .wl-field:focus { border-color:#a9ceff;box-shadow:0 0 0 3px #9bc7ff22; }
.wl-form input::placeholder { color:#6d839f; }
.wl-form .wl-consent { display:flex;align-items:flex-start;gap:10px;margin:19px 0 0;cursor:pointer; }
.phone-site .wl-consent input { width:18px;height:18px;min-width:18px;margin:2px 0 0;accent-color:#b7d6ff;cursor:pointer; }
.wl-consent span { font-size:11px;line-height:1.65;color:var(--wl-soft); }
.wl-consent a,.wl-preview a { text-decoration:underline;text-underline-offset:3px;color:#c9e0ff; }
.phone-site .wl-submit { width:100%;min-height:52px;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:15px 18px;border:1px solid #c5ddff;border-radius:10px;background:#c5ddff;color:#0c1b2e;font-family:inherit;font-size:13px;font-weight:600;transition:transform 180ms var(--ease-out),background 180ms ease; }
.wl-submit:active,.mp-waitlist:active { transform:scale(.98); }
.wl-submit[aria-busy=true] .wl-arrow { width:14px;height:14px;border:2px solid #0c1b2e33;border-top-color:#0c1b2e;border-radius:50%;font-size:0;animation:wl-spin .7s linear infinite; }
.wl-dialog button:disabled { opacity:.6;cursor:wait; }
.wl-dialog :focus-visible { outline:2px solid #c3dcff;outline-offset:4px; }
.phone-site .wl-error { color:#ffb9ae;font-size:12px;line-height:1.6;margin:10px 0 16px; }
.wl-error:empty { margin:20px 0 0; }
.phone-site .wl-reassurance { font-size:10px;text-align:center;margin:14px 0 0;color:#8fa4bf; }
.phone-site .wl-detail { font-size:12px;line-height:1.8;margin:0 0 27px;color:#8fa4bf; }
.wl-honey { position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden; }
.wl-symbol { width:76px;height:76px;margin:4px 0 24px;position:relative; }
.wl-symbol svg { width:64px;height:64px;stroke:#b2d3ff;stroke-width:1.5; }
.wl-symbol .wl-ring { stroke:#7399ca55; }
.wl-symbol .wl-check { stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:45;stroke-dashoffset:45;animation:wl-check 350ms 100ms ease-out forwards; }
.wl-symbol.is-success .wl-ring { animation:wl-ring 500ms ease-out both; }
.wl-symbol i { position:absolute;left:25px;top:25px;width:4px;height:4px;border-radius:50%;background:#9bc7ff;animation:wl-spark 650ms var(--ease-out) both;--x:40px;--y:-13px; }
.wl-symbol i:nth-of-type(2) { --x:-25px;--y:-20px; }
.wl-symbol i:nth-of-type(3) { --x:12px;--y:40px; }
.phone-site .wl-secondary { display:block;min-height:44px;padding:10px 0;background:transparent;border:0;color:#b8d6ff;font:inherit;font-size:12px;text-decoration:underline;text-underline-offset:4px; }
.wl-help { border-top:1px solid #b9d8ff22;border-bottom:1px solid #b9d8ff22;padding:15px 0; }
.wl-help summary { cursor:pointer;font-size:12px;color:#c2d6ef; }
.phone-site .wl-help p { font-size:12px;line-height:1.7;margin:14px 0 0;color:#8fa4bf; }
.phone-site .wl-preview { border-top:1px dashed #536c8b70;padding-top:16px;margin:24px 0 0;font-size:10px;line-height:1.7;color:#8fa4bf; }
.wl-preview strong { font-weight:500;color:#a9bad0; }
@media(hover:hover) and (pointer:fine) { .mp-waitlist:hover { transform:translateY(-1px);box-shadow:0 4px 24px #9bc7ff22; }.wl-submit:hover { background:#deecff; }.wl-close:hover { background:#9bc7ff12; } }
@media(max-width:700px) { .phone-site .mp-nav { padding-inline:5%;gap:10px; }.phone-site .mp-waitlist { padding:10px 13px;font-size:10px;gap:7px; }.mp-waitlist .wl-long { display:none; }.phone-site .mp-nav .brand { font-size:18px;gap:6px; }.phone-site .mp-nav .brandmark { width:30px; } }
@media(max-width:480px) { .wl-content { padding:32px 23px 25px; }.phone-site .wl-dialog h2 { font-size:38px; }.wl-steps { gap:7px;font-size:9px;margin-bottom:29px; }.wl-steps li+li:before { width:7px;margin-right:0; }.phone-site .wl-close { right:5px;top:5px; }.phone-site .wl-description { font-size:13px; }.wl-consent span { font-size:11px; } }
@keyframes wl-enter { from { opacity:0;transform:translateY(12px) scale(.98); }to { opacity:1;transform:none; } }
@keyframes wl-content { from { opacity:.2;transform:translateY(5px); }to { opacity:1;transform:none; } }
@keyframes wl-backdrop { from { opacity:0; }to { opacity:1; } }
@keyframes wl-spin { to { transform:rotate(360deg); } }
@keyframes wl-check { to { stroke-dashoffset:0; } }
@keyframes wl-ring { from { opacity:0; }to { opacity:1; } }
@keyframes wl-spark { from { opacity:0;transform:translate(0,0); }35% { opacity:1; }to { opacity:0;transform:translate(var(--x),var(--y)); } }
@media(prefers-reduced-motion:reduce) { .wl-dialog *,.wl-dialog,.wl-dialog::backdrop { animation:none!important;transition:none!important; }.wl-symbol .wl-check { stroke-dashoffset:0; }.wl-symbol i { display:none; } }

.wl-form { display:block; }
.wl-form #wl-name { margin-bottom:18px; }
.wl-inline { --wl-soft:#a9bad0;max-width:520px;margin:36px auto 0;text-align:left;border:1px solid #a3c6f23d;border-radius:22px;background:#091321;scroll-margin-top:100px; }
.wl-inline .wl-content { padding:30px 34px; }
.wl-inline .wl-field[name=name] { margin-bottom:18px; }
.phone-site .wl-inline h2 { font-size:38px;line-height:1.08;margin:18px 0; }
.wl-inline h2:focus { outline:none; }
.wl-inline .wl-steps { margin:0 0 28px; }
.wl-inline button:disabled { opacity:.6;cursor:wait; }
.wl-inline :focus-visible { outline:2px solid #c3dcff;outline-offset:4px; }
@media(max-width:480px) { .wl-inline .wl-content { padding:25px 21px; }.phone-site .mp-ending h2 { font-size:36px; } }
