:root{
  --access-navy:#020617;
  --access-navy-soft:#0f172a;
  --access-blue:#155EEF;
  --access-blue-strong:#0F4BD8;
  --access-green:#10B981;
  --access-border:#DDE3EA;
  --access-muted:#64748B;
  --access-text:#0F172A;
  --access-soft:#F8FAFC;
}
*{box-sizing:border-box}
body.access-page{margin:0;min-height:100vh;background:#fff;color:var(--access-text)}
body.access-page.auth-page,body.access-page.signup-page{display:block;padding:0;place-items:initial;background:#fff}
.access-shell{width:100%;min-height:100vh;display:grid;grid-template-columns:minmax(420px,1.08fr) minmax(520px,.92fr)}
.access-story{position:relative;overflow:hidden;display:flex;flex-direction:column;padding:clamp(34px,4.3vw,72px);background:var(--access-navy);color:#fff}
.access-story::before{content:"";position:absolute;inset:auto -11rem -13rem auto;width:30rem;height:30rem;border-radius:50%;background:radial-gradient(circle,rgba(21,94,239,.18),rgba(21,94,239,0) 70%);pointer-events:none}
.access-story__brand{position:relative;z-index:1;display:inline-flex;width:max-content}
.access-story__brand img{display:block;width:clamp(155px,13vw,218px);height:auto;object-fit:contain}
.access-story__content{position:relative;z-index:1;width:min(540px,100%);margin:auto 0;padding:44px 0}
.access-story__content h1{margin:0 0 22px;max-width:13ch;font-size:clamp(36px,3.8vw,58px);line-height:1.05;letter-spacing:-.05em;color:#fff}
.access-story__content>p{margin:0;max-width:540px;color:#CBD5E1;font-size:clamp(15px,1.15vw,19px);line-height:1.7}
.access-story__features{display:grid;gap:17px;margin-top:42px;max-width:520px}
.access-story__features article{display:grid;grid-template-columns:42px 1fr;gap:14px;align-items:start}
.access-story__features article>span{width:38px;height:38px;display:grid;place-items:center;border-radius:11px;background:#111A34;color:#31D0AA}
.access-story__features article>span .icon{width:18px;height:18px}
.access-story__features strong{display:block;margin:0 0 4px;color:#fff;font-size:14px;line-height:1.35}
.access-story__features p{margin:0;color:#A9B6CC;font-size:13px;line-height:1.55}
.access-panel{min-width:0;display:flex;flex-direction:column;padding:24px clamp(34px,5.8vw,96px);background:#fff}
.access-panel__top{min-height:48px;display:flex;align-items:center;justify-content:flex-end;gap:16px}
.access-mobile-brand{display:none}.access-mobile-brand img{display:block;width:145px;height:auto}
.access-content{width:min(470px,100%);margin:auto;padding:38px 0 56px}
.access-content--wide{width:min(600px,100%)}
.access-content .alert{margin-bottom:18px}
.access-page .locale-options{right:0;left:auto}
.access-page .auth-head,.access-page .signup-head{text-align:center;margin-bottom:28px}
.access-page .auth-head h1,.access-page .signup-head h2{margin:0;color:var(--access-text);font-size:clamp(26px,2.5vw,34px);line-height:1.15;letter-spacing:-.035em}
.access-page .auth-head p,.access-page .signup-head p{margin:8px auto 0;color:var(--access-muted);font-size:14px;line-height:1.6}
.access-page .signup-kicker{display:none}
.access-page .stack,.access-page .signup-form{display:grid;gap:0}
.access-page .stack>.form-field,.access-page .signup-form>.form-field,.access-page .signup-grid .form-field{margin-bottom:16px}
.access-page .form-field{display:grid;gap:7px}
.access-page .form-field label{font-size:12px;font-weight:780;color:#334155}
.access-page .form-field label span{color:#E11D48}
.access-page .form-field input,.access-page .form-field select{width:100%;min-height:47px;border:1px solid var(--access-border);border-radius:8px;background:#fff;color:var(--access-text);padding:0 12px;font:inherit;font-size:14px;outline:none;transition:border-color .16s ease,box-shadow .16s ease}
.access-page .form-field input::placeholder{color:#94A3B8}
.access-page .form-field input:focus,.access-page .form-field select:focus{border-color:#7AA7FF;box-shadow:0 0 0 3px rgba(21,94,239,.08)}
.access-page .password-field__control{min-height:47px;border:1px solid var(--access-border);border-radius:8px;background:#fff;overflow:hidden}.access-page .password-field__control input{min-height:45px;padding-right:12px;border:0!important;border-radius:0!important;box-shadow:none!important}.access-page .password-field__control:focus-within{border-color:#7AA7FF;box-shadow:0 0 0 3px rgba(21,94,239,.08)}.access-page .password-field__toggle{height:45px;width:48px;flex-basis:48px;border-left:1px solid var(--access-border);background:#EEF4FF;color:var(--access-blue);transition:background .16s ease,color .16s ease,border-color .16s ease}.access-page .password-field__toggle:hover{background:#DBEAFE;color:var(--access-blue-strong)}.access-page .password-field__toggle:focus-visible{outline:2px solid #7AA7FF;outline-offset:-3px}.access-page .password-field__toggle.is-visible{background:#E0EAFF;color:var(--access-blue-strong);border-left-color:#BFDBFE}
.access-page .btn.btn-primary{width:100%;min-height:48px;border-radius:8px;background:var(--access-blue);border-color:var(--access-blue);font-weight:800;box-shadow:none}.access-page .btn.btn-primary:hover{background:var(--access-blue-strong);border-color:var(--access-blue-strong);transform:none}
.access-page .btn.btn-secondary{width:100%;min-height:46px;border-radius:8px}
.access-page .auth-link{display:block;width:max-content;max-width:100%;margin:14px 0 24px auto;text-align:right;color:var(--access-blue);font-size:12px;font-weight:700;line-height:1.4;text-decoration:none}.access-page .auth-link:hover{text-decoration:underline}
.access-page .auth-signup-prompt,.access-page .signup-login{margin:18px 0 0;text-align:center;color:#475569;font-size:13px}.access-page .auth-signup-prompt a,.access-page .signup-login a{color:var(--access-blue);font-weight:750;text-decoration:none}.access-page .auth-signup-prompt a:hover,.access-page .signup-login a:hover{text-decoration:underline}
.access-page .field-error{color:#B42318;font-size:11px;line-height:1.45}
.access-page .signup-terms{font-size:12px;line-height:1.55;color:#475569}
.access-page .signup-terms a{color:var(--access-blue)}
.access-page .signup-submit{margin-top:6px}
.access-page .locale-dropdown summary{background:#fff}
@media(max-width:980px){.access-shell{grid-template-columns:1fr}.access-story{display:none}.access-panel{min-height:100vh;padding:20px clamp(20px,7vw,56px)}.access-panel__top{justify-content:space-between}.access-mobile-brand{display:inline-flex}.access-content{margin:auto}.access-content--wide{width:min(600px,100%)}}
@media(max-width:620px){.access-panel{padding:17px 16px 26px}.access-panel__top{margin-bottom:16px}.access-content,.access-content--wide{width:100%;padding:20px 0 36px}.access-page .auth-head,.access-page .signup-head{margin-bottom:22px}.access-page .auth-head h1,.access-page .signup-head h2{font-size:27px}.access-mobile-brand img{width:126px}}
@media(prefers-reduced-motion:reduce){.access-page .form-field input,.access-page .form-field select,.access-page .password-field__toggle{transition:none}}
