.contact-interests{min-width:0;margin:0 0 1.5rem;padding:0;border:0}
.contact-interests>legend{padding:0;font-size:1.15rem;font-weight:700}
.contact-interests .interest-hint{margin:.35rem 0 1rem;font-size:.9rem}
.interest-products{display:grid;gap:1rem}
.interest-product{min-width:0;margin:0;padding:0;border:0}
.interest-product legend{padding:0;margin-bottom:.45rem;font-size:1rem;font-weight:700}
.interest-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;min-height:64px;border:1px solid #b8bfd1;border-radius:12px;background:#fff}
#contact-form .interest-options .interest-choice{padding:.6rem 1rem}
#contact-form .contact-interests .interest-choice{display:flex;align-items:center;gap:.65rem;min-height:44px;margin:0;font-size:1rem;font-weight:400;text-transform:none;letter-spacing:normal;cursor:pointer}
#contact-form input[type=checkbox]{appearance:auto;flex:0 0 21px;width:21px;height:21px;min-width:21px;min-height:21px;max-width:21px;max-height:21px;margin:0;padding:0;border:1px solid #777;accent-color:#5665a8;cursor:pointer}
.interest-topics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1rem}
#contact-form .contact-interests .interest-topic{display:grid;grid-template-rows:1fr 64px;align-items:stretch;gap:.45rem;min-width:0}
.interest-topic-title{align-self:end;font-weight:700;overflow-wrap:anywhere;hyphens:none}
.interest-topic-box{display:flex;align-items:center;padding:.6rem 1rem;border:1px solid #b8bfd1;border-radius:12px;background:#fff}
.interest-topic:focus-within .interest-topic-box,.interest-options:focus-within{border-color:#5665a8}
#contact-form .contact-interests :is(input,textarea):focus-visible{outline:3px solid #263c8a;outline-offset:3px}
.interest-other{margin-top:.8rem}
#contact-form .interest-other label{font-size:.9rem;text-transform:none;letter-spacing:normal;margin:0}
#contact-form .interest-other textarea{resize:vertical;min-height:100px;max-width:100%;overflow:auto;line-height:1.5;width:100%;margin-top:.4rem;padding:.8rem;border:1px solid #b8bfd1;border-radius:10px;background:#fff;font-size:1rem}
.interest-other[hidden]{display:none}
#contact-form label.has-field-error{color:#a51d2d}
#contact-form :is(input,textarea,select)[aria-invalid=true]{border:2px solid #b42335;outline-color:#b42335;background-color:#fff6f6}
#contact-form input[type=checkbox][aria-invalid=true]{outline:2px solid #b42335;outline-offset:2px}
#contact-form .field-error{display:block;margin-top:.4rem;font-size:.85rem;font-weight:400;line-height:1.4;letter-spacing:normal;text-transform:none;color:#a51d2d}
#contact-form .field-error[hidden]{display:none}
#contact-form .consent.has-field-error{flex-wrap:wrap;border:2px solid #b42335}
#contact-form .consent.has-field-error>span:not(.field-error){flex:1;min-width:0}
#contact-form .consent .field-error{flex-basis:100%}
.contact.section:has(.contact-form-bottom){grid-template-columns:minmax(0,1fr)}
.contact #contact-form:has(.contact-form-bottom){display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:1.5rem 4vw}
.contact #contact-form>.contact-copy{grid-column:1;grid-row:1}
#contact-form .copy-request{display:flex;align-items:flex-start;gap:.8rem;margin:0 0 1.2rem;padding:1.25rem;background:#fff;border:1px solid #b8bfd1;border-radius:12px;font-size:1rem;font-weight:400;text-transform:none;letter-spacing:normal;line-height:1.5;cursor:pointer}
#contact-form :is(.copy-request,.consent) input[type=checkbox]{margin:.15rem 0 0}
#contact-form input[type=checkbox]:focus-visible{outline:3px solid #263c8a;outline-offset:3px}
.contact-form-top{grid-column:2;grid-row:1;min-width:0}
.contact-form-bottom{grid-column:1 / -1;min-width:0}
.contact-form-bottom .interest-other{margin-top:0;margin-bottom:1.2rem}
#contact-form .contact-form-bottom textarea{width:100%;max-width:100%;resize:vertical}
#contact-form .contact-form-bottom textarea:focus-visible{outline:3px solid #263c8a;outline-offset:3px}
@media(max-width:900px){.contact #contact-form:has(.contact-form-bottom){grid-template-columns:minmax(0,1fr)}.contact #contact-form>.contact-copy,.contact-form-top,.contact-form-bottom{grid-column:1;grid-row:auto}}
@media(max-width:400px){.interest-options,.interest-topics{gap:.65rem}#contact-form .interest-options .interest-choice,.interest-topic-box{padding:.6rem .7rem}#contact-form .contact-interests .interest-choice{font-size:.9rem;gap:.45rem}}
