:root {
    --ysg-button-bg: var(--tcb-skin-color-23);
    --ysg-button-color: var(--tcb-skin-color-4);
    --ysg-border-color: #212121;
    --ysg-border-rad: 5px;
    --ysg-input-color: #222222;
    --ysg-placeholder-color: #e1e1e1;
    --ysg-label-color: #222222;
    --ysg-bg-hover: var(--tcb-skin-color-0);
    --ysg-button-hover-color: #ffffff;
    --ysg-padding: 0.8rem;
}

.gform_required_legend {
    display: none !important;
}

body .gform_wrapper .gform_footer input[type=submit],
.gform-theme-button:not(.gform_previous_button),
.gform_button {
    border: none !important;
    box-shadow: none !important;
    background-color: var(--ysg-button-bg) !important;
    color: var(--ysg-button-color) !important;
    font-family: 'Montserrat-Bold', Arial, Helvetica, sans-serif !important;
    font-size: 20px !important;
    letter-spacing: 2px !important;
    transition: background-color 0.3s ease, color 0.3s ease !important;
}

body .gform_wrapper .gform_footer input[type=submit]:hover,
.gform-theme-button:hover,
.gform_button:hover {
    background-color: var(--ysg-bg-hover) !important;
    color: var(--ysg-button-hover-color) !important;
}

.gform_previous_button {
    font-weight: 700 !important;
}

.gform-theme--api,
.gform-theme--framework .gform_fields {
    --gf-ctrl-outline-offset: 0px;
    --gf-ctrl-outline-color-focus: var(--tcb-skin-color-0);
    --gf-ctrl-outline-width-focus: 1px;
    --gf-font-weight-secondary: 700;
}

legend.gfield_label,
label.gfield_label {
    font-weight: 700 !important;
}

.gform-theme--foundation .gform_fields {
    row-gap: 1rem !important;
}

.gform-theme--foundation form.bc_with_labels .gform_fields {
    row-gap: 1.5rem !important;
}

.gform-theme--framework ::placeholder {
    opacity: 0.7;
    font-weight: bold;
    letter-spacing: 1px;
}

.gform-theme--framework :is(input, textarea, select) {
    letter-spacing: 1px !important;
    font-weight: bold !important;
}

.gform-theme--framework .gfield_list_group_item::before,
.gform-theme--framework .gform-field-label:where(:not([class*=gform-field-label--type-])) {
    --gf-local-margin-y: 0 0 !important;
}

.ginput_container {
    margin-top: 0.5rem !important;
}

.ysg_button {
    display: flex;
    align-items: flex-start;
}

.ysg_center {
    justify-content: center;
}

.ysg_left {
    justify-content: left;
}

.ysg_right {
    justify-content: right;
}

.ysg_full a {
    flex: 1;
    text-align: center;
}

@media screen and (max-width:768px) {

    .gform-theme--foundation .gfield .ginput_password.small,
    .gform-theme--foundation .gfield input.small,
    .gform-theme--foundation .gfield select.small {
        inline-size: 100% !important;
    }
}