@font-face{font-family:Jakarta;src:url('/assets/PlusJakartaSans-Regular.ttf');font-weight:400;font-display:swap}@font-face{font-family:Jakarta;src:url('/assets/PlusJakartaSans-Medium.ttf');font-weight:500;font-display:swap}@font-face{font-family:Jakarta;src:url('/assets/PlusJakartaSans-Bold.ttf');font-weight:700;font-display:swap}
:root{color-scheme:light;--paper:#f8f6f2;--ink:#262332;--muted:#756e7e;--plum:#4b326e;--violet:#6d43a4;--line:#ded7e6}*{box-sizing:border-box}body{margin:0;font:400 16px/1.6 Jakarta,sans-serif;color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:wait;opacity:.6}a{color:inherit}:focus-visible{outline:3px solid #00a6b5;outline-offset:4px}
.login-layout{min-height:100svh;display:grid;grid-template-columns:1fr 1fr}
.login-story{padding:clamp(35px,5vw,82px);display:flex;flex-direction:column;background:#ede7f2;position:relative;overflow:hidden}
.login-brand{display:flex;align-items:center;gap:12px;text-decoration:none;width:fit-content}
.login-brand>img{object-fit:contain}
.login-brand>span{font-size:32px;letter-spacing:-.06em;color:var(--plum);font-weight:700;line-height:1}
.login-brand>span>span{display:block;font-size:12px;font-weight:500;letter-spacing:.08em;margin-top:9px}
.story-copy{margin:auto 0;padding:70px 0 44px}
.eyebrow{font-size:12px;font-weight:700;color:#79638f;letter-spacing:.14em;text-transform:uppercase;margin:0 0 24px}h1{font-size:clamp(42px,4.6vw,76px);line-height:1.06;letter-spacing:-.065em;font-weight:500;margin:0 0 27px}h1 em{font-style:normal;color:var(--plum);font-weight:700}
.story-copy>p:not(.eyebrow){max-width:380px;color:#6b6078;font-size:18px;line-height:1.6;margin:0}
.story-line{height:130px;max-width:460px;margin-top:20px}
.story-line svg{display:block;width:100%;height:100%}
.brand-pair{display:flex;align-items:center;gap:30px}
.brand-pair img{object-fit:contain;height:auto}
.brand-pair>span{height:30px;width:1px;background:#d4c8df}
.login-access{display:grid;place-items:center;padding:70px clamp(28px,6vw,98px)}
.login-form-wrap{width:100%;max-width:390px}
.restricted-label{display:flex;align-items:center;gap:8px;font-size:12px;letter-spacing:.07em;color:#796d85;margin-bottom:32px;text-transform:uppercase}
.restricted-label>span{height:6px;width:6px;border-radius:50%;background:#00a6b5}h2{font-size:clamp(32px,3vw,46px);font-weight:500;letter-spacing:-.055em;line-height:1.12;margin:0 0 15px}
.login-intro{font-size:16px;line-height:1.7;color:var(--muted);margin:0 0 35px}form label{font-size:12px;font-weight:700;display:block;margin:0 0 9px}input{display:block;width:100%;font-size:16px;background:#fff;border:1px solid #d9d1e2;border-radius:10px;padding:15px 16px;color:var(--ink);min-height:52px;margin-bottom:24px;transition:border-color .15s}input:focus{outline:none;border-color:var(--violet);box-shadow:0 0 0 3px #6d43a410}input::placeholder{color:#82738d}
.password-wrap{position:relative}
.password-wrap input{padding-right:85px}
.password-wrap button{position:absolute;right:8px;top:4px;height:44px;padding:0 10px;background:transparent;border:0;font-size:12px;font-weight:700;color:var(--plum);border-radius:5px}#login-submit{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:53px;padding:14px 18px;border:1px solid var(--plum);border-radius:10px;background:var(--plum);color:#fff;font-size:14px;font-weight:700;transition:background .15s}#login-submit>span{font-size:20px;font-weight:400}
.form-error{color:#9b3e52;font-size:13px;min-height:0;margin:0 0 15px}
.form-error:empty{display:none}
.privacy-note{font-size:12px;line-height:1.75;color:#74617f;margin:24px 0 0}
.login-date{font-size:12px;color:#74617f;margin-top:35px;letter-spacing:.035em}
@media(hover:hover){#login-submit:hover{background:#614085}
.password-wrap button:hover{background:#eee7f4}}
@media(max-width:800px){.login-layout{grid-template-columns:1fr}
.login-story{padding:25px 28px 32px}
.login-brand>img{width:40px;height:40px}
.login-brand>span{font-size:25px}
.login-brand>span>span{font-size:12px;margin-top:7px}
.story-copy{padding:40px 0 10px}
.eyebrow{font-size:12px;margin-bottom:15px}h1{font-size:clamp(36px,8.5vw,64px);margin-bottom:20px}h1 br:nth-of-type(2){display:none}
.story-copy>p:not(.eyebrow){font-size:14px;max-width:460px}
.story-line{display:none}
.brand-pair{gap:22px;margin-top:20px}
.brand-pair img:first-child{width:100px}
.brand-pair img:last-child{width:126px}
.brand-pair>span{height:20px}
.login-access{padding:37px 28px 50px;place-items:start center}
.restricted-label{margin-bottom:18px;font-size:12px}h2{font-size:32px}
.login-intro{font-size:16px;margin-bottom:24px}
.login-date{margin-top:24px}}
@media(max-width:360px){.login-story,.login-access{padding-left:22px;padding-right:22px}
.brand-pair{gap:15px}h1{font-size:36px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;scroll-behavior:auto!important}}
