/*
 * Gravity Forms
 * Styles personnalisés des formulaires
 */

/* CUSTOM GRAVITY FORM STYLING */

/* GFORM VARIABLES */

:root {
    /* Input */
    --gfield-min-height: 4.8rem;
    --gfield-placeholder-opacity: 0.60;/* OK */
    --textarea-height: 25rem;/* OK */
    --required-icn: url();/* OK */
    /* Submit button - Default = Acss btn*/
    --gfield-submit--align: flex-start;/* OK */
    --gfield-submit--min-width: var(--btn-min-width);/* OK */
}
/* ORBITAL MODIFICATION */
body .gform-theme--framework form {
        
    /* FORM */
    --gf-form-gap-x: var(--space-m);/* OK */
    --gf-form-gap-y: var(--space-l);/* OK */

    /* INPUT  */
    --gf-ctrl-size: auto; /* min-height OK */
    --gf-ctrl-padding-x: var(--space-m); /* OK */
    --gf-ctrl-padding-y: var(--space-m); /* OK */
    --gf-ctrl-textarea-padding-y: var(--space-m); /* OK */
    --gf-ctrl-bg-color: transparent;/* OK */
    /* --gf-ctrl-bg-color-hover: transparent; OK */
    /* --gf-ctrl-bg-color-focus: transparent;  OK */
    --gf-ctrl-radius: var(--radius);/* OK */
    --gf-ctrl-textarea-radius: var(--gf-ctrl-radius);/* OK */

    /*** font  */
    --gf-ctrl-font-size: var(--text-m);/* OK */
    --gf-ctrl-color: var(--base-ultra-dark);/* OK */
    --gf-ctrl-color-hover: var(--gf-ctrl-color);/* OK */
    --gf-ctrl-color-focus: var(--gf-ctrl-color);/* OK */
    --gf-ctrl-line-height: 1;/* OK */
    --gf-ctrl-textarea-line-height: 1.2;/* OK */

    /*** border  */
    --gf-ctrl-border-color: var(--primary);/* OK */
    --gf-ctrl-border-color-hover: var(--primary-hover);/* OK */
    --gf-ctrl-border-color-focus: var(--gf-ctrl-border-color-hover);/* OK */
    --gf-ctrl-border-style: solid;/* OK */
    --gf-ctrl-border-width: 1px;/* OK */

    /* SUBMIT */
    --gf-form-footer-margin-y-start: var(--gf-form-gap-y); /* OK */
    --gf-ctrl-btn-bg-color-primary: var(--primary);/* OK */
    --gf-ctrl-btn-bg-color-hover-primary: var(--primary-hover);/* OK */
    --gf-ctrl-btn-padding-y: var(--btn-padding-block); /* submit button padding OK */
    --gf-ctrl-btn-padding-x: var(--btn-padding-inline); /* submit button padding OK */
    --gf-ctrl-btn-radius: var(--btn-radius);/*Submit-btn radius OK */
    --gf-ctrl-btn-font-size: var(--text-l);/* OK */
    --gf-ctrl-btn-text-transform: var(--btn-text-transform);/* OK */
    --gf-ctrl-btn-font-weight: var(--btn-font-weight); /* Submit font-weight OK */
    --gf-ctrl-btn-color-primary: var(--white); /* OK */
    --gf-ctrl-btn-color-hover-primary: var(--white);/* OK */

    --gf-ctrl-btn-border-color-primary: var(--gf-ctrl-btn-bg-color-primary);/* OK */
    --gf-ctrl-btn-border-color-hover-primary: var(--gf-ctrl-btn-bg-color-hover-primary);/* OK */
    --gf-ctrl-btn-border-width-primary: var(--btn-border-width);/* OK */

   /*** Submit focus*/
    --gf-ctrl-btn-color-focus-primary: var(--gf-ctrl-btn-color-hover-primary);/* OK */
    --gf-ctrl-btn-bg-color-focus-primary: var(--gf-ctrl-btn-bg-color-hover-primary);/* OK */
    --gf-ctrl-btn-border-color-focus-primary: var(--gf-ctrl-btn-bg-color-focus-primary);/* OK */
    --gf-ctrl-outline-color-focus: var(--base);/* OK */

   /* OTHER */
    --gf-ctrl-radio-check-radius: 0; /* radio btn radius */
    --gf-ctrl-transition: all var(--transition);/* OK */
    --gf-ctrl-label-color-secondary: var(--gf-ctrl-color);/* OK */
    /* radio / checkbox */
    --gf-ctrl-choice-check-color: var(--gf-ctrl-border-color);/* OK */
    --gf-ctrl-multiselect-radius: var(--gf-ctrl-radius);/* OK */
    /* Liste  */
    --gf-field-list-btns-gap: 4px;
    --gf-field-list-btn-size: 0;/* OK */
    --gf-field-list-btn-radius: 50%; /* OK */
    --gf-field-list-btn-font-size: 0; /* OK */
    --gf-field-list-btn-padding-y: 6px;/* OK */
    --gf-field-list-btn-padding-x: 6px;/* OK */

    /* LABEL  */
    --gf-ctrl-label-color-primary: var(--gf-ctrl-color);/* OK */
    --gf-ctrl-label-font-size-primary: var(--text-l);/* OK */
    --gf-ctrl-label-font-style-primary: italic;/* OK */
    --gf-ctrl-label-font-weight-primary: 700;/* OK */
    --gf-ctrl-label-letter-spacing-primary: 2;/* OK */
    --gf-ctrl-label-line-height-primary: 1;/* OK */
}


/* Hide label over gfields but kept for screen reader */

/* body .gform_wrapper .gfield_label,
body .gform_wrapper .gform_heading,
body .gform_wrapper .gform_required_legend,
body .gform_wrapper .gfield--type-name legend {
    visibility: hidden;
    position: absolute;
} */


/* Form with visible label  */
body .gform_wrapper .gform_required {
    /* display: none; */
}

body .gform_wrapper .gfield {
    position: relative;
}

body .gform_wrapper.gravity-theme .ginput_complex span{
    padding-left: 0!important;
    padding-right: 0!important;
    margin-bottom: 0px;
}


body .gform_wrapper .gfield label {
    font-size: var(--gf-ctrl-font-size);
    font-style: normal;
    position: absolute;
    top:50%;
    transform: translateY(-50%);
    left: var(--gf-ctrl-padding-x);
    /* transition: var(--transition); */
}

body .gform_wrapper .gfield.gfield--type-textarea label {
    top: var(--gf-ctrl-padding-y);
    transform: translateY(0);
    font-style: normal;
    line-height: 1;
}

body .gform_wrapper .gfield.gfield--type-select label {
    top: 0;
}

body .gform_wrapper .gfield label:has(+ .ginput_container input:focus),
body .gform_wrapper .gfield label:has(+ .ginput_container textarea:focus),
body .gform_wrapper .gfield label:has(+ .ginput_container input),
body .gform_wrapper .gfield label:has(+ .ginput_container_select),
body .gform_wrapper .gfield label:has(+ .ginput_container_multiselect),
body .gform_wrapper .gfield label:has(+ .ginput_container textarea) {
    font-size: calc(var(--gf-ctrl-font-size) * 1);
    top: calc(0 - var(--gf-ctrl-font-size) * .5);
    transform: translateY(-50%);
    background-color: #fff;
    padding-inline: 8px;
}

body .gform_wrapper .gfield--type-choice .gchoice label {
    position: static;
    transform: translateY(0);
}

body .gform_wrapper .gfield--type-choice .gchoice {
    align-items: center;
}

/* Form with label END */

/* Gform input fields */

body .gform_wrapper .gform_body .gform_fields .gfield input[type=text],
body .gform_wrapper .gform_body .gform_fields .gfield input[type=tel],
body .gform_wrapper .gform_body .gform_fields .gfield input[type='url'],
body .gform_wrapper .gform_body .gform_fields .gfield input[type='number'],
body .gform_wrapper .gform_body .gform_fields .gfield input[type='password'],
body .gform_wrapper .gform_body .gform_fields .gfield input[type='file'],
body .gform_wrapper .gform_body .gform_fields .gfield input[type=email],
body .gform_wrapper .gform_body .gform_fields .gfield select,
body .gform_wrapper .gform_body .gform_fields .gfield textarea {
    min-height: var(--gfield-min-height);
    /* outline: none; */
}

body .gform_wrapper .gform_body .gform_fields .gfield textarea {
    height: var(--textarea-height);
    width: 100%;
    resize: none;
}

body .gform_wrapper .gform_body .ginput_container_textarea {
    line-height: var(--gf-ctrl-textarea-line-height);
}


/*Styling actif*/

/* Required fields */

.gfield_contains_required .ginput_container input[aria-required="true"] {
	background-image: var(--required-icn);
	background-size: 1em;
	background-repeat: no-repeat;
    background-position: calc(100% - var(--space-s)) 50%;
}

.gfield_contains_required .ginput_container input[aria-required="true"]:focus,
.gfield_contains_required .ginput_container input[aria-required="true"]:not(:placeholder-shown) {
	background-image: none;
}

.gfield_contains_required .gfield_required_text {
    font-size: var(--gf-ctrl-font-size);
}


/* ----- END input fields----- */

/* Submit button style */

body .gform_wrapper .gform_footer {
    /* display: flex; */
    justify-content: var(--gfield-submit--align);
}

body .gform_wrapper .gform_footer input[type=submit] {
    inline-size: fit-content!important; 
    min-width: var(--gfield-submit--min-width)!important; 
}


/* ----- END Submit button ------ */


/* Placeholder */

.gform_fields .gfield input::-webkit-input-placeholder {
    /* Chrome/Opera/Safari */
    /* font-size: var(--gfield-font-size)!important; */
    /* color: var(--gfield-color); */
    opacity: var(--gfield-placeholder-opacity);
}

.gform_fields .gfield input::-moz-placeholder {
    /* Firefox 19+ */
    /* font-size: var(--gfield-font-size); */
    /* color: var(--gfield-color); */
    opacity: var(--gfield-placeholder-opacity);
}

.gform_fields .gfield input:-ms-input-placeholder {
    /* IE 10+ */
    /* font-size: var(--gfield-font-size); */
    /* color: var(--gfield-color); */
    opacity: var(--gfield-placeholder-opacity);
}

.gform_fields .gfield input:-moz-placeholder {
    /* Firefox 18- */
    /* font-size: var(--gfield-font-size); */
    /* color: var(--gfield-color); */
    opacity: var(--gfield-placeholder-opacity);
}

.gform_fields .gfield textarea::placeholder,
.gform_fields .gfield textarea::-webkit-input-placeholder {
    /* font-size: var(--gfield-font-size); */
    /* color: var(--gfield-color); */
    opacity: var(--gfield-placeholder-opacity);
    line-height: var(--gf-ctrl-line-height);
}


/* ------ END placeholder ------ */


/* Error / validation message */

body .gform_wrapper .gform_validation_errors {
    border-radius: 0;
}

body .gform_wrapper .gform_validation_errors>h2 {
    /* color: blueviolet; */
}

body .gform_wrapper .gfield_validation_message,
body .gform_wrapper .validation_message {
    display: none;
}

/* Error fields style */

body .gform_wrapper .gform_validation_errors:focus {
    outline: none;
}

body .gform_wrapper .gform_body .gform_fields .gfield.gfield_error input {
    color: #c02b0a;
    border-color: #c02b0a!important;
  }


/* END gravity form styling ====================================================================== */


/* Gform Container query */

/* GForm default reset */

body .gform-theme--foundation .gfield--width-half {
    grid-column: span 6;
}
body .gform-theme--foundation .gfield--width-third {
    grid-column: span 4;
}body .gform-theme--foundation .gfield--width-quarter {
    grid-column: span 3;
}
body .gform-theme--foundation .gform_fields {
    column-gap: var(--gf-form-gap-x);
}

/* End Reset*/

.gm-form-wrapper {
container-type: inline-size
}
/* //2 columns */

@container (max-width:55rem) {
.gm-form-wrapper .gform-theme--foundation .gform_fields > .gfield--width-half:not(.gfield--type-select) {
    grid-column: span 12;
}
}

/* // 3 columns */
@container (max-width:50rem) {
.gm-form-wrapper .gform-theme--foundation .gform_fields > .gfield.gfield--width-third {
    grid-column: span 12;
}

.gm-form-wrapper .gform-theme--foundation .gform_fields > .gfield.gfield--width-third ~ .gfield.gfield--width-third {
    grid-column: span 6;
}
}

@container (max-width:40rem) {
.gm-form-wrapper .gform-theme--foundation .gform_fields > .gfield.gfield--width-third ~ .gfield.gfield--width-third {
    grid-column: span 12;
}
}

/* 4 columns */

@container (max-width:110rem) {
.gm-form-wrapper .gform-theme--foundation .gform_fields > .gfield--width-quarter {
    grid-column: span 6;
}
}
@container (max-width:52rem) {
.gm-form-wrapper .gform-theme--foundation .gform_fields > .gfield--width-quarter {
    grid-column: span 12;
}
.gm-form-wrapper .gform-theme--foundation .gfield select.medium {
    inline-size: 100%;
}
}