/* Sticky-Navigation: erscheint beim Hochscrollen, verschwindet beim Runterscrollen (alle Seiten) */
html{scroll-padding-top:84px}
.nav.nav-fixed{position:fixed;z-index:110;animation:none!important;opacity:1;transform:translateY(-110%);
  padding-top:10px;padding-bottom:10px;background:rgba(10,13,11,.88);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);
  border-bottom:1px solid rgba(255,255,255,.07);box-shadow:0 10px 30px rgba(0,0,0,.25)}
.nav.nav-fixed.nav-anim{transition:transform .38s cubic-bezier(.23,1,.32,1)}
.nav.nav-fixed.nav-show{transform:none}
.nav.nav-fixed .logo{width:112px;filter:none;transition:width .3s ease}
.nav.nav-fixed .ticket-nav{padding:10px 18px;box-shadow:none}
body.menu-open .nav.nav-fixed{z-index:170;transform:none;background:transparent;border-color:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
@media(max-width:980px){
  .nav.nav-fixed{padding-top:8px;padding-bottom:8px}
  .nav.nav-fixed .logo{width:96px}
}
@media (prefers-reduced-motion:reduce){.nav.nav-fixed.nav-anim{transition:none}}
.admin-bar .nav.nav-fixed{top:32px}
@media(max-width:782px){.admin-bar .nav.nav-fixed{top:46px}}

/* Einheitliches Menü: Dropdown „Angebote“, kompaktere Abstände, Handy-Extras */
.nav-drop{position:relative}
.nav-drop-btn{display:inline-flex;align-items:center;gap:5px;padding:6px 0;border:0;background:none;font:600 15px "DM Sans",sans-serif;color:rgba(255,255,255,.82);cursor:pointer}
.nav-drop-btn svg{width:15px;height:15px;transition:transform .25s ease}
.nav-drop-btn:hover,.nav-drop-btn[data-current],.nav-drop.open .nav-drop-btn{color:#fff}
.nav-drop.open .nav-drop-btn svg{transform:rotate(180deg)}
.nav-drop-menu{position:absolute;top:calc(100% + 12px);left:50%;z-index:20;display:flex;flex-direction:column;min-width:236px;padding:8px;border-radius:14px;background:rgba(14,18,15,.97);border:1px solid rgba(255,255,255,.1);box-shadow:0 24px 60px rgba(0,0,0,.45);opacity:0;visibility:hidden;transform:translate(-50%,-6px);transition:opacity .2s ease,transform .2s ease,visibility 0s .2s}
.nav-drop-menu::before{content:"";position:absolute;left:0;right:0;top:-14px;height:14px}
.nav-drop.open .nav-drop-menu{opacity:1;visibility:visible;transform:translate(-50%,0);transition:opacity .2s ease,transform .2s ease}
@media(hover:hover){.nav-drop:hover .nav-drop-menu{opacity:1;visibility:visible;transform:translate(-50%,0);transition:opacity .2s ease,transform .2s ease}.nav-drop:hover .nav-drop-btn svg{transform:rotate(180deg)}}
.nav .nav-drop-menu a{display:block;padding:11px 14px;border-radius:9px;font-size:15px;color:rgba(255,255,255,.86);white-space:nowrap}
.nav .nav-drop-menu a::after{display:none}
.nav .nav-drop-menu a:hover{background:rgba(255,255,255,.07);color:#fff}
.nav-drop-btn:focus-visible,.nav-drop-menu a:focus-visible{outline:2px solid #d6b477;outline-offset:2px}
@media(min-width:981px) and (max-width:1220px){
  .nav-side{gap:22px!important}
  .nav a,.nav-drop-btn{font-size:14px!important}
  .nav .logo{width:128px}
}
@media(max-width:980px){.nav-drop{display:none}}
.mob-offers{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px 14px;margin:-18px 0 26px;padding:0 20px;text-align:center}
.mob-offers span{flex-basis:100%;font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#d6b477}
.mob-offers a{font-size:16px;font-weight:600;color:rgba(255,255,255,.85);text-decoration:underline;text-decoration-color:rgba(214,180,119,.5);text-underline-offset:4px}
.mob-contact{display:flex;gap:22px;margin:18px 0 0}
.mob-contact a{font-size:15px;font-weight:700;color:rgba(255,255,255,.75)}
@media(max-width:980px){
  .mobile-menu{justify-content:flex-start!important;padding:112px 20px 28px!important;overflow-y:auto}
  .mobile-menu nav{gap:0!important;margin-bottom:30px!important}
  .mobile-menu nav a{font-size:27px!important;padding:6px 0!important;line-height:1.15}
  .mob-offers{margin:-8px 0 24px}
}
@media(max-height:700px){.mobile-menu nav a{font-size:23px!important;padding:4px 0!important}}
body.menu-open .fr-contact{display:none!important}
/* Ticket-Button nie umbrechen; feste Leiste am Handy schlanker */
.ticket-nav{white-space:nowrap}
@media(max-width:980px){
  .nav.nav-fixed .logo{width:74px}
  .nav.nav-fixed .ticket-nav{padding:9px 15px;font-size:14px}
  .nav.nav-fixed .nav-toggle{width:40px;height:40px}
}
@media(max-width:380px){.ticket-nav{padding:10px 13px!important;font-size:13px!important}}
/* Handy: Logo oben etwas kleiner und genug Abstand zum Seitenkopf (auch Seiten mit Formular im Kopf) */
@media(max-width:980px){
  .nav:not(.nav-fixed) .logo{width:112px}
  .page-hero .wrap,.page-hero.with-form .wrap{padding-top:150px!important}
}
/* Logo immer im Seitenverhältnis (width/height-Attribute nur für den Platzhalter) */
.nav .logo,.site-footer .logo{height:auto!important}
/* Menüpunkte nie umbrechen (mit „Partner“ ist es enger) */
.nav-side a,.nav-drop-btn{white-space:nowrap}
@media(min-width:981px) and (max-width:1120px){.nav-side{gap:16px!important}.nav a,.nav-drop-btn{font-size:13.5px!important}.nav .logo{width:112px}}
