:root{
    --bg:#f5f8fc;
    --bg2:#ffffff;
    --panel:#ffffff;
    --panel2:#f8fbff;
    --text:#102033;
    --muted:#516275;
    --blue:#0b74ff;
    --blue2:#18a7ff;
    --line:rgba(11,116,255,.18);
    --shadow:0 24px 70px rgba(19,60,112,.14);
}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:radial-gradient(circle at 70% 10%,rgba(11,116,255,.24),transparent 34%),linear-gradient(180deg,#020407,#08111e 45%,#05080d);color:var(--text);line-height:1.6}a{color:inherit}.site-header{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:18px clamp(20px,5vw,70px);background:rgba(255,255,255,.86);backdrop-filter:blur(14px);border-bottom:1px solid rgba(69,162,255,.16)}.brand{display:flex;gap:14px;align-items:center;text-decoration:none;font-weight:700}.brand img{width:78px;height:auto}.brand span{color:var(--muted);font-size:.95rem}.nav{display:flex;gap:22px}.nav a{text-decoration:none;color:var(--muted);font-weight:600}.nav a:hover{color:var(--blue2)}.nav-toggle{display:none;background:none;border:1px solid var(--line);color:var(--text);border-radius:10px;padding:8px 12px}.hero{min-height:78vh;display:grid;grid-template-columns:1.25fr .75fr;gap:48px;align-items:center;padding:70px clamp(20px,6vw,90px)}.eyebrow{letter-spacing:.16em;text-transform:uppercase;color:var(--blue2);font-weight:800;font-size:.78rem}h1,h2,h3{line-height:1.08;margin:0 0 18px}h1{font-size:clamp(2.4rem,6vw,5.6rem)}h2{font-size:clamp(2rem,4vw,3.4rem)}p{color:var(--muted);font-size:1.05rem}.hero-content>p:not(.eyebrow){max-width:760px;font-size:1.25rem}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 20px;border:1px solid rgba(69,162,255,.35);border-radius:16px;text-decoration:none;font-weight:800;background:rgba(11,116,255,.045)}.btn.primary{background:linear-gradient(135deg,var(--blue),var(--blue2));color:#ffffff;border-color:transparent;box-shadow:0 12px 35px rgba(11,116,255,.32)}.hero-card{padding:32px;border:1px solid rgba(69,162,255,.22);background:linear-gradient(160deg,rgba(255,255,255,.96),rgba(255,255,255,.86));border-radius:34px;box-shadow:var(--shadow);display:grid;gap:14px;text-align:center}.hero-card img{width:100%;max-width:420px;margin:auto}.hero-card strong{font-size:1.35rem}.hero-card span{color:var(--muted)}.section{padding:80px clamp(20px,6vw,90px)}.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.cards article,.steps div{padding:28px;border:1px solid rgba(69,162,255,.18);background:linear-gradient(180deg,var(--panel),rgba(248,251,255,.94));border-radius:24px}.cards article:hover{transform:translateY(-4px);border-color:rgba(69,162,255,.45);transition:.25s}.split{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;background:rgba(11,116,255,.035);border-block:1px solid rgba(69,162,255,.12)}.checklist{list-style:none;padding:0;margin:0;display:grid;gap:14px}.checklist li{padding:16px 18px 16px 48px;background:var(--panel);border-radius:16px;position:relative;color:var(--muted)}.checklist li:before{content:'✓';position:absolute;left:18px;color:var(--blue2);font-weight:900}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.steps span{display:inline-flex;color:var(--blue2);font-weight:900;margin-bottom:18px}.contact{display:grid;grid-template-columns:.9fr 1.1fr;gap:42px}.contact-data{display:grid;gap:10px;margin-top:28px}.contact-data a,.contact-data span{color:var(--text);text-decoration:none;padding:14px;border:1px solid rgba(69,162,255,.18);border-radius:14px;background:rgba(11,116,255,.045)}.contact-form{display:grid;gap:16px;padding:28px;border-radius:28px;background:var(--panel2);border:1px solid rgba(69,162,255,.2);box-shadow:var(--shadow)}label{display:grid;gap:8px;color:var(--muted);font-weight:700}input,textarea{width:100%;border:1px solid rgba(69,162,255,.22);background:#ffffff;color:var(--text);border-radius:14px;padding:14px;font:inherit}textarea{resize:vertical}.privacy{display:flex;align-items:flex-start;font-size:.92rem}.privacy input{width:auto;margin-top:6px}.hp{position:absolute;left:-9999px}footer{display:flex;justify-content:space-between;gap:20px;padding:26px clamp(20px,5vw,70px);border-top:1px solid rgba(69,162,255,.14);color:var(--muted)}footer nav{display:flex;gap:18px}.legal,.thanks{max-width:980px;margin:auto;padding:70px 24px}.legal-card{background:var(--panel);border:1px solid rgba(69,162,255,.16);border-radius:24px;padding:28px;margin:18px 0}.thanks{text-align:center}.thanks img{max-width:360px;width:80%}@media(max-width:900px){.hero,.split,.contact{grid-template-columns:1fr}.grid,.steps{grid-template-columns:1fr 1fr}.nav{display:none;position:absolute;right:20px;top:82px;flex-direction:column;background:var(--panel);padding:18px;border:1px solid var(--line);border-radius:18px}.nav.open{display:flex}.nav-toggle{display:block}}@media(max-width:560px){.grid,.steps{grid-template-columns:1fr}.brand span{display:none}.hero{padding-top:40px}footer{flex-direction:column}}

.remote-support{display:grid;grid-template-columns:1fr .9fr;gap:42px;align-items:center;background:linear-gradient(135deg,rgba(11,116,255,.12),rgba(69,162,255,.04));border-block:1px solid rgba(69,162,255,.14)}
.remote-copy p{max-width:780px}.remote-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}.remote-card{padding:30px;border-radius:28px;background:linear-gradient(180deg,var(--panel2),rgba(248,251,255,.96));border:1px solid rgba(69,162,255,.24);box-shadow:var(--shadow)}.remote-card ol{margin:0;padding-left:22px;color:var(--muted);display:grid;gap:12px}.remote-card li::marker{color:var(--blue2);font-weight:900}.remote-note{margin:22px 0 0;padding:14px;border:1px solid rgba(69,162,255,.18);border-radius:16px;background:rgba(11,116,255,.045);font-size:.95rem}
@media(max-width:900px){.remote-support{grid-template-columns:1fr}}

.h-captcha {
  margin: .5rem 0 1rem;
}

.remote-downloads{display:grid;grid-template-columns:repeat(2,minmax(220px,1fr));gap:16px;margin-top:28px}.download-card{display:grid;gap:8px;padding:20px;border-radius:22px;text-decoration:none;background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(255,255,255,.92));border:1px solid rgba(69,162,255,.28);box-shadow:0 18px 55px rgba(19,60,112,.12)}.download-card:hover{transform:translateY(-3px);border-color:rgba(69,162,255,.55);transition:.22s}.download-card strong{color:var(--text);font-size:1.05rem}.download-card small{color:var(--muted)}.download-icon{width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;border-radius:14px;background:linear-gradient(135deg,var(--blue),var(--blue2));color:#fff;font-weight:900}
@media(max-width:650px){.remote-downloads{grid-template-columns:1fr}}


/* Full-HD Inhaltsbreite */
.site-header,
.hero,
.section,
footer{
    max-width: 1440px;
    margin-left: auto;
    margin-right: auto;
}


/* Kontaktformular: saubere Ausrichtung und responsive Formatierung */
.contact-form{
    width:100%;
    max-width:720px;
    justify-self:end;
}
.form-row{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px;
}
.contact-form label{
    min-width:0;
}
.contact-form input,
.contact-form textarea{
    display:block;
    min-width:0;
    line-height:1.45;
}
.contact-form input:focus,
.contact-form textarea:focus{
    outline:none;
    border-color:var(--blue2);
    box-shadow:0 0 0 4px rgba(69,162,255,.14);
}
.contact-form textarea{
    min-height:160px;
}
.privacy{
    gap:12px;
    line-height:1.45;
}
.privacy input{
    flex:0 0 auto;
}
.privacy span{
    display:block;
}
.captcha-wrap{
    max-width:100%;
    overflow:hidden;
}
.submit-btn{
    width:max-content;
    min-width:220px;
    font-size:1.05rem;
}
@media(max-width:900px){
    .contact-form{
        max-width:none;
        justify-self:stretch;
    }
}
@media(max-width:560px){
    .contact-form{
        padding:22px;
        border-radius:22px;
    }
    .form-row{
        grid-template-columns:1fr;
    }
    .submit-btn{
        width:100%;
    }
    .captcha-wrap{
        transform:scale(.92);
        transform-origin:left top;
        margin-bottom:-8px;
    }
}


/* Vorauswahl im Kontaktformular */
.service-select{
    display:grid;
    gap:12px;
    margin:2px 0 4px;
    padding:18px;
    border:1px solid rgba(69,162,255,.22);
    border-radius:18px;
    background:rgba(11,116,255,.04);
}
.service-select legend{
    padding:0 8px;
    color:var(--muted);
    font-weight:800;
}
.checkbox-option{
    display:flex;
    align-items:center;
    gap:12px;
    padding:12px 14px;
    border:1px solid rgba(69,162,255,.14);
    border-radius:14px;
    background:rgba(7,16,29,.62);
    cursor:pointer;
}
.checkbox-option:hover{
    border-color:rgba(69,162,255,.34);
}
.checkbox-option input{
    width:auto;
    flex:0 0 auto;
    accent-color:var(--blue2);
}
.checkbox-option span{
    color:var(--text);
    font-weight:700;
}



/* Helles Testdesign */
body{
    background:
        radial-gradient(circle at 12% 0%, rgba(24,167,255,.16), transparent 32%),
        radial-gradient(circle at 88% 12%, rgba(11,116,255,.12), transparent 30%),
        linear-gradient(180deg,#f5f8fc 0%,#ffffff 48%,#eef5ff 100%);
    color:var(--text);
}
.site-header{
    background:rgba(255,255,255,.88);
    border-bottom:1px solid rgba(11,116,255,.14);
    box-shadow:0 12px 34px rgba(19,60,112,.08);
}
.nav a,
.brand span,
p,
label,
.legal-card p,
.remote-card ol,
footer{
    color:var(--muted);
}
h1,h2,h3,
.contact-data a,
.contact-data span,
.checkbox-option span,
.hero-card strong{
    color:var(--text);
}
.hero-card,
.cards article,
.steps div,
.contact-form,
.remote-card,
.legal-card,
.download-card{
    background:linear-gradient(180deg,#ffffff,#f8fbff);
    border-color:rgba(11,116,255,.16);
    box-shadow:0 20px 60px rgba(19,60,112,.12);
}
.split,
.remote-support{
    background:linear-gradient(135deg,rgba(24,167,255,.10),rgba(255,255,255,.74));
    border-color:rgba(11,116,255,.14);
}
.checklist li,
.contact-data a,
.contact-data span,
.service-select,
.checkbox-option,
.remote-note{
    background:rgba(255,255,255,.78);
    border-color:rgba(11,116,255,.16);
}
input,
textarea{
    background:#ffffff;
    color:var(--text);
    border-color:rgba(11,116,255,.22);
}
input::placeholder,
textarea::placeholder{
    color:#8a98a8;
}
input:focus,
textarea:focus{
    background:#ffffff;
}
.btn{
    color:var(--blue);
    background:#ffffff;
}
.btn.primary{
    color:#ffffff;
}
footer{
    background:rgba(255,255,255,.70);
}
footer a{
    color:var(--blue);
}
.nav-toggle{
    color:var(--text);
    background:#ffffff;
}
@media(max-width:900px){
    .nav{
        background:#ffffff;
        box-shadow:0 20px 50px rgba(19,60,112,.16);
    }
}



/* Optimiertes helles Business-Layout */
.nav-cta{
    padding:10px 14px;
    border-radius:999px;
    background:linear-gradient(135deg,var(--blue),var(--blue2));
    color:#fff !important;
    box-shadow:0 10px 28px rgba(11,116,255,.22);
}
.hero{
    min-height:68vh;
}
.hero-content h1{
    max-width:950px;
}
.hero-content>p:not(.eyebrow){
    max-width:840px;
}
.trust-section{
    background:linear-gradient(135deg,rgba(11,116,255,.08),rgba(255,255,255,.78));
    border-block:1px solid rgba(11,116,255,.14);
}
.trust-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:20px;
    margin-top:28px;
}
.trust-grid article{
    display:grid;
    gap:10px;
    padding:24px;
    border-radius:24px;
    background:linear-gradient(180deg,#fff,#f8fbff);
    border:1px solid rgba(11,116,255,.16);
    box-shadow:0 16px 48px rgba(19,60,112,.10);
}
.trust-grid strong{
    color:var(--text);
    font-size:1.08rem;
}
.trust-grid span{
    color:var(--muted);
    line-height:1.5;
}
.service-options{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
}
.site-footer{
    display:grid;
    grid-template-columns:1.2fr auto 1fr;
    align-items:start;
    gap:28px;
}
.site-footer p{
    margin:.5rem 0 0;
    max-width:460px;
}
.site-footer nav{
    flex-wrap:wrap;
}
.footer-contact{
    display:grid;
    gap:8px;
    justify-items:end;
}
.footer-contact a,
.footer-contact span,
.site-footer nav a{
    color:var(--muted);
    text-decoration:none;
}
.footer-contact a:hover,
.site-footer nav a:hover{
    color:var(--blue);
}
@media(max-width:1100px){
    .trust-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
    .site-footer{
        grid-template-columns:1fr;
    }
    .footer-contact{
        justify-items:start;
    }
}
@media(max-width:640px){
    .service-options,
    .trust-grid{
        grid-template-columns:1fr;
    }
    .nav-cta{
        display:inline-flex;
        justify-content:center;
    }
}



/* Header: Fernwartung rechts außen */
.nav{
    flex:1;
    align-items:center;
    justify-content:space-between;
}
.nav-main{
    display:flex;
    align-items:center;
    gap:22px;
}
.site-header .nav-cta{
    margin-left:auto;
}

/* Kontaktformular übersichtlicher gruppiert */
.contact-form{
    gap:20px;
}
.form-group{
    display:grid;
    gap:16px;
    padding:20px;
    border:1px solid rgba(11,116,255,.13);
    border-radius:22px;
    background:rgba(255,255,255,.68);
}
.form-group h3{
    margin:0;
    font-size:1.05rem;
    color:var(--text);
}
.contact-person{
    background:linear-gradient(180deg,#ffffff,#f7fbff);
}
.service-select{
    margin:0;
    padding:0;
    border:0;
    background:transparent;
}
.service-select legend{
    margin-bottom:14px;
    padding:0;
    font-size:1.05rem;
    color:var(--text);
}
.service-options{
    grid-template-columns:repeat(2,minmax(0,1fr));
}
.checkbox-option{
    min-height:48px;
}
.form-actions{
    display:grid;
    gap:16px;
    padding-top:2px;
}
.privacy{
    padding:14px 16px;
    border:1px solid rgba(11,116,255,.13);
    border-radius:16px;
    background:rgba(255,255,255,.68);
}
.submit-btn{
    justify-self:start;
}
@media(max-width:900px){
    .nav{
        flex:initial;
        align-items:stretch;
        justify-content:flex-start;
    }
    .nav-main{
        display:flex;
        flex-direction:column;
        align-items:flex-start;
        gap:14px;
    }
    .site-header .nav-cta{
        margin-left:0;
        margin-top:10px;
    }
}
@media(max-width:640px){
    .form-group{
        padding:16px;
        border-radius:18px;
    }
    .service-options{
        grid-template-columns:1fr;
    }
}


/* Header-Navigation weiter nach rechts ausrichten */
.site-header{
    display:flex;
    align-items:center;
    gap:40px;
}
.nav{
    flex:1;
}
.nav-main{
    margin-left:auto;
    justify-content:flex-end;
    width:100%;
    padding-right:24px;
}
.nav-main a{
    margin-left:10px;
}
.site-header .nav-cta{
    flex-shrink:0;
}


/* Conversion, lokale Sichtbarkeit, Header */
.header-phone{
    padding:10px 14px;
    border-radius:999px;
    color:var(--blue) !important;
    background:#fff;
    border:1px solid rgba(11,116,255,.22);
    text-decoration:none;
    font-weight:800;
    white-space:nowrap;
}
.hero-bullets{
    display:flex;
    gap:12px;
    flex-wrap:wrap;
    margin-top:22px;
}
.hero-bullets span{
    position:relative;
    padding:10px 14px 10px 34px;
    border-radius:999px;
    background:#fff;
    border:1px solid rgba(11,116,255,.16);
    color:var(--text);
    font-weight:800;
    box-shadow:0 10px 28px rgba(19,60,112,.08);
}
.hero-bullets span:before{
    content:"✓";
    position:absolute;
    left:14px;
    color:var(--blue2);
    font-weight:900;
}
@media(max-width:1100px){
    .local-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
    .header-phone{
        margin-top:10px;
    }
}
@media(max-width:640px){
    .local-grid{
        grid-template-columns:1fr;
    }
    .hero-bullets span{
        width:100%;
    }
}



/* Nicht verlinkte Studenten-WLAN-Landingpage */
.student-page{
    min-height:100vh;
}
.student-landing{
    max-width:1180px;
    margin:0 auto;
    padding:54px clamp(20px,5vw,70px) 80px;
}
.student-hero{
    display:grid;
    grid-template-columns:1.15fr .85fr;
    gap:32px;
    align-items:center;
    padding:44px;
    border-radius:34px;
    background:linear-gradient(135deg,rgba(11,116,255,.10),rgba(255,255,255,.88));
    border:1px solid rgba(11,116,255,.16);
    box-shadow:0 24px 70px rgba(19,60,112,.12);
}
.student-hero h1{
    max-width:760px;
}
.student-steps{
    display:flex;
    gap:12px;
    flex-wrap:wrap;
    margin-top:24px;
}
.student-steps span{
    padding:10px 14px;
    border-radius:999px;
    background:#fff;
    border:1px solid rgba(11,116,255,.16);
    color:var(--text);
    font-weight:800;
}
.student-info-card{
    padding:26px;
    border-radius:24px;
    background:#fff;
    border:1px solid rgba(11,116,255,.16);
    box-shadow:0 16px 46px rgba(19,60,112,.10);
}
.student-info-card strong{
    color:var(--text);
    font-size:1.2rem;
}
.student-form-section{
    margin-top:32px;
}
.student-form{
    max-width:none;
    justify-self:stretch;
}
select{
    width:100%;
    border:1px solid rgba(11,116,255,.22);
    background:#fff;
    color:var(--text);
    border-radius:14px;
    padding:14px;
    font:inherit;
}
select:focus{
    outline:none;
    border-color:var(--blue2);
    box-shadow:0 0 0 4px rgba(69,162,255,.14);
}
.student-thanks{
    max-width:820px;
}
@media(max-width:900px){
    .student-hero{
        grid-template-columns:1fr;
        padding:30px;
    }
}
@media(max-width:560px){
    .student-landing{
        padding-top:24px;
    }
    .student-hero{
        padding:22px;
        border-radius:24px;
    }
    .student-steps span{
        width:100%;
    }
}


/* Freundliche Begrüßung Studenten-Landingpage */
.student-welcome-box{
    margin-bottom:22px;
    padding:24px 26px;
    border-radius:24px;
    background:linear-gradient(135deg,rgba(11,116,255,.10),rgba(255,255,255,.92));
    border:1px solid rgba(11,116,255,.16);
    box-shadow:0 16px 46px rgba(19,60,112,.10);
}
.student-welcome-box strong{
    display:block;
    color:var(--text);
    font-size:1.25rem;
    margin-bottom:8px;
}
.student-welcome-box p{
    margin:0;
    max-width:850px;
}


/* Reduzierter Header für Studenten-Landingpage */
.student-header{
    max-width:1440px;
    margin:0 auto;
    padding:18px clamp(20px,5vw,70px);
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
    background:rgba(255,255,255,.88);
    border-bottom:1px solid rgba(11,116,255,.14);
    box-shadow:0 12px 34px rgba(19,60,112,.08);
    position:sticky;
    top:0;
    z-index:10;
    backdrop-filter:blur(14px);
}
.student-brand{
    display:flex;
    align-items:center;
    gap:14px;
    text-decoration:none;
}
.student-brand img{
    width:78px;
    height:auto;
}
.student-brand span{
    display:grid;
    gap:3px;
}
.student-brand strong{
    color:var(--text);
    font-size:1rem;
}
.student-brand small{
    color:var(--muted);
    font-weight:700;
}
.student-header-phone{
    padding:10px 14px;
    border-radius:999px;
    color:var(--blue) !important;
    background:#fff;
    border:1px solid rgba(11,116,255,.22);
    text-decoration:none;
    font-weight:800;
    white-space:nowrap;
}
@media(max-width:640px){
    .student-header{
        align-items:flex-start;
        flex-direction:column;
    }
    .student-header-phone{
        width:100%;
        text-align:center;
    }
}


/* Sprachumschalter Studenten-Landingpage */
.language-switch{
    display:flex;
    gap:6px;
    padding:5px;
    border-radius:999px;
    background:#fff;
    border:1px solid rgba(11,116,255,.18);
    box-shadow:0 10px 28px rgba(19,60,112,.08);
    margin-left:auto;
}
.lang-btn{
    border:0;
    border-radius:999px;
    padding:8px 11px;
    background:transparent;
    color:var(--muted);
    font-weight:900;
    cursor:pointer;
}
.lang-btn.active{
    background:linear-gradient(135deg,var(--blue),var(--blue2));
    color:#fff;
}
@media(max-width:640px){
    .language-switch{
        margin-left:0;
    }
}


/* Firmenlogo prominent auf Studenten-Landingpage */
.student-brand img{
    width:150px;
    max-height:70px;
    object-fit:contain;
}
.student-logo-showcase{
    grid-column:1 / -1;
    display:flex;
    justify-content:center;
    align-items:center;
    margin-bottom:8px;
}
.student-logo-showcase img{
    width:min(460px,80vw);
    height:auto;
    display:block;
}
@media(max-width:640px){
    .student-brand img{
        width:130px;
    }
    .student-logo-showcase img{
        width:min(340px,86vw);
    }
}


/* Logo statt Hinweisbox */
.student-hero{
    grid-template-columns:1.2fr .8fr;
}
.student-hero-logo-right{
    display:flex;
    justify-content:center;
    align-items:center;
}
.student-hero-logo-right img{
    width:min(520px,100%);
    height:auto;
}
.student-info-card,
.student-logo-showcase{
    display:none !important;
}
@media(max-width:900px){
    .student-hero{
        grid-template-columns:1fr;
    }
    .student-hero-logo-right{
        margin-top:10px;
    }
    .student-hero-logo-right img{
        width:min(340px,85vw);
    }
}


/* Drei Sprachoptionen im Umschalter */
.language-switch{
    flex-shrink:0;
}
.lang-btn{
    min-width:42px;
}


/* Button-Design Landingpage korrigiert */
.student-header{
    gap:28px;
}
.student-header-actions{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:12px;
    margin-left:auto;
}
.language-switch{
    display:inline-flex;
    align-items:center;
    gap:4px;
    padding:4px;
    border-radius:999px;
    background:#eef5ff;
    border:1px solid rgba(11,116,255,.18);
    box-shadow:none;
    margin-left:0;
}
.lang-btn{
    min-width:44px;
    height:36px;
    padding:0 12px;
    border:0;
    border-radius:999px;
    background:transparent;
    color:var(--muted);
    font-weight:900;
    font-size:.9rem;
    line-height:1;
    cursor:pointer;
    transition:background .2s ease,color .2s ease,box-shadow .2s ease;
}
.lang-btn:hover{
    background:#fff;
    color:var(--blue);
}
.lang-btn.active{
    background:linear-gradient(135deg,var(--blue),var(--blue2));
    color:#fff;
    box-shadow:0 8px 22px rgba(11,116,255,.22);
}
.student-header-phone{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:44px;
    padding:0 18px;
    border-radius:999px;
    color:#fff !important;
    background:linear-gradient(135deg,var(--blue),var(--blue2));
    border:0;
    text-decoration:none;
    font-weight:900;
    white-space:nowrap;
    box-shadow:0 10px 28px rgba(11,116,255,.22);
}
.student-header-phone:hover{
    transform:translateY(-1px);
    box-shadow:0 14px 34px rgba(11,116,255,.28);
}
.student-form .submit-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:50px;
    padding:0 28px;
    border-radius:999px;
    font-size:1rem;
    border:0;
    cursor:pointer;
}
.student-form .submit-btn:hover{
    transform:translateY(-1px);
    box-shadow:0 16px 38px rgba(11,116,255,.28);
}
.student-steps span{
    box-shadow:none;
}
@media(max-width:760px){
    .student-header{
        align-items:flex-start;
        flex-direction:column;
    }
    .student-header-actions{
        width:100%;
        margin-left:0;
        justify-content:space-between;
        gap:10px;
    }
    .language-switch{
        flex:0 0 auto;
    }
    .student-header-phone{
        flex:1;
    }
}
@media(max-width:440px){
    .student-header-actions{
        flex-direction:column;
        align-items:stretch;
    }
    .language-switch{
        justify-content:center;
        width:100%;
    }
    .student-header-phone{
        width:100%;
    }
}


/* Schrittanzeige auf der Studenten-Landingpage */
.student-steps{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:14px;
    margin-top:28px;
}
.student-step{
    display:flex;
    align-items:center;
    gap:12px;
    min-height:70px;
    padding:14px 16px;
    border-radius:20px;
    background:linear-gradient(180deg,#ffffff,#f7fbff);
    border:1px solid rgba(11,116,255,.16);
    box-shadow:0 14px 36px rgba(19,60,112,.09);
    color:var(--text);
    font-weight:800;
}
.student-step b{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:0 0 38px;
    width:38px;
    height:38px;
    border-radius:999px;
    background:linear-gradient(135deg,var(--blue),var(--blue2));
    color:#fff;
    font-size:1rem;
    box-shadow:0 10px 24px rgba(11,116,255,.22);
}
.student-step em{
    font-style:normal;
    line-height:1.25;
}
.student-steps span:before{
    content:none !important;
}
@media(max-width:900px){
    .student-steps{
        grid-template-columns:1fr;
    }
    .student-step{
        min-height:62px;
    }
}


/* Neu aufgebaute 3-Schritt-Anzeige */
.student-steps,
.student-step{
    display:none !important;
}
.student-process{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:16px;
    margin-top:30px;
}
.process-card{
    display:flex;
    align-items:flex-start;
    gap:14px;
    padding:18px;
    min-height:118px;
    border-radius:22px;
    background:linear-gradient(180deg,#ffffff,#f7fbff);
    border:1px solid rgba(11,116,255,.16);
    box-shadow:0 14px 38px rgba(19,60,112,.10);
}
.process-number{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:0 0 42px;
    width:42px;
    height:42px;
    border-radius:50%;
    background:linear-gradient(135deg,var(--blue),var(--blue2));
    color:#fff;
    font-weight:900;
    font-size:1.05rem;
    box-shadow:0 10px 24px rgba(11,116,255,.24);
}
.process-card strong{
    display:block;
    color:var(--text);
    font-size:1.02rem;
    line-height:1.25;
    margin-bottom:6px;
}
.process-card p{
    margin:0;
    color:var(--muted);
    font-size:.95rem;
    line-height:1.45;
}
@media(max-width:980px){
    .student-process{
        grid-template-columns:1fr;
    }
    .process-card{
        min-height:auto;
    }
}


/* Einspaltige breite Schrittkarten */
.student-process{
    grid-template-columns:1fr !important;
    max-width:920px;
    gap:18px;
}
.process-card{
    min-height:88px;
    padding:22px 26px;
    align-items:center;
}
.process-card strong{
    font-size:1.08rem;
}
.process-card p{
    font-size:1rem;
}
.process-number{
    flex:0 0 46px;
    width:46px;
    height:46px;
}


/* Separater Abschnitt für Schritthinweise */
.student-process-section{
    margin:36px 0;
}
.student-process-wrapper{
    background:#fff;
    border:1px solid rgba(11,116,255,.12);
    border-radius:28px;
    padding:28px;
    box-shadow:0 16px 40px rgba(19,60,112,.08);
}
.student-process-wrapper h2{
    margin:0 0 22px 0;
    text-align:center;
}
.student-process{
    max-width:none !important;
}

/* FAQ-Bereich der Studenten-Landingpage */
.student-faq{
    max-width:1180px;
    margin:36px auto;
    padding:0 clamp(20px,5vw,70px);
}
.faq-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px;
    margin-top:22px;
}
.faq-grid article{
    padding:20px;
    border-radius:20px;
    background:#fff;
    border:1px solid rgba(11,116,255,.14);
    box-shadow:0 12px 34px rgba(19,60,112,.08);
}
.faq-grid h3{
    margin-bottom:8px;
    font-size:1.05rem;
}
.faq-grid p{
    margin:0;
}
@media(max-width:900px){
    .faq-grid{
        grid-template-columns:1fr;
    }
}

/* Downloadkarten ohne Logos */
.download-card img,
.remote-downloads img,
.support-downloads img,
.download-logo,
.download-icon{
    display:none !important;
}

.hero,
.hero-section{
    padding-top:28px !important;
}


/* Finale Optimierung: Hero-Pills exakt wie Screenshot */
.hero-bullets{
    display:flex !important;
    flex-wrap:wrap !important;
    justify-content:center !important;
    align-items:center !important;
    gap:20px 22px !important;
    margin:0 !important;
    padding:28px 30px !important;
}

.hero-bullets span{
    position:relative !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:14px !important;
    min-height:54px !important;
    padding:0 30px !important;
    border-radius:999px !important;
    background:rgba(255,255,255,.96) !important;
    color:#102033 !important;
    font-size:1.04rem !important;
    font-weight:800 !important;
    line-height:1 !important;
    white-space:nowrap !important;
    box-shadow:0 8px 22px rgba(16,32,51,.10) !important;
    border:1px solid rgba(255,255,255,.75) !important;
}

.hero-bullets span::before{
    content:"✓" !important;
    position:static !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    color:#0b9df6 !important;
    font-size:1.55rem !important;
    font-weight:900 !important;
    line-height:1 !important;
    transform:translateY(-1px) !important;
    flex:0 0 auto !important;
}

@media (max-width:768px){
    .hero-bullets{
        gap:12px !important;
        padding:18px 16px !important;
    }

    .hero-bullets span{
        min-height:48px !important;
        padding:0 22px !important;
        font-size:.96rem !important;
        gap:11px !important;
        width:auto !important;
    }
}

@media (max-width:520px){
    .hero-bullets span{
        width:100% !important;
    }
}


/* Lokale SVG-Icons */
.svg-sprite{
    position:absolute;
    width:0;
    height:0;
    overflow:hidden;
}
.icon{
    width:1.12em;
    height:1.12em;
    flex:0 0 auto;
    display:inline-block;
    vertical-align:-.18em;
}
.icon-link{
    display:inline-flex;
    align-items:center;
    gap:10px;
}
.icon-link .icon{
    color:var(--blue);
}
.btn.icon-link{
    gap:10px;
}
.download-icon .icon,
.nav-cta .icon,
.btn.primary .icon,
.student-header-phone .icon{
    color:#fff;
}
.platform-glyph{
    display:inline-flex !important;
    align-items:center;
    justify-content:center;
    color:#fff;
    font-size:1.55rem;
    font-weight:900;
    line-height:1;
    letter-spacing:0;
}


/* Hero-Bullets kleiner */
.hero-bullets{
    gap:10px 12px !important;
    padding:6px 10px !important;
}
.hero-bullets span{
    min-height:36px !important;
    padding:0 14px !important;
    font-size:0.82rem !important;
    font-weight:700 !important;
}
.hero-bullets span::before{
    font-size:1.0rem !important;
}

/* Ablauf-Symbole */
.steps .step-icon{
    width:50px;
    height:50px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    margin-bottom:18px;
    border-radius:18px;
    color:var(--blue);
    background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(232,244,255,.88));
    border:1px solid rgba(11,116,255,.18);
    box-shadow:0 14px 34px rgba(11,116,255,.14);
}
.steps .step-icon svg{
    width:26px;
    height:26px;
    display:block;
    stroke-linecap:round;
    stroke-linejoin:round;
}

/* Leistungs-Kachel-Symbole */
.cards article{
    display:grid;
    align-content:start;
}
.cards .card-icon{
    width:50px;
    height:50px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    margin-bottom:18px;
    border-radius:18px;
    color:var(--blue);
    background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(232,244,255,.88));
    border:1px solid rgba(11,116,255,.18);
    box-shadow:0 14px 34px rgba(11,116,255,.14);
}
.cards .card-icon svg{
    width:26px;
    height:26px;
    display:block;
    stroke-linecap:round;
    stroke-linejoin:round;
}
.section-intro{
    max-width:880px;
    margin:-6px 0 32px;
}
#leistungen .cards{
    grid-template-columns:repeat(3,minmax(0,1fr));
}
@media(max-width:980px){
    #leistungen .cards{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}
@media(max-width:560px){
    #leistungen .cards{
        grid-template-columns:1fr;
    }
}

/* Branchen-Erfahrung */
.experience{
    background:linear-gradient(135deg,rgba(24,167,255,.08),rgba(255,255,255,.78));
    border-block:1px solid rgba(11,116,255,.12);
}
.experience > p:not(.eyebrow){
    max-width:900px;
}
.industry-pills{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin:26px 0 18px;
}
.industry-pills span{
    display:inline-flex;
    align-items:center;
    min-height:38px;
    padding:8px 14px;
    border-radius:999px;
    color:var(--text);
    font-weight:800;
    background:#fff;
    border:1px solid rgba(11,116,255,.16);
    box-shadow:0 10px 28px rgba(19,60,112,.08);
}

/* Vorbereitete Kundenstimmen-Sektion */
.is-hidden{
    display:none !important;
}
.section-head{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:24px;
}
.testimonial-controls{
    display:none;
    gap:10px;
}
.testimonial-controls button{
    width:42px;
    height:42px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(11,116,255,.2);
    border-radius:14px;
    background:#fff;
    color:var(--blue);
    font-size:1.5rem;
    font-weight:900;
    cursor:pointer;
}
.testimonial-carousel{
    --testimonial-gap:18px;
    display:flex;
    gap:var(--testimonial-gap);
    overflow:hidden;
    scroll-behavior:auto;
    scroll-snap-type:none;
    padding:4px 4px 22px;
}
.testimonial-carousel.is-marquee{
    cursor:grab;
    user-select:none;
    touch-action:pan-y;
}
.testimonial-carousel.is-marquee.is-dragging{
    cursor:grabbing;
}
.testimonial-card{
    display:grid;
    grid-template-columns:1fr;
    flex:0 0 calc((100% - (var(--testimonial-gap) * 2)) / 3);
    min-height:238px;
    gap:10px;
    align-items:start;
    scroll-snap-align:none;
    position:relative;
    overflow:hidden;
    padding:20px 20px 19px 24px;
    border:1px solid rgba(11,116,255,.18);
    border-radius:20px;
    background:linear-gradient(180deg,#ffffff 0%,#f5f9ff 100%);
    box-shadow:0 18px 46px rgba(19,60,112,.12);
    transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.testimonial-card::before{
    content:"";
    position:absolute;
    inset:0 auto 0 0;
    width:5px;
    height:auto;
    background:linear-gradient(90deg,var(--blue),var(--blue2));
}
.testimonial-card:hover{
    transform:translateY(-4px);
    border-color:rgba(11,116,255,.28);
    box-shadow:0 24px 58px rgba(19,60,112,.16);
}
.testimonial-signature{
    display:flex;
    align-items:center;
    gap:11px;
    align-self:end;
    min-width:0;
    margin-top:4px;
    padding-top:12px;
    border-top:1px solid rgba(11,116,255,.12);
}
.testimonial-media{
    width:40px;
    height:40px;
    flex:0 0 40px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:12px;
    color:#fff;
    font-size:.8rem;
    font-weight:900;
    background:linear-gradient(135deg,var(--blue),var(--blue2));
    object-fit:contain;
}
.testimonial-card h3{
    margin:1px 0 0;
    color:var(--text);
    font-size:1.04rem;
    line-height:1.35;
    font-weight:900;
}
.testimonial-card blockquote{
    margin:2px 0 0;
    color:var(--text);
    font-size:.94rem;
    line-height:1.48;
    font-weight:650;
}
.testimonial-card strong,
.testimonial-card span{
    display:block;
}
.testimonial-card span{
    color:var(--muted);
    font-size:.86rem;
}
.testimonial-rating{
    width:max-content;
    margin:0;
    padding:7px 10px;
    border-radius:999px;
    background:rgba(217,154,0,.10);
    color:#d99a00;
    font-size:.9rem;
    line-height:1;
    letter-spacing:.1em;
}
.testimonial-source{
    width:max-content;
    display:inline-flex;
    align-items:center;
    margin:-2px 0 0;
    padding:5px 9px;
    border:1px solid rgba(11,116,255,.16);
    border-radius:999px;
    background:#fff;
    color:var(--blue);
    font-size:.76rem;
    font-weight:850;
    line-height:1;
    text-decoration:none;
}
.testimonial-source:hover{
    border-color:rgba(11,116,255,.32);
    box-shadow:0 8px 18px rgba(19,60,112,.10);
}

/* Separate Kundenbewertungsseite */
.review-page{
    min-height:100vh;
    background:
        linear-gradient(180deg,rgba(245,249,255,.96),rgba(234,242,252,.98)),
        url("assets/backgrounds/section-network-light.png") center/cover fixed;
    color:var(--text);
}
.review-shell{
    width:min(1040px,calc(100% - 32px));
    margin:0 auto;
    padding:48px 0 42px;
}
.review-panel{
    position:relative;
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(230px,300px);
    gap:22px;
    padding:clamp(22px,4vw,34px);
    border:1px solid rgba(11,116,255,.16);
    border-radius:22px;
    background:rgba(255,255,255,.94);
    box-shadow:0 22px 64px rgba(19,60,112,.14);
}
.review-intro{
    max-width:760px;
}
.review-intro img{
    width:min(220px,58vw);
    height:auto;
    margin-bottom:20px;
}
.review-intro h1{
    font-size:clamp(2rem,4vw,3.4rem);
}
.rating-visual{
    align-self:start;
    justify-self:end;
    display:grid;
    gap:8px;
    width:100%;
    padding:18px;
    border:1px solid rgba(217,154,0,.22);
    border-radius:18px;
    background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(255,250,239,.96));
    box-shadow:0 16px 36px rgba(19,60,112,.10);
}
.rating-stars{
    display:flex;
    gap:5px;
    color:#d4dbe8;
    font-size:clamp(1.7rem,3vw,2.25rem);
    line-height:1;
}
.rating-stars span{
    display:inline-block;
    transform:translate(32px,-18px) scale(.7);
    opacity:0;
    animation:starFlyIn .58s cubic-bezier(.22,1,.36,1) forwards;
    animation-delay:calc(var(--star-index) * 90ms);
    transition:color .18s ease, transform .18s ease;
}
.rating-stars span.is-active{
    color:#d99a00;
    text-shadow:0 6px 18px rgba(217,154,0,.22);
}
.rating-visual strong{
    color:var(--text);
    font-size:1rem;
    line-height:1.2;
}
.rating-visual p{
    margin:0;
    color:var(--muted);
    font-size:.9rem;
    line-height:1.45;
}
@keyframes starFlyIn{
    0%{
        opacity:0;
        transform:translate(32px,-18px) scale(.7) rotate(12deg);
    }
    70%{
        opacity:1;
        transform:translate(-2px,1px) scale(1.06) rotate(-3deg);
    }
    100%{
        opacity:1;
        transform:translate(0,0) scale(1) rotate(0deg);
    }
}
.review-form{
    grid-column:1/-1;
    display:grid;
    gap:18px;
}
.review-form select{
    width:100%;
    border:1px solid rgba(69,162,255,.22);
    background:#ffffff;
    color:var(--text);
    border-radius:14px;
    padding:14px;
    font:inherit;
}
.review-form small{
    color:var(--muted);
    font-size:.86rem;
    font-weight:650;
}
.review-consent{
    color:var(--muted);
}
.review-message{
    grid-column:1/-1;
    display:grid;
    gap:6px;
    padding:14px 16px;
    border-radius:14px;
    font-weight:750;
}
.review-message strong,
.review-message span{
    display:block;
}
.review-message.ok{
    background:#e9f9ef;
    color:#136c34;
}
.review-message.error{
    background:#fff0f0;
    color:#9f1d1d;
}
.review-message ul{
    margin:0;
    padding-left:18px;
}
@media(max-width:720px){
    .review-shell{
        width:min(100% - 22px,1040px);
        padding:24px 0 30px;
    }
    .review-panel{
        grid-template-columns:1fr;
        border-radius:16px;
    }
    .rating-visual{
        justify-self:stretch;
        padding:15px;
    }
}
@media(max-width:980px){
    .testimonial-card{
        flex-basis:calc((100% - var(--testimonial-gap)) / 2);
    }
}
@media(max-width:640px){
    .section-head{
        align-items:flex-start;
        flex-direction:column;
    }
    .testimonial-card{
        flex-basis:100%;
        min-height:0;
    }
}

/* Finaler Header-Responsive-Fix */
.site-header{
    gap:clamp(12px,2vw,26px) !important;
    padding:9px clamp(14px,3.4vw,44px) !important;
}
.brand{
    flex:0 0 auto;
    min-width:0;
}
.brand img,
.logo img{
    width:clamp(54px,4.8vw,68px) !important;
    max-height:none !important;
}
.brand span{
    max-width:none;
    display:inline-block !important;
    position:relative !important;
    padding:2px 0 5px !important;
    border:0 !important;
    border-radius:0 !important;
    background:none !important;
    background-color:transparent !important;
    background-image:none !important;
    box-shadow:none !important;
    color:#12345f !important;
    font-size:.9rem !important;
    font-weight:900 !important;
    line-height:1.15 !important;
    letter-spacing:.01em;
    white-space:nowrap;
}
.brand span::before{
    content:"" !important;
    position:absolute !important;
    left:0;
    right:0;
    bottom:0;
    width:auto !important;
    height:2px !important;
    border-radius:999px !important;
    background:linear-gradient(90deg,var(--blue),rgba(24,167,255,.18)) !important;
    box-shadow:none !important;
}
.brand:hover span{
    color:#0d4f9d !important;
    transform:none !important;
}
.nav{
    min-width:0;
    gap:clamp(8px,1vw,14px) !important;
}
.nav-main{
    gap:clamp(8px,1vw,14px) !important;
    padding-right:clamp(6px,1.2vw,14px) !important;
}
.nav-main a{
    margin-left:0 !important;
    white-space:nowrap;
    font-size:.94rem;
}
.header-phone,
.nav-cta{
    min-height:38px;
    padding:8px 11px !important;
    font-size:.94rem;
    white-space:nowrap;
}

@media(max-width:1220px){
    .site-header{
        position:sticky;
        align-items:center !important;
    }
    .nav-toggle{
        display:inline-flex !important;
        align-items:center;
        justify-content:center;
        width:44px;
        height:44px;
        padding:0 !important;
        margin-left:auto;
        flex:0 0 auto;
        border-radius:14px;
    }
    .nav{
        display:none !important;
        position:absolute !important;
        top:calc(100% + 10px) !important;
        right:clamp(16px,4vw,54px) !important;
        width:min(360px,calc(100vw - 32px));
        flex:none !important;
        flex-direction:column !important;
        align-items:stretch !important;
        gap:12px !important;
        padding:18px !important;
        background:#fff !important;
        border:1px solid rgba(11,116,255,.18) !important;
        border-radius:18px !important;
        box-shadow:0 22px 58px rgba(19,60,112,.18) !important;
    }
    .nav.open{
        display:flex !important;
    }
    .nav-main{
        width:auto !important;
        margin:0 !important;
        padding:0 !important;
        flex-direction:column !important;
        align-items:stretch !important;
        gap:4px !important;
    }
    .nav-main a,
    .header-phone,
    .nav-cta{
        width:100%;
        justify-content:flex-start;
        padding:11px 12px !important;
        border-radius:12px;
    }
    .site-header .nav-cta{
        margin:0 !important;
    }
}

@media(max-width:560px){
    .site-header{
        gap:12px !important;
        padding:10px 14px !important;
    }
    .brand{
        gap:10px !important;
    }
    .brand img,
    .logo img{
        width:54px !important;
        max-height:none !important;
    }
    .brand span{
        display:block !important;
        max-width:none !important;
        font-size:.92rem !important;
        line-height:1.2 !important;
        white-space:nowrap;
        padding:6px 9px;
    }
}

@media(max-width:380px){
    .brand span{
        font-size:.78rem !important;
        padding:5px 7px;
    }
}

/* Dezente generierte IT-Hintergruende */
.hero{
    position:relative;
    isolation:isolate;
    overflow:hidden;
    background:
        linear-gradient(90deg,rgba(2,8,18,.80) 0%,rgba(4,15,32,.66) 46%,rgba(4,15,32,.18) 100%),
        url("assets/backgrounds/hero-server-network.png") center/cover no-repeat !important;
}
.hero::after{
    content:"";
    position:absolute;
    inset:0;
    z-index:-1;
    background:radial-gradient(circle at 18% 48%,rgba(24,167,255,.20),transparent 34%);
    pointer-events:none;
}
.hero > *{
    position:relative;
    z-index:1;
}
.hero .eyebrow{
    color:#8ed8ff;
}
.hero h1{
    color:#ffffff;
    text-shadow:0 18px 44px rgba(0,0,0,.34);
}
.hero-content>p:not(.eyebrow){
    color:rgba(235,246,255,.88);
}
#leistungen{
    position:relative;
    isolation:isolate;
    overflow:hidden;
}
#leistungen::before{
    content:"";
    position:absolute;
    inset:0;
    z-index:-1;
    background:
        linear-gradient(180deg,rgba(255,255,255,.72),rgba(246,250,255,.80)),
        url("assets/backgrounds/section-network-light.png") center/cover no-repeat;
    opacity:1;
    pointer-events:none;
}
#leistungen .cards article{
    background:linear-gradient(180deg,rgba(255,255,255,.90),rgba(248,251,255,.84));
    backdrop-filter:blur(2px);
}
@media(max-width:700px){
    .hero{
        background:
            linear-gradient(180deg,rgba(2,8,18,.84),rgba(4,15,32,.68)),
            url("assets/backgrounds/hero-server-network.png") center/cover no-repeat !important;
    }
    #leistungen::before{
        opacity:.55;
    }
}

/* Fernwartung mit dezentem Remote-Support-Hintergrund */
.remote-support{
    position:relative;
    isolation:isolate;
    overflow:hidden;
    background:
        linear-gradient(90deg,rgba(255,255,255,.94) 0%,rgba(248,251,255,.88) 52%,rgba(235,247,255,.72) 100%),
        url("assets/backgrounds/remote-support-light.png") center/cover no-repeat !important;
}
.remote-support::before{
    content:"";
    position:absolute;
    inset:0;
    z-index:-1;
    background:radial-gradient(circle at 78% 50%,rgba(24,167,255,.16),transparent 34%);
    pointer-events:none;
}
.remote-card,
.remote-downloads .download-card{
    background:linear-gradient(180deg,rgba(255,255,255,.93),rgba(248,251,255,.86));
    backdrop-filter:blur(2px);
}
@media(max-width:700px){
    .remote-support{
        background:
            linear-gradient(180deg,rgba(255,255,255,.94),rgba(246,251,255,.88)),
            url("assets/backgrounds/remote-support-light.png") center/cover no-repeat !important;
    }
}

/* Mobile Hero-Feinschliff */
@media(max-width:700px){
    .hero-bullets{
        display:none !important;
    }
    .hero-actions{
        justify-content:center !important;
    }
    .hero-actions .btn{
        width:min(100%,280px);
    }
}

/* Cookie-Consent */
.cookie-consent{
    position:fixed;
    left:clamp(14px,3vw,32px);
    right:clamp(14px,3vw,32px);
    bottom:clamp(14px,3vw,32px);
    z-index:9999;
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:18px;
    align-items:center;
    max-width:980px;
    margin:0 auto;
    padding:20px;
    border:1px solid rgba(11,116,255,.18);
    border-radius:18px;
    background:rgba(255,255,255,.96);
    box-shadow:0 24px 70px rgba(19,60,112,.22);
    backdrop-filter:blur(14px);
}
.cookie-consent__text{
    display:grid;
    gap:6px;
}
.cookie-consent__text strong{
    color:var(--text);
    font-size:1.05rem;
}
.cookie-consent__text p{
    margin:0;
    color:var(--muted);
    font-size:.95rem;
}
.cookie-consent__text a{
    color:var(--blue);
    font-weight:800;
}
.cookie-consent__actions{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    justify-content:flex-end;
}
.cookie-consent .btn{
    min-width:126px;
    border-radius:14px;
    padding:12px 16px;
    cursor:pointer;
}
.footer-cookie-link{
    padding:0;
    border:0;
    background:transparent;
    color:inherit;
    font:inherit;
    font-weight:inherit;
    text-decoration:none;
    cursor:pointer;
}
.footer-cookie-link:hover{
    color:var(--blue2);
}
@media(max-width:720px){
    .cookie-consent{
        grid-template-columns:1fr;
    }
    .cookie-consent__actions{
        justify-content:stretch;
    }
    .cookie-consent .btn{
        flex:1 1 140px;
    }
}

/* Apple-inspirierte Testversion */
:root{
    --bg:#f5f5f7;
    --bg2:#ffffff;
    --panel:rgba(255,255,255,.74);
    --panel2:rgba(255,255,255,.86);
    --text:#1d1d1f;
    --muted:#6e6e73;
    --blue:#0071e3;
    --blue2:#2997ff;
    --line:rgba(0,0,0,.10);
    --shadow:0 24px 60px rgba(0,0,0,.08);
}

html{
    background:#f5f5f7;
}

body{
    background:
        radial-gradient(circle at 50% -10%,rgba(0,113,227,.12),transparent 34%),
        linear-gradient(180deg,#ffffff 0%,#f5f5f7 34%,#eef2f7 100%) !important;
    color:var(--text);
    font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text","Inter","Segoe UI",Roboto,Arial,sans-serif;
    letter-spacing:0;
}

.site-header{
    max-width:none;
    min-height:62px !important;
    padding:10px clamp(18px,5vw,76px) !important;
    background:rgba(255,255,255,.76) !important;
    border-bottom:1px solid rgba(0,0,0,.08) !important;
    backdrop-filter:saturate(180%) blur(22px);
    box-shadow:none !important;
}

.brand{
    gap:12px !important;
}

.brand img,
.logo img{
    width:clamp(46px,4vw,58px) !important;
    max-height:58px !important;
}

.brand span{
    padding:0 !important;
    border:0 !important;
    background:none !important;
    box-shadow:none !important;
    color:#1d1d1f !important;
    font-size:.88rem !important;
    font-weight:700 !important;
    letter-spacing:-.01em;
}

.brand span::before{
    display:none !important;
}

.nav-main a,
.nav a{
    color:#4f4f54 !important;
    font-size:.9rem;
    font-weight:650;
}

.nav-main a:hover,
.nav a:hover{
    color:#0071e3 !important;
}

.header-phone,
.nav-cta{
    border:0 !important;
    border-radius:999px !important;
    background:rgba(0,113,227,.08) !important;
    color:#0066cc !important;
    box-shadow:none !important;
}

.site-header .nav-cta{
    background:#0071e3 !important;
    color:#fff !important;
}

.site-header .nav-cta .icon,
.header-phone .icon{
    color:currentColor !important;
}

.nav-toggle{
    border:0 !important;
    border-radius:999px !important;
    background:rgba(0,0,0,.06) !important;
    color:#1d1d1f !important;
}

.hero{
    max-width:none;
    min-height:calc(100vh - 62px);
    grid-template-columns:minmax(0,1fr) minmax(280px,420px);
    gap:clamp(28px,5vw,74px);
    padding:clamp(72px,9vw,132px) clamp(22px,7vw,116px) clamp(68px,8vw,110px) !important;
    background:
        linear-gradient(120deg,rgba(255,255,255,.94) 0%,rgba(255,255,255,.82) 42%,rgba(245,248,252,.56) 100%),
        url("assets/backgrounds/hero-server-network.png") center/cover no-repeat !important;
    border-bottom:1px solid rgba(0,0,0,.06);
}

.hero::after{
    background:
        radial-gradient(circle at 84% 26%,rgba(0,113,227,.16),transparent 28%),
        radial-gradient(circle at 16% 76%,rgba(134,186,255,.13),transparent 26%) !important;
}

.hero .eyebrow,
.eyebrow{
    color:#0066cc !important;
    letter-spacing:.12em;
    font-size:.74rem;
}

.hero h1{
    max-width:900px;
    color:#1d1d1f !important;
    font-size:clamp(3.1rem,7.2vw,6.8rem);
    font-weight:800;
    line-height:.98;
    letter-spacing:-.045em;
    text-shadow:none !important;
}

.hero-content>p:not(.eyebrow){
    max-width:760px;
    color:#515154 !important;
    font-size:clamp(1.18rem,1.8vw,1.55rem);
    line-height:1.45;
    letter-spacing:-.01em;
}

.hero-actions{
    margin-top:34px;
}

.btn,
.submit-btn,
.cookie-consent .btn{
    border:0 !important;
    border-radius:999px !important;
    background:rgba(0,113,227,.10) !important;
    color:#0066cc !important;
    box-shadow:none !important;
    font-weight:750;
    transition:transform .18s ease, background .18s ease, color .18s ease;
}

.btn:hover,
.submit-btn:hover{
    transform:translateY(-1px);
    background:rgba(0,113,227,.15) !important;
}

.btn.primary,
.submit-btn{
    background:#0071e3 !important;
    color:#fff !important;
}

.hero-card{
    align-self:center;
    padding:34px;
    border:1px solid rgba(255,255,255,.72) !important;
    border-radius:30px !important;
    background:rgba(255,255,255,.62) !important;
    box-shadow:0 30px 80px rgba(0,0,0,.12) !important;
    backdrop-filter:saturate(180%) blur(24px);
}

.hero-card img{
    max-width:320px;
}

.hero-card strong{
    color:#1d1d1f;
    font-size:1.4rem;
    letter-spacing:-.02em;
}

.hero-card span{
    color:#6e6e73;
}

.hero-bullets{
    background:#f5f5f7;
    gap:10px !important;
    padding:16px clamp(18px,5vw,76px) !important;
}

.hero-bullets span{
    min-height:34px !important;
    padding:0 14px !important;
    border:0 !important;
    border-radius:999px !important;
    background:rgba(255,255,255,.72) !important;
    color:#4f4f54 !important;
    box-shadow:none !important;
    font-size:.82rem !important;
    backdrop-filter:blur(14px);
}

.hero-bullets span::before{
    color:#0071e3 !important;
}

.section{
    max-width:none;
    padding:clamp(72px,8vw,118px) clamp(22px,7vw,116px) !important;
}

.section h2,
.split h2,
.experience h2,
.remote-support h2,
.testimonials h2,
.process h2{
    max-width:960px;
    color:#1d1d1f;
    font-size:clamp(2.35rem,5vw,4.8rem);
    font-weight:800;
    letter-spacing:-.045em;
    line-height:1.02;
}

.section-intro,
.section > p:not(.eyebrow),
.split p,
.experience > p:not(.eyebrow),
.remote-copy p{
    color:#6e6e73;
    font-size:clamp(1.04rem,1.45vw,1.25rem);
    line-height:1.55;
}

.cards article,
.steps div,
.testimonial-card,
.contact-form,
.remote-card,
.download-card,
.legal-card,
.review-panel{
    border:1px solid rgba(255,255,255,.75) !important;
    border-radius:28px !important;
    background:rgba(255,255,255,.72) !important;
    box-shadow:0 20px 54px rgba(0,0,0,.07) !important;
    backdrop-filter:saturate(180%) blur(22px);
}

.cards article:hover,
.testimonial-card:hover,
.download-card:hover{
    transform:translateY(-3px);
    box-shadow:0 28px 72px rgba(0,0,0,.10) !important;
}

.cards article h3,
.steps h3,
.testimonial-card h3{
    color:#1d1d1f;
    letter-spacing:-.02em;
}

.cards article p,
.steps p,
.testimonial-card blockquote{
    color:#6e6e73;
}

.card-icon,
.step-icon{
    border:0 !important;
    border-radius:18px !important;
    background:linear-gradient(180deg,#f5f5f7,#e8edf4) !important;
    color:#0071e3 !important;
    box-shadow:none !important;
}

#leistungen{
    background:#f5f5f7;
}

#leistungen::before{
    background:
        linear-gradient(180deg,rgba(245,245,247,.90),rgba(245,245,247,.76)),
        url("assets/backgrounds/section-network-light.png") center/cover no-repeat !important;
    opacity:1;
}

.split,
.experience,
.process,
.testimonials{
    background:linear-gradient(180deg,#ffffff 0%,#f5f5f7 100%) !important;
    border-block:1px solid rgba(0,0,0,.06) !important;
}

.checklist li,
.industry-pills span,
.contact-data a,
.contact-data span{
    border:0 !important;
    border-radius:18px !important;
    background:rgba(255,255,255,.74) !important;
    color:#4f4f54 !important;
    box-shadow:none !important;
}

.remote-support{
    max-width:none;
    background:
        linear-gradient(100deg,rgba(255,255,255,.95),rgba(245,245,247,.84)),
        url("assets/backgrounds/remote-support-light.png") center/cover no-repeat !important;
    border-block:1px solid rgba(0,0,0,.06) !important;
}

.remote-support::before{
    background:radial-gradient(circle at 82% 42%,rgba(0,113,227,.13),transparent 32%) !important;
}

.download-card strong{
    color:#1d1d1f;
}

.download-card small{
    color:#6e6e73;
}

.testimonial-card::before{
    width:0 !important;
}

.testimonial-rating{
    background:rgba(255,204,0,.16) !important;
    color:#b77900 !important;
}

.testimonial-source{
    border:0 !important;
    background:rgba(0,113,227,.08) !important;
    color:#0066cc !important;
}

input,
textarea,
select,
.review-form select{
    border:1px solid rgba(0,0,0,.10) !important;
    border-radius:16px !important;
    background:rgba(255,255,255,.86) !important;
    color:#1d1d1f !important;
    box-shadow:none !important;
}

input:focus,
textarea:focus,
select:focus{
    outline:none !important;
    border-color:#0071e3 !important;
    box-shadow:0 0 0 4px rgba(0,113,227,.12) !important;
}

.contact{
    align-items:start;
}

footer,
.site-footer{
    max-width:none;
    border-top:1px solid rgba(0,0,0,.08) !important;
    background:#f5f5f7;
    color:#6e6e73;
}

.cookie-consent{
    border:1px solid rgba(255,255,255,.72) !important;
    border-radius:24px !important;
    background:rgba(255,255,255,.84) !important;
    box-shadow:0 30px 80px rgba(0,0,0,.14) !important;
    backdrop-filter:saturate(180%) blur(24px);
}

.review-page,
.student-page{
    background:
        radial-gradient(circle at 50% -10%,rgba(0,113,227,.10),transparent 34%),
        linear-gradient(180deg,#ffffff 0%,#f5f5f7 100%) !important;
}

.student-hero,
.student-card,
.student-form,
.student-process-wrapper,
.faq-grid article{
    border:1px solid rgba(255,255,255,.75) !important;
    border-radius:28px !important;
    background:rgba(255,255,255,.74) !important;
    box-shadow:0 20px 54px rgba(0,0,0,.07) !important;
    backdrop-filter:saturate(180%) blur(22px);
}

@media(max-width:1220px){
    .nav{
        background:rgba(255,255,255,.90) !important;
        border:1px solid rgba(255,255,255,.72) !important;
        box-shadow:0 24px 70px rgba(0,0,0,.12) !important;
        backdrop-filter:saturate(180%) blur(22px);
    }
}

@media(max-width:900px){
    .hero{
        grid-template-columns:1fr;
        min-height:auto;
        padding-top:78px !important;
    }
    .hero-card{
        max-width:420px;
        justify-self:center;
    }
}

@media(max-width:700px){
    .hero{
        background:
            linear-gradient(180deg,rgba(255,255,255,.94),rgba(245,245,247,.82)),
            url("assets/backgrounds/hero-server-network.png") center/cover no-repeat !important;
    }
    .hero h1{
        font-size:clamp(2.7rem,13vw,4.2rem);
    }
    .hero-card{
        display:none;
    }
}

/* Apple-Test Feinschliff */
.site-header{
    height:64px;
}

.site-header .brand span{
    color:#2d2d31 !important;
    font-size:.84rem !important;
    font-weight:650 !important;
}

.nav-main{
    align-items:center;
}

.nav-main a{
    padding:7px 2px;
}

.hero{
    align-items:center;
    min-height:calc(100svh - 64px);
    background:
        linear-gradient(112deg,rgba(255,255,255,.96) 0%,rgba(255,255,255,.88) 38%,rgba(245,248,252,.50) 100%),
        url("assets/backgrounds/hero-server-network.png") center/cover no-repeat !important;
}

.hero-content{
    max-width:920px;
}

.hero .eyebrow{
    margin-bottom:14px;
}

.hero h1{
    max-width:980px;
    margin-bottom:24px;
}

.hero-actions .btn{
    min-height:46px;
    padding:0 22px;
}

.hero-card{
    transform:translateY(8px);
}

/* Studentenseite: wohnlicher Hero-Hintergrund */
.student-hero{
    position:relative;
    isolation:isolate;
    overflow:hidden;
    background:
        linear-gradient(105deg,rgba(255,255,255,.97) 0%,rgba(255,255,255,.90) 45%,rgba(245,245,247,.66) 100%),
        url("assets/backgrounds/student-home-wifi.png") center/cover no-repeat !important;
}

.student-hero::before{
    content:"";
    position:absolute;
    inset:0;
    z-index:-1;
    background:
        radial-gradient(circle at 18% 18%,rgba(0,113,227,.10),transparent 32%),
        linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,.40));
    pointer-events:none;
}

.student-hero > *{
    position:relative;
    z-index:1;
}

@media(max-width:700px){
    .student-hero{
        background:
            linear-gradient(180deg,rgba(255,255,255,.96),rgba(245,245,247,.82)),
            url("assets/backgrounds/student-home-wifi.png") center/cover no-repeat !important;
    }
    .student-hero-logo-right{
        margin-top:0;
        justify-content:center;
        align-self:start;
    }
    .student-hero-logo-right img{
        width:min(250px,70vw);
        margin-top:4px;
    }
}

.hero-card::before{
    content:"";
    width:46px;
    height:5px;
    justify-self:center;
    border-radius:999px;
    background:rgba(0,0,0,.12);
}

.hero-bullets{
    border-bottom:1px solid rgba(0,0,0,.06);
}

.section{
    position:relative;
}

.section > .eyebrow,
.section > h2,
.section > .section-intro,
.split > *,
.experience > *,
.remote-support > *,
.process > *,
.testimonials > *,
.contact > *{
    position:relative;
    z-index:1;
}

#leistungen .cards{
    gap:18px;
}

.cards article{
    min-height:270px;
    padding:30px !important;
}

.cards article h3{
    margin-bottom:10px;
    font-size:1.2rem;
}

.cards article p{
    font-size:.98rem;
    line-height:1.55;
}

.card-icon,
.step-icon{
    width:46px !important;
    height:46px !important;
    margin-bottom:20px !important;
}

.split{
    grid-template-columns:minmax(0,1.05fr) minmax(300px,.95fr);
}

.checklist{
    gap:10px;
}

.checklist li{
    padding:14px 18px 14px 46px;
}

.remote-support{
    min-height:560px;
}

.remote-downloads{
    gap:14px;
}

.download-card{
    min-height:138px;
}

.testimonial-carousel{
    padding-top:12px;
}

.testimonial-card{
    min-height:226px;
    padding:22px 22px 20px 24px !important;
}

.testimonial-signature{
    border-top:1px solid rgba(0,0,0,.08);
}

.contact-form{
    padding:30px !important;
}

.contact-data a,
.contact-data span{
    min-height:52px;
    align-items:center;
}

.review-panel,
.admin-panel{
    border-radius:30px !important;
}

@media(max-width:1100px){
    .hero{
        grid-template-columns:1fr;
    }
    .hero-card{
        display:none;
    }
    .split{
        grid-template-columns:1fr;
    }
}

@media(max-width:700px){
    .site-header{
        height:auto;
        min-height:62px !important;
    }
    .hero{
        min-height:auto;
        padding-top:72px !important;
        padding-bottom:70px !important;
    }
    .section{
        padding-top:68px !important;
        padding-bottom:68px !important;
    }
    .cards article{
        min-height:0;
    }
}

/* Mobile Startseite: Logo im Hero kompakt sichtbar lassen */
@media(max-width:1100px){
    body:not(.student-page) .hero-card{
        display:grid;
        width:min(300px,78vw);
        max-width:300px;
        justify-self:center;
        margin-top:8px;
        padding:18px 18px 16px !important;
        gap:8px;
        border-radius:24px !important;
        background:rgba(255,255,255,.70) !important;
        box-shadow:0 16px 44px rgba(0,0,0,.08) !important;
    }
    body:not(.student-page) .hero-card img{
        max-width:190px;
    }
    body:not(.student-page) .hero-card strong{
        font-size:1rem;
        margin-top:2px;
    }
    body:not(.student-page) .hero-card span{
        font-size:.86rem;
    }
}

@media(max-width:700px){
    body:not(.student-page) .hero{
        gap:18px;
    }
    body:not(.student-page) .hero-card{
        width:min(220px,64vw);
        padding:12px 14px 11px !important;
        gap:4px;
    }
    body:not(.student-page) .hero-card img{
        max-width:138px;
    }
    body:not(.student-page) .hero-card strong{
        font-size:.9rem;
    }
    body:not(.student-page) .hero-card span{
        display:none;
    }
    body:not(.student-page) .hero-card::before{
        width:34px;
        height:4px;
    }
}
