/*
Theme Name: KC Profikegler Startseite
Theme URI: https://profikegler.de/
Description: Schlankes Startseiten-Theme mit unveränderter Startseitengrafik und transparenten Klickflächen.
Version: 4.3
Author: KC Profikegler
Text Domain: profikegler
*/
html,body{margin:0;padding:0;background:#070b0e;}body{overflow-x:hidden}.pk-page{width:100%;margin:0 auto}.pk-image-map{position:relative;width:100%;line-height:0}.pk-image-map>img{display:block;width:100%;height:auto;margin:0}.pk-hotspot{position:absolute;display:block;z-index:10;background:transparent;text-decoration:none}.pk-hotspot:focus-visible{outline:3px solid #f2c14e;outline-offset:2px;background:rgba(242,193,78,.12)}.screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.pk-content{max-width:960px;margin:0 auto;padding:48px 24px;line-height:1.6;background:#fff;color:#111;min-height:70vh}.pk-content h1{line-height:1.2}.pk-entry img{max-width:100%;height:auto}

/* Rechtliche Seiten */
.pk-legal{min-height:100vh;background:#070b0e;color:#f4f1e8;padding:64px 20px;box-sizing:border-box;font-family:Arial,Helvetica,sans-serif}.pk-legal-card{max-width:820px;margin:0 auto;border:1px solid rgba(210,169,73,.45);padding:42px 46px;box-sizing:border-box;background:#0b1014}.pk-legal h1{margin:10px 0 36px;color:#d2a949;font-size:clamp(34px,6vw,58px);line-height:1.05;text-transform:uppercase;letter-spacing:.04em}.pk-legal h2{margin:0 0 34px;font-size:24px;color:#fff}.pk-legal h3{margin:30px 0 8px;color:#d2a949;font-size:16px;text-transform:uppercase;letter-spacing:.08em}.pk-legal p{margin:0;line-height:1.75;font-size:17px}.pk-legal a{color:#e1bd62}.pk-back{display:inline-block;margin-bottom:20px;text-decoration:none;font-weight:700}.pk-back:hover{text-decoration:underline}@media(max-width:600px){.pk-legal{padding:30px 14px}.pk-legal-card{padding:28px 22px}.pk-legal p{font-size:16px}}

/* Wasserzeichen auf allen Seiten außer der Startseite.
   Das Wasserzeichen liegt INNERHALB des Seitenbereichs, damit es nicht von
   den undurchsichtigen Inhalts-Hintergruenden verdeckt wird. */
body:not(.home) .pk-content,
body:not(.home) .pk-legal {
  position: relative;
  isolation: isolate;
}

body:not(.home) .pk-content::before,
body:not(.home) .pk-legal::before {
  content: "";
  position: fixed;
  inset: 0;
  background-image: url("assets/wasserzeichen.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: min(85vw, 1100px) auto;
  opacity: 0.09;
  pointer-events: none;
  z-index: 0;
}

body:not(.home) .pk-content > *,
body:not(.home) .pk-legal > * {
  position: relative;
  z-index: 1;
}

/* Auf den dunklen Rechtseiten bleibt die Karte leicht transparent,
   damit das Logo als Wasserzeichen sichtbar bleibt. */
body:not(.home) .pk-legal-card {
  background: rgba(11,16,20,.88);
}


/* v1.7: Inhaltsseiten im dunklen Profikegler-Look.
   Nur diese fünf Seiten werden geändert; Impressum/Datenschutz bleiben unverändert. */
body.page-ueber-uns .pk-content,
body.page-termine .pk-content,
body.page-galerie .pk-content,
body.page-kontakt .pk-content,
body.page-ergebnisse .pk-content {
  max-width:none;
  min-height:100vh;
  box-sizing:border-box;
  background:transparent;
  color:#fff;
}

body.page-ueber-uns .pk-content h1,
body.page-termine .pk-content h1,
body.page-galerie .pk-content h1,
body.page-kontakt .pk-content h1,
body.page-ergebnisse .pk-content h1,
body.page-ueber-uns .pk-content h2, body.page-ueber-uns .pk-content h3,
body.page-termine .pk-content h2, body.page-termine .pk-content h3,
body.page-galerie .pk-content h2, body.page-galerie .pk-content h3,
body.page-kontakt .pk-content h2, body.page-kontakt .pk-content h3,
body.page-ergebnisse .pk-content h2, body.page-ergebnisse .pk-content h3 { color:#fff; }

body.page-ueber-uns .pk-content a,
body.page-termine .pk-content a,
body.page-galerie .pk-content a,
body.page-kontakt .pk-content a,
body.page-ergebnisse .pk-content a { color:#fff; }

body.page-ueber-uns .pk-content article,
body.page-termine .pk-content article,
body.page-galerie .pk-content article,
body.page-kontakt .pk-content article,
body.page-ergebnisse .pk-content article {
  max-width:960px;
  margin:0 auto;
}

/* v1.8: Startseiten-Link auf den fünf Haupt-Unterseiten */
.pk-page-home {
  display:inline-block;
  margin:0 0 28px;
  padding:10px 16px;
  border:1px solid rgba(255,255,255,.55);
  border-radius:4px;
  color:#000 !important;
  text-decoration:none;
  font-weight:700;
  line-height:1.2;
}
.pk-page-home:hover,
.pk-page-home:focus-visible {
  color:#000 !important;
  background:rgba(255,255,255,.12);
  border-color:#fff;
  text-decoration:none;
}

/* v2.0: Jahreskalender auf der Seite Termine */
.pk-calendar-intro{margin:0 0 24px;color:#fff;font-size:17px}
.pk-year-nav{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 28px;padding:12px 16px;border:1px solid rgba(255,255,255,.25);background:rgba(7,11,14,.58);border-radius:8px}
.pk-year-nav a{color:#fff!important;text-decoration:none;font-weight:700}.pk-year-nav strong{font-size:22px;color:#fff}.pk-year-nav a:hover{text-decoration:underline}
.pk-calendar-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-bottom:36px}
.pk-month{background:rgba(7,11,14,.72);border:1px solid rgba(255,255,255,.22);border-radius:8px;padding:14px;box-sizing:border-box;box-shadow:0 6px 22px rgba(0,0,0,.18)}
.pk-month h2{margin:0 0 12px!important;text-align:center;font-size:21px;color:#fff!important}
.pk-weekdays,.pk-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}
.pk-weekdays span{text-align:center;font-size:12px;font-weight:700;color:rgba(255,255,255,.72);padding:3px 0}
.pk-day{min-height:52px;border:1px solid rgba(255,255,255,.10);border-radius:5px;padding:4px;box-sizing:border-box;text-align:center;color:#fff;background:rgba(255,255,255,.035);overflow:hidden}
.pk-day-number{display:block;font-size:13px;line-height:18px}.pk-empty{visibility:hidden}
.pk-kegeln{background:#d2a949;border-color:#f2d27d;color:#080b0e!important;font-weight:800}
.pk-kegeln-label{display:block;font-size:10px;line-height:14px;white-space:nowrap;color:#080b0e}
@media(max-width:850px){.pk-calendar-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.pk-calendar-grid{grid-template-columns:1fr}.pk-day{min-height:48px}.pk-year-nav{padding:10px}.pk-year-nav strong{font-size:19px}}

/* v2.4: Über-uns-Seite zeigt ausschließlich das Gruppenfoto, maximal groß. */
body.page-ueber-uns { background:#070b0e; }
body.page-ueber-uns .pk-about-photo {
  width:100vw;
  min-height:100vh;
  margin:0;
  padding:0;
  display:flex;
  align-items:flex-start;
  justify-content:center;
  background:#070b0e;
}
body.page-ueber-uns .pk-about-photo img {
  display:block;
  width:100vw;
  height:auto;
  max-width:none;
  margin:0;
  padding:0;
}

/* v2.5: Startseiten-Link wieder auf der Über-uns-Seite. */
body.page-ueber-uns .pk-about-photo { position:relative; }
body.page-ueber-uns .pk-about-home {
  position:absolute;
  top:20px;
  left:20px;
  z-index:20;
  margin:0;
  color:#000 !important;
  background:rgba(255,255,255,.78);
  border-color:rgba(0,0,0,.55);
}
body.page-ueber-uns .pk-about-home:hover,
body.page-ueber-uns .pk-about-home:focus-visible {
  color:#000 !important;
  background:rgba(255,255,255,.94);
  border-color:#000;
}
@media(max-width:600px){body.page-ueber-uns .pk-about-home{top:10px;left:10px;padding:8px 12px}}


/* v2.6: Über-uns-Foto als responsive Vorschau; Klick öffnet Original in neuem Tab. */
body.page-ueber-uns .pk-about-photo {
  box-sizing:border-box;
  padding:0;
}
body.page-ueber-uns .pk-about-image-link {
  display:block;
  width:100%;
  max-width:1536px;
  margin:0 auto;
  line-height:0;
  cursor:zoom-in;
}
body.page-ueber-uns .pk-about-image-link img {
  display:block;
  width:100%;
  height:auto;
  max-width:100%;
  object-fit:contain;
}
@media(max-width:600px){
  body.page-ueber-uns .pk-about-photo {
    min-height:100svh;
    align-items:flex-start;
  }
  body.page-ueber-uns .pk-about-image-link {
    width:100vw;
    max-width:100vw;
  }
  body.page-ueber-uns .pk-about-image-link img {
    width:100vw;
    height:auto;
    max-height:calc(100svh - 8px);
    object-fit:contain;
    object-position:top center;
  }
}

/* v2.7: Über-uns-Vorschaufoto auf 20 % verkleinert; Original-Link bleibt erhalten. */
body.page-ueber-uns .pk-about-image-link {
  width:20%;
  max-width:20%;
  margin:0 auto;
}
body.page-ueber-uns .pk-about-image-link img {
  width:100%;
  height:auto;
  max-width:100%;
}
@media(max-width:600px){
  body.page-ueber-uns .pk-about-image-link {
    width:20vw;
    max-width:20vw;
    margin:0 auto;
  }
  body.page-ueber-uns .pk-about-image-link img {
    width:100%;
    height:auto;
    max-height:none;
  }
}

/* v2.9: Über-uns-Vorschaufoto auf ein Viertel von v2.8 verkleinert (2,5 %); Startseiten-Link weiß. */
body.page-ueber-uns .pk-about-image-link {
  width:2.5%;
  max-width:2.5%;
}
body.page-ueber-uns .pk-about-home,
body.page-ueber-uns .pk-about-home:hover,
body.page-ueber-uns .pk-about-home:focus-visible {
  color:#fff !important;
}
@media(max-width:600px){
  body.page-ueber-uns .pk-about-image-link {
    width:2.5vw;
    max-width:2.5vw;
  }
}

/* v3.0: kleine feste Vorschau auf Über uns; Startseiten-Link gold/gelb. */
body.page-ueber-uns .pk-about-image-link {
  width:180px;
  max-width:calc(100vw - 32px);
  margin:0 auto;
}
body.page-ueber-uns .pk-about-image-link img {
  display:block;
  width:100%;
  height:auto;
  max-width:100%;
  max-height:none;
}
body.page-ueber-uns .pk-about-home,
body.page-ueber-uns .pk-about-home:hover,
body.page-ueber-uns .pk-about-home:focus-visible {
  color:#f2c14e !important;
}
@media(max-width:600px){
  body.page-ueber-uns .pk-about-image-link {
    width:160px;
    max-width:calc(100vw - 32px);
  }
}

/* v3.1: robuste Über-uns-Regeln ohne Abhängigkeit von WordPress body-Klassen. */
.pk-about-photo {
  width:100% !important;
  min-height:100vh;
  margin:0 !important;
  padding:60px 16px 20px !important;
  box-sizing:border-box;
  display:flex;
  align-items:flex-start;
  justify-content:center;
  position:relative;
  background:#070b0e;
}
.pk-about-photo .pk-about-image-link {
  display:block !important;
  width:100px !important;
  max-width:100px !important;
  margin:0 auto !important;
  line-height:0;
  cursor:zoom-in;
  flex:0 0 100px !important;
}
.pk-about-photo .pk-about-image-link img {
  display:block !important;
  width:100px !important;
  max-width:100px !important;
  height:auto !important;
  max-height:none !important;
  object-fit:contain;
}
.pk-about-photo .pk-about-home,
.pk-about-photo .pk-about-home:link,
.pk-about-photo .pk-about-home:visited,
.pk-about-photo .pk-about-home:hover,
.pk-about-photo .pk-about-home:active,
.pk-about-photo .pk-about-home:focus-visible {
  position:absolute;
  top:14px;
  left:16px;
  z-index:30;
  color:#f2c14e !important;
  -webkit-text-fill-color:#f2c14e !important;
  text-decoration:none;
  background:transparent !important;
  border:0 !important;
  padding:0 !important;
}
@media(max-width:600px){
  .pk-about-photo { padding-top:54px !important; }
  .pk-about-photo .pk-about-image-link,
  .pk-about-photo .pk-about-image-link img {
    width:90px !important;
    max-width:90px !important;
  }
  .pk-about-photo .pk-about-image-link { flex-basis:90px !important; }
  .pk-about-photo .pk-about-home { top:12px; left:12px; }
}

/* Members-only login */
.pk-members-wrap{min-height:100vh;box-sizing:border-box;padding:48px 20px;color:#fff;background:#070b0e;}
.pk-members-box{max-width:560px;margin:0 auto;padding:28px;border:1px solid rgba(242,193,78,.45);border-radius:12px;background:rgba(0,0,0,.32);}
.pk-members-box h1{color:#f2c14e;margin-top:0;}
.pk-members-box label{display:block;margin:14px 0 6px;}
.pk-members-box input{width:100%;box-sizing:border-box;padding:12px;border-radius:6px;border:1px solid #777;background:#111;color:#fff;}
.pk-members-box button{margin-top:18px;padding:11px 18px;border:0;border-radius:6px;background:#f2c14e;color:#111;font-weight:700;cursor:pointer;}
.pk-members-error{color:#ffb3b3;}
.pk-members-home{display:inline-block;margin-bottom:22px;color:#f2c14e;text-decoration:none;font-weight:700;}

/* v3.5: WordPress-Login für Members only */
.pk-members-logout{color:#f2c14e;text-decoration:none;font-weight:700;}


/* v3.7: Startseiten-Link im Members-Bereich garantiert sichtbar. */
.pk-members-wrap .pk-members-home,
.pk-members-wrap .pk-members-home:link,
.pk-members-wrap .pk-members-home:visited,
.pk-members-wrap .pk-members-home:hover,
.pk-members-wrap .pk-members-home:active,
.pk-members-wrap .pk-members-home:focus {
  display:inline-block !important;
  position:relative !important;
  z-index:50 !important;
  visibility:visible !important;
  opacity:1 !important;
  color:#f2c14e !important;
  -webkit-text-fill-color:#f2c14e !important;
  background:transparent !important;
  text-decoration:none !important;
  font-weight:700 !important;
  margin:0 0 22px 0 !important;
}


/* v3.8: fester, immer sichtbarer Startseiten-Link auf Members only */
.pk-members-home-fixed,
.pk-members-home-fixed:link,
.pk-members-home-fixed:visited,
.pk-members-home-fixed:hover,
.pk-members-home-fixed:active,
.pk-members-home-fixed:focus {
  position: fixed !important;
  top: 18px !important;
  left: 18px !important;
  z-index: 2147483647 !important;
  display: inline-block !important;
  visibility: visible !important;
  opacity: 1 !important;
  color: #f2c14e !important;
  -webkit-text-fill-color: #f2c14e !important;
  background: rgba(0,0,0,.72) !important;
  padding: 10px 14px !important;
  border: 1px solid rgba(242,193,78,.7) !important;
  border-radius: 6px !important;
  text-decoration: none !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
}


/* v4.2: Members-Downloadbutton und geschützte Downloads-Seite. */
.pk-download-launch{margin:28px 0 22px}.pk-download-button{display:inline-flex;align-items:center;gap:12px;padding:13px 18px;border:1px solid #f2c14e;border-radius:7px;background:#080b0e;color:#f2c14e!important;text-decoration:none!important;font-weight:800}.pk-download-button:hover,.pk-download-button:focus-visible{background:#15120a;color:#ffe08a!important}.pk-download-icon{font-size:30px;line-height:1}
.pk-downloads-direct{min-height:100vh;background:#070b0e;color:#fff;font-family:Arial,Helvetica,sans-serif}.pk-downloads-wrap{position:relative;isolation:isolate;min-height:100vh;padding:48px 20px;box-sizing:border-box}.pk-downloads-wrap::before{content:"";position:fixed;inset:0;background:url("assets/wasserzeichen.png") center center/min(85vw,1100px) auto no-repeat;opacity:.09;pointer-events:none;z-index:0}.pk-downloads-wrap>*{position:relative;z-index:1}.pk-downloads-top,.pk-downloads-box{max-width:760px;margin-left:auto;margin-right:auto}.pk-downloads-top{margin-bottom:18px}.pk-downloads-home{display:inline-block;color:#f2c14e!important;-webkit-text-fill-color:#f2c14e!important;background:#000;padding:10px 14px;border:1px solid #f2c14e;border-radius:6px;text-decoration:none!important;font-weight:700}.pk-downloads-box{background:rgba(11,16,20,.88);border:1px solid rgba(210,169,73,.45);padding:38px 42px;box-sizing:border-box}.pk-downloads-box h1{margin:0 0 30px;color:#d2a949;font-size:clamp(34px,6vw,56px);text-transform:uppercase;letter-spacing:.04em}.pk-download-list{display:grid;gap:14px}.pk-download-file{display:flex;align-items:center;gap:14px;padding:15px 16px;border:1px solid rgba(242,193,78,.55);border-radius:7px;background:rgba(0,0,0,.35);color:#fff!important;text-decoration:none!important;font-weight:700}.pk-download-file:hover,.pk-download-file:focus-visible{border-color:#f2c14e;background:rgba(242,193,78,.10)}.pk-download-file-icon{color:#f2c14e;font-size:28px;line-height:1}.pk-downloads-back{margin:28px 0 0}.pk-downloads-back a{color:#f2c14e!important}.pk-members-direct .pk-members-wrap{position:relative;isolation:isolate;min-height:100vh}.pk-members-direct .pk-members-wrap::before{content:"";position:fixed;inset:0;background:url("assets/wasserzeichen.png") center center/min(85vw,1100px) auto no-repeat;opacity:.09;pointer-events:none;z-index:0}.pk-members-direct .pk-members-wrap>*{position:relative;z-index:1}@media(max-width:600px){.pk-downloads-wrap{padding:28px 14px}.pk-downloads-box{padding:28px 22px}.pk-download-file{align-items:flex-start}}
