/* ===== BASE ===== */
/* body {
  font-family: var(--font-body);
  color: var(--color-text);
  background-color: var(--color-bg-light);
} */
.bg-grey{
    background-color: #F2F2F2;
}
/* ===== STICKY HEADER ===== */
.header {
    position: sticky;
    top: 0;
    transition: top 0.3s ease, box-shadow 0.3s ease;

}

.header--hidden {
    transform: translateY(-200px); /* Muss groesser als Header-Hoehe sein */
}

/* .header--scrolled {
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.1);
} */

/* ===== HEADER ===== */
.header {
    background-color: var(--color-white);
    /* border-bottom: 1px solid rgba(0, 0, 0, 0); */
    z-index: 1030;
    overflow: visible;
}

.header .navbar {
    padding: 0;
    overflow: visible;
}

.header__container {
    padding: 0 64px;
    overflow: visible;
    height: 97px;
}

/* Logo */
.header__logo {
    position: relative;
    z-index: 1010;
    padding: 0;
    margin-right: 10px;
    flex-shrink: 0;
    align-self: flex-start;
}

.header__logo img {
    display: block;
    width: 204px;
    height: auto;
    margin-top: 10px;
}

/* ===== NAV LINKS ===== */
.header__nav {
    display: flex;
    align-items: center;
    gap: 32px;
}

.header__nav-link {
    font-family: var(--font-body);
    font-size: 16px;
    line-height: 150%;
    font-weight: 600;
    color: var(--color-primary) !important;
    transition: color 0.2s ease;
    white-space: nowrap;
}

.header__nav-link:hover,
.header__nav-link:focus {
    color: var(--color-secondary) !important;
}

.header__nav-link--active {
    color: var(--color-primary) !important;
    text-decoration: underline;
    text-underline-offset: 4px;
    text-decoration-thickness: 1px;
    text-decoration-color: var(--color-primary);
}

.header__nav-link.dropdown-toggle::after {
    margin-left: 0px;
    border: none;
    width: 18px;
    height: 16px;
    bottom: 14px;
    vertical-align: baseline;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24px' viewBox='0 -960 960 960' width='24px' fill='%2300547B'%3E%3Cpath d='M480-371.69 267.69-584 296-612.31l184 184 184-184L692.31-584 480-371.69Z'/%3E%3C/svg%3E");
}

.header__nav-link--search {
    display: flex;
    align-items: center;
    color: var(--color-primary) !important;
}
.header__nav .dropdown-menu .nav-menu-list{
    list-style-type: none;
    padding-left: 0px;
}
.header__nav .dropdown-menu .nav-menu-list .material-symbols-outlined{
    margin-right:12px;
    color:currentColor;
}
.header__nav .dropdown-menu .dropdown-item{
    display: flex;
}
.header__nav .dropdown-menu .nav-menu-list .dropdown-item-title {
    display: flex;
    flex-direction: column;
    font-weight: 600;
}
.header__nav .dropdown-menu .nav-menu-list .dropdown-item-tagline{
    color:var(--color-text);
    white-space: normal;
}
.header__nav .dropdown-menu .row>* {
    padding: 20px 8px;
}
/* ===== HOVER DROPDOWNS (Desktop) ===== */
@media (min-width: 992px) {
    /* Navbar bekommt feste Höhe nur auf Desktop via padding */
    .header__container {
        min-height: 97px;
        align-items: center;
    }

    .header__nav .dropdown:hover > .dropdown-menu {
        display: block;
        margin-top: 0;
    }

    .header__nav .dropdown > .dropdown-menu,
    .header__actions .dropdown > .dropdown-menu {
        border: none;
        --bs-dropdown-border-radius:0px;
        box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
        min-width: max-content;
        --bs-dropdown-padding-x: 0px;
        --bs-dropdown-padding-y: 0px;
    }

    .header__nav .dropdown:hover > .dropdown-menu,
    .header__nav .dropdown > .dropdown-menu.show {
        display: block;
        margin-top: 0 !important;
    }
    .header__nav .dropdown:hover > .dropdown-menu {
        display: block;
        margin-top: 0;
    }

    .header__nav .dropdown:not(.search-dropdown):hover > .dropdown-menu,
    .header__nav .dropdown > .dropdown-menu.show {
        display: block;
        margin-top: 0 !important;
    }

    .header__nav .dropdown-menu .dropdown-item,
    .header__actions .dropdown-menu .dropdown-item{
        font-family: var(--font-body);
        font-size: 16px;
        color: var(--color-primary);
        padding: 10px 20px;
        transition: background-color 0.15s ease, color 0.15s ease;
    }

    .header__nav .dropdown-menu .dropdown-item:hover,
    .header__actions .dropdown-menu .dropdown-item:hover{
        background-color: #00547b1a;
        color: var(--color-secondary);
    }
    .header__nav .dropdown-menu .dropdown-item:hover .dropdown-item-tagline{
        color: var(--color-text);
    }
    .header__nav .dropdown-menu .dropdown-item:hover .material-symbols-outlined{
        color:var(--color-primary);
    }
}

/* ===== ACTIONS (Right side) ===== */
.header__actions {
    gap: 24px;
    flex-shrink: 0;
}

.header__cta {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background-color: var(--color-primary);
    color: var(--color-white) !important;
    font-family: var(--font-body);
    font-size: 16px;
    padding: 8px 20px;
    border-radius: 6px;
    border: 1px solid var(--color-primary);
    text-decoration: none;
    transition: background-color 0.2s ease;
    white-space: nowrap;
    font-weight: 600;
    margin-bottom: 0;
}
.header__cta span.material-symbols-outlined{
    color: var(--color-white);
}
.header__cta:hover span.material-symbols-outlined{
    color: var(--color-primary);
}
.header__cta:hover {
    background-color: transparent;
    color: var(--color-primary) !important;
    border: 1px solid var(--color-primary);
}

.header__cta svg,
.header__cta img {
    flex-shrink: 0;
}

/* Language Switcher */
.header__lang-toggle {
    font-family: var(--font-body);
    font-size: 16px;
    font-weight: 600;
    color: var(--color-primary) !important;
    text-decoration: none;
    padding: 8px 4px;
    border:none;
    background-color: transparent;;
}

.header__lang-toggle::after {
    margin-left: 0px;
    border: none;
    width: 18px;
    height: 16px;
    bottom: 14px;
    vertical-align: baseline;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24px' viewBox='0 -960 960 960' width='24px' fill='%2300547B'%3E%3Cpath d='M480-371.69 267.69-584 296-612.31l184 184 184-184L692.31-584 480-371.69Z'/%3E%3C/svg%3E");
}


/* Toggler */
.header__toggler,
.header__toggler:focus,
.header__toggler:hover,
.header__toggler:active,
.header__toggler:focus-visible,
.header__toggler:focus-within,
.header__toggler:active:focus,
.header__toggler:target {
    border:none;
    box-shadow: none;
}

.dropdown.search-dropdown button::after{
    content:none;
}
.dropdown-menu#submenu-search {
    background: #fff;
    padding: 10px;
    border: 1px solid transparent;
    border-radius: 6px;
    left: -200px;
}
.dropdown-menu#submenu-search form input.ym-searchfield {
    height: 40px;
    border: none;
    border-bottom: 1px solid #00547B;
    margin-right: 10px;
}
.dropdown-menu#submenu-search form button.btn.btn-primary.ym-searchbutton {
    padding: 5px 10px;
    top: 8px;
    position: relative;
    font-size: 16px;
}

.header__toggler[aria-expanded="true"] .navbar-toggler-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='%23070707' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M6 18L18 6M6 6l12 12'/%3e%3c/svg%3e");
}

.header__toggler .navbar-toggler-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='%23070707' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

@media (max-width: 1400px) {
    .header__container {
        padding: 0;
    }
}
@media (max-width: 1200px) {
    .header__container {
        margin:0px;
    }
}
/* ===== MOBILE / TABLET ===== */
@media (max-width: 991px) {
    .header__container {
        padding: 0 24px;
        height: auto;
    }

    .header__logo img {
        width: 120px;
        margin-top: 8px;
    }

    .header__nav {
        flex-direction: column;
        align-items: stretch;
        gap: 0;
        padding-top: 16px;
    }

    .header__nav-link {
        padding: 12px 0 !important;
        border-bottom: 1px solid rgba(0, 0, 0, 0.05);
    }

    .header__actions {
        flex-direction: column;
        align-items: stretch;
        gap: 12px;
        padding: 16px 0;
    }

    .header__cta {
        width: 100%;
        justify-content: center;
        min-height: 48px;
        max-width:230px;
    }

    .header__lang-toggle {
        min-height: 44px;
        display: inline-flex;
        align-items: center;
    }

    /* Mobile Dropdowns: Bootstrap handled per Klick, nur optisch anpassen */
    .dropdown-menu {
        border: none;
        box-shadow: none;
        padding: 0;
    }
    .header__nav .dropdown-menu .row>* {
        padding: 10px 8px 0px 8px;
    }
    .dropdown-menu .dropdown-item {
        padding: 10px 0 10px 10px;
        font-size: 16px;
        color: var(--color-primary);
        border-bottom: 1px solid rgba(0, 0, 0, 0.05);
    }
    .dropdown-menu .dropdown-item .material-symbols-outlined{
        display:none;
    }
}

@media (max-width: 767px) {
    .header__container {
        padding: 0 16px;
    }

    .header__logo {
        bottom: -10px;
    }
    .header__logo img {
        width: 100px;
    }
}
