/* Container */
.gform_wrapper form {
    display: flex;
    flex-direction: column;
    align-items: center;
}
.keuzehulp-tool .gform_wrapper form {
    align-items: flex-start;
}
.gform_wrapper .gform_body .gform_fields {
    column-gap: var(--wp--preset--spacing--40);
    row-gap: var(--wp--preset--spacing--40);
}

.gform_wrapper .gform_body .gform-grid-row {
    margin-inline: calc(var(--wp--preset--spacing--40) * -1 / 2);
    row-gap: var(--wp--preset--spacing--40);
}

/* Labels */
.gform_wrapper .gfield .gfield_label,
.gform_wrapper .gfield .gform-field-label {
    color: var(--wp--preset--color--contrast);
    font-size: var(--wp--preset--font-size--normal);
    font-weight: 400;
}

/* Inputs */
.gform_wrapper .gfield .ginput_container input:not([type="checkbox"]):not([type="radio"]),
.gform_wrapper .gfield .ginput_container textarea,
.gform_wrapper .gfield .ginput_container select {
    display: flex;
    width: 100%;
    height: 50px;
    padding: 0 var(--wp--preset--spacing--20);
    align-items: center;
    align-self: stretch;
    border: 1px solid var(--wp--preset--color--contrast);
    border-radius: 0;
    box-shadow: none;
    color: var(--wp--preset--color--contrast);
    font-size: var(--wp--preset--font-size--normal);
}
.gform_wrapper .gfield .ginput_container input:not([type="checkbox"]):not([type="radio"]):hover,
.gform_wrapper .gfield .ginput_container textarea:hover,
.gform_wrapper .gfield .ginput_container select:hover {
    background-color: var(--wp--preset--color--base-variant);
}
.gform_wrapper .gfield .ginput_container input:not([type="checkbox"]):not([type="radio"]):focus,
.gform_wrapper .gfield .ginput_container textarea:focus,
.gform_wrapper .gfield .ginput_container select:focus {
    outline: none;
}
.gform_wrapper .gfield .ginput_container textarea {
    padding: var(--wp--preset--spacing--20);
    min-block-size: 120px !important;
}
.gform_wrapper .gfield .ginput_container select {
    background: url(../../../svg/chevron-down.svg) no-repeat right var(--wp--preset--spacing--20) center;
    background-size: 24px;
}
.gform_wrapper .gfield .ginput_container input[type="file"] {
    padding: 0 !important;
}
@media (min-width: 784px) {
    .gform_wrapper .gfield .ginput_container input[type="file"] {
        background: url(../../../svg/paper-clip.svg) no-repeat right var(--wp--preset--spacing--20) center;
        background-size: 24px;
    }
}
.gform_wrapper .gfield .ginput_container input.datepicker,
.gform_wrapper .gfield .ginput_container input.awp_datetimepicker {
    background: url(../../../svg/calendar.svg) no-repeat right var(--wp--preset--spacing--20) center;
    background-size: 24px;
}
.gform_wrapper .gfield .gform-grid-col {
    padding-inline: calc(var(--wp--preset--spacing--40) / 2);
}

/* Checkbox */
.gform_wrapper .gfield .ginput_container input[type="checkbox"] {
    width: 20px;
    height: 20px;
    border-radius: 0;
    opacity: 0;
}
.gform_wrapper .gfield .ginput_container:has(input[type="checkbox"]) label.gform-field-label:before {
    content: "";
    display: block;
    width: 20px;
    height: 20px;
    border-radius: 0;
    border: 1px solid var(--wp--preset--color--contrast);
    position: absolute;
    top: 0;
    left: 0;
    pointer-events: none;
}
.gform_wrapper .gfield .ginput_container.ginput_container_checkbox div,
.gform_wrapper .gfield .ginput_container {
    position: relative;
}
.gform_wrapper .gfield .ginput_container:has(input[type="checkbox"]) label.gform-field-label {
    cursor: pointer;
}
.gform_wrapper .gfield .ginput_container input[type="checkbox"] + label.gform-field-label:after {
    content: "\e96e";
    font-family: "icomoon" !important;
    font-size: var(--wp--preset--font-size--normal);
    line-height: 1;
    color: var(--wp--preset--color--secondary);
    position: absolute;
    width: 20px;
    height: 20px;
    top: 0;
    left: 0;
    display: none;
    align-items: center;
    justify-content: center;
    pointer-events: none;
}
.gform_wrapper .gfield .ginput_container input[type="checkbox"]:checked + label.gform-field-label:after {
    display: flex;
}

/* Radio */
.gform_wrapper .gfield .ginput_container input[type="radio"] {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    opacity: 0;
}
.gform_wrapper .gfield .ginput_container.ginput_container_radio label.gform-field-label:before {
    content: "";
    display: block;
    background-color: #D9D9D9;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    border: 1px solid var(--wp--preset--color--contrast);
    position: absolute;
    top: 0;
    left: 0;
    pointer-events: none;
}
.gform_wrapper .gfield .ginput_container.ginput_container_radio div {
    position: relative;
}
.gform_wrapper .gfield .ginput_container:has(input[type="radio"]) label.gform-field-label {
    cursor: pointer;
}
.gform_wrapper .gfield .ginput_container input[type="radio"] + label.gform-field-label:after {
    content: "";
    background-color: var(--wp--preset--color--secondary);
    position: absolute;
    width: 20px;
    border-radius: 50%;
    height: 20px;
    transform: scale(0.5);
    top: 0;
    left: 0;
    display: none;
}
.gform_wrapper .gfield .ginput_container input[type="radio"]:checked + label.gform-field-label:after {
    display: flex;
}

/* Warnings */
.gform_wrapper .gform_heading {
    display: none;
}
.gform_wrapper .gfield .gfield_description.gfield_validation_message {
    color: var(--wp--preset--color--warning);
    font-size: var(--wp--preset--font-size--normal);
    margin-top: var(--wp--preset--spacing--20);
}
.gform_wrapper .gform_validation_errors {
    border: 0 !important;
    padding: 0 !important;
    background-color: transparent !important;
    box-shadow: none !important;
    outline: none !important;
    margin-bottom: 28px !important;
}
.gform_wrapper .gform_validation_errors h2.gform_submission_error {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: var(--wp--preset--font-size--normal);
    color: var(--wp--preset--color--primary);
}
.gform_wrapper .gform_validation_errors h2:before {
    content: "\e9ad";
    font-family: "icomoon" !important;
    font-size: 24px;
    line-height: 1;
}
.gform_wrapper .gform_validation_errors .gform-icon {
    display: none !important;
}
.gform_wrapper .gform_validation_errors ol {
    display: none;
}
.gform_wrapper .gfield .gform-field-label .gfield_required {
    color: var(--wp--preset--color--primary);
    display: none !important;
}

/* Datepicker */
body .xdsoft_datetimepicker {
    box-shadow: none !important;
    border: 1px solid var(--wp--preset--color--contrast);
    border-radius: 0;
    padding: var(--wp--preset--spacing--20);
    font-family: var(--wp--custom--global--typography--font-family--body);
}
body .xdsoft_datetimepicker .xdsoft_label i,
body .xdsoft_datetimepicker .xdsoft_today_button {
    display: none;
}
body .xdsoft_datetimepicker .xdsoft_calendar table thead,
body .xdsoft_datetimepicker .xdsoft_calendar table tbody,
body .xdsoft_datetimepicker .xdsoft_calendar table tfoot,
body .xdsoft_datetimepicker .xdsoft_calendar table th,
body .xdsoft_datetimepicker .xdsoft_calendar table td,
body .xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box>div>div,
body .xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box {
    border: 0;
    background: transparent;
    color: var(--wp--preset--color--contrast);
    
}
body .xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box>div>div {
    padding: 3px;
    background-color: var(--wp--preset--color--base-variant);
    height: auto;
    line-height: auto;
    font-size: 14px
}
@media (min-width: 784px) {
    body .xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box>div>div {
        padding: 5px var(--wp--preset--spacing--20);
    }
}
body .xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_default,
body .xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_current,
body .xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box>div>div.xdsoft_current {
    background: var(--wp--preset--color--primary);
    color: var(--wp--preset--color--base);
    box-shadow: none;
}
body .xdsoft_datetimepicker .xdsoft_calendar td:hover,
body .xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box>div>div:hover {
    background: var(--wp--preset--color--secondary) !important;
    color: var(--wp--preset--color--base) !important;
}

body .xdsoft_datetimepicker .xdsoft_next,
body .xdsoft_datetimepicker .xdsoft_prev {
    opacity: 1;
    background: transparent;
    width: 24px !important;
}

body .xdsoft_datetimepicker .xdsoft_next:before,
body .xdsoft_datetimepicker .xdsoft_prev:before {
    content: "";
    font-family: "icomoon";
    font-size: var(--wp--preset--font-size--medium);
    color: var(--wp--preset--color--primary);
    text-indent: 0;
    opacity: 1;
    display: block;
}
body .xdsoft_datetimepicker .xdsoft_prev:before {
    content: "\e974";
}
body .xdsoft_datetimepicker .xdsoft_next:before {
    content: "\e975";
}
body .xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_prev:before {
    content: "\e977";
}
body .xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_next:before {
    content: "\e973";
}
body .xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_prev,
body .xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_next {
    width: 100% !important;
    justify-content: center;
    height: 30px;
}
body .xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_prev,
body .xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_next {
    margin: 0 auto !important;
}
body .xdsoft_datetimepicker .xdsoft_datepicker.active+.xdsoft_timepicker {
    margin-bottom: 0;
    margin-top: 0;
}
body .xdsoft_datetimepicker .xdsoft_monthpicker {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
}
body .xdsoft_time_variant {
    gap: 0.5rem;
    display: grid;
}
body .xdsoft_datetimepicker .xdsoft_datepicker {
    width: 207px;
}
body .xdsoft_datetimepicker .xdsoft_timepicker {
    width: 75px;
}
@media (min-width: 784px) {
    body .xdsoft_time_variant {
      grid-template-columns: repeat(2, auto);
    }
    body .xdsoft_datetimepicker .xdsoft_timepicker,
    body .xdsoft_datetimepicker .xdsoft_datepicker {
        width: auto;
        max-width: 100%;
    }
}
body .xdsoft_datetimepicker .xdsoft_monthpicker .xdsoft_label,
body .xdsoft_datetimepicker .xdsoft_monthpicker button {
    flex: 0 0 auto;
    width: auto;
    margin: 0;
}
body .xdsoft_datetimepicker .xdsoft_next {
    order: 5;
}
body .xdsoft_datetimepicker .xdsoft_prev {
    order: 4;
    margin-left: auto !important;
}
body .xdsoft_datetimepicker .xdsoft_calendar td>div {
    padding: 3px;
    text-align: center;
}
@media (min-width: 784px) {
    body .xdsoft_datetimepicker .xdsoft_calendar td>div {
        padding: 7px;
    }
}
body .xdsoft_label {
    font-size: var(--wp--preset--font-size--normal) !important;
}
body .xdsoft_label.xdsoft_month {
    text-transform: capitalize;
}
body .xdsoft_datetimepicker .xdsoft_calendar td,
body .xdsoft_datetimepicker .xdsoft_calendar th {
    font-size: 14px;
}

/* Submit */
body .wp-site-blocks .entry-content .gform_wrapper form .gform_footer,
body .keuzehulp-tool .gform_wrapper form .gform-page-footer .gform-button-wrapper {
    display: inline-flex !important;
    position: relative !important;
    justify-content: center !important;
    align-items: center !important;
    overflow: hidden !important;
}

body .wp-site-blocks .entry-content .gform_wrapper form .gform_footer:before,
body .wp-site-blocks .entry-content .gform_wrapper form .gform_footer:after,
body .keuzehulp-tool .gform_wrapper form .gform-page-footer .gform-button-wrapper:before,
body .keuzehulp-tool .gform_wrapper form .gform-page-footer .gform-button-wrapper.next-wrapper:after {
    content: "\e914";
    font-family: "icomoon";
    position: absolute;
    width: calc(28px + 15px);
    height: 28px;
    display: flex;
    align-items: center;
    pointer-events: none;
    z-index: 30;
    font-size: var(--wp--preset--font-size--large);
    font-weight: 100;
    transition: all 0.3s ease-in-out;
    color: var(--wp--preset--color--base);
    transform: translateX(0);
    justify-content: flex-end;
}

body .wp-site-blocks .entry-content .gform_wrapper form[data-active-form] .gform_footer:before,
body .wp-site-blocks .entry-content .gform_wrapper form[data-active-form] .gform_footer:after,
body .keuzehulp-tool .gform_wrapper form .gform-page-footer[data-active-form] .gform-button-wrapper:before,
body .keuzehulp-tool .gform_wrapper form .gform-page-footer[data-active-form] .gform-button-wrapper.next-wrapper:after {
    content: "\e917";
    animation: spin 1s linear infinite;
    @keyframes spin {
        100% {
            transform: rotate(360deg);
        }
    }
}

body .wp-site-blocks .entry-content .gform_wrapper form .gform_footer:after,
body .keuzehulp-tool .gform_wrapper form .gform-page-footer .gform-button-wrapper.next-wrapper:after {
    right: var(--wp--preset--spacing--50);
    opacity: 1;
}

body .wp-site-blocks .entry-content .gform_wrapper form .gform_footer:before,
body .keuzehulp-tool .gform_wrapper form .gform-page-footer .gform-button-wrapper:before {
    left: -43px;
    opacity: 0;
    padding-right: 0;
    transform: translateX(-28px);
}

body .keuzehulp-tool .gform_wrapper form .gform-page-footer .gform-button-wrapper.prev-wrapper:before {
    content: "\e913";
    left: 15px;
    opacity: 1;
    color: var(--wp--preset--color--primary);
    transform: translateX(0);
}

/* Hover states */
body .wp-site-blocks .entry-content .gform_wrapper form .gform_footer:has( input:hover ):before,
body .keuzehulp-tool .gform_wrapper form .gform-page-footer .gform-button-wrapper.next-wrapper:has( input:hover ):before {
    left: 15px;
    opacity: 1;
    transform: translateX(0);
}

body .wp-site-blocks .entry-content .gform_wrapper form .gform_footer:has( input:hover ):after,
body .keuzehulp-tool .gform_wrapper form .gform-page-footer .gform-button-wrapper.next-wrapper:has( input:hover ):after{
    right: -43px;
    opacity: 0;
    transform: translateX(28px);
}

body .wp-site-blocks .entry-content .gform_wrapper form .gform_footer input[type="submit"].gform_button,
body .keuzehulp-tool .gform_wrapper form .gform-page-footer .gform-button-wrapper input.button {
    width: 100% !important;
    position: relative !important;
    z-index: 2 !important;
    display: inline-flex !important;
    align-items: center !important;
    border-radius: 0 !important;
    transition: all 0.3s ease-in-out;
    font-size: var(--wp--preset--font-size--medium) !important;
    justify-content: center !important;
    gap: 0 !important;
    background-color: var(--wp--preset--color--contrast) !important;
    color: var(--wp--preset--color--base) !important;
    padding-top: var(--wp--preset--spacing--30 ) !important;
    padding-bottom: var(--wp--preset--spacing--30) !important;
    padding-left: var(--wp--preset--spacing--50) !important;
    padding-right: calc(var(--wp--preset--spacing--50) + 43px) !important;
    border: 2px solid var(--wp--preset--color--contrast) !important;
    cursor: pointer !important;
    overflow: hidden !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
}

body .keuzehulp-tool .gform_wrapper form .gform-page-footer .gform-button-wrapper input.button {
    background-color: var(--wp--preset--color--primary) !important;
    border-color: var(--wp--preset--color--primary) !important;
}

@media (max-width: 782px) {
    body .wp-site-blocks .entry-content .gform_wrapper form .gform_footer input[type="submit"].gform_button,
    body .keuzehulp-tool .gform_wrapper form .gform-page-footer .gform-button-wrapper input.button {
        font-size: 18px !important;
    }
}

body .wp-site-blocks .entry-content .gform_wrapper form .gform_footer input[type="submit"].gform_button:hover,
body .keuzehulp-tool .gform_wrapper form .gform-page-footer .gform-button-wrapper input.button:hover {
    padding-left: calc(var(--wp--preset--spacing--50) + 43px) !important;
    padding-right: var(--wp--preset--spacing--50) !important;
    background-color: var(--wp--preset--color--secondary) !important;
    border-color: var(--wp--preset--color--secondary) !important;
}

body .keuzehulp-tool .gform_wrapper form .gform-page-footer .gform-button-wrapper.prev-wrapper input.button {
    padding-left: calc(var(--wp--preset--spacing--50) + 43px) !important;
    padding-right: var(--wp--preset--spacing--50) !important;
    background-color: transparent !important;
    color: var(--wp--preset--color--primary) !important;
    border-color: var(--wp--preset--color--primary) !important;
}

/* Succes */
.gform_wrapper .gform_confirmation_message {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: var(--wp--preset--font-size--normal);
    color: var(--wp--preset--color--primary);
}
.gform_wrapper .gform_confirmation_message:before {
    content: "\e96d";
    font-family: "icomoon" !important;
    font-size: 24px;
    line-height: 1;
}

/* Keuzehulp */
.keuzehulp-tool .gform_wrapper .gfield .ginput_container.ginput_container_radio .gfield_radio,
.keuzehulp-tool .gform_wrapper .gfield .ginput_container.ginput_container_checkbox .gfield_checkbox  {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    gap: var(--wp--preset--spacing--40);
}
.keuzehulp-tool .gform_wrapper .gfield .ginput_container.ginput_container_radio .gfield_radio div,
.keuzehulp-tool .gform_wrapper .gfield .ginput_container.ginput_container_checkbox .gfield_checkbox div {
    display: inline-flex;
    align-items: center;
    gap: var(--wp--preset--spacing--30);
    padding: 16px var(--wp--preset--spacing--30);
    background-color: var(--wp--preset--color--base);
    position: relative;
}
.keuzehulp-tool .gform_wrapper .gfield .ginput_container.ginput_container_radio input[type="radio"],
.keuzehulp-tool .gform_wrapper .gfield .ginput_container.ginput_container_checkbox input[type="checkbox"] {
    opacity: 1;
    border: 0;
    top: inherit;
    position: relative;
    outline: none !important;
    box-shadow: none;
    width: 24px;
    height: 24px;
    flex: 0 0 24px;
    background-color: var(--wp--preset--color--base-variant);
}
.keuzehulp-tool .gform_wrapper .gfield .gfield_radio label.gform-field-label,
.keuzehulp-tool .gform_wrapper .gfield .gfield_checkbox label.gform-field-label {
    margin: 0;
}
.keuzehulp-tool .gform_wrapper .gfield .ginput_container.ginput_container_radio label.gform-field-label:before,
.keuzehulp-tool .gform_wrapper .gfield .ginput_container.ginput_container_checkbox label.gform-field-label:before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    border: 0;
    pointer-events: all;
    z-index: 10;
    cursor: pointer;
    border: 2px solid var(--wp--preset--color--secondary);
    border-radius: 0;
    background-color: transparent;
}
.keuzehulp-tool .gform_wrapper .gfield .ginput_container.ginput_container_radio label.gform-field-label:after {
    display: none;
}

.keuzehulp-tool .gform_wrapper .gfield .ginput_container.ginput_container_radio label.gform-field-label,
.keuzehulp-tool .gform_wrapper .gfield .ginput_container.ginput_container_checkbox label.gform-field-label {
    color: var(--wp--preset--color--contrast);
    font-size: var(--wp--preset--font-size--medium);
}

/* Radio Checked */
.keuzehulp-tool .gform_wrapper .gfield .ginput_container.ginput_container_radio .gfield_radio div:has(input[type="radio"]:checked),
.keuzehulp-tool .gform_wrapper .gfield .ginput_container.ginput_container_checkbox .gfield_checkbox div:has(input[type="checkbox"]:checked) {
    background-color: var(--wp--preset--color--secondary);
    border-color: var(--wp--preset--color--secondary);
}
.keuzehulp-tool .gform_wrapper .gfield .ginput_container.ginput_container_radio  input[type="radio"]:checked + label.gform-field-label,
.keuzehulp-tool .gform_wrapper .gfield .ginput_container.ginput_container_checkbox  input[type="checkbox"]:checked + label.gform-field-label {
    color: var(--wp--preset--color--base);
}
.keuzehulp-tool .gform_wrapper .gfield .ginput_container.ginput_container_radio  input[type="radio"]:checked,
.keuzehulp-tool .gform_wrapper .gfield .ginput_container.ginput_container_checkbox  input[type="checkbox"]:checked {
    border: 0;
    background-color: var(--wp--preset--color--base);
}
.keuzehulp-tool .gform_wrapper .gfield .ginput_container.ginput_container_radio  input[type="radio"]:before {
    background-color: var(--wp--preset--color--primary);
    width: 15px;
    height: 15px;
    top: 50%;
    left: 50%;
    position: absolute;
    transform: translate(-50%, -50%);
}
.keuzehulp-tool .gform_wrapper .gfield .ginput_container.ginput_container_checkbox input[type="checkbox"]:before {
    content: "\e96e";
    font-family: "icomoon" !important;
    font-size: 24px;
    line-height: 1;
    color: var(--wp--preset--color--primary);
}

/* Hide progress bar */
.keuzehulp-tool .gform_wrapper .gf_progressbar {
    display: none;
}

/* Keuzehulp titles */
.keuzehulp-tool .gf_progressbar_wrapper p.gf_progressbar_title {
    color: var(--wp--preset--color--primary);
    font-size: var(--wp--preset--font-size--medium);
    font-weight: 700;
    margin-bottom: var(--wp--preset--spacing--40);
}
.keuzehulp-tool .gf_page_steps,
.keuzehulp-tool .gf_progressbar_wrapper {
    margin-bottom: 0 !important;
}
.keuzehulp-tool .field_description_above.gfield--type-choice:where(:not(:has(.gfield_choice_limit_message))) .gfield_description:where(:not(.field_validation_above.gfield_error [class=gfield_description]):not(.gfield_validation_message)) {
    margin-bottom: var(--wp--preset--spacing--50) !important;
    font-size: var(--wp--preset--font-size--normal);
    color: var(--wp--preset--color--contrast);
}
.keuzehulp-tool legend.gform-field-label.gfield_label_before_complex,
.keuzehulp-tool .gform_wrapper h2 {
    color: var(--wp--preset--color--contrast);
    font-size: var(--wp--preset--font-size--extra-large);
    line-height: 1;
    font-weight: 800;
    margin: 0;
    margin-bottom: var(--wp--preset--spacing--60);
}
.keuzehulp-tool .gform_wrapper .gform-page-footer {
    justify-content: flex-end;
    gap: var(--wp--preset--spacing--60);
    margin-top: var(--wp--preset--spacing--60);
}