@font-face{font-family:GiverBenefitsGeist;src:url("../fonts/geist-latin.woff2") format("woff2");font-weight:100 900;font-style:normal;font-display:swap}
/* Sign account shell; brand values from the existing Giver Sign / Landingpage. */
body.giver-benefits-account {
  --gba-ink: #191d39;
  --gba-indigo: #5058e8;
  --gba-indigo-dark: #30369f;
  --gba-paper: #fffefa;
  --gba-cream: #f3f1ea;
  --gba-inverse: #eee4fb;
  margin: 0;
  padding: 18px;
  background: var(--gba-cream);
  color: var(--gba-ink);
  font-family: GiverBenefitsGeist, Geist, "Segoe UI", Arial, sans-serif;
  overflow-wrap: break-word;
}
.giver-benefits-account *, .giver-benefits-account *::before, .giver-benefits-account *::after { box-sizing: border-box; }
.giver-benefits-account :is(#page-login, #page-benefits-signup, #page-benefits-verify) .container { width: 100%; max-width: none; padding: 0; margin: 0; }
.giver-benefits-account :is(#page-login, #page-benefits-signup, #page-benefits-verify) .page-content-wrapper { padding: 0; }
.giver-benefits-account :is(#page-login, #page-benefits-signup, #page-benefits-verify) :is(.page-header-wrapper, .page-breadcrumbs) { display: none; }
.giver-benefits-account .gba-header {
  position: absolute; z-index: 70; top: 14px; left: 50%; transform: translateX(-50%);
  width: min(1260px, calc(100% - 28px)); min-height: 66px;
  display: flex; align-items: center; gap: 24px; padding: 8px 24px;
  border: 1px solid rgb(25 29 57 / 12%); border-radius: 18px;
  background: var(--gba-paper); box-shadow: 0 10px 35px rgb(25 29 57 / 10%);
}
.giver-benefits-account .gba-logo { color: var(--gba-indigo); font-size: 25px; font-weight: 850; letter-spacing: -.075em; }
.giver-benefits-account .gba-header a { display: inline-flex; min-height: 44px; align-items: center; text-decoration: none; }
.giver-benefits-account .gba-products { display: flex; gap: 28px; margin-inline: auto; }
.giver-benefits-account .gba-products a { font-size: 13px; font-weight: 680; color: var(--gba-ink); }
.giver-benefits-account .gba-products a[aria-current] { color: var(--gba-indigo-dark); text-decoration: underline; text-underline-offset: 8px; text-decoration-thickness: 2px; }
.giver-benefits-account .gba-mobile-menu { display: none; }
.giver-benefits-account .gba-shell {
  display: grid; grid-template-columns: minmax(0, .92fr) minmax(520px, 1.08fr);
  max-width: 1440px; min-height: calc(100svh - 36px); margin-inline: auto;
  border: 1px solid #e9ecef; border-radius: 28px; overflow: clip;
  background: var(--gba-paper); box-shadow: 0 24px 70px rgb(25 29 57 / 9%);
}
.giver-benefits-account .gba-story { display: flex; flex-direction: column; justify-content: space-between; padding: 92px clamp(36px, 5vw, 76px) 36px; background: var(--gba-indigo); color: white; }
.giver-benefits-account .gba-brand { display: inline-flex; align-items: baseline; gap: .3em; width: fit-content; color: var(--gba-inverse); font-size: 30px; font-weight: 800; line-height: 1; letter-spacing: -.065em; text-decoration: none; }
.giver-benefits-account .gba-brand span { font-size: .6em; letter-spacing: -.025em; }
.giver-benefits-account .gba-story-copy { padding-block: 72px; }
.giver-benefits-account .gba-story-copy p:first-child { margin: 0 0 20px; font-size: 14px; font-weight: 700; }
.giver-benefits-account .gba-story-copy h2 { max-width: 100%; margin: 0; color: white; font-size: clamp(38px, 4vw, 64px); font-weight: 800; line-height: .98; letter-spacing: -.065em; }
.giver-benefits-account .gba-story-copy p:last-child { max-width: 34ch; margin: 28px 0 0; font-size: 19px; line-height: 1.55; }
.giver-benefits-account .gba-story-foot { margin: 0; font-size: 14px; }
.giver-benefits-account .gba-access { display: flex; flex-direction: column; align-items: center; justify-content: center; min-width: 0; padding: 120px clamp(36px, 7vw, 112px) 32px; }
.giver-benefits-account .gba-panel { width: 100%; max-width: 480px; margin-block: auto; }
.giver-benefits-account :is(#page-login, #page-benefits-signup, #page-benefits-verify) .gba-panel section { min-height: 0; padding: 0; margin: 0; }
.giver-benefits-account :is(#page-login, #page-benefits-signup, #page-benefits-verify) .page-card { width: 100%; max-width: none; min-height: 0; padding: 0; margin: 0; border: 0; border-radius: 0; box-shadow: none; background: transparent; }
.giver-benefits-account :is(#page-login, #page-benefits-signup, #page-benefits-verify) .page-card-head { padding: 0; margin: 0 0 28px; }
.giver-benefits-account :is(#page-login, #page-benefits-signup, #page-benefits-verify) .app-logo { display: none; }
.giver-benefits-account :is(#page-login, #page-benefits-signup, #page-benefits-verify) .page-card-head :is(h1,h4) { color: var(--gba-ink); font-size: clamp(32px, 3.1vw, 44px); font-weight: 650; line-height: 1.1; letter-spacing: -.045em; }
.giver-benefits-account :is(#page-login, #page-benefits-signup, #page-benefits-verify) .page-card-subtitle { color: #5a6470; font-size: 14px; line-height: 1.5; margin-top: 8px; }
.giver-benefits-account :is(#page-login, #page-benefits-signup, #page-benefits-verify) :is(label, .form-control, .es-button) { font-family: inherit; font-size: 14px; }
.giver-benefits-account :is(#page-login, #page-benefits-signup, #page-benefits-verify) label { color: var(--gba-ink); margin-bottom: 8px; }
.giver-benefits-account :is(#page-login, #page-benefits-signup, #page-benefits-verify) .page-card-body { gap: 22px; }
.giver-benefits-account :is(#page-login, #page-benefits-signup, #page-benefits-verify) :is(.email-field, .password-field) { width: 100%; }
.giver-benefits-account :is(#page-login, #page-benefits-signup, #page-benefits-verify) input.form-control { width: 100%; height: 44px; padding: 10px 12px; border: 1px solid #dee2e6; border-radius: 6px; background: var(--gba-paper); color: var(--gba-ink); box-shadow: none; }
.giver-benefits-account :is(#page-login, #page-benefits-signup, #page-benefits-verify) .password-field input { padding-right: 52px; }
.giver-benefits-account :is(#page-login, #page-benefits-signup, #page-benefits-verify) .toggle-password { width: 44px; height: 44px; padding: 13px; top: 0; right: 0; transform: none; cursor: pointer; color: #5a6470; }
.giver-benefits-account :is(#page-login, #page-benefits-signup, #page-benefits-verify) a { color: var(--gba-indigo-dark); }
.giver-benefits-account :is(#page-login, #page-benefits-signup, #page-benefits-verify) .gba-story .gba-brand { color: var(--gba-inverse); }
.giver-benefits-account :is(#page-login, #page-benefits-signup, #page-benefits-verify) .gba-mobile-brand { color: var(--gba-indigo); }
.giver-benefits-account :is(#page-login, #page-benefits-signup, #page-benefits-verify) .form-group p a { display: inline-flex; align-items: center; min-height: 44px; font-size: 14px; }
.giver-benefits-account :is(#page-login, #page-benefits-signup, #page-benefits-verify) .page-card-actions { margin-top: 0; }
.giver-benefits-account :is(#page-login, #page-benefits-signup, #page-benefits-verify) .es-button[data-variant="solid"] { min-height: 44px; border: 0; border-radius: 6px; background: var(--gba-indigo); color: white; font-weight: 650; transition: background-color 150ms ease; }
.giver-benefits-account :is(#page-login, #page-benefits-signup, #page-benefits-verify) .es-button[data-variant="solid"]:hover { background: var(--gba-indigo-dark); }
.giver-benefits-account :is(#page-login, #page-benefits-signup, #page-benefits-verify) .es-button:disabled { opacity: .6; cursor: not-allowed; }
.giver-benefits-account .gba-footer { display: flex; flex-wrap: wrap; gap: 24px; margin-top: 48px; }
.giver-benefits-account .gba-footer a { display: inline-flex; align-items: center; min-height: 44px; font-size: 13px; color: var(--gba-indigo-dark); }
.giver-benefits-account .gba-mobile-brand { display: none; }
.giver-benefits-account :is(a, button, input, summary, [role="button"]):focus-visible { outline: 3px solid var(--gba-indigo-dark); outline-offset: 3px; }
.giver-benefits-account .gba-story a:focus-visible { outline-color: white; }
@media (max-width: 980px) and (min-width: 761px) {
  .giver-benefits-account .gba-shell { grid-template-columns: minmax(260px, .8fr) minmax(380px, 1.2fr); }
  .giver-benefits-account :is(.gba-story, .gba-access) { padding-inline: 36px; }
}
@media (max-width: 760px) {
  body.giver-benefits-account { padding: 0; background: var(--gba-paper); }
  .giver-benefits-account .gba-shell { display: block; min-height: 100svh; border: 0; border-radius: 0; box-shadow: none; }
  .giver-benefits-account .gba-story { display: none; }
  .giver-benefits-account .gba-access { min-height: 100svh; padding: 112px 20px 24px; }
  .giver-benefits-account .gba-mobile-brand { display: inline-flex; margin: 0 auto 48px 0; color: var(--gba-indigo); font-size: 28px; }
  .giver-benefits-account .gba-panel { margin-block: 0 auto; }
  .giver-benefits-account .gba-header { top: 8px; width: calc(100% - 16px); min-height: 58px; padding: 6px 17px; border-radius: 15px; justify-content: space-between; }
  .giver-benefits-account .gba-products { display: none; }
  .giver-benefits-account .gba-mobile-menu { display: block; }
  .giver-benefits-account .gba-mobile-menu summary { display: flex; align-items: center; min-height: 44px; padding-inline: 8px; cursor: pointer; color: var(--gba-ink); font-size: 14px; }
  .giver-benefits-account .gba-mobile-menu nav { position: absolute; top: calc(100% + 8px); right: 0; display: grid; width: 240px; padding: 12px; border: 1px solid #dee2e6; border-radius: 15px; background: var(--gba-paper); box-shadow: 0 10px 35px rgb(25 29 57 / 10%); }
  .giver-benefits-account .gba-mobile-menu nav a { padding: 10px; color: var(--gba-ink); font-size: 14px; }
  .giver-benefits-account :is(#page-login, #page-benefits-signup, #page-benefits-verify) input.form-control { font-size: 16px; }
}
@media (prefers-reduced-motion: reduce) {
  .giver-benefits-account :is(#page-login, #page-benefits-signup, #page-benefits-verify) .es-button { transition: none; }
}

.giver-benefits-account .gba-auth-nav {display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;margin-bottom:30px;border:1px solid #e9ecef;border-radius:7px;background:#f8f9fa}
.giver-benefits-account .gba-auth-nav a {display:grid;place-items:center;min-height:44px;font-size:14px;font-weight:650;border-radius:4px;text-decoration:none}
.giver-benefits-account .gba-auth-nav a[aria-current] {background:var(--gba-paper);box-shadow:0 2px 8px rgb(18 38 63 / 8%)}
.giver-benefits-account .gba-password-field {position:relative}
.giver-benefits-account .gba-password-field input.form-control {padding-right:92px!important}
.giver-benefits-account .gba-show-password {position:absolute;right:4px;top:0;min-height:44px;min-width:80px;padding:8px;border:0;background:transparent;font:inherit;font-size:13px;color:var(--gba-indigo-dark);cursor:pointer}
.giver-benefits-account .gba-status {margin:0;color:#b14435;font-size:14px;line-height:1.5}
.giver-benefits-account .gba-status:empty {display:none}
.giver-benefits-account .gba-resend {min-height:44px;border:1px solid #dee2e6;border-radius:6px;background:transparent;color:var(--gba-indigo-dark);font:inherit;font-size:14px;cursor:pointer}
.giver-benefits-account .gba-registration .page-card-head {margin-bottom:0!important}
.giver-benefits-account .gba-registration .page-card-head h1 {margin:0}
.giver-benefits-account .gba-registration .page-card-subtitle {margin-bottom:0!important}
.giver-benefits-account .gba-registration .gba-auth-nav {margin-bottom:12px}
.giver-benefits-account .gba-registration .form-group {margin-bottom:0}
.giver-benefits-account .gba-registration label {display:block}
