/*--------------------------------------------------------------
## Gravity Forms Styling
--------------------------------------------------------------*/
/* Set Color Theme */
:root {
    --GformsInactive: #CECECE;;
    --GformsPrimaryColor: var(--blue);
    --GformsButtonColor: var(--green);
    --GformsText: var(--text-color);
    --GformsHighlightedText: var(--blue);
    --GformsErrorRed: var(--red);
}
body.dark-theme {
    --GformsInactive: #CECECE;
}
.gform_wrapper .gform_body {
    width: 100%;
}
/* Set Input base */
.gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]),
.gform_wrapper select,
.gform_wrapper .select-selected,
.gform_wrapper .select-items,
.gform_wrapper .top_label input.medium,
.gform_wrapper .top_label select,
.gform_wrapper li.gfield select[multiple=multiple],
.gform_wrapper textarea,
.gform_wrapper textarea {
    background-color: var(--bkg-color-raised, #fff);
    color: var(--text-color);
    border-color: var(--GformsInactive, #CECECE);
    border-width: 2px !important;
    border-style: solid;
    font-size: 16px;
    letter-spacing: 0;
    outline: 0;
    outline: none;
    padding: 12px 26px;
    min-height:60px;
    width: 100%;
}
.gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file])::placeholder ,
.gform_wrapper select::placeholder ,
.gform_wrapper .select-selected::placeholder ,
.gform_wrapper .select-items::placeholder ,
.gform_wrapper .top_label input.medium::placeholder ,
.gform_wrapper .top_label select::placeholder ,
.gform_wrapper li.gfield select[multiple=multiple]::placeholder ,
.gform_wrapper textarea::placeholder ,
.gform_wrapper textarea::placeholder  {
    color: var(--text-color);
    opacity: .75;
}
.gform_wrapper.gf_browser_chrome .gfield_error input[type=email], .gform_wrapper.gf_browser_chrome .gfield_error input[type=number], .gform_wrapper.gf_browser_chrome .gfield_error input[type=password], .gform_wrapper.gf_browser_chrome .gfield_error input[type=tel], .gform_wrapper.gf_browser_chrome .gfield_error input[type=text], .gform_wrapper.gf_browser_chrome .gfield_error input[type=url], .gform_wrapper.gf_browser_chrome .gfield_error select, .gform_wrapper.gf_browser_chrome .gfield_error textarea, .gform_wrapper.gf_browser_chrome li.gfield_error.field_sublabel_above .ginput_complex input[type=text] {
    margin-bottom: 0;
}

.gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]):focus,
.gform_wrapper select:focus,
.gform_wrapper .select-selected:focus,
.gform_wrapper .select-items:focus,
.gform_wrapper .top_label input.medium:focus,
.gform_wrapper .top_label select:focus,
.gform_wrapper li.gfield select[multiple=multiple]:focus,
.gform_wrapper textarea:focus,
.gform_wrapper textarea:focus,
.gform_wrapper .gfield input[type=file]::-webkit-file-upload-button:focus,
.gform_wrapper button:focus,
.gform_wrapper input[type="button"]:focus,
.gform_wrapper input[type="reset"]:focus,
.gform_wrapper input[type="submit"]:focus {
    border-color: var(--GformsPrimaryColor);
}



/*
 * Fix Textarea & Multi Select Spacing
 */
.ginput_container.ginput_container_textarea,
.ginput_container.ginput_container_multiselect {
}

/*
 * fix Multiselect border
 */
.gform_wrapper select[multiple=multiple] {
    margin-left: 0 !important;
    padding-left: 0;
    padding-right: 0;
}
.gform_wrapper select[multiple=multiple] option {
    padding-left: 26px;
}
.gform_wrapper select[multiple=multiple] option:checked {
    background: linear-gradient(0deg, #337179 0%, #337179 100%);
    background: linear-gradient(0deg, var(--GformsPrimaryColor) 0%, var(--GformsPrimaryColor) 100%);
    color: #fff;
    color: var(--GformsHighlightedText);
}

/*
 * Style File upload
 */

.gform_wrapper .gfield input[type=file]{
    border-width: 0;
    background: #fff;
    background: var(--bkg-color-raised);
    padding: 0 20px 0 0;
    color: #00313C;
    color: var(--GformsText);
    border-radius: 30px 0 20px 0;
    width: auto;
    width: 100%;
}

.gform_wrapper .gfield input[type=file]::-webkit-file-upload-button {
    background-color: #337179;
    background-color: var(--GformsPrimaryColor);
    outline: 0;
    outline: none;
    border-radius: 34.5px;
    padding: 10px;
    width: auto;
    display: inline-block;
    border: none;
    color: #fff;
    color: var(--GformsHighlightedText);
    border-radius: 20px 0 20px 0;
    background-color: #26D07C;
    background-color: var(--GformsButtonColor);
}
@media(min-width: 768px) {
    .gform_wrapper .gfield input[type=file]::-webkit-file-upload-button {
        min-width: 350px;
    }
}
/*
 * Style List
 */
.gfield_list_cell {padding-right: 10px !important;}

/*
 * Fix Spacing
 */
/* remove li based spacing */
.gform_wrapper ul.gform_fields li.gfield {
    margin: 0;
    padding-left: 0;
}
.gform_wrapper ul li:before,
.gform_wrapper ul.gform_fields li.gfield:before,
.gform_wrapper .top_label li.gfield.gf_left_half:before {
    display:none;
}
/* Add spacing to containers */
.ginput_container:not(.ginput_complex),
.gform_wrapper li.field_sublabel_below .ginput_complex  > span {
    margin-top: 4px !important;
    margin-bottom: 4px !important;
    position: relative;
}
.gfield_error .ginput_container {
    margin-top: 0 !important;
}
/* fix spans not showing block */
.ginput_complex  > span {
    display: block;
}
/* Remove margin from the complex containers*/
.gform_wrapper li.field_sublabel_below .ginput_complex {
    margin-top: 0 !important;
}

/*
 * Address
 */
/* fix spacing due to missing labels */
.gform_wrapper .ginput_container span:not(.ginput_price) {
    margin-bottom: 10px;
}


/*
 * Hide uneeded labels
 */
.gform_wrapper.noLabels_wrapper .gfield_label,
.gform_wrapper.noLabels_wrapper .ginput_complex label,
.gform_wrapper.noLabels_wrapper .clear-multi label,
.gform_wrapper.noLabels_wrapper .clear-multi i {
    display: none !important;
    height: 20px;
}
i.gfield:not(.iconOptionSet) > label {
    font-weight: 700;
    font-size: 24px !important;
    display: block;
    width: 100%;
    /* text-align: center; */
    /* margin-bottom: 30px; */
}
.gform_wrapper .gfield_required {
    color: inherit;
}

/*
 * Style progress bar
 */
.gform_wrapper .gf_progressbar {
    padding: 0;

}
.gform_wrapper .gf_progressbar_percentage {
    background: none;
    background-color: #337179;
    background-color: var(--GformsPrimaryColor);
}


/* Time Elements Width*/
.gform_wrapper .gfield_time_hour,
.gform_wrapper .gfield_time_minute,
.gform_wrapper .gfield_time_ampm {
    max-width: 100%;
}
.gform_wrapper .gfield_time_hour input[type=number], .gform_wrapper .gfield_time_minute input[type=number] {
    width: 100% !important;
}
@media (min-width: 768px) {
    .gform_wrapper .gfield_time_hour,
    .gform_wrapper .gfield_time_minute,
    .gform_wrapper .gfield_time_ampm {
        max-width: 7rem;
    }
}
.gform_wrapper .gfield_time_hour input,
.gform_wrapper .gfield_time_minute input,
.gform_wrapper .gfield_time_ampm select,
.gform_wrapper .gfield_time_ampm .select-selected {
    text-align: center;
}
.gform_wrapper .gfield_time_hour i {
    margin-top: 0;
}


/*
 * Style Chexkbox / Radio Buttons
 */
.gform_wrapper ul.gfield_checkbox li input[type=checkbox],
.gform_wrapper ul li .ginput_container_consent input[type=checkbox],
.gform_wrapper ul.gfield_radio li input[type=radio] {
    display: none;
}
.gfield_checkbox,
.gfield_radio {
    padding: 0; margin: 0;
    list-style: none
}
.gform_wrapper .gfield_checkbox li label,
.gform_wrapper ul li .ginput_container_consent label,
.gform_wrapper .gfield_radio li label {
    position: relative;
    display: -moz-inline-stack;
    display: inline-block;
    padding-top: 0;
    padding-left: 30px;
    margin-left: 0;
    letter-spacing: inherit;
    vertical-align: middle;
    cursor: pointer;
    width: auto;
    max-width: 100%;
    line-height: 1.5;
    font-size: .875em;
    vertical-align: middle;
    white-space: normal;
}
input[type=checkbox] + label::before,
input[type=radio] + label::before {
    content: "";
    display: inline-block;
    position: absolute;
    background-color: #fff;
    background-color: var(--bkg-color-raised);
}
.gform_wrapper input[type=checkbox] + label::before,
.gform_wrapper input[type=radio] + label::before {
    border: 1px solid #CECECE;
    border-color: var(--GformsInactive);
    color: #fff;
    color: var(--GformsHighlightedText);
    font-size: 0;
    line-height: 0;
    width: 16px;
    height: 16px;
    margin-right: 10px;
    margin-bottom:-15px;
    left: 0;
    top: 2px;
}
.gform_wrapper input[type=checkbox]:checked + label::before,
.gform_wrapper input[type=radio]:checked + label::before {
    content:"";
    border-color: #337179;
    border-color: var(--GformsPrimaryColor);
}

.gform_wrapper input[type=checkbox]:checked + label:after,
.gform_wrapper input[type=radio]:checked + label:after {
    content: '';
    position: absolute;
    color: #fff;
    color: var(--GformsHighlightedText);
    text-align: center;
}
/*
 * Style Radio Buttons
 */
.gform_wrapper input[type=radio] + label::before {
    border-radius: 100%;
}
.gform_wrapper input[type=radio]:checked + label:after {
    background-color: #337179;
    background-color: var(--GformsPrimaryColor);
    border-radius: 100%;
    width: 8px;
    height: 8px;
    left: 4px;
    top: 6px;
}

/*
 * Style Checkboxes
 */
.gform_wrapper input[type=checkbox] + label::before {
    border-radius: 2px;
}
.gform_wrapper input[type=checkbox]:checked + label::before {
    background-color: #337179;
    background-color: var(--GformsPrimaryColor);
}
.gform_wrapper input[type=checkbox]:checked + label:after {
    border: 1px solid #fff;
    border-width: 0 1px 1px 0;
    border-color: var(--GformsHighlightedText);
    width: 5px;
    height: 12px;
    left: 6px;
    transform: rotate(45deg);
    top: 3px;
}
/*
 * Fix consent Label
 */
.gfield_consent_label {
    margin-left: 30px;
    letter-spacing: -0.8px;
    vertical-align: middle;
}
.gform_wrapper input[type=checkbox]:checked + label::before {
    background-color: var(--GformsPrimaryColor,#29FD63);
}
.gform_wrapper input[type=checkbox]:checked + label:after {

}
/*
 * Custom Submit Button
 */
.gform_wrapper button,
.gform_wrapper input[type="button"],
.gform_wrapper input[type="reset"],
.gform_wrapper input[type="submit"],
.gform_wrapper .gform_page_footer .button.gform_button,
.gform_wrapper .gform_page_footer .button.gform_next_button {
    position:relative;
    background-color: var(--blue, #585AD5);
    border-color: var(--blue, #585AD5);
    color: var(--white, #fff);
    margin-top: 0;
    max-width: unset;
    margin-left: 16px;
    margin-right: 16px;
    overflow: hidden;
    display: inline-flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    vertical-align: middle;
    min-height: 3.5em;
    padding: 0.5em 1em;
}

/* terms and privacy notice settings */
.gform_footer small {
    margin-top: 10px;
    padding: 0 12px;
    display: inline-block;
    font-size: 12px;
    max-width: 97%;
    width: 100%;
    letter-spacing: 0;
    text-align: center;
    z-index: 0;
}

/* style spinner to cover active button */
.spinner_container {
    background: #337179;
    background: var(--GformsPrimaryColor);
    position: absolute;
    display: block;
    height: 100%;
    top: 0;
    left:0;
    right:0;
    width: 100%;
}
.gform_cust_spinner,
.gform_cust_spinner:after {
    border-radius: 50%;
    width: 10em;
    height: 10em;
}
.gform_cust_spinner {
    margin: 8px auto;
    font-size: 4px;
    position: relative;
    border-top: 1.1em solid #fff;
    border-top: 1.1em solid var(--GformsHighlightedText);
    border-right: 1.1em solid #fff;
    border-right: 1.1em solid var(--GformsHighlightedText);
    border-bottom: 1.1em solid transparent;
    border-left: 1.1em solid #fff;
    border-left: 1.1em solid var(--GformsHighlightedText);
    -webkit-transform: translateZ(0);
    -ms-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-animation: load8 1.1s infinite linear;
    animation: load8 1.1s infinite linear;
}
@-webkit-keyframes load8 {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}
@keyframes load8 {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

/*
 * Style Errors
 */
/* Style Validation Message at top of form */
.gform_wrapper div.validation_error {
    border: none;
    background: transparent;
    margin-bottom: 0;
    color: #F85656;
    color: var(--GformsErrorRed);
}

.gform_wrapper ul.gform_fields li.gfield.gfield_error+li.gfield.gfield_error {
    margin-top: 0;
}

/* Style Input Container */
.gform_wrapper li.gfield.gfield_error,
.gform_wrapper li.gfield.gfield_error.gfield_contains_required.gfield_creditcard_warning {
    border: none;
    background: transparent;
    width: 100%;
}
/* Style Validation Message below inputs */
.gform_wrapper .validation_message,
.gform_wrapper .field_description_below .gfield_description {
    color: var(--GformsErrorRed, #F85656);
    padding-top: 10px;
    margin-top: -5px;
    padding-left: 27px;
    border-top: none;
    z-index: -1;
}

.gform_wrapper .instruction.validation_message {
    position: absolute;
    bottom: -50px;
}
/* X error marker on inputs */
.gform_wrapper li.gfield_error .ginput_container {
    position: relative;
}
.gform_wrapper li.gfield_error > .ginput_container:not(.ginput_container_checkbox):not(.ginput_container_radio):not(.ginput_complex):not(.ginput_container_list):not(.ginput_container_consent):after,
.gform_wrapper li.gfield_error > .ginput_complex span:after,
.gform_wrapper li.gfield_error .ginput_container_time:after {
    content: '';
    text-align:center;
    position: absolute;
    display: block;
    right: 22px;
    /* top: calc(50% - 10px); */
    top: 23px;
    height: 18px;
    width: 18px;
    color: var(--GformsErrorRed, #F85656);
    background: var(--GformsErrorRed, #F85656);
    background-image: url("../images/GravityForms/FieldError.svg");
    border-radius: 100%;
    background-repeat: no-repeat;
    background-size: cover;
}
@media only screen and (min-width: 641px) {
    div.ginput_container_name span:after {
        margin-right: 9px;
        margin-top: 1px;
    }
}
/* Error Input s*/
.gform_wrapper li.gfield_error input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]),
.gform_wrapper li.gfield_error select,
.gform_wrapper li.gfield_error .select-selected,
.gform_wrapper li.gfield_error .select-items,
.gform_wrapper li.gfield_error .top_label input.medium,
.gform_wrapper li.gfield_error .top_label select,
.gform_wrapper li.gfield_error select[multiple=multiple],
.gform_wrapper li.gfield_error textarea,
.gform_wrapper li.gfield_error textarea,
.gform_wrapper li.gfield_error input[type=file]::-webkit-file-upload-button,
.gform_wrapper li.gfield_error button,
.gform_wrapper li.gfield_error input[type="button"],
.gform_wrapper li.gfield_error input[type="reset"],
.gform_wrapper li.gfield_error input[type="submit"] {
    border-color: #F85656 !important;
    border-color: var(--GformsErrorRed) !important;
}

/* Remove space above footer*/
.gform_wrapper .gform_footer {
    flex-direction: column;
    margin-top: 0;
    text-align: center;
}

/* Prent Radio and Checkbox text from turning red */
.gform_wrapper li.gfield_error div.ginput_complex.ginput_container label, .gform_wrapper li.gfield_error ul.gfield_checkbox, .gform_wrapper li.gfield_error ul.gfield_radio {
    color: #00313C;
    color: var(--GformsText);
}


/*
 * Custom Select Styling
 */
/* hide original SELECT element */
.gform_wrapper .custom_select {position: absolute;left: 0;opacity: 0;}
/* The container must be positioned relative: */
.gform_wrapper .select-container {
    position: relative;
    overflow: visible;
}
.gform_wrapper .select-selected {
    display: flex;
    position: relative;
    align-items: center;
    white-space: nowrap;
    overflow:hidden;
    padding-top: 0px;
    padding-bottom: 0;
    height: 100%;
    z-index: 1;
}
.gform_wrapper .select-container.active .select-selected{
    border-bottom-left-radius: 0px;
    border-bottom-right-radius: 0px;
    border-color: var(--GformsPrimaryColor);
}

/* Style the arrow inside the select element: */
.gform_wrapper .select-selected:after {
    position: absolute;
    content: "";
    display: block;
    right: 22px;
    top: 22px;
    height: 12px;
    width: 0px;
    height: 0px;
    border-top: 10px solid var(--text-color);
    border-right: 10px solid transparent;
    border-bottom: 0 solid transparent;
    border-left: 10px solid transparent;
    border-radius: 6px;
    -webkit-transition: transform .3s ease-out;
    transition: transform .3s ease-out;
    overflow: hidden;
}
.gform_wrapper li.gfield_error .select-selected:after {
    /* background-color: var(--GformsErrorRed); */
}

/* Point the arrow upwards when the select box is open (active): */
.gform_wrapper .select-container.active .select-selected:after {
    -webkit-transform: rotateX(180deg);
    -moz-transform: rotateX(180deg);
    -o-transform: rotateX(180deg);
    -ms-transform: rotateX(180deg);
    transform: rotateX(-180deg);
}

/* fix name overflow issue */
.gform_wrapper.gf_browser_chrome .gfield_error .ginput_complex.ginput_container.has_first_name.has_middle_name.has_last_name span.name_last, .gform_wrapper.gf_browser_chrome .gfield_error .ginput_complex.ginput_container.has_first_name.has_middle_name.has_last_name span.name_middle {
    margin-left: 0;
}

/* fix file upload overflow issue */
.gform_wrapper.gform_validation_error .top_label input.medium, .gform_wrapper.gform_validation_error .top_label select.medium {
    width: 100%;
}


/* Disble text highlights for both the select and options*/
.gform_wrapper .select-selected,
.gform_wrapper .select-items {
    -webkit-touch-callout: none; /* iOS Safari */
    -webkit-user-select: none; /* Safari */
    -khtml-user-select: none; /* Konqueror HTML */
    -moz-user-select: none; /* Old versions of Firefox */
    -ms-user-select: none; /* Internet Explorer/Edge */
    user-select: none; /* Non-prefixed version, currently supported by Chrome, Edge, Opera and Firefox */
}

/* Style items (options): */
.gform_wrapper .select-items {
    display: none;
    /* position: absolute; */
    background: #fff;
    background: var(--bkg-color-raised);
    top: 100%;
    left: 0;
    right: 0;
    z-index: 9;
    border-top-left-radius: 0px;
    border-top-right-radius: 0px;
    border-top: none;
    padding: 0 5px 0 0;
    border-color: #337179;
    border-color: var(--GformsPrimaryColor);
    overflow: hidden;
}
/* Hide the items when the select box is closed: */
.gform_wrapper .select-container.active .select-items {
    display: block;
}

.gform_wrapper .select-items .inner-container {
    padding: 0 5px 0 0;
    overflow: scroll;
    overflow-x: hidden;
    overflow-y: scroll;
    max-height: 382px;
}

/* width */
.gform_wrapper .select-items .inner-container::-webkit-scrollbar {
    width: 4px;
}

/* Track */
.gform_wrapper .select-items .inner-container::-webkit-scrollbar-track {
    background: transparent;
    margin-top: 5px;
    margin-bottom:20px;
    width:20px;
}

/* Handle */
.gform_wrapper .select-items .inner-container::-webkit-scrollbar-thumb {
    background: #D8D8D8;
    border-radius: 2px;
    border-with: 4px;
}

/* Handle on hover */
.gform_wrapper .select-items .inner-container::-webkit-scrollbar-thumb:hover {
    background: #555;
}

.gform_wrapper .select-items .inner-container > div {
    padding: 13px 0 13px 26px;
    cursor: pointer;
}
.gform_wrapper .select-items .inner-container > div:hover {
    background: #337179;
    background: var(--GformsPrimaryColor);
    color: #fff;
    color: var(--GformsHighlightedText);
}

/* Remove Dotted line from footer */
.gform_wrapper .gform_page_footer {
    border: none;
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Green outline around form*/
.outlineForm .gform_wrapper {
    border: 3px solid #26D07C;
    border-color: var(--GformsButtonColor);
    padding: 20px 15px;
}
.outlineForm .gform_wrapper form {
    max-width: 394px;
}
.outlineForm .gform_wrapper .gform_footer {
    margin-top: 0;
    width: 100%;
    min-width: 100%;
}
.outlineForm .gform_wrapper .gform_footer small {
    position: relative;
}

@media (min-width: 576px) {
    .outlineForm .gform_wrapper {
        margin: 0 auto;
    }
}
@media only screen and (min-width: 641px) {
    .outlineForm .gform_wrapper {
        padding-left: 31px;
    }
}
@media (min-width: 768px) {
    .outlineForm .gform_wrapper {
        max-width: 446px;
    }
}
@media (min-width: 992px) {
    .outlineForm .gform_wrapper {
        margin: 0  0 auto;
    }
}

/* Confirmation */
.gform_confirmation_wrapper .gform_confirmation_message {
    font-size: 18px;
    font-weight: 600;
    max-width: 80%;
    margin: 0 auto;
    letter-spacing: 0;
    text-align: center;
}
