/*
******************************************************************

CSS for navigation

(c) sinntun.codes
******************************************************************
*/


/*****************************************************************
*********** Navigation (Nav1))
******************************************************************/


.nav1 {
    display: flex;
    gap: 3.75rem;
    width: fit-content;
    white-space: nowrap;
}
.nav1-item{
    float: none;
}
.nav1-link {
    display: inline-block;
}

.nav1-link.active:before,
.nav1-mobile-link.active:before {
    content: url("/_images/bubble-yellow.svg");
    position: absolute;
    width: 2.125rem;
    transform: translate(-1.094rem, -0.313rem);
    z-index: -1;
}

.nav1-link:hover span {
    color: #007CC5;
}

.nav1-link span,
.nav1-mobile-link span {
    font-size: 1.25rem;
    color: #00528c;
}
.nav1-link-last {
    position: relative;
    z-index: 2000;
}
li.has-subnav:hover > .nav1-link span {
    border-bottom: 0.625rem solid #5f5f5f;
}

.nav1-link:focus-visible {
    outline: var(--outline);
    outline-offset: var(--outline-offset);
}

@media (max-width: 90.625rem) {
    .nav1 {
        gap: 2.25rem;
    }
}


/*****************************************************************
*********** Navigation (Nav1 with Nav2 Dropdown)
******************************************************************/

.nav2dropdown {
    background-color: #fff;
    display: none;
    min-width: 11.25rem;
    margin-left: 0.25rem;
    padding: 0;
    position: absolute;
    z-index: 9999;
}
.nav2dropdown span {
    color: #1E4231;
}
.nav2-item a {
    margin-left: 0.625rem;
}
.nav2dropdown li {
    font-size: 1.25rem;
    border-bottom: 0.313rem solid #5f5f5f;
    padding-top: 0.313rem;
    padding-bottom: 0.313rem;
    padding-left: 0.313rem;
}

li.has-subnav:hover > ul.nav2dropdown {
    display: block;
}


/*****************************************************************
*********** Navigation (Nav2))
******************************************************************/


.nav2 {
    height: auto;
    overflow: hidden;
}

.nav2-item {
    display: block;
    float: none;
    width: 100%;
    height: auto;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.nav2-link {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0.938rem;
    overflow: hidden;
    display: block;
    margin-bottom: 0.313rem;
}

.nav2-link span {
    font-weight: 700;
}



/*****************************************************************
*********** Navigation Meta
******************************************************************/

#meta-navigation .nav-meta-item {
    float: none;
    background: #fff;
    border-radius: 0.625rem;
    text-align: center;
    padding: 0.625rem;
    margin-bottom: 0.625rem;
}

#meta-navigation .nav-meta-item:hover {
    background: var(--sinntun-yellow);
}

#meta-navigation .nav-meta-item:hover span {
    color: var(--sinntun-text-color-anth);
}

#meta-navigation .nav-meta-link span {
    display: block;
    color: var(--sinntun-text-color-anth);
}

#meta-navigation .nav-meta-link:focus-visible {
    outline: none;
}

#meta-navigation .nav-meta-item:has(.nav-meta-link:focus-visible)  {
    background-color: var(--sinntun-yellow);
    color: var(--sinntun-text-color-anth);
}

/*****************************************************************
*********** Navigation Footer
******************************************************************/

.nav-footer {
    width: auto;
    height: auto;
    overflow: hidden;
    list-style: none !important;

    max-width: 87.5rem;
    margin: auto;
    display: flex;
    padding: 1.25rem 0;
    justify-content: end;
    flex-wrap: wrap;
    color: #fff;
}


.nav-footer-item {
    width: auto;
    height: auto;
    float: none;
    margin-right: 0;
}

.nav-footer-link {
    font-size: 1.125rem;
    line-height: 1.375rem;
    color: #fff;
    margin-right: 0.313rem;
}

.nav-footer-link span {
    color: #fff;
}

.nav-footer-link:hover span {
    color: var(--sinntun-yellow);
}

.nav-footer-item:not(:last-child)::after {
    content: ' • ';
    margin: 0 0.5rem
}

.nav-footer .nav-footer-item > a:focus-visible > span  {
    color: var(--sinntun-white);
    text-decoration: underline;
}

.nav-footer .nav-footer-item > a:hover > span {
    color: var(--sinntun-white);
    text-decoration: underline;
}

@media (max-width: 53.75rem) {
    .nav-footer {
        flex-direction: column;
        align-content: center;
        text-align: center;
        gap: 0.625rem;
    }

    .nav-footer-item:not(:last-child)::after {
        content: none;
    }

}



/*****************************************************************
*********** Lang-Selector
******************************************************************/

.lang-selector {
    float: right;
    width: 16.875rem;
}

.lang-selector-item {
    display: block;
    float: right;
}

.lang-selector-link {
    display: inline-block;
    padding: 0.625rem;
}

.lang-selector-link:hover {
    padding: 0.625rem;
}

.lang-selector-link.lang-de::before {
    content: ' ';
    display: inline-block;
    position: relative;
    /*background: url('/_images/flagge-de.png') no-repeat;*/
    width: 1.563rem;
    height: 0.938rem;
    background-size: 100% auto;
    margin-right: 0.438rem;
    margin-top: 0.188rem;
}

.lang-selector-link.lang-en::before {
    content: ' ';
    display: inline-block;
    position: relative;
    /*background: url('/_images/flagge-gb.png') no-repeat;*/
    width: 1.563rem;
    height: 0.938rem;
    background-size: 100% auto;
    margin-right: 0.438rem;
    margin-top: 0.188rem;
}
