.login-v2{background:var(--color-vlak-pagina);color:var(--color-tekst-sterk);grid-template-columns:58% 42%;min-height:100svh;padding:20px;display:grid}.login-hero{background-color:var(--color-vlak-kaart);background-image:var(--zijmenu-gloed);min-height:calc(100svh - 40px);box-shadow:var(--schaduw-kaart);color:var(--color-tekst-sterk);border-radius:28px;position:relative;overflow:hidden}.login-hero-copy{padding:50px 48px;position:relative}.login-hero-copy p{letter-spacing:-.04em;margin:0;font-size:clamp(48px,5.8vw,84px);font-weight:600;line-height:1.02}.login-hero-copy span{color:var(--color-accent)}.login-hero-foot{color:var(--color-tekst);font-size:18px;line-height:1.5;position:absolute;bottom:42px;left:48px;right:48px}.login-hero-foot strong{color:var(--color-tekst-sterk);margin-bottom:8px;font-weight:500;display:block}.login-right{flex-direction:column;min-width:0;padding:26px 56px 30px;display:flex}.login-brand{letter-spacing:-.3px;color:var(--color-tekst-sterk);align-items:center;font-size:20px;font-weight:600;display:flex}.login-mobile-brand{display:none}.login-content{width:100%;max-width:390px;margin:auto;padding:48px 0}.login-content h1{color:var(--color-tekst-sterk);letter-spacing:-1.5px;overflow-wrap:anywhere;margin:0 0 24px;font-size:44px;font-weight:600;line-height:1.1}.login-content form{flex-direction:column;gap:22px;display:flex}.login-content label{color:var(--color-tekst-sterk);font-size:15px;font-weight:500}.login-content input{border:1px solid var(--color-rand-hover);background:var(--color-vlak-kaart);width:100%;min-height:56px;color:var(--color-tekst-sterk);font:inherit;box-shadow:none;border-radius:10px;padding:14px 16px;font-size:17px}.login-content button[type=submit]{background:var(--color-accent);min-height:56px;color:var(--color-vlak-pagina);font:inherit;box-shadow:none;cursor:pointer;border:0;border-radius:10px;padding:12px 20px;font-size:17px;font-weight:600}.login-content button[type=submit]:hover{background:var(--color-accent-hoog)}.login-content button[type=submit]:disabled{cursor:wait;opacity:.65}.login-content a{min-height:44px;color:var(--color-tekst-sterk);text-underline-offset:4px;border-radius:4px;justify-content:center;align-items:center;font-size:15px;text-decoration:underline;display:flex}.login-content input:focus-visible{border-color:var(--color-accent);box-shadow:var(--focus-ring);outline:0}.login-content button:focus-visible,.login-content a:focus-visible{box-shadow:var(--focus-ring);outline:0}.login-content [role=alert]{color:var(--color-fout);font-size:15px;line-height:1.5}.login-content .login-account-hint{text-align:left;color:var(--color-tekst-zacht);border:0;margin:0 0 10px;padding:0;font-size:16px;line-height:1.6}.login-recovery-heading p{color:var(--color-tekst-zacht);font-size:16px;line-height:1.6}.login-content [role=status]{font-size:16px;line-height:1.6}.login-recovery-form{margin:28px 0 16px}@media (max-width:1100px) and (min-width:700px){.login-right{padding:26px 28px}.login-brand{font-size:17px}.login-hero-copy{padding:40px 30px}.login-hero-copy p{font-size:5vw}.login-hero-foot{left:30px;right:30px}.login-content h1{font-size:38px}}@media (max-width:699px){.login-v2{flex-direction:column;padding:0 20px 24px;display:flex}.login-mobile-brand{align-items:center;min-height:66px;display:flex}.login-brand{font-size:18px}.login-right>.login-brand{display:none}.login-hero{background-position:0 20%;background-size:200% 300%;border-radius:18px;flex-shrink:0;height:196px;min-height:0}.login-hero-copy{padding:22px}.login-hero-copy p{letter-spacing:-.035em;font-size:clamp(30px,9.2vw,38px)}.login-hero-foot{display:none}.login-right{padding:26px 0 0;display:block}.login-content{max-width:440px;margin:0 auto;padding:0}.login-content h1{letter-spacing:-1.3px;margin-bottom:12px;font-size:34px}.login-content form{gap:17px}.login-content label{font-size:14px}.login-content input,.login-content button{min-height:52px;font-size:16px}.login-content .login-account-hint{margin-bottom:5px;font-size:15px}}@media (max-width:359px){.login-v2{padding-left:16px;padding-right:16px}.login-hero{height:166px}.login-hero-copy{padding:19px}.login-right{padding-top:22px}.login-content h1{font-size:32px}}@keyframes login-arrive{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:no-preference){.login-hero-copy,.login-content{animation:.6s ease-out both login-arrive}.login-content input,.login-content button,.login-content a{transition:background-color .15s,border-color .15s}}
