.auth-page{background:#fafbf7;min-height:100dvh;padding:25px 24px max(22px,env(safe-area-inset-bottom));color:#244637}
.auth-top{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px}
.auth-top .brand{font-size:27px;letter-spacing:-1.3px}.auth-top .brand img{width:36px;height:36px}
.auth-brand-note{display:flex;flex-direction:column;align-items:flex-end;gap:3px;font-size:11px;color:#66795a;white-space:nowrap}.auth-brand-note>span{font-size:21px;line-height:1;color:#88a163}
.auth-hero{height:184px;position:relative;isolation:isolate;overflow:hidden;border-radius:22px;background:#e7efdb;border:1px solid #e1e8d8;margin-bottom:28px}
.auth-people{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2}
.auth-hero::before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#e8efdd99,transparent 65%);z-index:-1}
.auth-hero-copy{padding:23px 17px;max-width:65%}.auth-kicker{font-size:10px;letter-spacing:1.2px;font-weight:700;color:#526c40}
.auth-hero-copy p{font-family:Manrope,sans-serif;font-size:27px;letter-spacing:-1px;line-height:1.17;font-weight:700;margin:12px 0 11px}.auth-hero-copy em{font-family:Georgia,serif;font-weight:400;color:#526d3e}.auth-hero-caption{font-size:11px;color:#586d49}
.auth-welcome-tag{font-size:10px;letter-spacing:1.3px;font-weight:700;color:#71865f}.auth-welcome h1{display:flex;align-items:center;gap:8px;font-size:27px;letter-spacing:-1px;line-height:1.3;margin-top:8px}.auth-welcome h1>span{font-size:24px;color:#a1b675;font-weight:400}.auth-welcome p{font-size:14px;line-height:1.6;color:#6b7869;margin-top:8px}
.auth-form{display:flex;flex-direction:column;gap:18px;margin-top:25px}.auth-form label{font-size:14px;font-weight:600;display:flex;flex-direction:column;gap:9px}
.auth-form .input-wrap{display:flex;align-items:center;gap:11px;border:1px solid #dce3d7;background:#fff;border-radius:14px;min-height:56px;padding:0 14px;transition:border-color .2s,box-shadow .2s}
.auth-form .input-wrap:focus-within{border-color:#5e825d;box-shadow:0 0 0 3px #65935718}.auth-form .input-wrap>.icon{width:20px;height:20px;color:#7b8d73}
.auth-form input{border:0;background:transparent;box-shadow:none!important;font-size:16px;line-height:1.5;width:100%;height:54px;outline:0;padding:0}.auth-form input::placeholder{color:#8b9587;opacity:1}
.auth-form .input-wrap:has(#password){padding-right:6px}.auth-form #show-password{display:flex;align-items:center;justify-content:center;width:44px;height:48px;flex-shrink:0;padding:0;color:#6d8063;border-radius:10px}.auth-form #show-password .icon{width:21px;height:21px}
.auth-form>.button{min-height:58px;font-size:16px;font-weight:700;border-radius:14px;background:#245443;margin-top:3px;box-shadow:0 6px 15px #24544316;justify-content:center}.auth-form>.button .icon:last-child{margin-left:8px;width:21px}.auth-form>.button:hover{background:#193f32}.auth-form .form-error{font-size:14px;line-height:1.55;background:#fff0eb;border-radius:10px;padding:12px;color:#9c3e2c}
.switch-auth{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:0 4px;font-size:14px;color:#677561;margin:15px 0 12px;line-height:1.5}.switch-auth button{min-height:44px;padding:8px 4px;font-size:14px;font-weight:700;color:#245443;display:inline-flex;align-items:center;gap:5px}.switch-auth button>span{font-size:18px}
.auth-reassurance{display:flex;align-items:center;justify-content:center;gap:7px;font-size:12px;color:#738269}.auth-reassurance .icon{width:16px;height:16px;color:#809a6d}.auth-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:20px;border-top:1px solid #e5eadf;margin-top:25px;font-size:12px;color:#7c8c70}.auth-footer>span:last-child{font-size:25px;color:#a1b584;line-height:1}
.auth-register .auth-hero{height:155px;margin-bottom:24px}.auth-register .auth-hero-copy{padding-top:18px}.auth-register .auth-hero-caption{display:none}
@media(max-width:360px){.auth-page{padding:21px 18px 22px}.auth-top{margin-bottom:20px}.auth-top .brand{font-size:25px}.auth-brand-note{font-size:10px}.auth-hero{height:165px;margin-bottom:24px}.auth-hero-copy{padding:20px 13px}.auth-hero-copy p{font-size:25px}.auth-hero-caption{font-size:10px}.auth-welcome h1{font-size:25px}.auth-welcome p{font-size:14px}.auth-footer{font-size:11px}}
@media(min-width:900px){.auth-page{min-height:calc(100dvh - 56px);padding:28px}.auth-hero{height:200px}.auth-hero-copy{padding:26px 19px}.auth-hero-copy p{font-size:29px}}
