:root {
  --mobile-item-height: 45px; /* <- Höhe der Mobile-Menüpunkte (News/Register etc.) */
}

.header,
.header .container,
.header .header-row,
.header .main-menu {
  overflow: visible;
}

#nav-guides.menu-item.has-dropdown {
  position: relative;
  cursor: pointer;
  user-select: none;
}

#nav-guides > .menu-toggle{
  display:flex;
  align-items:center;
  width: auto;
  height:70px;          /* wie deine Navbar-Höhe */
  background:transparent;
  border:0;
  padding:0 10px;       /* wie menu-item Padding */
  color:inherit;
  cursor:pointer;
  margin: 0;
  box-sizing: border-box;
  text-align: left;
}

#nav-guides > .menu-toggle:focus-visible{
  outline:2px solid rgba(255,255,255,0.25);
  outline-offset:4px;
  border-radius:10px;
}

#nav-guides .menu-dropdown {
  position: absolute;
  top: calc(100% + 0px);
  left: 0;

  min-width: 260px;
  padding: 10px;
  margin-top: 0;

  border-radius: 10px;
  background: linear-gradient(180deg, rgba(18, 18, 18, 0.98), rgba(10, 10, 10, 0.98));
  border: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow: 0 14px 40px rgba(0, 0, 0, 0.55);

  z-index: 9999;

  opacity: 0;
  visibility: hidden;
  transform: translateY(10px);
  pointer-events: none;

  transition: opacity 160ms ease, transform 160ms ease, visibility 0s linear 160ms;
}

#nav-guides .menu-dropdown::before {
  content: "";
  position: absolute;
  top: -8px;
  left: 26px;

  width: 14px;
  height: 14px;

  background: rgba(18, 18, 18, 0.98);
  border-left: 1px solid rgba(255, 255, 255, 0.08);
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  transform: rotate(45deg);
}

#nav-guides:hover .menu-dropdown,
#nav-guides:focus-within .menu-dropdown {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  pointer-events: auto;
  transition: opacity 160ms ease, transform 160ms ease, visibility 0s linear 0s;
}

#nav-guides:hover,
#nav-guides:focus-within{
  opacity: 1;
}

#nav-guides:hover .title .name,
#nav-guides:focus-within .title .name{
  text-decoration: underline;
}

#nav-guides .dropdown-item {
  display: flex;
  align-items: center;
  gap: 10px;

  padding: 10px 12px;
  border-radius: 8px;

  text-decoration: none;
  color: rgba(255, 255, 255, 0.88);
  font-size: 14px;
  line-height: 1;

  border: 1px solid transparent;
}

#nav-guides .dropdown-item + .dropdown-item {
  margin-top: 6px;
}

#nav-guides .dropdown-item img {
  width: 18px;
  height: 18px;
  opacity: 0.9;
  filter: drop-shadow(0 2px 6px rgba(0, 0, 0, 0.4));
}

#nav-guides .dropdown-item:hover {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0.03));
  border-color: rgba(255, 255, 255, 0.10);
}

#nav-guides.menu-item.has-dropdown{
  padding: 0; /* überschreibt .main-menu .menu-item padding */
}











#nav-hamburger{
    width:18px;
    height:16px;
    position:relative;
    -webkit-transform:rotate(0deg);
    transform:rotate(0deg);
    -webkit-transition:.5s ease-in-out;
    transition:.5s ease-in-out;
    cursor:pointer;
    margin-left:40px
}@media (min-width: 1360px){#nav-hamburger{
        display:none
    }}#nav-hamburger span{
    display:block;
    position:absolute;
    height:2px;
    width:100%;
    background:#fff;
    border-radius:5px;
    opacity:1;
    left:0;
    -webkit-transform:rotate(0deg);
    transform:rotate(0deg);
    -webkit-transition:.25s ease-in-out;
    transition:.25s ease-in-out
}#nav-hamburger:hover span{
    background-color:#fff
}#nav-hamburger span:nth-child(1){
    top:0px
}#nav-hamburger span:nth-child(2),#nav-hamburger span:nth-child(3){
    top:8px
}#nav-hamburger span:nth-child(4){
    top:16px
}#nav-hamburger.open span:nth-child(1){
    top:8px;
    width:0%;
    left:50%
}#nav-hamburger.open span:nth-child(4){
    top:8px;
    width:0%;
    left:50%
}#nav-hamburger.open span:nth-child(2){
    -webkit-transform:rotate(45deg);
    transform:rotate(45deg)
}#nav-hamburger.open span:nth-child(3){
    -webkit-transform:rotate(-45deg);
    transform:rotate(-45deg)
}.mobile-menu{
    -webkit-backdrop-filter:blur(15px);
    backdrop-filter:blur(15px);
    background-color:rgba(34,36,35,0.5);
    background-size:auto;
    height:100vh;
    position:fixed;
    width:100%;
    right:0;
    top:0;
    -webkit-transform:translate(-100%);
    transform:translate(-100%);
    -webkit-transition:.2s;
    transition:.2s;
    width:100%;
    z-index:9;
    opacity:1;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex
}@media (min-width: 1360px){.mobile-menu{
        display:none
    }}.mobile-menu.open{
    -webkit-transform:translate(0);
    transform:translate(0)
}.mobile-menu .container{
    padding-top:calc(86px)
}.mobile-menu .main-menu{
    height:auto;
    margin-top:40px;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column
}.mobile-menu .main-menu .menu-item{
    background-color:rgba(255,255,255,0.1);
    margin-bottom:15px;
    opacity:1;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    text-align:center;
    width:100%;
    min-height:45px;
    -webkit-box-pack:center;
    -ms-flex-pack:center;
    justify-content:center;
    font-weight:bold;
    -webkit-transition:0.2s;
    transition:0.2s
}.mobile-menu .main-menu .menu-item:hover{
    background-color:rgba(255,255,255,0.15)
}.mobile-menu .h-sep{
    height:1px;
    opacity:0.1;
    width:100%;
    background-color:#fff;
    background-size:cover;
    margin-top:20px;
    margin-bottom:30px
}.mobile-menu .button-style-2{
    margin:0 auto
}.mobile-menu .buttons{
    height:inherit;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
    -webkit-box-pack:center;
    -ms-flex-pack:center;
    justify-content:center
}.mobile-menu .buttons .login{
    font-weight:bold;
    color:#efe3fa;
    margin:10px
}.mobile-menu .buttons .button{
    margin:10px
}.main-menu{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
    position:relative
}.main-menu a,.main-menu .menu-item{
    padding:0 10px;
    -webkit-transition:0.2s;
    transition:0.2s;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    position:relative;
    color:inherit;
    height:inherit;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    opacity:0.5
}.main-menu a:after,.main-menu .menu-item:after{
    content:'';
    height:inherit;
    width:100%;
    background-size:cover;
    background-image:url(../img/ui/nav-hover.png);
    display:block;
    position:absolute;
    left:0;
    top:0;
    z-index:0;
    opacity:0;
    -webkit-transition:0.2s;
    transition:0.2s
}.main-menu a>*,.main-menu .menu-item>*{
    z-index:1
}.main-menu a img,.main-menu .menu-item img{
    margin-right:10px;
    display:block;
    -webkit-transition:0.2s;
    transition:0.2s
}.main-menu a .title,.main-menu .menu-item .title{
    -webkit-transition:0.2s;
    transition:0.2s;
    font-weight:bold;
    color:#d3c9b7;
    text-transform:uppercase;
    line-height:1
}.main-menu a .title .name,.main-menu .menu-item .title .name{
    font-size:15px;
    text-shadow:0.484px 1.941px 0px rgba(26,27,27,0.4)
}.main-menu a .title span,.main-menu .menu-item .title span{
    color:#ac9f95;
    font-size:8px
}.main-menu a:hover,.main-menu .menu-item:hover{
    opacity:1
}.main-menu a:hover .title .name,.main-menu .menu-item:hover .title .name{
    text-decoration:underline
}.main-menu a.active,.main-menu .menu-item.active{
    opacity:1
}.main-menu a.active:after,.main-menu .menu-item.active:after{
    opacity:1
}.main-menu a.active .title,.main-menu .menu-item.active .title{
    -webkit-filter:brightness(1.2);
    filter:brightness(1.2)
}.main-menu a.active img,.main-menu .menu-item.active img{
    -webkit-filter:brightness(1.2);
    filter:brightness(1.2)
}.header{
    position:fixed;
    z-index:900;
    top:0px;
    width:100%;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    background-color:#222423;
    -webkit-backdrop-filter:blur(2px);
    backdrop-filter:blur(2px);
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    font-weight:bold;
    height:70px
}.header .main-menu{
    height:70px
}.header::after{
	pointer-events: none;
    display:block;
    position:absolute;
    height:90px;
    top:0;
    background-image:url(../img/ui/navbar-bg.png);
    width:100%;
    background-repeat:repeat-x;
    left:0;
    content:'';
	z-index: -1;
}

.header .h-sep{
    margin:0 30px 0 0px;
    background-color:#151616;
    border-right:1px solid #514739;
    width:1px;
    height:20px
}.header .header-row{
    z-index:2;
    position:relative
}.header .h-right,.header .h-left{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center
}.header .h-left{
    -webkit-box-flex:3;
    -ms-flex-positive:3;
    flex-grow:3
}



@media (max-width: 1359.98px){.header .h-left .main-menu,.header .h-left .h-sep{
        display:none
    }}.header .h-left .logo{
    width:141px;
    height:45px;
    position:relative;
    cursor:pointer;
    -webkit-transition:0.2s;
    transition:0.2s;
    margin-right:30px
}.header .h-left .logo:hover{
    -webkit-filter:brightness(115%);
    filter:brightness(115%)
}.header .h-left .logo img{
    pointer-events:none;
    position:absolute
}.header .h-right{
    -webkit-box-pack:end;
    -ms-flex-pack:end;
    justify-content:flex-end;
    -webkit-box-flex:1;
    -ms-flex-positive:1;
    flex-grow:1
}.header .h-right .buttons{
    margin-left:auto;
    height:inherit;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center
}@media (max-width: 575.98px){.header .h-right .buttons{
        display:none
    }}@media (max-width: 767.98px){.header .h-right .buttons .lang-selector{
        display:none
    }}.header .h-right .buttons .lang-selector{
    margin-right:30px;
    position:relative
}.header .h-right .buttons .lang-selector.open .lang-dropdown{
    opacity:1;
    pointer-events:unset;
    -webkit-transform:translateY(0px);
    transform:translateY(0px)
}.header .h-right .buttons .lang-selector .nav-lang-button{
    padding:5px;
    background-color:rgba(169,168,167,0.1);
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    cursor:pointer;
    -webkit-transition:0.2s;
    transition:0.2s
}.header .h-right .buttons .lang-selector .nav-lang-button:hover{
    background-color:rgba(169,168,167,0.3)
}.header .h-right .buttons .lang-selector .nav-lang-button span{
    display:block;
    margin:0 10px 0 5px;
    color:#d3c9b7;
    width:20px;
    font-size:13px;
    text-transform:uppercase;
    text-shadow:0.484px 1.941px 0px rgba(26,27,27,0.4)
}.header .h-right .buttons .lang-selector .nav-lang-button img{
    height:17px;
    width:25px;
    display:block;
    outline:2px solid rgba(22,22,22,0.5)
}.header .h-right .buttons .lang-selector .lang-dropdown{
    opacity:0;
    pointer-events:none;
    -webkit-transform:translateY(-5px);
    transform:translateY(-5px);
    -webkit-transition:0.2s;
    transition:0.2s;
    position:absolute;
    top:50px;
    left:-5px;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
    background-color:rgba(34,36,35,0.9);
    padding:5px
}.footer .footer-bottom .social,.footer .footer-bottom .link,.footer .footer-bottom .h-sep{
    margin:15px
}.footer .footer-bottom .h-sep{
    background-color:#151616;
    border-right:1px solid #393939;
    height:20px;
    width:1px
}@media (min-width: 992px){.footer .lang-selector,.footer .f-detail{
        padding:30px 0
    }}.footer .lang-selector{
    position:relative;
    max-width:230px;
    width:100%
}@media (min-width: 992px){.footer .lang-selector{
        margin-left:auto
    }}.footer .lang-selector .foot-lang-button{
    width:100%;
    background-color:rgba(16,16,16,0.5);
    border:1px solid #101010;
    height:44px;
    padding:20px;
    position:relative;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    -webkit-transition:0.2s;
    transition:0.2s;
    cursor:pointer
}.footer .lang-selector .foot-lang-button:hover{
    background-color:rgba(16,16,16,0.2)
}.footer .lang-selector .foot-lang-button img{
    margin-right:10px
}.footer .lang-selector>.foot-lang-button:after{
    content:'';
    height:6px;
    width:10px;
    position:absolute;
    display:block;
    background-image:url(../img/ui/lang-arrow.png);
    right:20px;
    top:50%;
    -webkit-transform:translateY(-50%);
    transform:translateY(-50%)
}.footer .lang-selector .lang-dropdown{
    -webkit-transition:.2s;
    transition:.2s;
    opacity:0;
    -webkit-transform:translateY(5px);
    transform:translateY(5px);
    pointer-events:none;
    width:inherit;
    background-color:rgba(16,16,16,0.2);
    position:absolute;
    bottom:100%;
    left:0
}.footer .lang-selector.open .lang-dropdown{
    opacity:1;
    -webkit-transform:translateY(0px);
    transform:translateY(0px);
    pointer-events:unset
}.button-gold-nav{
    padding:0 30px;
    height:70px
}.button-gold-nav .title{
    z-index:1;
    text-transform:uppercase;
    color:#242525;
    font-size:15px;
    line-height:0.9
}.button-gold-nav .title .name{
    font-weight:bold;
    text-shadow:0.242px 0.97px 0px rgba(213,185,146,0.8),0.242px 0.97px 2px rgba(213,185,146,0.6)
}.button-gold-nav .title span{
    font-size:8px;
    color:#d3ba9a;
    text-shadow:0.242px 0.97px 2px rgba(35,36,36,0.7)
}.button-gold-nav img{
    z-index:1;
    margin-right:10px
}.button-gold-nav:before{
    background-image:url(../img/ui/button-nav-gold.png);
    background-size:cover
}.button-gold-nav,.button-widget{
    -webkit-transition:0.2s;
    transition:0.2s;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    cursor:pointer;
    -webkit-box-pack:center;
    -ms-flex-pack:center;
    justify-content:center;
    position:relative
}.button-gold-nav:hover,.button-widget:hover{
    -webkit-filter:brightness(120%);
    filter:brightness(120%)
}.button-gold-nav:before,.button-widget:before{
    position:absolute;
    height:inherit;
    width:-webkit-fill-available;
    width:-moz-available;
    width:fill-available;
    content:'';
    left:0;
    top:0
}








@media (max-width: 1359.98px) {

  /* Container darf wachsen (Accordion!), daher KEIN fixes height */
  #mobile-guides.menu-item {
    position: relative;
    display: block;

    min-height: var(--mobile-item-height);  /* statt height */
    height: auto;                           /* sicherheitshalber */
  }

  /* Button bleibt exakt so hoch wie ein normaler Menüpunkt */
  #mobile-guides > .menu-toggle {
    width: 100%;
    height: var(--mobile-item-height);      /* hier gehört die feste Höhe hin */
    padding: 0;
    margin: 0;
    box-sizing: border-box;

    display: flex;
    align-items: center;
    justify-content: center;

    background: transparent;
    border: 0;

    appearance: none;
    -webkit-appearance: none;

    font: inherit;
    color: inherit;
    text-transform: inherit;

    cursor: pointer;
    position: relative; /* für Chevron im Button */
  }

  /* Innenlayout zentriert */
  #mobile-guides > .menu-toggle .title {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0;
    padding: 0;
  }

  #mobile-guides > .menu-toggle .name {
    margin: 0;
    padding: 0;
    line-height: 1;
  }

  /* Chevron rechts */
  #mobile-guides > .menu-toggle .chev {
    position: absolute;
    right: 14px;
    top: 50%;
    transform: translateY(-50%);
    pointer-events: none;
  }

  #mobile-guides.open > .menu-toggle .chev {
    transform: translateY(-50%) rotate(180deg);
  }

  /* Dropdown: muss normal "unter" dem Button erscheinen */
  #mobile-guides .menu-dropdown {
    position: static;
    width: 100%;
    min-width: 0;

    margin: 0;                 /* vorher margin-top kann “komisch” wirken */
    padding: 0;

    max-height: 0;
    overflow: hidden;

    border: 0;
    background: transparent;
    box-shadow: none;

    transition: max-height 220ms ease;
  }

  /* Abstand erst im OPEN-Zustand geben */
  #mobile-guides.open .menu-dropdown {
    max-height: 480px;
    margin-top: 10px;
    padding-top: 6px;
  }

  #mobile-guides .dropdown-item {
    position: relative;
    display: block;

    padding: 12px 14px;
    margin: 6px 0;

    border-radius: 8px;

    font-size: 14px;
    color: rgba(255,255,255,0.85);
    text-decoration: none;

    background: rgba(255,255,255,0.03);
    border: 1px solid rgba(255,255,255,0.06);

    transition: all 180ms ease;
	box-sizing: border-box;
  }

  #mobile-guides .dropdown-item:focus-visible {
    background: linear-gradient(
      180deg,
      rgba(255, 200, 90, 0.12),
      rgba(255, 140, 50, 0.08)
    );

    border-color: rgba(255, 200, 90, 0.35);

    color: #fff;

    transform: translateX(6px);
    box-shadow: 0 6px 18px rgba(255, 170, 60, 0.25);
  }

  #mobile-guides .dropdown-item::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%) scaleY(0);

    width: 3px;
    height: 60%;

    background: linear-gradient(
      180deg,
      rgba(255, 200, 90, 0.9),
      rgba(255, 140, 50, 0.8)
    );

    border-radius: 4px;
    transition: transform 180ms ease;
  }

  #mobile-guides .dropdown-item:focus-visible::before {
    transform: translateY(-50%) scaleY(1);
  }

  #mobile-guides .menu-dropdown::before {
    display: none;
  }
}


