fieldset{margin:0;padding:0;border:none;min-width:0}.contact-form-wrapper{position:relative}.contact-modal{display:flex;position:absolute;inset:0;z-index:10;border-radius:12px;background:#ffffff4d;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);align-items:center;justify-content:center}.contact-modal__content{display:flex;padding:2rem 2.5rem;border-radius:12px;text-align:center;background:var(--white);box-shadow:0 10px 30px #00000026;flex-direction:column;gap:.5rem}.contact-modal__logo{margin:0 auto;width:48px;height:48px;object-fit:contain}.contact-modal__title{font-size:1.25rem;font-weight:700;color:var(--black)}.contact-modal__text{font-size:1rem;opacity:.6}.form-group{display:flex;margin-bottom:1.25rem;flex-direction:column;gap:.35rem}.form-group label{font-size:1rem;font-weight:600;color:var(--black)}.form-group input,.form-group select,.form-group textarea{padding:.75rem;border:1px solid rgb(0 0 0 / 15%);border-radius:6px;font-family:inherit;font-size:1rem;background-color:var(--white)}.form-group input:focus-visible,.form-group select:focus-visible,.form-group textarea:focus-visible{outline:2px solid var(--blue);outline-offset:2px;border-color:var(--blue)}.form-group textarea{resize:vertical}.form-required{margin-left:2px;font-weight:700;color:var(--blue)}.form-hint{font-size:1rem;opacity:.5}.form-error{font-size:1rem;color:var(--error, #d32f2f)}.form-error--global{display:block;margin-bottom:.75rem}.form-legend{margin-bottom:.75rem;font-size:1rem;opacity:.5}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.btn-send{padding:.75rem;border:none;border-radius:6px;width:100%;font-size:1rem;font-weight:600;color:var(--white);background-color:#007fa659;transition:all .2s ease;cursor:not-allowed}.btn-send--ready{background-color:var(--blue);box-shadow:0 4px 16px #007fa659;cursor:pointer}.btn-send--ready:hover:not(:disabled){background-color:var(--blue-dark)}.btn-send:disabled{opacity:.7}.spinner{border:2px solid rgb(255 255 255 / 30%);border-radius:50%;width:18px;height:18px;border-top-color:var(--white);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:767px){.form-row{grid-template-columns:1fr}}.select-sujet{position:relative}.select-sujet__trigger{display:flex;width:100%;padding:.75rem;border:1px solid rgb(0 0 0 / 15%);border-radius:6px;font-family:inherit;font-size:1rem;text-align:left;color:var(--black);background-color:var(--white);cursor:pointer;transition:border-color .15s ease;align-items:center;justify-content:space-between;gap:.5rem}.select-sujet__trigger--placeholder{color:#0009}.select-sujet__trigger--error{border-color:#d32f2f}.select-sujet__trigger:focus-visible{border-color:var(--blue);outline:2px solid var(--blue);outline-offset:2px}.select-sujet--open .select-sujet__trigger{border-color:var(--blue);outline:2px solid var(--blue);outline-offset:2px}.select-sujet__chevron{color:#00000073;transition:transform .2s ease;flex-shrink:0}.select-sujet__chevron--rotated{transform:rotate(180deg)}.select-sujet__listbox{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:100;padding:.375rem 0;border:1px solid rgb(0 0 0 / 15%);border-radius:8px;max-height:320px;overflow-y:auto;background:var(--white);outline:none;box-shadow:0 8px 24px #0000001f}.select-sujet__group{margin:0;padding:0}.select-sujet__group-label{display:block;padding:.35rem .75rem .15rem;font-size:1rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--blue);cursor:default;-webkit-user-select:none;user-select:none}.select-sujet__option{padding:.55rem .75rem .55rem 1.25rem;font-size:1rem;color:var(--black);cursor:pointer;transition:background-color .15s ease;-webkit-user-select:none;user-select:none}.select-sujet__option--active{color:var(--white);background-color:var(--blue)}.select-sujet__option--disabled{opacity:.4;cursor:not-allowed}.select-sujet__option--selected{font-weight:600;color:var(--blue);background-color:#007fa61a}.select-sujet__option--selected.select-sujet__option--active{color:var(--white);background-color:var(--blue)}@media(max-width:767px){.select-sujet__listbox{max-height:260px}}
