:root {
  --request-ink:#17191f;
  --request-muted:#778192;
  --request-line:rgba(35,43,60,.13);
  --request-paper:#f4f2ed;
}

* { box-sizing:border-box; }
.request-page { min-height:100svh;background:var(--request-paper);color:var(--request-ink); }
.request-main { width:min(calc(100% - 36px),520px);margin:0 auto;padding:122px 0 88px; }
.request-intro { text-align:center; }
.request-intro h1 { max-width:100%;margin:0;font-size:clamp(36px,11vw,54px);font-weight:700;line-height:.95;letter-spacing:-.055em;overflow-wrap:anywhere; }
.request-intro p { max-width:450px;margin:15px auto 0;color:var(--request-muted);font-size:14px;line-height:1.5; }

.request-form { margin-top:43px;display:grid; }
.request-form__identity { display:grid; }
.request-form__identity[hidden] { display:grid!important; }
.request-form__account-note { min-height:30px;margin:-7px 0 20px;padding:0 2px;display:flex;align-items:center;gap:7px;color:#707887;font-size:11px;font-weight:700; }
.request-form__account-note[hidden] { display:none; }
.request-form__account-note svg { width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round; }
.request-form label { margin:0 0 8px;color:var(--request-ink);font-size:12px;font-weight:800; }
.request-form label small { margin-left:5px;color:#969eaa;font-size:10px;font-weight:600; }
.request-form input,
.request-form textarea {
  width:100%;
  margin:0 0 18px;
  border:1px solid var(--request-line);
  border-radius:7px;
  background:rgba(255,255,255,.76);
  color:var(--request-ink);
  font:500 14px/1.45 var(--sans);
  outline:none;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9);
  transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease;
}
.request-form input { min-height:52px;padding:0 15px; }
.request-form textarea { min-height:190px;padding:15px;resize:vertical; }
.request-form input::placeholder,
.request-form textarea::placeholder { color:#969eaa; }
.request-form input:focus,
.request-form textarea:focus { border-color:#6a7fab;background:rgba(255,255,255,.92);box-shadow:0 0 0 3px rgba(75,101,158,.12); }
.request-form__identity.is-account input { border-color:rgba(35,43,60,.09);background:#e8e7e2;color:#555a64;box-shadow:none;cursor:default;pointer-events:none; }
.request-form__identity.is-loading input { color:#8b9098; }
.request-form [aria-invalid="true"] { border-color:#b74c58; }

.request-form button {
  min-height:54px;
  margin-top:3px;
  border:0;
  border-radius:7px;
  background:var(--request-ink);
  color:#fff;
  font:800 13px/1 var(--sans);
  cursor:pointer;
}
.request-form button:focus-visible { outline:3px solid rgba(75,101,158,.25);outline-offset:3px; }
.request-form button:disabled { cursor:default;opacity:.62; }
.form-status { min-height:18px;margin:10px 0 0;color:#a03c48;font-size:11px;text-align:center; }
.form-status.is-success { color:#2f7650; }

@media(max-width:900px) {
  .request-form input,
  .request-form textarea { font-size:16px; }
}
@media(max-width:600px) {
  .request-main { padding:102px 0 64px; }
  .request-intro h1 { font-size:40px; }
  .request-intro p { display:none; }
  .request-form { margin-top:32px; }
  .request-form textarea { min-height:180px; }
}
@media(prefers-reduced-motion:reduce) {
  .request-form input,
  .request-form textarea { transition:none; }
}
