/* ─────────────────────────────────────────────────────────────────────────
 * Startseiten-Redesign 2026: Vollbild-Hero + Bild-Bänder, grosse fette
 * serifenlose Typografie (Theme-Font Geist), Gold als einziger Akzent.
 * Alles unter .gg-home gescoped, damit nur die Startseite betroffen ist.
 * ───────────────────────────────────────────────────────────────────────── */
.gg-home{ --gg-gold:#C2922E; --gg-gold-light:#E0B85C; --gg-gold-50:#FBF4E6;
  --gg-cream:#FCFAF4; --gg-ink:#241D14; --gg-ink-soft:#6E5E48; --gg-ink-300:#A89A82; --gg-line:#ECE3D2; }

.gg-home h1,.gg-home h2,.gg-home h3{ font-weight:800; letter-spacing:-.025em; line-height:1.05; }
.gg-wrap{ max-width:1180px; margin:0 auto; padding-left:28px; padding-right:28px; }
.gg-eyebrow{ display:inline-block; font-weight:700; font-size:.78rem; letter-spacing:.2em;
  text-transform:uppercase; color:var(--gg-gold); margin-bottom:1.1rem; }
.gg-eyebrow--img{ color:var(--gg-gold-light); }

/* Buttons */
.gg-btn{ display:inline-flex; align-items:center; gap:.5rem; font-weight:700; font-size:1rem;
  border-radius:999px; padding:.8rem 1.4rem; transition:transform .18s ease,background .18s ease; cursor:pointer; border:0; text-decoration:none; }
.gg-btn--gold{ background:var(--gg-gold); color:#fff; }
.gg-btn--gold:hover{ transform:translateY(-2px); background:#b1842a; color:#fff; }
.gg-btn--glass{ background:rgba(255,255,255,.14); color:#fff; border:1px solid rgba(255,255,255,.55); backdrop-filter:blur(3px); }
.gg-btn--glass:hover{ background:rgba(255,255,255,.26); color:#fff; }

/* ── Vollbild-Hero (Slideshow als Hintergrund) ─────────────────────────── */
.gg-hero{ position:relative; min-height:86vh; display:flex; align-items:flex-end; color:#fff; overflow:hidden; background:#1a1610; }
.gg-hero__slides{ position:absolute; inset:0; }
.gg-hero__slide{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:0; transition:opacity 1.6s ease; }
.gg-hero__slide.is-active{ opacity:1; }
.gg-hero__shade{ position:absolute; inset:0; background:linear-gradient(to top,rgba(20,15,8,.86),rgba(20,15,8,.30) 55%,rgba(20,15,8,.45)); z-index:1; }
.gg-hero__in{ position:relative; z-index:2; width:100%; padding-top:3rem; padding-bottom:4.5rem; }
.gg-hero__title{ font-size:clamp(2.6rem,6.4vw,5.4rem); max-width:18ch; margin:0; color:#fff; text-shadow:0 2px 30px rgba(0,0,0,.4); }
.gg-hero__title .gg-accent{ color:var(--gg-gold-light); }
.gg-hero__sub{ font-size:clamp(1.1rem,1.7vw,1.4rem); max-width:54ch; margin:1.4rem 0 2rem; color:#F3EAD9; text-shadow:0 1px 16px rgba(0,0,0,.5); }
.gg-hero__cta{ display:flex; gap:.9rem; flex-wrap:wrap; }

/* ── Vollbild-Bild-Band ────────────────────────────────────────────────── */
.gg-band{ position:relative; min-height:70vh; display:flex; align-items:center; color:#fff; overflow:hidden; background:#1a1610; }
.gg-band__bg{ position:absolute; inset:0; background-position:center; background-size:cover; background-repeat:no-repeat; }
.gg-band__shade{ position:absolute; inset:0; z-index:1; background:linear-gradient(90deg,rgba(20,15,8,.84) 0%,rgba(20,15,8,.5) 45%,rgba(20,15,8,.05) 100%); }
.gg-band__in{ position:relative; z-index:2; width:100%; padding-top:3rem; padding-bottom:3rem; }
.gg-band__card{ max-width:36rem; }
.gg-band__title{ font-size:clamp(2rem,4.4vw,3.4rem); margin:0 0 1.1rem; color:#fff; }
.gg-band__text{ font-size:1.18rem; color:#F1E8D6; margin:0 0 1rem; text-shadow:0 1px 12px rgba(0,0,0,.4); }
.gg-band--center{ min-height:50vh; text-align:center; }
.gg-band--center .gg-band__shade{ background:rgba(20,15,8,.62); }
.gg-band--center .gg-band__card{ max-width:48rem; margin:0 auto; }
.gg-band--center .gg-band__title{ font-size:clamp(1.8rem,3.6vw,2.8rem); }

/* ── Neutrale Sektion (Familie / Momente) ──────────────────────────────── */
.gg-sec{ padding-top:6rem; padding-bottom:6rem; }
.gg-sec__head{ text-align:center; max-width:60ch; margin:0 auto 3rem; padding:0 28px; }
.gg-sec__head h2{ font-size:clamp(2rem,4.4vw,3.2rem); margin:0 0 .9rem; color:var(--gg-ink); }
.gg-sec__head p{ font-size:1.15rem; color:var(--gg-ink-soft); margin:0; }

/* Familien-Karten (bilddominant) */
.gg-family{ display:grid; grid-template-columns:repeat(3,1fr); gap:26px; max-width:1180px; margin:0 auto; padding:0 28px; }
.gg-fcard{ background:#fff; border:1px solid var(--gg-line); border-radius:24px; overflow:hidden; transition:transform .2s ease,box-shadow .2s ease; text-decoration:none; color:inherit; display:block; }
.gg-fcard:hover{ transform:translateY(-6px); box-shadow:0 30px 50px -28px rgba(110,82,26,.5); }
.gg-fcard__ph{ aspect-ratio:1/1; overflow:hidden; background:var(--gg-gold-50); }
.gg-fcard__ph img{ width:100%; height:100%; object-fit:cover; transition:transform .4s ease; }
.gg-fcard:hover .gg-fcard__ph img{ transform:scale(1.05); }
.gg-fcard__body{ padding:1.3rem 1.4rem 1.6rem; text-align:center; }
.gg-fcard__nick{ font-weight:800; font-size:1.35rem; color:var(--gg-gold); letter-spacing:-.01em; }
.gg-fcard__name{ font-weight:700; letter-spacing:.06em; text-transform:uppercase; font-size:.74rem; color:var(--gg-ink-300); margin:.25rem 0 .7rem; }
.gg-fcard__desc{ color:var(--gg-ink-soft); font-size:.98rem; margin:0; }

.gg-center{ text-align:center; margin-top:3rem; }

/* Momente-Teaser (tb-family Plugin-Karten) auf der Startseite begrenzen */
.gg-home .tb-family{ max-width:1180px; margin:0 auto; padding:0 28px; }

@media(max-width:820px){
  .gg-hero{ min-height:74vh; }
  .gg-band{ min-height:60vh; }
  .gg-band__shade{ background:linear-gradient(to top,rgba(20,15,8,.9),rgba(20,15,8,.45)); }
  .gg-family{ grid-template-columns:1fr; }
  .gg-sec{ padding-top:4rem; padding-bottom:4rem; }
}
