/* Gemeinsamer Header und Footer – nur hier zentral ändern. */
.header{position:sticky!important;top:0!important;z-index:1000!important;background:#101d2e!important;min-height:140px!important;display:flex!important;align-items:center!important;overflow:visible!important}
.header .nav{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:20px!important;width:100%!important;max-width:none!important;padding:12px 2.1%!important;min-height:140px!important}
.header .logo{display:flex!important;flex:0 0 auto!important;align-items:center!important;padding:0!important;margin:0!important;transform:none!important;position:static!important;height:auto!important;width:auto!important;background:transparent!important}
.header .club-logo-frame{display:block!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;width:auto!important;height:auto!important;overflow:visible!important}
.header .club-logo-img{display:block!important;width:180px!important;height:auto!important;max-height:145px!important;object-fit:contain!important;padding:0!important;margin:0!important;border-radius:14px!important}
.header .links{display:flex;align-items:center;gap:clamp(12px,1.7vw,32px)}
.header .links a{white-space:nowrap}
.header .mobilebtn{display:none}
.footer{background:#050d18!important;color:#a9c4da!important;padding:56px 0 26px!important}
.footer .footgrid{display:grid!important;grid-template-columns:1.7fr .9fr .9fr!important;gap:36px!important}
.footer .footgrid h4{color:white!important;margin:0 0 18px!important}
.footer .footgrid>div>a:not(.logo){display:block;margin:0 0 12px;color:#a9c4da}
.footer .footgrid .logo{display:block!important;width:100%!important;max-width:100%!important;height:auto!important;position:static!important;background:transparent!important}
.footer .footgrid .club-logo-frame{display:flex!important;justify-content:center!important;align-items:center!important;background:#fff!important;border-radius:12px!important;min-height:115px!important;width:100%!important;padding:12px!important}
.footer .footgrid .club-logo-img{width:auto!important;max-width:100%!important;height:100px!important;object-fit:contain!important;padding:0!important}
.footer .footbottom{display:flex!important;justify-content:space-between!important;align-items:center!important;gap:20px!important;margin-top:46px!important;padding-top:28px!important;border-top:1px solid #283646!important}
.footer .legal-links{display:flex!important;flex-direction:row!important;align-items:center!important;gap:22px!important;white-space:nowrap!important}
.footer .legal-links a{display:inline!important;width:auto!important;margin:0!important;color:#a9c4da!important}
@media(max-width:950px){.header,.header .nav{min-height:90px!important}.header .club-logo-img{width:110px!important;max-height:82px!important}.header .mobilebtn{display:block!important;cursor:pointer}.header .links{display:none!important;position:absolute!important;top:100%!important;left:0!important;right:0!important;background:#101d2e!important;padding:22px!important;flex-direction:column!important;align-items:stretch!important;gap:14px!important;box-shadow:0 14px 22px #0003!important}.header .links.is-open{display:flex!important}.footer .footgrid{grid-template-columns:1fr 1fr!important}}
@media(max-width:620px){.footer .footgrid{grid-template-columns:1fr!important}.footer .footbottom{flex-wrap:wrap!important}.footer .legal-links{gap:18px!important}}

/* Einheitlicher, gut sichtbarer Menüschalter auf allen Mobilseiten. */
@media (max-width:950px){
  .header .nav{position:relative!important}
  .header .mobilebtn{
    display:flex!important;align-items:center!important;justify-content:center!important;
    flex:0 0 48px!important;width:48px!important;height:48px!important;
    min-width:48px!important;min-height:48px!important;
    margin:0!important;padding:0!important;
    border:1px solid rgba(255,255,255,.22)!important;border-radius:12px!important;
    background:#00b5e5!important;color:#082338!important;
    font-family:Arial,sans-serif!important;font-size:27px!important;font-weight:600!important;
    line-height:1!important;letter-spacing:0!important;text-align:center!important;
    box-shadow:none!important;appearance:none!important;cursor:pointer!important;
  }
  .header .mobilebtn:hover,.header .mobilebtn:focus-visible{background:#33c9ee!important;outline-offset:3px!important}
  .header .links.is-open{display:flex!important}
}

/* Einheitliche mobile Abschlusszeile auf allen oeffentlichen Seiten. */
@media (max-width:620px){
  .footer .footbottom{display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:flex-start!important;flex-wrap:nowrap!important;gap:12px!important;text-align:left!important;font-size:13px!important}
  .footer .footbottom>span{display:block!important;width:100%!important;white-space:normal!important}
  .footer .footbottom .legal-links,.footer .footbottom>span:last-child{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;gap:18px!important;flex-wrap:wrap!important;white-space:normal!important}
  .footer .footbottom .legal-links a{display:inline-block!important;margin:0!important;white-space:nowrap!important}
}

/* Zentraler Nach-oben-Button: auf allen öffentlichen Seiten. */
.back-to-top{position:fixed;right:24px;bottom:24px;z-index:9998;width:52px;height:52px;display:flex;align-items:center;justify-content:center;border:0;border-radius:50%;background:#00b5e5;color:#fff;font:700 32px/1 Arial,sans-serif;box-shadow:0 5px 18px rgba(0,35,60,.25);cursor:pointer;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(8px);transition:opacity .2s ease,transform .2s ease,visibility .2s ease}
.back-to-top.is-visible{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}
.back-to-top:hover{background:#009bc8}.back-to-top:focus-visible{outline:3px solid #08324e;outline-offset:3px}
@media(max-width:620px){.back-to-top{right:16px;bottom:calc(18px + env(safe-area-inset-bottom,0px));width:46px;height:46px;font-size:29px}}
@media(prefers-reduced-motion:reduce){.back-to-top{transition:none}}

/* Footer-Logo: freigestellt, linksbuendig, ohne weisse Karte */
.footer .footgrid .logo{display:inline-block!important;width:auto!important;max-width:100%!important;background:transparent!important;text-align:left!important}
.footer .footgrid .club-logo-frame{display:block!important;width:auto!important;min-height:0!important;height:auto!important;padding:0!important;margin:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;text-align:left!important}
.footer .footgrid .club-logo-img{display:block!important;width:260px!important;max-width:100%!important;height:auto!important;max-height:none!important;object-fit:contain!important;object-position:left center!important;padding:0!important;margin:0!important}
@media(max-width:620px){.footer .footgrid .club-logo-img{width:220px!important}}

/* Kompakter weisser Hintergrund direkt um das freigestellte Footer-Logo */
.footer .footgrid .club-logo-frame{display:inline-block!important;width:fit-content!important;max-width:100%!important;background:#fff!important;padding:10px 12px!important;border-radius:12px!important;line-height:0!important;box-sizing:border-box!important}
.footer .footgrid .club-logo-img{width:260px!important;max-width:100%!important;height:auto!important}
@media(max-width:620px){.footer .footgrid .club-logo-img{width:220px!important}}

/* Footer-Logo etwas kleiner, weisse kompakte Flaeche bleibt erhalten */
.footer .footgrid .club-logo-img{width:195px!important}
@media(max-width:620px){.footer .footgrid .club-logo-img{width:175px!important}}

/* Kontakt-Schaltflaeche: gleiche Schriftstaerke wie die restlichen Menuepunkte. */
.header .links a.navbtn{font-weight:400!important}

/* 2026-10-14: Einheitliche Navigation auf ALLEN oeffentlichen Seiten.
   Hohe Spezifitaet und !important verhindern Ueberschreibungen durch Seiten-CSS. */
.header{height:140px!important;min-height:140px!important;max-height:140px!important;box-sizing:border-box!important}
.header .nav{height:140px!important;min-height:140px!important;max-height:140px!important;box-sizing:border-box!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:20px!important;padding:12px 2.1%!important;width:100%!important;max-width:none!important;transform:none!important;position:relative!important}
.header .logo{flex:0 0 180px!important;width:180px!important;min-width:180px!important;max-width:180px!important;height:auto!important;line-height:normal!important}
.header .logo .club-logo-img{width:180px!important;max-width:180px!important;height:auto!important;max-height:115px!important;object-fit:contain!important}
.header .links{display:flex!important;flex:0 0 auto!important;align-items:center!important;justify-content:flex-end!important;gap:clamp(10px,1.25vw,24px)!important;margin:0!important;padding:0!important;position:static!important;transform:none!important;width:auto!important;max-width:none!important;background:transparent!important;box-shadow:none!important;font-family:Arial,Helvetica,sans-serif!important;font-size:15px!important;font-weight:400!important;line-height:1.3!important;letter-spacing:0!important}
.header .links>a{display:inline-flex!important;flex:0 0 auto!important;align-items:center!important;justify-content:center!important;box-sizing:border-box!important;margin:0!important;white-space:nowrap!important;font-family:Arial,Helvetica,sans-serif!important;font-size:15px!important;font-weight:400!important;line-height:1.3!important;letter-spacing:0!important;text-transform:none!important;text-decoration:none!important;transform:none!important}
.header .links>a:not(.navbtn){padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;color:#e5f0f9!important}
.header .links>a.navbtn{padding:13px 20px!important;border:0!important;border-radius:999px!important;background:#00b5e5!important;color:#071e31!important;font-family:Arial,Helvetica,sans-serif!important;font-size:15px!important;font-weight:400!important;line-height:1.3!important;letter-spacing:0!important;box-shadow:none!important;min-height:45px!important}
.header .links>a.navbtn:hover{background:#33c9ee!important}
.header .links>a:not(.navbtn):hover{color:#77e1ff!important}
.header .links>a:focus-visible{outline:2px solid #77e1ff!important;outline-offset:4px!important}
/* Auf kleineren Desktop-Breiten rechtzeitig auf das mobile Menue wechseln. */
@media(max-width:1450px){
 .header,.header .nav{height:90px!important;min-height:90px!important;max-height:90px!important}
 .header .logo{flex:0 0 110px!important;width:110px!important;min-width:110px!important;max-width:110px!important}
 .header .logo .club-logo-img{width:110px!important;max-width:110px!important;max-height:82px!important}
 .header .mobilebtn{display:flex!important;align-items:center!important;justify-content:center!important;flex:0 0 48px!important;width:48px!important;height:48px!important;min-width:48px!important;min-height:48px!important;padding:0!important;margin:0!important;background:#00b5e5!important;color:#082338!important;border:1px solid rgba(255,255,255,.22)!important;border-radius:12px!important;font:600 27px/1 Arial,sans-serif!important;cursor:pointer!important}
 .header .links{display:none!important;position:absolute!important;top:100%!important;left:0!important;right:0!important;z-index:1001!important;width:100%!important;max-width:none!important;padding:22px!important;box-sizing:border-box!important;background:#101d2e!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;gap:14px!important;box-shadow:0 14px 22px #0003!important}
 .header .links.is-open,.header .links.open{display:flex!important}
 .header .links>a{justify-content:flex-start!important;min-height:38px!important}
 .header .links>a.navbtn{justify-content:center!important;align-self:flex-start!important}
}

/* Facebook-Link im Header: blauer Hintergrund auf jeder Seite.
   Muss nach den allgemeinen Link-Regeln stehen. */
.header .links>a[href*="facebook.com/SkiClubAuHallertau"]{background:#1877f2!important;color:#fff!important;border-radius:9px!important;padding:8px 12px!important;gap:7px!important;text-decoration:none!important;font-weight:400!important;min-height:45px!important;box-sizing:border-box!important}
.header .links>a[href*="facebook.com/SkiClubAuHallertau"]:hover{background:#1665ce!important;color:#fff!important}
.header .links>a[href*="facebook.com/SkiClubAuHallertau"] svg{fill:currentColor;flex-shrink:0}

/* Header-Logo: abgerundete Ecken auf allen Seiten (auch nach Seiten-CSS). */
.header .logo .club-logo-frame{border-radius:14px!important;overflow:hidden!important}
.header .logo .club-logo-img{border-radius:14px!important;overflow:hidden!important}

/* Header-Logo: Rundung am tatsaechlichen Bildausschnitt erzwingen */
header.header nav.nav > a.logo > span.club-logo-frame{border-radius:14px!important;overflow:hidden!important;clip-path:inset(0 round 14px)!important;line-height:0!important}
header.header nav.nav > a.logo > span.club-logo-frame > img.club-logo-img{border-radius:14px!important;clip-path:inset(0 round 14px)!important;display:block!important}
