@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,600;1,600&display=swap');
:root{--ink:#202b35;--muted:#71808b;--line:#dfe6e4;--soft:#f5f8f6;--cream:#fbfaf7;--green:#206d5b;--green-dark:#155345;--mint:#d5ebe1;--orange:#f0a06d}*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:'DM Sans',Arial,sans-serif;color:var(--ink);background:var(--cream)}a{color:var(--green);text-decoration:none;font-weight:600}a:hover{text-decoration:underline}.auth-page{min-height:100vh}.auth-shell{display:grid;grid-template-columns:minmax(400px,46%) 1fr;min-height:100vh}.auth-visual{position:relative;display:flex;flex-direction:column;padding:38px clamp(38px,6vw,94px);overflow:hidden;background:#1f5b4e;color:#fff}.auth-visual:before,.auth-visual:after{content:'';position:absolute;border-radius:50%;pointer-events:none}.auth-visual:before{width:540px;height:540px;right:-260px;top:-150px;border:1px solid rgba(255,255,255,.14);box-shadow:0 0 0 60px rgba(255,255,255,.035),0 0 0 120px rgba(255,255,255,.025)}.auth-visual:after{width:220px;height:220px;left:-110px;bottom:100px;background:rgba(240,160,109,.14)}.brand{display:inline-flex;align-items:center;gap:10px;color:var(--ink);font-size:20px;font-weight:700;letter-spacing:-.5px;width:max-content}.brand:hover{text-decoration:none}.brand-mark{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:var(--green);color:#fff;font-weight:700;font-size:17px}.brand-light{position:relative;z-index:1;color:#fff}.brand-light .brand-mark{background:#f1b184;color:#164e44}.visual-content{position:relative;z-index:1;margin:auto 0;padding:55px 0 60px;max-width:480px}.eyebrow{display:block;color:#73827d;font-size:11px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase}.light-eyebrow{color:#a8d0bf}.visual-content h1{margin:20px 0 22px;font-size:clamp(44px,5vw,70px);line-height:1.03;letter-spacing:-3px;font-weight:600}.visual-content h1 em{font-family:'Playfair Display',serif;font-weight:600;color:#f4b587}.visual-content>p{max-width:360px;color:#c6ddd3;font-size:17px;line-height:1.65;margin:0}.testimonial{margin-top:74px;max-width:410px;padding-top:20px;border-top:1px solid rgba(255,255,255,.2)}.quote-mark{height:20px;color:#f1b184;font-family:Georgia,serif;font-size:46px;line-height:30px}.testimonial blockquote{margin:7px 0 20px;font-size:16px;line-height:1.55;color:#f5f8f6}.person{display:flex;align-items:center;gap:11px}.person strong,.person small{display:block}.person strong{font-size:13px}.person small{margin-top:3px;color:#a8c6ba;font-size:11px}.avatar{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;font-size:10px;font-weight:700}.avatar-sage{background:#aacbb6;color:#27574c}.visual-footer{position:relative;z-index:1;display:flex;gap:21px;color:#a8c6ba;font-size:11px}.visual-footer a{color:#d1e2db;font-weight:500}.auth-panel{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:45px 30px}.auth-card{width:min(100%,430px)}.mobile-brand{display:none}.card-heading{margin-bottom:30px}.card-heading h2{margin:11px 0 9px;font-size:29px;line-height:1.2;letter-spacing:-1px}.card-heading p{margin:0;color:var(--muted);font-size:14px}.sso-button,.primary-button{width:100%;height:50px;border-radius:8px;font:600 14px 'DM Sans',sans-serif;cursor:pointer;transition:.2s ease}.sso-button{display:flex;align-items:center;justify-content:center;gap:10px;border:1px solid var(--line);background:#fff;color:var(--ink)}.sso-button:hover{border-color:#b8c9c3;background:#fafdfe}.google-icon{display:grid;place-items:center;width:20px;height:20px;font:700 15px Arial;color:#4285f4}.divider{display:flex;align-items:center;gap:13px;margin:25px 0;color:#9aa7a5;font-size:11px}.divider:before,.divider:after{content:'';height:1px;flex:1;background:var(--line)}.field{margin-bottom:20px}.field label,.label-row label{display:block;margin-bottom:8px;font-size:12px;font-weight:700;color:#34424a}.label-row{display:flex;justify-content:space-between;align-items:center}.label-row a{font-size:11px}.label-row label{margin-bottom:8px}input[type=email],input[type=password],input[type=text]{display:block;width:100%;height:48px;padding:0 14px;border:1px solid #d5dfdc;border-radius:7px;background:#fff;color:var(--ink);font:14px 'DM Sans',sans-serif;outline:none;transition:border .2s,box-shadow .2s}input:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(32,109,91,.11)}input::placeholder{color:#a7b2b0}.password-wrap{position:relative}.password-wrap input{padding-right:58px}.password-toggle{position:absolute;right:10px;top:50%;transform:translateY(-50%);border:0;background:none;color:var(--green);font:700 11px 'DM Sans',sans-serif;cursor:pointer}.check-row{display:flex;align-items:center;gap:9px;color:#64716f;font-size:12px;margin:1px 0 23px;cursor:pointer}.check-row input{position:absolute;opacity:0}.checkmark{width:16px;height:16px;border:1px solid #c8d4d0;border-radius:4px;background:#fff;position:relative}.check-row input:checked+.checkmark{background:var(--green);border-color:var(--green)}.check-row input:checked+.checkmark:after{content:'✓';position:absolute;left:3px;top:-1px;color:#fff;font-size:12px}.primary-button{display:flex;align-items:center;justify-content:center;gap:12px;border:0;background:var(--green);color:white;box-shadow:0 5px 12px rgba(32,109,91,.15)}.primary-button:hover{background:var(--green-dark);transform:translateY(-1px)}.primary-button span{font-size:19px;font-weight:400}.form-note{margin:18px 0 0;text-align:center;color:#93a09e;font-size:10px;line-height:1.6}.form-note a{font-weight:600}.help-line{margin:43px 0 0;color:#8b9895;font-size:12px}.help-line a{margin-left:4px}@media(max-width:760px){.auth-shell{display:block}.auth-visual{display:none}.auth-panel{min-height:100vh;padding:35px 22px;justify-content:flex-start}.mobile-brand{display:block;width:100%;margin-bottom:78px}.auth-card{width:min(100%,430px)}.card-heading h2{font-size:27px}.help-line{margin-top:38px}}@media(min-width:761px) and (max-width:1000px){.auth-visual{padding-left:42px;padding-right:42px}.testimonial{margin-top:50px}.visual-content h1{font-size:53px}}