/* Explicit colors keep every form state readable independently of page themes. */
#contact:has(.intake-v1){min-width:0;max-width:100%;color:#f5f5f7;background:#111114}
#request-heading{font-size:clamp(1.4rem,4vw,1.8rem);line-height:1.35;overflow-wrap:anywhere}
#bookingForm.intake-v1 .request-fields{display:grid;grid-template-columns:minmax(0,1fr);gap:1rem}
#bookingForm.intake-v1 .request-fields>div{min-width:0}
#bookingForm.intake-v1 label,#bookingForm.intake-v1 legend{display:block;color:#f5f5f7;font-size:1rem;line-height:1.5}
#bookingForm.intake-v1 label span,#bookingForm.intake-v1 legend span{color:#bfc3ca;font-weight:400}
#bookingForm.intake-v1 input:not([type=radio]){display:block;box-sizing:border-box;width:100%;min-width:0;max-width:100%;min-height:48px;margin-top:.35rem;padding:.75rem;border:1px solid #858994;border-radius:8px;background:#19191f;color:#f5f5f7;font:inherit;font-size:16px;color-scheme:dark}
#bookingForm.intake-v1 input::placeholder{color:#bfc3ca;opacity:1}
#bookingForm.intake-v1 input[aria-invalid=true]{border:2px solid #ffb38a}
#bookingForm.intake-v1 .request-error{color:#ffb38a;margin:.4rem 0 0;font-size:.95rem}
#bookingForm.intake-v1 details{margin:1rem 0;padding:0;border:0}
#bookingForm.intake-v1 summary{display:list-item;min-height:48px;padding:.75rem 0;box-sizing:border-box;color:#f5f5f7;cursor:pointer}
#bookingForm.intake-v1 .request-callback{display:grid;gap:.25rem;border:0;padding:0;margin:0;min-width:0}
#bookingForm.intake-v1 .request-callback label{display:flex;align-items:center;gap:.7rem;min-height:48px;cursor:pointer}
#bookingForm.intake-v1 input[type=radio]{width:22px;height:22px;flex:none;margin:0;accent-color:#3abeff}
#bookingForm.intake-v1 :is(input,summary,button,a):focus-visible{outline:3px solid #3abeff;outline-offset:3px}
#bookingForm.intake-v1 #request-submit{width:100%;min-height:52px;white-space:normal;background:#ff8a50;color:#111114;border-color:#ff8a50}
#bookingForm.intake-v1 #request-submit:disabled{opacity:1;background:#bfc3ca;border-color:#bfc3ca;color:#111114;cursor:wait}
#contact .request-hint{font-size:.875rem;line-height:1.5;color:#bfc3ca;margin:.5rem 0 1rem}
#bookingForm.intake-v1 .request-phone-footer{margin:1rem 0 0;color:#f5f5f7}
#bookingForm.intake-v1 a{color:#8bd8ff;text-decoration:underline;text-underline-offset:3px}
#bookingForm.intake-v1 .request-status{color:#f5f5f7;overflow-wrap:anywhere}
#contact [hidden]{display:none!important}
