/* Native, accessible choices with a comfortable whole-label tap target. */
/* Keep the off-screen trap inside the form, not the fixed reader shell. */
#brief-form{position:relative;}
#brief-form .contact-trap{top:0;left:0;}
#brief-form .field-optional{font-weight:400;opacity:.8;}
#brief-form .contact-choice-group{min-width:0;border:0;padding:0;margin:0 0 26px;}
#brief-form .contact-choice-group legend{padding:0;margin:0 0 12px;font-size:12px;font-weight:600;}
#page-scroll #brief-form .contact-field-hint{font-size:12px;line-height:1.55;margin:0 0 15px;}
#page-scroll #brief-form #contact-project-hint{margin-top:-10px;}
.contact-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
.contact-services{grid-template-columns:repeat(3,minmax(0,1fr));}
#brief-form .contact-choice{display:flex;align-items:center;gap:10px;min-width:0;min-height:48px;margin:0;padding:12px 14px;border:1px solid color-mix(in srgb,var(--ink),transparent 65%);border-radius:10px;font-size:13px;font-weight:400;line-height:1.4;cursor:pointer;background:#fff1;}
#brief-form .contact-choice input{appearance:auto;-webkit-appearance:auto;flex:none;width:17px;height:17px;min-width:17px;margin:0;padding:0;border:0;border-radius:0;box-shadow:none;accent-color:var(--ink);cursor:pointer;}
#brief-form .contact-choice:has(input:checked){background:#ffffff35;border-color:color-mix(in srgb,var(--ink),transparent 22%);}
#brief-form .contact-choice:hover{background:#ffffff28;}
#brief-form .contact-choice:focus-within{outline:2px solid var(--ink);outline-offset:2px;}
#brief-form .contact-choice input:focus-visible{outline:0;}
#brief-form #brief-result{font-size:15px;line-height:1.65;border:1px solid color-mix(in srgb,var(--ink),transparent 55%);border-radius:12px;padding:18px;margin-top:24px;background:#fff2;}
#brief-form #brief-result[data-error=true]{border-style:dashed;}
@media(max-width:620px){.contact-services{grid-template-columns:repeat(2,minmax(0,1fr));}#brief-form .contact-choice{padding:11px 10px;gap:8px;font-size:12px;}#brief-form .contact-choice-group{margin-bottom:24px;}}
@media(max-width:360px){#brief-form .contact-choice{padding:10px 8px;gap:7px;}#brief-form .contact-choice input{width:16px;height:16px;min-width:16px;}}
