/**
 * ge-brand.css - consolidated brand and trust pages layer
 * Generated on 2026-04-25 for the optimized theme copy.
 * Source order: ge-bewertungen -> ge-bewertungen-page -> ge-vip -> ge-vip-page -> ge-ueber-uns -> ge-ueber-uns-page
 */


/* ===== BEGIN ge-bewertungen.css ===== */

/**
 * Gallium Estate Child Theme â€” ge-bewertungen.css v49
 * Nur noch globale ErgÃ¤nzungen fÃ¼r das Design-System.
 * Das eigentliche Page-CSS befindet sich als <style>-Block
 * direkt in page-bewertungen.php (bew-* Klassen).
 *
 * Diese Datei: Animationen + Fade-Effekte die auch auf
 * anderen Seiten via ge-* Klassen genutzt werden.
 */

/* â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•
   ge-fade â€” Scroll-Reveal Animation
   (verwendet von bew-testi-grid Karten etc.)
â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â• */
.gp-fade { opacity: 1; transform: none; }

.js-ready .gp-fade {
  opacity: 0;
  transform: translateY(18px);
  transition: opacity .6s cubic-bezier(.16,1,.3,1),
              transform .6s cubic-bezier(.16,1,.3,1);
}
.js-ready .gp-fade.in { opacity: 1; transform: none; }
.js-ready .gp-fade--d1 { transition-delay: .05s; }
.js-ready .gp-fade--d2 { transition-delay: .12s; }
.js-ready .gp-fade--d3 { transition-delay: .20s; }

/* â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•
   Testimonial-Karte â€” Print-Anpassung
â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â• */
@media print {
  .bew-hero__bg img,
  .bew-trust__bg img,
  .bew-photostrip { display: none; }
  .bew-hero { background: var(--navy) !important; min-height: auto; padding: 40px 0; }
  .bew-cta { background: var(--navy) !important; }
  .bew-card { break-inside: avoid; }
  .bew-testi-grid { grid-template-columns: repeat(2,1fr) !important; }
  .bew-card:first-child { grid-column: span 1 !important; }
}

/* â”€â”€ v74: Neue Klassen aus inline-styles â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.ge-code-inline {
  font-size: 12px;
  background: #f0ede8;
  padding: 2px 7px;
  border-radius: 4px;
  font-family: monospace;
}
.ge-text-hint { color: #9ca3af; }
.bew-body-text { font-size: 14.5px; color: #374151; line-height: 1.75; margin: 0 0 16px; }
.bew-body-sub { font-size: 13px; color: #9ca3af; margin: 0 0 20px; line-height: 1.6; }
.bew-google-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: linear-gradient(135deg, #4285F4, #34A853);
  color: #fff;
  padding: 12px 22px;
  border-radius: 10px;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  transition: opacity .2s;
}
.bew-google-btn:hover { opacity: .88; }
.bew-ghost-btn { color: rgba(255,255,255,.65); border-color: rgba(255,255,255,.18); }
.bew-ghost-btn--dim { color: rgba(255,255,255,.45); border-color: rgba(255,255,255,.1); gap: 7px; }
.bew-ghost-btn--mid { color: rgba(255,255,255,.55); border-color: rgba(255,255,255,.12); gap: 7px; }

/* ge-base Utility-ErgÃ¤nzungen fÃ¼r gutachten */
.ge-border-top { border-top: 1px solid var(--border, #E2DDD4); }
.ge-pt-16 { padding-top: 16px; }

/* â”€â”€ v78: Google-Review CTA â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.bew-hero__google-link--cta {
  background: rgba(201,168,106,.12);
  border-color: rgba(201,168,106,.4);
  color: var(--gold-l, #E8D090);
  font-weight: 600;
}
.bew-rating-box__badge--cta {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: 14px;
  padding: 10px 20px;
  background: linear-gradient(135deg, var(--gold, #C9A86A), var(--gold-d, #9A7030));
  color: var(--navy, #0A1A2F);
  font-size: 13px;
  font-weight: 600;
  letter-spacing: var(--label-spacing, .14em);
  text-transform: uppercase;
  border-radius: var(--pill-radius, 999px);
  text-decoration: none;
  box-shadow: var(--action-shadow-gold, 0 8px 24px rgba(201,168,106,.24));
  transition: opacity .2s, transform .2s, box-shadow .2s;
  cursor: pointer;
}
.bew-rating-box__badge--cta:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 32px rgba(201,168,106,.38);
}
/* Review cards auf warmem Hintergrund â€” bessere Lesbarkeit */
.bew-card {
  background: var(--surface-card-soft, #fff) !important;
  border: 1px solid rgba(10,26,47,.08) !important;
  box-shadow: var(--shadow-soft, 0 8px 24px rgba(10,26,47,.06)) !important;
}
.bew-card__text {
  color: rgba(10,26,47,.8) !important;
  font-size: 15px !important;
  line-height: 1.7 !important;
}
.bew-card__name {
  color: var(--navy, #0A1A2F) !important;
  font-weight: 700 !important;
}
.bew-card__meta {
  color: rgba(10,26,47,.45) !important;
}

/* ===== END ge-bewertungen.css ===== */


/* ===== BEGIN ge-bewertungen-page.css ===== */

/**
 * ge-bewertungen-page.css — v115
 * Kundenstimmen: sauber, lesbar, Premium+++
 */

/* ════════════════════════════════════
   HERO
════════════════════════════════════ */
.bw2-hero {
  position: relative;
  min-height: clamp(580px, 72vh, 820px);
  display: flex;
  align-items: flex-end;
  overflow: hidden;
}
.bw2-hero__img {
  position: absolute;
  inset: 0; width: 100%; height: 100%;
  object-fit: cover;
  object-position: center 30%;
  display: block;
}
.bw2-hero__overlay {
  position: absolute; inset: 0;
  background: rgba(3,7,18,.85);
}
@media (min-width: 769px) {
  .bw2-hero__overlay {
    background:
      linear-gradient(110deg, rgba(3,7,18,.60) 0%, rgba(5,12,26,.32) 48%, rgba(7,16,32,.06) 78%),
      linear-gradient(to bottom, rgba(3,7,18,.10) 0%, transparent 20%, transparent 55%, rgba(3,7,18,.62) 100%);
  }
}
.bw2-hero__inner {
  position: relative; z-index: 2;
  width: 100%;
  padding: 0 40px 72px;
  max-width: 1180px;
  margin: 0 auto;
}
.bw2-hero__grid {
  display: grid;
  grid-template-columns: 1fr 340px;
  gap: 64px;
  align-items: flex-end;
}

.bw2-hero__text .ge-eyebrow { color: var(--gold); margin-bottom: 24px; }
.bw2-hero__h1 {
  font-family: var(--serif, 'Cormorant Garamond', Georgia, serif);
  font-size: clamp(44px, 5.5vw, 78px);
  font-weight: 300;
  line-height: 1.07;
  color: #fff;
  margin: 0 0 24px;
  letter-spacing:0;
}
.bw2-hero__h1 em { font-style: italic; color: var(--gold-l, #d4af72); display: block; }
.bw2-hero__sub {
  font-size: 16px;
  color: rgba(255,255,255,.72);
  line-height: 1.8;
  max-width: 500px;
  margin: 0 0 36px;
  text-shadow: 0 1px 8px rgba(0,0,0,.4);
}
.bw2-hero__google-btn {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 12px 22px;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 10px;
  color: rgba(255,255,255,.82);
  font-size: 13px;
  font-weight: 500;
  text-decoration: none;
  letter-spacing: .02em;
  transition: background .2s, color .2s, border-color .2s;
}
.bw2-hero__google-btn:hover {
  background: rgba(255,255,255,.15);
  color: #fff;
  border-color: rgba(255,255,255,.28);
}

/* Rating-Karte */
.bw2-rating-card {
  background: rgba(7, 16, 32, .96);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border: 1px solid rgba(201,168,106,.50);
  border-radius: 22px;
  padding: 36px 28px 30px;
  text-align: center;
}
.bw2-rating-card__score {
  display: block;
  font-family: var(--serif, 'Cormorant Garamond', Georgia, serif);
  font-size: 90px;
  font-weight: 300;
  color: #fff;
  line-height: 1;
  letter-spacing:0;
  margin-bottom: 12px;
}
.bw2-rating-card__stars {
  display: flex;
  justify-content: center;
  gap: 5px;
  margin-bottom: 10px;
}
.bw2-rating-card__stars svg {
  width: 20px; height: 20px;
  fill: var(--gold);
}
/* Fix: Label-Kontrast erhöht (war .48 = zu hell) */
.bw2-rating-card__label {
  font-size: 12px;
  color: rgba(255,255,255,.68);
  line-height: 1.6;
  margin-bottom: 22px;
}
.bw2-rating-card__divider {
  height: 1px;
  background: rgba(201,168,106,.18);
  margin-bottom: 20px;
}

/* Neue 4-KPI-Grid-Statistik */
.bw2-rating-card__stats {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1px;
  background: rgba(255,255,255,.08);
  border-radius: 12px;
  overflow: hidden;
}
.bw2-rating-card__stat {
  flex: unset;
  text-align: center;
  padding: 14px 8px;
  background: rgba(255,255,255,.04);
}
.bw2-rating-card__stat:first-child {
  border-right: none;
}
.bw2-rating-card__stat-val {
  display: block;
  font-family: var(--serif);
  font-size: 22px;
  font-weight: 300;
  color: var(--gold-l);
  line-height: 1;
  margin-bottom: 5px;
}
/* Fix: KPI-Label Kontrast erhöht (war .35 = WCAG-Fail) */
.bw2-rating-card__stat-lbl {
  font-size: 9.5px;
  font-weight: 600;
  letter-spacing: .09em;
  text-transform: uppercase;
  color: rgba(255,255,255,.62);
  line-height: 1.35;
}

/* ════════════════════════════════════
   STATS-LEISTE — optimiert v116
════════════════════════════════════ */
.bw2-statsbar {
  background: #fff;
  border-bottom: 1px solid #ebe6de;
  position: relative;
  z-index: 1;
}
.bw2-statsbar__inner {
  max-width: 1180px;
  margin: 0 auto;
  padding: 0 40px;
  display: flex;
}
.bw2-stat {
  flex: 1;
  padding: 36px 24px;
  text-align: center;
  border-right: 1px solid #ebe6de;
  transition: background .25s ease;
  cursor: default;
}
.bw2-stat:last-child { border-right: none; }
.bw2-stat:hover { background: rgba(201,168,106,.04); }
.bw2-stat__val {
  display: block;
  font-family: var(--serif);
  font-size: 44px;
  font-weight: 300;
  color: var(--navy);
  line-height: 1;
  margin-bottom: 7px;
  letter-spacing:0;
  transition: color .25s;
}
.bw2-stat:hover .bw2-stat__val { color: var(--gold-d); }
.bw2-stat__lbl {
  font-size: 10.5px;
  font-weight: 600;
  letter-spacing: .12em;
  text-transform: uppercase;
  /* Fix: Kontrast erhöht (var(--muted) = #6B7280 — ok auf weiß) */
  color: var(--muted);
  line-height: 1.5;
}

/* ════════════════════════════════════
   KUNDENSTIMMEN
════════════════════════════════════ */
.bw2-testi-sec {
  background: var(--warm, #FAF8F4);
  padding: 100px 0 108px;
}
.bw2-testi-hd {
  max-width: 1180px;
  margin: 0 auto 60px;
  padding: 0 40px;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 32px;
}
.bw2-testi-hd .ge-eyebrow { margin-bottom: 14px; }
.bw2-testi-h2 {
  font-family: var(--serif);
  font-size: clamp(30px, 3.5vw, 50px);
  font-weight: 300;
  color: var(--navy);
  margin: 0;
  line-height: 1.15;
}
.bw2-testi-h2 em { font-style: italic; color: var(--gold-d); }
.bw2-testi-aside {
  font-size: 13px;
  color: var(--muted);
  text-align: right;
  line-height: 1.65;
  flex-shrink: 0;
}

/* Grid: 3 Spalten, Featured = 2 Spalten breit */
.bw2-testi-grid {
  max-width: 1180px;
  margin: 0 auto;
  padding: 0 40px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}

/* Karte */
.bw2-card {
  background: var(--surface-card-soft, #fff);
  border: 1px solid rgba(10,22,47,.07);
  border-radius: 20px;
  padding: 36px;
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease;
  box-shadow: var(--shadow-soft, 0 8px 24px rgba(10,26,47,.06));
}
.bw2-card:hover {
  transform: translateY(-5px);
  box-shadow: var(--shadow-card-hover, 0 24px 56px rgba(10,26,47,.12));
  border-color: rgba(201,168,106,.30);
}
/* v119: Featured Review — Item 30 */
.bw2-card--featured {
  grid-column: span 2;
  border: 2px solid rgba(201,168,106,.45);
  background: linear-gradient(150deg, var(--surface-card, #fff) 70%, rgba(201,168,106,.08) 100%);
  box-shadow: 0 8px 40px rgba(201,168,106,.1), 0 2px 8px rgba(0,0,0,.04);
  position: relative;
}
.bw2-card--featured::after {
  content: '★ Empfehlung';
  position: absolute;
  top: -1px; right: 24px;
  background: linear-gradient(135deg, var(--gold), var(--gold-d));
  color: var(--navy, #0A1A2F);
  font-size: 10px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase;
  padding: 4px 14px;
  border-radius: 0 0 8px 8px;
  box-shadow: 0 4px 12px rgba(201,168,106,.3);
}

/* Deko-Anführungszeichen — etwas sichtbarer */
.bw2-card__quote-deco {
  position: absolute;
  top: 4px; right: 20px;
  font-family: var(--serif);
  font-size: 140px;
  line-height: 1;
  color: rgba(201,168,106,.09);
  pointer-events: none;
  user-select: none;
  transition: color .3s;
}
.bw2-card:hover .bw2-card__quote-deco { color: rgba(201,168,106,.15); }

/* Sterne */
.bw2-card__stars {
  display: flex;
  gap: 3px;
  margin-bottom: 18px;
}
.bw2-card__stars svg {
  width: 14px; height: 14px;
  fill: var(--gold);
}

/* Zitat */
.bw2-card__text {
  font-family: var(--serif);
  font-size: 17px;
  font-style: italic;
  line-height: 1.85;
  color: var(--text);
  margin: 0 0 28px;
  flex: 1;
  position: relative; z-index: 1;
  quotes: none;
}
.bw2-card--featured .bw2-card__text { font-size: 20px; }

/* Autor */
.bw2-card__author {
  display: flex;
  align-items: center;
  gap: 12px;
  padding-top: 20px;
  border-top: 1px solid rgba(10,22,47,.06);
}
.bw2-card__avatar {
  width: 52px; height: 52px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--navy,#0A1A2F) 0%, #1B3A5C 100%) !important;
  border: 2px solid var(--gold,#C9A86A) !important;
  display: flex; align-items: center; justify-content: center;
  font-family: var(--serif, 'Cormorant Garamond', Georgia, serif);
  font-size: 1.1rem; font-weight: 700;
  color: var(--gold,#C9A86A) !important;
  letter-spacing: 0.05em;
  flex-shrink: 0;
  box-shadow: 0 2px 12px rgba(10,26,47,0.22);
}
.bw2-card__info { flex: 1; min-width: 0; }
.bw2-card__name {
  display: block;
  font-size: 13.5px;
  font-weight: 700;
  font-style: normal;
  color: var(--navy);
  margin-bottom: 2px;
}
.bw2-card__rolle {
  font-size: 11.5px;
  color: var(--muted);
}
.bw2-card__datum {
  font-size: 11px;
  color: #c8c4be;
  flex-shrink: 0;
}

/* ════════════════════════════════════
   WARUM-SEKTION (dunkel mit Bild)
════════════════════════════════════ */
.bw2-warum {
  position: relative;
  overflow: hidden;
  background: var(--navy-d, #04080F);
  padding: 104px 0;
}
.bw2-warum__img {
  position: absolute;
  inset: 0; width: 100%; height: 100%;
  object-fit: cover;
  object-position: center 40%;
  display: block;
  opacity: .32;
}
.bw2-warum__overlay {
  position: absolute; inset: 0;
  background: linear-gradient(115deg, rgba(4,8,15,.60) 0%, rgba(4,8,15,.20) 60%, rgba(4,8,15,.42) 100%);
}
.bw2-warum__inner {
  position: relative; z-index: 2;
  max-width: 1180px;
  margin: 0 auto;
  padding: 0 40px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 80px;
  align-items: start;
}
.bw2-warum__left .ge-eyebrow { color: var(--gold); margin-bottom: 22px; }
.bw2-warum__h2 {
  font-family: var(--serif);
  font-size: clamp(30px, 3.5vw, 50px);
  font-weight: 300;
  color: #fff;
  margin: 0 0 18px;
  line-height: 1.15;
}
.bw2-warum__h2 em { font-style: italic; color: var(--gold-l); }
.bw2-warum__sub {
  font-size: 15px;
  color: rgba(255,255,255,.65);
  line-height: 1.85;
  margin: 0 0 40px;
  max-width: 440px;
}
.bw2-warum__nums {
  display: flex;
  gap: 40px;
  margin-bottom: 40px;
}
.bw2-warum__num-val {
  display: block;
  font-family: var(--serif);
  font-size: 42px;
  font-weight: 300;
  color: var(--gold-l);
  line-height: 1;
  margin-bottom: 5px;
}
/* Optimierung: Zahl-Labels besser lesbar (war .38 = WCAG-Fail auf navy) */
.bw2-warum__num-lbl {
  font-size: 10.5px;
  font-weight: 600;
  letter-spacing: .11em;
  text-transform: uppercase;
  color: rgba(255,255,255,.60);
}

/* Liste rechts */
.bw2-warum__list {
  list-style: none;
  padding: 0; margin: 0;
  padding-top: 8px;
}
.bw2-warum__item {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  padding: 20px 0;
  border-bottom: 1px solid rgba(255,255,255,.07);
}
.bw2-warum__item:first-child { border-top: 1px solid rgba(255,255,255,.07); }
.bw2-warum__item-check {
  width: 30px; height: 30px;
  border-radius: 50%;
  background: rgba(201,168,106,.12);
  border: 1px solid rgba(201,168,106,.25);
  display: flex; align-items: center; justify-content: center;
  color: var(--gold-l);
  flex-shrink: 0;
  margin-top: 2px;
}
.bw2-warum__item-title {
  font-size: 14px;
  font-weight: 700;
  color: rgba(255,255,255,.92);
  margin-bottom: 4px;
}
/* Optimierung: Itemtext kontrast erhöht (war .58 — jetzt .72) */
.bw2-warum__item-text {
  font-size: 13px;
  color: rgba(255,255,255,.72);
  line-height: 1.7;
}

/* ════════════════════════════════════
   GOOGLE + CTA
════════════════════════════════════ */
.bw2-google-sec {
  background: #fff;
  padding: 92px 0;
  border-top: 1px solid #ebe6de;
}
.bw2-google-inner {
  max-width: 700px;
  margin: 0 auto;
  padding: 0 40px;
  text-align: center;
}
.bw2-google-inner .ge-eyebrow { margin-bottom: 16px; }
.bw2-google-h2 {
  font-family: var(--serif);
  font-size: clamp(28px, 3.2vw, 46px);
  font-weight: 300;
  color: var(--navy);
  margin: 0 0 14px;
  line-height: 1.15;
}
.bw2-google-h2 em { font-style: italic; color: var(--gold-d); }
.bw2-google-sub {
  font-size: 15px;
  color: var(--muted);
  line-height: 1.75;
  margin: 0 0 44px;
}

/* Google-Box */
.bw2-google-box {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  background: var(--warm, #FAF8F4);
  border: 1px solid #ebe6de;
  border-radius: 16px;
  padding: 24px 28px;
  margin-bottom: 48px;
  text-align: left;
}
.bw2-google-box__left {
  display: flex;
  align-items: center;
  gap: 16px;
}
.bw2-google-box__icon {
  width: 52px; height: 52px;
  border-radius: 12px;
  background: #fff;
  border: 1px solid #ebe6de;
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0;
}
.bw2-google-box__title {
  font-size: 15px;
  font-weight: 700;
  color: var(--navy);
  margin-bottom: 3px;
}
.bw2-google-box__hint {
  font-size: 12px;
  color: var(--muted);
}
.bw2-google-btn {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 12px 22px;
  background: #4285F4;
  color: #fff;
  border-radius: 10px;
  text-decoration: none;
  font-size: 13.5px;
  font-weight: 600;
  white-space: nowrap;
  transition: background .2s, transform .2s;
  letter-spacing: .02em;
  flex-shrink: 0;
}
.bw2-google-btn:hover { background: #3367D6; transform: translateY(-2px); }

/* CTA-Buttons */
.bw2-cta-actions {
  display: flex;
  gap: 12px;
  justify-content: center;
  flex-wrap: wrap;
}

/* ════════════════════════════════════
   RESPONSIVE
════════════════════════════════════ */
@media (max-width: 1024px) {
  .bw2-hero__grid { grid-template-columns: 1fr; gap: 36px; }
  .bw2-rating-card { max-width: 320px; }
  .bw2-testi-grid { grid-template-columns: repeat(2, 1fr); }
  .bw2-card--featured { grid-column: span 2; }
  .bw2-warum__inner { grid-template-columns: 1fr; gap: 52px; }
}
@media (max-width: 768px) {
  
  .bw2-hero__inner { padding: 0 20px 52px; }
  .bw2-statsbar__inner { padding: 0 20px; flex-wrap: wrap; }
  .bw2-stat { flex: none; width: 50%; border-right: none; border-bottom: 1px solid #ebe6de; }
  .bw2-stat:nth-child(odd) { border-right: 1px solid #ebe6de; }
  .bw2-testi-hd { flex-direction: column; align-items: flex-start; padding: 0 20px; }
  .bw2-testi-aside { text-align: left; }
  .bw2-testi-grid { grid-template-columns: 1fr; padding: 0 20px; }
  .bw2-card--featured { grid-column: span 1; }
  .bw2-card--featured .bw2-card__text { font-size: 17px; }
  .bw2-warum__inner { padding: 0 20px; }
  .bw2-warum__nums { gap: 28px; }
  .bw2-google-inner { padding: 0 20px; }
  .bw2-google-box { flex-direction: column; text-align: center; }
  .bw2-google-box__left { flex-direction: column; }
  .bw2-google-btn { width: 100%; justify-content: center; }
}
@media (max-width: 520px) {
  .bw2-statsbar__inner { flex-direction: column; }
  .bw2-stat { width: 100%; border-right: none !important; }
  .bw2-hero__grid { gap: 24px; }
}

/* Mobile: Hero vollständig optimiert */
@media (max-width: 768px) {
  .bw2-hero__overlay {
    background: linear-gradient(to bottom, rgba(3,7,18,.98) 0%, rgba(3,7,18,.99) 60%, rgba(3,7,18,1) 100%);
  }
  .bw2-hero {
    position: relative;
    min-height: 100svh;
    align-items: center;
  }
  .bw2-hero__img {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
    display: block !important;
  }
  .bw2-hero__inner {
    padding: 100px 24px 56px !important;
  }
  .bw2-hero__grid {
    grid-template-columns: 1fr;
    gap: 32px;
    align-items: start;
  }
  .bw2-hero__h1 {
    font-size: clamp(34px, 9vw, 52px);
  }
  .bw2-hero__sub {
    font-size: 15px;
    max-width: 100%;
  }
  .bw2-rating-card {
    max-width: 100%;
    width: 100%;
  }
}

/* ════════════════════════════════════
   v116 OPTIMIERUNGEN — RATING-CARD KPI UPDATE
   Die 4 neuen KPIs ersetzen die alten 2 Stats.
   Im PHP-Template die .bw2-rating-card__stats Section ersetzen:

   <div class="bw2-rating-card__stats">
     <div class="bw2-rating-card__stat">
       <span class="bw2-rating-card__stat-val">50+</span>
       <span class="bw2-rating-card__stat-lbl">Erfolgreiche<br>Vermittlungen</span>
     </div>
     <div class="bw2-rating-card__stat">
       <span class="bw2-rating-card__stat-val">Ø 25</span>
       <span class="bw2-rating-card__stat-lbl">Tage bis zur<br>Beurkundung</span>
     </div>
     <div class="bw2-rating-card__stat">
       <span class="bw2-rating-card__stat-val">+8,7 %</span>
       <span class="bw2-rating-card__stat-lbl">Über dem<br>Angebotspreis</span>
     </div>
     <div class="bw2-rating-card__stat">
       <span class="bw2-rating-card__stat-val">5,0 ★</span>
       <span class="bw2-rating-card__stat-lbl">Google-<br>Bewertung</span>
     </div>
   </div>
════════════════════════════════════ */

/* Puls-Animation für Google-CTA Button */
@keyframes bw2-pulse {
  0%, 100% { box-shadow: 0 0 0 0 rgba(201,168,106,.35); }
  50%       { box-shadow: 0 0 0 8px rgba(201,168,106,0); }
}
.bw2-google-btn--pulse {
  animation: bw2-pulse 2.4s ease-in-out infinite;
}

/* Hero-Subtext: Etwas größer für bessere Lesbarkeit Mobile */
@media (max-width: 640px) {
  .bw2-hero__sub { font-size: 15px; }
  .bw2-rating-card__score { font-size: 72px; }
  .bw2-rating-card { padding: 28px 20px 22px; }
}

/* Testi-Aside auf Desktop mit Goldlinie links */
@media (min-width: 769px) {
  .bw2-testi-aside {
    border-left: 2px solid rgba(201,168,106,.25);
    padding-left: 20px;
    max-width: 260px;
  }
}

/* ===== END ge-bewertungen-page.css ===== */


/* ===== BEGIN ge-vip.css ===== */

/**
 * ge-vip.css â€” Gallium Estate Child Theme v12.1 (Fix v54)
 * CSS fÃ¼r page-vip.php
 * Alle --gv-* Aliases entfernt â€” direkte Nutzung von --gold, --navy, --ease, --serif, --sans
 *
 * ErgÃ¤nzt ge-bewertungen.css
 * Klassen: gv-hero, gv-split, gv-compare, gv-perks-grid,
 *          gv-perk, gv-process, gv-gate, gv-checklist, gv-testi
 */

/* â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•
   HERO
â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â• */
.gv-hero {
  position: relative;
  min-height: 92vh;
  display: flex;
  align-items: center;
  padding: 140px 0 80px;
  overflow: hidden;
  background: var(--navy-d);
}

/* Background atmosphere */
.gv-hero__bg {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 0;
}
.gv-hero__orb {
  position: absolute;
  border-radius: 50%;
  filter: blur(120px);
}
.gv-hero__orb--1 {
  width: 700px; height: 700px;
  top: -200px; left: -100px;
  background: radial-gradient(circle, rgba(201,168,106,.07) 0%, transparent 70%);
}
.gv-hero__orb--2 {
  width: 500px; height: 500px;
  bottom: -100px; right: -80px;
  background: radial-gradient(circle, rgba(14,32,64,.9) 0%, transparent 70%);
}
.gv-hero__grain {
  position: absolute; inset: 0;
  opacity: .018;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 300 300' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  background-size: 300px;
}

/* Inner */
.gv-hero__inner {
  position: relative;
  z-index: 1;
  text-align: center;
  max-width: 820px;
  margin: 0 auto;
}

/* Badge */
.gv-hero__badge {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: rgba(201,168,106,.07);
  border: 1px solid rgba(201,168,106,.22);
  border-radius: 40px;
  padding: 8px 18px;
  font-family: var(--sans);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--gold);
  margin-bottom: 32px;
}
.gv-hero__badge-sep {
  width: 1px; height: 12px;
  background: rgba(201,168,106,.3);
}
.gv-hero__badge-live {
  color: #4ade80;
  font-size: 10px;
  letter-spacing: .1em;
}

/* Title */
.gv-hero__title {
  font-family: var(--serif);
  font-size: clamp(48px, 7vw, 90px);
  font-weight: 300;
  line-height: 1.06;
  color: #fff;
  margin: 0 0 24px;
  letter-spacing:0;
}
.gv-hero__title em {
  font-style: italic;
  color: var(--gold-l);
}

/* Lead */
.gv-hero__lead {
  font-family: var(--sans);
  font-size: 17px;
  color: rgba(255,255,255,.45);
  line-height: 1.85;
  max-width: 580px;
  margin: 0 auto 40px;
}

/* Actions */
.gv-hero__actions {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  flex-wrap: wrap;
  margin-bottom: 60px;
}

/* Trust strip below hero */
.gv-hero__trust {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0;
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(201,168,106,.1);
  border-radius: 16px;
  padding: 20px 32px;
  max-width: 600px;
  margin: 0 auto;
}
.gv-hero__trust-item {
  flex: 1;
  text-align: center;
}
.gv-hero__trust-val {
  display: block;
  font-family: var(--serif);
  font-size: 28px;
  font-weight: 300;
  color: var(--gold-l);
  line-height: 1;
  margin-bottom: 4px;
}
.gv-hero__trust-lbl {
  font-family: var(--sans);
  font-size: 10px;
  font-weight: 500;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: rgba(255,255,255,.28);
}
.gv-hero__trust-div {
  width: 1px; height: 36px;
  background: rgba(201,168,106,.15);
  flex-shrink: 0;
  margin: 0 4px;
}


/* â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•
   BUTTONS (gv-* Namespace)
â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â• */
.gv-btn {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 14px 28px;
  border-radius: 10px;
  font-family: var(--sans);
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  transition: border-color .25s var(--ease), box-shadow .25s var(--ease), transform .25s var(--ease);
  cursor: pointer;
  border: none;
  white-space: nowrap;
}
.gv-btn--gold {
  background: linear-gradient(135deg, var(--gold), var(--gold-d));
  color: #fff;
  box-shadow: 0 4px 24px rgba(201,168,106,.25);
}
.gv-btn--gold:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 36px rgba(201,168,106,.45);
}
.gv-btn--lg {
  padding: 16px 36px;
  font-size: 15px;
}
.gv-btn--ghost {
  background: transparent;
  border: 1.5px solid rgba(201,168,106,.3);
  color: var(--gold-l);
}
.gv-btn--ghost:hover {
  background: rgba(201,168,106,.07);
  border-color: rgba(201,168,106,.55);
  transform: translateY(-2px);
}
.gv-btn--full {
  width: 100%;
  justify-content: center;
}


/* â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•
   SPLIT LAYOUT (Off-Market ErklÃ¤rung)
â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â• */
.gv-split {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 72px;
  align-items: center;
}
.gv-split__text .gp-lead {
  margin-bottom: 0;
}

/* Compare Box */
.gv-compare {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}
.gv-compare__col {
  border-radius: 16px;
  padding: 24px 20px;
}
.gv-compare__col--out {
  background: rgba(255,255,255,.03);
  border: 1px solid rgba(255,255,255,.07);
}
.gv-compare__col--in {
  background: rgba(201,168,106,.07);
  border: 1px solid rgba(201,168,106,.2);
}
.gv-compare__label {
  font-family: var(--sans);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: rgba(255,255,255,.3);
  margin-bottom: 16px;
}
.gv-compare__label--gold {
  color: var(--gold);
}
.gv-compare__list {
  list-style: none;
  padding: 0; margin: 0;
}
.gv-compare__item {
  font-family: var(--sans);
  font-size: 12.5px;
  line-height: 1.5;
  padding: 7px 0 7px 22px;
  border-bottom: 1px solid rgba(255,255,255,.04);
  position: relative;
  color: rgba(255,255,255,.4);
}
.gv-compare__item:last-child { border-bottom: none; }
.gv-compare__item--no::before {
  content: 'âœ—';
  position: absolute; left: 0;
  color: rgba(255,80,80,.5);
  font-size: 11px;
}
.gv-compare__item--yes {
  color: rgba(255,255,255,.7);
}
.gv-compare__item--yes::before {
  content: 'â—†';
  position: absolute; left: 0;
  color: var(--gold);
  font-size: 7px;
  top: 10px;
}


/* â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•
   VIP PERKS GRID â€” Premium Cards mit SVG-Icons
â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â• */
.gv-perks-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
.gv-perk {
  background: rgba(255,255,255,.03);
  border: 1px solid rgba(201,168,106,.1);
  border-radius: 18px;
  padding: 32px;
  position: relative;
  overflow: hidden;
  transition: border-color .3s var(--ease), box-shadow .3s var(--ease), transform .3s var(--ease);
  transition-delay: var(--reveal-delay, 0s);
}
.gv-perk::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, var(--gold), transparent);
  transform: scaleX(0);
  transition: transform .4s var(--ease);
}
.gv-perk:hover {
  border-color: rgba(201,168,106,.28);
  transform: translateY(-4px);
  box-shadow: 0 20px 50px rgba(0,0,0,.45);
  background: rgba(201,168,106,.04);
}
.gv-perk:hover::before { transform: scaleX(1); }

.gv-perk__icon-wrap {
  width: 48px; height: 48px;
  border-radius: 14px;
  background: rgba(201,168,106,.08);
  border: 1px solid rgba(201,168,106,.15);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--gold);
  margin-bottom: 20px;
  transition: background .3s;
}
.gv-perk:hover .gv-perk__icon-wrap {
  background: rgba(201,168,106,.14);
}
.gv-perk__title {
  font-family: var(--serif);
  font-size: 21px;
  font-weight: 300;
  color: #fff;
  margin: 0 0 10px;
}
.gv-perk__text {
  font-family: var(--sans);
  font-size: 13.5px;
  color: rgba(255,255,255,.4);
  line-height: 1.8;
  margin: 0;
}


/* â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•
   PROZESS â€” 3 Schritte
â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â• */
.gv-process {
  max-width: 760px;
  margin: 0 auto;
  position: relative;
}
.gv-process__line {
  position: absolute;
  left: 28px;
  top: 48px;
  bottom: 48px;
  width: 1px;
  background: linear-gradient(to bottom,
    rgba(201,168,106,.4) 0%,
    rgba(201,168,106,.1) 80%,
    transparent 100%);
}
.gv-process__step {
  display: grid;
  grid-template-columns: 60px 1fr;
  gap: 28px;
  align-items: flex-start;
  padding: 32px 0;
  border-bottom: 1px solid rgba(255,255,255,.04);
}
.gv-process__step:last-child { border-bottom: none; }
.gv-process__num {
  width: 56px; height: 56px;
  border-radius: 50%;
  background: rgba(201,168,106,.08);
  border: 1px solid rgba(201,168,106,.25);
  display: flex; align-items: center; justify-content: center;
  font-family: var(--serif);
  font-size: 18px;
  font-weight: 300;
  color: var(--gold-l);
  flex-shrink: 0;
  position: relative; z-index: 1;
  transition: border-color .3s, box-shadow .3s, transform .3s;
}
.gv-process__step:hover .gv-process__num {
  background: rgba(201,168,106,.15);
  box-shadow: 0 0 0 4px rgba(201,168,106,.1);
}
.gv-process__body { padding-top: 8px; }
.gv-process__title {
  font-family: var(--serif);
  font-size: 24px;
  font-weight: 300;
  color: #fff;
  margin: 0 0 10px;
}
.gv-process__text {
  font-family: var(--sans);
  font-size: 14.5px;
  color: rgba(255,255,255,.4);
  line-height: 1.8;
  margin: 0 0 10px;
}
.gv-process__note {
  font-family: var(--sans);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--gold);
  opacity: .7;
}


/* â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•
   FÃœR WEN + GATE â€” 2-spaltig
â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â• */
.gv-gate-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 72px;
  align-items: start;
}

/* Checklist */
.gv-checklist {
  list-style: none;
  padding: 0; margin: 20px 0 0;
}
.gv-checklist__item {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  font-family: var(--sans);
  font-size: 14.5px;
  color: rgba(255,255,255,.6);
  padding: 10px 0;
  border-bottom: 1px solid rgba(255,255,255,.04);
}
.gv-checklist__item:last-child { border-bottom: none; }
.gv-checklist__icon {
  width: 22px; height: 22px;
  border-radius: 50%;
  background: rgba(201,168,106,.1);
  border: 1px solid rgba(201,168,106,.2);
  display: flex; align-items: center; justify-content: center;
  color: var(--gold);
  flex-shrink: 0;
  margin-top: 1px;
}

/* Testimonial */
.gv-testi {
  background: rgba(255,255,255,.03);
  border: 1px solid rgba(255,255,255,.07);
  border-left: 3px solid rgba(201,168,106,.4);
  border-radius: 14px;
  padding: 28px;
}
.gv-testi__quote {
  font-family: var(--serif);
  font-size: 16px;
  font-style: italic;
  color: rgba(255,255,255,.65);
  line-height: 1.75;
  margin-bottom: 20px;
}
.gv-testi__author {
  display: flex;
  align-items: center;
  gap: 12px;
}
.gv-testi__avatar {
  width: 40px; height: 40px;
  border-radius: 50%;
  background: rgba(201,168,106,.15);
  display: flex; align-items: center; justify-content: center;
  font-family: var(--sans);
  font-size: 13px;
  font-weight: 600;
  color: var(--gold-l);
  flex-shrink: 0;
}
.gv-testi__name {
  font-family: var(--sans);
  font-size: 13px;
  font-weight: 600;
  color: rgba(255,255,255,.7);
}
.gv-testi__role {
  font-family: var(--sans);
  font-size: 11px;
  color: rgba(255,255,255,.3);
  margin-top: 2px;
}
.gv-testi__stars {
  margin-left: auto;
  color: var(--gold);
  font-size: 13px;
  letter-spacing: 2px;
}

/* Gate Card */
.gv-gate {
  background: rgba(201,168,106,.06);
  border: 1px solid rgba(201,168,106,.2);
  border-radius: 20px;
  padding: 40px;
  position: sticky;
  top: 100px;
}
.gv-gate__star {
  display: block;
  margin-bottom: 16px;
}
.gv-gate__title {
  font-family: var(--serif);
  font-size: 28px;
  font-weight: 300;
  color: #fff;
  margin: 0 0 12px;
}
.gv-gate__text {
  font-family: var(--sans);
  font-size: 14.5px;
  color: rgba(255,255,255,.45);
  line-height: 1.7;
  margin: 0 0 24px;
}
.gv-gate__list {
  margin-bottom: 28px;
}
.gv-gate__list-item {
  display: flex;
  align-items: center;
  gap: 10px;
  font-family: var(--sans);
  font-size: 13px;
  color: rgba(255,255,255,.55);
  padding: 8px 0;
  border-bottom: 1px solid rgba(255,255,255,.05);
}
.gv-gate__list-item:last-child { border-bottom: none; }
.gv-gate__list-item svg { color: var(--gold); flex-shrink: 0; }
.gv-gate__or {
  font-family: var(--sans);
  font-size: 11px;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: rgba(255,255,255,.2);
  text-align: center;
  margin: 14px 0;
}
.gv-gate__fine {
  font-family: var(--sans);
  font-size: 11px;
  color: rgba(255,255,255,.2);
  text-align: center;
  margin: 14px 0 0;
  letter-spacing: .05em;
}


/* â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•
   GE-REVEAL (VIP Override â€” falls Delay genutzt)
â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â• */
.ge-reveal[style*="--reveal-delay"] {
  transition-delay: var(--reveal-delay, 0s) !important;
}


/* â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•
   RESPONSIVE
â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â• */
@media(max-width: 1024px) {
  .gv-split { grid-template-columns: 1fr; gap: 48px; }
  .gv-gate-grid { grid-template-columns: 1fr; gap: 48px; }
  .gv-gate { position: static; }
  .gv-perks-grid { grid-template-columns: repeat(2, 1fr); }
  .gv-hero { min-height: auto; padding: 140px 0 60px; }
}
@media(max-width: 768px) {
  .gv-perks-grid { grid-template-columns: 1fr; }
  .gv-compare { grid-template-columns: 1fr; }
  .gv-compare__col--out { display: none; }
  .gv-hero__trust { flex-direction: column; gap: 16px; }
  .gv-hero__trust-div { width: 80px; height: 1px; }
  .gv-hero__actions { flex-direction: column; align-items: stretch; }
  .gv-btn { justify-content: center; }
  .gv-process__line { display: none; }
  .gp-cta-band__inner { flex-direction: column; text-align: center; }
}
@media(max-width: 480px) {
  .gv-hero__title { font-size: 42px; }
  .gv-gate { padding: 28px 24px; }
}

/* â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•
   v38 â€” ISSUE-OPEN-010: VIP Mobile 430px / 375px
   Tested viewport widths: 430px (iPhone 14 Pro Max),
   375px (iPhone SE / 12 mini)
â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â• */
@media(max-width: 430px) {
  .gv-hero__title { font-size: 36px; line-height: 1.1; }
  .gv-hero { padding: 120px 0 50px; }
  .gv-hero__lead { font-size: 15px; }
  .gv-hero__badge { font-size: 11px; padding: 5px 14px; }
  .gv-gate { padding: 24px 20px; }
  .gv-gate__title { font-size: 22px; }
  .gv-perks-grid { grid-template-columns: 1fr; }
  .gv-timeline-item { padding-left: 40px; }
  .gv-timeline-num {
    width: 28px;
    height: 28px;
    font-size: 12px;
    left: 0;
  }
}
@media(max-width: 375px) {
  .gv-hero__title { font-size: 30px; }
  .gv-hero { padding: 110px 0 40px; }
  .gv-gate { padding: 20px 16px; }
  .gv-gate__title { font-size: 20px; }
  .gv-hero__actions { gap: 10px; }
  .gv-btn { font-size: 13px; padding: 13px 20px; }
}

/* â”€â”€ v74: Neue Klassen aus inline-styles â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.vip-eyebrow--gold { color: var(--vip-gold-d, #9A7030); }

.vip-h2 {
  font-family: var(--vip-serif, 'Cormorant Garamond', Georgia, serif);
  font-size: clamp(24px, 3vw, 38px);
  font-weight: 300;
  color: var(--vip-navy, #0A1A2F);
  margin: 8px 0 48px;
}
.vip-h2--lt {
  color: #fff;
  font-size: clamp(24px, 3vw, 36px);
  margin: 8px 0 40px;
}

.vip-contact-box {
  margin-top: 32px;
  padding: 20px;
  background: rgba(154,112,48,.08);
  border: 1px solid rgba(154,112,48,.2);
  border-radius: 14px;
}
.vip-contact-label {
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--vip-gold-d, #9A7030);
  margin-bottom: 14px;
}
.vip-contact-link {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 14px;
  font-weight: 600;
  color: var(--vip-navy, #0A1A2F);
  margin-bottom: 8px;
  text-decoration: none;
}
.vip-contact-link--muted {
  font-weight: 400;
  color: var(--vip-muted, #6B7280);
}
.vip-required { color: var(--vip-gold, #C9A86A); }
.vip-link { color: var(--vip-gold-d, #9A7030); font-weight: 600; }

/* ===== END ge-vip.css ===== */


/* ===== BEGIN ge-vip-page.css ===== */

/**
 * ge-vip-page.css â€” Gallium Estate
 * Ausgelagert aus page-vip.php
 * v2 â€” Benefits-Box 50% Transparenz, Icons verbessert
 */

:root{
  --vip-gold:var(--gold);--vip-gold-l:var(--gold-l);--vip-gold-d:var(--gold-d);
  --vip-navy:var(--navy);--vip-navy-m:var(--navy-m);
  --vip-warm:var(--warm);--vip-border:var(--border);--vip-muted:var(--muted);--vip-text:var(--text);
  --vip-serif:'Cormorant Garamond',Georgia,serif;
  --vip-sans:'Outfit',system-ui,sans-serif;
  --vip-ease:cubic-bezier(.16,1,.3,1);
}
#vip-page *{box-sizing:border-box}
#vip-page{font-family:var(--vip-sans);color:var(--vip-text)}
#vip-page a{text-decoration:none}
#vip-page p,#vip-page h1,#vip-page h2,#vip-page h3{margin:0}
.vip-wrap{max-width:1160px;margin:0 auto;padding:0 32px}
@media(max-width:600px){.vip-wrap{padding:0 18px}}

/* HERO */
.vip-hero{
  background:linear-gradient(160deg,#030a14 0%,#07111e 55%,#0c1828 100%);
  padding:clamp(96px, 15vw, 156px) 0 clamp(72px, 9vw, 112px);min-height:clamp(620px, 76vh, 860px);position:relative;overflow:hidden;display:flex;align-items:center;
}
.vip-hero::before{
  content:'';position:absolute;inset:0;z-index:1;
  background:
    linear-gradient(160deg,rgba(3,10,20,0.50) 0%,rgba(7,17,30,0.42) 55%,rgba(12,24,40,0.35) 100%),
    radial-gradient(ellipse at 80% 40%,rgba(201,168,106,.07) 0%,transparent 60%);
  pointer-events:none;
}
/* Hintergrundbild hinter dem Overlay */
.vip-hero .ge-img-cover{
  z-index:0;
}
.vip-hero-grid{display:grid;grid-template-columns:1fr 420px;gap:64px;align-items:center;position:relative;z-index:2}
@media(max-width:960px){.vip-hero-grid{grid-template-columns:1fr;gap:40px}}
.vip-eyebrow{display:inline-flex;align-items:center;gap:8px;margin-bottom:24px;font-size:10.5px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--vip-gold)}
.vip-eyebrow::before,.vip-eyebrow::after{content:'';width:16px;height:1px;background:currentColor;opacity:.4}
.vip-hero h1{font-family:var(--vip-serif);font-size:clamp(2.2rem,4vw,3.6rem);font-weight:300;color:#fff;line-height:1.04;margin-bottom:18px;max-width:11ch}
.vip-hero h1 em{color:var(--vip-gold);font-style:normal}
.vip-hero-sub{font-size:16px;color:rgba(255,255,255,.78);line-height:1.82;max-width:560px;margin-bottom:40px}
.vip-hero-ctas{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
/* v118: Hero-Textseite zentriert */
.vip-hero-grid > div:first-child { display:flex; flex-direction:column; align-items:center; text-align:center; }
.vip-hero h1, .vip-hero-sub { text-align:center; max-width:560px; }
.vip-hero-ctas { justify-content:center; }
.vip-eyebrow { align-self:center; }
.vip-btn{
  display:inline-flex;align-items:center;gap:8px;
  padding:15px 28px;border-radius:var(--chip-radius, 14px);font-weight:600;font-size:14px;border:none;cursor:pointer;
  transition:transform .25s var(--vip-ease),box-shadow .25s,opacity .2s;
  font-family:var(--vip-sans);
  text-transform:uppercase;
  letter-spacing:var(--label-spacing, .14em);
  will-change:transform;
}
.vip-btn:hover{transform:translateY(-2px)}
.vip-btn:active{transform:translateY(0);opacity:.88;transition-duration:.1s}
.vip-btn--gold{background:linear-gradient(135deg,var(--vip-gold),var(--vip-gold-d));color:var(--vip-navy);box-shadow:var(--action-shadow-gold, 0 8px 24px rgba(201,168,106,.24))}
.vip-btn--gold:hover{box-shadow:0 12px 32px rgba(201,168,106,.38)}
.vip-btn--ghost{background:transparent;border:1.5px solid rgba(255,255,255,.45);color:#fff}
.vip-btn--ghost:hover{border-color:rgba(255,255,255,.75);background:rgba(255,255,255,.08)}
.vip-btn--outline{background:#fff;color:var(--vip-navy);border:1.5px solid var(--vip-border)}
.vip-btn--outline:hover{background:var(--vip-warm)}

/* â”€â”€ Benefits Box â€” 50% Transparenz (dunkel-navy) â”€â”€ */
.vip-benefits-box{
  background:rgba(6,14,28,0.50);
  border:1px solid rgba(201,168,106,.28);
  border-radius:20px;
  padding:32px;
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  box-shadow:0 20px 56px rgba(0,0,0,.32), inset 0 1px 0 rgba(255,255,255,.06);
}
.vip-benefits-title{
  font-size:10.5px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;
  color:var(--vip-gold);margin-bottom:20px;
  display:flex;align-items:center;gap:8px;
}
.vip-benefits-title::after{content:'';flex:1;height:1px;background:rgba(201,168,106,.2)}

/* â”€â”€ Benefits Einzelzeilen â”€â”€ */
.vip-benefit{display:flex;gap:14px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.08)}
.vip-benefit:last-child{border-bottom:none;padding-bottom:0}

/* Icon: grÃ¶ÃŸer, hell, mit goldenem Ring */
.vip-benefit__icon{
  font-size:22px;
  flex-shrink:0;
  margin-top:2px;
  width:40px;height:40px;
  border-radius:10px;
  background:rgba(201,168,106,.14);
  border:1px solid rgba(201,168,106,.30);
  display:flex;align-items:center;justify-content:center;
  filter:drop-shadow(0 0 6px rgba(201,168,106,.25));
}
.vip-benefit__title{font-weight:700;color:#ffffff;font-size:14px;margin-bottom:4px;letter-spacing:.01em}
.vip-benefit__desc{font-size:13px;color:rgba(255,255,255,.72);line-height:1.55}

/* STATS */
.vip-stats{background:var(--vip-warm);padding:52px 0;border-bottom:1px solid var(--vip-border)}
.vip-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid var(--vip-border);border-radius:16px;overflow:hidden;background:var(--surface-card-soft, #fff);box-shadow:var(--shadow-soft, 0 8px 24px rgba(10,26,47,.06))}
@media(max-width:700px){.vip-stats-grid{grid-template-columns:1fr 1fr}}
.vip-stat{padding:28px 20px;text-align:center;border-right:1px solid var(--vip-border);transition:background .2s}
.vip-stat:last-child{border-right:none}
.vip-stat:hover{background:var(--vip-warm)}
.vip-stat__num{font-family:var(--vip-serif);font-size:clamp(28px,3vw,44px);font-weight:300;color:var(--vip-gold-d);line-height:1;margin-bottom:8px}
.vip-stat__label{font-size:13px;font-weight:600;color:var(--vip-navy);margin-bottom:4px}
.vip-stat__sub{font-size:11.5px;color:var(--vip-muted)}

/* ABLAUF */
.vip-ablauf{padding:80px 0;background:var(--surface-card-warm, #fff)}
.vip-ablauf h2{font-family:var(--serif);font-size:var(--h2);font-weight:300;color:var(--navy);margin:8px 0 48px}
.vip-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:0;position:relative}
@media(max-width:800px){.vip-steps{grid-template-columns:1fr 1fr;gap:24px}}
@media(max-width:500px){.vip-steps{grid-template-columns:1fr}}
.vip-steps::before{
  content:'';position:absolute;top:28px;left:10%;right:10%;height:1px;
  background:linear-gradient(90deg,transparent,var(--vip-border) 20%,var(--vip-border) 80%,transparent);
  z-index:0;
}
@media(max-width:800px){.vip-steps::before{display:none}}
.vip-step{text-align:center;padding:0 20px;position:relative;z-index:1}
.vip-step__num{
  width:56px;height:56px;border-radius:50%;margin:0 auto 18px;
  background:linear-gradient(135deg,var(--vip-gold),var(--vip-gold-d));
  display:flex;align-items:center;justify-content:center;
  font-family:var(--vip-serif);font-size:22px;font-weight:300;color:#fff;
}
.vip-step__title{font-weight:700;font-size:14px;color:var(--vip-navy);margin-bottom:8px}
.vip-step__desc{font-size:13px;color:var(--vip-muted);line-height:1.6}

/* FORM SECTION */
.vip-form-section{padding:80px 0;background:var(--vip-warm)}
.vip-form-grid{display:grid;grid-template-columns:1fr 400px;gap:60px;align-items:start}
@media(max-width:960px){.vip-form-grid{grid-template-columns:1fr}}
.vip-form-intro h2{font-family:var(--vip-serif);font-size:clamp(22px,3vw,36px);font-weight:300;color:var(--vip-navy);margin:8px 0 16px}
.vip-form-intro p{font-size:14.5px;color:var(--vip-muted);line-height:1.7;margin-bottom:24px}
.vip-form-trust{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.vip-trust-item{display:flex;align-items:flex-start;gap:12px;font-size:13px;color:var(--vip-text);padding:12px 14px;border:1px solid rgba(154,112,48,.14);border-radius:14px;background:rgba(255,255,255,.62)}
.vip-trust-icon{width:36px;height:36px;border-radius:10px;background:rgba(154,112,48,.1);border:1px solid rgba(154,112,48,.2);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:16px;color:var(--vip-gold-d)}
.vip-trust-copy{display:flex;flex-direction:column;gap:2px;min-width:0}
.vip-trust-copy strong{font-size:13px;line-height:1.25;color:var(--vip-navy)}
.vip-trust-copy span{font-size:12.5px;line-height:1.45;color:var(--vip-muted)}

.vip-form-card{background:var(--surface-card-soft, #fff);border:1px solid var(--vip-border);border-radius:20px;padding:38px;box-shadow:var(--shadow-card, 0 18px 46px rgba(10,26,47,.08))}
.vip-form-card h3{font-family:var(--vip-serif);font-size:22px;font-weight:300;color:var(--vip-navy);margin-bottom:6px}
.vip-form-card__sub{font-size:12.5px;color:var(--vip-muted);margin-bottom:24px}
.vf-fg{margin-bottom:14px}
.vf-fg label{display:block;font-size:12.5px;font-weight:600;color:var(--vip-navy);margin-bottom:5px}
.vf-fg input,.vf-fg select,.vf-fg textarea{
  width:100%;padding:12px 14px;border:1.5px solid var(--vip-border);
  border-radius:10px;font-family:var(--vip-sans);font-size:14px;color:var(--vip-text);
  outline:none;transition:border-color .2s;background:#fff;
}
.vf-fg input:focus,.vf-fg select:focus,.vf-fg textarea:focus{border-color:var(--vip-gold-d)}
.vf-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media(max-width:480px){.vf-row{grid-template-columns:1fr}}
.vf-check{display:flex;align-items:flex-start;gap:9px;font-size:12.5px;color:var(--vip-muted);line-height:1.5;cursor:pointer;margin-bottom:18px}
.vf-check input{margin-top:2px;flex-shrink:0;accent-color:var(--vip-gold-d);width:15px;height:15px}

/* TESTIMONIALS */
.vip-testimonials{padding:80px 0;background:linear-gradient(160deg,#06101f,#0c1828)}
.vip-testi-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}
.vip-testi-card{
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);
  border-radius:16px;padding:30px;
}
@media(max-width:700px){
  .vip-form-trust{grid-template-columns:1fr}
}
.vip-testi-stars{color:var(--vip-gold);font-size:13px;margin-bottom:14px;letter-spacing:2px}
.vip-testi-text{font-family:var(--vip-serif);font-size:17px;font-weight:300;color:#fff;line-height:1.6;margin-bottom:18px;font-style:italic}
.vip-testi-author{display:flex;align-items:center;gap:12px}
.vip-testi-avatar{width:38px;height:38px;border-radius:50%;background:rgba(201,168,106,.15);border:1.5px solid rgba(201,168,106,.25);display:flex;align-items:center;justify-content:center;font-size:16px;color:var(--vip-gold-l);font-family:var(--vip-serif);font-weight:300}
.vip-testi-name{font-size:13px;font-weight:600;color:#fff}
.vip-testi-role{font-size:11.5px;color:rgba(255,255,255,.55)}

/* FADE */
.vip-fade{opacity:0;transform:translateY(16px);transition:opacity .5s var(--vip-ease),transform .5s var(--vip-ease)}
.vip-in{opacity:1!important;transform:none!important}
.vip-d1{transition-delay:.06s}.vip-d2{transition-delay:.12s}.vip-d3{transition-delay:.18s}

/* VIP HERO FIX: Hintergrundbild sichtbar (dim-10 override + Overlay reduziert) */
.vip-hero .ge-img-cover { opacity: .60 !important; }
.vip-hero::before {
  background:
    radial-gradient(ellipse at 80% 40%, rgba(201,168,106,.09) 0%, transparent 60%),
    linear-gradient(180deg, rgba(9,25,44,.50) 0%, rgba(9,25,44,.25) 100%);
}

/* ===== END ge-vip-page.css ===== */


/* ===== BEGIN ge-ueber-uns.css ===== */

/**
 * Gallium Estate v11 — ge-ueber-uns.css
 * Neue CSS-Klassen für page-ueber-uns.php
 * Ergänzt ge-page.css — keine Duplikate, keine Konflikte
 */

/* ════════════════════════════════════════════
   HERO — Über Uns (heller Hintergrund)
════════════════════════════════════════════ */
.ge-ue-hero {
  background: var(--warm, var(--warm));
  padding: 132px 0 92px;
  border-bottom: 1px solid var(--border, #E9E4DB);
  position: relative;
  overflow: hidden;
  box-shadow: var(--shadow-float, 0 26px 72px rgba(10,26,47,.08));
}

.ge-ue-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(ellipse 60% 70% at 80% 40%, rgba(201,168,106,.07) 0%, transparent 60%),
    radial-gradient(ellipse 40% 60% at 10% 80%, rgba(10,26,47,.04) 0%, transparent 50%);
}

.ge-ue-hero__grid {
  display: grid;
  grid-template-columns: 380px 1fr;
  gap: 88px;
  align-items: center;
  position: relative;
  z-index: 1;
}

/* Portrait column */
.ge-ue-hero__visual {
  position: relative;
}

/* Override ge-portrait-frame for this context (light bg) */
.ge-ue-hero .ge-portrait-frame {
  max-width: 100%;
  width: 100%;
  aspect-ratio: 3/4;
  border-radius: 24px;
  overflow: hidden;
  border: 1px solid rgba(10,26,47,.12);
  background: var(--warm2, #EDE9E2);
  box-shadow: 0 32px 80px rgba(10,26,47,.12);
}

.ge-ue-hero .ge-portrait-frame img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  display: block;
}

/* Override portrait badge for light bg */
.ge-ue-hero .ge-portrait-badge {
  position: absolute;
  bottom: -16px;
  right: -16px;
  background: var(--navy, var(--navy));
  border: 2px solid rgba(201,168,106,.3);
  border-radius: 16px;
  padding: 16px 20px;
  text-align: center;
  box-shadow: var(--shadow-card, 0 18px 46px rgba(10,26,47,.08));
}

.ge-ue-hero .ge-portrait-badge strong {
  font-family: var(--serif, 'Cormorant Garamond', Georgia, serif);
  font-size: 34px;
  font-weight: 300;
  color: var(--gold-l, var(--gold-l));
  display: block;
  line-height: 1;
}

.ge-ue-hero .ge-portrait-badge span {
  font-size: 11px;
  color: rgba(255,255,255,.65);
  display: block;
  margin-top: 4px;
}

/* Floating star badge */
.ge-ue-hero__float-badge {
  position: absolute;
  top: 24px;
  left: -20px;
  background: #fff;
  border: 1px solid var(--border, #E9E4DB);
  border-radius: 14px;
  padding: 12px 16px;
  display: flex;
  align-items: center;
  gap: 10px;
  box-shadow: var(--shadow-soft, 0 8px 24px rgba(10,26,47,.06));
}

.ge-ue-hero__float-icon { font-size: 22px; }

.ge-ue-hero__float-num {
  font-family: var(--serif);
  font-size: 20px;
  font-weight: 300;
  color: var(--gold-d, var(--gold-d));
  line-height: 1;
}

.ge-ue-hero__float-lbl {
  font-size: 10px;
  color: #9ca3af;
  margin-top: 2px;
  letter-spacing: .06em;
}

/* Text column */
.ge-ue-hero__text {
  padding-right: 16px;
}

.ge-ue-hero__h1 {
  font-family: var(--serif, 'Cormorant Garamond', Georgia, serif);
  font-size: clamp(32px, 3.5vw, 52px);
  font-weight: 300;
  color: var(--navy, var(--navy));
  line-height: 1.08;
  margin: 12px 0 16px;
  max-width: 11ch;
}

.ge-ue-hero__h1 em {
  font-style: italic;
  color: var(--gold-d, var(--gold-d));
}

.ge-ue-hero__quote {
  border-left: 3px solid var(--gold, var(--gold));
  padding-left: 20px;
  font-family: var(--serif, 'Cormorant Garamond', Georgia, serif);
  font-size: 18px;
  font-style: italic;
  color: var(--navy, var(--navy));
  opacity: .78;
  margin: 20px 0 24px;
  line-height: 1.7;
}

.ge-ue-hero__text p {
  font-size: 15px;
  color: #4b5563;
  line-height: 1.92;
  margin-bottom: 16px;
}

.ge-ue-hero__btns {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: 32px;
}

/* Certs for light bg */
.ge-ue-hero .ge-cert {
  background: rgba(10,26,47,.04);
  border-color: rgba(10,26,47,.1);
  color: #4b5563;
}

/* Eyebrow gold-d variant */
.ge-eyebrow--gold-d { color: var(--gold-d, var(--gold-d)); }

/* Btn variants */
.ge-btn--primary {
  background: var(--gold, var(--gold));
  color: #fff;
  border: 2px solid var(--gold, var(--gold));
}
.ge-btn--primary:hover {
  background: var(--gold-d, var(--gold-d));
  border-color: var(--gold-d, var(--gold-d));
  box-shadow: 0 8px 24px rgba(154,112,48,.3);
  transform: translateY(-2px);
}

.ge-btn--secondary {
  background: transparent;
  color: var(--navy, var(--navy));
  border: 2px solid rgba(10,26,47,.2);
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
.ge-btn--secondary:hover {
  border-color: var(--navy, var(--navy));
}

.ge-btn--outline-navy {
  background: transparent;
  color: var(--navy, var(--navy));
  border: 2px solid rgba(10,26,47,.2);
}
.ge-btn--outline-navy:hover {
  border-color: var(--navy, var(--navy));
}

/* ════════════════════════════════════════════
   PHILOSOPHIE GRID
════════════════════════════════════════════ */
.ge-ue-phil-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  margin-top: 48px;
}

.ge-ue-phil-card {
  background: #fff;
  border: 1px solid var(--border, #E9E4DB);
  border-radius: 16px;
  padding: 32px;
  transition: border-color .3s, box-shadow .3s, transform .3s;
}

.ge-ue-phil-card:hover {
  box-shadow: 0 12px 40px rgba(0,0,0,.08);
  transform: translateY(-4px);
  border-color: rgba(201,168,106,.3);
}

.ge-ue-phil-icon {
  width: 48px;
  height: 48px;
  border-radius: 12px;
  background: rgba(201,168,106,.1);
  border: 1px solid rgba(201,168,106,.2);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--gold-d, var(--gold-d));
  margin-bottom: 20px;
}

.ge-ue-phil-card h3 {
  font-family: var(--serif, 'Cormorant Garamond', Georgia, serif);
  font-size: 20px;
  font-weight: 400;
  color: var(--navy, var(--navy));
  margin-bottom: 12px;
}

.ge-ue-phil-card p {
  font-size: 14.5px;
  color: var(--muted);
  line-height: 1.8;
  margin: 0;
}

/* ════════════════════════════════════════════
   ROI RECHNER
════════════════════════════════════════════ */
.ge-ue-roi-card {
  max-width: 860px;
  margin: 0 auto;
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(201,168,106,.18);
  border-radius: 20px;
  padding: 48px;
}

.ge-ue-roi-sliders {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 40px;
  margin-bottom: 36px;
}

.ge-ue-roi-field-head {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  margin-bottom: 12px;
}

.ge-ue-roi-field-head label {
  font-size: 14px;
  font-weight: 600;
  color: rgba(255,255,255,.7);
}

.ge-ue-roi-field-val {
  font-family: var(--serif);
  font-size: 22px;
  font-weight: 300;
  color: var(--gold-l, var(--gold-l));
}

.ge-roi-slider {
  width: 100%;
  accent-color: var(--gold, var(--gold));
  cursor: pointer;
  height: 4px;
}

.ge-ue-roi-range-row {
  display: flex;
  justify-content: space-between;
  font-size: 11px;
  color: rgba(255,255,255,.52);
  margin-top: 6px;
}

.ge-ue-roi-result {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(255,255,255,.07);
  border-radius: 14px;
  overflow: hidden;
  margin-bottom: 16px;
}

.ge-ue-roi-col {
  padding: 22px;
  text-align: center;
  border-right: 1px solid rgba(255,255,255,.06);
}

.ge-ue-roi-col:last-child { border-right: none; }

.ge-ue-roi-col__lbl {
  font-size: 11px;
  color: rgba(255,255,255,.60);
  text-transform: uppercase;
  letter-spacing: .08em;
  margin-bottom: 8px;
}

.ge-ue-roi-col__num {
  font-family: var(--serif);
  font-size: 30px;
  font-weight: 300;
  color: #fff;
}

.ge-ue-roi-col__num--pos { color: #4ade80; }
.ge-ue-roi-col__num--neg { color: #f87171; }

.ge-ue-roi-message {
  padding: 14px 20px;
  border-radius: 10px;
  font-size: 14px;
  text-align: center;
}

.ge-ue-roi-message--pos {
  background: rgba(22,163,74,.08);
  border: 1px solid rgba(22,163,74,.2);
  color: #4ade80;
}

.ge-ue-roi-message--neg {
  background: rgba(220,38,38,.06);
  border: 1px solid rgba(220,38,38,.15);
  color: #f87171;
}

/* ════════════════════════════════════════════
   FAQ LAYOUT
════════════════════════════════════════════ */
.ge-ue-faq-layout {
  display: grid;
  grid-template-columns: 1fr 1.6fr;
  gap: 80px;
  align-items: flex-start;
}

.ge-ue-faq-sidebar h2 {
  font-family: var(--serif);
  font-size: clamp(28px, 3vw, 44px);
  font-weight: 300;
  color: var(--navy, var(--navy));
  line-height: 1.2;
  margin: 12px 0 16px;
}

.ge-ue-faq-sidebar p {
  font-size: 15px;
  color: var(--muted);
  line-height: 1.8;
}

.ge-ue-faq-contact {
  margin-top: 28px;
  padding: 20px;
  background: #fff;
  border: 1px solid var(--border, #E9E4DB);
  border-radius: 12px;
}

.ge-ue-faq-contact p {
  font-size: 14px;
  color: #4b5563;
  margin: 0 0 12px;
}

.ge-ue-faq-tel {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  font-size: 14px;
  font-weight: 600;
  color: var(--gold-d, var(--gold-d));
  text-decoration: none;
}

.ge-ue-faq-tel:hover { color: var(--gold, var(--gold)); }

/* ════════════════════════════════════════════
   SECTION HEADING HELPERS
════════════════════════════════════════════ */
.ge-section-head { margin-bottom: 48px; }
.ge-section-head--center { text-align: center; }
.ge-section-head--center .ge-eyebrow { justify-content: center; margin: 0 auto 12px; }

.ge-section-h2--light {
  color: #fff !important;
}

.ge-section-sub {
  font-size: 15px;
  color: rgba(255,255,255,.4);
  max-width: 520px;
  margin: 0 auto;
  line-height: 1.8;
}

/* ════════════════════════════════════════════
   RESPONSIVE
════════════════════════════════════════════ */
@media (max-width: 1024px) {
  .ge-ue-hero__grid {
    grid-template-columns: 1fr 1fr;
    gap: 48px;
  }
  .ge-ue-phil-grid {
    grid-template-columns: 1fr;
  }
  .ge-ue-roi-sliders {
    grid-template-columns: 1fr;
    gap: 24px;
  }
}

@media (max-width: 768px) {
  .ge-ue-hero {
    padding: 100px 0 60px;
  }
  .ge-ue-hero__grid {
    grid-template-columns: 1fr;
    gap: 40px;
  }
  .ge-ue-hero .ge-portrait-frame {
    max-width: 300px;
    margin: 0 auto;
  }
  .ge-ue-hero__float-badge {
    display: none; /* Kein Platz auf Mobile */
  }
  .ge-ue-faq-layout {
    grid-template-columns: 1fr;
    gap: 40px;
  }
  .ge-ue-roi-result {
    grid-template-columns: 1fr;
  }
  .ge-ue-roi-col {
    border-right: none;
    border-bottom: 1px solid rgba(255,255,255,.06);
  }
  .ge-ue-roi-col:last-child { border-bottom: none; }
  .ge-ue-roi-card { padding: 28px 20px; }
  .ge-ue-hero__btns { flex-direction: column; }
}

/* ════════════════════════════════════════════
   TIMELINE — Mein Weg (PREMIUM NEU)
════════════════════════════════════════════ */
.ge-ue-timeline {
  position: relative;
  max-width: 800px;
  margin: 0 auto;
  padding: 20px 0;
}

.ge-ue-timeline::before {
  content: '';
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: 0; bottom: 0;
  width: 1px;
  background: linear-gradient(180deg,
    transparent 0%,
    rgba(201,168,106,.4) 10%,
    rgba(201,168,106,.4) 90%,
    transparent 100%
  );
}

.ge-ue-timeline__item {
  display: grid;
  grid-template-columns: 1fr 32px 1fr;
  gap: 0 28px;
  align-items: center;
  margin-bottom: 48px;
  position: relative;
}

.ge-ue-timeline__item:nth-child(odd) .ge-ue-timeline__year {
  text-align: right;
}
.ge-ue-timeline__item:nth-child(odd) .ge-ue-timeline__content {
  text-align: left;
}
.ge-ue-timeline__item:nth-child(even) {
  direction: rtl;
}
.ge-ue-timeline__item:nth-child(even) > * {
  direction: ltr;
}
.ge-ue-timeline__item:nth-child(even) .ge-ue-timeline__year {
  text-align: right;
}
.ge-ue-timeline__item:nth-child(even) .ge-ue-timeline__content {
  text-align: left;
}

.ge-ue-timeline__year {
  font-family: var(--serif, 'Cormorant Garamond', Georgia, serif);
  font-size: 32px;
  font-weight: 300;
  color: var(--gold, var(--gold));
  letter-spacing:0;
  line-height: 1;
}

.ge-ue-timeline__dot {
  width: 14px;
  height: 14px;
  background: var(--gold, var(--gold));
  border-radius: 50%;
  border: 3px solid var(--navy-d, var(--navy-d));
  box-shadow: 0 0 0 1px var(--gold, var(--gold));
  flex-shrink: 0;
  justify-self: center;
}

.ge-ue-timeline__content h3 {
  font-family: var(--sans, 'Outfit', sans-serif);
  font-size: 15px;
  font-weight: 700;
  color: #fff;
  margin-bottom: 6px;
  letter-spacing: .01em;
}

.ge-ue-timeline__content p {
  font-size: 14px;
  line-height: 1.65;
  color: rgba(255,255,255,.55);
  font-family: var(--sans, 'Outfit', sans-serif);
  margin: 0;
}

/* ════════════════════════════════════════════
   LOKALE EXPERTISE
════════════════════════════════════════════ */
.ge-ue-local {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 80px;
  align-items: center;
}

.ge-ue-local__text h2 {
  font-family: var(--serif, 'Cormorant Garamond', Georgia, serif);
  font-size: clamp(28px, 3.5vw, 42px);
  font-weight: 300;
  color: var(--navy, var(--navy));
  line-height: 1.2;
  margin: 12px 0 20px;
  letter-spacing:0;
}

.ge-ue-local__text h2 em {
  font-style: italic;
  color: var(--gold-d, var(--gold-d));
}

.ge-ue-local__text p {
  font-size: 15px;
  line-height: 1.75;
  color: var(--muted, var(--muted));
  font-family: var(--sans, 'Outfit', sans-serif);
  margin-bottom: 14px;
}

.ge-ue-local__orte {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 24px;
}

.ge-ue-local__ort {
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .06em;
  text-transform: uppercase;
  padding: 5px 12px;
  background: var(--warm2, #F2EDE4);
  border: 1px solid rgba(201,168,106,.25);
  border-radius: 20px;
  color: var(--navy, var(--navy));
  font-family: var(--sans, 'Outfit', sans-serif);
}

.ge-ue-local__stat-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2px;
  border-radius: 20px;
  overflow: hidden;
  border: 1px solid rgba(10,26,47,.1);
  box-shadow: 0 24px 60px rgba(10,26,47,.1);
}

.ge-ue-local__stat {
  background: var(--navy, var(--navy));
  padding: 32px 28px;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.ge-ue-local__stat:nth-child(2),
.ge-ue-local__stat:nth-child(3) {
  background: var(--navy-m, var(--navy-m));
}

.ge-ue-local__stat-num {
  font-family: var(--serif, 'Cormorant Garamond', Georgia, serif);
  font-size: 38px;
  font-weight: 300;
  color: var(--gold-l, var(--gold-l));
  line-height: 1;
  letter-spacing:0;
}

.ge-ue-local__stat-lbl {
  font-size: 13px;
  font-weight: 600;
  color: #fff;
  font-family: var(--sans, 'Outfit', sans-serif);
}

.ge-ue-local__stat-sub {
  font-size: 11px;
  color: rgba(255,255,255,.4);
  font-family: var(--sans, 'Outfit', sans-serif);
}

/* ════ RESPONSIVE ════ */
@media (max-width: 860px) {
  .ge-ue-local {
    grid-template-columns: 1fr;
    gap: 40px;
  }
  .ge-ue-timeline::before { display: none; }
  .ge-ue-timeline__item {
    grid-template-columns: 64px 1fr;
    gap: 0 16px;
  }
  .ge-ue-timeline__item:nth-child(even) { direction: ltr; }
  .ge-ue-timeline__dot { display: none; }
  .ge-ue-timeline__year {
    font-size: 22px;
    text-align: left !important;
  }
  .ge-ue-timeline__content { text-align: left !important; }
}

@media (max-width: 540px) {
  .ge-ue-local__stat-grid { grid-template-columns: 1fr; }
  .ge-ue-local__stat-num { font-size: 28px; }
}

/* ===== END ge-ueber-uns.css ===== */


/* ===== BEGIN ge-ueber-uns-page.css ===== */

/**
 * ge-ueber-uns-page.css — Gallium Estate
 * Ausgelagert aus page-ueber-uns.php
 */

/* scroll-behavior: in ge-base.css definiert (Fix v55: Duplikat entfernt) */
.uu-hero{background:#F5F0E8;padding:clamp(80px, 14vw, 140px) 0 clamp(60px, 8vw, 100px);min-height:clamp(580px, 72vh, 820px);overflow:hidden;display:flex;align-items:center}
.uu-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:72px;align-items:center}
/* Portrait */
.uu-frame{position:relative;border-radius:24px;overflow:hidden;box-shadow:0 32px 80px rgba(10,26,47,.12),0 0 0 1px rgba(201,168,106,.15);transition:box-shadow .4s,transform .4s;aspect-ratio:3/4;background:#F5F0E8}
.uu-frame:hover{box-shadow:0 48px 100px rgba(10,26,47,.2),0 0 0 2px rgba(201,168,106,.3);transform:translateY(-5px)}
.uu-frame img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s ease;filter:none}
.uu-frame:hover img{transform:scale(1.035)}
.uu-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,rgba(10,26,47,.85),transparent);padding:28px 24px 22px}
.uu-overlay-quote{font-family:var(--serif,'Cormorant Garamond',Georgia,serif);font-size:17px;font-weight:300;color:#fff;font-style:italic;line-height:1.4}
/* Float badges */
.uu-fbadge{position:absolute;bottom:-20px;right:-16px;background:#fff;border-radius:14px;padding:14px 18px;box-shadow:0 12px 36px rgba(10,26,47,.14);text-align:center;border:1px solid rgba(201,168,106,.2);transition:transform .3s}
.uu-fbadge:hover{transform:translateY(-3px) scale(1.03)}
.uu-fbadge strong{display:block;font-family:var(--serif);font-size:26px;font-weight:300;color:var(--navy,var(--navy))}
.uu-fbadge span{font-size:10px;color:var(--muted,var(--muted));letter-spacing:.08em;text-transform:uppercase}
.uu-star-badge{position:absolute;top:28px;left:-24px;background:linear-gradient(135deg,var(--navy),var(--navy-m));border:1px solid rgba(201,168,106,.25);border-radius:14px;padding:12px 16px;display:flex;align-items:center;gap:10px;box-shadow:0 8px 32px rgba(10,26,47,.3);transition:transform .3s}
.uu-star-badge:hover{transform:translateX(-4px)}
.uu-star-badge-num{font-family:var(--serif);font-size:20px;font-weight:300;color:var(--gold-l,var(--gold-l))}
.uu-star-badge-lbl{font-size:9px;color:rgba(255,255,255,.4);letter-spacing:.1em;text-transform:uppercase}
/* Cert badges */
.uu-certs{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0}
.uu-cert{display:inline-flex;align-items:center;gap:7px;background:rgba(201,168,106,.10);border:1px solid rgba(201,168,106,.30);border-radius:20px;padding:6px 13px;font-size:12px;font-weight:600;color:var(--navy,#0A1A2F)}
/* KPI Strip */
.uu-strip{background:linear-gradient(to right,#06101f,#0c1a30,#06101f);border-top:1px solid rgba(201,168,106,.1);border-bottom:1px solid rgba(201,168,106,.08)}
.uu-strip-inner{display:flex;justify-content:space-around;flex-wrap:wrap;max-width:1200px;margin:0 auto;padding:0 40px}
.uu-kpi{flex:1;min-width:120px;padding:26px 12px;text-align:center;border-right:1px solid rgba(255,255,255,.05)}
.uu-kpi:last-child{border-right:none}
.uu-kv{display:block;font-family:var(--serif);font-size:36px;font-weight:300;color:var(--gold-l,var(--gold-l));line-height:1;margin-bottom:7px}
.uu-kl{display:block;font-size:10px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:rgba(255,255,255,.80)}
/* Phil cards */
.uu-phil{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.uu-pc{background:#fff;border:1px solid var(--border,var(--border));border-radius:20px;padding:34px 26px;transition:color .35s,background .35s,border-color .35s,transform .35s,box-shadow .35s cubic-bezier(.16,1,.3,1);position:relative;overflow:hidden}
.uu-pc::after{content:'';position:absolute;bottom:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--gold-d,var(--gold-d)),var(--gold,var(--gold)));transform:scaleX(0);transform-origin:left;transition:transform .35s cubic-bezier(.16,1,.3,1)}
.uu-pc:hover{transform:translateY(-6px);box-shadow:0 20px 60px rgba(10,26,47,.1);border-color:rgba(201,168,106,.3)}
.uu-pc:hover::after{transform:scaleX(1)}
.uu-pci{width:48px;height:48px;border-radius:12px;background:rgba(154,112,48,.08);border:1px solid rgba(154,112,48,.15);display:flex;align-items:center;justify-content:center;margin-bottom:18px;color:var(--gold-d,var(--gold-d));transition:background .3s,border-color .3s}
.uu-pc:hover .uu-pci{background:rgba(154,112,48,.15);border-color:rgba(154,112,48,.3)}
.uu-pc h3{font-family:var(--serif);font-size:21px;font-weight:300;color:var(--navy,var(--navy));margin:0 0 10px}
.uu-pc p{font-size:14px;line-height:1.75;color:var(--muted,var(--muted));margin:0}
/* Timeline — v119 Item 37: goldene Verbindungslinie prominenter */
.uu-tl{position:relative;max-width:760px;margin:0 auto;padding-left:44px}
.uu-tl::before{
  content:'';position:absolute;left:7px;top:12px;bottom:12px;width:2px;
  background:linear-gradient(to bottom,transparent,var(--gold,#C9A86A) 6%,var(--gold,#C9A86A) 94%,transparent);
  opacity:.55;border-radius:2px;
}
.uu-tl-item{display:grid;grid-template-columns:96px 18px 1fr;gap:0 20px;align-items:start;margin-bottom:44px}
.uu-tl-item:last-child{margin-bottom:0}
.uu-tl-year{font-family:var(--serif);font-size:17px;font-weight:300;color:var(--gold-l,var(--gold-l));text-align:right;padding-top:2px;line-height:1.3;word-break:break-word}
.uu-tl-dot{
  width:16px;height:16px;border-radius:50%;
  border:2.5px solid var(--gold,#C9A86A);
  background:var(--navy-d,#04080f);
  flex-shrink:0;margin-top:4px;position:relative;left:-8px;
  transition:background .4s,box-shadow .4s;
  box-shadow:0 0 0 4px rgba(201,168,106,.08);
}
.uu-tl-item.uu-visible .uu-tl-dot{
  background:var(--gold,#C9A86A);
  box-shadow:0 0 0 4px rgba(201,168,106,.15),0 0 20px rgba(201,168,106,.5);
}
.uu-tl-content h3{font-family:var(--serif);font-size:19px;font-weight:300;color:#fff;margin:0 0 6px}
.uu-tl-content p{font-size:13.5px;color:rgba(255,255,255,.52);line-height:1.7;margin:0}
/* ROI */
.uu-roi{background:rgba(255,255,255,.04);border:1px solid rgba(201,168,106,.15);border-radius:22px;padding:44px;max-width:780px;margin:0 auto}
.uu-roi-fh{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:10px}
.uu-roi-label{font-size:13px;font-weight:600;color:rgba(255,255,255,.5);letter-spacing:.05em}
.uu-roi-val{font-family:var(--serif);font-size:26px;font-weight:300;color:var(--gold-l,var(--gold-l))}
.uu-slider{width:100%;-webkit-appearance:none;height:4px;border-radius:2px;background:rgba(201,168,106,.2);outline:none;cursor:pointer;margin-bottom:6px}
.uu-slider::-webkit-slider-thumb{-webkit-appearance:none;width:22px;height:22px;border-radius:50%;background:var(--gold,var(--gold));border:3px solid #fff;box-shadow:0 2px 8px rgba(0,0,0,.3);cursor:pointer;transition:transform .2s}
.uu-slider::-webkit-slider-thumb:hover{transform:scale(1.15)}
.uu-slider:focus::-webkit-slider-thumb{box-shadow:0 0 0 3px rgba(201,168,106,.35)}
.uu-roi-range{display:flex;justify-content:space-between;font-size:11px;color:rgba(255,255,255,.2)}
.uu-roi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:32px 0 18px}
.uu-roi-col{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);border-radius:12px;padding:18px;text-align:center}
.uu-roi-col-lbl{font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.3);margin-bottom:8px;display:block}
.uu-roi-num{font-family:var(--serif);font-size:26px;font-weight:300;color:#fff}
.uu-roi-num--pos{color:#4ade80}.uu-roi-num--neg{color:#f87171}
.uu-roi-msg{text-align:center;padding:12px 18px;border-radius:10px;font-size:14px;line-height:1.6}
.uu-roi-msg--pos{background:rgba(74,222,128,.08);border:1px solid rgba(74,222,128,.2);color:rgba(255,255,255,.6)}
.uu-roi-msg--neg{background:rgba(248,113,113,.08);border:1px solid rgba(248,113,113,.2);color:rgba(255,255,255,.6)}
.uu-roi-disc{font-size:11px;color:rgba(255,255,255,.18);text-align:center;margin-top:8px}
/* Local */
.uu-local{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.uu-orte{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.uu-ort{display:inline-block;padding:5px 13px;border-radius:20px;border:1px solid rgba(154,112,48,.2);background:rgba(154,112,48,.05);font-size:12px;font-weight:500;color:var(--gold-d,var(--gold-d));transition:color .2s,background .2s,border-color .2s,transform .2s,box-shadow .2s;cursor:default}
.uu-ort:hover{background:rgba(154,112,48,.12);border-color:rgba(154,112,48,.4)}
.uu-stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.uu-stat{background:#fff;border:1px solid var(--border,var(--border));border-radius:14px;padding:22px 18px;text-align:center;transition:color .3s,background .3s,border-color .3s,transform .3s,box-shadow .3s}
.uu-stat:hover{border-color:rgba(154,112,48,.25);transform:translateY(-3px);box-shadow:0 10px 28px rgba(10,26,47,.08)}
.uu-sn{display:block;font-family:var(--serif);font-size:34px;font-weight:300;color:var(--navy)}
.uu-sl{display:block;font-size:11px;font-weight:700;color:var(--gold-d);margin-top:4px;text-transform:uppercase;letter-spacing:.1em}
.uu-sx{display:block;font-size:11px;color:var(--muted);margin-top:2px}
/* FAQ */
.uu-faq-layout{display:grid;grid-template-columns:1fr 1.6fr;gap:64px;align-items:start}
.uu-faq-item{border-bottom:1px solid rgba(255,255,255,.12)}
.uu-faq-body-in{color:rgba(255,255,255,.5)}
.uu-faq-btn{width:100%;background:none;border:none;padding:20px 0;display:flex;justify-content:space-between;align-items:center;gap:14px;font-family:var(--sans,system-ui,sans-serif);font-size:15px;font-weight:500;color:rgba(255,255,255,.88);cursor:pointer;text-align:left;transition:color .2s;line-height:1.4}
.uu-faq-btn:hover{color:var(--gold-l,#d4af72)}
.uu-faq-btn svg{flex-shrink:0;width:18px;height:18px;transition:transform .3s;color:rgba(255,255,255,.3)}
.uu-faq-btn[aria-expanded="true"]{color:var(--gold-l,#d4af72)}
.uu-faq-btn[aria-expanded="true"] svg{transform:rotate(45deg);color:var(--gold)}
.uu-faq-body{overflow:hidden;transition:max-height .4s cubic-bezier(.16,1,.3,1)}
.uu-faq-body[hidden]{display:none}
.uu-faq-body-in{padding:0 0 20px;font-size:15px;line-height:1.8;color:rgba(255,255,255,.80)}
/* Reveal */
.uu-reveal{opacity:0;transform:translateY(22px);transition:opacity .6s cubic-bezier(.16,1,.3,1),transform .6s cubic-bezier(.16,1,.3,1)}
.uu-visible{opacity:1!important;transform:none!important}
@media(prefers-reduced-motion:reduce){.uu-reveal,.uu-frame,.uu-pc,.uu-stat{transition:none!important}}
/* Responsive */
@media(max-width:1000px){.uu-grid{grid-template-columns:1fr}.uu-phil{grid-template-columns:1fr 1fr}.uu-faq-layout{grid-template-columns:1fr}.uu-local{grid-template-columns:1fr}}
@media(max-width:680px){.uu-phil{grid-template-columns:1fr}.uu-roi-grid{grid-template-columns:1fr}.uu-tl{padding-left:24px}.uu-tl-item{grid-template-columns:56px 14px 1fr}.uu-stat-grid{grid-template-columns:1fr 1fr}.uu-strip-inner{flex-direction:column}.uu-kpi{border-right:none;border-bottom:1px solid rgba(255,255,255,.05)}}


/* ── Referenz-Galerie Karten (v71: onmouseover → CSS) ─────────────────────── */
.ge-ref-card {
  border-radius: 12px;
  overflow: hidden;
  position: relative;
  aspect-ratio: 4/3;
}
.ge-ref-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .4s ease;
}
.ge-ref-card:hover .ge-ref-img {
  transform: scale(1.04);
}

/* ── v73: Breadcrumb (aus inline-styles) ─────────────────────────────────── */
.ge-breadcrumb__list {
  display: flex;
  gap: 8px;
  list-style: none;
  padding: 0; margin: 0;
  font-size: 13px;
  color: var(--muted);
}
.ge-breadcrumb__link {
  color: var(--gold-d);
  text-decoration: none;
}
.ge-breadcrumb__link:hover { text-decoration: underline; }
.ge-breadcrumb__sep { color: var(--border); }

/* ── v73: Hero-Text (aus inline-styles) ─────────────────────────────────── */
.uu-hero-h1 {
  font-family: var(--serif);
  font-size: clamp(38px, 5vw, 66px);
  font-weight: 300;
  line-height: 1.1;
  color: var(--navy);
  margin: 12px 0 20px;
}
.uu-hero-lead {
  font-size: 15.5px;
  line-height: 1.85;
  color: var(--muted);
  margin-bottom: 14px;
}
.uu-hero-lead--last { margin-bottom: 22px; }

/* ── v73: Timeline section dimmed sub ───────────────────────────────────── */
.ge-section-sub--dim {
  color: rgba(255,255,255,.5);
}

/* ── v73: emoji in text ──────────────────────────────────────────────────── */
.ge-text-xl { font-size: 22px; }

/* ══ v13 Fixes ══════════════════════════════════════════ */

/* KPI-Strip komplett ausblenden (Zahlen weg) */
.uu-strip { display: none !important; }

/* Portrait-Badge ohne Zahlen */
.uu-fbadge { display: none !important; }

/* Lokales Zitat statt Statistik-Grid */
.uu-local {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 80px;
  align-items: center;
}
.uu-local-quote__inner {
  background: linear-gradient(135deg, rgba(201,168,106,.07) 0%, rgba(201,168,106,.03) 100%);
  border: 1px solid rgba(201,168,106,.18);
  border-radius: 20px;
  padding: 48px 40px;
  position: relative;
}
.uu-local-quote__icon {
  margin-bottom: 20px;
  display: block;
}
.uu-local-quote__text {
  font-family: var(--serif, 'Cormorant Garamond', Georgia, serif);
  font-size: clamp(20px, 2.2vw, 28px);
  font-weight: 300;
  line-height: 1.55;
  color: var(--navy, #080f1e);
  font-style: italic;
  margin: 0 0 20px;
}
.uu-local-quote__cite {
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--gold-d, #9A7030);
  font-style: normal;
}

/* Responsive */
@media (max-width: 860px) {
  .uu-local { grid-template-columns: 1fr; gap: 40px; }
}

/* ══ Portrait: Filter entfernen ══ */
.uu-frame img {
  filter: none !important;
}

/* ══ Hero-Bild Premium (über-uns hat eigenes hero, kein ge-hero-premium) ══ */
/* Falls uu-hero ein Hintergrundbild hat */
.uu-hero {
  position: relative;
}

/* ════════════════════════════════════════════════════════
   FAQ — 2-spaltig, volle Breite, Premium-Accordion
════════════════════════════════════════════════════════ */
.uu-faq-sec { padding: 64px 0; }

.uu-faq-hd {
  text-align: center;
  max-width: 640px;
  margin: 0 auto 64px;
}
.uu-faq-intro {
  font-size: 16px;
  color: rgba(255,255,255,.65);
  line-height: 1.7;
  margin: 14px 0 0;
}

/* 2-Spalten-Raster */
.uu-faq-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0 48px;
  align-items: start;
}

/* Jede Frage als eigenständige Karte */
.uu-faq-card {
  border-bottom: 1px solid rgba(255,255,255,.08);
  transition: background .2s;
}
.uu-faq-card:first-child,
.uu-faq-card:nth-child(2) { border-top: 1px solid rgba(255,255,255,.08); }

.uu-faq-btn2 {
  width: 100%;
  background: none;
  border: none;
  padding: 22px 4px;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  cursor: pointer;
  text-align: left;
  transition: none;
}

.uu-faq-q2 {
  font-family: var(--sans, 'Outfit', system-ui, sans-serif);
  font-size: 15px;
  font-weight: 500;
  color: rgba(255,255,255,.88);
  line-height: 1.45;
  transition: color .2s;
}
.uu-faq-btn2:hover .uu-faq-q2,
.uu-faq-card.is-open .uu-faq-q2 { color: var(--gold-l, #d4af72); }

.uu-faq-icon2 {
  flex-shrink: 0;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  border: 1px solid rgba(255,255,255,.12);
  display: flex;
  align-items: center;
  justify-content: center;
  color: rgba(255,255,255,.45);
  margin-top: 2px;
  transition: background .2s, border-color .2s, color .2s, transform .25s;
}
.uu-faq-card.is-open .uu-faq-icon2 {
  background: rgba(201,168,106,.12);
  border-color: rgba(201,168,106,.35);
  color: var(--gold-l, #d4af72);
  transform: rotate(45deg);
}

.uu-faq-body2 {
  padding: 0 4px 22px;
}
.uu-faq-body2[hidden] { display: none; }

.uu-faq-a2 {
  font-size: 14px;
  line-height: 1.8;
  color: rgba(255,255,255,.62);
  margin: 0;
  padding-right: 40px;
}

@media (max-width: 780px) {
  .uu-faq-grid { grid-template-columns: 1fr; gap: 0; }
  .uu-faq-card:nth-child(2) { border-top: none; }
}


/* ════════════════════════════════════════════════════════
   REFERENZEN — 3×2 Grid mit Info-Body
════════════════════════════════════════════════════════ */
.uu-ref-sec { padding: 64px 0; }

.uu-ref-hd {
  text-align: center;
  max-width: 580px;
  margin: 0 auto 52px;
}
.uu-ref-intro {
  font-size: 15px;
  color: rgba(10,22,47,.58);
  margin: 12px 0 0;
  line-height: 1.65;
}

.uu-ref-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}

.uu-ref-card {
  border-radius: 14px;
  overflow: hidden;
  background: #fff;
  border: 1px solid rgba(10,22,47,.07);
  box-shadow: 0 2px 12px rgba(10,22,47,.06);
  transition: transform .3s ease, box-shadow .3s ease;
}
.uu-ref-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 36px rgba(10,22,47,.12);
}

.uu-ref-imgwrap {
  position: relative;
  aspect-ratio: 4/3;
  overflow: hidden;
}
.uu-ref-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .45s ease;
}
.uu-ref-card:hover .uu-ref-img { transform: scale(1.05); }

.uu-ref-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, transparent 40%, rgba(10,22,47,.55) 100%);
}

/* Typ-Badge oben links */
.uu-ref-badge {
  position: absolute;
  top: 12px; left: 12px;
  background: rgba(10,22,47,.72);
  backdrop-filter: blur(6px);
  color: rgba(255,255,255,.88);
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: .08em;
  padding: 4px 9px;
  border-radius: 5px;
}

/* Status-Tag oben rechts */
.uu-ref-tag {
  position: absolute;
  top: 12px; right: 12px;
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: .06em;
  padding: 4px 10px;
  border-radius: 5px;
}
.uu-ref-tag--verkauft   { background: rgba(22,163,74,.18); color: #15803d; border: 1px solid rgba(22,163,74,.35); }
.uu-ref-tag--vermittelt { background: rgba(201,168,106,.15); color: #9a7030; border: 1px solid rgba(201,168,106,.35); }
.uu-ref-tag--offmarket  { background: rgba(99,102,241,.15); color: #4338ca; border: 1px solid rgba(99,102,241,.3); }

/* Info-Body unterhalb */
.uu-ref-body {
  padding: 16px 18px 18px;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.uu-ref-typ {
  font-family: var(--serif, 'Cormorant Garamond', Georgia, serif);
  font-size: 17px;
  font-weight: 600;
  color: var(--navy, #0a1628);
  line-height: 1.2;
}
.uu-ref-ort {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 12px;
  font-weight: 600;
  color: var(--gold-d, #9a7030);
  letter-spacing: .03em;
  margin-top: 2px;
}
.uu-ref-detail {
  font-size: 12.5px;
  color: rgba(10,22,47,.48);
  margin-top: 4px;
  line-height: 1.4;
}

.uu-ref-disclaimer {
  font-size: 12px;
  color: rgba(10,22,47,.32);
  text-align: center;
  margin-top: 28px;
  font-style: italic;
}

@media (max-width: 900px) {
  .uu-ref-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 560px) {
  .uu-ref-grid { grid-template-columns: 1fr; }
}

/* ════════════════════════════════════════════════════════
   FAQ v2 — Elegantes Vollbild-Akkordeon
════════════════════════════════════════════════════════ */
.uu-faq-list {
  max-width: 820px;
  margin: 0 auto;
}

.uu-faq-item2 {
  border-bottom: 1px solid rgba(255,255,255,.10);
}
.uu-faq-item2:first-child {
  border-top: 1px solid rgba(255,255,255,.10);
}

.uu-faq-trigger2 {
  width: 100%;
  background: none;
  border: none;
  padding: 26px 0;
  display: flex;
  align-items: center;
  gap: 20px;
  cursor: pointer;
  text-align: left;
  transition: none;
}

.uu-faq-num2 {
  font-family: var(--serif, 'Cormorant Garamond', Georgia, serif);
  font-size: 13px;
  font-weight: 400;
  color: rgba(201,168,106,.50);
  letter-spacing: .06em;
  flex-shrink: 0;
  width: 28px;
  transition: color .2s;
}
.uu-faq-item2.is-open .uu-faq-num2 { color: var(--gold-l, #d4af72); }

.uu-faq-q-text {
  flex: 1;
  font-family: var(--sans, 'Outfit', system-ui, sans-serif);
  font-size: 16px;
  font-weight: 500;
  color: rgba(255,255,255,.85);
  line-height: 1.45;
  transition: color .2s;
}
.uu-faq-trigger2:hover .uu-faq-q-text,
.uu-faq-item2.is-open .uu-faq-q-text {
  color: #fff;
}

.uu-faq-chevron {
  flex-shrink: 0;
  width: 32px; height: 32px;
  border-radius: 50%;
  border: 1px solid rgba(255,255,255,.12);
  display: flex; align-items: center; justify-content: center;
  color: rgba(255,255,255,.38);
  transition: transform .28s cubic-bezier(.16,1,.3,1), background .2s, border-color .2s, color .2s;
}
.uu-faq-trigger2:hover .uu-faq-chevron {
  border-color: rgba(201,168,106,.30);
  color: rgba(201,168,106,.65);
}
.uu-faq-item2.is-open .uu-faq-chevron {
  transform: rotate(180deg);
  background: rgba(201,168,106,.10);
  border-color: rgba(201,168,106,.40);
  color: var(--gold-l, #d4af72);
}

.uu-faq-ans2 {
  padding: 0 0 28px 48px; /* indent = num width + gap */
}
.uu-faq-ans2[hidden] { display: none; }

.uu-faq-ans-text {
  font-family: var(--sans, 'Outfit', system-ui, sans-serif);
  font-size: 15px;
  line-height: 1.85;
  color: rgba(255,255,255,.65);
  margin: 0;
  max-width: 680px;
  border-left: 2px solid rgba(201,168,106,.25);
  padding-left: 20px;
}

@media (max-width: 600px) {
  .uu-faq-trigger2 { gap: 14px; padding: 20px 0; }
  .uu-faq-num2 { display: none; }
  .uu-faq-ans2 { padding-left: 0; }
  .uu-faq-q-text { font-size: 15px; }
}


/* ════════════════════════════════════════════════════════
   REFERENZEN v2 — Premium-Datenkarten (kein Foto)
════════════════════════════════════════════════════════ */
.uu-ref-grid2 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
  margin-bottom: 32px;
}

.uu-ref-card2 {
  background: #fff;
  border-radius: 14px;
  border: 1px solid rgba(10,22,47,.07);
  box-shadow: 0 2px 16px rgba(10,22,47,.06);
  padding: 24px 22px 22px;
  display: flex;
  flex-direction: column;
  gap: 14px;
  transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease;
  position: relative;
  overflow: hidden;
}
.uu-ref-card2::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 3px;
  border-radius: 14px 14px 0 0;
}
.uu-ref-card2--green::before  { background: linear-gradient(90deg, #16a34a, #22c55e); }
.uu-ref-card2--gold::before   { background: linear-gradient(90deg, #9a7030, #C9A86A); }
.uu-ref-card2--indigo::before { background: linear-gradient(90deg, #4338ca, #6366f1); }

.uu-ref-card2:hover {
  transform: translateY(-5px);
  box-shadow: 0 16px 40px rgba(10,22,47,.11);
  border-color: rgba(10,22,47,.12);
}

.uu-ref-card2__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.uu-ref-card2__icon {
  width: 42px; height: 42px;
  border-radius: 10px;
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0;
  background: rgba(10,22,47,.05);
  color: var(--navy, #0a1628);
}

.uu-ref-card2__status {
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: .07em;
  padding: 4px 10px;
  border-radius: 20px;
}
.uu-ref-card2__status--green  { background: rgba(22,163,74,.10); color: #15803d; border: 1px solid rgba(22,163,74,.25); }
.uu-ref-card2__status--gold   { background: rgba(201,168,106,.12); color: #9a7030; border: 1px solid rgba(201,168,106,.30); }
.uu-ref-card2__status--indigo { background: rgba(99,102,241,.10); color: #4338ca; border: 1px solid rgba(99,102,241,.25); }

.uu-ref-card2__body {
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.uu-ref-card2__typ {
  font-family: var(--serif, 'Cormorant Garamond', Georgia, serif);
  font-size: 20px;
  font-weight: 600;
  color: var(--navy, #0a1628);
  line-height: 1.2;
}
.uu-ref-card2__ort {
  display: flex;
  align-items: center;
  gap: 5px;
  font-size: 12px;
  font-weight: 500;
  color: rgba(10,22,47,.48);
  letter-spacing: .02em;
}

.uu-ref-card2__details {
  list-style: none;
  padding: 0; margin: 0;
  border-top: 1px solid rgba(10,22,47,.06);
  padding-top: 14px;
  display: flex;
  flex-direction: column;
  gap: 7px;
}
.uu-ref-card2__details li {
  font-size: 12.5px;
  color: rgba(10,22,47,.55);
  display: flex;
  align-items: center;
  gap: 8px;
  line-height: 1.3;
}
.uu-ref-card2__details li::before {
  content: '';
  width: 4px; height: 4px;
  border-radius: 50%;
  background: rgba(201,168,106,.55);
  flex-shrink: 0;
}

@media (max-width: 900px) {
  .uu-ref-grid2 { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 560px) {
  .uu-ref-grid2 { grid-template-columns: 1fr; gap: 14px; }
}

/* ===== END ge-ueber-uns-page.css ===== */

