/* Donor sign-in and registration dialogs */
.site-header-v2 .site-nav-login{display:inline-flex;min-height:40px;align-items:center;justify-content:center;margin-right:9px;padding:0 15px;border:1px solid #cae5d3;border-radius:11px;color:#0d7950;background:#f4faf6;font-size:.74rem;font-weight:800;text-decoration:none;white-space:nowrap;transition:background .2s,border-color .2s,color .2s}
.site-header-v2 .site-nav-login:hover,.site-header-v2 .site-nav-login:focus-visible{border-color:#168f5b;color:#0a6c46;background:#e6f5eb}
@media(max-width:1199px){.site-header-v2 .public-nav-actions .site-nav-login{display:none}}

body.auth-is-open{overflow:hidden}
.auth-overlay[hidden],.auth-dialog[hidden]{display:none!important}
.auth-overlay{position:fixed;z-index:2000;inset:0;display:grid;place-items:center;overflow-y:auto;padding:24px;background:rgba(13,36,37,.57);backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px)}
.auth-dialog{position:relative;display:grid;width:min(960px,100%);max-height:calc(100dvh - 48px);grid-template-columns:minmax(0,.84fr) minmax(0,1fr);overflow:hidden;border-radius:21px;background:#fff;box-shadow:0 28px 90px rgba(5,28,31,.3)}
.auth-dialog__photo{position:relative;min-height:585px;overflow:hidden;background:#366f63}
.auth-dialog--register .auth-dialog__photo{min-height:650px}
.auth-dialog__photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.auth-dialog__photo--login img{object-position:50% 48%}
.auth-dialog__photo--register img{object-position:50% 42%}
.auth-dialog__photo:after{position:absolute;inset:35% 0 0;background:linear-gradient(0deg,rgba(9,36,37,.86),rgba(9,36,37,.34) 57%,transparent);content:""}
.auth-dialog__photo-copy{position:absolute;z-index:1;right:34px;bottom:37px;left:36px;color:#fff}
.auth-dialog__photo-copy>span{display:block;margin-bottom:12px;color:#bce7cc;font-size:.67rem;font-weight:800;letter-spacing:.16em}
.auth-dialog__photo-copy h2{max-width:350px;margin:0;color:#fff;font-size:clamp(1.8rem,2.4vw,2.45rem);font-weight:700;line-height:1.12;letter-spacing:-.045em}
.auth-dialog__photo-copy p{max-width:320px;margin:13px 0 0;color:#e1eee9;font-size:.84rem;line-height:1.55}
.auth-dialog__form-area{position:relative;display:flex;min-width:0;flex-direction:column;justify-content:center;overflow-y:auto;padding:50px clamp(34px,4vw,62px)}
.auth-dialog--register .auth-dialog__form-area{padding-top:36px;padding-bottom:31px}
.auth-dialog__close{position:absolute;z-index:5;top:20px;right:20px;display:grid;width:37px;height:37px;place-items:center;border:1px solid #dceae1;border-radius:50%;color:#31594b;background:#fff;cursor:pointer}
.auth-dialog__close:hover,.auth-dialog__close:focus-visible{color:#0b744b;background:#eef8f1}
.auth-dialog__close svg{width:18px;height:18px}
.auth-dialog__form-head>span{color:#16875a;font-size:.69rem;font-weight:850;letter-spacing:.15em}
.auth-dialog__form-head h2{margin:12px 0 8px;color:#173e43;font-size:clamp(1.95rem,2.6vw,2.55rem);font-weight:700;line-height:1.1;letter-spacing:-.05em}
.auth-dialog__form-head p{max-width:370px;margin:0;color:#6d8278;font-size:.86rem;line-height:1.6}
.auth-dialog form{display:grid;gap:18px;margin-top:30px}
.auth-dialog__register-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px 13px!important;margin-top:23px!important}
.auth-dialog__field--wide,.auth-dialog__error{grid-column:1/-1}
.auth-dialog__field{min-width:0}
.auth-dialog__field label{display:block;margin-bottom:7px;color:#284e43;font-size:.75rem;font-weight:800}
.auth-dialog__field label span{color:#8a9c92;font-size:.69rem;font-weight:600}
.auth-dialog__field input{display:block;width:100%;height:51px;padding:0 14px;border:1px solid #d7e7dd;border-radius:9px;outline:0;color:#173e43;background:#f9fcfa;font-size:.87rem;transition:border-color .18s,box-shadow .18s}
.auth-dialog__field input::placeholder{color:#98a99e}
.auth-dialog__field input:focus{border-color:#52aa79;box-shadow:0 0 0 3px rgba(22,143,91,.11)}
.auth-dialog__field input[aria-invalid="true"]{border-color:#c75b55}
.auth-dialog__password{position:relative}.auth-dialog__password input{padding-right:49px}.auth-dialog__password button{position:absolute;top:0;right:0;display:grid;width:47px;height:51px;place-items:center;border:0;color:#668477;background:transparent;cursor:pointer}.auth-dialog__password button:hover,.auth-dialog__password button:focus-visible{color:#0e8054}.auth-dialog__password button svg{width:19px;height:19px}
.auth-dialog__field small{display:block;margin-top:5px;color:#ad4741;font-size:.73rem;line-height:1.35}
.auth-dialog__field small:empty{display:none}
.auth-dialog__field--confirm small{min-height:1.15em}.auth-dialog__field--confirm small:empty{display:block}
.auth-dialog__error{padding:11px 13px;border:1px solid #f1ccc7;border-radius:8px;color:#973b35;background:#fff5f3;font-size:.78rem;line-height:1.45}
.auth-dialog__error[hidden]{display:none}
.auth-dialog__submit{display:flex;min-height:52px;align-items:center;justify-content:space-between;gap:15px;margin-top:3px;padding:0 18px;border:0;border-radius:9px;color:#fff;background:#168f5b;font-size:.84rem;font-weight:800;cursor:pointer}
.auth-dialog__submit:hover,.auth-dialog__submit:focus-visible{background:#0e744b}
.auth-dialog__submit:disabled{opacity:.7;cursor:wait}
.auth-dialog__submit svg{width:18px;height:18px}
.auth-dialog__alternate{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:25px;padding-top:20px;border-top:1px solid #e6eee8;color:#6b8175;font-size:.8rem}
.auth-dialog__alternate button{display:inline-flex;align-items:center;gap:7px;padding:0;border:0;color:#0e8054;background:transparent;font-size:.81rem;font-weight:850;white-space:nowrap;cursor:pointer}
.auth-dialog__alternate button:hover,.auth-dialog__alternate button:focus-visible{text-decoration:underline;text-underline-offset:4px}
.auth-dialog__alternate svg{width:16px;height:16px}
@media(max-width:760px){
  .auth-overlay{align-items:start;padding:12px}
  .auth-dialog{width:min(480px,100%);max-height:calc(100dvh - 24px);grid-template-columns:1fr;overflow-y:auto;margin:auto;border-radius:16px}
  .auth-dialog__photo,.auth-dialog--register .auth-dialog__photo{min-height:205px}
  .auth-dialog__photo--login img{object-position:center 49%}
  .auth-dialog__photo--register img{object-position:center 49%}
  .auth-dialog__photo:after{inset:0;background:linear-gradient(0deg,rgba(9,36,37,.8),rgba(9,36,37,.06) 80%)}
  .auth-dialog__photo-copy{right:50px;bottom:20px;left:22px}
  .auth-dialog__photo-copy>span{margin-bottom:5px;font-size:.58rem}
  .auth-dialog__photo-copy h2{font-size:1.52rem}
  .auth-dialog__photo-copy p{display:none}
  .auth-dialog__form-area,.auth-dialog--register .auth-dialog__form-area{overflow:visible;padding:26px 24px 29px}
  .auth-dialog__close{top:13px;right:13px;z-index:2;color:#fff;background:rgba(10,45,39,.45);border-color:rgba(255,255,255,.45)}
  .auth-dialog__close:hover,.auth-dialog__close:focus-visible{color:#173e43;background:#fff}
  .auth-dialog form{margin-top:22px}
}
@media(max-width:480px){.auth-dialog__register-form{grid-template-columns:1fr;gap:12px!important}.auth-dialog__field--wide{grid-column:auto}.auth-dialog__form-head h2{font-size:1.8rem}.auth-dialog__alternate{margin-top:20px}}
