.elementor-399 .elementor-element.elementor-element-f8d922c{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:10px 10px;--row-gap:10px;--column-gap:10px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-399 .elementor-element.elementor-element-56b3399{text-align:center;}.elementor-399 .elementor-element.elementor-element-56b3399 .elementor-heading-title{font-family:"Unbounded", Sans-serif;font-size:36px;font-weight:700;text-transform:uppercase;letter-spacing:1.5px;color:#0F70B7;}.elementor-399 .elementor-element.elementor-element-4c69e62{text-align:center;}.elementor-399 .elementor-element.elementor-element-4c69e62 .elementor-heading-title{font-family:"Unbounded", Sans-serif;font-size:19px;font-weight:600;color:#E9A56D;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-399 .elementor-element.elementor-element-24fd66e{text-align:justify;font-family:"Roboto", Sans-serif;font-weight:400;}.elementor-399 .elementor-element.elementor-element-24fd66e p{margin-block-end:0px;}.elementor-widget-form .elementor-field-group > label, .elementor-widget-form .elementor-field-subgroup label{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group > label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-type-html{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-group .elementor-field{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form .e-form__buttons__wrapper__button-next{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-button[type="submit"]{background-color:var( --e-global-color-accent );}.elementor-widget-form .e-form__buttons__wrapper__button-previous{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-message{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .e-form__indicators__indicator, .elementor-widget-form .e-form__indicators__indicator__label{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form{--e-form-steps-indicator-inactive-primary-color:var( --e-global-color-text );--e-form-steps-indicator-active-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-completed-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-background-color:var( --e-global-color-text );--e-form-steps-indicator-progress-meter-color:var( --e-global-color-text );}.elementor-widget-form .e-form__indicators__indicator__progress__meter{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-399 .elementor-element.elementor-element-3e2a395{width:var( --container-widget-width, 70% );max-width:70%;margin:20px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:20px 20px 20px 20px;--container-widget-width:70%;--container-widget-flex-grow:0;border-style:solid;border-width:1px 1px 1px 1px;border-color:#EE7108;border-radius:20px 20px 20px 20px;box-shadow:0px 0px 10px 0px rgba(237.99999999999997, 112.99999999999999, 7.9999999999999964, 0.47);--e-form-steps-indicators-spacing:20px;--e-form-steps-indicator-padding:30px;--e-form-steps-indicator-inactive-secondary-color:#ffffff;--e-form-steps-indicator-active-secondary-color:#ffffff;--e-form-steps-indicator-completed-secondary-color:#ffffff;--e-form-steps-divider-width:1px;--e-form-steps-divider-gap:10px;}.elementor-399 .elementor-element.elementor-element-3e2a395 .elementor-field-group{padding-right:calc( 10px/2 );padding-left:calc( 10px/2 );margin-bottom:10px;}.elementor-399 .elementor-element.elementor-element-3e2a395 .elementor-form-fields-wrapper{margin-left:calc( -10px/2 );margin-right:calc( -10px/2 );margin-bottom:-10px;}.elementor-399 .elementor-element.elementor-element-3e2a395 .elementor-field-group.recaptcha_v3-bottomleft, .elementor-399 .elementor-element.elementor-element-3e2a395 .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-399 .elementor-element.elementor-element-3e2a395 .elementor-labels-inline .elementor-field-group > label{padding-left:0px;}body:not(.rtl) .elementor-399 .elementor-element.elementor-element-3e2a395 .elementor-labels-inline .elementor-field-group > label{padding-right:0px;}body .elementor-399 .elementor-element.elementor-element-3e2a395 .elementor-labels-above .elementor-field-group > label{padding-bottom:0px;}.elementor-399 .elementor-element.elementor-element-3e2a395 .elementor-field-group > label, .elementor-399 .elementor-element.elementor-element-3e2a395 .elementor-field-subgroup label{color:#2C2C2C;}.elementor-399 .elementor-element.elementor-element-3e2a395 .elementor-field-group > label{font-family:"Unbounded", Sans-serif;font-weight:400;}.elementor-399 .elementor-element.elementor-element-3e2a395 .elementor-field-type-html{padding-bottom:0px;color:#1A1A1A;font-family:"Roboto", Sans-serif;font-weight:400;}.elementor-399 .elementor-element.elementor-element-3e2a395 .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;border-color:#0F70B7;}.elementor-399 .elementor-element.elementor-element-3e2a395 .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;border-color:#0F70B7;}.elementor-399 .elementor-element.elementor-element-3e2a395 .elementor-field-group .elementor-select-wrapper::before{color:#0F70B7;}.elementor-399 .elementor-element.elementor-element-3e2a395 .e-form__buttons__wrapper__button-next{background-color:#0F70B7;color:#ffffff;}.elementor-399 .elementor-element.elementor-element-3e2a395 .elementor-button[type="submit"]{background-color:#0F70B7;color:#ffffff;}.elementor-399 .elementor-element.elementor-element-3e2a395 .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-399 .elementor-element.elementor-element-3e2a395 .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-399 .elementor-element.elementor-element-3e2a395 .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-399 .elementor-element.elementor-element-3e2a395 .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-399 .elementor-element.elementor-element-3e2a395 .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-399 .elementor-element.elementor-element-3e2a395 .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-399 .elementor-element.elementor-element-3e2a395 .elementor-button{border-radius:10px 10px 10px 10px;}@media(min-width:768px){.elementor-399 .elementor-element.elementor-element-f8d922c{--content-width:90%;}}/* Start custom CSS for form, class: .elementor-element-3e2a395 *//* === STYLE MODERNE DU CHAMP UPLOAD === */
#CV_form input[type="file"] {
  display: none; /* Cache le bouton natif */
}

#CV_form .elementor-field-type-upload label[for="form-field-field_c29417c"] {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border: 2px dashed #cbd5e1;
  border-radius: 1rem;
  padding: 40px 20px;
  background-color: #f9fafb;
  cursor: pointer;
  transition: all 0.3s ease;
  text-align: center;
  color: #4b5563;
  font-weight: 500;
}

#CV_form .elementor-field-type-upload label[for="form-field-field_c29417c"]:hover {
  border-color: #2563eb;
  background-color: #eff6ff;
  color: #1e3a8a;
  box-shadow: 0 0 0 4px rgba(37,99,235,0.1);
}

#CV_form .upload-icon {
  font-size: 2.5rem;
  color: #2563eb;
  margin-bottom: 10px;
}

/* Prévisualisation fichier upload */
#CV_form .preview-area {
  margin-top: 10px;
  font-size: 0.9rem;
  color: #374151;
}
#CV_form .preview-area img {
  max-width: 100px;
  height: auto;
  border-radius: 5px;
  margin-top: 5px;
  box-shadow: 0 2px 6px rgba(0,0,0,0.1);
}

/* === MESSAGES APRÈS SOUMISSION === */
#CV_form .form-message {
  display: none; 
  margin-top: 20px;
  padding: 15px 20px;
  border-radius: 10px;
  font-weight: 500;
  box-shadow: 0 2px 8px rgba(0,0,0,0.05);
  opacity: 0;
  transition: all 0.4s ease-in-out;
}

#CV_form .form-message.show {
  display: block !important;
  opacity: 1;
  transform: translateY(0);
}

/* Couleurs selon type de message */
#CV_form .form-message.success { background-color: #ecfdf5; border-left: 5px solid #10b981; color: #065f46; }
#CV_form .form-message.error { background-color: #fef2f2; border-left: 5px solid #dc2626; color: #7f1d1d; }
#CV_form .form-message.server { background-color: #fff7ed; border-left: 5px solid #f97316; color: #7c2d12; }
#CV_form .form-message.invalid { background-color: #fefce8; border-left: 5px solid #eab308; color: #713f12; }/* End custom CSS */