.audit-contact-page { font-family: Poppins, Arial, sans-serif; }
.audit-contact-page input, .audit-contact-page textarea, .audit-contact-page select, .audit-contact-page button { font-family: inherit; }
.audit-contact-page #formulaire-contact, .audit-contact-page #formulaire-contact input { scroll-margin-top: calc(var(--header-h, 90px) + 24px); }
.audit-contact-page .audit-contact-direct { display: flex; flex-wrap: wrap; gap: 8px 24px; margin: 20px 0; font-size: 16px; font-style: normal; font-weight: 600; }
.audit-contact-page .audit-contact-direct a { color: #1a1a1a; text-decoration: underline; text-decoration-color: #00a159; text-underline-offset: 5px; overflow-wrap: anywhere; }
.audit-contact-page .contact-form { min-width: 0; border-radius: 8px; }
.audit-contact-page .audit-contact-required-note, .audit-contact-page .audit-contact-draft-note, .audit-contact-page .audit-contact-proof-note { font-size: 13px; line-height: 1.65; margin: 0; color: #1a1a1a; }
.audit-contact-page .audit-contact-required { display: inline; font-size: 12px; font-weight: 600; color: var(--batili-accent,#007a44); }
.audit-contact-page .audit-contact-optional { font-size: 12px; font-weight: 400; color: #52614c; }
.audit-contact-page .audit-contact-lots { margin:0; padding:0; border:0; min-width:0; }
.audit-contact-page .audit-contact-lots legend { font-size:14px; font-weight:600; padding:0 0 12px; }
.audit-contact-page .audit-contact-lot-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.audit-contact-page .audit-contact-lot-grid label { display:flex; align-items:center; gap:10px; min-height:48px; padding:8px 10px; border:1px solid #dce3dc; border-radius:4px; font-size:13px; font-weight:400; line-height:1.45; cursor:pointer; }
.audit-contact-page .audit-contact-lot-grid label span { overflow-wrap:normal; word-break:normal; min-width:0; }
.audit-contact-page .audit-contact-lot-grid label:has(input:checked) { border-color:var(--batili-green,#00a159); background:#e8f7ef; }
.audit-contact-page .audit-contact-lot-grid input { width:18px; height:18px; flex:0 0 18px; margin:0; accent-color:var(--batili-green,#00a159); }
.audit-contact-page .audit-contact-lots select[hidden] { display:none!important; }
.audit-contact-page .audit-contact-qualification { min-width: 0; border-block: 1px solid #43a49d; padding: 16px 0; }
.audit-contact-page .audit-contact-qualification summary { cursor: pointer; font-size: 14px; font-weight: 600; color: #1a1a1a; }
.audit-contact-page .audit-contact-qualification-fields { display: grid; gap: 16px; padding-top: 20px; }
.audit-contact-page .audit-contact-attestations { display: flex; align-items: start; gap: 12px; font-weight: 400; }
.audit-contact-page .audit-contact-attestations input { width: 20px; height: 20px; flex: 0 0 20px; margin-top: 3px; accent-color: #00a159; }
.audit-contact-page [data-contact-hours][hidden] { display: none; }
.audit-contact-page .audit-contact-proof-link { display: inline-block; margin-block: 16px 8px; }
.audit-contact-page .field-row, .audit-contact-page label, .audit-contact-page input, .audit-contact-page select, .audit-contact-page textarea { min-width: 0; max-width: 100%; }
.audit-contact-page label, .audit-contact-page .form-note, .audit-contact-page .form-status, .audit-contact-page .legal-content { overflow-wrap: anywhere; }
.audit-contact-page .audit-contact-qualification *, .audit-contact-page .audit-contact-direct { letter-spacing: 0; }
.audit-contact-page .audit-contact-qualification summary:focus-visible, .audit-contact-page #formulaire-contact :focus-visible, .audit-contact-page .audit-contact-direct a:focus-visible { outline: 2px solid #00a159; outline-offset: 4px; }
@media (max-width: 600px) {
  .audit-contact-page .audit-contact-direct { flex-direction: column; align-items: flex-start; gap: 10px; font-size: 15px; }
  .audit-contact-page .contact-form { padding: 24px 18px; }
  .audit-contact-page .form-submit .button { white-space: normal; text-align: left; min-height: 48px; }
  .audit-contact-page .audit-contact-qualification-fields .field-row { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 360px) {
  .audit-contact-page .audit-contact-lot-grid { grid-template-columns:minmax(0,1fr); }
}
