:root{--ink:#171713;--paper:#f5f1e9;--line:#ddd6ca;--muted:#7d776e;--gold:#b79264;--white:#fff;--sans:Manrope,Arial,sans-serif;--serif:'Playfair Display',Georgia,serif}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--paper);color:var(--ink);font-family:var(--sans)}button,input{font:inherit}.login-shell{min-height:100vh;display:grid;grid-template-columns:minmax(420px,1.15fr) minmax(420px,.85fr)}.login-visual{min-height:100vh;padding:42px clamp(28px,5vw,76px);position:relative;display:flex;flex-direction:column;justify-content:space-between;color:#fff;background:linear-gradient(180deg,rgba(8,8,7,.16),rgba(8,8,7,.84)),url('https://classypilates.de/wp-content/uploads/2026/05/Ladies_02-scaled.jpg') center/cover}.login-brand{display:flex;align-items:center;gap:13px;color:#fff;text-decoration:none;width:max-content}.login-brand>span{width:44px;height:44px;border:1px solid rgba(255,255,255,.75);border-radius:50%;display:grid;place-items:center;font-size:10px;font-weight:700}.login-brand b,.login-brand small{display:block}.login-brand b{font-size:11px;letter-spacing:.2em}.login-brand small{font-size:7px;letter-spacing:.18em;color:rgba(255,255,255,.58);margin-top:4px}.visual-copy{max-width:690px}.visual-copy>p,.kicker{font-size:9px;letter-spacing:.2em;font-weight:700;color:#d6b184}.visual-copy h1{font:500 clamp(68px,8vw,124px)/.82 var(--serif);letter-spacing:-.055em;margin:18px 0 32px}.visual-copy h1 em{font-weight:500}.visual-copy>span{display:block;max-width:560px;font-size:13px;line-height:1.8;color:rgba(255,255,255,.72)}.portal-list{display:flex;gap:26px;flex-wrap:wrap;font-size:8px;letter-spacing:.16em;color:rgba(255,255,255,.55)}.login-panel{position:relative;display:grid;place-items:center;padding:80px clamp(28px,7vw,110px)}.back-link{position:absolute;top:28px;right:32px;color:var(--ink);text-decoration:none;font-size:10px}.auth-wrap{width:min(500px,100%)}.tabs{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--line);margin-bottom:36px}.tabs button{border:0;background:none;padding:14px 4px;color:#918a80;font-size:10px;font-weight:700;cursor:pointer;position:relative}.tabs button.active{color:var(--ink)}.tabs button.active:after{content:'';position:absolute;bottom:-1px;left:0;right:0;height:2px;background:var(--ink)}form h2{font:500 44px/1 var(--serif);margin:8px 0 10px}form>.muted{font-size:11px;color:var(--muted);margin-bottom:24px}label{display:grid;gap:7px;margin-top:15px;font-size:8px;font-weight:700;letter-spacing:.13em;color:#5f5a52}label>small{float:right;color:#a29b91}input{width:100%;height:49px;padding:0 14px;border:1px solid var(--line);background:#fff;outline:0;border-radius:9px;color:var(--ink)}input:focus{border-color:var(--ink);box-shadow:0 0 0 3px rgba(23,23,19,.055)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.check{display:flex;align-items:flex-start;gap:9px;font-size:9px;line-height:1.55;letter-spacing:0;text-transform:none;color:var(--muted);cursor:pointer}.check input{width:16px;height:16px;flex:0 0 auto;margin:0}.check a{color:var(--ink)}.check.optional{color:#999187}.submit{width:100%;height:50px;margin-top:22px;border:0;border-radius:9px;background:var(--ink);color:#fff;font-size:9px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;cursor:pointer}.submit:hover{opacity:.91}.submit:disabled{opacity:.55;cursor:wait}.message{min-height:20px;margin-top:12px;color:#9a403a;font-size:10px;line-height:1.5}[hidden]{display:none!important}@media(max-width:880px){.login-shell{grid-template-columns:1fr}.login-visual{display:none}.login-panel{min-height:100vh;padding:80px 22px 45px}.back-link{top:22px;right:22px}.form-grid{grid-template-columns:1fr;gap:0}}
