html{scrollbar-gutter:stable;scroll-padding-top:80px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
/* clip prevents horizontal overflow without creating a scroll container,
   keeping position:sticky on nav functional in all browsers */
html,body{overflow-x:clip!important}
/* Nav compact state on scroll */
nav:not(.mobile-menu){transition:padding 0.3s}
nav.scrolled{padding:12px 0}
@supports(animation-timeline:scroll()){
    @keyframes _nav-shrink{from{padding:22px 0}to{padding:12px 0}}
    nav:not(.mobile-menu){animation:_nav-shrink linear both;animation-timeline:scroll(root block);animation-range:0px 80px}
}
.skip-link{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}.skip-link:focus{position:fixed;left:16px;top:16px;width:auto;height:auto;padding:10px 20px;background:#FF9500;color:#0B1426;font-weight:700;font-size:0.9rem;border-radius:6px;z-index:9999;text-decoration:none;outline:2px solid #0B1426}
::-webkit-scrollbar{width:6px;height:6px}
::-webkit-scrollbar-track{background:#0B1426}
::-webkit-scrollbar-thumb{background:#162D5A;border-radius:3px}
::-webkit-scrollbar-thumb:hover{background:#4B5563}
nav{position:sticky;top:0;z-index:100;background:rgba(6,15,30,0.97);backdrop-filter:blur(24px);border-bottom:1px solid rgba(255,255,255,0.07);padding:22px 0;line-height:1}
.nav-inner{max-width:1450px;margin:0 auto;padding:0 24px;display:flex;align-items:center;position:relative;gap:24px}
.nav-logo{font-family:'Barlow Condensed',sans-serif;font-size:1.45rem;font-weight:800;letter-spacing:0.5px;color:#fff;display:flex;align-items:center;gap:10px;white-space:nowrap;flex-shrink:0;text-decoration:none;z-index:1}
.nav-logo .logo-badge{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;background:#FF9500;color:#0B1426;font-size:13px;font-weight:900;border-radius:5px;flex-shrink:0}
.nav-logo .accent{color:#FF9500}
.navbar-nav{position:static;left:auto;transform:none;flex:1;display:flex;list-style:none;gap:2px;align-items:center;justify-content:center;white-space:nowrap}
.navbar-nav a{display:block;padding:8px 13px;font-size:0.875rem;font-weight:500;color:#C8D6E5;text-decoration:none;border-radius:6px;transition:color 0.2s,background 0.2s;line-height:1}
.navbar-nav a:hover{color:#fff;background:rgba(255,255,255,0.06)}
.navbar-nav a.active{color:#FF9500}
.navbar-nav a.nav-attention{animation:nav-kb-blink 2s ease-in-out infinite}
.navbar-nav a.nav-attention:hover,.navbar-nav a.nav-attention:focus-visible{animation:none;color:#fff}
@keyframes nav-kb-blink{0%,35%{color:#C8D6E5}50%,80%{color:#FF9500}95%,100%{color:#C8D6E5}}
.nav-badge-new{display:inline-block;background:#FF9500;color:#0B1426;font-size:9px;font-weight:800;letter-spacing:.5px;padding:1px 5px;border-radius:4px;vertical-align:middle;margin-left:4px;line-height:1.4}
.btn-nav-cta{background:#FF9500!important;color:#0B1426!important;font-weight:700!important;padding:10px 22px!important;border-radius:8px!important;transition:background 0.2s!important;border:none!important;line-height:1!important;min-height:44px!important;display:inline-flex!important;align-items:center!important}
.btn-nav-cta:hover{background:#FFAB30!important}
.lang-toggle{display:inline-flex;align-items:center;background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.18);border-radius:6px;overflow:hidden;flex-shrink:0}
.lang-toggle .lang-opt{display:inline-flex;align-items:center;justify-content:center;padding:0 14px;height:44px;font-family:'DM Mono',monospace;font-size:0.72rem;font-weight:700;letter-spacing:1.5px;color:rgba(255,255,255,0.4);text-decoration:none;transition:color 0.2s,background 0.2s;white-space:nowrap;user-select:none;line-height:1}
.lang-toggle .lang-opt+.lang-opt{border-left:1px solid rgba(255,255,255,0.12)}
.lang-toggle .lang-opt:not(.lang-active):hover{color:rgba(255,255,255,0.75);background:rgba(255,255,255,0.07)}
.lang-toggle .lang-opt.lang-active{color:#FF9500;background:rgba(255,149,0,0.12);cursor:default}
.hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;background:none;border:none;padding:14px 11px;flex-shrink:0;z-index:1}
.hamburger span{display:block;width:22px;height:2px;background:#fff;border-radius:2px;transition:transform 0.3s,opacity 0.3s}
body:has(#mobileMenu.open) .hamburger span:nth-child(1){transform:translateY(7px) rotate(45deg)}
body:has(#mobileMenu.open) .hamburger span:nth-child(2){opacity:0;transform:scaleX(0)}
body:has(#mobileMenu.open) .hamburger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.mobile-menu{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(6,15,30,0.98);z-index:200;flex-direction:column;align-items:center;justify-content:center;gap:28px}
.mobile-menu.open{display:flex}
.mobile-menu a{font-size:1.3rem;color:#fff;font-weight:600;text-decoration:none}
.mobile-menu a.cta{color:#FF9500}
.mobile-close{position:absolute;top:16px;right:16px;font-size:1.4rem;color:#7A8FA8;cursor:pointer;background:none;border:none;min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;border-radius:6px}
@media(max-width:1365px){.navbar-nav{display:none}.hamburger{display:flex}}
.glossar-link{color:#FF9500;text-decoration:underline;text-decoration-color:rgba(255,149,0,0.45);text-underline-offset:2px;transition:text-decoration-color 0.2s}.glossar-link:hover{text-decoration-color:#FF9500}
*:focus-visible{outline:2px solid #FF9500;outline-offset:3px;border-radius:3px}
a:focus-visible,button:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(255,149,0,0.45)}
input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #FF9500;outline-offset:0}
::placeholder{color:#7A8FA8;opacity:1}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

/* ===== LEISTUNGEN HOVER-DROPDOWN ===== */
.nav-dropdown{position:relative}
.nav-dropdown-trigger{display:inline-flex;align-items:center;gap:5px;padding:8px 13px;font-size:0.875rem;font-weight:500;color:#C8D6E5;background:none;border:none;cursor:pointer;border-radius:6px;transition:color 0.2s,background 0.2s;line-height:1;font-family:inherit;white-space:nowrap}
.nav-dropdown-trigger:hover,.nav-dropdown.open .nav-dropdown-trigger{color:#fff;background:rgba(255,255,255,0.06)}
.nav-dropdown-trigger .drop-chevron{transition:transform 0.2s;flex-shrink:0}
.nav-dropdown.open .nav-dropdown-trigger .drop-chevron{transform:rotate(180deg)}
/* Panel: display:none keeps it out of layout flow entirely until opened by JS */
.nav-dropdown-panel{display:none;position:fixed;top:80px;left:200px;width:340px;background:rgba(8,16,32,0.98);border:1px solid rgba(255,255,255,0.1);border-radius:12px;padding:8px;z-index:9999;box-shadow:0 20px 48px rgba(0,0,0,0.7);grid-template-columns:1fr;gap:6px;opacity:0;pointer-events:none;transition:opacity 0.18s}
.nav-drop-card{display:flex;flex-direction:column;padding:16px 14px;border-radius:8px;text-decoration:none;transition:background 0.15s,border-color 0.15s;color:inherit;border:1px solid rgba(255,255,255,0.07);background:rgba(255,255,255,0.03)}
.nav-drop-card:hover{background:rgba(255,255,255,0.08);border-color:rgba(255,149,0,0.3)}
.nav-drop-card[aria-current="page"]{border-color:rgba(255,149,0,0.4);background:rgba(255,149,0,0.06)}
.nav-drop-card:focus-visible{outline:2px solid #FF9500;outline-offset:2px}
.nav-drop-icon{width:34px;height:34px;border-radius:8px;background:rgba(255,149,0,0.14);display:flex;align-items:center;justify-content:center;margin-bottom:10px}
.nav-drop-title{font-size:0.85rem;font-weight:700;color:#fff;margin-bottom:4px;line-height:1.2}
.nav-drop-desc{font-size:0.72rem;color:#7A8FA8;line-height:1.45}
/* Foto-Variante: Bild links, Text rechts, oben bündig */
.nav-drop-card--photo{flex-direction:row!important;align-items:flex-start;gap:12px;padding:10px 12px}
.nav-drop-photo{width:110px;height:80px;object-fit:cover;border-radius:6px;flex-shrink:0}
.nav-drop-card--photo .nav-drop-title{margin-bottom:3px}
/* Inline-Variante: Flagge + Ländername in einer Zeile, keine Beschreibung */
.nav-drop-flag{font-size:1.1rem;flex-shrink:0;line-height:1}
.nav-drop-card.nav-drop-card--inline{display:flex;flex-direction:row;align-items:center;padding:10px 14px;gap:10px}
.nav-drop-card.nav-drop-card--inline .nav-drop-title{margin-bottom:0;font-size:0.875rem}
/* Mobile sub-menu */
.mobile-nav-group{display:flex;flex-direction:column;align-items:center;gap:0;width:100%}
.mobile-nav-group-trigger{background:none;border:none;font-size:1.3rem;color:#fff;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:8px;font-family:inherit;padding:0;line-height:1}
.mobile-nav-group-trigger .drop-chevron{transition:transform 0.2s}
.mobile-nav-group.open .mobile-nav-group-trigger .drop-chevron{transform:rotate(180deg)}
.mobile-nav-sub{display:none;flex-direction:column;align-items:center;gap:18px;margin-top:20px;padding-top:18px;border-top:1px solid rgba(255,255,255,0.1);width:100%}
.mobile-nav-group.open .mobile-nav-sub{display:flex}
.mobile-nav-sub a{font-size:1.1rem!important;color:#C8D6E5!important;font-weight:500!important;text-decoration:none}
.mobile-nav-sub a:hover{color:#fff!important}

/* ===== FOOTER ===== */
footer{background:#030912;color:#7A8FA8;border-top:1px solid rgba(255,255,255,0.07);padding:80px 0 0;text-align:left}
footer .container{max-width:1200px;margin:0 auto;padding:0 24px}
.footer-top{display:grid;grid-template-columns:2fr 1fr 1fr 1.1fr;gap:52px;margin-bottom:60px}
.footer-brand>p{font-size:0.875rem;color:#7A8FA8;line-height:1.72;margin:18px 0 24px;max-width:270px}
.dguv-badge{display:inline-flex;align-items:center;gap:10px;padding:10px 16px;background:rgba(255,149,0,0.07);border:1px solid rgba(255,149,0,0.22);border-radius:8px;font-family:'DM Mono',monospace;font-size:0.72rem;font-weight:500;color:#FF9500}
.footer-col h4{font-family:'Barlow Condensed',sans-serif;font-size:0.95rem;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:#FFFFFF;margin-bottom:20px}
.footer-col ul{list-style:none;display:flex;flex-direction:column;gap:10px}
.footer-col a{font-size:0.875rem;color:#7A8FA8;text-decoration:none;transition:color 0.2s}
.footer-col a:hover{color:#E8EDF5}
.footer-contact{display:flex;flex-direction:column;gap:14px}
.fc-item{font-size:0.875rem;color:#7A8FA8}
.fc-item strong{display:block;font-family:'DM Mono',monospace;font-size:0.7rem;letter-spacing:1px;text-transform:uppercase;color:#7A8FA8;margin-bottom:3px}
.footer-bottom{border-top:1px solid rgba(255,255,255,0.08);padding-top:28px;padding-bottom:28px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px}
.footer-copy{font-size:0.78rem;color:#7A8FA8}
.footer-legal{display:flex;gap:24px}
.footer-legal a{font-size:0.78rem;color:#7A8FA8;text-decoration:none;transition:color 0.2s}
.footer-legal a:hover{color:#E8EDF5}
@media(max-width:1024px){.footer-top{grid-template-columns:1fr 1fr;gap:36px}}
@media(max-width:768px){.footer-top{grid-template-columns:1fr;gap:28px}.footer-bottom{flex-direction:column;align-items:flex-start}}
@media(max-width:480px){.footer-legal{flex-wrap:wrap;gap:14px}}
