/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */
.sub-title {
    padding-left: 16px !important;
    position: relative;
}

.sub-title:before {
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--e-global-color-secondary);
    transform: translate(0, -50%);
}

.sub-title.dark:before {
    background: var(--e-global-color-primary);
}

.collaboration-item {
    flex: 0 0 25%;
    max-width: 25%;
}

.collaboration-item .elementor-widget-icon-box .elementor-icon-box-content {
    width: 90%;
    padding-left: 17px;
}

.collaboration-item .elementor-divider-separator:before {
    content: '';
    position: absolute;
    top: 50%;
    left: 17px;
    border: 1px solid var(--e-global-color-secondary);
    width: 8px;
    height: 8px;
    border-radius: 50%;
    transform: translate(0, -50%);
    background: var(--e-global-color-primary);
}

.collaboration-item:first-child .elementor-divider-separator:before {
    left: 0px;
    background: var(--e-global-color-secondary);
}

.collaboration-item:last-child .elementor-divider-separator:before {
    background: var(--e-global-color-secondary);
}

.collaboration-item:first-child .elementor-widget-icon-box .elementor-icon-box-content {
    padding-left: 0;
}

.wohnkonzept-item {
    flex: 0 0 calc((100% - 48px) / 3);
    max-width: calc((100% - 48px) / 3);
}

.mehr-ertrag-item {
    width: 100%;
    max-width: 25%;
}

/*Kontakt Form*/
.kontakt-form .wpforms-container-full:not(:empty) {
    margin: 0;
}
.kontakt-form .wpforms-container-full .wpforms-field {
    padding: 0;
}
.kontakt-form .wpforms-container-full .wpforms-field-container {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    gap: 24px 12px;
}
.kontakt-form .wpforms-container-full .wpforms-field-text,
.kontakt-form .wpforms-container-full .wpforms-field-phone,
.kontakt-form .wpforms-container-full .wpforms-field-email {
    flex: 0 0 calc( (100% - 12px) / 2 );
    max-width: calc( (100% - 12px) / 2 );
}
.kontakt-form .wpforms-container-full .wpforms-field-textarea {
	flex: 0 0 100%;
	max-width: 100%;
}
.kontakt-form .wpforms-container-full .wpforms-submit-container {
    margin-top: 24px !important;
    text-align: center;
}
.kontakt-form .wpforms-container-full .wpforms-submit-container .wpforms-submit {
	font-family: var(--e-global-typography-accent-font-family), Sans-serif;
    font-size: var(--e-global-typography-accent-font-size);
    font-weight: var(--e-global-typography-accent-font-weight);
    text-transform: var(--e-global-typography-accent-text-transform);
    line-height: var(--e-global-typography-accent-line-height);
    letter-spacing: var(--e-global-typography-accent-letter-spacing);
	padding: 12px 32px 12px 32px;
	height: 48px;
}
.kontakt-form .wpforms-container-full .wpforms-submit-container .wpforms-submit:hover {
	background: var(--e-global-color-text);
	color: var(--e-global-color-primary);
}
.kontakt-form .wpforms-container-full .wpforms-field .wpforms-field-label {
    margin: 0;
    font-family: var(--e-global-typography-accent-font-family);
    font-size: var(--e-global-typography-accent-font-size);
    font-weight: var(--e-global-typography-accent-font-weight);
    text-transform: var(--e-global-typography-accent-text-transform);
    line-height: var(--e-global-typography-accent-line-height);
    letter-spacing: var(--e-global-typography-accent-letter-spacing);
	transition: 0.5s;
    position: absolute;
    top: 13px;
    left: 16px;
	background: transparent;
}
.kontakt-form .wpforms-container-full .wpforms-field.focused .wpforms-field-label {
	top: -12px;
	background: var(--e-global-color-accent);
	font-size: 90%;
}
.kontakt-form .wpforms-container-full .wpforms-field input::placeholder,
.kontakt-form .wpforms-container-full .wpforms-field textarea::placeholder {
	color: var( --e-global-color-primary ) !important;
	opacity: 1 !important;
}

.kontakt-form .wpforms-container-full .wpforms-field input[type="text"],
.kontakt-form .wpforms-container-full .wpforms-field input[type=email],
.kontakt-form .wpforms-container-full .wpforms-field input[type=tel],
.kontakt-form .wpforms-container-full .wpforms-field textarea {
	font-family: var(--e-global-typography-accent-font-family);
    font-size: var(--e-global-typography-accent-font-size);
    font-weight: var(--e-global-typography-accent-font-weight);
    text-transform: var(--e-global-typography-accent-text-transform);
    line-height: var(--e-global-typography-accent-line-height);
    letter-spacing: var(--e-global-typography-accent-letter-spacing);
}
.kontakt-form .wpforms-container-full .wpforms-field input[type=text]:focus,
.kontakt-form .wpforms-container-full .wpforms-field.focused input[type=text],
.kontakt-form .wpforms-container-full .wpforms-field input[type=text]:focus:invalid,
.kontakt-form .wpforms-container-full .wpforms-field.focused input[type=email],
.kontakt-form .wpforms-container-full .wpforms-field input[type=email]:focus,
.kontakt-form .wpforms-container-full .wpforms-field input[type=email]:focus:invalid,
.kontakt-form .wpforms-container-full .wpforms-field.focused input[type=tel],
.kontakt-form .wpforms-container-full .wpforms-field input[type=tel]:focus,
.kontakt-form .wpforms-container-full .wpforms-field input[type=tel]:focus:invalid,
.kontakt-form .wpforms-container-full .wpforms-field.focused textarea,
.kontakt-form .wpforms-container-full .wpforms-field textarea:focus {
	border-color: rgba(18, 32, 56, 0.4);
    box-shadow: none;
}

@media all and (max-width: 770px) {
    .collaboration-item {
        flex: 0 0 50%;
        max-width: 50%;
    }

    .collaboration-item .elementor-divider-separator:before {
        background: var(--e-global-color-secondary);
    }

    .collaboration-item:nth-child(3) .elementor-divider-separator:before {
        left: 0;
    }

    .collaboration-item .elementor-widget-icon-box .elementor-icon-box-content {
        width: 90%;
        padding-left: 0;
    }

    .mehr-ertrag-item {
        max-width: 50%;
    }
	.kontakt-form .wpforms-container-full .wpforms-field {
		overflow-x: visible !important;
	}
}

@media all and (max-width: 440px) {

    .collaboration-item,
    .wohnkonzept-item {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .collaboration-item .elementor-divider-separator:before {
        left: 0;
    }

    .mehr-ertrag-item {
        max-width: 100%;
    }
	.kontakt-form .wpforms-container-full .wpforms-field-text,
	.kontakt-form .wpforms-container-full .wpforms-field-phone,
	.kontakt-form .wpforms-container-full .wpforms-field-email {
		flex: 0 0 100%;
        max-width: 100%;
	}
}