.landing{min-height:100vh;background:#f3f3f3;color:#111111;font-family:var(--font-inter),sans-serif}.landing .header{background:#ffffff;border-bottom:1px solid #ececec;position:-webkit-sticky;position:sticky;top:0;z-index:100}.landing .header-inner{max-width:1400px;margin:0 auto;padding:1.2rem max(2rem,env(safe-area-inset-right)) 1.2rem max(2rem,env(safe-area-inset-left));display:flex;align-items:center;justify-content:space-between;gap:.75rem}.landing a.logo{display:inline-flex;align-items:center;gap:.65rem;font-family:var(--font-inter-tight),sans-serif;font-size:1.28rem;font-weight:800;letter-spacing:-.04em;color:#111111!important;text-decoration:none;min-width:0}.landing a.logo svg{flex-shrink:0}.landing .logo-text{white-space:nowrap}.landing a.logo:hover{color:#111111!important;opacity:.7}.landing .btn-login,.landing .btn-primary{display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:9999px;font-family:var(--font-inter),sans-serif;font-weight:700;cursor:pointer;text-decoration:none;transition:background .15s,border-color .15s,color .15s,transform .15s}.landing .btn-primary{background:var(--akzent-gruen);color:#ffffff}.landing .btn-login{padding:.55rem 1.15rem;font-size:.88rem;background:transparent;color:#4a4a4a;border:1.5px solid #d8d8d8}.landing .btn-primary{padding:.95rem 1.7rem;font-size:.95rem;box-shadow:0 10px 28px var(--akzent-gruen-schatten)}.landing .btn-login:hover{background:#f2f2f2;border-color:#c4c4c4;color:#1a1a1a}.landing .btn-primary:hover:not(:disabled){background:var(--akzent-gruen-dunkel);color:#ffffff}.landing .btn-primary:disabled{opacity:.5;cursor:not-allowed}.landing .main{padding:0}.landing .band{padding:5rem 1.5rem}.landing .band--gray{background:#f3f3f3}.landing .band--white{background:#ffffff}.landing .band--gray:first-of-type{padding-top:3.75rem}.landing .container{max-width:1200px;margin:0 auto;display:flex;flex-direction:column;gap:4rem}.landing .band--white .container,.landing .faq-block{gap:0}.landing .hero{text-align:center;max-width:820px;margin:0 auto}.landing .eyebrow{font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#8a8a8a;margin:0 0 1rem}.landing .hero h1{font-family:var(--font-inter-tight),sans-serif;font-size:clamp(2.6rem,6.4vw,5.25rem);font-weight:900;line-height:.95;letter-spacing:-.015em;margin:0 0 1.75rem}.landing .hero-text{max-width:560px;margin:0 auto;font-size:1.125rem;line-height:1.75;color:#4a4a4a}.landing .hero-cta{margin-top:2rem}.landing .zugang-hinweis{margin:1rem auto 0;color:#5f5f5f;font-size:.9rem;line-height:1.45;white-space:nowrap}.landing .card{background:#ffffff;box-shadow:0 14px 40px rgba(0,0,0,.07),0 2px 8px rgba(0,0,0,.04)}.landing .form-field input{width:100%;padding:.9rem 1.1rem;border:1px solid #e4e4e4;background:#fafafa;font-family:inherit;font-size:16px;color:#111}.landing .form-field input:focus{outline:none;border-color:#111;background:#fff}.landing .password-field{position:relative}.landing .password-toggle{position:absolute;right:.8rem;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;font-size:1.05rem}.landing .block{text-align:center}.landing .block-title{font-family:var(--font-inter-tight),sans-serif;font-size:clamp(2rem,4vw,3rem);font-weight:900;letter-spacing:-.03em;margin:0 0 1rem}.landing .block-intro{max-width:560px;margin:0 auto 2.5rem;font-size:1.08rem;line-height:1.7;color:#4a4a4a}.landing .cards{display:flex;flex-direction:column;gap:1.5rem;max-width:960px;margin:0 auto;text-align:left}.landing .card{display:flex;align-items:flex-start;gap:2rem;padding:2.4rem 2.85rem}.landing .card-nr{font-size:2.15rem;font-weight:900;letter-spacing:-.04em;line-height:1;width:3.1rem;flex-shrink:0}.landing .card h3,.landing .card-nr{font-family:var(--font-inter-tight),sans-serif}.landing .card h3{font-size:1.35rem;font-weight:800;letter-spacing:-.03em;margin:0 0 .4rem}.landing .card p{margin:0;color:#5a5a5a;line-height:1.6}.landing .steps{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:2.25rem;gap:2.25rem;max-width:1040px;margin:2.5rem auto 0;text-align:center}.landing .step{display:flex;flex-direction:column;align-items:center;gap:.85rem;padding:0}.landing .step-icon{display:inline-flex;align-items:center;justify-content:center;width:3.4rem;height:3.4rem;border-radius:9999px;background:var(--akzent-gruen-hell);color:var(--akzent-gruen-dunkel)}.landing .step h3{font-family:var(--font-inter-tight),sans-serif;font-size:1.2rem;font-weight:800;letter-spacing:-.03em;margin:0 0 .35rem}.landing .step p{margin:0;color:#5a5a5a;line-height:1.6}.landing .faq-block{max-width:720px;width:100%;margin:0 auto;text-align:center}.landing .faq-title{font-family:var(--font-inter-tight),sans-serif;font-size:clamp(2.4rem,5vw,3.6rem);font-weight:900;letter-spacing:-.03em;margin:0 0 2.5rem}.landing .faq-list{width:100%;margin:0 0 2.75rem;text-align:left;border-top:1px solid #ddd}.landing .faq-item{width:100%;border-bottom:1px solid #ddd;background:none;box-shadow:none}.landing .faq-question{width:100%;padding:1.35rem 0;background:none;border:none;display:flex;justify-content:space-between;align-items:center;gap:1.5rem;cursor:pointer;text-align:left;color:#111;font-family:var(--font-inter),sans-serif;font-size:1.05rem;font-weight:600}.landing .faq-question span:first-child{min-width:0;flex:1 1}.landing .faq-icon{position:relative;width:1.05rem;height:1.05rem;flex-shrink:0}.landing .faq-icon:after,.landing .faq-icon:before{content:"";position:absolute;background:#111;left:50%;top:50%;transform:translate(-50%,-50%)}.landing .faq-icon:before{width:100%;height:1.5px}.landing .faq-icon:after{width:1.5px;height:100%;transition:opacity .15s,transform .15s}.landing .faq-icon.open:after{opacity:0}.landing .faq-answer{width:100%}.landing .faq-answer p{padding:0 2.5rem 1.35rem 0;margin:0;color:#5a5a5a;line-height:1.7;text-align:left}.landing .alert,.landing .cta-bottom{text-align:center}.landing .alert{padding:.85rem 1.1rem;font-size:.9rem}.landing .alert-error{background:#faf4f4;color:#9b3a3a}.landing .alert-success{background:#f1f5f2;color:#3d6b4a}.landing .modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem}.landing .modal-content{background:#fff;padding:2.75rem;max-width:440px;width:100%;position:relative;box-shadow:0 28px 64px rgba(0,0,0,.2);max-height:90vh;overflow-y:auto}.landing .modal-close{position:absolute;top:1rem;right:1rem;width:36px;height:36px;border:none;border-radius:9999px;background:#f3f3f3;cursor:pointer;color:#6a6a6a}.landing .modal-title{font-family:var(--font-inter-tight),sans-serif;font-size:1.85rem;font-weight:800;letter-spacing:-.03em;margin:0 0 1.75rem}.landing .login-form{display:flex;flex-direction:column;gap:1.1rem}.landing .form-field label{display:block;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#8a8a8a;margin-bottom:.4rem}.landing .login-forgot{text-align:right}.landing .login-forgot a{color:#111111!important;font-size:.88rem;font-weight:600}.landing .password-hints{margin-top:.55rem;font-size:.8rem;line-height:1.45;color:#9b3a3a}.landing .password-hints--ok{color:#3d6b4a}.landing .modal-switch{margin:0;text-align:center;font-size:.88rem;color:#6a6a6a}.landing .modal-switch button{border:none;background:none;padding:0;font:inherit;font-weight:700;color:#111;cursor:pointer}@media (max-width:800px){.landing .header-inner{padding:.75rem max(1rem,env(safe-area-inset-right)) .75rem max(1rem,env(safe-area-inset-left))}.landing a.logo{font-size:1.05rem;gap:.45rem}.landing a.logo svg{width:1.75rem;height:1.75rem}.landing .btn-login{min-height:40px;padding:.45rem .95rem}.landing .band{padding:2.75rem 1.15rem}.landing .band--gray:first-of-type{padding-top:2.25rem}.landing .container{gap:2.5rem}.landing .hero h1{font-size:clamp(2.15rem,11vw,3.4rem);margin-bottom:1.15rem}.landing .hero-text{font-size:1rem;line-height:1.65}.landing .zugang-hinweis{white-space:normal}.landing .form-field input{min-height:48px;font-size:16px}.landing .btn-primary{width:100%;min-height:48px}.landing .card{flex-direction:column;padding:1.5rem 1.25rem;gap:.85rem}.landing .card-nr{font-size:1.5rem;width:auto}.landing .card h3{font-size:1.15rem}.landing .block-title{font-size:1.85rem}.landing .block-intro{font-size:1rem;margin-bottom:1.75rem}.landing .steps{grid-template-columns:1fr;gap:1.75rem;margin-top:1.5rem}.landing .step-icon{width:3rem;height:3rem}.landing .faq-title{font-size:clamp(1.85rem,9vw,2.6rem);margin-bottom:1.5rem}.landing .faq-question{min-height:52px;padding:1.1rem 0;font-size:.98rem;gap:.85rem}.landing .faq-answer p{padding:0 0 1.15rem}.landing .modal-overlay{padding:.75rem;align-items:flex-end}.landing .modal-content{padding:1.75rem 1.25rem 1.5rem;max-height:92vh;overflow-y:auto}}@media (max-width:380px){.landing .logo-prefix{display:none}}