/* Request dialog — Figma 1173:798 and 1173:1094. Quiz styling is unaffected. */
.home-form-modal .request-form-header { display:flex; align-items:center; justify-content:space-between; gap:16px; }
.home-form-modal .request-form-header[hidden] { display:none; }
.home-form-modal .request-form-header .home-form-modal-close { position:relative; top:auto; right:auto; flex-shrink:0; }
.home-form-modal .request-form-fields { display:grid; gap:10px; }
.home-form-modal .request-form-actions { display:grid; gap:16px; }
.home-form-modal .request-form-scroll .home-form-modal-description { margin:0 0 30px; }
.home-form-modal .home-form-field { position:relative; display:block; background:#f3f3f3; border:1px solid transparent; border-radius:12px; }
.home-form-modal .home-form-field > span { position:absolute; top:50%; left:15px; transform:translateY(-50%); pointer-events:none; font:inherit; line-height:1.5; letter-spacing:normal; text-transform:none; color:#757575; transition:top 150ms,font-size 150ms; }
.home-form-modal .home-form-field input,
.home-form-modal .home-form-field textarea { display:block; height:64px; min-height:64px; padding:24px 15px 6px; border:0; border-radius:12px; background:transparent; color:#000; line-height:1.5; resize:none; }
.home-form-modal .home-form-field:focus-within,
.home-form-modal .home-form-field.has-value,
.home-form-modal .home-form-field:has(input:not(:placeholder-shown)),
.home-form-modal .home-form-field:has(textarea:not(:placeholder-shown)) { background:#fff; border-color:#f3f3f3; }
.home-form-modal .home-form-field:focus-within > span,
.home-form-modal .home-form-field.has-value > span,
.home-form-modal .home-form-field:has(input:not(:placeholder-shown)) > span,
.home-form-modal .home-form-field:has(textarea:not(:placeholder-shown)) > span { top:8px; transform:none; font-size:12px; color:#acacac; }
.home-form-modal .home-form-policy { align-items:start; grid-template-columns:24px minmax(0,1fr); gap:12px; }
.home-form-modal .home-form-policy input { width:24px; height:24px; border-radius:6px; background:#f3f3f3; }
.home-form-modal .home-form-policy input:checked { background:#1ab37d; }
.home-form-modal .home-form-error:empty { display:none; }
.home-form-modal .home-form-submit { border-radius:50px; }
.home-form-modal .home-form-submit:disabled { opacity:.65; cursor:wait; }
@media (max-width:720px) {
 .home-form-modal.request-form-ready { top:0; bottom:auto; height:var(--request-height,100dvh); padding:0; }
 .home-form-modal.request-form-ready .home-form-modal-panel { display:flex; flex-direction:column; height:100%; max-height:100%; padding:0; overflow:hidden; }
 .home-form-modal .request-form-header { flex:0 0 56px; padding:14px 12px; gap:12px; background:#fff; }
 .home-form-modal .home-form-modal-title { font-family:var(--font-display); font-size:24px; font-weight:500; line-height:.95; letter-spacing:-.48px; text-transform:uppercase; max-width:calc(100% - 40px); }
 .home-form-modal .home-form-modal-close { width:28px; height:28px; background:url('../icons/form-close.svg') center / 28px 28px no-repeat; }
 .home-form-modal .home-form-modal-close::before,
 .home-form-modal .home-form-modal-close::after { content:none; }
 .home-form-modal.request-form-ready .home-form-modal-content { display:flex; flex:1; min-height:0; }
 .home-form-modal.request-form-ready .home-form-modal-content[hidden] { display:none; }
 .home-form-modal.request-form-ready .home-form { display:flex; flex-direction:column; flex:1; min-height:0; gap:0; margin:0; }
 .home-form-modal .request-form-scroll { flex:1; min-height:0; overflow-y:auto; overscroll-behavior:contain; padding:10px 12px 20px; }
 .home-form-modal .home-form-modal-description { font-size:16px; line-height:1.5; letter-spacing:normal; }
 .home-form-modal .home-form-field { font-size:16px; }
 .home-form-modal .home-form-field input,
 .home-form-modal .home-form-field textarea { height:54px; min-height:54px; font-size:16px; line-height:24px; }
 .home-form-modal .home-form-field > span { font-size:16px; }
 .home-form-modal .home-form-field:focus-within > span,
 .home-form-modal .home-form-field.has-value > span,
 .home-form-modal .home-form-field:has(input:not(:placeholder-shown)) > span,
 .home-form-modal .home-form-field:has(textarea:not(:placeholder-shown)) > span { font-size:12px; top:8px; line-height:18px; }
 .home-form-modal .request-form-actions { flex-shrink:0; padding:12px 12px max(40px,env(safe-area-inset-bottom)); background:#fff; }
 .home-form-modal .home-form-policy { font-size:14px; line-height:1.5; letter-spacing:normal; }
 .home-form-modal .home-form-submit { position:relative; height:56px; min-height:56px; padding:0 60px 0 24px; justify-content:flex-start; background:#1ab37d; color:#fff; font-size:15px; font-weight:500; line-height:1.2; letter-spacing:-.45px; text-transform:uppercase; }
 .home-form-modal button[type="submit"]::after { content:""; position:absolute; right:11px; top:11px; width:34px; height:34px; background:url('../icons/form-submit.svg') center / contain no-repeat; pointer-events:none; }
 .home-form-modal .home-form-success { padding:66px 12px 24px; overflow:auto; }
}
@media (prefers-reduced-motion:reduce) { .home-form-modal .home-form-field > span { transition:none; } }
