body.groupe-robin.elementor-page {
    /* ==========================================================================
       Gravity Forms - Styles optimisés
       ========================================================================== */
    
    /* Variables locales pour éviter la répétition */
    .gform_wrapper.gravity-theme {
      --gf-font: var(--e-global-typography-primary-font-family);
      --gf-color: var(--e-global-color-primary);
      --gf-accent: var(--e-global-color-3702caf);
      --gf-checkbox-size: 1.563rem;
      --gf-input-padding: 0.938rem;
    }
    
    /* ==========================================================================
       Base Typography
       ========================================================================== */
    
    .gform_wrapper.gravity-theme,
    .gform_wrapper.gravity-theme :is(
      .gfield_label,
      .gfield input,
      .gfield select,
      .gfield_checkbox label,
      .gfield_radio label,
      .gfield_consent_description
    ) {
      font-family: var(--gf-font);
      color: var(--gf-color);
      font-size: 1rem;
    }
    
    /* ==========================================================================
       Form Fields
       ========================================================================== */
    
    .gform_wrapper .gform_fields :is(input, select) {
      width: 100%;
      max-width: 100%;
      padding: var(--gf-input-padding);
      border: 1px solid black;
      font-weight: 400;
    }
    
    .gform_wrapper.gravity-theme .gform_fields {
      gap: 1.5rem 1rem;
    }
    
    /* ==========================================================================
       Inline Choices (Radio/Checkbox)
       ========================================================================== */
    
    .gform_wrapper.gravity-theme .gfield:is(.gf_list_inline, .gfield--choice-align-horizontal) {
      & :is(.gfield_checkbox, .gfield_radio) {
        display: flex;
        flex-wrap: wrap;
        gap: 0.3rem;
    
        .gchoice {
          display: inline-flex;
          align-items: center;
          gap: 0.3rem;
        }
    
        .gfield-choice-input {
          width: auto;
        }
      }
    }
    
    /* ==========================================================================
       Date Picker
       ========================================================================== */
    
    .gform_wrapper.gravity-theme .ginput_container_date {
      position: relative;
    
      img.ui-datepicker-trigger {
        position: absolute;
        right: 1rem;
      }
    }
    
    /* ==========================================================================
       Buttons
       ========================================================================== */
    
    .gform_button_select_files.gform-theme-button--control,
    .gform_footer input[type="submit"] {
      background: var(--gf-accent);
      color: var(--gf-color);
      border: none;
      padding: 0.5rem 1rem !important;
      
      &:hover {
        background-color: var(--gf-color);
        color: white;
        filter: none;
      }
    }
    
    .gform_button_select_files.gform-theme-button--control {
      font-size: 1rem;
    }
    
    .gform_footer input[type="submit"] {
      font-size: 0.938rem;
    }
    
    /* ==========================================================================
       Required Fields
       ========================================================================== */
    
    .gform_wrapper .gfield_label .gfield_required::after {
      content: " *";
      color: #c02b0a;
      font-size: 0.813rem;
      padding-inline-start: 0.125em;
    }
    
    .gform_wrapper .gfield_required:is(.gfield_required_custom, .gfield_required_text) {
      display: none;
    }
    
    /* ==========================================================================
       Consent Field
       ========================================================================== */
    
    .ginput_container_consent {
      display: flex;
      align-items: flex-start;
      gap: var(--gf-input-padding);
    
      input[type="checkbox"] {
        width: auto;
      }
    }
    
    .gfield--type-consent .gfield_consent_description {
      border: none;
      max-height: initial;
      overflow: hidden;
    }
    
    :is(.gform-field-label.gfield_consent_label, .gfield_consent_description) a {
      font-size: 0.938rem;
      text-decoration: underline;
    }
    
    /* ==========================================================================
       Choice Fields (Legend)
       ========================================================================== */
    
    .gfield--type-choice legend {
      margin-bottom: 1rem;
    }
    
    /* ==========================================================================
       Custom Checkboxes
       ========================================================================== */
    
    :is(.gfield_checkbox, .ginput_container_consent) input[type="checkbox"] {
      position: absolute;
      opacity: 0;
      width: 0;
      height: 0;
    }
    
    :is(.gchoice, .ginput_container_consent) {
      display: flex;
      align-items: flex-start;
      position: relative;
      margin-bottom: 0.625rem;
    }
    
    :is(.gfield_checkbox, .ginput_container_consent) label {
      position: relative;
      padding-left: calc(var(--gf-checkbox-size) + 10px);
      cursor: pointer;
      max-width: 100%;
    
      &::before {
        content: "";
        position: absolute;
        left: 0;
        top: 0;
        width: var(--gf-checkbox-size);
        height: var(--gf-checkbox-size);
        background: #fff;
        border: 2px solid var(--gf-color);
        transition: all 0.2s ease;
        text-align: center;
      }
    }
    
    .gfield_checkbox label {
      display: flex;
      align-items: center;
      height: var(--gf-checkbox-size);
    }
    
    :is(.gfield_checkbox, .ginput_container_consent) input:checked + label::before {
      content: "\2713";
      background-color: var(--gf-color);
      color: white;
    }
    
    .gfield_checkbox label:hover::before {
      border-color: var(--gf-accent);
    }
    
    /* ==========================================================================
       Descriptions
       ========================================================================== */
    
    .gform_wrapper.gravity-theme :is(.description, .gfield_description, .gsection_description, .instruction) {
      font-size: 0.875rem;
      padding: 0.5rem;
    }
    
    /* ==========================================================================
       Theme Variant: Yellow
       ========================================================================== */
    
    .gf-form-yellow {
      --gf-accent: var(--e-global-color-22f0a55);
    
      .gfield_checkbox label:hover::before {
        border-color: var(--gf-accent);
      }
    }
}
