.elementor-17236 .elementor-element.elementor-element-ce719db{--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:60px 60px;--row-gap:60px;--column-gap:60px;--padding-top:40px;--padding-bottom:40px;--padding-left:20px;--padding-right:20px;}.elementor-17236 .elementor-element.elementor-element-ce719db:not(.elementor-motion-effects-element-type-background), .elementor-17236 .elementor-element.elementor-element-ce719db > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F9FBFB;}.elementor-17236 .elementor-element.elementor-element-41e6d99{--display:flex;--border-radius:20px 20px 20px 20px;box-shadow:0px 0px 10px 0px rgba(0, 0, 0, 0.08);--padding-top:40px;--padding-bottom:40px;--padding-left:40px;--padding-right:40px;}.elementor-17236 .elementor-element.elementor-element-41e6d99:not(.elementor-motion-effects-element-type-background), .elementor-17236 .elementor-element.elementor-element-41e6d99 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-2ab8649 );}.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-17236 .elementor-element.elementor-element-2b66971 .elementor-field-group{padding-right:calc( 16px/2 );padding-left:calc( 16px/2 );margin-bottom:29px;}.elementor-17236 .elementor-element.elementor-element-2b66971 .elementor-form-fields-wrapper{margin-left:calc( -16px/2 );margin-right:calc( -16px/2 );margin-bottom:-29px;}.elementor-17236 .elementor-element.elementor-element-2b66971 .elementor-field-group.recaptcha_v3-bottomleft, .elementor-17236 .elementor-element.elementor-element-2b66971 .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-17236 .elementor-element.elementor-element-2b66971 .elementor-labels-inline .elementor-field-group > label{padding-left:7px;}body:not(.rtl) .elementor-17236 .elementor-element.elementor-element-2b66971 .elementor-labels-inline .elementor-field-group > label{padding-right:7px;}body .elementor-17236 .elementor-element.elementor-element-2b66971 .elementor-labels-above .elementor-field-group > label{padding-bottom:7px;}.elementor-17236 .elementor-element.elementor-element-2b66971 .elementor-field-type-html{padding-bottom:0px;}.elementor-17236 .elementor-element.elementor-element-2b66971 .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;}.elementor-17236 .elementor-element.elementor-element-2b66971 .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;}.elementor-17236 .elementor-element.elementor-element-2b66971 .elementor-button{font-family:"Roboto", Sans-serif;font-size:14px;font-weight:800;text-transform:uppercase;letter-spacing:1px;border-style:solid;border-width:2px 2px 2px 2px;border-radius:100px 100px 100px 100px;padding:20px 0px 20px 0px;}.elementor-17236 .elementor-element.elementor-element-2b66971 .e-form__buttons__wrapper__button-next{background-color:#FF7F2700;color:var( --e-global-color-primary );}.elementor-17236 .elementor-element.elementor-element-2b66971 .elementor-button[type="submit"]{background-color:#FF7F2700;color:var( --e-global-color-primary );}.elementor-17236 .elementor-element.elementor-element-2b66971 .elementor-button[type="submit"] svg *{fill:var( --e-global-color-primary );}.elementor-17236 .elementor-element.elementor-element-2b66971 .e-form__buttons__wrapper__button-previous{background-color:#FF7F2700;color:var( --e-global-color-primary );}.elementor-17236 .elementor-element.elementor-element-2b66971 .e-form__buttons__wrapper__button-next:hover{background-color:var( --e-global-color-primary );color:#ffffff;}.elementor-17236 .elementor-element.elementor-element-2b66971 .elementor-button[type="submit"]:hover{background-color:var( --e-global-color-primary );color:#ffffff;}.elementor-17236 .elementor-element.elementor-element-2b66971 .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-17236 .elementor-element.elementor-element-2b66971 .e-form__buttons__wrapper__button-previous:hover{color:var( --e-global-color-secondary );}.elementor-17236 .elementor-element.elementor-element-2b66971{--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-17236 .elementor-element.elementor-element-8aad26d{--display:flex;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-17236 .elementor-element.elementor-element-ce719db{--content-width:1100px;}.elementor-17236 .elementor-element.elementor-element-41e6d99{--width:70%;}.elementor-17236 .elementor-element.elementor-element-8aad26d{--width:30%;}}/* Start custom CSS *//* ============================================================
   BABYCHOU — Devis form styling for Elementor Pro  (v3)
   Paste into: Page Settings (gear) → Advanced → Custom CSS.
   ------------------------------------------------------------
   • Step indicator TYPE = "Number".
   • 3-across rows target fields by ID (nb_enfants, horaires).
   • RGPD consent: use the "Acceptance" field type.
   ============================================================ */

:root{
  --bbc-orange:#FF7F27;
  --bbc-teal:#235566;
  --bbc-border:#E4E7EC;
  --bbc-muted:#8A94A6;
}

/* ==========================================================
   1) STEP INDICATOR  →  segmented progress bars
   ========================================================== */
.elementor-form .e-form__indicators{
  display:flex !important;
  align-items:center;
  gap:12px;
  margin-bottom:34px;
}
.elementor-form .e-form__indicators > *{
  flex:1 1 0 !important;
  width:auto !important;
  min-width:0 !important;
  max-width:none !important;
  height:6px !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  border-radius:6px !important;
  background:var(--bbc-border) !important;
  box-shadow:none !important;
  font-size:0 !important;
  color:transparent !important;
  line-height:0 !important;
  overflow:hidden;
}
.elementor-form .e-form__indicators > * *{ display:none !important; }
.elementor-form .e-form__indicators > [class*="separator"]{ display:none !important; }
.elementor-form .e-form__indicators > [class*="state-active"],
.elementor-form .e-form__indicators > [class*="state-completed"]{
  background:var(--bbc-orange) !important;
}

/* ==========================================================
   2) RADIO / CHECKBOX GROUPS  →  choice cards
   ========================================================== */
.elementor-form .elementor-field-type-radio .elementor-field-subgroup,
.elementor-form .elementor-field-type-checkbox .elementor-field-subgroup{
  display:grid;
  grid-template-columns:repeat(2, 1fr);
  gap:16px;
}
/* 3 across — by field ID */
.elementor-form .elementor-field-group-nb_enfants .elementor-field-subgroup,
.elementor-form .elementor-field-group-horaires .elementor-field-subgroup{
  grid-template-columns:repeat(3, 1fr);
}

.elementor-form .elementor-field-subgroup .elementor-field-option{
  position:relative;
  margin:0;
}
.elementor-form .elementor-field-subgroup .elementor-field-option input[type="radio"],
.elementor-form .elementor-field-subgroup .elementor-field-option input[type="checkbox"]{
  position:absolute;
  opacity:0;
  width:1px;
  height:1px;
  margin:0;
  pointer-events:none;
}
.elementor-form .elementor-field-subgroup .elementor-field-option label{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  min-height:56px;
  margin:0;
  padding:12px 16px;
  border:1px solid var(--bbc-border);
  border-radius:12px;
  font-size:16px;
  font-weight:600;
  color:var(--bbc-teal);
  text-align:center;
  line-height:1.3;
  cursor:pointer;
  transition:border-color .15s ease, background .15s ease, color .15s ease;
}
.elementor-form .elementor-field-subgroup .elementor-field-option label:hover{
  border-color:var(--bbc-orange);
}
.elementor-form .elementor-field-subgroup .elementor-field-option input:checked + label{
  background:var(--bbc-orange);
  border-color:var(--bbc-orange);
  color:#fff;
}
.elementor-form .elementor-field-subgroup .elementor-field-option input:focus-visible + label{
  outline:2px solid var(--bbc-orange);
  outline-offset:2px;
}

/* ==========================================================
   2b) RGPD CONSENT (Acceptance field) — normal inline checkbox
       Overrides the card rules above so it is NOT boxed.
   ========================================================== */
.elementor-form .elementor-field-type-acceptance .elementor-field-subgroup,
.elementor-form .elementor-field-type-acceptance .elementor-field-option{
  display:flex !important;
  grid-template-columns:none !important;
  align-items:flex-start;
  gap:10px;
  text-align:left;
}
.elementor-form .elementor-field-type-acceptance label{
  display:inline !important;
  width:auto !important;
  min-height:0 !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:none !important;
  color:var(--bbc-muted) !important;
  font-size:14px !important;
  font-weight:400 !important;
  line-height:1.5 !important;
  text-align:left !important;
  cursor:pointer;
}
.elementor-form .elementor-field-type-acceptance input[type="checkbox"]{
  position:static !important;
  opacity:1 !important;
  width:18px !important;
  height:18px !important;
  margin:2px 0 0 0 !important;
  pointer-events:auto !important;
  flex-shrink:0;
}
.elementor-form .elementor-field-type-acceptance a{
  color:var(--bbc-orange) !important;
  text-decoration:underline;
}

/* ==========================================================
   3) TEXT / EMAIL / TEL / TEXTAREA / SELECT  →  match the cards
   ========================================================== */
.elementor-form .elementor-field-group input[type="text"],
.elementor-form .elementor-field-group input[type="email"],
.elementor-form .elementor-field-group input[type="tel"],
.elementor-form .elementor-field-group input[type="number"],
.elementor-form .elementor-field-group input[type="url"],
.elementor-form .elementor-field-group textarea,
.elementor-form .elementor-field-group select{
  width:100%;
  min-height:56px;
  padding:14px 18px;
  border:1px solid var(--bbc-border);
  border-radius:12px;
  background-color:#fff;
  color:var(--bbc-teal);
  font-size:16px;
  line-height:1.3;
  box-shadow:none;
  transition:border-color .15s ease;
}
.elementor-form .elementor-field-group textarea{ min-height:120px; }

/* select: keep Elementor's own single arrow — just leave room for it */
.elementor-form .elementor-field-group select{
  padding-right:40px;
  cursor:pointer;
}

.elementor-form .elementor-field-group input:focus,
.elementor-form .elementor-field-group textarea:focus,
.elementor-form .elementor-field-group select:focus{
  border-color:var(--bbc-orange);
  outline:none;
}
.elementor-form .elementor-field-group input::placeholder,
.elementor-form .elementor-field-group textarea::placeholder{
  color:var(--bbc-muted);
  opacity:1;
}

/* ==========================================================
   4) LABELS + VERTICAL SPACING
      !important beats the widget's Label Color / Typography.
   ========================================================== */
.elementor-form .elementor-field-group{
  margin-bottom:22px;
}
.elementor-form .elementor-field-label{
  display:block !important;
  margin-bottom:12px !important;
  color:var(--bbc-teal) !important;
  font-weight:600 !important;
  font-size:16px !important;
  line-height:1.35 !important;
}

/* Main step questions ("Quel est votre besoin ?", "Combien d'enfants à garder ?") — 26px */
.elementor-form .elementor-field-group-besoin > .elementor-field-label,
.elementor-form .elementor-field-group-nb_enfants > .elementor-field-label{
  font-size:26px !important;
  font-weight:700 !important;
  line-height:1.25 !important;
  margin-bottom:20px !important;
  color:var(--bbc-teal) !important;
}

/* ==========================================================
   5) RESPONSIVE
   ========================================================== */
@media (max-width:767px){
  .elementor-form .elementor-field-type-radio .elementor-field-subgroup,
  .elementor-form .elementor-field-type-checkbox .elementor-field-subgroup{
    grid-template-columns:repeat(2, 1fr);
    gap:12px;
  }
  .elementor-form .elementor-field-type-acceptance .elementor-field-subgroup,
  .elementor-form .elementor-field-type-acceptance .elementor-field-option{
    grid-template-columns:none !important;
  }
  .elementor-form .elementor-field-subgroup .elementor-field-option label{
    min-height:50px;
    padding:10px 12px;
    font-size:15px;
  }
  .elementor-form .elementor-field-group input,
  .elementor-form .elementor-field-group select,
  .elementor-form .elementor-field-group textarea{
    min-height:50px;
    padding:12px 14px;
    font-size:15px;
  }
}/* End custom CSS */