/* ============================================================
   GoGlobal DESIGN-LAB — BlackRock-inspiriertes Experiment
   Hell (Weiß/Warmgrau) · Logo-Gold #A98B4B · Schwarz nur als Typo/Footer
   Eckige Kanten (radius 0), Archivo-ExtraBold-Headlines,
   Arial-Body, Eyebrow mit Unterstrich-Balken, Chevron-Links.
   Animationen: motion.dev (Split-Text, Marquee, Wipe, Ticker,
   Scroll-Direction-Header, Draw-Line, Accordion, Parallax)
   ============================================================ */

:root{
  --ink:#000000;
  --ink-2:#141414;
  --slate:#27455C;
  --navy:#111C28;         /* Header-Navy aus dem Logo-Verlauf (#080F17-#1E2B3B) */
  --brand:#A98B4B;          /* Logo-Gold (347 Global Associates) */
  --brand-dark:#8A742C;
  --link:#005EB8;            /* Sekundär-Blau */
  --gold:#8A742C;            /* Gold-Olive-Panels */
  --mint:#F4F1EB;            /* warmes Hellgrau (Paper) */
  --gray:#EFEFEF;
  --body:#2B2B2B;
  --muted:#555555;
  --hairline:#D8D8D8;
  --white:#FFFFFF;
  --radius-card:0px;
  --radius-panel:0px;
  --font-head:'Archivo','Inter',Arial,sans-serif;
  --font-body:Arial,Helvetica,'Inter',sans-serif;
}

*,*::before,*::after{box-sizing:border-box}
body{
  margin:0;
  font-family:var(--font-body);
  font-size:1.02rem;
  line-height:1.6;
  color:var(--body);
  background:var(--white);
  -webkit-font-smoothing:antialiased;
}

img{max-width:100%;height:auto;display:block}
a{color:var(--link)}
a:focus-visible,button:focus-visible,summary:focus-visible,[tabindex]:focus-visible{
  outline:3px solid var(--brand);
  outline-offset:3px;
}

h1,h2,h3,h4{
  font-family:var(--font-head);
  color:var(--ink);
  line-height:1.08;
  margin:0 0 .55em;
}
.gg-h1,h1{font-size:clamp(2.5rem,5.2vw,4rem);line-height:1.02;font-weight:800;letter-spacing:-.015em}
.gg-h2,h2{font-size:clamp(1.8rem,3vw,2.5rem);font-weight:800;letter-spacing:-.01em}
.gg-h3,h3{font-size:1.18rem;font-weight:700}
p{margin:0 0 1em}

/* Solides Signal-Orange statt Gradient */
.gg-accent{color:var(--brand)}

/* Split-Text-Wörter (motion.dev "Split text") */
.gg-word{display:inline-block;will-change:transform}

/* ---------- Layout ---------- */
.gg-container{max-width:1200px;margin:0 auto;padding:0 28px}
.gg-section{padding:104px 0}
.gg-section--mint{background:var(--mint)}
.gg-section--ink{background:var(--gold)}
.gg-section--ink h2,.gg-section--ink h3{color:var(--white)}
.gg-section--ink p{color:rgba(255,255,255,.85)}
.gg-section--tight{padding:56px 0}
@media (max-width:991px){.gg-section{padding:76px 0}}
@media (max-width:767px){.gg-section{padding:56px 0}}

/* ---------- Hero: flächig, linksbündig, schwarz ---------- */
.gg-hero{
  position:relative;overflow:hidden;
  width:100%;margin:0;border-radius:0;
  padding:120px 0 128px;
}
.gg-hero.gg-grad{background:var(--mint)}
.gg-hero.gg-grad h1{color:var(--ink)}
.gg-hero.gg-grad .gg-lede{color:var(--muted)}
.gg-hero--center{text-align:left}
.gg-hero--center .gg-lede{margin-left:0;margin-right:0}
.gg-hero--center .gg-chips{justify-content:flex-start}
.gg-hero--center .gg-hero-actions{justify-content:flex-start}
@media (max-width:991px){.gg-hero{padding:88px 0}}
@media (max-width:767px){.gg-hero{padding:64px 0}}

/* ---------- Scroll-Progress (Gold) ---------- */
.gg-progressbar{
  position:fixed;top:0;left:0;right:0;height:4px;z-index:120;
  background:var(--brand);
  transform:scaleX(0);transform-origin:0 50%;
  pointer-events:none;
}

/* ---------- Eyebrow: Uppercase + Unterstrich-Balken ---------- */
.gg-eyebrow{
  display:block;padding:0;border:none;background:none;
  font-family:var(--font-head);font-weight:800;
  font-size:.82rem;letter-spacing:.1em;text-transform:uppercase;
  color:var(--ink);margin-bottom:22px;
}
.gg-eyebrow::before{content:none}
.gg-eyebrow::after{
  content:"";display:block;width:44px;height:4px;
  background:var(--ink);margin-top:8px;
}
.gg-section--ink .gg-eyebrow,
.gg-panel-ink .gg-eyebrow,.gg-eyebrow--light{color:var(--white)}
.gg-hero.gg-grad .gg-eyebrow::after,.gg-section--ink .gg-eyebrow::after,
.gg-panel-ink .gg-eyebrow::after,.gg-eyebrow--light::after{background:var(--brand)}
.gg-center .gg-eyebrow::after{margin-left:auto;margin-right:auto}

.gg-lede{font-size:clamp(1.08rem,1.5vw,1.25rem);line-height:1.55;color:var(--muted);max-width:44em}

/* ---------- Buttons: eckig, schwarz, Hover Gold ---------- */
.gg-btn-primary,.gg-btn-ghost{
  display:inline-block;
  font-family:var(--font-head);font-weight:700;font-size:.98rem;
  padding:15px 34px;border-radius:0;text-decoration:none;
  transition:background .2s ease,color .2s ease,border-color .2s ease;
  border:2px solid var(--ink);
  cursor:pointer;will-change:transform;
}
.gg-btn-primary{background:var(--brand);border-color:var(--brand);color:var(--white)}
.gg-btn-primary:hover{background:var(--brand-dark);border-color:var(--brand-dark);color:var(--white)}
.gg-btn-ghost{background:transparent;color:var(--ink)}
.gg-btn-ghost:hover{background:var(--ink);color:var(--white)}
.gg-btn-ghost--light{border-color:var(--white);color:var(--white)}
.gg-btn-ghost--light:hover{background:var(--white);color:var(--ink)}

/* Chevron-Link im BlackRock-Stil: › VOR dem Text */
.gg-textlink{
  display:inline-flex;align-items:center;gap:8px;
  font-family:var(--font-head);font-weight:700;
  color:var(--ink);text-decoration:none;border-bottom:none;
}
.gg-textlink::before{
  content:"›";color:var(--brand);font-weight:800;font-size:1.25em;line-height:1;
  transition:transform .25s cubic-bezier(.34,1.56,.64,1);
}
.gg-textlink::after{content:none}
.gg-textlink:hover{color:var(--brand);text-decoration:none}
.gg-textlink:hover::before{transform:translateX(3px)}

/* ---------- Cards: eckig, Hairline, Hover schwarz ---------- */
.gg-card{
  background:var(--white);
  border:1px solid var(--hairline);
  border-radius:0;
  padding:34px;
  transition:transform .4s cubic-bezier(.34,1.3,.64,1),border-color .25s ease,box-shadow .4s ease;
}
.gg-grid-2 .gg-card:hover,.gg-grid-3 .gg-card:hover,.gg-grid-4 .gg-card:hover{
  transform:translateY(-5px);
  border-color:var(--ink);
  box-shadow:0 18px 40px rgba(0,0,0,.10);
}
.gg-card--mint{background:var(--mint);border-color:transparent}
.gg-card--gold,.gg-card--dark{border:none}
.gg-card--gold{background:var(--gold)}
.gg-card--gold h3{color:var(--white)}
.gg-card--gold p{color:rgba(255,255,255,.85) !important}
.gg-card--gold .gg-card-kicker{color:rgba(255,255,255,.75)}
.gg-card--dark{background:var(--mint)}
.gg-card--dark h3{color:var(--ink)}
.gg-card--dark p{color:var(--muted) !important}
.gg-card--dark .gg-card-kicker{color:var(--brand-dark)}
.gg-card h3{margin-top:0}
.gg-card-kicker{
  font-family:var(--font-head);font-weight:800;font-size:.74rem;
  letter-spacing:.1em;text-transform:uppercase;color:var(--brand);
  margin:0 0 10px;
}
.gg-panel-ink{
  background:var(--gold);color:var(--white);
  border-radius:0;
  padding:76px 48px;position:relative;overflow:hidden;
}
.gg-panel-ink h2{color:var(--white)}
.gg-panel-ink p{color:rgba(255,255,255,.85)}
.gg-panel-ink .gg-dotgrid{
  position:absolute;inset:0;pointer-events:none;opacity:.22;
  background-image:radial-gradient(rgba(255,255,255,.5) 1.5px,transparent 1.5px);
  background-size:26px 26px;
}
.gg-badge{
  background:var(--white);
  border:1px solid var(--hairline);
  border-radius:0;
  padding:18px 24px;
  box-shadow:0 18px 40px rgba(0,0,0,.18);
}

/* ---------- Grids ---------- */
.gg-grid-2,.gg-grid-3,.gg-grid-4{display:grid;gap:26px}
.gg-grid-2{grid-template-columns:repeat(2,1fr)}
.gg-grid-3{grid-template-columns:repeat(3,1fr)}
.gg-grid-4{grid-template-columns:repeat(4,1fr)}
@media (max-width:991px){
  .gg-grid-3,.gg-grid-4{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:767px){
  .gg-grid-2,.gg-grid-3,.gg-grid-4{grid-template-columns:1fr}
  .gg-panel-ink{padding:48px 26px}
}

/* ---------- Route-Line: solide Linie, Draw-on-Scroll ---------- */
.gg-routeline{
  display:flex;align-items:center;gap:0;
  max-width:1200px;margin:0 auto;padding:0 28px;
}
.gg-routeline::before,.gg-routeline::after{
  content:"";width:10px;height:10px;border-radius:0;
  background:var(--brand);flex:none;
}
.gg-routeline span{
  flex:1;height:2px;background:var(--ink);border-top:none;
  transform-origin:0 50%;
}
html.gg-js .gg-routeline[data-anim="draw"] span{transform:scaleX(0)}

/* ---------- Marquee (motion.dev Ticker) ---------- */
.gg-marquee{
  overflow:hidden;border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline);
  padding:26px 0;background:var(--white);
}
.gg-marquee-track{display:flex;align-items:center;gap:0;white-space:nowrap;width:max-content}
.gg-marquee-item{
  font-family:var(--font-head);font-weight:800;
  font-size:clamp(1.4rem,2.6vw,2.2rem);letter-spacing:-.01em;
  color:var(--ink);text-transform:uppercase;
  display:inline-flex;align-items:center;
}
.gg-marquee-item::after{content:"›";color:var(--brand);margin:0 40px;font-weight:800}

/* ---------- Stats: Orange Kante ---------- */
.gg-stat{text-align:left;border-left:4px solid var(--brand);padding-left:20px}
.gg-stat .gg-stat-num{
  font-family:var(--font-head);font-weight:800;letter-spacing:-.02em;
  font-size:clamp(2.1rem,3.6vw,3.2rem);color:var(--ink);line-height:1.05;
  font-variant-numeric:tabular-nums;
}
.gg-section--ink .gg-stat .gg-stat-num{color:var(--white)}
.gg-stat .gg-stat-label{color:var(--muted);font-size:.95rem;margin-top:8px}
.gg-section--ink .gg-stat .gg-stat-label{color:rgba(255,255,255,.72)}

/* ---------- Tabellen ---------- */
.gg-table-wrap{overflow-x:auto;border:1px solid var(--hairline);border-radius:0;background:var(--white)}
.gg-table{width:100%;border-collapse:collapse;font-size:.98rem;background:var(--white)}
.gg-table th{
  background:var(--mint);color:var(--ink);border-bottom:2px solid var(--ink);
  font-family:var(--font-head);font-weight:700;font-size:.9rem;
  text-align:left;padding:14px 18px;
}
.gg-table td{padding:13px 18px;border-top:1px solid var(--hairline);vertical-align:top}
.gg-table tr.gg-row-hl td{background:#F6F0DF;font-weight:700}
.gg-table td:first-child{font-weight:700;color:var(--ink)}

/* ---------- Steps: Orange Quadrat-Nummern ---------- */
.gg-steps{display:grid;gap:0;counter-reset:ggstep;max-width:760px}
.gg-step{
  position:relative;padding:0 0 34px 66px;counter-increment:ggstep;
}
.gg-step::before{
  content:counter(ggstep);
  position:absolute;left:0;top:0;
  width:42px;height:42px;border-radius:0;
  background:var(--brand);color:var(--white);
  font-family:var(--font-head);font-weight:800;font-size:1.05rem;
  display:flex;align-items:center;justify-content:center;
}
.gg-step:not(:last-child)::after{
  content:"";position:absolute;left:20px;top:48px;bottom:6px;
  border-left:2px solid var(--hairline);
}
.gg-step h3{margin:6px 0 6px;font-size:1.1rem}
.gg-step p{margin:0;color:var(--muted);font-size:.98rem}

/* ---------- Chips / Tags: eckig ---------- */
.gg-chips{display:flex;flex-wrap:wrap;gap:10px}
.gg-chip{
  display:inline-block;padding:7px 14px;border-radius:0;
  background:var(--gray);border:none;
  font-size:.85rem;font-weight:700;color:var(--ink);
}
.gg-chip--brand{background:#F1E9D4;color:var(--brand-dark)}

/* ---------- Flip-Cards ---------- */
.gg-flip{perspective:1000px;cursor:pointer;min-height:190px}
.gg-flip-inner{
  position:relative;width:100%;height:100%;min-height:190px;
  transition:transform .55s cubic-bezier(.34,1.2,.64,1);transform-style:preserve-3d;
}
.gg-flip.is-flipped .gg-flip-inner{transform:rotateY(180deg)}
.gg-flip-front,.gg-flip-back{
  backface-visibility:hidden;-webkit-backface-visibility:hidden;
  position:absolute;inset:0;
  border-radius:0;
  padding:26px;display:flex;flex-direction:column;justify-content:center;
}
.gg-flip-front{background:var(--white);border:1px solid var(--hairline)}
.gg-flip-back{background:var(--gold);color:var(--white);transform:rotateY(180deg)}
.gg-flip-front .gg-flip-q{font-family:var(--font-head);font-weight:700;color:var(--ink);font-size:1.05rem}
.gg-flip-front .gg-flip-hint{margin-top:14px;font-size:.8rem;color:var(--brand);font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.gg-flip-back p{margin:0;color:var(--white);font-size:.98rem}
@media (prefers-reduced-motion:reduce){.gg-flip-inner{transition:none}}

/* ---------- Audio ---------- */
.gg-audio{background:var(--mint);border-radius:0;padding:26px}
.gg-audio figcaption{font-size:.9rem;color:var(--muted);margin-bottom:12px}
.gg-audio audio{width:100%}

/* ---------- FAQ: Listen-Stil mit schwarzen Trennern ---------- */
.gg-faq{max-width:860px}
.gg-faq details{
  border:none;border-top:1px solid var(--hairline);border-radius:0;
  margin-bottom:0;background:transparent;
}
.gg-faq details:last-child{border-bottom:1px solid var(--hairline)}
.gg-faq summary{
  list-style:none;cursor:pointer;
  padding:22px 54px 22px 0;position:relative;
  font-family:var(--font-head);font-weight:700;color:var(--ink);font-size:1.05rem;
}
.gg-faq summary::-webkit-details-marker{display:none}
.gg-faq summary::after{
  content:"+";position:absolute;right:6px;top:50%;
  transform:translateY(-50%);
  font-size:1.7rem;font-weight:400;color:var(--brand);line-height:1;
  transition:transform .3s cubic-bezier(.34,1.56,.64,1);
}
.gg-faq details[open] summary::after{transform:translateY(-50%) rotate(45deg)}
.gg-faq details p{padding:0 0 22px;margin:0;color:var(--muted)}

/* ---------- Navbar: solide, weiß, Hide-on-Scroll ---------- */
.gg-nav{
  position:sticky;top:0;z-index:60;
  background:linear-gradient(180deg,#1E2B3B 0%,#0E1822 100%);
  -webkit-backdrop-filter:none;backdrop-filter:none;
  border-bottom:1px solid rgba(255,255,255,.12);
  transition:transform .38s cubic-bezier(.32,.72,0,1);
}
.gg-nav.is-hidden{transform:translateY(-100%)}
.gg-nav-inner{
  max-width:1200px;margin:0 auto;padding:0 28px;
  display:flex;align-items:center;justify-content:space-between;
  min-height:62px;gap:24px;
}
.gg-logo{display:inline-flex;align-items:center;
  font-family:var(--font-head);font-weight:800;font-size:1.2rem;
  color:var(--ink);text-decoration:none;letter-spacing:-.01em;
}
.gg-logo span{color:var(--brand)}
.gg-nav .gg-logo{color:var(--white)}
.gg-nav-links{display:flex;align-items:center;gap:28px;list-style:none;margin:0;padding:0}
.gg-nav-links a{
  color:rgba(255,255,255,.88);text-decoration:none;font-weight:700;font-size:.92rem;
  font-family:var(--font-head);opacity:1;
  padding:4px 0;border-bottom:3px solid transparent;
}
.gg-nav-links a:hover{color:var(--brand-light, #D6C79C);color:#D6C79C}
.gg-nav-links a[aria-current="page"]{color:var(--white);border-bottom-color:var(--brand)}
.gg-nav-cta{margin-left:6px}
.gg-nav-cta .gg-btn-primary{padding:9px 20px;font-size:.86rem}
/* Spezifitäts-Fix: .gg-nav-links a würde die Button-Textfarbe überschreiben */
.gg-nav-links a.gg-btn-primary{color:var(--white);border-bottom:2px solid var(--brand)}
.gg-nav-links a.gg-btn-primary:hover{color:var(--white);border-color:var(--brand-dark)}
.gg-nav-toggle{
  display:none;background:none;border:0;cursor:pointer;padding:10px;
}
.gg-nav-toggle span{
  display:block;width:24px;height:3px;background:var(--white);margin:5px 0;
  transition:transform .25s,opacity .25s;
}
@media (max-width:991px){
  .gg-nav-toggle{display:block}
  .gg-nav-links{
    display:none;position:absolute;top:100%;left:0;right:0;
    flex-direction:column;align-items:flex-start;gap:0;
    background:linear-gradient(180deg,#1E2B3B 0%,#0E1822 100%);
    border-bottom:1px solid rgba(255,255,255,.12);
    padding:12px 28px 20px;
  }
  .gg-nav-links.is-open{display:flex}
  .gg-nav-links li{width:100%}
  .gg-nav-links a{display:block;padding:12px 0;font-size:1.05rem;border-bottom:none}
  .gg-nav-cta{margin:10px 0 0}
  .gg-nav.menu-open .gg-nav-toggle span:nth-child(1){transform:translateY(8px) rotate(45deg)}
  .gg-nav.menu-open .gg-nav-toggle span:nth-child(2){opacity:0}
  .gg-nav.menu-open .gg-nav-toggle span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}
}

/* ---------- Footer ---------- */
.gg-footer{background:var(--ink);color:rgba(255,255,255,.82);padding:72px 0 32px}
.gg-footer a{color:rgba(255,255,255,.82);text-decoration:none}
.gg-footer a:hover{color:var(--brand)}
.gg-footer .gg-logo{color:var(--white)}
.gg-footer .gg-logo span{color:var(--brand)}
.gg-footer-grid{
  display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;margin-bottom:48px;
}
.gg-footer-col h4{
  color:var(--white);font-size:.8rem;letter-spacing:.1em;
  text-transform:uppercase;margin-bottom:16px;font-weight:800;
}
.gg-footer-col ul{list-style:none;margin:0;padding:0}
.gg-footer-col li{margin-bottom:10px;font-size:.95rem}
.gg-footer-tag{margin-top:14px;font-size:.95rem;max-width:30em}
.gg-footer-addr{font-style:normal;font-size:.9rem;line-height:1.7;margin-top:18px;color:rgba(255,255,255,.6)}
.gg-footer-bottom{
  border-top:1px solid rgba(255,255,255,.16);
  padding-top:24px;font-size:.85rem;color:rgba(255,255,255,.55);
  display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;
}
@media (max-width:991px){.gg-footer-grid{grid-template-columns:1fr 1fr}}
@media (max-width:767px){.gg-footer-grid{grid-template-columns:1fr}}

/* ---------- Hero-Inhalt ---------- */
.gg-hero-2col{
  display:grid;grid-template-columns:55fr 45fr;gap:56px;align-items:center;
  text-align:left;
}
@media (max-width:991px){.gg-hero-2col{grid-template-columns:1fr;gap:40px}}
.gg-hero-actions{display:flex;flex-wrap:wrap;gap:16px;margin-top:30px;align-items:center}
.gg-hero-cover{position:relative}
.gg-hero-cover img{border-radius:0;box-shadow:0 30px 70px rgba(0,0,0,.35)}
.gg-hero-cover .gg-badge{position:absolute;right:-14px;bottom:-20px;max-width:250px}
@media (max-width:767px){.gg-hero-cover .gg-badge{position:static;margin-top:18px;max-width:none}}

/* ---------- Versteckte Ausgangszustände für Animationen ---------- */
html.gg-js [data-anim="curtain"] .u-reveal,
html.gg-js [data-anim="fade-up"],
html.gg-js [data-anim="stagger"] .u-item,
html.gg-js [data-anim="cardstack"] .gg-stack-card{opacity:0}
html.gg-js [data-anim="wipe"]{clip-path:inset(0 100% 0 0)}
.gg-curtain{display:none}
@media (prefers-reduced-motion:reduce){
  html.gg-js [data-anim="curtain"] .u-reveal,
  html.gg-js [data-anim="fade-up"],
  html.gg-js [data-anim="stagger"] .u-item,
  html.gg-js [data-anim="cardstack"] .gg-stack-card{opacity:1}
  html.gg-js [data-anim="wipe"]{clip-path:none}
  html.gg-js .gg-routeline[data-anim="draw"] span{transform:none}
}

/* ---------- Episoden-Cards ---------- */
.gg-episode{
  display:flex;flex-direction:column;
  background:var(--white);border:1px solid var(--hairline);
  border-radius:0;overflow:hidden;
  transition:transform .4s cubic-bezier(.34,1.3,.64,1),border-color .25s,box-shadow .4s ease;
  text-decoration:none;color:inherit;
}
.gg-episode:hover{transform:translateY(-5px);border-color:var(--ink);box-shadow:0 18px 40px rgba(0,0,0,.12)}
.gg-episode-cover{aspect-ratio:16/9;object-fit:cover;width:100%}
.gg-episode-body{padding:24px;display:flex;flex-direction:column;gap:8px}
.gg-episode-meta{
  font-family:var(--font-head);font-weight:800;font-size:.76rem;
  letter-spacing:.1em;text-transform:uppercase;color:var(--brand);
}
.gg-episode h3{margin:0;font-size:1.08rem}
.gg-episode p{
  margin:0;color:var(--muted);font-size:.94rem;
  display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;
}

/* ---------- Platform-Bar ---------- */
.gg-platforms{
  border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline);
  padding:22px 0;text-align:center;
  font-size:.95rem;color:var(--muted);
}
.gg-platforms strong{color:var(--ink);font-weight:700}

/* ---------- Case Study ---------- */
.gg-case{display:flex;flex-direction:column;gap:10px}
.gg-case .gg-case-kpi{
  font-family:var(--font-head);font-weight:800;font-size:1.5rem;color:var(--brand);
}
.gg-case-tags{display:flex;gap:8px;flex-wrap:wrap}

/* ---------- Associate ---------- */
.gg-assoc-avatar{
  width:84px;height:84px;border-radius:0;
  background:var(--gold);color:var(--white);
  font-family:var(--font-head);font-weight:800;font-size:1.5rem;
  display:flex;align-items:center;justify-content:center;
  margin-bottom:18px;
}
.gg-assoc-avatar--lg{width:180px;height:180px;font-size:3rem;margin:0}
.gg-assoc-meta{
  font-family:var(--font-head);font-weight:800;font-size:.76rem;
  letter-spacing:.1em;text-transform:uppercase;color:var(--brand);
}

/* ---------- Quellen / Prose ---------- */
.gg-prose{max-width:780px}
.gg-prose ul,.gg-prose ol{padding-left:22px}
.gg-prose li{margin-bottom:8px}
.gg-note{font-size:.92rem;color:var(--muted)}
.gg-sources li{margin-bottom:8px;font-size:.95rem}
.gg-disclaimer{
  border-left:4px solid var(--brand);padding-left:20px;
  font-size:.9rem;color:var(--muted);max-width:760px;
}

/* ---------- Kontakt ---------- */
.gg-form{display:grid;gap:18px;max-width:640px}
.gg-form label{font-weight:700;color:var(--ink);font-size:.95rem;display:block;margin-bottom:6px}
.gg-form input,.gg-form textarea,.gg-form select{
  width:100%;padding:13px 16px;border:1px solid var(--ink);
  border-radius:0;font-family:var(--font-body);font-size:1rem;color:var(--body);
  background:var(--white);
}
.gg-form input:focus,.gg-form textarea:focus,.gg-form select:focus{
  outline:3px solid rgba(169,139,75,.45);border-color:var(--brand);
}

/* ---------- Utility ---------- */
.gg-center{text-align:center}
.gg-center .gg-lede{margin-left:auto;margin-right:auto}
.gg-mt-0{margin-top:0}.gg-mt-24{margin-top:24px}.gg-mt-40{margin-top:40px}.gg-mt-56{margin-top:56px}
.gg-mb-24{margin-bottom:24px}.gg-mb-40{margin-bottom:40px}
.gg-maxw{max-width:820px}
.gg-split{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-bottom:44px}
.gg-split>div{max-width:640px}

/* Logo-Bildmarke */
.gg-logo-mark{height:36px;width:auto;display:block;margin-right:10px}

/* Associate-Portraits */
.gg-assoc-photo{width:84px;height:84px;object-fit:cover;border-radius:0;display:block;margin-bottom:18px}
.gg-assoc-photo.gg-assoc-avatar--lg{width:220px;height:220px;margin:0}

/* Footer: rechtliche Hinweise */
.gg-footer-legal{
  border-top:1px solid rgba(255,255,255,.14);
  padding-top:24px;margin-bottom:24px;
  font-size:.82rem;line-height:1.6;color:rgba(255,255,255,.55);
}
.gg-footer-legal p{margin:0 0 10px}
.gg-footer-legal strong{color:rgba(255,255,255,.75)}

/* HubSpot-Formular im Site-Design */
.gg-hsform .hs-form-frame{width:100%}
.gg-hsform iframe{width:100% !important}
/* Styling greift, wenn das Formular inline (Raw-HTML-Modus) gerendert wird */
.hs-form{font-family:var(--font-body)}
.hs-form .hs-form-field{margin-bottom:18px}
.hs-form label{font-weight:600;color:var(--ink);font-size:.95rem;display:block;margin-bottom:6px}
.hs-form input[type=text],.hs-form input[type=email],.hs-form input[type=tel],
.hs-form input[type=number],.hs-form textarea,.hs-form select{
  width:100%;padding:13px 16px;border:1px solid var(--ink);
  border-radius:0;font-family:var(--font-body);font-size:1rem;
  color:var(--body);background:var(--white);
}
.hs-form input:focus,.hs-form textarea:focus,.hs-form select:focus{
  outline:3px solid rgba(169,139,75,.45);border-color:var(--brand);
}
.hs-form .hs-button{
  display:inline-block;font-family:var(--font-head);font-weight:700;
  font-size:.98rem;padding:15px 34px;border-radius:0;
  border:2px solid var(--brand);background:var(--brand);color:var(--white);
  cursor:pointer;transition:background .2s ease,border-color .2s ease;
}
.hs-form .hs-button:hover{background:var(--brand-dark);border-color:var(--brand-dark)}
.hs-form .hs-error-msg,.hs-form .hs-error-msgs label{color:#C0392B;font-size:.85rem;font-weight:500}
.hs-form .legal-consent-container,.hs-form .legal-consent-container p{
  font-size:.82rem;color:var(--muted);line-height:1.5;
}
.hs-form .submitted-message{color:var(--ink);font-weight:600}
.gg-lang{display:flex;align-items:center;gap:8px;margin-left:10px}
.gg-lang a{display:flex;padding:2px;border-radius:4px;border:1.5px solid transparent;opacity:.45;transition:opacity .2s}
.gg-lang a:hover{opacity:.85}
.gg-lang a.is-active{opacity:1;border-color:var(--brand)}
.gg-flag{width:22px;height:14px;border-radius:2px;display:block}
@media (max-width:991px){.gg-lang{margin:12px 0 0}}
