/* Public layout only; controls and brand tokens are shared with the portal. */
.access-shell{max-width:1200px;margin:64px auto;display:grid;grid-template-columns:1fr 1.05fr;gap:72px;padding:0 32px;align-items:start;min-height:calc(100dvh - 270px)}
.intro{position:sticky;top:140px;padding:40px 0}
.eyebrow{font-size:12px;letter-spacing:.1em;font-weight:600;color:var(--conexion-link)}
.intro h1{font-size:clamp(36px,4vw,54px);font-weight:700;line-height:1.18;letter-spacing:-.045em;margin:24px 0}
.intro em{color:var(--conexion-link);font-style:normal}
.intro p{max-width:350px;color:var(--conexion-muted);font-size:18px}
.intro-bottom{margin-top:48px;font-size:14px;color:var(--conexion-muted)}
.access-shell .panel{padding:32px}
.access-shell h2{font-size:30px;margin:12px 0}
.access-shell .muted{font-size:14px}
.login-tabs{display:flex;background:var(--conexion-background);padding:4px;border-radius:10px;margin:24px 0;gap:4px}
.login-tabs a{flex:1;text-align:center;font-size:14px;min-height:44px;display:grid;place-items:center;padding:8px 4px;border-radius:7px;text-decoration:none;color:var(--conexion-muted);border-bottom:3px solid transparent}
.login-tabs a[aria-current=page]{background:var(--conexion-surface);color:var(--conexion-link);font-weight:600;border-bottom-color:var(--conexion-primary)}
.username-field{display:flex;align-items:center;border:1px solid var(--conexion-input-border);border-radius:8px;padding-left:12px;background:var(--conexion-surface-inner)}
.username-field input{border:0;background:transparent}.username-field span{color:var(--conexion-muted)}
.forgot{display:block;text-align:right;font-size:14px;padding:12px 0;margin:4px 0}
.divider{border-top:1px solid var(--conexion-border);margin:24px 0}
.center{text-align:center}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.back{display:inline-flex;align-items:center;min-height:44px;font-size:14px}
.access-shell details{margin-top:24px;border-top:1px solid var(--conexion-border);padding-top:16px}
.access-shell summary{min-height:44px;padding:8px 0}
.text-button{background:none;border:0;color:var(--conexion-link);text-decoration:underline;padding:12px 0;min-height:44px;cursor:pointer}
.access-footer{max-width:1200px;margin:0 auto;padding:24px 32px;color:var(--conexion-muted);font-size:14px;border-top:1px solid var(--conexion-border);display:flex;justify-content:space-between;gap:16px}
#document-fields{border:0;padding:0;margin:20px 0 0;min-width:0}
#document-fields legend{font-size:14px;font-weight:600}
@media(max-width:900px){.access-shell{grid-template-columns:minmax(0,1fr);gap:24px;margin:32px auto;max-width:600px;padding:0 24px}.intro{position:static;padding:0}.intro h1{font-size:32px;margin:12px 0}.intro h1 br{display:none}.intro h1 br::after{content:" "}.intro p,.intro-bottom{display:none}.intro h1{max-width:400px}}
@media(max-width:540px){.access-shell{padding:0 16px;margin-top:24px}.access-shell .panel{padding:24px}.form-row{grid-template-columns:minmax(0,1fr);gap:0}.access-footer{padding:24px 16px;flex-direction:column}.access-shell h2{font-size:28px}}
.intro .eyebrow{color:var(--conexion-link-on-tint)}
@media(max-width:900px){.intro h1 br{display:block}.intro h1{font-size:30px}}