/* 
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 */

.elementor-nav-menu .menu-item-has-children > a {
    display: grid;
    grid-template-columns: auto 16px;
    align-items: center;
    column-gap: 6px;
}

body {
    overflow-x: hidden;
}

header .elementor-nav-menu .menu-item.current-page-ancestor > a.elementor-item,
header .elementor-nav-menu .menu-item.current-menu-ancestor > a.elementor-item {
    color: #00ADC6 !important;
}
.elementor-sub-item.elementor-item-active {
    color: #00ADC6 !important;
}

.header-top-site {
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    background-color: #71D6DD29 !important;
    transition: height 0.3s cubic-bezier(0.25, 1, 0.5, 1),
    background-color 0.3s ease;
    height: 90px;
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    border-radius: 40px;
    overflow: hidden;
    position: relative;
}

.header-top-site:has(.menu-item-has-children:hover) {
    height: 440px !important;
    background-color: rgba(0, 38, 44, 0.4) !important;
}

.header-top-site .elementor-nav-menu--main .sub-menu {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    transform: none !important;
    background: transparent !important;
    visibility: hidden;
    opacity: 0;
    transition: opacity 0.2s ease;
    list-style: none;
    z-index: 9999;
    display: block !important;
    padding-top: 30px;
    padding-left: 0;
}

.header-top-site .menu-item-has-children:hover .sub-menu {
    visibility: visible;
    opacity: 1;
}
.header-top-site .elementor-sub-item {
    color: #ffffff !important;
    padding: 16px 0px !important;
    display: block !important;
    text-align: left !important;
    font-size: 16px;
    border-inline-start: 0px solid transparent !important;
}
.header-top-site .elementor-sub-item:hover {
    color: #00ADC6 !important;
}
.header-top-site .e-con-full {
    padding-top: 8px;
}

.tag-slide .elementor-post-info__terms-list {
    font-size: 0 !important;
    display: flex !important;
    flex-wrap: wrap;
    gap: 10px;
}
.tag-slide .elementor-post-info__terms-list-item {
    background: rgba(113, 214, 221, 0.16) !important;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    color: #FFF !important;
    font-weight: bold;
    padding: 5px 12px !important;
    border-radius: 30px !important;
    font-size: 14px !important;
    display: inline-block !important;
}

.filter-beitrage-list .elementor-loop-container > div.e-loop-item:first-of-type {
    grid-column: 1 / -1;
}

.kontakt-form .ff-btn.ff-btn-submit.ff-btn-md.ff_btn_style:hover {
    background: #FF0000;
    padding: 13px 33px;
    color: #EA664F !important;
}

/* =========================
   Paginierung – Blog
   ========================= */
.filter-beitrage-list .elementor-pagination {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 16px;
    padding: 64px;
}

.filter-beitrage-list .elementor-pagination .page-numbers {
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 56px;
    height: 56px;
    border-radius: 50%;
    font-size: 18px;
    font-weight: 500;
    color: #fff !important;
    text-decoration: none;
    background: transparent;
    border: none;
}

/* Aktive Seite */
.filter-beitrage-list .elementor-pagination .page-numbers.current {
    background: #fff !important;
    color: #EA664F !important;
    font-weight: 700;
}

/* Pfeile – Text ausblenden, Pfeil-Icon einblenden */
.filter-beitrage-list .elementor-pagination .page-numbers.prev,
.filter-beitrage-list .elementor-pagination .page-numbers.next {
    font-size: 0 !important;
    color: transparent !important;
    background: transparent !important;
}

.filter-beitrage-list .elementor-pagination .page-numbers.prev::before {
    content: "←";
    font-size: 20px !important;
    color: #EA664F;
}

.filter-beitrage-list .elementor-pagination .page-numbers.next::after {
    content: "→";
    font-size: 20px !important;
    color: #EA664F;
}

/* Pfeile Hover */
.filter-beitrage-list .elementor-pagination .page-numbers.prev:hover::before,
.filter-beitrage-list .elementor-pagination .page-numbers.next:hover::after {
    color: #00ADC6 !important;
}

/* Zahlen Hover */
.filter-beitrage-list .elementor-pagination .page-numbers:not(.prev):not(.next):not(.current):hover {
    background: #71D6DD29 !important;
    color: #fff !important;
}

/* =========================
   Paginierung – Projekte
   ========================= */
.filter-projekte-list .elementor-pagination {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 16px;
    padding: 20px;
}

.filter-projekte-list .elementor-pagination .page-numbers {
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 56px;
    height: 56px;
    border-radius: 50%;
    font-size: 18px;
    font-weight: 500;
    color: #fff !important;
    text-decoration: none;
    background: transparent;
    border: none;
}

/* Aktive Seite */
.filter-projekte-list .elementor-pagination .page-numbers.current {
    background: #fff !important;
    color: #EA664F !important;
}

/* Pfeile – Text ausblenden, Pfeil-Icon einblenden */
.filter-projekte-list .elementor-pagination .page-numbers.prev,
.filter-projekte-list .elementor-pagination .page-numbers.next {
    font-size: 0 !important;
    color: transparent !important;
    background: transparent !important;
}

.filter-projekte-list .elementor-pagination .page-numbers.prev::before {
    content: "←";
    font-size: 20px !important;
    color: #EA664F;
}

.filter-projekte-list .elementor-pagination .page-numbers.next::after {
    content: "→";
    font-size: 20px !important;
    color: #EA664F;
}

/* Pfeile Hover */
.filter-projekte-list .elementor-pagination .page-numbers.prev:hover::before,
.filter-projekte-list .elementor-pagination .page-numbers.next:hover::after {
    color: #00ADC6 !important;
}

/* Zahlen Hover */
.filter-projekte-list .elementor-pagination .page-numbers:not(.prev):not(.next):not(.current):hover {
    background: #71D6DD29 !important;
    color: #fff !important;
}

/* Abstand nach oben via Widget-ID */
.elementor-element-4a426d7 .elementor-pagination {
    margin-top: 64px !important;
}

@media (max-width: 1024px) {
    #leistungen-bilder .elementor-widget-image img {
        height: 250px;
        object-fit: cover;
        object-position: center;
        width: 100%;
    }
}