/* EF Startseite 08.11.2026. Ausschließlich .efs- Komponenten. */
.efs-home{color:#071348;background:#fff;line-height:1.7;overflow-wrap:break-word}
.efs-home *{box-sizing:border-box}
.efs-wrap{width:min(1180px,calc(100% - 48px));margin-inline:auto}
.efs-home h1,.efs-home h2,.efs-home h3{color:inherit;letter-spacing:-.025em;text-wrap:balance}
.efs-home h1{font-size:64px;line-height:1.08;font-weight:750;max-width:850px;margin:0 0 26px}
.efs-home h2{font-size:44px;line-height:1.15;margin:0 0 28px}
.efs-home h3{font-size:25px;line-height:1.25;margin:0 0 18px}
.efs-home p{font-size:18px;line-height:1.7;margin:0 0 22px;max-width:78ch}
.efs-section{padding:96px 0}
.efs-stage{position:relative;isolation:isolate;color:#fff;background:#071348;overflow:hidden}
.efs-picture{position:absolute;inset:0;z-index:-2;display:block}
.efs-picture img{display:block;width:100%;height:100%;object-fit:cover;object-position:65% center}
.efs-hero .efs-picture img{object-position:100% center}
.efs-stage::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(7,19,72,.9) 0%,rgba(7,19,72,.85) 38%,rgba(7,19,72,.6) 65%,rgba(7,19,72,.2) 100%)}
.efs-stage-content{position:relative;padding-block:96px 100px}
.efs-hero{min-height:700px;display:flex;align-items:center}
.efs-hero .efs-hero-sub{font-size:22px;line-height:1.35;max-width:40ch;margin-bottom:20px}
.efs-hero .efs-stage-content>p{max-width:66ch}
.efs-hero .efs-trust{font-size:15px;color:#f3c747;line-height:1.6;margin-block:26px 16px}
.efs-actions{display:flex;gap:20px 28px;align-items:center;flex-wrap:wrap;margin-top:30px}
.efs-link{color:inherit;font-weight:650;text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px}
.efs-link:hover{text-decoration-thickness:2px}
.efs-button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:14px 24px;border:2px solid #f3c747;border-radius:12px;background:#f3c747;color:#071348!important;text-decoration:none;font-weight:750;line-height:1.35}
.efs-home a:focus-visible,.efs-home summary:focus-visible{outline:3px solid #f3c747;outline-offset:5px}
.efs-section:not(.efs-contact) a:focus-visible{outline-color:#071348}
.efs-home .efs-caption{position:absolute;bottom:10px;left:20px;right:20px;color:#fff;font-size:12px;line-height:1.4;margin:0;max-width:none;text-shadow:0 1px 3px #071348}
.efs-proof-band{background:#071348;color:#fff;padding:64px 0}
.efs-proof-band h2{font-size:38px}
.efs-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin:28px 0 30px}
.efs-number{display:block;font-size:76px;line-height:1.05;letter-spacing:-.045em;color:#f3c747;font-weight:750;white-space:nowrap}
.efs-stats span{display:block;font-size:18px;margin-top:12px}
.efs-proof-band p{font-size:14px;max-width:none;margin-bottom:0}
.efs-logo-wall{padding-block:72px;text-align:center}
.efs-logo-wall>p{margin-inline:auto}
.efs-logos{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding:0;margin:36px auto;max-width:960px}
.efs-logos li{min-width:0;min-height:112px;display:flex;align-items:center;justify-content:center}
.efs-logo-carrier{display:flex;align-items:center;justify-content:center;width:224px;max-width:100%;min-height:88px;padding:16px 22px}
.efs-logo-carrier img{width:auto;height:auto;max-width:180px;max-height:56px;object-fit:contain}
.efs-logo-dark{background:#071348;border-radius:4px}
.efs-cards{display:grid;gap:24px;margin-top:36px}
.efs-four{grid-template-columns:repeat(4,minmax(0,1fr))}
.efs-three{grid-template-columns:repeat(3,minmax(0,1fr))}
.efs-card{padding:30px 26px;border:1px solid #071348;border-radius:16px;display:flex;flex-direction:column;min-width:0;background:#fff;color:#071348}
.efs-card p{font-size:17px}
.efs-card>.efs-link{margin-top:auto;line-height:1.5}
.efs-auto::before{background:linear-gradient(90deg,rgba(7,19,72,.94),rgba(7,19,72,.88) 50%,rgba(7,19,72,.25))}
.efs-auto h2{font-size:52px;max-width:20ch}
.efs-auto-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:850px}
.efs-auto-card{padding:24px;background:rgba(7,19,72,.86);border:1px solid rgba(255,255,255,.3);border-radius:16px}
.efs-auto-card h3{font-size:23px;color:#f3c747}
.efs-auto-card p{font-size:17px}
.efs-inline-links{display:flex;flex-wrap:wrap;gap:12px 20px;font-size:16px}
.efs-portal{background:#f5f6f9}
.efs-benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;padding:0;list-style:none;margin:36px 0}
.efs-benefits li{border-top:3px solid #f3c747;padding-top:22px;font-size:18px}
.efs-benefits strong{display:block;margin-bottom:10px;font-size:21px}
.efs-kicker{font-weight:700}
.efs-care .efs-stage-content{max-width:var(--wrap,1200px)}
.efs-care::before{background:linear-gradient(90deg,rgba(7,19,72,.92),rgba(7,19,72,.85) 45%,rgba(7,19,72,.35))}
.efs-care h2{font-size:48px;max-width:20ch}
.efs-care h3{font-size:23px;max-width:36ch;margin-top:28px}
.efs-care p:not(.efs-caption){max-width:62ch}
.efs-masters .efs-wrap{max-width:1000px}
.efs-masters h2{font-size:42px}
.efs-contact{background:#071348;color:#fff;padding-block:80px}
.efs-contact h2{font-size:46px}
.efs-contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:52px;margin-top:36px;align-items:start}
.efs-questions{padding-left:20px;margin:0 0 30px;font-size:18px}
.efs-questions li{margin-bottom:18px}
.efs-phone{display:block;color:#f3c747;font-size:28px;font-weight:700;text-decoration:none;margin-bottom:20px}
.efs-form-shell{background:#fff;color:#071348;border-radius:16px;padding:28px;min-width:0}
.efs-form-shell .contact-form{margin:0;width:100%;max-width:none}
.efs-form-shell input,.efs-form-shell select,.efs-form-shell textarea{max-width:100%}
.efs-form-shell .ef28-checks[hidden]{display:none!important}
.efs-faq{margin-top:64px}
.efs-faq details{border-top:1px solid rgba(255,255,255,.3);padding:20px 0}
.efs-faq summary{cursor:pointer;font-size:20px;font-weight:650}
.efs-faq details p{margin:16px 0 0}
.efs-related{max-width:1200px;margin:0 auto;padding:24px 20px;background:#fff}
.efs-related summary{cursor:pointer;font-weight:650}
.efs-related .efs-inline-links{padding-top:16px}
@media(max-width:1200px){.efs-number{font-size:60px}.efs-four{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1023px){.efs-logos li{min-height:96px}.efs-contact-grid{gap:28px}.efs-three{grid-template-columns:1fr}.efs-home h1{font-size:52px}.efs-stage-content{padding-block:72px 80px}}
@media(max-width:767px){
.efs-wrap{width:calc(100% - 36px)}
.efs-home h1{font-size:38px;line-height:1.1;margin-bottom:22px}
.efs-home h2,.efs-auto h2,.efs-care h2,.efs-contact h2,.efs-masters h2{font-size:30px;line-height:1.18}
.efs-home h3{font-size:22px}.efs-home p{font-size:17px}.efs-section{padding-block:56px}
.efs-hero{min-height:580px}.efs-hero .efs-stage-content{padding-block:56px 72px}.efs-hero .efs-hero-sub{font-size:20px}
.efs-hero::before{background:linear-gradient(90deg,rgba(7,19,72,.94),rgba(7,19,72,.73))}
.efs-picture img{object-position:center}.efs-hero .efs-picture img{object-position:60% center}
.efs-actions{gap:16px 24px}.efs-actions .efs-button{width:100%}.efs-link{display:inline-block;padding-block:5px}
.efs-proof-band{padding-block:48px}.efs-proof-band h2{font-size:28px}
.efs-stats{grid-template-columns:1fr;gap:28px}.efs-number{font-size:48px}.efs-stats span{margin-top:6px}
.efs-logo-wall{padding-block:48px}.efs-logos{gap:16px}.efs-logo-carrier{padding:12px;min-height:72px}
.efs-logo-carrier img{max-width:132px;max-height:44px}
.efs-four,.efs-auto-grid,.efs-benefits,.efs-contact-grid{grid-template-columns:1fr}
.efs-card{padding:26px 22px}.efs-cards{gap:20px}.efs-benefits{gap:24px}
.efs-auto .efs-picture,.efs-care .efs-picture{position:relative;height:290px;z-index:0}
.efs-auto::before,.efs-care::before{display:none}.efs-auto .efs-stage-content,.efs-care .efs-stage-content{padding-block:48px 72px}
.efs-auto-grid{margin-top:28px}.efs-auto-card{padding:22px;background:transparent}
.efs-contact-grid{gap:24px}.efs-form-shell{padding:22px 18px}.efs-faq{margin-top:48px}.efs-faq summary{font-size:18px}
.efs-phone{font-size:26px}.efs-home .efs-caption{font-size:11px}
}
@media(max-width:639px){.efs-logos{grid-template-columns:repeat(2,minmax(0,1fr))}.efs-logos li:last-child{grid-column:1/-1}.efs-logos li{min-height:88px}}
@media(prefers-reduced-motion:reduce){.efs-home *,.efs-home *::before,.efs-home *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.efs-logo-carrier img[src$="kunde-bmw.svg"]{max-height:72px}
@media(max-width:1023px){.efs-logo-carrier img[src$="kunde-bmw.svg"]{max-height:56px}}

/* Ergänzung 13.11.2026: Kundenportal-Abschnitt und Bereich für Fachbetriebe */
.efs-portal-eyebrow{font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;font-weight:800;color:#51608e;margin:0 0 12px}
.efs-portal-grid{display:grid;grid-template-columns:1.25fr .9fr;gap:56px;align-items:center}
.efs-portal-grid>*{min-width:0}
.efs-portal-list{list-style:none;margin:28px 0 22px;padding:0;display:grid;gap:18px}
.efs-portal-list li{display:grid;grid-template-columns:48px 1fr;gap:16px;align-items:start}
.efs-portal-list strong{display:block;color:#071348;font-size:18px;line-height:1.3}
.efs-portal-list div>span{display:block;color:#3d4a66;margin-top:3px;line-height:1.55}
.efs-pico{width:48px;height:48px;border-radius:12px;background:#071348;display:flex;align-items:center;justify-content:center;margin:0}
.efs-pico svg{width:24px;height:24px;stroke:#f5c400;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.efs-portal-scope{font-size:15px;color:#59647c;margin:0}
.efs-portal-login{background:linear-gradient(150deg,#0a1858,#071348);color:#fff;border-radius:22px;padding:38px 34px;box-shadow:0 30px 60px -30px rgba(7,19,72,.55)}
.efs-portal-login-kicker{font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;font-weight:800;color:#f5c400;margin:0 0 10px}
.efs-portal-login h3{color:#fff;font-size:26px;line-height:1.15;margin:0 0 12px}
.efs-portal-login p{color:#d5ddf0;margin:0 0 22px;line-height:1.55}
.efs-portal-login .efs-button{display:flex;justify-content:center;gap:8px;width:100%;background:#f5c400;color:#071348;border-color:#f5c400}
.efs-portal-login .efs-portal-help{font-size:15px;margin:20px 0 0;color:#b9c4e4}
.efs-portal-login .efs-portal-help a{color:#fff;font-weight:700;white-space:nowrap}
.efs-portal-login a:focus-visible{outline:3px solid #f5c400;outline-offset:3px}
.efs-partner{background:#fff}
.efs-cards.efs-cards-2{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:900px){.efs-portal-grid{grid-template-columns:1fr;gap:32px}.efs-portal-login{padding:30px 24px}.efs-cards.efs-cards-2{grid-template-columns:1fr}}
