/* Native Forminator fields, styled to match the original Astro contact card. */
.ed-contact form.forminator-custom-form{margin:0;padding:0;border:0;background:none;font:inherit;color:var(--color-primary)}
.ed-contact .forminator-row{display:flex;flex-wrap:wrap;gap:20px;margin:0 0 20px;padding:0}
.ed-contact .forminator-col{flex:1 1 100%;min-width:0;margin:0;padding:0}
.ed-contact .forminator-field{display:flex;flex-direction:column;gap:8px;min-width:0}
.ed-contact .forminator-label{display:block;font-size:14px;font-weight:700;line-height:20px;color:var(--color-primary);margin:0}
.ed-contact .forminator-required{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.ed-contact input.forminator-input,.ed-contact textarea.forminator-textarea{display:block;width:100%;height:48px;min-width:0;margin:0;padding:4px 16px;border:1px solid color-mix(in srgb,var(--color-primary) 20%,transparent);border-radius:6px;background:color-mix(in srgb,var(--color-secondary) 45%,transparent);color:var(--color-primary);font:inherit;font-size:16px;font-weight:600;line-height:24px;box-shadow:inset 0 1px 2px rgba(7,47,95,.04);outline:none;transition:border-color .15s,box-shadow .15s}
.ed-contact textarea.forminator-textarea{height:182px;min-height:144px;resize:vertical;padding:12px 16px;font-weight:400}
.ed-contact input.forminator-input:focus,.ed-contact textarea.forminator-textarea:focus{border-color:#1185d1;box-shadow:0 0 0 3px #1185d133}
.ed-contact input::placeholder,.ed-contact textarea::placeholder{color:var(--color-muted-foreground);opacity:1;font-weight:400}
.ed-contact .forminator-description{display:block;color:var(--color-muted-foreground);font-size:14px;line-height:24px;font-weight:400;margin:0}
.ed-contact .forminator-description p{margin:0}
.ed-contact .forminator-description .forminator-counter{display:none}
.ed-contact .forminator-multi-upload{position:relative}
.ed-contact input[type=file]{position:absolute;opacity:0;width:1px;height:1px;overflow:hidden}
.ed-contact .ed-upload-choice{display:flex;align-items:center;justify-content:center;gap:8px;border:1px dashed color-mix(in srgb,var(--color-primary) 25%,transparent);border-radius:6px;background:color-mix(in srgb,var(--color-secondary) 45%,transparent);padding:16px;font-size:14px;line-height:20px;font-weight:700;color:var(--color-primary);cursor:pointer}
.ed-contact input[type=file]:focus-visible+.ed-upload-choice{outline:3px solid #1185d155;outline-offset:2px}
.ed-contact .forminator-uploaded-files{border-radius:6px;background:color-mix(in srgb,var(--color-secondary) 45%,transparent);padding:8px 12px;margin:0;list-style:none;min-height:40px;font-size:14px;line-height:24px;color:var(--color-muted-foreground)}
.ed-contact .forminator-uploaded-files:empty::before{content:'Aucune photo sélectionnée'}
.ed-contact[data-language=en] .forminator-uploaded-files:empty::before{content:'No photos selected'}
.ed-contact .forminator-uploaded-files li{display:flex;gap:8px;align-items:center;overflow-wrap:anywhere}
.ed-contact .forminator-uploaded-files .forminator-uploaded-file--title{flex:1;min-width:0}
.ed-contact .forminator-uploaded-files .forminator-uploaded-file--size{font-size:12px}
.ed-contact .forminator-uploaded-files button{padding:4px 8px;cursor:pointer;border:1px solid #07305f33;border-radius:4px;background:white}
.ed-contact .forminator-uploaded-files .forminator-icon-close::before{content:'×'}
.ed-contact .forminator-button-submit{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;height:52px;padding:8px 16px;border:0;border-radius:6px;background:var(--color-accent);color:white;font:inherit;font-size:16px;font-weight:800;line-height:24px;box-shadow:0 12px 30px rgba(38,145,77,.18);cursor:pointer}
.ed-contact .forminator-button-submit:hover{background:color-mix(in srgb,var(--color-accent) 90%,black)}
.ed-contact .forminator-button-submit:focus-visible{outline:3px solid #1185d155;outline-offset:3px}
.ed-contact .forminator-button-submit:disabled{opacity:.6;cursor:wait}
.ed-contact .forminator-button-submit svg{width:16px;height:16px;flex-shrink:0}
.ed-contact .forminator-row-last{margin-bottom:20px}
.ed-contact .ed-form-status{min-height:20px;margin:0 0 20px;color:var(--color-muted-foreground);font-size:14px;line-height:20px;text-align:center;font-weight:500}
.ed-contact .forminator-error-message,.ed-contact .forminator-response-message.forminator-error{color:#b42318;font-size:14px;line-height:20px}
.ed-contact .forminator-response-message{padding:0;margin:0 0 20px;font-size:14px;line-height:24px}
.ed-contact .forminator-response-message:not([style]):empty,.ed-contact .forminator-response-message:empty{display:none}
.ed-contact .forminator-response-message.forminator-success{color:#217747}
.ed-contact .forminator-screen-reader-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.ed-contact .forminator-hidden{display:none!important}
@media(min-width:768px){.ed-contact .forminator-col-6{flex:1 1 calc(50% - 10px)}}
/* Override Forminator's container-width grid with the site's 768px breakpoint. */
.ed-contact .forminator-ui .forminator-row{margin:0 0 20px!important;width:auto!important;gap:20px!important}
.ed-contact .forminator-ui .forminator-col{margin:0!important;padding:0!important;max-width:none!important;width:auto!important;flex:1 1 100%!important}
.ed-contact .forminator-field{gap:12px}
.ed-contact .forminator-label{font-weight:800;line-height:1.375}
.ed-contact input.forminator-input,.ed-contact textarea.forminator-textarea{border-color:var(--color-border);background:color-mix(in oklab,var(--color-secondary) 45%,transparent);color:var(--color-foreground);font-size:16px;font-weight:600;line-height:20px}
.ed-contact textarea.forminator-textarea{height:144px}
.ed-contact .forminator-field-textarea .forminator-description:has([data-limit]){display:none}
.ed-contact .forminator-description{line-height:1.625}
.ed-contact .ed-upload-choice{gap:12px;font-weight:800;border-color:var(--color-border);background:color-mix(in oklab,var(--color-secondary) 45%,transparent)}
.ed-contact .forminator-uploaded-files{background:color-mix(in oklab,var(--color-secondary) 45%,transparent)}
.ed-contact .forminator-button-submit{margin-top:4px;color:var(--color-primary)}
@media(min-width:768px){.ed-contact .forminator-ui .forminator-col-6{flex:1 1 calc(50% - 10px)!important}.ed-contact input.forminator-input,.ed-contact textarea.forminator-textarea{font-size:14px}}

.ed-contact .forminator-field-upload .forminator-field{gap:12px}
.ed-contact .forminator-field-upload .forminator-description{margin-top:-4px;margin-bottom:-2px}
.ed-contact input::placeholder,.ed-contact textarea::placeholder{font-weight:600}
.ed-contact .forminator-button-submit{box-shadow:0 14px 32px rgba(120,184,51,.28)}
.ed-contact .forminator-button-submit:hover{background:#5fae2e}
