/*********************************************
 * Plugin Gravity Form v2.4 (compatible with GF 2.5 and later)
 * Note: default GF CSS must be disabled.
**********************************************/
.gform_wrapper {
    /* GF variables */
    --gf-color-error:var(--twc-color-error, red);
    --gf-spacing-row:var(--twc-spacing-default, 45px);
    --gf-spacing-field:35px;
    --gf-spacing-label:8px;
    --gf-gap:30px; /* between field columns */
    --gf-field-height:54px;
    --gf-field-bg:rgba(255, 255, 255, 0);
    --gf-field-side-padding:0px;
    --gf-field-bg-hover:rgba(0, 0, 0, 0);
    --gf-field-color:var(--twc-color-text);
    --gf-field-color-hover:#000;
    --gf-field-size:16px;
    --gf-field-font:inherit;
    --gf-field-textarea-height:120px;
    --gf-placeholder-color:var(--twc-color-text);

    margin-bottom:var(--gf-spacing-row);
}
.txt_color_white .gform_wrapper {
    --gf-placeholder-color:#fff; --gf-field-color:#fff;
    --gf-color-error:var(--twc-color-primary);
}
.gform_wrapper form {position:relative; max-width:766px; margin:0 auto;}


/*********************
 * Body, Footer, Columns
**********************/
/* Form Body */
.gform_fields {
    display:flex; flex-wrap:wrap;
    margin:0 calc(var(--gf-gap) * -1);
}

/* Form Footer */
.gform_footer {margin-top:var(--gf-spacing-field); position:relative;}

/* Ajax loading spinner */
.gform_ajax_spinner {
    display:none;
    width:40px; height:40px;
    position:absolute; top:50%; left:100%;
    transform:translateY(-50%);
}

/* Field Columns */
.gfield {width:100%; padding:0 var(--gf-gap);}
.gfield:not(:first-child) {padding-top:var(--gf-spacing-field);}
@media only screen and (min-width:768px) {
    .gfield.gfield--width-two-thirds {width:66.66%;}
    .gfield.gfield--width-third {width:33.33%;}
    .gfield.gfield--width-three-quarter {width:75%;}
    .gfield.gfield--width-quarter {width:25%;}
    .gfield.gfield--width-half {width:50%;}
    .gfield.gfield--width-half:nth-child(1),
    .gfield.gfield--width-half:nth-child(1) + .gfield.gfield--width-half:nth-child(2) {padding-top:0;}
}


/*********************
 * Misc
**********************/
/* Field validation (hidden by default) */
.gfield.gform_validation_container {display:none;}

/* Validation message */
.gfield_validation_message {display:none;}

/* Validation error */
.gform_validation_errors {color:var(--gf-color-error); margin-bottom:var(--gf-spacing-field);}

/* Confirmation (after submit form) */
.gform_confirmation_wrapper {margin-bottom:var(--gf-spacing-row);}

/* Field Label */
.gfield.hidden_label .gfield_label {display:none;}
.gfield_label {
    display:block; font-weight:700; letter-spacing:-0.02em;
    margin-bottom:var(--gf-spacing-label);
}
.gfield_required {color:var(--gf-color-error); margin-left:2px; display:none;}

/* Hidden field */
.gfield_visibility_hidden, .gform_hidden {display:none;}

/*********************
 * Fields
**********************/
/* Field consent */
fieldset.gfield {border:none; margin:0;}
.ginput_container_consent {display:flex; align-items:center; margin-top:5px;}
.gfield_consent_label {padding-left:5px; font-size:var(--twc-size-14);}
fieldset.gfield a {text-decoration:underline; color:var(--twc-color-primary); font-weight:700;}
fieldset.gfield a:hover, fieldset.gfield a:focus {color:var(--twc-color-primary-highlight);}
fieldset.gfield a:focus-visible {
    outline:2px solid var(--twc-color-primary); border-radius:3px; transition:none;
}

/* Fields */
.gfield .easy-select-current .easy-select-option,
.gfield input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
.gfield textarea,
.gfield select {
    background:var(--gf-field-bg); color:var(--gf-field-color);
    font-size:var(--gf-field-size); font-family:var(--gf-field-font);
    width:100%; height:var(--gf-field-height); padding:5px var(--gf-field-side-padding) 15px; display:block;
    -webkit-appearance:none !important; -webkit-border-radius:0 !important; border-radius:0 !important;
    transition:var(--twc-transition);
    border-bottom:1px solid rgba(112, 112, 112, .2);
}
.gfield textarea {height:var(--gf-field-textarea-height); padding:15px var(--gf-field-side-padding); resize:vertical;}

/* Fields :hover, :focus */
.gfield .easy-select-current:hover .easy-select-option,
.gfield input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):hover,
.gfield textarea:hover,
.gfield select:hover,
.gfield input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):focus,
.gfield textarea:focus,
.gfield select:focus {
    background:var(--gf-field-bg-hover);
    border-color:var(--twc-color-primary);
    box-shadow:0 1px 0 0 var(--twc-color-primary);
    color:var(--gf-field-color-hover);
    --gf-placeholder-color:rgba(0, 0, 0, .3);
}

/* Fields error */
.gfield_error .easy-select-current .easy-select-option,
.gfield_error input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
.gfield_error textarea,
.gfield_error select,
.gfield_error .easy-select-current {
    box-shadow:0 1px 0 0 var(--gf-color-error); border-bottom-color:var(--gf-color-error);
}
.gfield_error .ginput_container_consent {color:var(--gf-color-error);}

/* Placeholder */
.gform_wrapper ::-webkit-input-placeholder {font-family:inherit; font-weight:inherit; font-size:inherit; color:var(--gf-placeholder-color); transition:var(--twc-transition);}
.gform_wrapper ::-moz-placeholder {font-family:inherit; font-weight:inherit; font-size:inherit; color:var(--gf-placeholder-color); transition:var(--twc-transition);}
.gform_wrapper :-ms-input-placeholder {font-family:inherit; font-weight:inherit; font-size:inherit; color:var(--gf-placeholder-color); transition:var(--twc-transition);}
.gform_wrapper :-moz-placeholder {font-family:inherit; font-weight:inherit; font-size:inherit; color:var(--gf-placeholder-color); transition:var(--twc-transition);}


/*********************************************
 * Easy select
**********************************************/
.gform_wrapper .easy-select {max-width:unset;}
.gform_wrapper .easy-select-current {border:none;border-radius:0;}
.gform_wrapper .easy-select-current .easy-select-option {display:flex;}


/*********************************************
 * Plugin Gravity Form
**********************************************/
@media only screen and (max-width:1024px) {
    /* Fields */
    .gform_wrapper {
        /* GF variables */
        --gf-spacing-field:30px;
        --gf-gap:calc(var(--twc-gap-container) / 2);
    }
}
@media only screen and (max-width:767px) {
    /* Fields */
    .gform_wrapper {
        --gf-field-height:50px;
    }
}