.gform_fields *::placeholder {
    opacity: 0.675;
}

.gform-theme--api,
.gform-theme--framework {
    --gf-ctrl-date-picker-cell-content-color: var(--wp--preset--color--contrast) !important;
    --gf-ctrl-date-picker-header-icons-color: var(--wp--preset--color--contrast) !important;
    --gf-ctrl-date-picker-header-icons-color-hover: var(--wp--preset--color--primary) !important;
    --gf-color-danger: #FF4343;
}
.gform_wrapper.gform-theme {
    --gf-form-gap-x: 0.875rem;
    --gf-form-gap-y: 1rem;
    --gf-field-gap-x: 0.875rem;
    --gf-field-gap-y: 1rem;
    --gf-ctrl-btn-shadow: none;
    --gf-ctrl-shadow: none;
    --gf-ctrl-outline-width-focus: 2px;
    --gf-ctrl-font-family: var(--wp--preset--font-family--body);
    --gf-ctrl-font-size: var(--wp--preset--font-size--small);
    --gf-ctrl-font-weight: 400;
    --gf-field-pg-prog-bar-bg-color-blue: var(--gf-color-in-ctrl-primary);
    --gf-field-section-border-color: var(--gf-color-in-ctrl-primary);
    --gf-ctrl-file-btn-color: var(--gf-ctrl-btn-color-ctrl);
    --gf-ctrl-file-btn-bg-color: var(--gf-color-in-ctrl-primary);
    --gf-ctrl-file-btn-bg-color-hover: var(--wp--preset--color--primary-light) !important;
    --gf-ctrl-file-btn-color-hover:var(--wp--preset--color--contrast);
    --gf-ctrl-btn-color-hover-primary: var(--wp--preset--color--contrast);
    --gf-ctrl-btn-bg-color-hover-primary: var(--wp--preset--color--primary-light);
    --gf-ctrl-btn-bg-color-hover-ctrl: var(--wp--preset--color--neutral);
    --gf-ctrl-btn-bg-color-hover-secondary: var(--gf-color-in-ctrl-primary);
    --gf-ctrl-btn-color-hover-secondary: var(--gf-color-in-ctrl-primary-contrast);
    --gf-ctrl-btn-border-color-hover-secondary:var(--gf-color-in-ctrl-primary);
}

.gform_wrapper.gform-theme .ginput_container select:not([multiple]) option {
    color: var(--wp--preset--color--contrast);
}

.gform_wrapper.gform-theme .gfield--type-multiselect:has(.chosen-container) .chosen-drop {
    background-color: var(--wp--preset--color--base);
}

.gform_wrapper.gform-theme .gfield--type-multiselect:has(.chosen-container) .chosen-drop li {
    color: var(--wp--preset--color--contrast);
}

.ui-widget.ui-datepicker {
    --gf-ctrl-date-picker-bg-color: var(--wp--preset--color--base);
}

.gform-theme--framework.ui-datepicker select.ui-datepicker-month,
.gform-theme--framework.ui-datepicker select.ui-datepicker-year {
    --gf-icon-ctrl-select: url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M0.292893 0.292893C0.683417 -0.097631 1.31658 -0.097631 1.70711 0.292893L5 3.58579L8.29289 0.292893C8.68342 -0.0976311 9.31658 -0.0976311 9.70711 0.292893C10.0976 0.683417 10.0976 1.31658 9.70711 1.70711L5.70711 5.70711C5.31658 6.09763 4.68342 6.09763 4.29289 5.70711L0.292893 1.70711C-0.0976311 1.31658 -0.0976311 0.683418 0.292893 0.292893Z' fill='rgba(0, 0, 0, 0.65)'/%3E%3C/svg%3E");

    border-color: var(--wp--preset--color--contrast);
    color: var(--wp--preset--color--contrast);
}

.gf-inline-submit-mobile .gform_footer {
    margin: 0;
}
.footer-contact-wrapper .gform_required_legend {
    display: none;
}

.gf-submit-button {
    flex-grow: 1;
}

.gf-submit-button .gf-submit-button-arrow {
    background-color: currentColor;
    width: 1em;
    height: 1em;
    mask-image: url(../icons/arrow.svg);
    mask-repeat: no-repeat;
    mask-size: contain;
    mask-position: center;
    display: none;
}

.gf-submit-button .gf-submit-button-label {
    white-space: nowrap;
}

.gfield.gf-inline-field-label {
    display: flex;
    gap: var(--gf-form-gap-x);
    align-items: center;
}

.gfield.gf-inline-field-label > .gfield_label {
    margin-block-end: 0;
}

.gfield.gf-inline-field-label > .ginput_container {
    flex-grow: 1;
}

@media screen and (max-width: 781px) {
    .gf-inline-submit-mobile .gform_fields {
        --gf-ctrl-border-width: 0;

        align-items: flex-start;
        border: 1px solid;
        border-radius: 0.5rem;
        column-gap: 0.5rem;
        display: flex;
        padding: 0.25rem;
    }
    .gf-inline-submit-mobile .gfield--type-email {
        flex-grow: 1;
        max-width: calc(100% - 3.5rem);
    }
    .gf-submit-button .gf-submit-button-arrow {
        display: block;
    }
    .gf-submit-button .gf-submit-button-label {
        border: 0;
        clip-path: inset(50%);
        height: 1px;
        margin: -1px;
        overflow: hidden;
        padding: 0;
        position: absolute;
        width: 1px;
        word-wrap: normal !important;
    }

    .footer-contact-wrapper .gform_body {
        padding-block-start: var(--wp--preset--spacing--40);
    }

    .gfield.gf-inline-field-label {
        flex-wrap: wrap;
    }
}

/* Calculator form styles */

.gform-theme--calculator {
    --color--neutral: #9C9C9C;
    --gf-form-gap-x: var(--wp--preset--spacing--50);
    --gf-form-gap-y: var(--wp--preset--spacing--50);
}

.gform-theme--calculator ::placeholder {
    color: var(--color--neutral) !important;
}

.gform-theme--calculator > .gform_body > .gform_fields {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}

.gform-theme--calculator > .gform_body > .gform_fields > .gfield {
    display: flex;
    flex-basis: calc(50% - var(--gf-form-gap-x) / 2);
    flex-direction: column;
}

.gform-theme--calculator .gform_fields .gfield--type-text,
.gform-theme--calculator .gform_fields .gfield--type-textarea,
.gform-theme--calculator .gform_fields .gfield--type-select,
.gform-theme--calculator .gform_fields .gfield--type-number,
.gform-theme--calculator .gform_fields .gfield--type-checkbox,
.gform-theme--calculator .gform_fields .gfield--type-radio,
.gform-theme--calculator .gform_fields .gfield--type-multi_choice,
.gform-theme--calculator .gform_fields .gfield--type-image_choice,
.gform-theme--calculator .gform_fields .gfield--type-name,
.gform-theme--calculator .gform_fields .gfield--type-date,
.gform-theme--calculator .gform_fields .gfield--type-time,
.gform-theme--calculator .gform_fields .gfield--type-phone,
.gform-theme--calculator .gform_fields .gfield--type-address,
.gform-theme--calculator .gform_fields .gfield--type-website,
.gform-theme--calculator .gform_fields .gfield--type-email,
.gform-theme--calculator .gform_fields .gfield--type-fileupload,
.gform-theme--calculator .gform_fields .gfield--type-list,
.gform-theme--calculator .gform_fields .gfield--type-multiselect,
.gform-theme--calculator .gform_fields .gfield--type-consent,
.gform-theme--calculator .gform_fields .gfield--type-product,
.gform-theme--calculator .gform_fields .gfield--type-quantity {
    background-color: var(--wp--preset--color--neutral-light-2);
    border: 1px solid var(--color--neutral);
    border-radius: 0.625em;
    padding: var(--wp--preset--spacing--50);
}

.gform-theme--calculator .gform_fields .gfield > .gfield_label {
    display: flex;
    flex-wrap: nowrap;
    font-size: var(--wp--preset--font-size--medium-large);
    line-height: 1.25;
    margin-block-end: auto;
    padding-block-end: 1em;
    width: 100%;
}

.gform-theme--calculator .gform_fields .gfield > .gfield_label::before {
    content: attr(data-number);
    display: inline-block;
    padding-inline-end: 0.25em;
    white-space: nowrap;
}

.gform-theme--calculator .gform_fields .gfield > legend {
    float: left;
}

.gform-theme--calculator .gform_fields .gfield > legend + .ginput_container {
    clear: left;
}

.gform-theme--calculator .gform_fields .gfield input,
.gform-theme--calculator .gform_fields .gfield select,
.gform-theme--calculator .gform_fields .gfield textarea {
    background-color: var(--wp--preset--color--base);
}

.gform-theme--calculator .gform_fields .gfield--type-total > .gfield_label,
.gform-theme--calculator .gform_fields .gfield--type-total > .ginput_container_total {
    border-left: var(--wp--preset--spacing--30) solid var(--wp--preset--color--primary);
    padding-left: var(--wp--preset--spacing--50);
}

.gform-theme--calculator .gform_fields .gfield--type-total {
    max-width: 32rem;
}

.gform-theme--calculator .gform_fields .gfield--type-total > .gfield_label {
    font-size: var(--wp--preset--font-size--medium);
    font-weight: 400;
    margin-block-end: 0;
    padding-block-end: var(--wp--preset--spacing--30);
}

.gform-theme--calculator .gform_fields .gfield--type-total > .gfield_description {
    margin-block-start: var(--wp--preset--spacing--40);
}

.gform-theme--calculator .gform_fields .gfield--type-total > .ginput_container_total > .ginput_total {
    border-radius: 0;
    color: var(--wp--preset--color--primary);
    font-size: var(--wp--preset--font-size--x-large);
    font-weight: 500;
    padding: 0;
}

@media screen and (max-width: 781px) {
    .gform-theme--calculator > .gform_body > .gform_fields > .gfield {
        flex-basis: 100%;
    }
}
