/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme/
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: 1.0.1
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
*/

/* Textelemente */
.logo {
    font-size: 1.1em;
    font-weight: 600;
}
.pre_headline {
    position: relative;
    color: var(--e-global-color-7968779);
    font-weight: 500;
    padding: 0 5px;
    font-size: 0.9em;
}
.pre_headline:before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: var(--e-global-color-7968779);
    z-index: 1;
    opacity: 0.1;
    border-radius: 3px;
}
.small_text {
    font-size: 0.9em;
}
.small_text_absolut {
    font-size: 14.4px;
    font-weight: 400;
    line-height: 1.5em;
}
.super_small_text {
    font-size: 0.7em;
    line-height: 1.5em;
}
.bold_text {
    font-weight: 500;
}
h1, h2, h3, h4, h5, h6 {
    margin: 0;
}
/* Spacing */
.padded_section {
    padding: 80px 20px;
}
.padded_section .e-con-inner {
    padding: 0;
}
.padded_section.first_section {
    padding-top: 60px;
}
.padded_section.last_section {
    padding-bottom: 0px;
}
.padded_section.cta_section {
    padding: 320px 20px 320px 20px;
}
.padded_section.trailing_section {
    padding-top: 0px;
}
.narrow-section {
    width: 100%;
    max-width: 600px;
}
.extra-narrow-section {
    width: 100%;
    max-width: 600px;
}
/* Designelemente */
.gradient_background {
    background: RGBA(0, 122, 255);
    background: linear-gradient(0deg, rgba(0, 122, 255, 0) 0%, rgba(0, 122, 255, 0.1) 50%, rgba(0, 122, 255, 0) 100%);
}
.highlighted_text {
    color: var(--e-global-color-7968779);
}
.border_bottom_section {
    border-bottom: 1px solid var(--e-global-color-text);
}
/* UI-Elemente */
.graphic_container, .custom_logo_image {
    border: 1px solid var(--e-global-color-text);
    border-radius: 5px;
    background-color: var(--e-global-color-secondary);
}
.graphic_container.funktionen {
    padding: 40px;
    aspect-ratio: 16/9;
}
.graphic_container.ressourcen {
    padding: 40px;
    aspect-ratio: 4/3;
}
.graphic_container.icon, .custom_logo_image {
    line-height: 0;
    padding: 10px;
    width: 39px;
    height: 39px;
    aspect-ratio: 1;
}
.graphic_container.icon:not(.not_blue) svg {
    stroke: var(--e-global-color-7968779);
}
.graphic_container.highlighted_icon {
    border: 1px solid var(--e-global-color-7968779);
    border-radius: 5px;
    background-color: var(--e-global-color-7968779);
}
.graphic_container.highlighted_icon svg {
    stroke: var(--e-global-color-primary);
}
/* Forms */
input::placeholder, textarea::placeholder {
    color: var(--e-global-color-accent) !important;
    opacity: 0 !important;
}
textarea {
    resize: none; 
}
input:hover,textarea:hover,input:focus,textarea:focus {
    outline: none !important;
}
.elementor-message {
    margin: 10px 0px 0px 0px !important;
    font-weight: 500 !important;
    font-size: 0.9em !important;
}
.elementor-message:before {
    display: none !important;
}
/* Tabs */
.e-n-tabs-heading {
    background-color: var(--e-global-color-primary);
    border: solid 1px var(--e-global-color-text);
    padding: 3px;
    border-radius: 100px;
}
/* Custom */
.systemarchitektur_graphic_grid {
    grid-template-columns: 1.33fr 1fr!important;
}
.graphic_container.funktionen.no_border {
    border-color: var(--e-global-color-secondary);
}
.elementor-image-box-img {
    aspect-ratio: 1;
    width: 75px;
    height: 75px;
}
.elementor-widget-image-box .elementor-image-box-wrapper {
    display: flex !important;
    flex-direction: row !important;
    justify-content: center;
    align-items: center;
    gap: 20px;
}
.e-opened svg, .e-closed svg {
    stroke: var(--e-global-color-7968779);
}
.custom_table > .elementor-element {
    background-color: var(--e-global-color-primary);
    padding: 20px 0;
}
.custom_table > .elementor-element > .elementor-element:not(.graphic_container.icon, .elementor-widget-divider) {
    padding: 0 20px;
}
.custom_table > .elementor-element > .elementor-element.graphic_container.icon {
    margin: 0 20px;
}

/* Laptop */
@media (max-width: 1600px) {
    .padded_section.cta_section {
        padding: 240px 20px 240px 20px;
    }
}
/* Tablet */
@media (max-width: 1024px) {
    .systemarchitektur_graphic_grid {
        grid-template-columns: 1fr!important;
    }
    .padded_section.cta_section {
        padding: 160px 20px 160px 20px;
    }
}
/* Mobil */
@media (min-width: 767px) {
    .show_on_mobile {
        display: none;
    }
    .centered_tabs_heading .e-n-tabs-heading {
        width: 257px;
        align-self: center;
    }
    .centered_tabs_heading .e-n-tabs-heading .e-n-tab-title-text {
        font-size: 0.9em;
    }
}
@media (max-width: 767px) {
    .elementor-widget-icon-box.elementor-mobile-position-block-start .elementor-icon-box-wrapper {
        align-items: center !important;
        flex-direction: row;
    }
    .elementor-widget-icon-box.elementor-position-inline-end .elementor-icon-box-wrapper {
        flex-direction: row-reverse;
    }
    .hide_on_mobile {
        display: none;
    }
    .graphic_container.ressourcen {
        aspect-ratio: 16 / 9;
		height: auto !important;
		min-height: 0 !important;
    }
}