/* =========================================================
   Seite "Über uns / Unser Konzept" – Premium-Layout (gzk2-*)
   ========================================================= */
.gz-layout{
  --g-deep:#0b4f41; --g:#008f72; --g-soft:#e6f2ee;
  --cream:#f7f4ee; --gold:#b8913e; --ink:#1f2b28; --muted:#5d6b67;
}
.gz-layout .content-container.site-container,
.gz-layout .entry-content-wrap{ padding:0 !important; }
.gz-layout .site-main{ margin:0 !important; }
.gz-layout .entry-content{ margin:0 !important; color:var(--ink); font-size:17px; line-height:1.75; }
.gz-layout .entry-content > *{ margin-top:0; margin-bottom:0; }

/* Sektionen & Breiten */
.gzk2-sec{ padding:96px 24px !important; margin:0 !important; }
.gzk2-sec.is-cream{ background:var(--cream); }
.gzk2-sec.is-white{ background:#fff; }
.gzk2-wrap{ max-width:1140px; margin:0 auto !important; }
.gzk2-narrow{ max-width:760px; margin:0 auto !important; }
.gzk2-center{ text-align:center; }

/* Typografie */
.gz-layout .entry-content h1,
.gz-layout .entry-content h2,
.gz-layout .entry-content h3{ color:var(--g-deep); letter-spacing:-.01em; }
.gz-layout .entry-content h1{ font-size:clamp(34px,4.4vw,56px); line-height:1.12; margin:0 0 22px; }
.gz-layout .entry-content h2{ font-size:clamp(28px,3vw,40px); line-height:1.2; margin:0 0 20px; }
.gz-layout .entry-content h3{ font-size:21px; line-height:1.3; margin:0 0 10px; }
.gzk2-eyebrow{
  font-size:13px !important; letter-spacing:.22em; text-transform:uppercase; font-weight:700;
  color:var(--gold) !important; margin:0 0 14px !important; display:flex; align-items:center; gap:12px;
}
.gzk2-eyebrow::before{ content:""; width:36px; height:1px; background:var(--gold); }
.gzk2-center .gzk2-eyebrow{ justify-content:center; }
.gzk2-center .gzk2-eyebrow::after{ content:""; width:36px; height:1px; background:var(--gold); }
.gzk2-lead{ font-size:19px; line-height:1.7; color:var(--muted); margin:0 0 30px !important; }
.gz-layout .entry-content p a:not(.wp-block-button__link){ color:var(--g); text-decoration:underline; text-underline-offset:3px; }

/* Buttons */
.gzk2-btns{ gap:14px; margin-top:8px !important; }
.gzk2-btns .wp-block-button__link{
  background:var(--g-deep); color:#fff; border:1.5px solid var(--g-deep); border-radius:999px;
  padding:15px 30px; font-size:15px; font-weight:600; letter-spacing:.02em; text-transform:none;
  transition:all .25s ease;
}
.gzk2-btns .wp-block-button__link:hover{ background:var(--g); border-color:var(--g); color:#fff; transform:translateY(-2px); box-shadow:0 12px 24px -12px rgba(0,80,60,.6); }
.gzk2-btns .is-style-outline .wp-block-button__link{ background:transparent; color:var(--g-deep); }
.gzk2-btns .is-style-outline .wp-block-button__link:hover{ background:var(--g-deep); color:#fff; }
.gzk2-dark .gzk2-btns .wp-block-button__link{ background:#fff; color:var(--g-deep); border-color:#fff; }
.gzk2-dark .gzk2-btns .is-style-outline .wp-block-button__link{ background:transparent; color:#fff; border-color:rgba(255,255,255,.6); }

/* Hero */
.gzk2-hero{
  background:linear-gradient(180deg,var(--cream) 0%,#fff 100%);
  padding:80px 24px 96px !important;
}
.gzk2-hero .wp-block-columns{ align-items:center !important; gap:64px !important; }
.gzk2-hero-img{ position:relative; margin:0 !important; }
.gzk2-hero-img img{
  width:100%; aspect-ratio:4/5; object-fit:cover; border-radius:220px 220px 18px 18px;
  box-shadow:0 40px 80px -40px rgba(11,79,65,.55); position:relative; z-index:1;
}
.gzk2-hero-img::before{
  content:""; position:absolute; inset:24px -24px -24px 24px; border:1.5px solid var(--gold);
  border-radius:220px 220px 18px 18px; z-index:0;
}

/* Fakten-Leiste */
.gzk2-facts{ background:var(--g-deep); padding:34px 24px !important; color:#fff; }
.gzk2-facts .wp-block-columns{ gap:24px !important; margin:0 !important; }
.gzk2-facts .wp-block-column{ text-align:center; border-left:1px solid rgba(255,255,255,.15); }
.gzk2-facts .wp-block-column:first-child{ border-left:0; }
.gzk2-facts p{ margin:0 !important; line-height:1.4; font-size:14px; color:rgba(255,255,255,.75); }
.gzk2-facts p strong{ display:block; font-family:"Playfair Display",Georgia,serif; font-size:30px; color:#fff; font-weight:600; margin-bottom:4px; }

/* Bild + Text */
.gzk2-split .wp-block-columns{ align-items:center !important; gap:72px !important; }
.gzk2-split figure{ margin:0 !important; }
.gzk2-split img{ width:100%; aspect-ratio:4/5; object-fit:cover; border-radius:18px; box-shadow:0 30px 60px -30px rgba(11,79,65,.45); }

/* Zitat */
.gzk2-quote{
  background:var(--g-deep) radial-gradient(circle at 15% 20%,rgba(255,255,255,.07),transparent 45%);
  padding:100px 24px !important; text-align:center;
}
.gzk2-quote p{
  font-family:"Playfair Display",Georgia,serif; font-style:italic; color:#fff;
  font-size:clamp(26px,3.2vw,42px); line-height:1.35; max-width:900px; margin:0 auto !important;
}
.gzk2-quote p::before{ content:"“"; display:block; font-size:90px; line-height:.6; color:var(--gold); margin-bottom:18px; font-style:normal; }

/* Säulen */
.gzk2-pillars{ gap:22px !important; margin-top:48px !important; }
.gzk2-pillars > .wp-block-column{
  background:#fff; border-radius:18px; padding:36px 28px !important;
  box-shadow:0 20px 40px -30px rgba(11,79,65,.35); transition:transform .3s, box-shadow .3s;
}
.gzk2-pillars > .wp-block-column:hover{ transform:translateY(-6px); box-shadow:0 30px 50px -30px rgba(11,79,65,.45); }
.gzk2-num{ font-family:"Playfair Display",Georgia,serif; font-size:44px !important; line-height:1 !important; color:var(--gold) !important; margin:0 0 18px !important; }
.gzk2-pillars p{ color:var(--muted); font-size:15.5px; line-height:1.65; margin:0 !important; }

/* Team */
.gzk2-team{ display:grid; grid-template-columns:repeat(5,1fr); gap:34px 22px; margin:50px 0 40px; }
.gzk2-team a{ text-decoration:none !important; text-align:center; color:var(--ink) !important; }
.gzk2-team .ph{
  display:block; width:132px; height:132px; margin:0 auto 14px; border-radius:50%; overflow:hidden;
  border:4px solid #fff; outline:1.5px solid var(--gold); outline-offset:4px;
  box-shadow:0 16px 30px -18px rgba(11,79,65,.6);
}
.gzk2-team img{ width:100%; height:100%; object-fit:cover; transform:scale(1.5); transition:transform .4s; }
.gzk2-team a:hover img{ transform:scale(1.62); }
.gzk2-team .nm{ display:block; font-weight:600; font-size:15px; line-height:1.35; }
.gzk2-team a:hover .nm{ color:var(--g) ; }

/* Angebots-Karten */
.gzk2-cards{ display:grid; grid-template-columns:repeat(2,1fr); gap:22px; margin-top:44px; }
.gzk2-card{
  display:block; background:#fff; border:1px solid #e6ece9; border-radius:18px; padding:32px 32px 28px;
  text-decoration:none !important; color:var(--ink) !important; position:relative; transition:all .3s;
}
.gzk2-card:hover{ border-color:var(--g); box-shadow:0 24px 48px -30px rgba(11,79,65,.45); transform:translateY(-4px); }
.gzk2-card h3{ margin:0 0 8px !important; }
.gzk2-card p{ margin:0 0 18px !important; color:var(--muted); font-size:15.5px; line-height:1.65; }
.gzk2-card .more{ font-weight:600; color:var(--g); font-size:14.5px; letter-spacing:.02em; }
.gzk2-card .more::after{ content:" →"; transition:margin .25s; }
.gzk2-card:hover .more::after{ margin-left:6px; }
.gzk2-card .ic{ width:46px; height:46px; border-radius:12px; background:var(--g-soft); display:grid; place-items:center; margin-bottom:20px; }
.gzk2-card .ic svg{ width:24px; height:24px; stroke:var(--g-deep); fill:none; stroke-width:1.6; }

/* Verein / Mitglied */
.gzk2-duo{ gap:24px !important; }
.gzk2-duo > .wp-block-column{ border-radius:20px; padding:44px 40px !important; }
.gzk2-duo > .wp-block-column:first-child{ background:#fff; border:1px solid #e6ece9; }
.gzk2-duo > .wp-block-column:last-child{ background:var(--g-soft); }
.gzk2-duo p{ color:var(--muted); font-size:16px; }

/* FAQ */
.gzk2-faq{ border-bottom:1px solid #e1e8e5; padding:22px 4px; margin:0 !important; }
.gzk2-faq:first-of-type{ border-top:1px solid #e1e8e5; }
.gzk2-faq summary{
  list-style:none; cursor:pointer; font-family:"Playfair Display",Georgia,serif; font-size:20px;
  color:var(--g-deep); display:flex; justify-content:space-between; align-items:center; gap:20px;
}
.gzk2-faq summary::-webkit-details-marker{ display:none; }
.gzk2-faq summary::after{ content:"+"; font-family:system-ui,sans-serif; font-size:26px; color:var(--gold); transition:transform .25s; flex:0 0 auto; }
.gzk2-faq[open] summary::after{ transform:rotate(45deg); }
.gzk2-faq p{ margin:14px 0 0 !important; color:var(--muted); }

/* Abschluss */
.gzk2-dark{ background:var(--g-deep); color:rgba(255,255,255,.85); text-align:center; padding:100px 24px !important; }
.gzk2-dark h2{ color:#fff !important; }
.gzk2-dark p{ color:rgba(255,255,255,.8); }
.gzk2-dark a:not(.wp-block-button__link){ color:#fff !important; }
.gzk2-dark .gzk2-btns{ justify-content:center; margin-top:28px !important; }

/* Responsive */
@media (max-width:1024px){
  .gzk2-team{ grid-template-columns:repeat(4,1fr); }
  .gzk2-hero .wp-block-columns, .gzk2-split .wp-block-columns{ gap:48px !important; }
}
@media (max-width:781px){
  .gzk2-sec{ padding:64px 20px !important; }
  .gzk2-hero{ padding:48px 20px 64px !important; }
  .gzk2-hero-img{ max-width:420px; margin:10px auto 0 !important; }
  .gzk2-hero-img::before{ inset:16px -12px -16px 12px; }
  .gzk2-facts .wp-block-column{ border-left:0; }
  .gzk2-team{ grid-template-columns:repeat(2,1fr); }
  .gzk2-cards{ grid-template-columns:1fr; }
  .gzk2-duo > .wp-block-column{ padding:32px 26px !important; }
  .gzk2-split .wp-block-column:first-child{ order:2; }
  .gzk2-quote, .gzk2-dark{ padding:72px 20px !important; }
}
.gzk2-dark .gzk2-eyebrow{justify-content:center}
.gzk2-dark .gzk2-eyebrow::after{content:"";width:36px;height:1px;background:var(--gold)}
.gzk2-dark .gzk2-btns .is-style-outline .wp-block-button__link{color:#fff!important;border-color:rgba(255,255,255,.6)!important;background:transparent!important}
.gzk2-dark .gzk2-btns .is-style-outline .wp-block-button__link:hover{background:#fff!important;color:var(--g-deep)!important}
.gzk2-center .gzk2-btns{justify-content:center}
.gzk2-team a:nth-child(3) img{object-position:50% 15%;transform:scale(1.35) translateY(8%)}

/* ---- Erweiterungen für weitere Seiten (Startseite u. a.) ---- */
.gzk2-tcards{ display:grid; grid-template-columns:repeat(auto-fill,minmax(250px,1fr)); gap:22px; margin-top:48px; text-align:center; }
.gzk2-tcard{
  display:flex; flex-direction:column; align-items:center; background:#fff; border:1px solid #e6ece9; border-radius:20px;
  padding:30px 22px 26px; text-decoration:none !important; color:var(--ink) !important; transition:all .3s;
}
.gzk2-tcard:hover{ transform:translateY(-5px); border-color:var(--g); box-shadow:0 26px 50px -32px rgba(11,79,65,.5); }
.gzk2-tcard .ph{
  width:124px; height:124px; border-radius:50%; overflow:hidden; border:4px solid #fff;
  outline:1.5px solid var(--gold); outline-offset:4px; margin-bottom:20px; box-shadow:0 16px 30px -18px rgba(11,79,65,.6);
}
.gzk2-tcard .ph img{ width:100%; height:100%; object-fit:cover; transform:scale(1.5); transition:transform .4s; }
.gzk2-tcard:hover .ph img{ transform:scale(1.6); }
.gzk2-tcard .nm{ font-family:"Playfair Display",Georgia,serif; font-size:20px; font-weight:600; color:var(--g-deep); line-height:1.3; margin-bottom:8px; }
.gzk2-tcard .sp{ font-size:14.5px; line-height:1.55; color:var(--muted); margin-bottom:16px; flex:1; }
.gzk2-tcard .more{ font-size:14px; font-weight:600; color:var(--g); }
.gzk2-tcard .more::after{ content:" \2192"; }

.gzk2-voices{ margin-top:36px; }
.gzk2-voices .fatau-ticker{ background:transparent !important; box-shadow:none !important; }

.gzk2-events{ margin-top:40px; text-align:left; }

.gzk2-contact-grid .wp-block-columns{ gap:48px !important; align-items:center !important; text-align:left; }
.gzk2-contact-grid figure img{ border-radius:18px; box-shadow:0 30px 60px -30px rgba(0,0,0,.6); }
.gzk2-contact-grid p{ font-size:17px; }
.gzk2-dark .gzk2-contact-grid .gzk2-btns{ justify-content:flex-start; }
.gzk2-dark .gzk2-contact-grid .gzk2-eyebrow{ justify-content:flex-start; }
.gzk2-dark .gzk2-contact-grid .gzk2-eyebrow::after{ display:none; }
@media (max-width:781px){ .gzk2-tcards{ grid-template-columns:1fr 1fr; gap:14px; } .gzk2-tcard{ padding:22px 12px; } .gzk2-tcard .ph{ width:96px; height:96px; } }
.gzk2-voices .fatau-ticker{ border-radius:0 !important; padding:6px 0 !important; overflow:hidden;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent); mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent); }
.gzk2-voices .fatau-ticker > div{ white-space:nowrap !important; }
.gzk2-voices .fatau-ticker span{ white-space:nowrap !important; line-height:1 !important; display:inline-block; margin:0 10px; }
.gzk2-voices .fatau-ticker a{
  background:none !important; border:0 !important; box-shadow:none !important; padding:6px 0 !important;
  color:var(--g-deep) !important; font-family:"Playfair Display",Georgia,serif; font-style:italic; font-size:20px !important;
  line-height:1.5 !important; text-decoration:none !important; display:inline-block;
}
.gzk2-voices .fatau-ticker span::after{ content:"\2726"; color:var(--gold); font-style:normal; margin:0 34px; font-size:14px; vertical-align:middle; }
.gzk2-voices .fatau-ticker img.emoji{ display:none !important; }

/* Galerie */
.gzk2-gallery{ display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:44px; }
.gzk2-gallery figure{ position:relative; margin:0; border-radius:16px; overflow:hidden; aspect-ratio:4/3; box-shadow:0 20px 40px -30px rgba(11,79,65,.5); }
.gzk2-gallery img{ width:100%; height:100%; object-fit:cover; transition:transform .6s ease; }
.gzk2-gallery figure:hover img{ transform:scale(1.05); }
.gzk2-gallery figcaption{
  position:absolute; left:0; right:0; bottom:0; padding:28px 18px 14px; color:#fff; font-size:14.5px; font-weight:600;
  background:linear-gradient(180deg,transparent,rgba(11,40,33,.75)); text-align:left;
}
.gzk2-gallery figure:first-child{ grid-column:span 2; grid-row:span 2; aspect-ratio:auto; }
@media (max-width:781px){ .gzk2-gallery{ grid-template-columns:1fr 1fr; } .gzk2-gallery figure:first-child{ grid-column:span 2; grid-row:auto; aspect-ratio:4/3; } }

/* Kompakter Seitenkopf (ohne Bild) */
.gzk2-pagehead{ background:linear-gradient(180deg,var(--cream),#fff); padding:72px 24px 40px !important; text-align:center; }
.gzk2-pagehead .gzk2-lead{ max-width:720px; margin-left:auto !important; margin-right:auto !important; }
.gzk2-pagehead .gzk2-btns{ justify-content:center; }
.gzk2-pagehead .gzk2-team{ margin:44px 0 0; }
.gzk2-booking{ background:#fff; border-radius:22px; padding:28px; box-shadow:0 24px 50px -36px rgba(11,79,65,.45); margin-top:36px; text-align:left; }
.gzk2-note{ background:var(--g-soft); border-left:3px solid var(--gold); border-radius:12px; padding:16px 20px; color:var(--ink); font-size:15.5px; max-width:760px; margin:18px auto 0 !important; text-align:left; }
