.ed-auth { background:var(--sand) }

.auth-shell { min-height:64vh; display:flex; flex-direction:column }

.auth-split {
  flex:1;
  display:grid; grid-template-columns:minmax(0,1fr) 420px;
  align-items:stretch;
}

.auth-panel {
  padding:56px var(--gutter) 72px;
  display:flex; align-items:center; justify-content:center;
}
.auth-panel__inner { width:100%; max-width:520px }

.auth-eyebrow {
  display:flex; align-items:center; gap:8px;
  font:700 10px/1 var(--f-body);
  letter-spacing:.14em; text-transform:uppercase;
  color:var(--ink-hard);
}
.auth-title {
  font:400 clamp(38px, 5.2vw, 56px)/1.04 var(--f-display);
  letter-spacing:-.015em; color:var(--ink-hard);
  margin-top:18px; text-wrap:balance;
}
.auth-lede {
  font:400 17px/1.5 var(--f-display); color:var(--body);
  margin-top:14px;
}

.auth-form { margin-top:40px }
.auth-form__label {
  display:block;
  font:700 10px/1 var(--f-body);
  letter-spacing:.14em; text-transform:uppercase;
  color:var(--text-faint);
}

.auth-form__input {
  display:block; width:100%;
  margin-top:12px; padding:8px 0 12px;
  border:0; border-bottom:1px solid var(--ink-hard);
  background:none; color:var(--ink-hard);
  font:400 17px/1.3 var(--f-display);
  border-radius:0;              
}
.auth-form__input::placeholder { color:var(--text-faint) }
.auth-form__input:focus-visible { outline:none; border-bottom-width:2px; padding-bottom:11px }

.auth-form__submit {
  display:block; width:100%; margin-top:26px;
  border:0; border-radius:0; cursor:pointer;
  background:var(--mango); color:var(--on-mango);
  font:700 11.5px/1 var(--f-body);
  letter-spacing:.14em; text-transform:uppercase;
  padding:17px 20px;
}
.auth-form__submit:hover { background:var(--mango-hover) }
.auth-form__submit[disabled] { background:var(--mango-disabled); cursor:default }

.auth-note {
  font:400 13.5px/1.55 var(--f-body); color:var(--text-faint);
  margin-top:14px;
}
.auth-note a { color:var(--accent-text); text-decoration:underline; text-underline-offset:2px }
.auth-note a:hover { color:var(--hover) }
.auth-note strong { color:var(--ink-hard); font-weight:700 }

.auth-aside {
  background:var(--panel);
  padding:56px 44px 72px;
  border-left:1px solid var(--border);
}
.auth-aside__label {
  font:700 10px/1 var(--f-body);
  letter-spacing:.14em; text-transform:uppercase;
  color:var(--text-faint);
}
.auth-benefits { margin-top:22px; border-top:1px solid var(--border-alt) }
.auth-benefits__item {
  display:block; padding:18px 0;
  border-bottom:1px solid var(--border-alt);
  font:400 20px/1.25 var(--f-display); color:var(--ink-hard);
}

.auth-icon {
  display:flex; align-items:center; justify-content:center;
  width:52px; height:52px; margin-bottom:22px;
  border:1px solid var(--ink-hard); color:var(--ink-hard);
}
.auth-icon svg { width:24px; height:24px }
.auth-resend { margin-top:34px }
.auth-resend__btn {
  border:0; border-radius:0; cursor:pointer;
  background:var(--mango); color:var(--on-mango);
  font:700 11.5px/1 var(--f-body);
  letter-spacing:.14em; text-transform:uppercase;
  padding:16px 30px;
}
.auth-resend__btn:hover { background:var(--mango-hover) }
.auth-resend__btn[disabled] { background:var(--mango-disabled); cursor:default }
.auth-resend__eta {
  display:none;
  font:400 13px/1.5 var(--f-body); color:var(--text-faint);
  margin-top:12px;
}

@media (max-width:900px) {
  
  .auth-split { grid-template-columns:minmax(0,1fr) }
  .auth-aside { border-left:0; border-top:1px solid var(--border) }
  .auth-panel { padding:40px var(--gutter) 48px }
  .auth-aside { padding:36px var(--gutter) 52px }
  .auth-panel__inner { max-width:none }
}

@media (max-width:560px) {
  .auth-title { margin-top:14px }
  .auth-form { margin-top:30px }
  
  .auth-form__input { font-size:16px }
  .auth-resend__btn { width:100% }
}
