.elementor-6207 .elementor-element.elementor-element-2cb906ef{--display:flex;--min-height:109px;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-6207 .elementor-element.elementor-element-3e9ae52b{--display:flex;--min-height:343px;--overlay-opacity:0.76;border-style:groove;--border-style:groove;border-width:2px 2px 2px 2px;--border-top-width:2px;--border-right-width:2px;--border-bottom-width:2px;--border-left-width:2px;--border-radius:16px 16px 16px 16px;}.elementor-6207 .elementor-element.elementor-element-3e9ae52b:not(.elementor-motion-effects-element-type-background), .elementor-6207 .elementor-element.elementor-element-3e9ae52b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://fedix.fr/wp-content/uploads/2025/09/Handle-jpg020.webp");background-position:25px -66px;}.elementor-6207 .elementor-element.elementor-element-3e9ae52b::before, .elementor-6207 .elementor-element.elementor-element-3e9ae52b > .elementor-background-video-container::before, .elementor-6207 .elementor-element.elementor-element-3e9ae52b > .e-con-inner > .elementor-background-video-container::before, .elementor-6207 .elementor-element.elementor-element-3e9ae52b > .elementor-background-slideshow::before, .elementor-6207 .elementor-element.elementor-element-3e9ae52b > .e-con-inner > .elementor-background-slideshow::before, .elementor-6207 .elementor-element.elementor-element-3e9ae52b > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:transparent;--background-overlay:'';background-image:linear-gradient(180deg, #51A9FC 0%, #005BB1 100%);}.elementor-6207 .elementor-element.elementor-element-4980f333 > .elementor-widget-container{margin:31px 0px 0px 0px;padding:106px 0px 0px 0px;}.elementor-6207 .elementor-element.elementor-element-4980f333{text-align:center;}.elementor-6207 .elementor-element.elementor-element-4980f333 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:34px;font-weight:700;color:var( --e-global-color-a973478 );}.elementor-6207 .elementor-element.elementor-element-075d4f4.elementor-element{--align-self:center;}.elementor-6207 .elementor-element.elementor-element-075d4f4{text-align:center;font-family:"Inter Tight", Sans-serif;font-size:14px;font-weight:400;color:var( --e-global-color-a973478 );}.elementor-6207 .elementor-element.elementor-element-1fd237af{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:5px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-6207 .elementor-element.elementor-element-283a46d7{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-6207 .elementor-element.elementor-element-61dcda59{--display:flex;--min-height:0px;border-style:none;--border-style:none;--border-radius:22px 22px 22px 22px;box-shadow:6px 9px 10px 0px rgba(0, 0, 0, 0.31);--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:23px;--padding-bottom:23px;--padding-left:23px;--padding-right:23px;}.elementor-6207 .elementor-element.elementor-element-61dcda59:not(.elementor-motion-effects-element-type-background), .elementor-6207 .elementor-element.elementor-element-61dcda59 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#1F6BB3;}.elementor-6207 .elementor-element.elementor-element-719344b1 > .elementor-widget-container{margin:17px 0px 0px 0px;}.elementor-6207 .elementor-element.elementor-element-719344b1 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:25px;font-weight:700;color:var( --e-global-color-a973478 );}.elementor-6207 .elementor-element.elementor-element-343a82d5 > .elementor-widget-container{margin:9px 0px 0px 0px;}.elementor-6207 .elementor-element.elementor-element-343a82d5{font-family:"Tahoma", Sans-serif;font-size:15px;font-weight:400;color:#FFFFFF;}.elementor-6207 .elementor-element.elementor-element-5ff046b1 > .elementor-widget-container{background-color:#F1F1F138;padding:16px 16px 16px 16px;border-radius:16px 16px 16px 16px;box-shadow:1px -1px 10px 0px rgba(0, 0, 0, 0.44);}.elementor-6207 .elementor-element.elementor-element-5ff046b1 .elementor-icon-box-wrapper{align-items:start;text-align:left;}.elementor-6207 .elementor-element.elementor-element-5ff046b1{--icon-box-icon-margin:14px;}.elementor-6207 .elementor-element.elementor-element-5ff046b1 .elementor-icon-box-title{margin-block-end:0px;color:var( --e-global-color-a973478 );}.elementor-6207 .elementor-element.elementor-element-5ff046b1.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-68378d5 );fill:var( --e-global-color-a973478 );color:var( --e-global-color-a973478 );}.elementor-6207 .elementor-element.elementor-element-5ff046b1.elementor-view-framed .elementor-icon, .elementor-6207 .elementor-element.elementor-element-5ff046b1.elementor-view-default .elementor-icon{fill:var( --e-global-color-68378d5 );color:var( --e-global-color-68378d5 );border-color:var( --e-global-color-68378d5 );}.elementor-6207 .elementor-element.elementor-element-5ff046b1.elementor-view-framed .elementor-icon{background-color:var( --e-global-color-a973478 );}.elementor-6207 .elementor-element.elementor-element-5ff046b1 .elementor-icon{font-size:18px;padding:10px;border-width:0px 0px 0px 0px;border-radius:132px 132px 132px 132px;}.elementor-6207 .elementor-element.elementor-element-5ff046b1 .elementor-icon i{transform:rotate(0deg);}.elementor-6207 .elementor-element.elementor-element-5ff046b1 .elementor-icon-box-title, .elementor-6207 .elementor-element.elementor-element-5ff046b1 .elementor-icon-box-title a{font-family:"Montserrat", Sans-serif;font-size:15px;font-weight:500;}.elementor-6207 .elementor-element.elementor-element-703069f7 > .elementor-widget-container{background-color:#F1F1F138;padding:16px 16px 16px 16px;border-radius:16px 16px 16px 16px;box-shadow:1px -1px 10px 0px rgba(0,0,0,0.5);}.elementor-6207 .elementor-element.elementor-element-703069f7 .elementor-icon-box-wrapper{align-items:start;text-align:left;}.elementor-6207 .elementor-element.elementor-element-703069f7{--icon-box-icon-margin:14px;}.elementor-6207 .elementor-element.elementor-element-703069f7 .elementor-icon-box-title{margin-block-end:0px;color:var( --e-global-color-a973478 );}.elementor-6207 .elementor-element.elementor-element-703069f7.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-68378d5 );fill:var( --e-global-color-a973478 );color:var( --e-global-color-a973478 );}.elementor-6207 .elementor-element.elementor-element-703069f7.elementor-view-framed .elementor-icon, .elementor-6207 .elementor-element.elementor-element-703069f7.elementor-view-default .elementor-icon{fill:var( --e-global-color-68378d5 );color:var( --e-global-color-68378d5 );border-color:var( --e-global-color-68378d5 );}.elementor-6207 .elementor-element.elementor-element-703069f7.elementor-view-framed .elementor-icon{background-color:var( --e-global-color-a973478 );}.elementor-6207 .elementor-element.elementor-element-703069f7 .elementor-icon{font-size:18px;padding:10px;border-width:0px 0px 0px 0px;border-radius:157px 157px 157px 157px;}.elementor-6207 .elementor-element.elementor-element-703069f7 .elementor-icon i{transform:rotate(0deg);}.elementor-6207 .elementor-element.elementor-element-703069f7 .elementor-icon-box-title, .elementor-6207 .elementor-element.elementor-element-703069f7 .elementor-icon-box-title a{font-family:"Montserrat", Sans-serif;font-size:15px;font-weight:500;}.elementor-6207 .elementor-element.elementor-element-dfc9402{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-6207 .elementor-element.elementor-element-4864bb4a{text-align:center;}.elementor-6207 .elementor-element.elementor-element-4864bb4a .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:18px;font-weight:500;color:var( --e-global-color-a973478 );}.elementor-6207 .elementor-element.elementor-element-70f657f1 .elementor-repeater-item-fd8fdda.elementor-social-icon{background-color:var( --e-global-color-a973478 );}.elementor-6207 .elementor-element.elementor-element-70f657f1 .elementor-repeater-item-fd8fdda.elementor-social-icon i{color:var( --e-global-color-68378d5 );}.elementor-6207 .elementor-element.elementor-element-70f657f1 .elementor-repeater-item-fd8fdda.elementor-social-icon svg{fill:var( --e-global-color-68378d5 );}.elementor-6207 .elementor-element.elementor-element-70f657f1 .elementor-repeater-item-6305456.elementor-social-icon{background-color:var( --e-global-color-a973478 );}.elementor-6207 .elementor-element.elementor-element-70f657f1 .elementor-repeater-item-6305456.elementor-social-icon i{color:var( --e-global-color-68378d5 );}.elementor-6207 .elementor-element.elementor-element-70f657f1 .elementor-repeater-item-6305456.elementor-social-icon svg{fill:var( --e-global-color-68378d5 );}.elementor-6207 .elementor-element.elementor-element-70f657f1 .elementor-repeater-item-7548039.elementor-social-icon{background-color:var( --e-global-color-a973478 );}.elementor-6207 .elementor-element.elementor-element-70f657f1 .elementor-repeater-item-7548039.elementor-social-icon i{color:var( --e-global-color-68378d5 );}.elementor-6207 .elementor-element.elementor-element-70f657f1 .elementor-repeater-item-7548039.elementor-social-icon svg{fill:var( --e-global-color-68378d5 );}.elementor-6207 .elementor-element.elementor-element-70f657f1 .elementor-repeater-item-c836505.elementor-social-icon{background-color:var( --e-global-color-a973478 );}.elementor-6207 .elementor-element.elementor-element-70f657f1 .elementor-repeater-item-c836505.elementor-social-icon i{color:var( --e-global-color-68378d5 );}.elementor-6207 .elementor-element.elementor-element-70f657f1 .elementor-repeater-item-c836505.elementor-social-icon svg{fill:var( --e-global-color-68378d5 );}.elementor-6207 .elementor-element.elementor-element-70f657f1{--grid-template-columns:repeat(4, auto);--icon-size:19px;--grid-column-gap:39px;--grid-row-gap:0px;}.elementor-6207 .elementor-element.elementor-element-70f657f1 .elementor-widget-container{text-align:center;}.elementor-6207 .elementor-element.elementor-element-70f657f1 .elementor-social-icon{border-style:none;}.elementor-6207 .elementor-element.elementor-element-70f657f1 .elementor-icon{border-radius:37px 37px 37px 37px;}.elementor-6207 .elementor-element.elementor-element-2d005076{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-6207 .elementor-element.elementor-element-ea63d71 > .elementor-widget-container{background-color:var( --e-global-color-a973478 );padding:30px 30px 30px 30px;border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-68378d5 );border-radius:0px 0px 0px 0px;}.elementor-6207 .elementor-element.elementor-element-e2510e4{--display:flex;}.elementor-6207 .elementor-element.elementor-element-caf257d.elementor-element{--align-self:flex-start;}@media(max-width:1024px){.elementor-6207 .elementor-element.elementor-element-3e9ae52b:not(.elementor-motion-effects-element-type-background), .elementor-6207 .elementor-element.elementor-element-3e9ae52b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-position:0px 0px;}}@media(min-width:768px){.elementor-6207 .elementor-element.elementor-element-2cb906ef{--content-width:1589px;}.elementor-6207 .elementor-element.elementor-element-283a46d7{--width:33.3333%;}.elementor-6207 .elementor-element.elementor-element-2d005076{--width:66.6666%;}}@media(max-width:767px){.elementor-6207 .elementor-element.elementor-element-3e9ae52b{--min-height:358px;--overlay-opacity:1;}.elementor-6207 .elementor-element.elementor-element-3e9ae52b:not(.elementor-motion-effects-element-type-background), .elementor-6207 .elementor-element.elementor-element-3e9ae52b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-position:0px 0px;}.elementor-6207 .elementor-element.elementor-element-4980f333 .elementor-heading-title{font-size:31px;}.elementor-6207 .elementor-element.elementor-element-075d4f4{font-size:12px;}.elementor-6207 .elementor-element.elementor-element-343a82d5{font-size:13px;}.elementor-6207 .elementor-element.elementor-element-5ff046b1{width:var( --container-widget-width, 1000px );max-width:1000px;--container-widget-width:1000px;--container-widget-flex-grow:0;--icon-box-icon-margin:4px;}.elementor-6207 .elementor-element.elementor-element-5ff046b1 .elementor-icon-box-title{margin-block-end:2px;}.elementor-6207 .elementor-element.elementor-element-5ff046b1 .elementor-icon{font-size:17px;padding:10px;}.elementor-6207 .elementor-element.elementor-element-caf257d.elementor-element{--align-self:flex-start;--flex-grow:0;--flex-shrink:0;}}/* Start custom CSS for shortcode, class: .elementor-element-caf257d *//* Custom Contact Form 7 Styling - Rounded Box Design - Optimized */
.custom-appointment-form {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0 3px;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}

/* Form sections with rounded boxes */
.form-section {
  background: #f8f9fa;
  border: 1px solid #e3f2fd;
  border-radius: 12px;
  padding: 12px;
  margin-bottom: 12px;
  position: relative;
  width: 100%;
  box-sizing: border-box;
}

/* Form rows and fields */
.form-row {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 13px;
  margin-bottom: 4px;
}

/* Field widths using grid */
.half-width { grid-column: span 2; }
.quarter-width { grid-column: span 1; }
.three-quarter-width { grid-column: span 3; }
.full-width { grid-column: span 4; }

/* Labels with minimal spacing */
.custom-appointment-form label {
  display: block;
  margin-bottom: 3px;
  font-weight: 500;
  color: #666;
  font-size: 13px;
}

/* Input styling - clean and consistent */
.custom-appointment-form input[type="text"],
.custom-appointment-form input[type="email"],
.custom-appointment-form input[type="tel"],
.custom-appointment-form input[type="date"],
.custom-appointment-form select,
.custom-appointment-form textarea {
  width: 100%;
  padding: 12px 16px;
  border: 1.5px solid #b3d9ff;
  border-radius: 8px;
  font-size: 15px;
  line-height: 1.4;
  background: white;
  transition: border-color 0.2s ease;
  box-sizing: border-box;
}

.custom-appointment-form input:focus,
.custom-appointment-form select:focus,
.custom-appointment-form textarea:focus {
  outline: none;
  border-color: #2196f3;
}

/* Appointment section layout */
.appointment-section .appointment-row {
  display: grid;
  grid-template-columns: 220px 1fr;
  gap: 24px;
  align-items: start;
}

.datetime-fields {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.comment-field {
  display: flex;
  flex-direction: column;
}

/* Date input with calendar icon */
.date-field input {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%23666'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 002 2z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 12px center;
  background-size: 18px;
  padding-right: 40px;
}

/* Select dropdown with arrow */
.custom-appointment-form select {
  appearance: none;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%23666' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");
  background-position: right 12px center;
  background-repeat: no-repeat;
  background-size: 16px;
  padding-right: 40px;
}

/* Textarea styling */
.custom-appointment-form textarea {
  min-height: 120px;
  resize: vertical;
  font-family: inherit;
}

/* Section consentements */
.consent-section {
  background: #f8f9fa;
  border: 1px solid #e3f2fd;
  border-radius: 12px;
  padding: 20px;
  margin-bottom: 12px;
}

/* Cases à cocher container */
.consent-checkboxes {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

/* reCAPTCHA styling */
.recaptcha-item {
  margin-top: 8px;
  display: flex;
  justify-content: flex-start;
}

.recaptcha-item .g-recaptcha {
  transform: scale(0.9);
  transform-origin: 0 0;
}

/* Items de case à cocher */
.checkbox-item {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  line-height: 1.5;
}

/* Styling des cases à cocher */
.custom-appointment-form input[type="checkbox"] {
  width: 18px;
  height: 18px;
  margin: 0;
  flex-shrink: 0;
  accent-color: #2196f3;
  cursor: pointer;
  margin-top: 2px;
}

/* Labels pour les cases à cocher */
.checkbox-item label {
  font-size: 14px;
  color: #555;
  line-height: 1.4;
  cursor: pointer;
  margin: 0;
  flex: 1;
}

/* Hover effect pour les cases à cocher */
.checkbox-item:hover {
  background: rgba(33, 150, 243, 0.05);
  border-radius: 6px;
  padding: 8px;
  margin: -8px;
  transition: background-color 0.2s ease;
}

/* Section projet */
.project-section .form-row {
  margin-bottom: 0;
}

/* Submit button */
.form-submit {
  text-align: left;
  margin-top: 8px;
  margin-left: 24px;
}

.custom-appointment-form input[type="submit"] {
  background: #2196f3;
  color: white;
  border: none;
  padding: 14px 32px;
  border-radius: 8px;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
  text-transform: uppercase;
  letter-spacing: 1px;
  box-shadow: 0 2px 4px rgba(33, 150, 243, 0.3);
}

.custom-appointment-form input[type="submit"]:hover {
  background: #1976d2;
  transform: translateY(-1px);
  box-shadow: 0 4px 8px rgba(33, 150, 243, 0.4);
}

/* Messages d'erreur pour les consentements */
.custom-appointment-form .wpcf7-not-valid-tip {
  color: #f44336;
  font-size: 12px;
  margin-top: 4px;
  display: block;
}

/* Responsive design */
@media (max-width: 768px) {
  .form-row {
    grid-template-columns: 1fr;
    gap: 12px;
  }
  
  .half-width,
  .quarter-width,
  .three-quarter-width {
    grid-column: span 1;
  }
  
  .appointment-section .appointment-row {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  
  .datetime-fields {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
  }
  
  .form-submit {
    text-align: center;
    margin-left: 0;
  }
  
  .consent-checkboxes {
    gap: 20px;
  }
  
  .checkbox-item {
    gap: 10px;
  }
  
  .checkbox-item label {
    font-size: 13px;
  }
  
  .custom-appointment-form input[type="checkbox"] {
    width: 16px;
    height: 16px;
  }
}

@media (max-width: 480px) {
  .custom-appointment-form {
    margin: 0 10px;
  }
  
  .form-section {
    padding: 16px;
  }
  
  .datetime-fields {
    grid-template-columns: 1fr;
  }
  
  .custom-appointment-form input[type="text"],
  .custom-appointment-form input[type="email"],
  .custom-appointment-form input[type="tel"],
  .custom-appointment-form input[type="date"],
  .custom-appointment-form select,
  .custom-appointment-form textarea {
    font-size: 16px;
  }
}

/* Error and success messages */
.custom-appointment-form .wpcf7-not-valid {
  border-color: #f44336 !important;
}

.custom-appointment-form .wpcf7-validation-errors {
  background: #ffebee;
  border: 1px solid #ffcdd2;
  color: #c62828;
  padding: 12px;
  border-radius: 8px;
  margin-top: 16px;
  font-size: 14px;
}

.custom-appointment-form .wpcf7-mail-sent-ok {
  background: #e8f5e8;
  border: 1px solid #c8e6c9;
  color: #2e7d32;
  padding: 12px;
  border-radius: 8px;
  margin-top: 16px;
  font-size: 14px;
}/* End custom CSS */