@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500&family=DM+Sans:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500&family=Space+Grotesk:wght@400;500&display=swap');

:root{color-scheme:only dark;--auth-paper:#090f12;--auth-panel:#101a1d;--auth-ink:#e7eae5;--auth-muted:#9aa6a4;--auth-line:#293638;--auth-accent:#b6e5d7;--auth-danger:#f0a09a}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:var(--auth-paper);color:var(--auth-ink);font-family:'DM Sans',sans-serif}
body{min-height:100dvh}
a{color:inherit}
button,input,select{font:inherit}
.auth-page{min-height:100dvh;display:grid;grid-template-columns:minmax(310px,.92fr) minmax(440px,1.08fr);background:var(--auth-paper)}
.auth-story{position:relative;isolation:isolate;display:flex;min-height:100dvh;flex-direction:column;justify-content:space-between;padding:34px clamp(28px,5vw,76px);overflow:hidden;border-right:1px solid var(--auth-line)}
.auth-story:before{content:"";position:absolute;inset:0;z-index:-2;background:url("/static/images/homepage/atmosphere-process-steps.webp") center/cover no-repeat;opacity:.62}
.auth-story:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(9,15,18,.2),rgba(9,15,18,.48) 40%,#090f12 100%)}
.auth-brand{display:inline-flex;align-items:center;min-height:44px;width:max-content}
.auth-brand img{display:block;width:110px;height:auto;object-fit:contain}
.auth-story-copy{max-width:510px;margin:70px 0 66px}
.auth-eyebrow,.auth-label,.auth-micro{font-family:'IBM Plex Mono',monospace;text-transform:uppercase;letter-spacing:.13em}
.auth-eyebrow{font-size:10px;color:#c1d0ca;display:flex;align-items:center;gap:10px}
.auth-eyebrow:before{content:"";width:20px;height:1px;background:var(--auth-accent)}
.auth-story h1{font-family:'Cormorant Garamond',serif;font-weight:400;font-size:clamp(52px,6.3vw,92px);line-height:.91;letter-spacing:-.045em;margin:27px 0 22px;max-width:480px}
.auth-story h1 em{font-weight:400;color:var(--auth-accent)}
.auth-story-copy p{max-width:370px;font-size:14px;line-height:1.8;color:#c3ceca;margin:0}
.auth-story-foot{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid rgba(231,234,229,.22);padding-top:16px;font-size:11px;color:#bcc8c4}
.auth-story-foot a{color:inherit;text-decoration:none;min-height:44px;display:flex;align-items:center}
.auth-story-foot a:hover{color:var(--auth-accent)}
.auth-main{display:flex;align-items:center;justify-content:center;padding:42px clamp(24px,6vw,96px);min-width:0}
.auth-card{width:100%;max-width:450px;padding:12px 0}
.auth-mobile-brand{display:none}
.auth-form-heading{margin-bottom:29px}
.auth-micro{font-size:9px;color:var(--auth-accent);margin:0 0 10px}
.auth-form-heading h2{font-family:'Cormorant Garamond',serif;font-size:clamp(40px,4vw,56px);line-height:1;font-weight:400;letter-spacing:-.025em;margin:0 0 10px}
.auth-form-heading p{font-size:13px;line-height:1.7;color:var(--auth-muted);margin:0;max-width:390px}
.auth-flashes{margin:0 0 19px}
.auth-flash{border-left:2px solid var(--auth-accent);padding:10px 13px;margin:8px 0;background:rgba(56,215,190,.07);color:#d9e3df;font-size:13px;line-height:1.55}
.auth-flash[data-tone="danger"],.auth-flash[data-tone="error"]{border-color:var(--auth-danger);background:rgba(240,160,154,.08)}
.auth-flash[data-tone="warning"]{border-color:#d6bd7d;background:rgba(214,189,125,.08)}
.auth-flash[data-tone="success"]{border-color:var(--auth-accent)}
.auth-field{margin:0 0 17px}
.auth-label{display:block;color:#bdc9c5;font-size:9px;margin-bottom:8px}
.auth-control,.auth-select{width:100%;height:50px;border:1px solid var(--auth-line);border-radius:0;background:rgba(16,26,29,.72);color:var(--auth-ink);padding:0 14px;font-size:14px;outline:none;transition:border-color .18s,background .18s}
.auth-control::placeholder{color:#778481}
.auth-control:focus,.auth-select:focus{border-color:var(--auth-accent);background:#111d1f;box-shadow:0 0 0 2px rgba(56,215,190,.12)}
.auth-control:-webkit-autofill{-webkit-text-fill-color:var(--auth-ink);caret-color:var(--auth-ink);box-shadow:0 0 0 1000px var(--auth-panel) inset}
.auth-control[aria-invalid="true"],.auth-select[aria-invalid="true"]{border-color:var(--auth-danger)}
.auth-select{appearance:none;padding-right:42px}
.auth-select-wrap{position:relative}
.auth-select-wrap:after{content:"";position:absolute;right:17px;top:19px;width:8px;height:8px;border-right:1px solid var(--auth-muted);border-bottom:1px solid var(--auth-muted);transform:rotate(45deg);pointer-events:none}
.auth-select option{background:#101a1d;color:var(--auth-ink)}
.auth-field-error{font-size:12px;line-height:1.5;color:#ffb6af;margin:7px 0 0}
.auth-checkbox-line{display:flex;align-items:flex-start;gap:11px;margin:13px 0;color:#b9c5c1;font-size:12px;line-height:1.6}
.auth-checkbox-line input{width:18px;height:18px;flex:0 0 18px;margin:1px 0 0;accent-color:var(--auth-accent)}
.auth-checkbox-line a,.auth-inline-link{color:var(--auth-accent);text-underline-offset:3px}
.auth-checkbox-line a:hover,.auth-inline-link:hover{color:#a4f1e4}
.auth-checkbox-error{margin:-6px 0 12px 29px}
.auth-submit,.auth-google{display:flex;align-items:center;justify-content:center;min-height:50px;width:100%;border:1px solid var(--auth-accent);border-radius:0;text-decoration:none;font-weight:600;font-size:13px;transition:background .18s,color .18s,transform .18s}
.auth-submit{margin-top:22px;background:var(--auth-accent);color:#091311;cursor:pointer}
.auth-submit:hover{background:#a4f1e4;border-color:#a4f1e4}
.auth-submit:active,.auth-google:active{transform:translateY(1px)}
.auth-google{gap:11px;background:transparent;color:var(--auth-ink);border-color:var(--auth-line);min-height:48px}
.auth-google:hover{border-color:var(--auth-accent);color:var(--auth-ink)}
.auth-divider{display:flex;align-items:center;gap:14px;margin:19px 0;color:#899592;font:9px 'IBM Plex Mono',monospace;letter-spacing:.15em}
.auth-divider:before,.auth-divider:after{content:"";height:1px;flex:1;background:var(--auth-line)}
.auth-secondary{margin:20px 0 0;text-align:center;color:var(--auth-muted);font-size:12px;line-height:1.8}
.auth-secondary a{color:var(--auth-accent);text-underline-offset:3px}
.auth-remember{margin-top:0}
.auth-error-summary{padding:12px 14px;border:1px solid rgba(240,160,154,.42);margin:0 0 18px;color:#ffd0cb;background:rgba(240,160,154,.06);font-size:12px}
.auth-error-summary strong{display:block;margin-bottom:5px}
.auth-error-summary ul{padding-left:19px;margin:4px 0 0}
.auth-page a:focus-visible,.auth-page button:focus-visible,.auth-page input:focus-visible,.auth-page select:focus-visible{outline:2px solid var(--auth-accent);outline-offset:4px}
.auth-submit:focus-visible,.auth-google:focus-visible{outline-offset:4px}
@media(max-width:800px){.auth-page{grid-template-columns:1fr}.auth-story{min-height:290px;height:34dvh;max-height:390px;padding:20px 24px;border-right:0;border-bottom:1px solid var(--auth-line)}.auth-story:before{background-position:center 56%}.auth-story-copy{margin:20px 0}.auth-story h1{font-size:clamp(43px,9vw,65px);margin:14px 0 10px}.auth-story-copy p{font-size:12px;max-width:410px}.auth-story-foot{padding-top:9px}.auth-main{padding:38px 24px 48px}.auth-card{max-width:500px}}
@media(max-width:480px){.auth-page{min-height:100dvh}.auth-story{height:235px;min-height:235px;padding:16px 20px}.auth-story-copy{margin:12px 0 15px}.auth-eyebrow{font-size:8px}.auth-story h1{font-size:49px;margin:10px 0 8px}.auth-story-copy p{font-size:12px;line-height:1.55;max-width:320px}.auth-story-foot{font-size:10px}.auth-main{align-items:flex-start;padding:28px 20px 40px}.auth-card{padding:0}.auth-form-heading{margin-bottom:23px}.auth-form-heading h2{font-size:43px}.auth-control,.auth-select{height:52px;font-size:16px}.auth-submit,.auth-google{min-height:52px}.auth-field{margin-bottom:15px}.auth-checkbox-line{font-size:12px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}

/* Let translated copy and enlarged text grow naturally on narrow screens. */
@media(max-width:800px){
  .auth-story{height:auto;min-height:320px;max-height:none}
}
@media(max-width:480px){
  .auth-story{height:auto;min-height:300px}
  .auth-story-foot{display:none}
  .auth-story-copy{margin:22px 0 12px}
}
.auth-control,.auth-select{border-radius:7px}
.auth-submit,.auth-google{border-radius:10px}
.auth-checkbox-line{min-height:44px;align-items:center}
.auth-checkbox-line label{padding:10px 0;cursor:pointer}
.auth-secondary a{display:inline-flex;align-items:center;min-height:44px}
