.custom_form_block {
    padding-top: var(--headline);
    padding-bottom: var(--headline);
    background-color: var(--gray);
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 3rem;
}

/* .custom_form_block.bricks {
    background-image: url('../../../img/Steine.svg');
    background-position: center;
    background-size: contain;
    background-attachment: fixed;
    background-color: var(--white);
} */

/* DAS SIEHT NICHT GUT AUS */
/* .custom_form_block.bricks {
    background-image: url(../../../img/strahlen.svg);
    background-position: left;
    background-size: cover;
    background-attachment: fixed;
    background-color: var(--white);
    background-repeat: no-repeat;
} */

.custom_form_block.bricks {
    background-color: var(--gray);
}

.bricks .custom-block-wrapper {
    box-shadow: var(--shadow);
}

.custom_form_block > * {
    padding-left: calc(var(--outer_padding, calc(var(--column) + var(--gap))));
    padding-right: calc(var(--outer_padding, calc(var(--column) + var(--gap))));
}

.custom_form_block .form-wrapper.flex {
    display: flex;
    background-color: white;
    padding-top: inherit;
    padding-bottom: inherit;
    gap: var(--gap);
    justify-content: space-between;
    align-items: flex-start;
}

.custom_form_block .image {
    width: var(--col_3);
}

.custom_form_block .text-wrapper-form {
    width: var(--col_7);
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: start;
    gap: var(--gap);
}

.custom_form_block .text-wrapper-form:only-child {
    width: 100%;
}

.custom_form_block p > small:only-child {
    display: block;
    width: fit-content;
    max-width: 100%;
    margin-left: auto;
}

.custom_form_block form {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    align-items: flex-start;
    gap: var(--gap);
}

.custom_form_block form .accordion {
    display: flex;
    flex: inherit;
    align-items: flex-start;
    gap: inherit;
    flex-wrap: wrap;
}

.custom_form_block form > *:not(p):not(fieldset),
.custom_form_block form > p:not([class]) {
    width: 100%;
}

.custom_form_block h3 {
    margin-top: 1em;
}

.custom_form_block h3,
.custom_form_block legend {
    color: var(--blue);
    font-weight: var(--bold);
}

.custom_form_block legend {
    min-height: 2.66em;
    display: flex;
    align-items: flex-end;
    margin-bottom: 1em;
}

.custom_form_block fieldset,
.custom_form_block .form_row {
    display: flex;
    flex-direction: row;
    width: var(--col_3);
    flex-grow: 1;
    margin: 0;
}
.custom_form_block .form_row.full {
    width: 100%;
}

.custom_form_block .form_row.full span.flex {
    display: flex;
    flex-direction: column;
    width: 100%;
    background-color: var(--gray);
}
.custom_form_block .form_row.full span.flex small {
    padding: 0 1em 0.6em 1.2em;
    font-size: 1.4rem;
}
.custom_form_block .wpcf7-form-control-wrap {
    flex-shrink: 1;
    flex-grow: 1;
    display: block;
}

.custom_form_block .form_row label {
    background-color: var(--blue);
    color: var(--white);
    padding: 1rem 2rem;
    font-weight: var(--bold);
    min-width: 14rem;
    width: min-content;
    max-width: 50%;
}

.custom_form_block label strong {
    font-size: var(--textsizemobile);
    color: var(--blue);
}

.custom_form_block textarea,
.custom_form_block select,
.custom_form_block
    input:not([type='checkbox']):not([type='radio']):not([type='submit']) {
    background-color: var(--gray);
    margin: 0;
    font: inherit;
    padding: 0.5em 1em;
    display: block;
    width: 100%;
    max-width: 100%;
    border-radius: 0;
    appearance: none;
}
.custom_form_block .wpcf7-form-control-wrap > input,
.custom_form_block .wpcf7-form-control-wrap > select,
.custom_form_block .wpcf7-form-control-wrap > #message {
    height: 100%;
}

.custom_form_block .wpcf7-checkbox {
    display: flex;
    flex-direction: column;
    gap: 0.5em;
}

.custom_form_block .wpcf7-form:not(.submitting) .wpcf7-spinner {
    display: none;
}

.custom_form_block .wpcf7-spinner::before {
    /* background-color: red; */
}

.custom_form_block .wpcf7-list-item {
    margin: 0;
}

.custom_form_block .wpcf7-checkbox label {
    display: flex;
    gap: 0.5em;
    align-items: baseline;
}

.custom_form_block .wpcf7-list-item-label {
    font-size: var(--textsizemobile);
    display: inline-block;
    width: fit-content;
    max-width: 100%;
}

.custom_form_block [type='checkbox'] {
    border-width: 2px;
    border-style: inset;
    border-color: light-dark(var(--blue), var(--blue));
    border-image: initial;
}

.custom_form_block .wpcf7-not-valid:not(:last-child) {
    /* padding-bottom: ; */
    height: auto !important;
}

.custom_form_block .wpcf7-not-valid-tip {
    font-size: var(--textsizemobile);
    margin-top: 0.5em;
}

.custom_form_block .form_row .wpcf7-not-valid-tip {
    display: block;
    padding: 0.25em 1em;
    background-color: var(--gray);
    margin-top: 0;
}

.widget_block .custom_form_block {
    padding-left: var(--padding);
    padding-right: var(--padding);
}

.custom_form_block .accordion-toggle {
    position: relative;
    cursor: pointer;
}

.custom_form_block .accordion-toggle:after {
    content: '';
    /* position: absolute; */
    display: inline-block;
    right: 1em;
    top: 50%;
    width: 1.5em;
    height: 1em;
    background-color: var(--blue);
    clip-path: polygon(0% 0%, 100% 0%, 50% 100%);
    transition: var(--transition);
    margin: 0 0 0 1em;
}

.custom_form_block .accordion-toggle.clicked:after {
    transform: rotate(180deg);
}

@media screen and (max-width: 1080px) {
    .custom_form_block .form-wrapper.flex {
        flex-direction: column;
        padding: 0;
    }
    .custom_form_block .form_row.full {
        flex-wrap: nowrap;
    }

    .custom_form_block .form-wrapper.flex > * {
        width: 100%;
        overflow: hidden;
    }

    .custom_form_block .image img {
        width: 100%;
        max-height: 60vmin;
        object-fit: cover;
        object-position: top;
    }

    .custom_form_block .text-wrapper-form {
        padding: var(--padding);
    }

    .custom_form_block fieldset,
    .custom_form_block .form_row {
        width: 35rem;
        flex-grow: 1;
        max-width: 100%;
    }

    .custom_form_block fieldset,
    .custom_form_block .form_row {
        width: 100%;
        flex-wrap: wrap;
    }

    .custom_form_block .form_row label,
    .custom_form_block fieldset,
    .custom_form_block .form_row > * {
        /* flex-grow: 1; */
        max-width: 100%;
    }
}

@media screen and (max-width: 606px) {
    .custom_form_block .form_row label,
    .custom_form_block fieldset,
    .custom_form_block .form_row > * {
        flex-grow: 1;
        max-width: 100%;
    }

    .custom_form_block .image img {
        width: 100%;
        max-height: 75vmin;
        object-fit: cover;
        object-position: top;
    }
    .custom_form_block .form_row.full {
        flex-wrap: wrap;
    }
}
