.request-shell { grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 36px 64px; width: min(1240px, 100%); }
.request-story { position: sticky; top: 90px; }
.request-story h2 { font-size: clamp(40px, 4.3vw, 59px); }
.request-activities { display: grid; margin-top: 42px; }
.request-activities span { display: flex; align-items: baseline; gap: 20px; padding: 19px 0; border-top: 1px solid var(--line); color: #8b8b8b; font-size: 11px; }
.request-activities b { color: var(--ink); font-size: 16px; font-weight: 500; letter-spacing: -.025em; }
.request-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.request-field span { display: flex; flex-wrap: wrap; gap: 5px; align-items: baseline; }
.request-field b { color: var(--red); }
.request-field small { color: var(--muted); font-size: 10px; font-weight: 400; }
.request-field input, .request-field select, .request-field textarea { width: 100%; min-width: 0; min-height: 50px; padding: 12px; border: 1px solid #dedede; border-radius: 11px; outline: none; background: white; color: var(--ink); font: 400 14px var(--body); }
.request-field textarea { resize: vertical; line-height: 1.5; }
.request-field select:focus, .request-field textarea:focus { border-color: var(--red); box-shadow: 0 0 0 3px #f33b0812; }
.request-wide { grid-column: 1 / -1; }
.service-help { margin: -8px 0 4px; color: var(--muted); font-size: 12px; line-height: 1.6; }
.request-card label.request-consent { display: flex; align-items: flex-start; gap: 11px; margin-top: 8px; color: var(--muted); font-size: 12px; font-weight: 400; line-height: 1.6; }
.request-card .request-consent input { width: 17px; height: 17px; min-height: 0; flex: 0 0 17px; margin: 2px 0 0; accent-color: var(--red); }
.request-trap { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0,0,0,0) !important; white-space: nowrap !important; border: 0 !important; }
.request-success { padding: 24px 0; text-align: center; }
.request-success-mark { display: grid; width: 52px; height: 52px; place-items: center; margin: 0 auto 22px; border-radius: 50%; color: white; background: var(--red); font-size: 26px; }
.request-success h2 { margin: 0; font-size: 32px; letter-spacing: -.05em; }
.request-success p { color: var(--muted); font-size: 15px; line-height: 1.6; }
.request-success a { display: inline-block; margin-top: 18px; padding: 15px 20px; border-radius: 16px; color: white; background: var(--ink); font-size: 14px; }
.request-card:has(.request-success:not([hidden])) form, .request-card:has(.request-success:not([hidden])) > .auth-kicker, .request-card:has(.request-success:not([hidden])) > h1, .request-card:has(.request-success:not([hidden])) > .auth-intro { display: none; }
@media (max-width: 1000px) and (min-width: 701px) { .request-shell { gap: 28px; grid-template-columns: minmax(0, .7fr) minmax(0, 1fr); } .request-grid { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 700px) { .request-shell { grid-template-columns: minmax(0, 1fr); gap: 28px; } .request-story { position: static; } .request-activities { display: none; } .request-story h2 { font-size: 46px; } .request-grid { grid-template-columns: minmax(0, 1fr); gap: 16px; } }
@media (max-width: 360px) { .request-story h2 { font-size: 40px; } }
