/* 
Theme Name: Steuerberater
Description: Steuerberater is a child theme of Hello Elementor, created by Elementor team
Author: Vierdimensional
Author URI: https://vierdimensional.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: schnekenburger
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 */

strong {
    font-weight: 700;
}

.elementor-widget-text-editor .elementor-widget-container > *:last-child {
    margin-bottom: 0;
}

.social-media-btn .elementor-button-content-wrapper {
    align-items: center;
    line-height: 1em;
}

.social-media-btn .elementor-button-icon svg {
    font-size: 2em;
}

.elementor-widget-text-editor ul {
    padding-left: 0;
}

.elementor-widget-text-editor ul li {
    padding-left: 20px;
    margin-left: 10px;
    margin-bottom: 1em;
}

.elementor-widget-text-editor ul li::marker {
    content: '\25A0';
    color: var(--e-global-color-primary);
}

.elementor-widget-n-menu .e-n-menu-content {
    z-index: 4 !important;
}

.e-n-menu #burger-menu {
    padding-right: 0;
    z-index: 5;
}

.e-n-menu #burger-menu.clicked .icon-inactive {
    display: none;
}


.e-n-menu #burger-menu.clicked .icon-active {
    opacity: 1;
    width: 26px;
    justify-content: flex-end;
}

.e-n-menu #burger-menu .e-n-menu-icon * {
    cursor: pointer !important;
}

.e-n-menu #burger-menu .e-n-menu-icon .icon-inactive svg {
    width: 26px !important;
}

.e-n-menu .menu-item.menu-item-has-children a .sub-arrow {
    pointer-events: none;
}

.e-n-menu #burger-menu .e-n-menu-dropdown-icon,
.e-n-menu .menu-item.menu-item-has-children a .sub-arrow:not(:first-child),
.e-n-menu #burger-menu .e-n-menu-title-text {
    display: none;
}

.e-n-menu-content.e-active {
    top: -17px !important;
}

.e-n-menu .e-n-menu-heading > li .e-n-menu-title-text {
    font-weight: 500 !important;
}

.e-n-menu .elementor-nav-menu .elementor-item-active,
.e-n-menu .elementor-nav-menu .current-menu-parent > a {
    font-weight: 600 !important;
}

.e-n-menu .menu-item.menu-item-has-children a .sub-arrow:first-child i {
    background: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDUuOCAxMy44Ij4KICA8cGF0aCBkPSJNNS44LDYuOWMwLDAuMSwwLDAuMSwwLDAuMmwtMy4zLDQuMi0yLDIuNUwwLDEzLjVsNC45LTYuM3YtLjVMMCwwLjMuNCwwbDUuMyw2LjdzMC4xLDAuMSwwLDAuMloiIGZpbGw9IiM4NDgzODM4Ii8+Cjwvc3ZnPgo=') no-repeat;
    background-size: contain;
    width: 6px;
    height: 14px;
}

.e-n-menu .menu-item.menu-item-has-children a.has-submenu {
    justify-content: space-between;
    gap: 40px;
}

.e-n-menu .elementor-nav-menu--main .elementor-nav-menu ul {
    min-width: 230px !important;
    transform: translateX(20%);
}

.e-n-menu .elementor-nav-menu > li {
    border-bottom: 1px solid #ddd;
    padding-bottom: 15px;
}

.elementor-widget-testimonial .elementor-testimonial-wrapper {
    display: flex;
    flex-direction: column;
}

.elementor-widget-testimonial .elementor-testimonial-content {
    order: 1;
}

.elementor-widget-n-accordion .e-n-accordion-item:not(:first-child)::before,
.elementor-widget-n-accordion .e-n-accordion-item:last-child::after {
    content: "";
    width: calc(100% - 40px);
    height: 1px;
    background: var(--e-global-color-5f8f274);
}

.jet-headline--direction-vertical .jet-headline__first {
    flex-direction: row-reverse;
}

.jet-headline--direction-vertical .jet-headline__first .jet-headline__deco {
    margin-right: 0;
    transform: translate(-10%, -55%);
    visibility: hidden;
    opacity: 0;
    transition: opacity 0.3s ease, visibility 0.3s ease;
}

.jet-headline--direction-horizontal {
    display: inline-block;
}

.jet-headline--direction-horizontal .jet-headline__part {
    display: inline !important;
}

.hover-effekt {
    cursor: pointer;
}

.hover-effekt:hover .jet-headline--direction-vertical .jet-headline__first .jet-headline__deco {
    visibility: visible;
    opacity: 1;
}

.mdp-crawler-elementor-ticker-content .mdp-crawler-elementor-ticker-item:nth-child(2n) a {
    font-weight: var(--e-global-typography-accent-font-weight);
}

@media (max-width: 1080px) {
    .e-n-menu #burger-menu .e-n-menu-icon svg path {
        fill: var(--e-global-color-primary);
    }

    .e-n-menu .menu-item.menu-item-has-children a .sub-arrow:first-child {
        transform: rotate(90deg) translateX(-25%);
    }

    .e-n-menu .elementor-nav-menu > li {
        padding-bottom: 12px;
        margin-bottom: 12px;
    }

    .e-n-menu-content.e-active {
        top: -26px !important;
    }
}

@media (max-width: 767px) {
    .elementor-nav-menu__align-start.items-centered  .elementor-nav-menu--layout-vertical ul li a {
        justify-content: center;
    }
}


/* Contact Form CSS Styles */


.cf-container {
    display: flex;
    flex-wrap: wrap;
}

.cf-col-6,
.cf-col-12 {
    padding: 0 15px;
    margin-bottom: 20px;
}

.cf-col-6 {
    flex: 0 0 50%;
    max-width: 50%;
}

.cf-col-12 {
    flex: 0 0 100%;
    max-width: 100%;
}

/* Styling für Input-Felder */
.wpcf7-form-control:not(.wpcf7-submit):not(.wpcf7-checkbox):not(.wpcf7-acceptance) {
    width: 100%;
    padding: 10px 0;
    border: none;
    border-bottom: 1px solid #ccc;
    background-color: transparent;
    font-family: inherit;
    font-size: 16px;
}

/* Styling für Textarea */
textarea.wpcf7-form-control {
    height: 100px;
    resize: vertical;
}

/* Styling für Checkbox-Container */
.wpcf7-checkbox,
.wpcf7-acceptance {
    display: block;
    margin-top: 5px;
}

/* Styling für Submit-Button */
.wpcf7-submit {
    background-color: #290F02;
    color: white;
    border: none;
    padding: 10px 30px;
    cursor: pointer;
    font-family: inherit;
    font-size: 16px;
}

/* Fokus-Styling */
.wpcf7-form-control:focus {
    outline: none;
    border-bottom-color: #290F02;
}

/* Responsive-Anpassungen */
@media (max-width: 768px) {
    .cf-col-6 {
        flex: 0 0 100%;
        max-width: 100%;
    }
}
