/* GA! Strapline — two-line typewriter (desktop), fade on phones */
.ga-strapline{
  max-width: 1100px;
  margin: 0 auto 8px;
  text-align: center;
  font-family: "Libre Baskerville", Georgia, serif;
  font-size: clamp(1rem, 1.2vw + .6rem, 1.2rem);
  line-height: 1.55;
  color: #fff;
}

.ga-strapline.ga-type2 { --caret:#E3BF7E; }

.ga-strapline.ga-type2 .t{
  display:inline-block;
  overflow:hidden;
  white-space:nowrap;
  border-right:.12em solid var(--caret);
}
.ga-strapline.ga-type2 .t1{
  width:0ch; --chars: 132; --dur: 4.2s; --delay: 0s;
  animation:
    typing var(--dur) steps(var(--chars)) var(--delay) both,
    caret .9s steps(1) infinite;
}
.ga-strapline.ga-type2 .t2{
  width:0ch; --chars: 162; --dur: 5.2s; --delay: 4.2s;
  animation:
    typing var(--dur) steps(var(--chars)) var(--delay) both,
    caret .9s steps(1) infinite;
}

@keyframes caret { 50% { border-color: transparent; } }
@keyframes typing { to { width: calc(var(--chars) * 1ch); } }

/* Phones: wrap + fade-in */
@media (max-width: 680px){
  .ga-strapline.ga-type2 .t{ white-space: normal; border-right:0; }
  .ga-strapline.ga-type2 .t1, .ga-strapline.ga-type2 .t2{
    width:auto; animation: fadein .6s ease both; animation-delay: 0s;
  }
  @keyframes fadein { from { opacity:0; transform: translateY(4px); } to { opacity:1; transform:none; } }
}
/* ================= GA! ANBI — CONSOLIDATED CSS (readable version) ================= */

/* Vars */
.wp-site-blocks .ga-anbi,
.ga-anbi{
  --ink:#141414; --muted:#6b5f57; --line:#CCBAA9; --gold:#B29250; --gold2:#E3BF7E;
}

/* ===== Layout & Right Panel Card ===== */
.ga-anbi .wp-block-columns.alignwide.are-vertically-aligned-center{ align-items:center; }
.ga-anbi .wp-block-column.is-vertically-aligned-center:nth-child(2){
  background: linear-gradient(180deg, #fff, #fffdf9);
  border:1px solid var(--line);
  border-radius:14px;
  box-shadow:0 10px 28px rgba(2,6,23,.06);
  padding:1rem 1.2rem;
}
@media (max-width:900px){
  .ga-anbi .wp-block-column.is-vertically-aligned-center:nth-child(2){ margin-top:.6rem; }
}

/* ===== Cards (leesbaar; geen clamps) ===== */
.ga-anbi .ga-cards{
  display:grid; grid-template-columns: repeat(3, minmax(0,1fr));
  gap:.8rem; margin:.8rem 0 .2rem; align-items:stretch;
}
@media (max-width:900px){ .ga-anbi .ga-cards{ grid-template-columns: 1fr; } }

.ga-anbi .ga-card{
  display:flex; flex-direction:column; gap:.35rem;
  min-height:140px; /* zachte minimum, maar content mag groeien */
  border:1px solid var(--line); border-radius:12px;
  background:#fff; box-shadow:0 6px 18px rgba(2,6,23,.06);
  padding:.8rem .9rem;
  transition: transform .2s ease, box-shadow .2s ease, background .2s ease, border-color .2s ease;
}
.ga-anbi .ga-card:hover{
  transform: translateY(-2px);
  box-shadow:0 12px 28px rgba(2,6,23,.12);
  background:#fffef6; border-color:#d9c7b6;
}
.ga-anbi .ga-card-h{
  font-weight:800; color:var(--gold); margin:0 0 .15rem; position:relative;
  /* géén line-clamp, geen overflow hidden → volledige titel zichtbaar */
}
.ga-anbi .ga-card-h::after{
  content:""; position:absolute; left:0; bottom:-6px; width:28px; height:2px;
  background: linear-gradient(90deg, var(--gold), var(--gold2)); border-radius:2px;
}
/* bodyteksten ook zonder clamp */
.ga-anbi .ga-card p{ overflow:visible; display:block; }

/* ===== Title (center + luxe gradient + subtle shine) ===== */
.ga-anbi .ga-title{
  display:block !important;
  width:max-content !important;
  margin:0 auto .8rem !important;        /* forceer midden */
  text-align:center !important;
  font-family:"Playfair Display SC", serif;
  letter-spacing:.02em;
  background: linear-gradient(90deg, #B29250, #E3BF7E, #B29250);
  -webkit-background-clip:text; background-clip:text; color:transparent;
  text-shadow:0 1px 0 rgba(0,0,0,.06); position:relative;
  float:none !important; clear:both !important;
}
.ga-anbi .ga-title::after{
  content:""; display:block; width:78px; height:3px;
  background: linear-gradient(90deg, #B29250, #E3BF7E);
  border-radius:3px; margin:.4rem auto 0;
}
@media (prefers-reduced-motion: no-preference){
  .ga-anbi .ga-title{ background-size:200% 100%; animation: gaTitleShine 6s linear infinite; }
  @keyframes gaTitleShine{ 0%{background-position:0 0;} 100%{background-position:200% 0;} }
}

/* ===== Lede (intro paragraph) ===== */
.ga-anbi .ga-lede{
  text-align:center; margin:.7rem auto 1.1rem; max-width:58ch;
  padding:.95rem 1.1rem;
  background: linear-gradient(180deg,#ffffff,#fffdf9);
  border:1px solid var(--line); border-radius:12px;
  box-shadow:0 6px 18px rgba(2,6,23,.06);
  font-size:1.04rem; line-height:1.65; color:var(--ink);
}

/* ===== Buttons Row ===== */
.wp-site-blocks .ga-anbi .ga-cta,
.wp-site-blocks .ga-anbi .wp-block-buttons{
  display:flex; gap:12px; flex-wrap:nowrap; overflow-x:auto; padding-top:6px;
  -webkit-overflow-scrolling:touch;
}
.wp-site-blocks .ga-anbi .ga-cta .wp-block-button,
.wp-site-blocks .ga-anbi .wp-block-buttons .wp-block-button{
  flex:0 0 auto; background:transparent !important; box-shadow:none !important;
}

/* Base button: gold for all */
.wp-site-blocks .ga-anbi .wp-block-button__link{
  display:inline-flex; align-items:center; justify-content:center;
  appearance:none; border-radius:999px; padding:.62rem 1rem;
  font-weight:800; font-size:.95rem; line-height:1;
  color:#fff; border:2px solid var(--gold);
  background: linear-gradient(180deg, var(--gold), #b18a42);
  background-clip: padding-box; -webkit-background-clip: padding-box;
  box-shadow:none; transform:translateZ(0);
  transition: filter .12s ease, transform .12s ease, background-position .3s ease;
}

/* Non-Donate: subtiele micro-wiggle op interactie */
.wp-site-blocks .ga-anbi .wp-block-button__link:not([href^="https://gathinktank.com/donation"]):hover,
.wp-site-blocks .ga-anbi .wp-block-button__link:not([href^="https://gathinktank.com/donation"]):focus,
.wp-site-blocks .ga-anbi .wp-block-button__link:not([href^="https://gathinktank.com/donation"]):active{
  filter:brightness(1.07);
  animation: gaWiggle3 .5s ease-out both;
}
@keyframes gaWiggle3{
  0%{transform:translateY(0) rotate(0) scale(1);}
  20%{transform:translateY(-1.5px) rotate(-3.5deg) scale(1.01);}
  50%{transform:translateY(0) rotate(3.5deg) scale(1.005);}
  80%{transform:translateY(-1px) rotate(-2deg) scale(1.01);}
  100%{transform:translateY(0) rotate(0) scale(1);}
}

/* Donate only: sheen + 3 hops every 3s */
.wp-site-blocks .ga-anbi .wp-block-button__link[href="https://gathinktank.com/donation/"],
.wp-site-blocks .ga-anbi .wp-block-button__link[href^="https://gathinktank.com/donation"]{
  background-image:
    linear-gradient(180deg, var(--gold), #b18a42),
    linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.65) 50%, rgba(255,255,255,0) 100%);
  background-size:100% 100%, 240% 100%;
  background-position:0 0, -200% 0;
  animation: gaShine 3s linear infinite, gaHop3 3s ease-in-out infinite;
}
@keyframes gaShine{ to{ background-position:0 0, 200% 0; } }
@keyframes gaHop3{
  0%,58%{ transform:translateY(0); }
  64%{ transform:translateY(-4px) scale(1.012); }  /* hop 1 */
  70%{ transform:translateY(0); }
  78%{ transform:translateY(-4px) scale(1.012); }  /* hop 2 */
  84%{ transform:translateY(0); }
  92%{ transform:translateY(-4px) scale(1.012); }  /* hop 3 */
  98%,100%{ transform:translateY(0); }
}

/* ===== Accessibility / Motion ===== */
.wp-site-blocks .ga-anbi .wp-block-button__link:focus-visible{
  outline:2px solid var(--gold2); outline-offset:2px;
}
@media (prefers-reduced-motion: reduce){
  .wp-site-blocks .ga-anbi .wp-block-button__link{ transition:none; }
  .wp-site-blocks .ga-anbi .wp-block-button__link[href^="https://gathinktank.com/donation"]{ animation:none; }
  .wp-site-blocks .ga-anbi .wp-block-button__link:not([href^="https://gathinktank.com/donation"]):hover{ animation:none; }
}
/* === GA! ANBI — Companies callout (matcht bestaande stijl) === */
.ga-anbi.ga-companies .ga-card--feature{
  padding:1.05rem 1.1rem;
  border-left:4px solid var(--gold);
  background:linear-gradient(180deg,#ffffff,#fffdf9);
}

.ga-anbi.ga-companies .ga-feature-head{
  display:flex; align-items:center; gap:.6rem; margin-bottom:.25rem;
}

.ga-anbi.ga-companies .ga-ico{
  width:42px; height:42px; border-radius:999px;
  display:inline-grid; place-items:center;
  background: #fff;
  border:2px solid var(--gold);
  box-shadow:0 6px 16px rgba(2,6,23,.08);
  transition: transform .2s ease, box-shadow .2s ease;
}
.ga-anbi.ga-companies .ga-ico svg{ width:20px; height:20px; fill:var(--gold); }

.ga-anbi.ga-companies .ga-card--feature:hover .ga-ico{
  transform: translateY(-2px);
  box-shadow:0 10px 22px rgba(2,6,23,.12);
}

/* Zorg dat de lijst mooi aansluit bij GA!-typografie */
.ga-anbi.ga-companies .wp-block-list{
  margin:.2rem 0 0 .2rem;
  padding-left:1rem;
  color:var(--ink);
}
.ga-anbi.ga-companies .wp-block-list li{
  line-height:1.6;
}
/* ===== GA! Docs (cards) — same GA! palette ===== */
.ga-docs{ --ink:#141414; --muted:#6b5f57; --line:#CCBAA9; --gold:#B29250; --gold2:#E3BF7E; }

.ga-docs-title{
  margin:0 0 .6rem; font-family:"Playfair Display SC", serif; letter-spacing:.02em;
  background:linear-gradient(90deg,#B29250,#E3BF7E,#B29250);
  -webkit-background-clip:text; background-clip:text; color:transparent;
}

/* Grid: 2 kolommen desktop, 1 kolom mobiel */
.ga-docs .ga-docs-grid{
  display:grid; gap:1rem;
  grid-template-columns: repeat(2, minmax(0,1fr));
}
@media (max-width:900px){ .ga-docs .ga-docs-grid{ grid-template-columns:1fr; } }

/* Card */
.ga-docs .ga-doc-card{
  border:1px solid var(--line);
  border-radius:14px; background:#fff;
  box-shadow:0 8px 22px rgba(2,6,23,.06);
  padding:1rem 1.1rem;
  transition: box-shadow .2s ease, transform .2s ease, border-color .2s ease;
}
.ga-docs .ga-doc-card:hover{
  transform: translateY(-2px);
  box-shadow:0 14px 30px rgba(2,6,23,.12);
  border-color:#d9c7b6;
}

/* Head */
.ga-docs .ga-doc-head{ display:flex; align-items:center; gap:.75rem; margin-bottom:.5rem; }
.ga-docs .ga-doc-ico{
  width:44px; height:44px; border-radius:999px; display:grid; place-items:center;
  background:#fffdf9; border:2px solid var(--gold); box-shadow:0 6px 16px rgba(2,6,23,.08);
}
.ga-docs .ga-doc-ico svg{ width:20px; height:20px; fill:var(--gold); }
.ga-docs .ga-doc-h{ margin:0; font-weight:800; color:var(--ink); }
.ga-docs .ga-doc-sub{ color:var(--muted); font-size:.92rem; margin-top:.1rem; }

/* Actions row */
.ga-docs .ga-doc-actions{ display:flex; gap:.6rem; flex-wrap:wrap; align-items:center; }

/* Buttons (gold fill + ghost), consistent met ANBI-knoppen */
.ga-docs .ga-btn{
  display:inline-flex; align-items:center; justify-content:center;
  border-radius:999px; padding:.55rem .95rem; font-weight:800; font-size:.95rem; line-height:1;
  border:2px solid var(--gold); color:#fff;
  background: linear-gradient(180deg, var(--gold), #b18a42);
  text-decoration:none; box-shadow:0 8px 18px rgba(178,146,80,.20);
  transition: filter .12s ease, transform .12s ease, box-shadow .12s ease, background-position .35s ease;
}
.ga-docs .ga-btn:hover, .ga-docs .ga-btn:focus{
  filter:brightness(1.06); transform: translateY(-1px); outline:none;
}
.ga-docs .ga-btn--ghost{
  background:#fff; color:var(--ink);
  border-color: var(--line); box-shadow:0 6px 14px rgba(2,6,23,.06);
}
.ga-docs .ga-btn--ghost:hover, .ga-docs .ga-btn--ghost:focus{
  background:#fffdf6; border-color:var(--gold);
}

/* Preview (details) */
.ga-docs .ga-doc-preview{ margin-left:auto; }
.ga-docs .ga-btn--summary{
  cursor:pointer; user-select:none;
  position:relative; padding-right:2.1rem; /* ruimte voor chevron */
}
.ga-docs .ga-btn--summary::after{
  content:"▾"; position:absolute; right:.8rem; top:50%; transform:translateY(-50%);
  font-weight:900; color:#fff;
}
.ga-docs .ga-btn--ghost.ga-btn--summary::after{ color:var(--ink); }
.ga-docs .ga-doc-preview[open] .ga-btn--summary::after{ content:"▴"; }

/* PDF frame (responsief) */
.ga-docs .ga-preview-frame{
  margin-top:.6rem; border:1px solid var(--line); border-radius:12px; overflow:hidden;
  box-shadow:0 8px 22px rgba(2,6,23,.06);
}
.ga-docs .ga-preview-frame object{
  width:100%; height: clamp(420px, 60vh, 640px);
  display:block; background:#fff;
}
/* ===== GA! Docs v2 — equal tiles + GA gold flair ===== */
.ga-docs--v2{ --ink:#141414; --muted:#6b5f57; --line:#CCBAA9; --gold:#B29250; --gold2:#E3BF7E; }

.ga-docs--v2 .ga-docs-grid{
  display:grid; gap:1rem;
  grid-template-columns: repeat(2, minmax(280px,1fr));
}
@media (max-width:900px){
  .ga-docs--v2 .ga-docs-grid{ grid-template-columns: 1fr; }
}

.ga-docs--v2 .ga-doc-card{
  position:relative;
  display:flex; flex-direction:column; height:100%;
  min-height: 320px; /* gelijk gevoel in gesloten toestand */
  border:1px solid var(--line); border-radius:16px;
  background:
    radial-gradient(24px 24px at 12% 8%, #fffdf6 20%, transparent 21%) no-repeat,
    linear-gradient(180deg, #ffffff, #fffdf9);
  box-shadow:0 10px 26px rgba(2,6,23,.08);
  overflow:hidden;
  padding:1rem 1.1rem 1.1rem 1.1rem;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.ga-docs--v2 .ga-doc-card::before{
  /* smalle gouden strook links */
  content:""; position:absolute; inset:0 auto 0 0; width:6px;
  background: linear-gradient(180deg, var(--gold), #b18a42);
}
.ga-docs--v2 .ga-doc-card:hover{
  transform: translateY(-2px);
  box-shadow:0 16px 36px rgba(2,6,23,.12);
  border-color:#d9c7b6;
}

/* PDF ribbon */
.ga-docs--v2 .ga-ribbon{
  position:absolute; right:10px; top:10px;
  font-size:.72rem; font-weight:800; letter-spacing:.03em;
  color:#fff; background:linear-gradient(180deg, var(--gold), #b18a42);
  padding:.25rem .5rem; border-radius:6px;
  box-shadow:0 6px 14px rgba(178,146,80,.28);
}

/* Kopblok */
.ga-docs--v2 .ga-doc-top{ padding-left:.25rem; }
.ga-docs--v2 .ga-coin{
  width:52px; height:52px; display:grid; place-items:center;
  border-radius:999px; margin-bottom:.4rem;
  background:#fff; border:2px solid var(--gold);
  box-shadow:0 8px 20px rgba(2,6,23,.10);
}
.ga-docs--v2 .ga-coin svg{ width:22px; height:22px; fill:var(--gold); }

.ga-docs--v2 .ga-doc-h{
  margin:.1rem 0 .15rem; font-weight:800; color:var(--ink);
  font-size:1.05rem;
}
.ga-docs--v2 .ga-doc-sub{
  margin:0 0 .5rem; color:var(--muted); font-size:.92rem;
}

/* Actiezone onderin (blijft onderaan) */
.ga-docs--v2 .ga-doc-actions{
  margin-top:auto; display:flex; gap:.6rem; flex-wrap:wrap; align-items:center;
}

/* Knoppen – match met je GA!-knoppen */
.ga-docs--v2 .ga-btn{
  display:inline-flex; align-items:center; justify-content:center;
  border-radius:999px; padding:.55rem .95rem; font-weight:800; font-size:.95rem; line-height:1;
  border:2px solid var(--gold); color:#fff;
  background: linear-gradient(180deg, var(--gold), #b18a42);
  text-decoration:none; box-shadow:0 8px 18px rgba(178,146,80,.20);
  transition: filter .12s ease, transform .12s ease, box-shadow .12s ease, background-position .35s ease;
}
.ga-docs--v2 .ga-btn:hover, .ga-docs--v2 .ga-btn:focus{
  filter:brightness(1.06); transform: translateY(-1px); outline:none;
}
.ga-docs--v2 .ga-btn--ghost{
  background:#fff; color:var(--ink);
  border-color: var(--line); box-shadow:0 6px 14px rgba(2,6,23,.06);
}
.ga-docs--v2 .ga-btn--ghost:hover, .ga-docs--v2 .ga-btn--ghost:focus{
  background:#fffdf6; border-color:var(--gold);
}

/* Preview (details) */
.ga-docs--v2 .ga-doc-preview{ margin-left:auto; }
.ga-docs--v2 .ga-btn--summary{ cursor:pointer; position:relative; padding-right:2rem; }
.ga-docs--v2 .ga-btn--summary::after{
  content:"▾"; position:absolute; right:.75rem; top:50%; transform:translateY(-50%);
  font-weight:900; color:#fff;
}
.ga-docs--v2 .ga-btn--ghost.ga-btn--summary::after{ color:var(--ink); }
.ga-docs--v2 .ga-doc-preview[open] .ga-btn--summary::after{ content:"▴"; }

.ga-docs--v2 .ga-preview-frame{
  margin-top:.65rem; border:1px solid var(--line); border-radius:12px; overflow:hidden;
  box-shadow:0 10px 24px rgba(2,6,23,.08);
}
.ga-docs--v2 .ga-preview-frame object{
  width:100%; height: clamp(420px, 60vh, 640px);
  display:block; background:#fff;
}
/* === GA! Docs v2 — Preview als grote overlay === */

/* 1) Donkere achtergrond zodra de preview open is */
.ga-docs--v2 .ga-doc-preview[open]::before{
  content:"";
  position:fixed; inset:0;
  background:rgba(10,10,10,.55);
  backdrop-filter:saturate(120%) blur(2px);
  z-index:9997;
}

/* 2) Het PDF-frame als “modal” in het midden van het scherm */
.ga-docs--v2 .ga-doc-preview[open] .ga-preview-frame{
  position:fixed;
  left:50%; top:50%;
  transform:translate(-50%,-50%);
  width:min(1200px, 92vw);
  height:88vh;                     /* groot genoeg om te lezen */
  border:1px solid var(--line);
  border-radius:14px; overflow:hidden;
  box-shadow:0 18px 48px rgba(2,6,23,.35);
  background:#fff;
  z-index:9999;
}

/* 3) Het PDF-object zelf vult de modal volledig */
.ga-docs--v2 .ga-doc-preview[open] .ga-preview-frame object{
  width:100%; height:100%; display:block;
}

/* 4) De “Preview” knop wordt een vaste “Close” knop rechtsboven */
.ga-docs--v2 .ga-doc-preview[open] .ga-btn--summary{
  position:fixed;
  top:3vh; right:3vw;
  z-index:10000;
  background:#fff; color:var(--ink);
  border-color:var(--line);
  box-shadow:0 10px 24px rgba(2,6,23,.24);
}
.ga-docs--v2 .ga-doc-preview[open] .ga-btn--summary::after{
  content:"×";                     /* vervang pijltje door kruisje */
  font-size:1.2rem; font-weight:900;
  position:static; margin-left:.5rem;
  transform:none; color:var(--ink);
}

/* 5) Kleine optimalisaties op mobiel */
@media (max-width:700px){
  .ga-docs--v2 .ga-doc-preview[open] .ga-preview-frame{
    width:96vw; height:92vh;
  }
  .ga-docs--v2 .ga-doc-preview[open] .ga-btn--summary{
    top:2vh; right:2vw;
  }
}
/* === GA! Docs v2 — Modal preview via :target (fullscreen-ish, leesbaar) === */
.ga-docs--v2 .ga-modal{ display:none; }
.ga-docs--v2 .ga-modal:target{
  display:grid;
  position:fixed; inset:0;
  z-index:9998;
  place-items:center;
}

/* Achtergrond */
.ga-docs--v2 .ga-modal-backdrop{
  position:fixed; inset:0;
  background:rgba(10,10,10,.60);
  backdrop-filter:saturate(115%) blur(2px);
}

/* Dialoog */
.ga-docs--v2 .ga-modal-dialog{
  position:relative;
  width:min(1200px, 94vw);
  height: min(92vh, 1100px);
  border:1px solid #CCBAA9;
  border-radius:14px;
  background:#fff;
  box-shadow:0 22px 60px rgba(2,6,23,.45);
  overflow:hidden;
  z-index:9999;
  display:flex; flex-direction:column;
}

/* PDF vult de modal */
.ga-docs--v2 .ga-modal-dialog object{
  display:block; width:100%; height:100%; background:#fff;
}

/* Sluitknop */
.ga-docs--v2 .ga-modal-close{
  position:absolute; top:10px; right:12px;
  display:inline-flex; align-items:center; justify-content:center;
  width:38px; height:38px; border-radius:999px;
  font-weight:900; font-size:1.2rem; line-height:1;
  color:#141414; text-decoration:none;
  background:#fff; border:2px solid #CCBAA9;
  box-shadow:0 10px 24px rgba(2,6,23,.24);
  transition: transform .12s ease, box-shadow .12s ease, filter .12s ease;
}
.ga-docs--v2 .ga-modal-close:hover,
.ga-docs--v2 .ga-modal-close:focus{
  transform: translateY(-1px);
  filter: brightness(1.03);
  outline:none;
}

/* Mobiel: iets meer vulling */
@media (max-width:700px){
  .ga-docs--v2 .ga-modal-dialog{ width:96vw; height:94vh; }
}
/* ===== GA! CTA FUN — goud + speelse hover animaties (geen JS) ===== */
.ga-cta-fun{ --gold:#B29250; --gold2:#E3BF7E; --ink:#141414; }
.ga-cta-fun{ display:flex; gap:12px; flex-wrap:wrap; justify-content:center; }

/* verwijder evt. wrapper-achtergrondjes van thema */
.ga-cta-fun .wp-block-button{ background:transparent !important; box-shadow:none !important; }

/* Basisknop: GA! goud, consistent met site */
.ga-cta-fun .ga-btn{
  position:relative; overflow:visible;
  display:inline-flex; align-items:center; justify-content:center;
  gap:.4rem;
  padding:.70rem 1.15rem;
  border-radius:999px;
  font-weight:800; font-size:.95rem; line-height:1;
  color:#fff; text-decoration:none;
  border:2px solid var(--gold);
  background:linear-gradient(180deg, var(--gold), #b18a42);
  box-shadow:0 8px 18px rgba(178,146,80,.22);
  transition: filter .12s ease, transform .12s ease, box-shadow .12s ease;
  will-change: transform;
}
.ga-cta-fun .ga-btn:hover,
.ga-cta-fun .ga-btn:focus{ filter:brightness(1.06); transform:translateY(-1px); outline:none; }

/* ===================== CONTACT — Vliegende envelop ===================== */
.ga-cta-fun .ga-btn-contact{ padding-left:1.35rem; padding-right:1.15rem; }
.ga-cta-fun .ga-btn-contact::before{
  /* Envelop-icoon (data URI SVG, wit) */
  content:"";
  position:absolute; left:.65rem; top:50%; transform:translateY(-50%);
  width:20px; height:14px; pointer-events:none; opacity:.95;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='16' viewBox='0 0 24 16' fill='none'%3E%3Crect x='1' y='1' width='22' height='14' rx='2' ry='2' fill='%23ffffff'/%3E%3Cpath d='M1 3 L12 11 L23 3' stroke='%23b3843c' stroke-width='2' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
  background-size:contain; background-repeat:no-repeat;
  transition: transform .2s ease, opacity .2s ease;
}
.ga-cta-fun .ga-btn-contact::after{
  /* Contrail / streepjes */
  content:"";
  position:absolute; left:0; top:50%; transform:translateY(-50%);
  width:40px; height:10px; opacity:0; pointer-events:none;
  background:repeating-linear-gradient(90deg, rgba(255,255,255,.75) 0 8px, rgba(255,255,255,0) 8px 14px);
  filter:blur(.2px);
}

/* Animatie bij hover: envelop vliegt diagonaal omhoog en verdwijnt; contrail schuift mee */
@keyframes mailFly{
  0%   { transform:translate(0,-50%) rotate(0);   opacity:.95; }
  60%  { transform:translate(90%, -160%) rotate(-22deg); opacity:.9; }
  100% { transform:translate(240%,-260%) rotate(-28deg); opacity:0; }
}
@keyframes mailTrail{
  0%   { transform:translate(0,-50%);     opacity:.0; }
  10%  { transform:translate(10%,-50%);   opacity:.65; }
  70%  { transform:translate(95%,-50%);   opacity:.45; }
  100% { transform:translate(200%,-50%);  opacity:0; }
}
.ga-cta-fun .ga-btn-contact:hover::before,
.ga-cta-fun .ga-btn-contact:focus::before{ animation: mailFly 1.1s ease-in forwards; }
.ga-cta-fun .ga-btn-contact:hover::after,
.ga-cta-fun .ga-btn-contact:focus::after{ animation: mailTrail 1.1s ease-in forwards; }

/* ================== UPDATES — Megaphone + sound waves ================== */
.ga-cta-fun .ga-btn-updates{ padding-right:1.25rem; padding-left:1.25rem; }

/* Megaphone komt van achter de knop even omhoog en zakt weer weg */
.ga-cta-fun .ga-btn-updates::before{
  content:"";
  position:absolute; left:12px; bottom:-8px; /* start “achter” de knop */
  width:22px; height:22px; pointer-events:none; opacity:0;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 24 24'%3E%3Cpath fill='%23ffffff' d='M3 14.5V9.5a1 1 0 0 1 1.3-.95L14 11V6a1 1 0 0 1 1.7-.7l4 4a1 1 0 0 1 0 1.4l-4 4A1 1 0 0 1 14 14v-5l-9.7 2.45A1 1 0 0 1 3 14.5Z'/%3E%3C/svg%3E");
  background-size:contain; background-repeat:no-repeat;
  transform:translateY(0) scale(.85) rotate(-6deg);
}

/* Sound waves rechtsboven van de megafoon */
.ga-cta-fun .ga-btn-updates::after{
  content:"";
  position:absolute; left:34px; bottom:16px;
  width:40px; height:24px; pointer-events:none; opacity:0;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='44' height='28' viewBox='0 0 44 28'%3E%3Cpath d='M2 26 Q14 14 26 26' stroke='%23ffffff' stroke-width='2' fill='none' stroke-linecap='round'/%3E%3Cpath d='M10 24 Q20 16 30 24' stroke='%23ffffff' stroke-width='2' fill='none' stroke-linecap='round' opacity='.85'/%3E%3Cpath d='M18 22 Q26 18 34 22' stroke='%23ffffff' stroke-width='2' fill='none' stroke-linecap='round' opacity='.7'/%3E%3C/svg%3E");
  background-size:contain; background-repeat:no-repeat;
  transform-origin: left bottom; transform:translateY(6px) scale(.8);
}

/* Keyframes: pop + fade voor megafoon, pulse voor de sound waves */
@keyframes megaPop{
  0%   { opacity:0; transform:translateY(0)    scale(.85) rotate(-8deg); }
  30%  { opacity:1; transform:translateY(-26px) scale(1)   rotate(-4deg); }
  60%  { opacity:1; transform:translateY(-26px) scale(1)   rotate(-4deg); }
  100% { opacity:0; transform:translateY(6px)  scale(.8)  rotate(-8deg); }
}
@keyframes waves{
  0%   { opacity:0; transform:translateY(6px) scale(.7); }
  25%  { opacity:1; transform:translateY(0)   scale(1); }
  80%  { opacity:.4; transform:translateY(-2px) scale(1.06); }
  100% { opacity:0; transform:translateY(6px) scale(.7); }
}

.ga-cta-fun .ga-btn-updates:hover::before,
.ga-cta-fun .ga-btn-updates:focus::before{ animation: megaPop .95s ease-out both; }

.ga-cta-fun .ga-btn-updates:hover::after,
.ga-cta-fun .ga-btn-updates:focus::after{ animation: waves .95s ease-out both; }

/* Toegankelijkheid: duidelijke focusring, motion-voorkeur */
.ga-cta-fun .ga-btn:focus-visible{
  outline:2px solid var(--gold2); outline-offset:2px;
}
@media (prefers-reduced-motion: reduce){
  .ga-cta-fun .ga-btn-contact:hover::before,
  .ga-cta-fun .ga-btn-contact:hover::after,
  .ga-cta-fun .ga-btn-updates:hover::before,
  .ga-cta-fun .ga-btn-updates:hover::after{ animation:none; }
}
/* ===== GA! CTA FUN — goud + speelse hover animaties (geen JS) ===== */
.ga-cta-fun{ --gold:#B29250; --gold2:#E3BF7E; --ink:#141414; }
.ga-cta-fun{ display:flex; gap:12px; flex-wrap:wrap; justify-content:center; }

/* verwijder evt. wrapper-achtergrondjes van thema */
.ga-cta-fun .wp-block-button{ background:transparent !important; box-shadow:none !important; }

/* Basisknop: GA! goud, consistent met site */
.ga-cta-fun .ga-btn{
  position:relative; overflow:visible;
  display:inline-flex; align-items:center; justify-content:center;
  gap:.4rem;
  padding:.70rem 1.15rem;
  border-radius:999px;
  font-weight:800; font-size:.95rem; line-height:1;
  color:#fff; text-decoration:none;
  border:2px solid var(--gold);
  background:linear-gradient(180deg, var(--gold), #b18a42);
  box-shadow:0 8px 18px rgba(178,146,80,.22);
  transition: filter .12s ease, transform .12s ease, box-shadow .12s ease;
  will-change: transform;
}
.ga-cta-fun .ga-btn:hover,
.ga-cta-fun .ga-btn:focus{ filter:brightness(1.06); transform:translateY(-1px); outline:none; }

/* ===================== CONTACT — Vliegende envelop ===================== */
.ga-cta-fun .ga-btn-contact{ padding-left:1.35rem; padding-right:1.15rem; }
.ga-cta-fun .ga-btn-contact::before{
  /* Envelop-icoon (data URI SVG, wit) */
  content:"";
  position:absolute; left:.65rem; top:50%; transform:translateY(-50%);
  width:20px; height:14px; pointer-events:none; opacity:.95;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='16' viewBox='0 0 24 16' fill='none'%3E%3Crect x='1' y='1' width='22' height='14' rx='2' ry='2' fill='%23ffffff'/%3E%3Cpath d='M1 3 L12 11 L23 3' stroke='%23b3843c' stroke-width='2' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
  background-size:contain; background-repeat:no-repeat;
  transition: transform .2s ease, opacity .2s ease;
}
.ga-cta-fun .ga-btn-contact::after{
  /* Contrail / streepjes */
  content:"";
  position:absolute; left:0; top:50%; transform:translateY(-50%);
  width:40px; height:10px; opacity:0; pointer-events:none;
  background:repeating-linear-gradient(90deg, rgba(255,255,255,.75) 0 8px, rgba(255,255,255,0) 8px 14px);
  filter:blur(.2px);
}

/* Animatie bij hover: envelop vliegt diagonaal omhoog en verdwijnt; contrail schuift mee */
@keyframes mailFly{
  0%   { transform:translate(0,-50%) rotate(0);   opacity:.95; }
  60%  { transform:translate(90%, -160%) rotate(-22deg); opacity:.9; }
  100% { transform:translate(240%,-260%) rotate(-28deg); opacity:0; }
}
@keyframes mailTrail{
  0%   { transform:translate(0,-50%);     opacity:.0; }
  10%  { transform:translate(10%,-50%);   opacity:.65; }
  70%  { transform:translate(95%,-50%);   opacity:.45; }
  100% { transform:translate(200%,-50%);  opacity:0; }
}
.ga-cta-fun .ga-btn-contact:hover::before,
.ga-cta-fun .ga-btn-contact:focus::before{ animation: mailFly 1.1s ease-in forwards; }
.ga-cta-fun .ga-btn-contact:hover::after,
.ga-cta-fun .ga-btn-contact:focus::after{ animation: mailTrail 1.1s ease-in forwards; }

/* ================== UPDATES — Megaphone + sound waves ================== */
.ga-cta-fun .ga-btn-updates{ padding-right:1.25rem; padding-left:1.25rem; }

/* Megaphone komt van achter de knop even omhoog en zakt weer weg */
.ga-cta-fun .ga-btn-updates::before{
  content:"";
  position:absolute; left:12px; bottom:-8px; /* start “achter” de knop */
  width:22px; height:22px; pointer-events:none; opacity:0;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 24 24'%3E%3Cpath fill='%23ffffff' d='M3 14.5V9.5a1 1 0 0 1 1.3-.95L14 11V6a1 1 0 0 1 1.7-.7l4 4a1 1 0 0 1 0 1.4l-4 4A1 1 0 0 1 14 14v-5l-9.7 2.45A1 1 0 0 1 3 14.5Z'/%3E%3C/svg%3E");
  background-size:contain; background-repeat:no-repeat;
  transform:translateY(0) scale(.85) rotate(-6deg);
}

/* Sound waves rechtsboven van de megafoon */
.ga-cta-fun .ga-btn-updates::after{
  content:"";
  position:absolute; left:34px; bottom:16px;
  width:40px; height:24px; pointer-events:none; opacity:0;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='44' height='28' viewBox='0 0 44 28'%3E%3Cpath d='M2 26 Q14 14 26 26' stroke='%23ffffff' stroke-width='2' fill='none' stroke-linecap='round'/%3E%3Cpath d='M10 24 Q20 16 30 24' stroke='%23ffffff' stroke-width='2' fill='none' stroke-linecap='round' opacity='.85'/%3E%3Cpath d='M18 22 Q26 18 34 22' stroke='%23ffffff' stroke-width='2' fill='none' stroke-linecap='round' opacity='.7'/%3E%3C/svg%3E");
  background-size:contain; background-repeat:no-repeat;
  transform-origin: left bottom; transform:translateY(6px) scale(.8);
}

/* Keyframes: pop + fade voor megafoon, pulse voor de sound waves */
@keyframes megaPop{
  0%   { opacity:0; transform:translateY(0)    scale(.85) rotate(-8deg); }
  30%  { opacity:1; transform:translateY(-26px) scale(1)   rotate(-4deg); }
  60%  { opacity:1; transform:translateY(-26px) scale(1)   rotate(-4deg); }
  100% { opacity:0; transform:translateY(6px)  scale(.8)  rotate(-8deg); }
}
@keyframes waves{
  0%   { opacity:0; transform:translateY(6px) scale(.7); }
  25%  { opacity:1; transform:translateY(0)   scale(1); }
  80%  { opacity:.4; transform:translateY(-2px) scale(1.06); }
  100% { opacity:0; transform:translateY(6px) scale(.7); }
}

.ga-cta-fun .ga-btn-updates:hover::before,
.ga-cta-fun .ga-btn-updates:focus::before{ animation: megaPop .95s ease-out both; }

.ga-cta-fun .ga-btn-updates:hover::after,
.ga-cta-fun .ga-btn-updates:focus::after{ animation: waves .95s ease-out both; }

/* Toegankelijkheid: duidelijke focusring, motion-voorkeur */
.ga-cta-fun .ga-btn:focus-visible{
  outline:2px solid var(--gold2); outline-offset:2px;
}
@media (prefers-reduced-motion: reduce){
  .ga-cta-fun .ga-btn-contact:hover::before,
  .ga-cta-fun .ga-btn-contact:hover::after,
  .ga-cta-fun .ga-btn-updates:hover::before,
  .ga-cta-fun .ga-btn-updates:hover::after{ animation:none; }
}
/* === GA! CTA FUN — Fixes: envelope naast tekst + grotere/zichtbare megaphone === */

/* Zorg dat pseudo-elementen buiten de knop zichtbaar mogen zijn */
.ga-cta-fun .ga-btn{ position:relative; overflow:visible; }

/* -------- CONTACT: Envelop links van de tekst (geen overlappen) -------- */
.ga-cta-fun .ga-btn-contact{
  padding-left:1.4rem;                  /* normale padding; icoon zit buiten de knop */
}
.ga-cta-fun .ga-btn-contact::before{
  /* Envelop staat links naast de knop, niet op de tekst */
  left:-28px; top:50%;
  width:24px; height:16px;
  transform:translateY(-50%) rotate(0);
  z-index:2; opacity:.95;
}
.ga-cta-fun .ga-btn-contact::after{
  /* Contrail start nog verder links zodat je een mooie beweging ziet */
  left:-74px; top:50%;
  width:64px; height:10px;
  transform:translateY(-50%);
}

/* Iets langere vlucht (meer naar links->rechts, hoger weg) */
@keyframes mailFly{
  0%   { transform:translate(0,-50%) rotate(0);    opacity:.95; }
  55%  { transform:translate(120%, -170%) rotate(-18deg); opacity:.9; }
  100% { transform:translate(260%,-260%) rotate(-26deg);  opacity:0; }
}
@keyframes mailTrail{
  0%   { transform:translate(0,-50%);    opacity:0; }
  12%  { transform:translate(12%,-50%);  opacity:.7; }
  72%  { transform:translate(110%,-50%); opacity:.45; }
  100% { transform:translate(220%,-50%); opacity:0; }
}
/* Trigger (blijft hetzelfde) */
.ga-cta-fun .ga-btn-contact:hover::before,
.ga-cta-fun .ga-btn-contact:focus::before{ animation: mailFly 1.1s ease-in forwards; }
.ga-cta-fun .ga-btn-contact:hover::after,
.ga-cta-fun .ga-btn-contact:focus::after{ animation: mailTrail 1.1s ease-in forwards; }

/* -------- UPDATES: Grotere megaphone, gecentreerd boven knop -------- */
.ga-cta-fun .ga-btn-updates{
  padding-left:1.25rem; padding-right:1.25rem;
}

/* Megaphone komt uit het midden boven de knop omhoog */
.ga-cta-fun .ga-btn-updates::before{
  left:50%; bottom:-10px;               /* start ‘achter’ de knop */
  width:30px; height:30px;              /* groter */
  transform:translate(-50%, 0) rotate(-6deg) scale(1);
  opacity:0; z-index:3;
}
/* Sound waves groter en boven de knop */
.ga-cta-fun .ga-btn-updates::after{
  left:50%; bottom:22px;
  width:78px; height:44px;
  transform:translate(-50%, -4px) scale(.9);
  opacity:0; z-index:3;
}

/* Nieuwe, hogere ‘pop’ + duidelijkere waves */
@keyframes megaPop2{
  0%   { opacity:0; transform:translate(-50%, 0)     rotate(-8deg) scale(.9); }
  28%  { opacity:1; transform:translate(-50%, -42px) rotate(-4deg) scale(1.03); }
  65%  { opacity:1; transform:translate(-50%, -42px) rotate(-4deg) scale(1.03); }
  100% { opacity:0; transform:translate(-50%, 8px)   rotate(-8deg) scale(.9); }
}
@keyframes waves2{
  0%   { opacity:0;   transform:translate(-50%, 6px)  scale(.8); }
  25%  { opacity:1;   transform:translate(-50%, 0)    scale(1);   }
  70%  { opacity:.45; transform:translate(-50%, -2px) scale(1.08); }
  100% { opacity:0;   transform:translate(-50%, 6px)  scale(.85); }
}

/* Trigger de nieuwe animaties */
.ga-cta-fun .ga-btn-updates:hover::before,
.ga-cta-fun .ga-btn-updates:focus::before{ animation: megaPop2 1.1s ease-out both; }
.ga-cta-fun .ga-btn-updates:hover::after,
.ga-cta-fun .ga-btn-updates:focus::after{ animation: waves2 1.1s ease-out both; }

/* Toegankelijkheid */
.ga-cta-fun .ga-btn:focus-visible{
  outline:2px solid #E3BF7E; outline-offset:2px;
}
@media (prefers-reduced-motion: reduce){
  .ga-cta-fun .ga-btn-contact:hover::before,
  .ga-cta-fun .ga-btn-contact:hover::after,
  .ga-cta-fun .ga-btn-updates:hover::before,
  .ga-cta-fun .ga-btn-updates:hover::after{ animation:none; }
}
/* === GA! CTA FUN — Fixes: envelope naast tekst + grotere/zichtbare megaphone === */

/* Zorg dat pseudo-elementen buiten de knop zichtbaar mogen zijn */
.ga-cta-fun .ga-btn{ position:relative; overflow:visible; }

/* -------- CONTACT: Envelop links van de tekst (geen overlappen) -------- */
.ga-cta-fun .ga-btn-contact{
  padding-left:1.4rem;                  /* normale padding; icoon zit buiten de knop */
}
.ga-cta-fun .ga-btn-contact::before{
  /* Envelop staat links naast de knop, niet op de tekst */
  left:-28px; top:50%;
  width:24px; height:16px;
  transform:translateY(-50%) rotate(0);
  z-index:2; opacity:.95;
}
.ga-cta-fun .ga-btn-contact::after{
  /* Contrail start nog verder links zodat je een mooie beweging ziet */
  left:-74px; top:50%;
  width:64px; height:10px;
  transform:translateY(-50%);
}

/* Iets langere vlucht (meer naar links->rechts, hoger weg) */
@keyframes mailFly{
  0%   { transform:translate(0,-50%) rotate(0);    opacity:.95; }
  55%  { transform:translate(120%, -170%) rotate(-18deg); opacity:.9; }
  100% { transform:translate(260%,-260%) rotate(-26deg);  opacity:0; }
}
@keyframes mailTrail{
  0%   { transform:translate(0,-50%);    opacity:0; }
  12%  { transform:translate(12%,-50%);  opacity:.7; }
  72%  { transform:translate(110%,-50%); opacity:.45; }
  100% { transform:translate(220%,-50%); opacity:0; }
}
/* Trigger (blijft hetzelfde) */
.ga-cta-fun .ga-btn-contact:hover::before,
.ga-cta-fun .ga-btn-contact:focus::before{ animation: mailFly 1.1s ease-in forwards; }
.ga-cta-fun .ga-btn-contact:hover::after,
.ga-cta-fun .ga-btn-contact:focus::after{ animation: mailTrail 1.1s ease-in forwards; }

/* -------- UPDATES: Grotere megaphone, gecentreerd boven knop -------- */
.ga-cta-fun .ga-btn-updates{
  padding-left:1.25rem; padding-right:1.25rem;
}

/* Megaphone komt uit het midden boven de knop omhoog */
.ga-cta-fun .ga-btn-updates::before{
  left:50%; bottom:-10px;               /* start ‘achter’ de knop */
  width:30px; height:30px;              /* groter */
  transform:translate(-50%, 0) rotate(-6deg) scale(1);
  opacity:0; z-index:3;
}
/* Sound waves groter en boven de knop */
.ga-cta-fun .ga-btn-updates::after{
  left:50%; bottom:22px;
  width:78px; height:44px;
  transform:translate(-50%, -4px) scale(.9);
  opacity:0; z-index:3;
}

/* Nieuwe, hogere ‘pop’ + duidelijkere waves */
@keyframes megaPop2{
  0%   { opacity:0; transform:translate(-50%, 0)     rotate(-8deg) scale(.9); }
  28%  { opacity:1; transform:translate(-50%, -42px) rotate(-4deg) scale(1.03); }
  65%  { opacity:1; transform:translate(-50%, -42px) rotate(-4deg) scale(1.03); }
  100% { opacity:0; transform:translate(-50%, 8px)   rotate(-8deg) scale(.9); }
}
@keyframes waves2{
  0%   { opacity:0;   transform:translate(-50%, 6px)  scale(.8); }
  25%  { opacity:1;   transform:translate(-50%, 0)    scale(1);   }
  70%  { opacity:.45; transform:translate(-50%, -2px) scale(1.08); }
  100% { opacity:0;   transform:translate(-50%, 6px)  scale(.85); }
}

/* Trigger de nieuwe animaties */
.ga-cta-fun .ga-btn-updates:hover::before,
.ga-cta-fun .ga-btn-updates:focus::before{ animation: megaPop2 1.1s ease-out both; }
.ga-cta-fun .ga-btn-updates:hover::after,
.ga-cta-fun .ga-btn-updates:focus::after{ animation: waves2 1.1s ease-out both; }

/* Toegankelijkheid */
.ga-cta-fun .ga-btn:focus-visible{
  outline:2px solid #E3BF7E; outline-offset:2px;
}
@media (prefers-reduced-motion: reduce){
  .ga-cta-fun .ga-btn-contact:hover::before,
  .ga-cta-fun .ga-btn-contact:hover::after,
  .ga-cta-fun .ga-btn-updates:hover::before,
  .ga-cta-fun .ga-btn-updates:hover::after{ animation:none; }
}
/* === GA! CTA FUN — Icons: zwart + goud, zichtbaarheid verbeterd === */

/* Basis: pseudo-elementen mogen buiten de knop tekenen */
.ga-cta-fun .ga-btn{ position:relative; overflow:visible; }

/* ----------------- CONTACT — Envelop (zwart + goud) ----------------- */
/* Zet de envelop links van de tekst, niet eroverheen */
.ga-cta-fun .ga-btn-contact{
  padding-left:1.4rem;
}
.ga-cta-fun .ga-btn-contact::before{
  content:"";
  position:absolute; left:-30px; top:50%;
  width:26px; height:18px; z-index:2; opacity:.98; pointer-events:none;
  transform:translateY(-50%) rotate(0);
  /* Zwarte outline + gouden flap */
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='20' viewBox='0 0 28 20'%3E%3Crect x='1' y='1' width='26' height='18' rx='3' ry='3' fill='none' stroke='%23141414' stroke-width='2'/%3E%3Cpath d='M2 4 L14 12 L26 4' stroke='%23B29250' stroke-width='2' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-size:contain; background-repeat:no-repeat;
}
/* Contrail in goudtint */
.ga-cta-fun .ga-btn-contact::after{
  content:"";
  position:absolute; left:-74px; top:50%;
  width:74px; height:10px; pointer-events:none;
  transform:translateY(-50%);
  background:repeating-linear-gradient(90deg, rgba(178,146,80,.9) 0 10px, rgba(178,146,80,0) 10px 18px);
  filter:blur(.2px);
}

/* Vlucht-animatie (ongewijzigde triggers uit jouw CSS blijven gelden) */
@keyframes mailFly{
  0%   { transform:translate(0,-50%) rotate(0);    opacity:.98; }
  55%  { transform:translate(120%, -170%) rotate(-18deg); opacity:.92; }
  100% { transform:translate(260%,-260%) rotate(-26deg);  opacity:0; }
}
@keyframes mailTrail{
  0%   { transform:translate(0,-50%);    opacity:0; }
  12%  { transform:translate(12%,-50%);  opacity:.7; }
  72%  { transform:translate(110%,-50%); opacity:.45; }
  100% { transform:translate(220%,-50%); opacity:0; }
}

/* ---------------- UPDATES — Megaphone (zwart) + gouden waves ---------------- */
.ga-cta-fun .ga-btn-updates{ padding-left:1.25rem; padding-right:1.25rem; }

/* Grotere, duidelijk zichtbare megafoon — centred boven de knop */
.ga-cta-fun .ga-btn-updates::before{
  content:"";
  position:absolute; left:50%; bottom:-12px;
  width:36px; height:36px; z-index:3; pointer-events:none; opacity:0;
  transform:translate(-50%, 0) rotate(-6deg) scale(1);
  /* Echte megafoon in zwart */
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='36' height='36' viewBox='0 0 24 24'%3E%3Cpath d='M3 10v4l9 3V7l-9 3z' fill='%23141414'/%3E%3Cpath d='M12 7h8v10h-8z' fill='%23141414'/%3E%3Crect x='7' y='14' width='2.6' height='5' rx='1' transform='rotate(-20 8.3 16.5)' fill='%23141414'/%3E%3C/svg%3E");
  background-size:contain; background-repeat:no-repeat;
}
/* Gouden sound waves, groter en hoger */
.ga-cta-fun .ga-btn-updates::after{
  content:"";
  position:absolute; left:50%; bottom:30px;
  width:90px; height:52px; z-index:3; pointer-events:none; opacity:0;
  transform:translate(-50%, -4px) scale(.9);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='90' height='52' viewBox='0 0 90 52'%3E%3Cpath d='M6 46 Q 28 26 50 46' stroke='%23B29250' stroke-width='3' fill='none' stroke-linecap='round'/%3E%3Cpath d='M18 42 Q 36 28 54 42' stroke='%23B29250' stroke-width='3' fill='none' stroke-linecap='round' opacity='.85'/%3E%3Cpath d='M30 38 Q 44 30 58 38' stroke='%23B29250' stroke-width='3' fill='none' stroke-linecap='round' opacity='.7'/%3E%3C/svg%3E");
  background-size:contain; background-repeat:no-repeat;
}

/* Hogere ‘pop’ + duidelijke waves */
@keyframes megaPop2{
  0%   { opacity:0; transform:translate(-50%, 0)     rotate(-8deg) scale(.9); }
  28%  { opacity:1; transform:translate(-50%, -48px) rotate(-4deg) scale(1.05); }
  65%  { opacity:1; transform:translate(-50%, -48px) rotate(-4deg) scale(1.05); }
  100% { opacity:0; transform:translate(-50%, 10px)  rotate(-8deg) scale(.9); }
}
@keyframes waves2{
  0%   { opacity:0;   transform:translate(-50%, 6px)  scale(.85); }
  25%  { opacity:1;   transform:translate(-50%, 0)    scale(1);   }
  70%  { opacity:.5;  transform:translate(-50%, -2px) scale(1.1);  }
  100% { opacity:0;   transform:translate(-50%, 6px)  scale(.9);  }
}

/* Triggers (blijven gelijk als eerder; herhalen voor zekerheid) */
.ga-cta-fun .ga-btn-updates:hover::before,
.ga-cta-fun .ga-btn-updates:focus::before{ animation: megaPop2 1.1s ease-out both; }
.ga-cta-fun .ga-btn-updates:hover::after,
.ga-cta-fun .ga-btn-updates:focus::after{ animation: waves2 1.1s ease-out both; }

/* Focus ring */
.ga-cta-fun .ga-btn:focus-visible{ outline:2px solid #E3BF7E; outline-offset:2px; }

/* Motion-voorkeur */
@media (prefers-reduced-motion: reduce){
  .ga-cta-fun .ga-btn-contact:hover::before,
  .ga-cta-fun .ga-btn-contact:hover::after,
  .ga-cta-fun .ga-btn-updates:hover::before,
  .ga-cta-fun .ga-btn-updates:hover::after{ animation:none; }
}
/* === OVERRIDE: Envelope pas zichtbaar op hover + waves uit de megaphone === */

/* Basis: pseudo-elementen buiten de knop tekenen */
.ga-cta-fun .ga-btn{ position:relative; overflow:visible; }

/* ------------ CONTACT: Envelop standaard verbergen ------------ */
.ga-cta-fun .ga-btn-contact{ padding-left:1.4rem; }

/* Envelop links naast de knop (verborgen) */
.ga-cta-fun .ga-btn-contact::before{
  content:"";
  position:absolute; left:-30px; top:50%;
  width:26px; height:18px; z-index:2; pointer-events:none;
  transform:translateY(-50%) rotate(0);
  opacity:0;                                /* <— verborgen vóór hover */
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='20' viewBox='0 0 28 20'%3E%3Crect x='1' y='1' width='26' height='18' rx='3' ry='3' fill='none' stroke='%23141414' stroke-width='2'/%3E%3Cpath d='M2 4 L14 12 L26 4' stroke='%23B29250' stroke-width='2' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-size:contain; background-repeat:no-repeat;
}

/* Contrail (gouden strepen) ook pas op hover zichtbaar */
.ga-cta-fun .ga-btn-contact::after{
  content:"";
  position:absolute; left:-78px; top:50%;
  width:78px; height:10px; pointer-events:none;
  transform:translateY(-50%);
  opacity:0;                                /* <— verborgen vóór hover */
  background:repeating-linear-gradient(90deg, rgba(178,146,80,.9) 0 10px, rgba(178,146,80,0) 10px 18px);
  filter:blur(.2px);
}

/* Vlucht-animaties (eindigen onzichtbaar = forwards met opacity 0) */
@keyframes mailFly{
  0%   { transform:translate(0,-50%) rotate(0);    opacity:0; }
  10%  { opacity:.98; }
  55%  { transform:translate(120%, -170%) rotate(-18deg); opacity:.92; }
  100% { transform:translate(260%,-260%) rotate(-26deg);  opacity:0; }
}
@keyframes mailTrail{
  0%   { transform:translate(0,-50%);    opacity:0; }
  12%  { transform:translate(12%,-50%);  opacity:.7; }
  72%  { transform:translate(110%,-50%); opacity:.45; }
  100% { transform:translate(220%,-50%); opacity:0; }
}

/* Triggers: pas op hover/focus zichtbaar + animate */
.ga-cta-fun .ga-btn-contact:hover::before,
.ga-cta-fun .ga-btn-contact:focus::before{ animation: mailFly 1.1s ease-in forwards; }
.ga-cta-fun .ga-btn-contact:hover::after,
.ga-cta-fun .ga-btn-contact:focus::after{ animation: mailTrail 1.1s ease-in forwards; }

/* --------- UPDATES: Megaphone groter + waves uit de mond --------- */
.ga-cta-fun .ga-btn-updates{ padding-left:1.25rem; padding-right:1.25rem; }

/* Megaphone: gecentreerd boven de knop, iets groter; verborgen vóór hover */
.ga-cta-fun .ga-btn-updates::before{
  content:"";
  position:absolute; left:50%; bottom:-12px;
  width:38px; height:38px; z-index:3; pointer-events:none;
  transform:translate(-50%, 0) rotate(-6deg) scale(1);
  opacity:0;                                 /* <— verborgen tot hover */
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='38' height='38' viewBox='0 0 24 24'%3E%3Cpath d='M3 10v4l9 3V7l-9 3z' fill='%23141414'/%3E%3Cpath d='M12 7h8v10h-8z' fill='%23141414'/%3E%3Crect x='7' y='14' width='2.6' height='5' rx='1' transform='rotate(-20 8.3 16.5)' fill='%23141414'/%3E%3C/svg%3E");
  background-size:contain; background-repeat:no-repeat;
}

/* Waves: uitgangspunt = mond rechts van de megafoon */
/* 38px breed → mond ~ +20px rechts van center; iets hoger geplaatst */
.ga-cta-fun .ga-btn-updates::after{
  content:"";
  position:absolute;
  left: calc(50% + 20px);                    /* <— uit de mond */
  bottom: 38px;                              /* hoogte bij pop */
  width:96px; height:56px; z-index:3; pointer-events:none;
  transform: translate(-0%, 0) scale(.9);    /* geen -50% meer; we positioneren exact */
  opacity:0;                                 /* <— verborgen tot hover */
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='96' height='56' viewBox='0 0 96 56'%3E%3Cpath d='M2 50 Q 28 28 54 50' stroke='%23B29250' stroke-width='3' fill='none' stroke-linecap='round'/%3E%3Cpath d='M14 44 Q 36 30 58 44' stroke='%23B29250' stroke-width='3' fill='none' stroke-linecap='round' opacity='.85'/%3E%3Cpath d='M26 38 Q 44 32 62 38' stroke='%23B29250' stroke-width='3' fill='none' stroke-linecap='round' opacity='.7'/%3E%3C/svg%3E");
  background-size:contain; background-repeat:no-repeat;
}

/* Pop + waves-animaties (iets hoger en duidelijker) */
@keyframes megaPop2{
  0%   { opacity:0; transform:translate(-50%, 0)     rotate(-8deg) scale(.9); }
  28%  { opacity:1; transform:translate(-50%, -52px) rotate(-4deg) scale(1.06); }
  65%  { opacity:1; transform:translate(-50%, -52px) rotate(-4deg) scale(1.06); }
  100% { opacity:0; transform:translate(-50%, 10px)  rotate(-8deg) scale(.9); }
}
@keyframes waves2{
  0%   { opacity:0;   transform:translate(0, 6px)  scale(.85); }
  25%  { opacity:1;   transform:translate(0, 0)    scale(1);   }
  70%  { opacity:.5;  transform:translate(4px, -2px) scale(1.1); }
  100% { opacity:0;   transform:translate(8px, 6px)  scale(.9); }
}

/* Triggers: hover/focus */
.ga-cta-fun .ga-btn-updates:hover::before,
.ga-cta-fun .ga-btn-updates:focus::before{ animation: megaPop2 1.1s ease-out both; }

.ga-cta-fun .ga-btn-updates:hover::after,
.ga-cta-fun .ga-btn-updates:focus::after{ animation: waves2 1.1s ease-out both; }

/* Toegankelijkheid */
.ga-cta-fun .ga-btn:focus-visible{ outline:2px solid #E3BF7E; outline-offset:2px; }

@media (prefers-reduced-motion: reduce){
  .ga-cta-fun .ga-btn-contact:hover::before,
  .ga-cta-fun .ga-btn-contact:hover::after,
  .ga-cta-fun .ga-btn-updates:hover::before,
  .ga-cta-fun .ga-btn-updates:hover::after{ animation:none; opacity:1; }
}
/* ===== GA! Docs v2 — equal tiles + GA gold flair ===== */
.ga-docs--v2{ --ink:#141414; --muted:#6b5f57; --line:#CCBAA9; --gold:#B29250; --gold2:#E3BF7E; }

.ga-docs--v2 .ga-docs-grid{
  display:grid; gap:1rem;
  grid-template-columns: repeat(2, minmax(280px,1fr));
}
@media (max-width:900px){
  .ga-docs--v2 .ga-docs-grid{ grid-template-columns: 1fr; }
}

.ga-docs--v2 .ga-doc-card{
  position:relative;
  display:flex; flex-direction:column; height:100%;
  min-height: 320px; /* gelijk gevoel in gesloten toestand */
  border:1px solid var(--line); border-radius:16px;
  background:
    radial-gradient(24px 24px at 12% 8%, #fffdf6 20%, transparent 21%) no-repeat,
    linear-gradient(180deg, #ffffff, #fffdf9);
  box-shadow:0 10px 26px rgba(2,6,23,.08);
  overflow:hidden;
  padding:1rem 1.1rem 1.1rem 1.1rem;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.ga-docs--v2 .ga-doc-card::before{
  /* smalle gouden strook links */
  content:""; position:absolute; inset:0 auto 0 0; width:6px;
  background: linear-gradient(180deg, var(--gold), #b18a42);
}
.ga-docs--v2 .ga-doc-card:hover{
  transform: translateY(-2px);
  box-shadow:0 16px 36px rgba(2,6,23,.12);
  border-color:#d9c7b6;
}

/* PDF ribbon */
.ga-docs--v2 .ga-ribbon{
  position:absolute; right:10px; top:10px;
  font-size:.72rem; font-weight:800; letter-spacing:.03em;
  color:#fff; background:linear-gradient(180deg, var(--gold), #b18a42);
  padding:.25rem .5rem; border-radius:6px;
  box-shadow:0 6px 14px rgba(178,146,80,.28);
}

/* Kopblok */
.ga-docs--v2 .ga-doc-top{ padding-left:.25rem; }
.ga-docs--v2 .ga-coin{
  width:52px; height:52px; display:grid; place-items:center;
  border-radius:999px; margin-bottom:.4rem;
  background:#fff; border:2px solid var(--gold);
  box-shadow:0 8px 20px rgba(2,6,23,.10);
}
.ga-docs--v2 .ga-coin svg{ width:22px; height:22px; fill:var(--gold); }

.ga-docs--v2 .ga-doc-h{
  margin:.1rem 0 .15rem; font-weight:800; color:var(--ink);
  font-size:1.05rem;
}
.ga-docs--v2 .ga-doc-sub{
  margin:0 0 .5rem; color:var(--muted); font-size:.92rem;
}

/* Actiezone onderin (blijft onderaan) */
.ga-docs--v2 .ga-doc-actions{
  margin-top:auto; display:flex; gap:.6rem; flex-wrap:wrap; align-items:center;
}

/* Knoppen – match met je GA!-knoppen */
.ga-docs--v2 .ga-btn{
  display:inline-flex; align-items:center; justify-content:center;
  border-radius:999px; padding:.55rem .95rem; font-weight:800; font-size:.95rem; line-height:1;
  border:2px solid var(--gold); color:#fff;
  background: linear-gradient(180deg, var(--gold), #b18a42);
  text-decoration:none; box-shadow:0 8px 18px rgba(178,146,80,.20);
  transition: filter .12s ease, transform .12s ease, box-shadow .12s ease, background-position .35s ease;
}
.ga-docs--v2 .ga-btn:hover, .ga-docs--v2 .ga-btn:focus{
  filter:brightness(1.06); transform: translateY(-1px); outline:none;
}
.ga-docs--v2 .ga-btn--ghost{
  background:#fff; color:var(--ink);
  border-color: var(--line); box-shadow:0 6px 14px rgba(2,6,23,.06);
}
.ga-docs--v2 .ga-btn--ghost:hover, .ga-docs--v2 .ga-btn--ghost:focus{
  background:#fffdf6; border-color:var(--gold);
}

/* Preview (details) */
.ga-docs--v2 .ga-doc-preview{ margin-left:auto; }
.ga-docs--v2 .ga-btn--summary{ cursor:pointer; position:relative; padding-right:2rem; }
.ga-docs--v2 .ga-btn--summary::after{
  content:"▾"; position:absolute; right:.75rem; top:50%; transform:translateY(-50%);
  font-weight:900; color:#fff;
}
.ga-docs--v2 .ga-btn--ghost.ga-btn--summary::after{ color:var(--ink); }
.ga-docs--v2 .ga-doc-preview[open] .ga-btn--summary::after{ content:"▴"; }

.ga-docs--v2 .ga-preview-frame{
  margin-top:.65rem; border:1px solid var(--line); border-radius:12px; overflow:hidden;
  box-shadow:0 10px 24px rgba(2,6,23,.08);
}
.ga-docs--v2 .ga-preview-frame object{
  width:100%; height: clamp(420px, 60vh, 640px);
  display:block; background:#fff;
}
/* ===== GA! Docs v2 — equal tiles + GA gold flair ===== */
.ga-docs--v2{ --ink:#141414; --muted:#6b5f57; --line:#CCBAA9; --gold:#B29250; --gold2:#E3BF7E; }

.ga-docs--v2 .ga-docs-grid{
  display:grid; gap:1rem;
  grid-template-columns: repeat(2, minmax(280px,1fr));
}
@media (max-width:900px){
  .ga-docs--v2 .ga-docs-grid{ grid-template-columns: 1fr; }
}

.ga-docs--v2 .ga-doc-card{
  position:relative;
  display:flex; flex-direction:column; height:100%;
  min-height: 320px; /* gelijk gevoel in gesloten toestand */
  border:1px solid var(--line); border-radius:16px;
  background:
    radial-gradient(24px 24px at 12% 8%, #fffdf6 20%, transparent 21%) no-repeat,
    linear-gradient(180deg, #ffffff, #fffdf9);
  box-shadow:0 10px 26px rgba(2,6,23,.08);
  overflow:hidden;
  padding:1rem 1.1rem 1.1rem 1.1rem;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.ga-docs--v2 .ga-doc-card::before{
  /* smalle gouden strook links */
  content:""; position:absolute; inset:0 auto 0 0; width:6px;
  background: linear-gradient(180deg, var(--gold), #b18a42);
}
.ga-docs--v2 .ga-doc-card:hover{
  transform: translateY(-2px);
  box-shadow:0 16px 36px rgba(2,6,23,.12);
  border-color:#d9c7b6;
}

/* PDF ribbon */
.ga-docs--v2 .ga-ribbon{
  position:absolute; right:10px; top:10px;
  font-size:.72rem; font-weight:800; letter-spacing:.03em;
  color:#fff; background:linear-gradient(180deg, var(--gold), #b18a42);
  padding:.25rem .5rem; border-radius:6px;
  box-shadow:0 6px 14px rgba(178,146,80,.28);
}

/* Kopblok */
.ga-docs--v2 .ga-doc-top{ padding-left:.25rem; }
.ga-docs--v2 .ga-coin{
  width:52px; height:52px; display:grid; place-items:center;
  border-radius:999px; margin-bottom:.4rem;
  background:#fff; border:2px solid var(--gold);
  box-shadow:0 8px 20px rgba(2,6,23,.10);
}
.ga-docs--v2 .ga-coin svg{ width:22px; height:22px; fill:var(--gold); }

.ga-docs--v2 .ga-doc-h{
  margin:.1rem 0 .15rem; font-weight:800; color:var(--ink);
  font-size:1.05rem;
}
.ga-docs--v2 .ga-doc-sub{
  margin:0 0 .5rem; color:var(--muted); font-size:.92rem;
}

/* Actiezone onderin (blijft onderaan) */
.ga-docs--v2 .ga-doc-actions{
  margin-top:auto; display:flex; gap:.6rem; flex-wrap:wrap; align-items:center;
}

/* Knoppen – match met je GA!-knoppen */
.ga-docs--v2 .ga-btn{
  display:inline-flex; align-items:center; justify-content:center;
  border-radius:999px; padding:.55rem .95rem; font-weight:800; font-size:.95rem; line-height:1;
  border:2px solid var(--gold); color:#fff;
  background: linear-gradient(180deg, var(--gold), #b18a42);
  text-decoration:none; box-shadow:0 8px 18px rgba(178,146,80,.20);
  transition: filter .12s ease, transform .12s ease, box-shadow .12s ease, background-position .35s ease;
}
.ga-docs--v2 .ga-btn:hover, .ga-docs--v2 .ga-btn:focus{
  filter:brightness(1.06); transform: translateY(-1px); outline:none;
}
.ga-docs--v2 .ga-btn--ghost{
  background:#fff; color:var(--ink);
  border-color: var(--line); box-shadow:0 6px 14px rgba(2,6,23,.06);
}
.ga-docs--v2 .ga-btn--ghost:hover, .ga-docs--v2 .ga-btn--ghost:focus{
  background:#fffdf6; border-color:var(--gold);
}

/* Preview (details) */
.ga-docs--v2 .ga-doc-preview{ margin-left:auto; }
.ga-docs--v2 .ga-btn--summary{ cursor:pointer; position:relative; padding-right:2rem; }
.ga-docs--v2 .ga-btn--summary::after{
  content:"▾"; position:absolute; right:.75rem; top:50%; transform:translateY(-50%);
  font-weight:900; color:#fff;
}
.ga-docs--v2 .ga-btn--ghost.ga-btn--summary::after{ color:var(--ink); }
.ga-docs--v2 .ga-doc-preview[open] .ga-btn--summary::after{ content:"▴"; }

.ga-docs--v2 .ga-preview-frame{
  margin-top:.65rem; border:1px solid var(--line); border-radius:12px; overflow:hidden;
  box-shadow:0 10px 24px rgba(2,6,23,.08);
}
.ga-docs--v2 .ga-preview-frame object{
  width:100%; height: clamp(420px, 60vh, 640px);
  display:block; background:#fff;
}
/* === GA! CTA FUN — Megaphone met woorden i.p.v. waves === */
/* Tweakbare woorden */
.ga-cta-fun .ga-btn-updates{
  --mega-w: 38px;              /* breedte megaphone-icoon */
  --mega-start-bottom: -12px;  /* start achter de knop */
  --mega-pop: 52px;            /* pop-hoogte */
  --mouth-x: 19px;             /* mond-offset t.o.v. center icoon (horizontaal) */
  --mouth-y: 6px;              /* mond-offset (verticaal) */

  /* woorden die we laten “uitspreken” */
  --word-1: "Update!";
  --word-2: "News!";
  --word-3: "Go!";
}

/* Megaphone blijft zoals eerder (zwart), onzichtbaar vóór hover */
.ga-cta-fun .ga-btn-updates::before{
  content:"";
  position:absolute; left:50%; bottom:var(--mega-start-bottom);
  width:var(--mega-w); height:var(--mega-w); z-index:3; opacity:0; pointer-events:none;
  transform:translate(-50%,0) rotate(-6deg) scale(1);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='38' height='38' viewBox='0 0 24 24'%3E%3Cpath d='M3 10v4l9 3V7l-9 3z' fill='%23141414'/%3E%3Cpath d='M12 7h8v10h-8z' fill='%23141414'/%3E%3Crect x='7' y='14' width='2.6' height='5' rx='1' transform='rotate(-20 8.3 16.5)' fill='%23141414'/%3E%3C/svg%3E");
  background-size:contain; background-repeat:no-repeat;
}

/* Woorden i.p.v. waves — exact geankerd aan de mond van de megafoon */
.ga-cta-fun .ga-btn-updates::after{
  position:absolute;
  left: calc(50% + var(--mouth-x));
  bottom: calc(var(--mega-start-bottom) + var(--mega-pop) + var(--mouth-y));
  z-index:3; pointer-events:none; opacity:0;

  /* tekststijl van de “woorden” */
  font-weight:900; font-size:14px; line-height:1;
  color:#B29250;                    /* GA! goud */
  text-shadow:
    0 0 0.5px #000,
    0 1px 0 rgba(0,0,0,.25);        /* subtiele leesbaarheid */

  /* startpositie exact op de mond */
  transform: translate(0,0) rotate(-4deg) scale(1);

  /* ruim eventueel oude background/waves op */
  background:none !important;
  width:auto; height:auto;
  content: var(--word-1);           /* eerste woord */
}

/* Animaties: megaphone pop + woorden die “uitwaaieren” en wisselen */
@keyframes megaPopWords{
  0%   { opacity:0; transform:translate(-50%,0) rotate(-8deg) scale(.9); }
  28%  { opacity:1; transform:translate(-50%, calc(-1 * var(--mega-pop))) rotate(-4deg) scale(1.06); }
  65%  { opacity:1; transform:translate(-50%, calc(-1 * var(--mega-pop))) rotate(-4deg) scale(1.06); }
  100% { opacity:0; transform:translate(-50%, 10px) rotate(-8deg) scale(.9); }
}

/* De woorden bewegen van de mond naar rechtsboven en vervagen */
@keyframes wordsFloat{
  0%   { transform: translate(0,0) rotate(-4deg) scale(1);   opacity:0;   }
  12%  {                                                     opacity:1;   }
  60%  { transform: translate(26px, -14px) rotate(-2deg) scale(1.12);     }
  100% { transform: translate(52px, -22px) rotate(0deg)  scale(1.18); opacity:0; }
}

/* Wissel de content (3 woorden) terwijl het element beweegt */
@keyframes wordsSwap{
  0%,33%   { content: var(--word-1); }
  34%,66%  { content: var(--word-2); }
  67%,100% { content: var(--word-3); }
}

/* Triggers */
.ga-cta-fun .ga-btn-updates:hover::before,
.ga-cta-fun .ga-btn-updates:focus::before{
  animation: megaPopWords 1.15s ease-out both;
}
.ga-cta-fun .ga-btn-updates:hover::after,
.ga-cta-fun .ga-btn-updates:focus::after{
  animation:
    wordsFloat 1.15s ease-out both,
    wordsSwap 1.15s steps(1, end) both;   /* discrete content-switch */
}

/* Toegankelijkheid */
.ga-cta-fun .ga-btn:focus-visible{ outline:2px solid #E3BF7E; outline-offset:2px; }
@media (prefers-reduced-motion: reduce){
  .ga-cta-fun .ga-btn-updates:hover::before,
  .ga-cta-fun .ga-btn-updates:hover::after{ animation:none; opacity:1; }
}
/* === GA! CTA FUN — Hard reset: geen pseudo-elementen tenzij op hover === */
.ga-cta-fun .ga-btn::before,
.ga-cta-fun .ga-btn::after{
  content: none;           /* niets tekenen standaard */
  opacity: 0;
  pointer-events: none;
}

/* ---------------- CONTACT — envelop alleen op hover/focus ---------------- */
.ga-cta-fun .ga-btn-contact{ padding-left:1.4rem; }

/* Envelop */
.ga-cta-fun .ga-btn-contact:hover::before,
.ga-cta-fun .ga-btn-contact:focus::before{
  content: "";
  position: absolute; left: -30px; top: 50%;
  width: 26px; height: 18px; z-index: 2;
  transform: translateY(-50%) rotate(0);
  opacity: 0;  /* start transparant, wordt zichtbaar in animatie */
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='20' viewBox='0 0 28 20'%3E%3Crect x='1' y='1' width='26' height='18' rx='3' ry='3' fill='none' stroke='%23141414' stroke-width='2'/%3E%3Cpath d='M2 4 L14 12 L26 4' stroke='%23B29250' stroke-width='2' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-size: contain; background-repeat: no-repeat;
  animation: mailFly 1.1s ease-in forwards;
}

/* Contrail */
.ga-cta-fun .ga-btn-contact:hover::after,
.ga-cta-fun .ga-btn-contact:focus::after{
  content: "";
  position: absolute; left: -78px; top: 50%;
  width: 78px; height: 10px; z-index: 1;
  transform: translateY(-50%);
  opacity: 0;
  background: repeating-linear-gradient(90deg, rgba(178,146,80,.9) 0 10px, rgba(178,146,80,0) 10px 18px);
  filter: blur(.2px);
  animation: mailTrail 1.1s ease-in forwards;
}

/* Vluchtanimaties */
@keyframes mailFly{
  0%   { transform: translate(0,-50%) rotate(0);    opacity:0; }
  10%  { opacity:.98; }
  55%  { transform: translate(120%,-170%) rotate(-18deg); opacity:.92; }
  100% { transform: translate(260%,-260%) rotate(-26deg);  opacity:0; }
}
@keyframes mailTrail{
  0%   { transform: translate(0,-50%);   opacity:0; }
  12%  { transform: translate(12%,-50%); opacity:.7; }
  72%  { transform: translate(110%,-50%);opacity:.45; }
  100% { transform: translate(220%,-50%);opacity:0; }
}

/* --------------- UPDATES — megaphone + woorden exact uit de mond --------------- */
.ga-cta-fun .ga-btn-updates{
  --mega-w: 38px;             /* breedte icoon */
  --mega-start-bottom: -12px; /* start “achter” de knop */
  --mega-pop: 52px;           /* hoogte pop */
  --mouth-x: 19px;            /* mond offset t.o.v. center icoon */
  --mouth-y: 6px;             /* mond verticaal fine-tune */
  --word-1: "Update!";
  --word-2: "News!";
  --word-3: "Go!";
}

/* Megaphone alleen op hover/focus */
.ga-cta-fun .ga-btn-updates:hover::before,
.ga-cta-fun .ga-btn-updates:focus::before{
  content: "";
  position: absolute; left: 50%; bottom: var(--mega-start-bottom);
  width: var(--mega-w); height: var(--mega-w); z-index: 3;
  transform: translate(-50%,0) rotate(-6deg) scale(1);
  opacity: 0;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='38' height='38' viewBox='0 0 24 24'%3E%3Cpath d='M3 10v4l9 3V7l-9 3z' fill='%23141414'/%3E%3Cpath d='M12 7h8v10h-8z' fill='%23141414'/%3E%3Crect x='7' y='14' width='2.6' height='5' rx='1' transform='rotate(-20 8.3 16.5)' fill='%23141414'/%3E%3C/svg%3E");
  background-size: contain; background-repeat: no-repeat;
  animation: megaPopWords 1.15s ease-out both;
}

/* Woorden alleen op hover/focus + exact geankerd aan mond */
.ga-cta-fun .ga-btn-updates:hover::after,
.ga-cta-fun .ga-btn-updates:focus::after{
  content: var(--word-1);
  position: absolute;
  left: calc(50% + var(--mouth-x));
  bottom: calc(var(--mega-start-bottom) + var(--mega-pop) + var(--mouth-y));
  z-index: 3;
  font-weight: 900; font-size: 14px; line-height: 1;
  color: #B29250;
  text-shadow: 0 0 .5px #000, 0 1px 0 rgba(0,0,0,.25);
  transform: translate(0,0) rotate(-4deg) scale(1);
  opacity: 0;
  animation:
    wordsFloat 1.15s ease-out both,
    wordsSwap 1.15s steps(1, end) both;
}

/* Pop + woorden */
@keyframes megaPopWords{
  0%   { opacity:0; transform:translate(-50%,0) rotate(-8deg) scale(.9); }
  28%  { opacity:1; transform:translate(-50%, calc(-1 * var(--mega-pop))) rotate(-4deg) scale(1.06); }
  65%  { opacity:1; transform:translate(-50%, calc(-1 * var(--mega-pop))) rotate(-4deg) scale(1.06); }
  100% { opacity:0; transform:translate(-50%, 10px) rotate(-8deg) scale(.9); }
}
@keyframes wordsFloat{
  0%   { transform: translate(0,0) rotate(-4deg) scale(1);   opacity:0; }
  12%  {                                                     opacity:1; }
  60%  { transform: translate(26px, -14px) rotate(-2deg) scale(1.12); }
  100% { transform: translate(52px, -22px) rotate(0)     scale(1.18); opacity:0; }
}
@keyframes wordsSwap{
  0%,33%   { content: var(--word-1); }
  34%,66%  { content: var(--word-2); }
  67%,100% { content: var(--word-3); }
}
/* Kill any theme pseudo-elements on GA CTA buttons */
.ga-cta-fun .ga-btn::before,
.ga-cta-fun .ga-btn::after,
.ga-cta-fun .wp-block-button__link::before,
.ga-cta-fun .wp-block-button__link::after,
.ga-cta-fun .wp-element-button::before,
.ga-cta-fun .wp-element-button::after{
  content:none !important;
  opacity:0 !important;
  background:none !important;
  box-shadow:none !important;
  border:none !important;
}
/* Kill stray theme icons ONLY on Donate + Contact anchors (keep our parent hover FX) */
.ga-cta-fun a.wp-block-button__link[href^="https://gathinktank.com/donation"]::before,
.ga-cta-fun a.wp-block-button__link[href^="https://gathinktank.com/donation"]::after,
.ga-cta-fun a.wp-block-button__link[href^="https://gathinktank.com/about/contact"]::before,
.ga-cta-fun a.wp-block-button__link[href^="https://gathinktank.com/about/contact"]::after,
.ga-cta-fun a.wp-element-button[href^="https://gathinktank.com/donation"]::before,
.ga-cta-fun a.wp-element-button[href^="https://gathinktank.com/donation"]::after,
.ga-cta-fun a.wp-element-button[href^="https://gathinktank.com/about/contact"]::before,
.ga-cta-fun a.wp-element-button[href^="https://gathinktank.com/about/contact"]::after{
  content: none !important;
  background: none !important;
  border: 0 !important;
  box-shadow: none !important;
  opacity: 0 !important;
  display: none !important;
}
/* === CTA animations — markup-based (matches your HTML) ================== */
/* CONTACT – flying envelope */
.ga-cta-fun .ga-btn.ga-btn-contact{ position:relative; overflow:visible; }
.ga-cta-fun .ga-btn-contact .ga-env{
  position:absolute; left:-38px; top:50%; width:90px; height:24px;
  transform:translateY(-50%); pointer-events:none; z-index:3;
}
.ga-cta-fun .ga-btn-contact .env-icon{
  position:absolute; left:0; top:50%; width:26px; height:18px;
  transform:translateY(-50%) rotate(0); opacity:0;
  background:no-repeat 50% 50%/contain;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='20' viewBox='0 0 28 20'%3E%3Crect x='1' y='1' width='26' height='18' rx='3' ry='3' fill='none' stroke='%23141414' stroke-width='2'/%3E%3Cpath d='M2 4 L14 12 L26 4' stroke='%23B29250' stroke-width='2' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
.ga-cta-fun .ga-btn-contact .env-trail{
  position:absolute; left:-62px; top:50%; width:62px; height:10px;
  transform:translateY(-50%); opacity:0; filter:blur(.2px); z-index:2;
  background:repeating-linear-gradient(90deg, rgba(178,146,80,.9) 0 10px, rgba(178,146,80,0) 10px 18px);
}
@keyframes envFly{
  0%{transform:translate(0,-50%) rotate(0); opacity:0;}
  12%{opacity:.98;}
  55%{transform:translate(120%,-170%) rotate(-18deg); opacity:.92;}
  100%{transform:translate(260%,-260%) rotate(-26deg); opacity:0;}
}
@keyframes envTrail{
  0%{transform:translate(0,-50%); opacity:0;}
  15%{transform:translate(12%,-50%); opacity:.7;}
  72%{transform:translate(110%,-50%); opacity:.45;}
  100%{transform:translate(220%,-50%); opacity:0;}
}
.ga-cta-fun .ga-btn-contact:hover .env-icon,
.ga-cta-fun .ga-btn-contact:focus .env-icon{ animation:envFly 1.05s ease-in forwards; }
.ga-cta-fun .ga-btn-contact:hover .env-trail,
.ga-cta-fun .ga-btn-contact:focus .env-trail{ animation:envTrail 1.05s ease-in forwards; }

/* UPDATES – megaphone + 3 popping words */
.ga-cta-fun .ga-btn.ga-btn-updates{ position:relative; overflow:visible; }
.ga-cta-fun .ga-btn-updates .ga-mega{ position:absolute; left:50%; bottom:-12px; width:0; height:0; transform:translateX(-50%); pointer-events:none; }
.ga-cta-fun .ga-btn-updates .mega-icon{
  position:absolute; left:50%; bottom:-12px; width:38px; height:38px; opacity:0;
  transform:translate(-50%,0) rotate(-6deg) scale(1);
  background:no-repeat 50% 50%/contain;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='38' height='38' viewBox='0 0 24 24'%3E%3Cpath d='M3 10v4l9 3V7l-9 3z' fill='%23141414'/%3E%3Cpath d='M12 7h8v10h-8z' fill='%23141414'/%3E%3Crect x='7' y='14' width='2.6' height='5' rx='1' transform='rotate(-20 8.3 16.5)' fill='%23141414'/%3E%3C/svg%3E");
}
.ga-cta-fun .ga-btn-updates .mega-words{ position:absolute; left:50%; bottom:40px; pointer-events:none; }
.ga-cta-fun .ga-btn-updates .mega-words .w{
  position:absolute; left:18px; bottom:6px; opacity:0; white-space:nowrap;
  font-weight:900; font-size:14px; line-height:1; color:#B29250;
  text-shadow:0 0 .5px #000, 0 1px 0 rgba(0,0,0,.25);
}
@keyframes megaPop{
  0%{opacity:0; transform:translate(-50%,0) rotate(-8deg) scale(.9);}
  28%{opacity:1; transform:translate(-50%,-52px) rotate(-4deg) scale(1.06);}
  65%{opacity:1; transform:translate(-50%,-52px) rotate(-4deg) scale(1.06);}
  100%{opacity:0; transform:translate(-50%,10px) rotate(-8deg) scale(.9);}
}
@keyframes wordFloat{
  0%{opacity:0; transform:translate(0,0) rotate(-4deg) scale(1);}
  12%{opacity:1;}
  60%{transform:translate(26px,-14px) rotate(-2deg) scale(1.12);}
  100%{opacity:0; transform:translate(52px,-22px) rotate(0) scale(1.18);}
}
.ga-cta-fun .ga-btn-updates:hover .mega-icon,
.ga-cta-fun .ga-btn-updates:focus .mega-icon{ animation:megaPop 1.15s ease-out both; }
.ga-cta-fun .ga-btn-updates:hover .mega-words .w1,
.ga-cta-fun .ga-btn-updates:focus .mega-words .w1{ animation:wordFloat 1.15s ease-out both; animation-delay:.05s; }
.ga-cta-fun .ga-btn-updates:hover .mega-words .w2,
.ga-cta-fun .ga-btn-updates:focus .mega-words .w2{ animation:wordFloat 1.15s ease-out both; animation-delay:.28s; }
.ga-cta-fun .ga-btn-updates:hover .mega-words .w3,
.ga-cta-fun .ga-btn-updates:focus .mega-words .w3{ animation:wordFloat 1.15s ease-out both; animation-delay:.52s; }

/* Keep them disabled ONLY in the 'Why give to us' box, as requested */
#ga-why-give .ga-cta-fun .ga-btn-contact{ display:none !important; }
#ga-why-give .ga-cta-fun .ga-btn-contact .ga-env,
#ga-why-give .ga-cta-fun .ga-btn-contact .env-icon,
#ga-why-give .ga-cta-fun .ga-btn-contact .env-trail{ display:none !important; }
/* === Why give to us — center heart, remove circle === */
#ga-why-give .ga-ico{
  display:inline-grid !important;
  place-items:center !important;
  width:28px !important;
  height:28px !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  line-height:0 !important;
}
#ga-why-give .ga-ico svg{
  display:block;
  width:28px !important;
  height:28px !important;
}
/* ===== Strapline (tiny fix) ===== */
.ga-strapline{
  max-width:1100px; margin:0 auto 8px; text-align:center; /* <- fixed */
  font-family:"Libre Baskerville", Georgia, serif;
  font-size:calc(.6rem + 1.2vw);
  line-height:1.55; color:#fff;
}

/* ===== ANBI — per-card hover animations (no images, no HTML) ===== */
.ga-cards .ga-card{ position:relative; overflow:visible; }
.ga-cards .ga-card .ga-card-h{ position:relative; }

/* Shared subtle sweep on hover */
.ga-cards .ga-card::before{
  content:""; position:absolute; inset:0 auto 0 -30%;
  width:30%; background:linear-gradient(90deg,rgba(227,191,126,.0),rgba(227,191,126,.22),rgba(227,191,126,.0));
  transform:skewX(-12deg) translateX(-140%); opacity:0; pointer-events:none;
}
.ga-cards .ga-card:hover::before{
  animation: gaSweep 700ms ease-out forwards;
}
@keyframes gaSweep{
  0%{ transform:skewX(-12deg) translateX(-140%); opacity:0; }
  20%{ opacity:1; }
  100%{ transform:skewX(-12deg) translateX(320%); opacity:0; }
}

/* ---------- Card 1: One-off gifts (✓ tick pops in) ---------- */
.ga-cards .ga-card:nth-child(1)::after{
  content:"✓";
  position:absolute; top:10px; right:12px;
  width:28px; height:28px; border-radius:999px;
  display:grid; place-items:center;
  font:700 16px/1 system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  color:#0f5132; background:#d1e7dd; border:2px solid #b6dfc8;
  box-shadow:0 6px 14px rgba(15,81,50,.18);
  transform:scale(.6) translateY(-6px); opacity:0;
}
.ga-cards .ga-card:nth-child(1):hover::after{
  animation: gaTickPop .55s cubic-bezier(.2,.9,.25,1.2) forwards;
}
@keyframes gaTickPop{
  0%{ transform:scale(.6) translateY(-6px); opacity:0; }
  50%{ transform:scale(1.12) translateY(0); opacity:1; }
  70%{ transform:scale(.96); }
  100%{ transform:scale(1); opacity:1; }
}

/* ---------- Card 2: Periodic gifts (📆 calendar bounces twice) ---------- */
.ga-cards .ga-card:nth-child(2)::after{
  content:"📆";
  position:absolute; top:8px; right:10px;
  font-size:22px; line-height:1; filter:drop-shadow(0 6px 10px rgba(0,0,0,.15));
  transform:translateY(-6px) rotate(-6deg); opacity:.0;
}
.ga-cards .ga-card:nth-child(2):hover::after{
  animation: gaCalendarBounce 900ms ease-out forwards;
}
@keyframes gaCalendarBounce{
  0%{   transform:translateY(-10px) rotate(-10deg) scale(.9); opacity:0; }
  20%{  transform:translateY(0) rotate(-2deg)  scale(1.06); opacity:1; }
  40%{  transform:translateY(-6px) rotate(2deg)  scale(.98); }
  60%{  transform:translateY(0) rotate(0deg)   scale(1.04); }
  80%{  transform:translateY(-3px) rotate(-1deg) scale(1.0); }
  100%{ transform:translateY(0) rotate(0deg)   scale(1.0); opacity:1; }
}

/* ---------- Card 3: Gift & inheritance tax (🛡️ shield glow) ---------- */
.ga-cards .ga-card:nth-child(3)::after{
  content:"🛡️";
  position:absolute; top:6px; right:10px;
  font-size:22px; line-height:1;
  text-shadow:0 0 0 rgba(0,0,0,0);
  opacity:.0;
}
.ga-cards .ga-card:nth-child(3):hover::after{
  animation: gaShieldGlow 1.1s ease-out forwards;
}
@keyframes gaShieldGlow{
  0%{   opacity:0;   text-shadow:0 0 0 rgba(178,146,80,0); transform:scale(.9) rotate(-4deg); }
  30%{  opacity:1;   text-shadow:0 0 14px rgba(178,146,80,.45); transform:scale(1.06) rotate(0deg); }
  60%{  opacity:1;   text-shadow:0 0 10px rgba(178,146,80,.28); transform:scale(1.02); }
  100%{ opacity:1;   text-shadow:0 0 0 rgba(178,146,80,0); transform:scale(1); }
}

/* Small accessibility nicety: reduce motion if requested */
@media (prefers-reduced-motion: reduce){
  .ga-cards .ga-card:hover::before,
  .ga-cards .ga-card:nth-child(1):hover::after,
  .ga-cards .ga-card:nth-child(2):hover::after,
  .ga-cards .ga-card:nth-child(3):hover::after{
    animation:none !important;
    opacity:1;
    transform:none;
  }
}
/* Tiny fix you mentioned earlier */
.ga-strapline{ text-align:center; } /* was 'cxenter' */

/* Make sure effects never spill outside the cards */
.ga-cards .ga-card{
  position:relative;
  overflow:hidden;           /* keeps animations inside the column/card */
  border-radius:12px;        /* matches your existing card radius */
}

/* Kill any earlier generic sweep if present */
.ga-cards .ga-card::before{ content:none; }

/* =========================
   CARD 1 — One-off gifts
   Subtle gold underline grows + soft ✓ appears
   ========================= */
.ga-cards .ga-card:nth-child(1) .ga-card-h{
  position:relative;
  padding-bottom:6px;        /* room for underline */
}
.ga-cards .ga-card:nth-child(1) .ga-card-h::after{
  content:"";
  position:absolute; left:0; bottom:0; height:2px; width:100%;
  background:linear-gradient(90deg,#B29250,#E3BF7E);
  transform:scaleX(0); transform-origin:left;
  transition:transform .35s ease;
}
.ga-cards .ga-card:nth-child(1)::after{
  content:"✓";
  position:absolute; top:10px; right:12px;
  width:26px; height:26px; border-radius:999px;
  display:grid; place-items:center;
  font:700 15px/1 system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  color:#0f5132; background:#d1e7dd; border:2px solid #b6dfc8;
  box-shadow:0 6px 12px rgba(15,81,50,.16);
  opacity:0; transform:translateY(-4px) scale(.95);
  transition:opacity .25s ease, transform .25s ease;
}
.ga-cards .ga-card:nth-child(1):hover .ga-card-h::after{
  transform:scaleX(1);
}
.ga-cards .ga-card:nth-child(1):hover::after{
  opacity:1; transform:translateY(0) scale(1);
}

/* =========================
   CARD 2 — Periodic gifts
   Gentle vertical cadence lines fade in + small 📆 nudge
   ========================= */
.ga-cards .ga-card:nth-child(2)::before{
  content:"";
  position:absolute; inset:6px;                /* stays within card padding */
  border-radius:10px;
  background:repeating-linear-gradient(
    90deg,
    rgba(178,146,80,.08) 0 1px,
    transparent 1px 7px
  );
  opacity:0;
  transition:opacity .35s ease;
}
.ga-cards .ga-card:nth-child(2)::after{
  content:"📆";
  position:absolute; top:10px; right:10px;
  font-size:20px; line-height:1;
  filter:drop-shadow(0 4px 8px rgba(0,0,0,.12));
  transform:translateY(0) rotate(0deg);
  transition:transform .30s ease, opacity .30s ease;
  opacity:.85;
}
.ga-cards .ga-card:nth-child(2):hover::before{
  opacity:.35;               /* very subtle */
}
.ga-cards .ga-card:nth-child(2):hover::after{
  transform:translateY(-2px) rotate(-3deg);
}

/* =========================
   CARD 3 — Gift & inheritance tax
   Soft corner glow from bottom-right + 🛡️ gentle scale
   ========================= */
.ga-cards .ga-card:nth-child(3)::before{
  content:"";
  position:absolute; right:0; bottom:0;
  width:60%; height:60%;
  background:
    radial-gradient(120px 120px at 100% 100%,
      rgba(227,191,126,.28), rgba(227,191,126,0) 60%);
  opacity:0; pointer-events:none;
  transition:opacity .4s ease;
}
.ga-cards .ga-card:nth-child(3)::after{
  content:"🛡️";
  position:absolute; top:8px; right:10px;
  font-size:20px; line-height:1;
  text-shadow:0 0 0 rgba(178,146,80,0);
  transform:scale(1);
  opacity:.9;
  transition:transform .25s ease, text-shadow .35s ease, opacity .25s ease;
}
.ga-cards .ga-card:nth-child(3):hover::before{ opacity:.55; }
.ga-cards .ga-card:nth-child(3):hover::after{
  transform:scale(1.06);
  text-shadow:0 0 10px rgba(178,146,80,.28);
}

/* Respect users who prefer less motion */
@media (prefers-reduced-motion: reduce){
  .ga-cards .ga-card *{ transition:none !important; }
  .ga-cards .ga-card:nth-child(1) .ga-card-h::after{ transform:scaleX(1); }
  .ga-cards .ga-card:nth-child(1)::after,
  .ga-cards .ga-card:nth-child(2)::before,
  .ga-cards .ga-card:nth-child(3)::before{ opacity:.3; }
}
/* PATCH: hide calendar/shield until hover (Card 2 & 3) */
.ga-cards .ga-card:nth-child(2)::after,
.ga-cards .ga-card:nth-child(3)::after{
  opacity:0;                         /* hidden by default */
  transform:translateY(2px) scale(.98);
  transition:transform .30s ease, opacity .30s ease;
}

/* Card 2 — show calendar gently on hover */
.ga-cards .ga-card:nth-child(2):hover::after{
  opacity:1;
  transform:translateY(-2px) rotate(-3deg) scale(1);
}

/* Card 3 — show shield gently on hover */
.ga-cards .ga-card:nth-child(3):hover::after{
  opacity:1;
  transform:scale(1.06);
}

/* Optional: reduced-motion users still see a faint hint */
@media (prefers-reduced-motion: reduce){
  .ga-cards .ga-card:nth-child(2)::after,
  .ga-cards .ga-card:nth-child(3)::after{
    opacity:.35;
    transform:none;
    transition:none;
  }
}
/* ===== GA! Donation — tokens ===== */
.ga-donate{ --ink:#141414; --muted:#6b5f57; --line:#CCBAA9; --gold:#B29250; --gold2:#E3BF7E; }

/* ===== Hero ===== */
.ga-donate-hero{ text-align:center; margin:0 auto 1.6rem; }
.ga-donate-title{
  margin:.2rem auto .6rem;
  font-family:"Playfair Display SC", serif;
  letter-spacing:.02em;
  color:var(--gold);
  background:linear-gradient(90deg,var(--gold),var(--gold2),var(--gold));
  -webkit-background-clip:text;
  text-shadow:0 1px 0 rgba(0,0,0,.06);
  display:inline-block;
}
.ga-donate-lede{
  margin:0 auto;
  max-width:72ch;
  font-size:1.075rem;
  line-height:1.7;
  color:var(--ink);
}

/* ===== Impact cards ===== */
.ga-impact-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1rem;
  margin:1.2rem auto 2rem;
}
@media (max-width:980px){ .ga-impact-grid{ grid-template-columns:1fr; } }

.ga-impact-card{
  position:relative;
  border:1px solid var(--line);
  border-radius:14px;
  background:linear-gradient(180deg,#fff,#fffdf9);
  box-shadow:0 10px 24px rgba(2,6,23,.08);
  padding:1.05rem 1.2rem 1.1rem;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
  overflow:hidden;
}
.ga-impact-card .ga-ico{
  width:46px; height:46px; display:grid; place-items:center;
  border-radius:999px; background:#fff; border:2px solid var(--gold);
  box-shadow:0 8px 18px rgba(2,6,23,.10); margin:0 0 .45rem;
}
.ga-impact-card h3{ margin:.1rem 0 .25rem; font-weight:800; color:var(--ink); }
.ga-impact-card p{ margin:0; color:var(--muted); }

/* micro hover */
.ga-impact-card:hover{
  transform:translateY(-2px);
  border-color:#d9c7b6;
  box-shadow:0 16px 36px rgba(2,6,23,.12);
}

/* ===== Ways to give ===== */
.ga-ways-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1rem;
  align-items:stretch;
}
@media (max-width:1100px){ .ga-ways-grid{ grid-template-columns:1fr 1fr; } }
@media (max-width:760px){ .ga-ways-grid{ grid-template-columns:1fr; } }

.ga-way{
  position:relative;
  border:1px solid var(--line);
  border-radius:16px;
  background:linear-gradient(180deg,#ffffff,#fffdf9);
  box-shadow:0 12px 28px rgba(2,6,23,.08);
  padding:1rem 1.15rem 1.15rem;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
  overflow:hidden;
}
.ga-way:hover{ transform:translateY(-2px); border-color:#d9c7b6; box-shadow:0 18px 38px rgba(2,6,23,.12); }

.ga-way-head h3{
  margin:.1rem 0 .15rem; font-weight:800; color:var(--ink); position:relative;
}
.ga-way-head h3::after{
  content:""; position:absolute; left:0; bottom:-6px; width:30px; height:2px;
  background:linear-gradient(90deg,var(--gold),var(--gold2)); border-radius:2px;
}
.ga-way .ga-sub{ margin:.45rem 0 .65rem; color:var(--muted); }

/* Buttons */
.ga-btn{
  display:inline-flex; align-items:center; justify-content:center;
  border-radius:999px;
  padding:.62rem 1rem;
  font-weight:800; font-size:.95rem; line-height:1;
  color:#fff; text-decoration:none;
  border:2px solid var(--gold);
  background:linear-gradient(180deg,var(--gold),#b18a42);
  box-shadow:0 8px 18px rgba(178,146,80,.20);
  transition:filter .12s ease, transform .12s ease, background-position .35s ease;
  background-image:
    linear-gradient(180deg,var(--gold),#b18a42),
    linear-gradient(90deg,transparent 0%, rgba(255,255,255,.7) 50%, transparent 100%);
  background-size:100% 100%, 240% 100%;
  background-position:0 0, -200% 0;
}
.ga-btn:hover{ filter:brightness(1.06); transform:translateY(-1px); background-position:0 0, 200% 0; }
.ga-btn--ghost{ color:var(--ink); background:#fff; border-color:var(--line); box-shadow:0 6px 14px rgba(2,6,23,.06); }
.ga-btn--ghost:hover{ background:#fffdf6; border-color:var(--gold); }

/* QR card */
.ga-way-qr .ga-qr{
  display:grid; place-items:center;
  border:1px dashed var(--line);
  border-radius:12px;
  padding:.9rem;
  background:#fff;
  box-shadow:inset 0 0 0 9999px rgba(227,191,126,.03);
  transition:border-color .2s ease, box-shadow .2s ease;
}
.ga-way-qr .ga-qr img{
  width:min(300px,72%); height:auto; display:block;
  filter:drop-shadow(0 6px 18px rgba(2,6,23,.12));
}
.ga-way-qr:hover .ga-qr{
  border-color:#d9c7b6;
  box-shadow:inset 0 0 0 9999px rgba(227,191,126,.06);
}

/* Bank list */
.ga-bank-list{
  list-style:none; margin:.2rem 0 .75rem; padding:0;
  border:1px solid var(--line); border-radius:12px; background:#fff;
  box-shadow:0 8px 18px rgba(2,6,23,.06);
}
.ga-bank-list li{
  display:grid; grid-template-columns:140px 1fr; gap:.6rem;
  padding:.55rem .8rem; border-bottom:1px solid #eee7df;
}
.ga-bank-list li:last-child{ border-bottom:0; }
.ga-bank-list .k{ font-weight:700; color:var(--ink); }
.ga-bank-list .v{ color:var(--muted); }

/* Monthly / periodic */
.ga-monthly{ position:relative; padding:.2rem 0 .3rem; }
.ga-monthly .ga-pill{
  display:inline-block;
  font:700 .74rem/1 system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  padding:.35rem .55rem; border-radius:999px; letter-spacing:.02em;
  color:#7a5a1f; background:linear-gradient(180deg,#ffeec5,#ffe5a4);
  border:1px solid #e9d1a1; box-shadow:0 6px 14px rgba(178,146,80,.18);
  margin:0 0 .5rem;
}

/* Decorative edge for each “way” */
.ga-way::before{
  content:""; position:absolute; inset:0 auto 0 0; width:6px;
  background:linear-gradient(180deg,var(--gold),#b18a42);
}

/* Subtle floating hint on hover (kept inside card bounds) */
.ga-way:hover .ga-way-head h3{ text-shadow:0 1px 0 rgba(0,0,0,.05); }

/* Accessibility */
.ga-btn:focus-visible{ outline:2px solid var(--gold2); outline-offset:2px; }
/* ===== GA! Donation — tokens ===== */
.ga-donate{ --ink:#141414; --muted:#6b5f57; --line:#CCBAA9; --gold:#B29250; --gold2:#E3BF7E; }

/* ===== Hero ===== */
.ga-donate-hero{ text-align:center; margin:0 auto 1.6rem; }
.ga-donate-title{
  margin:.2rem auto .6rem;
  font-family:"Playfair Display SC", serif;
  letter-spacing:.02em;
  color:var(--gold);
  background:linear-gradient(90deg,var(--gold),var(--gold2),var(--gold));
  -webkit-background-clip:text;
  text-shadow:0 1px 0 rgba(0,0,0,.06);
  display:inline-block;
}
.ga-donate-lede{
  margin:0 auto;
  max-width:72ch;
  font-size:1.075rem;
  line-height:1.7;
  color:var(--ink);
}

/* ===== Callout: It’s not possible without you ===== */
.ga-donate-callout{ margin:1.1rem auto 1.8rem; }
.ga-callout{
  position:relative;
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:.9rem;
  align-items:center;
  border:1px solid var(--line);
  border-radius:16px;
  background:linear-gradient(180deg,#fff,#fffdf9);
  box-shadow:0 14px 28px rgba(2,6,23,.10);
  padding: .9rem 1rem;
  overflow:hidden;
}
.ga-callout::before{
  content:"";
  position:absolute; inset:-40% -40% auto -40%;
  height:180%;
  background:radial-gradient(120px 60px at 20% 40%, rgba(227,191,126,.18), transparent 60%),
             radial-gradient(140px 70px at 70% 60%, rgba(178,146,80,.12), transparent 60%);
  transform:rotate(-4deg);
  pointer-events:none;
}
.ga-callout-ico{
  width:48px; height:48px; display:grid; place-items:center;
  border-radius:999px; background:#fff; border:2px solid var(--gold);
  box-shadow:0 8px 18px rgba(2,6,23,.10);
}
.ga-callout h3{ margin:0 0 .15rem; font-weight:900; color:var(--ink); }
.ga-callout p{ margin:0; color:var(--muted); }
.ga-callout-btn{ white-space:nowrap; }

@media (prefers-reduced-motion:no-preference){
  .ga-callout{
    animation: gaCalloutPop .8s cubic-bezier(.2,.9,.2,1.05) .05s both;
  }
  .ga-callout-ico{
    animation: gaPulse 2.2s ease-in-out .25s infinite;
  }
}
@keyframes gaCalloutPop{
  0%{ transform:translateY(6px) scale(.98); opacity:0; }
  100%{ transform:translateY(0) scale(1); opacity:1; }
}
@keyframes gaPulse{
  0%,100%{ transform:scale(1); box-shadow:0 8px 18px rgba(2,6,23,.10); }
  50%{ transform:scale(1.04); box-shadow:0 12px 26px rgba(2,6,23,.16); }
}

/* ===== Impact cards ===== */
.ga-impact-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1rem;
  margin:1.2rem auto 2rem;
}
@media (max-width:980px){ .ga-impact-grid{ grid-template-columns:1fr; } }

.ga-impact-card{
  position:relative;
  border:1px solid var(--line);
  border-radius:14px;
  background:linear-gradient(180deg,#fff,#fffdf9);
  box-shadow:0 10px 24px rgba(2,6,23,.08);
  padding:1.05rem 1.2rem 1.1rem;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
  overflow:hidden;
  isolation:isolate;
}
.ga-impact-card .ga-ico{
  width:52px; height:52px; display:grid; place-items:center;
  border-radius:999px; background:#fff; border:2px solid var(--gold);
  box-shadow:0 8px 18px rgba(2,6,23,.10); margin:0 0 .45rem;
}
.ga-impact-card h3{ margin:.1rem 0 .25rem; font-weight:800; color:var(--ink); }
.ga-impact-card p{ margin:0; color:var(--muted); }
.ga-impact-card:hover{
  transform:translateY(-2px);
  border-color:#d9c7b6;
  box-shadow:0 16px 36px rgba(2,6,23,.12);
}

/* Soft halo on hover (contained) */
.ga-impact-card::after{
  content:""; position:absolute; inset:0; pointer-events:none; opacity:0;
  background:radial-gradient(220px 120px at 20% 0%, rgba(227,191,126,.14), transparent 60%);
  transition:opacity .25s ease;
}
.ga-impact-card:hover::after{ opacity:1; }

/* ===== Ways to give ===== */
.ga-ways-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1rem;
  align-items:stretch;
}
@media (max-width:920px){ .ga-ways-grid{ grid-template-columns:1fr; } }

.ga-way{
  position:relative;
  border:1px solid var(--line);
  border-radius:16px;
  background:linear-gradient(180deg,#ffffff,#fffdf9);
  box-shadow:0 12px 28px rgba(2,6,23,.08);
  padding:1rem 1.15rem 1.15rem;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
  overflow:hidden;
}
.ga-way::before{
  content:""; position:absolute; inset:0 auto 0 0; width:6px;
  background:linear-gradient(180deg,var(--gold),#b18a42);
}
.ga-way:hover{ transform:translateY(-2px); border-color:#d9c7b6; box-shadow:0 18px 38px rgba(2,6,23,.12); }

.ga-way-head h3{
  margin:.1rem 0 .15rem; font-weight:800; color:var(--ink); position:relative;
}
.ga-way-head h3::after{
  content:""; position:absolute; left:0; bottom:-6px; width:30px; height:2px;
  background:linear-gradient(90deg,var(--gold),var(--gold2)); border-radius:2px;
}
.ga-way .ga-sub{ margin:.45rem 0 .65rem; color:var(--muted); }

/* Buttons */
.ga-btn{
  display:inline-flex; align-items:center; justify-content:center;
  border-radius:999px;
  padding:.62rem 1rem;
  font-weight:800; font-size:.95rem; line-height:1;
  color:#fff; text-decoration:none;
  border:2px solid var(--gold);
  background:linear-gradient(180deg,var(--gold),#b18a42);
  box-shadow:0 8px 18px rgba(178,146,80,.20);
  transition:filter .12s ease, transform .12s ease, background-position .35s ease;
  background-image:
    linear-gradient(180deg,var(--gold),#b18a42),
    linear-gradient(90deg,transparent 0%, rgba(255,255,255,.7) 50%, transparent 100%);
  background-size:100% 100%, 240% 100%;
  background-position:0 0, -200% 0;
}
.ga-btn:hover{ filter:brightness(1.06); transform:translateY(-1px); background-position:0 0, 200% 0; }
.ga-btn--ghost{ color:var(--ink); background:#fff; border-color:var(--line); box-shadow:0 6px 14px rgba(2,6,23,.06); }
.ga-btn--ghost:hover{ background:#fffdf6; border-color:var(--gold); }
.ga-btn:focus-visible{ outline:2px solid var(--gold2); outline-offset:2px; }

/* QR card */
.ga-way-qr .ga-qr{
  display:grid; place-items:center;
  border:1px dashed var(--line);
  border-radius:12px;
  padding:.9rem;
  background:#fff;
  box-shadow:inset 0 0 0 9999px rgba(227,191,126,.03);
  transition:border-color .2s ease, box-shadow .2s ease;
}
.ga-way-qr .ga-qr img{
  width:min(300px,72%); height:auto; display:block;
  filter:drop-shadow(0 6px 18px rgba(2,6,23,.12));
}
.ga-way-qr:hover .ga-qr{
  border-color:#d9c7b6;
  box-shadow:inset 0 0 0 9999px rgba(227,191,126,.06);
}

/* Bank transfer — flying bank card animation (contained) */
.ga-way-bank{ overflow:hidden; }
.ga-way-bank::after,
.ga-way-bank::before{
  content:"";
  position:absolute; top:58%; transform:translateY(-50%);
  pointer-events:none; opacity:0;
}
.ga-way-bank::before{ /* trailing dash */
  left:-90px; width:90px; height:10px;
  background:repeating-linear-gradient(90deg, rgba(178,146,80,.85) 0 12px, rgba(178,146,80,0) 12px 22px);
  filter:blur(.2px);
  z-index:1;
}
.ga-way-bank::after{ /* the card */
  left:-40px; width:52px; height:34px; z-index:2;
  background:no-repeat 50% 50%/contain;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='52' height='34' viewBox='0 0 52 34'%3E%3Crect x='1' y='1' width='50' height='32' rx='6' ry='6' fill='%23ffffff' stroke='%23B29250' stroke-width='2'/%3E%3Crect x='6' y='10' width='40' height='4' fill='%23B29250'/%3E%3Crect x='6' y='20' width='20' height='6' fill='%23E3BF7E'/%3E%3C/svg%3E");
}

@keyframes gaCardFly{
  0%{ transform:translate(-10px,-50%) rotate(0); opacity:0; }
  12%{ opacity:1; }
  52%{ transform:translate(120%, -120%) rotate(-14deg); opacity:.96; }
  100%{ transform:translate(240%, -220%) rotate(-22deg); opacity:0; }
}
@keyframes gaCardTrail{
  0%{ transform:translate(0,-50%); opacity:0; }
  15%{ transform:translate(12%,-50%); opacity:.7; }
  70%{ transform:translate(110%,-50%); opacity:.45; }
  100%{ transform:translate(220%,-50%); opacity:0; }
}
.ga-way-bank:hover::after,
.ga-way-bank:focus-within::after{ animation: gaCardFly 1.05s ease-in forwards; }
.ga-way-bank:hover::before,
.ga-way-bank:focus-within::before{ animation: gaCardTrail 1.05s ease-in forwards; }

/* Bank list */
.ga-bank-list{
  list-style:none; margin:.2rem 0 .75rem; padding:0;
  border:1px solid var(--line); border-radius:12px; background:#fff;
  box-shadow:0 8px 18px rgba(2,6,23,.06);
}
.ga-bank-list li{
  display:grid; grid-template-columns:140px 1fr; gap:.6rem;
  padding:.55rem .8rem; border-bottom:1px solid #eee7df;
}
.ga-bank-list li:last-child{ border-bottom:0; }
.ga-bank-list .k{ font-weight:700; color:var(--ink); }
.ga-bank-list .v{ color:var(--muted); }

/* Reduced motion */
@media (prefers-reduced-motion:reduce){
  .ga-callout, .ga-callout-ico,
  .ga-way-bank::before, .ga-way-bank::after{ animation:none !important; }
}
/* GA! Review — card */
.ga-quote{
  --gold:#B29250; --gold2:#E3BF7E; --ink:#141414; --muted:#6b5f57; --line:#CCBAA9;
  margin:0; padding:clamp(24px,3vw,48px) 0;
  background:
    radial-gradient(60% 140% at 50% -20%, rgba(227,191,126,.16), transparent 60%),
    linear-gradient(180deg,#ffffff,#fffdf9);
}
.ga-quote .ga-quote-inner{
  max-width:1100px; margin:0 auto;
  border:1px solid var(--line); border-radius:16px;
  background:#fff; box-shadow:0 12px 28px rgba(2,6,23,.08);
  padding:clamp(18px,2.8vw,36px) clamp(16px,3vw,42px);
  text-align:center;
  position:relative; overflow:hidden;
}

/* Decorative corner shimmer (very subtle) */
.ga-quote .ga-quote-inner::after{
  content:""; position:absolute; right:-80px; top:-80px; width:220px; height:220px;
  background:conic-gradient(from 210deg, rgba(227,191,126,.16), rgba(178,146,80,.10), transparent 50%);
  filter:blur(2px);
}

/* Avatar */
.ga-quote .ga-avatar{
  display:inline-grid; place-items:center; margin:0 auto 10px;
  width:84px; height:84px; border-radius:999px; position:relative;
  background:linear-gradient(180deg,#fff,#fffdf9);
  border:1px solid var(--line);
  box-shadow:0 8px 18px rgba(2,6,23,.10);
  animation:gaFadeUp .6s ease both;
}
.ga-quote .ga-avatar img{
  display:block; width:72px; height:72px; object-fit:cover; border-radius:999px;
  box-shadow:inset 0 0 0 2px #fff;
}

/* Quote text */
.ga-quote .ga-quote-text{
  margin:10px auto 8px; max-width:900px; color:var(--ink);
  font-family:"Libre Baskerville", Georgia, serif;
  font-weight:400; line-height:1.5;
  font-size:clamp(1.15rem, 1.6vw + .6rem, 1.8rem);
  position:relative;
}
.ga-quote .ga-quote-mark{
  font-size:1.6em; line-height:0; color:var(--gold2);
  vertical-align:-.2em; user-select:none;
}
.ga-quote .ga-quote-open{ margin-right:.1em; }
.ga-quote .ga-quote-close{ margin-left:.1em; }

/* Underline accent on hover/focus (subtle) */
.ga-quote .ga-quote-lines{
  background:linear-gradient(90deg, var(--gold), var(--gold2));
  background-size:0% 2px; background-repeat:no-repeat; background-position:0 100%;
  transition:background-size .5s ease;
}
.ga-quote .ga-quote-inner:hover .ga-quote-lines,
.ga-quote .ga-quote-inner:focus-within .ga-quote-lines{
  background-size:100% 2px;
}

/* Attribution */
.ga-quote .ga-quote-attrib{
  margin:.6rem 0 0; color:var(--muted);
  font-size:clamp(.95rem, .3vw + .9rem, 1.05rem);
}

/* Motion */
@keyframes gaFadeUp{ from{opacity:0; transform:translateY(6px);} to{opacity:1; transform:none;} }
.ga-quote .ga-quote-text{ animation:gaFadeUp .6s .06s ease both; }
.ga-quote .ga-quote-attrib{ animation:gaFadeUp .6s .12s ease both; }

/* Respect reduced motion */
@media (prefers-reduced-motion:reduce){
  .ga-quote .ga-quote-inner,
  .ga-quote .ga-avatar,
  .ga-quote .ga-quote-text,
  .ga-quote .ga-quote-attrib{ animation:none !important; transition:none !important; }
}
/* ===== GA! Home — What is GA!? block ===== */
#home-about{ --gold:#B29250; --gold2:#E3BF7E; --ink:#141414; --line:#CCBAA9; --muted:#6b5f57; }
#home-about .ga-home-h{ margin-top:0; margin-bottom:.35rem; letter-spacing:.01em; }
#home-about p{ color:var(--ink); }
#home-about a{ color:var(--gold); text-decoration-color:rgba(178,146,80,.45); text-underline-offset:2px; }

/* Image card polish */
#home-about .ga-home-figure{
  border-radius:14px; overflow:hidden;
  box-shadow:0 14px 30px rgba(2,6,23,.12);
  border:1px solid var(--line);
}
#home-about .ga-home-figure img{ display:block; width:100%; height:auto; }

/* CTA row */
#home-about .ga-home-ctas{
  display:flex; gap:.6rem; flex-wrap:wrap; margin-top:.8rem;
}

/* Base button */
#home-about .ga-btn{
  position:relative; display:inline-flex; align-items:center; justify-content:center;
  gap:.5rem; padding:.68rem 1.1rem; border-radius:999px;
  font-weight:800; line-height:1; text-decoration:none;
  border:2px solid var(--gold);
  background:linear-gradient(180deg,var(--gold),#b18a42);
  color:#fff; box-shadow:0 8px 18px rgba(178,146,80,.18);
  transition:transform .15s ease, filter .15s ease, box-shadow .2s ease, background-position .4s ease;
}
#home-about .ga-btn:hover,
#home-about .ga-btn:focus{ transform:translateY(-1px); filter:brightness(1.05); outline:none; }
#home-about .ga-btn .t{ position:relative; z-index:2; }

/* Common icon container (drawn with CSS) */
#home-about .ga-btn::before{
  content:""; position:absolute; inset:0; border-radius:inherit;
  background:linear-gradient(90deg, rgba(255,255,255,.0), rgba(255,255,255,.35), rgba(255,255,255,0));
  background-size:220% 100%; background-position:-180% 0;
  transition:background-position .9s linear;
  z-index:1; pointer-events:none;
}
#home-about .ga-btn:hover::before{ background-position:160% 0; }

/* ===== Thematic micro-animations per button ===== */

/* 1) Learn more — little “page” slides & underline grows */
#home-about .ga-btn-learn{ padding-left:1.25rem; }
#home-about .ga-btn-learn .t{
  background:linear-gradient(currentColor,currentColor) 0 100% / 0 2px no-repeat;
  transition:background-size .35s ease;
}
#home-about .ga-btn-learn:hover .t{ background-size:100% 2px; }
#home-about .ga-btn-learn::after{
  content:"";
  position:absolute; left:.65rem; width:16px; height:16px; border-radius:2px; top:50%;
  transform:translateY(-50%) translateX(-6px) rotate(-3deg);
  background:
    linear-gradient(180deg,#fff,#fffdf9);
  box-shadow:inset 0 0 0 1.8px #fff, 0 0 0 1.2px rgba(0,0,0,.06);
  outline:1.6px solid rgba(0,0,0,.12);
  transition:transform .35s ease, opacity .25s ease;
  opacity:.0;
}
#home-about .ga-btn-learn:hover::after{ transform:translateY(-50%) translateX(0) rotate(0deg); opacity:.9; }

/* 2) Support us — gentle heart “pop” */
#home-about .ga-btn-support{ padding-left:1.35rem; }
#home-about .ga-btn-support::after{
  content:"";
  position:absolute; left:.7rem; top:50%; width:18px; height:18px; transform:translateY(-50%) scale(.6);
  background:
    radial-gradient(closest-side,#fff 96%,transparent 97%) 50% 60%/70% 70% no-repeat,
    radial-gradient(closest-side,#fff 96%,transparent 97%) 30% 40%/70% 70% no-repeat,
    radial-gradient(closest-side,#fff 96%,transparent 97%) 70% 40%/70% 70% no-repeat,
    conic-gradient(from 45deg,#E3BF7E 0 90deg, #B29250 90deg 180deg, #E3BF7E 180deg 270deg, #B29250 270deg 360deg);
  -webkit-mask: radial-gradient(100% 100% at 50% 30%, black 60%, transparent 61%) top/100% 80% no-repeat,
                radial-gradient(100% 100% at 50% 80%, black 70%, transparent 71%) bottom/100% 40% no-repeat;
  mask: radial-gradient(100% 100% at 50% 30%, black 60%, transparent 61%) top/100% 80% no-repeat,
        radial-gradient(100% 100% at 50% 80%, black 70%, transparent 71%) bottom/100% 40% no-repeat;
  border-radius:3px; opacity:.0; transition:transform .28s ease, opacity .2s ease;
}
#home-about .ga-btn-support:hover::after{ transform:translateY(-50%) scale(1); opacity:.95; }

/* 3) Service — small gear nudge */
#home-about .ga-btn-service{ padding-left:1.3rem; }
#home-about .ga-btn-service::after{
  content:"";
  position:absolute; left:.7rem; top:50%; width:18px; height:18px; transform:translateY(-50%) rotate(0);
  background:
    radial-gradient(circle at 50% 50%, #fff 35%, transparent 36%),
    conic-gradient(from 0deg, #fff 0 10deg, transparent 10 20deg, #fff 20 30deg, transparent 30 40deg, #fff 40 50deg, transparent 50 60deg, #fff 60 70deg, transparent 70 80deg, #fff 80 90deg, transparent 90 100deg, #fff 100 110deg, transparent 110 120deg, #fff 120 130deg, transparent 130 140deg, #fff 140 150deg, transparent 150 160deg, #fff 160 170deg, transparent 170 180deg, #fff 180 190deg, transparent 190 200deg, #fff 200 210deg, transparent 210 220deg, #fff 220 230deg, transparent 230 240deg, #fff 240 250deg, transparent 250 260deg, #fff 260 270deg, transparent 270 280deg, #fff 280 290deg, transparent 290 300deg, #fff 300 310deg, transparent 310 320deg, #fff 320 330deg, transparent 330 340deg, #fff 340 350deg, transparent 350 360deg);
  border-radius:50%;
  opacity:.9; transition:transform .35s ease;
}
#home-about .ga-btn-service:hover::after{ transform:translateY(-50%) rotate(18deg); }

/* Reduced motion */
@media (prefers-reduced-motion:reduce){
  #home-about .ga-btn,
  #home-about .ga-btn::before,
  #home-about .ga-btn::after{ transition:none !important; }
}
/* ===== GA! Home — What is GA!? ===== */
#home-about{
  --gold:#B29250; --gold2:#E3BF7E; --ink:#141414; --line:#CCBAA9;
  gap:clamp(18px,4vw,48px);                 /* real space between image and text */
  align-items:stretch;
}
#home-about .ga-home-figure{
  border-radius:14px; overflow:hidden;
  border:1px solid var(--line);
  box-shadow:0 14px 30px rgba(2,6,23,.12);
}
#home-about .ga-home-copy{ max-width:460px; margin-left:auto; }

/* Gold gradient title */
#home-about .ga-home-h{
  margin:0 0 .4rem;
  background:linear-gradient(90deg,var(--gold),var(--gold2),var(--gold));
  -webkit-background-clip:text; background-clip:text; color:transparent;
  letter-spacing:.01em;
}

/* Lede + body */
#home-about .ga-home-lede{
  margin:.35rem 0 .5rem; font-weight:600; color:var(--ink);
}
#home-about .ga-home-body{ color:var(--ink); opacity:.95; }
#home-about a{ color:var(--gold); text-decoration-color:rgba(178,146,80,.45); text-underline-offset:2px; }

/* CTA row */
#home-about .ga-home-ctas{
  display:flex; gap:.6rem; flex-wrap:wrap; margin-top:.85rem;
}

/* Base button (gold) */
#home-about .ga-btn{
  position:relative; display:inline-flex; align-items:center; justify-content:center;
  gap:.5rem; padding:.68rem 1.1rem; border-radius:999px; font-weight:800; line-height:1;
  border:2px solid var(--gold);
  background:linear-gradient(180deg,var(--gold),#b18a42);
  color:#fff; text-decoration:none;
  box-shadow:0 8px 18px rgba(178,146,80,.18);
  transition:transform .15s ease, filter .15s ease, box-shadow .2s ease;
}
#home-about .ga-btn:hover,
#home-about .ga-btn:focus{ transform:translateY(-1px); filter:brightness(1.05); outline:none; }
#home-about .ga-btn .t{ position:relative; z-index:2; }

/* Shared sheen */
#home-about .ga-btn::before{
  content:""; position:absolute; inset:0; border-radius:inherit; z-index:1; pointer-events:none;
  background:linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.35) 50%, rgba(255,255,255,0) 100%);
  background-size:220% 100%; background-position:-180% 0;
  transition:background-position .9s linear;
}
#home-about .ga-btn:hover::before{ background-position:160% 0; }

/* --- Thematic, subtle icon motions (data-URI SVG for reliability) --- */

/* 1) Learn more — page slide + underline grow */
#home-about .ga-btn-learn{ padding-left:1.35rem; }
#home-about .ga-btn-learn .t{
  background:linear-gradient(currentColor,currentColor) 0 100% / 0 2px no-repeat;
  transition:background-size .28s ease;
}
#home-about .ga-btn-learn:hover .t{ background-size:100% 2px; }
#home-about .ga-btn-learn::after{
  content:""; position:absolute; left:.7rem; top:50%; width:16px; height:16px; transform:translateY(-50%) translateX(-6px);
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24'%3E%3Cpath fill='%23ffffff' d='M6 4h12v14H8a2 2 0 0 1-2-2V4z'/%3E%3Cpath fill='%23ffffff' d='M10 7h6v1h-6zM10 10h5v1h-5z'/%3E%3C/svg%3E") no-repeat 50%/contain;
  opacity:.0; transition:transform .28s ease, opacity .2s ease;
}
#home-about .ga-btn-learn:hover::after{ transform:translateY(-50%) translateX(0); opacity:.95; }

/* 2) Support us — soft heart pop */
#home-about .ga-btn-support{ padding-left:1.35rem; }
#home-about .ga-btn-support::after{
  content:""; position:absolute; left:.68rem; top:50%; width:18px; height:18px; transform:translateY(-50%) scale(.7);
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24'%3E%3Cpath fill='%23ffffff' d='M12 21s-6.6-4-9.2-7.1c-2-2.1-1.5-5.2.6-7 2-1.7 4.8-1.3 6.6.4L12 9l2-1.8c1.8-1.7 4.6-2 6.6-.3 2.2 1.8 2.6 4.9.6 7C18.6 17 12 21 12 21z'/%3E%3C/svg%3E") no-repeat 50%/contain;
  opacity:.0; transition:transform .24s ease, opacity .18s ease;
}
#home-about .ga-btn-support:hover::after{ transform:translateY(-50%) scale(1); opacity:.95; }

/* 3) Service — tiny gear wiggle */
#home-about .ga-btn-service{ padding-left:1.3rem; }
#home-about .ga-btn-service::after{
  content:""; position:absolute; left:.68rem; top:50%; width:18px; height:18px; transform:translateY(-50%) rotate(0deg);
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24'%3E%3Cpath fill='%23ffffff' d='M19.4 12.9a7.8 7.8 0 0 0 0-1.8l2-1.5a.7.7 0 0 0 .2-.9l-2-3.4a.7.7 0 0 0-.9-.3l-2.3.9a7 7 0 0 0-1.5-.9l-.3-2.5a.7.7 0 0 0-.7-.6h-3.9a.7.7 0 0 0-.7.6l-.3 2.5a7 7 0 0 0-1.5.9l-2.3-.9a.7.7 0 0 0-.9.3l-2 3.4a.7.7 0 0 0 .2.9l2 1.5a7.8 7.8 0 0 0 0 1.8l-2 1.5a.7.7 0 0 0-.2.9l2 3.4c.2.3.5.4.9.3l2.3-.9a7 7 0 0 0 1.5.9l.3 2.5c0 .3.3.6.7.6h3.9c.4 0 .7-.3.7-.6l.3-2.5a7 7 0 0 0 1.5-.9l2.3.9c.4.1.7 0 .9-.3l2-3.4a.7.7 0 0 0-.2-.9l-2-1.5Zm-7.4 2.6a3.5 3.5 0 1 1 0-7 3.5 3.5 0 0 1 0 7Z'/%3E%3C/svg%3E") no-repeat 50%/contain;
  opacity:.95; transition:transform .28s ease;
}
#home-about .ga-btn-service:hover::after{ transform:translateY(-50%) rotate(18deg); }

/* Reduced motion */
@media (prefers-reduced-motion:reduce){
  #home-about .ga-btn,
  #home-about .ga-btn::before,
  #home-about .ga-btn::after{ transition:none !important; }
}
/* ===== GA! Home — place button icons next to (outside) the pill ===== */

/* make sure buttons can render decoration outside their bounds */
#home-about .ga-btn{ overflow:visible; }

/* shared: icons sit to the LEFT of the button, slide in on hover */
#home-about .ga-btn::after{
  position:absolute;
  right:100%;                 /* place outside, left of the button */
  top:50%;
  transform:translateY(-50%) translateX(-8px);
  width:18px; height:18px;
  content:"";
  opacity:0;
  pointer-events:none;
  filter:drop-shadow(0 1px 0 rgba(0,0,0,.15));
  transition:transform .25s ease, opacity .18s ease;
  z-index:1;
}
#home-about .ga-btn:hover::after,
#home-about .ga-btn:focus::after{
  opacity:1;
  transform:translateY(-50%) translateX(0);
}

/* 1) Learn more — page icon */
#home-about .ga-btn-learn::after{
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24'%3E%3Cpath fill='%23ffffff' d='M6 4h12v14H8a2 2 0 0 1-2-2V4z'/%3E%3Cpath fill='%23ffffff' d='M10 7h6v1h-6zM10 10h5v1h-5z'/%3E%3C/svg%3E") no-repeat 50%/contain;
}

/* 2) Support us — heart */
#home-about .ga-btn-support::after{
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24'%3E%3Cpath fill='%23ffffff' d='M12 21s-6.6-4-9.2-7.1c-2-2.1-1.5-5.2.6-7 2-1.7 4.8-1.3 6.6.4L12 9l2-1.8c1.8-1.7 4.6-2 6.6-.3 2.2 1.8 2.6 4.9.6 7C18.6 17 12 21 12 21z'/%3E%3C/svg%3E") no-repeat 50%/contain;
}

/* 3) Service — gear (also a tiny wiggle) */
#home-about .ga-btn-service::after{
  opacity:.95; /* slightly visible even idle */
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24'%3E%3Cpath fill='%23ffffff' d='M19.4 12.9a7.8 7.8 0 0 0 0-1.8l2-1.5a.7.7 0 0 0 .2-.9l-2-3.4a.7.7 0 0 0-.9-.3l-2.3.9a7 7 0 0 0-1.5-.9l-.3-2.5a.7.7 0 0 0-.7-.6h-3.9a.7.7 0 0 0-.7.6l-.3 2.5a7 7 0 0 0-1.5.9l-2.3-.9a.7.7 0 0 0-.9.3l-2 3.4a.7.7 0 0 0 .2.9l2 1.5a7.8 7.8 0 0 0 0 1.8l-2 1.5a.7.7 0 0 0-.2.9l2 3.4c.2.3.5.4.9.3l2.3-.9a7 7 0 0 0 1.5.9l.3 2.5c0 .3.3.6.7.6h3.9c.4 0 .7-.3.7-.6l.3-2.5a7 7 0 0 0 1.5-.9l2.3.9c.4.1.7 0 .9-.3l2-3.4a.7.7 0 0 0-.2-.9l-2-1.5Zm-7.4 2.6a3.5 3.5 0 1 1 0-7 3.5 3.5 0 0 1 0 7Z'/%3E%3C/svg%3E") no-repeat 50%/contain;
  transition:transform .25s ease, opacity .18s ease;
}
#home-about .ga-btn-service:hover::after{ transform:translateY(-50%) translateX(0) rotate(16deg); }

/* tighter spacing if needed so the icon doesn’t overlap neighbors */
#home-about .ga-home-ctas{ gap:.75rem; }

/* mobile: hide external icons to keep layout clean */
@media (max-width: 420px){
  #home-about .ga-btn::after{ display:none; }
}
/* ===== GA! Home — button icons placed OUTSIDE (left), no text overlap ===== */

#home-about .ga-btn{
  position:relative;
  overflow:visible;      /* allow outside decoration */
  z-index:0;             /* keep icons beneath the label hit-area */
}

/* Shared external icon: sits to the LEFT of the button with a fixed gap */
#home-about .ga-btn::after{
  content:"";
  position:absolute;
  top:50%;
  right:calc(100% + 14px);     /* fixed gap so it never touches the text */
  transform:translateY(-50%) translateX(-6px);
  width:20px; height:20px;
  opacity:0;                   /* hidden by default */
  pointer-events:none;
  filter:drop-shadow(0 1px 0 rgba(0,0,0,.15));
  transition:transform .25s ease, opacity .18s ease;
  z-index:-1;                  /* ensure it never overlays the label */
}

/* Reveal / animate gently on hover/focus */
#home-about .ga-btn:hover::after,
#home-about .ga-btn:focus::after{
  opacity:1;
  transform:translateY(-50%) translateX(0);
}

/* 1) Learn more — BOOK icon */
#home-about .ga-btn-learn::after{
  background:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24'%3E%3Cpath fill='%23ffffff' d='M6.2 5.2A2.8 2.8 0 0 1 8.9 3H20v14.9c0 .7-.8 1.1-1.3.7-1.6-1.2-3.1-1.9-4.9-1.9H8.9A2.8 2.8 0 0 0 6.2 19V5.2z'/%3E%3Cpath fill='%23ffffff' d='M11 6.5h5v1.2h-5zM11 9h4v1.2h-4z'/%3E%3C/svg%3E")
    no-repeat 50%/contain;
}

/* 2) Support us — HEART icon */
#home-about .ga-btn-support::after{
  background:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24'%3E%3Cpath fill='%23ffffff' d='M12 21s-6.6-4-9.2-7.1c-2-2.1-1.5-5.2.6-7 2-1.7 4.8-1.3 6.6.4L12 9l2-1.8c1.8-1.7 4.6-2 6.6-.3 2.2 1.8 2.6 4.9.6 7C18.6 17 12 21 12 21z'/%3E%3C/svg%3E")
    no-repeat 50%/contain;
}

/* 3) Service — GEAR icon (hidden by default; only shows on hover/focus) */
#home-about .ga-btn-service::after{
  background:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24'%3E%3Cpath fill='%23ffffff' d='M19.4 12.9a7.8 7.8 0 0 0 0-1.8l2-1.5a.7.7 0 0 0 .2-.9l-2-3.4a.7.7 0 0 0-.9-.3l-2.3.9a7 7 0 0 0-1.5-.9l-.3-2.5a.7.7 0 0 0-.7-.6h-3.9a.7.7 0 0 0-.7.6l-.3 2.5a7 7 0 0 0-1.5.9l-2.3-.9a.7.7 0 0 0-.9.3l-2 3.4a.7.7 0 0 0 .2.9l2 1.5a7.8 7.8 0 0 0 0 1.8l-2 1.5a.7.7 0 0 0-.2.9l2 3.4c.2.3.5.4.9.3l2.3-.9a7 7 0 0 0 1.5.9l.3 2.5c0 .3.3.6.7.6h3.9c.4 0 .7-.3.7-.6l.3-2.5a7 7 0 0 0 1.5-.9l2.3.9c.4.1.7 0 .9-.3l2-3.4a.7.7 0 0 0-.2-.9l-2-1.5Zm-7.4 2.6a3.5 3.5 0 1 1 0-7 3.5 3.5 0 0 1 0 7Z'/%3E%3C/svg%3E")
    no-repeat 50%/contain;
}
#home-about .ga-btn-service:hover::after,
#home-about .ga-btn-service:focus::after{
  opacity:1;
  transform:translateY(-50%) translateX(0) rotate(16deg);
}

/* Mobile: hide external icons entirely to keep layout tight */
@media (max-width: 480px){
  #home-about .ga-btn::after{ display:none; }
}
/* ===== GA! Home — button icons placed OUTSIDE (left), no text overlap ===== */

#home-about .ga-btn{
  position:relative;
  overflow:visible;      /* allow outside decoration */
  z-index:0;             /* keep icons beneath the label hit-area */
}

/* Shared external icon: sits to the LEFT of the button with a fixed gap */
#home-about .ga-btn::after{
  content:"";
  position:absolute;
  top:50%;
  right:calc(100% + 18px);     /* fixed gap so it never touches the text */
  transform:translateY(-50%) translateX(-6px);
  width:20px; height:20px;
  opacity:0;                   /* hidden by default */
  pointer-events:none;
  filter:drop-shadow(0 1px 0 rgba(0,0,0,.15));
  transition:transform .25s ease, opacity .18s ease;
  z-index:-1;                  /* ensure it never overlays the label */
}

/* Reveal / animate gently on hover/focus */
#home-about .ga-btn:hover::after,
#home-about .ga-btn:focus::after{
  opacity:1;
  transform:translateY(-50%) translateX(0);
}

/* 1) Learn more — BOOK icon */
#home-about .ga-btn-learn::after{
  background:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24'%3E%3Cpath fill='%23ffffff' d='M6.2 5.2A2.8 2.8 0 0 1 8.9 3H20v14.9c0 .7-.8 1.1-1.3.7-1.6-1.2-3.1-1.9-4.9-1.9H8.9A2.8 2.8 0 0 0 6.2 19V5.2z'/%3E%3Cpath fill='%23ffffff' d='M11 6.5h5v1.2h-5zM11 9h4v1.2h-4z'/%3E%3C/svg%3E")
    no-repeat 50%/contain;
}

/* 2) Support us — HEART icon */
#home-about .ga-btn-support::after{
  background:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24'%3E%3Cpath fill='%23ffffff' d='M12 21s-6.6-4-9.2-7.1c-2-2.1-1.5-5.2.6-7 2-1.7 4.8-1.3 6.6.4L12 9l2-1.8c1.8-1.7 4.6-2 6.6-.3 2.2 1.8 2.6 4.9.6 7C18.6 17 12 21 12 21z'/%3E%3C/svg%3E")
    no-repeat 50%/contain;
}

/* 3) Service — GEAR icon (hidden by default; only shows on hover/focus) */
#home-about .ga-btn-service::after{
  background:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24'%3E%3Cpath fill='%23ffffff' d='M19.4 12.9a7.8 7.8 0 0 0 0-1.8l2-1.5a.7.7 0 0 0 .2-.9l-2-3.4a.7.7 0 0 0-.9-.3l-2.3.9a7 7 0 0 0-1.5-.9l-.3-2.5a.7.7 0 0 0-.7-.6h-3.9a.7.7 0 0 0-.7.6l-.3 2.5a7 7 0 0 0-1.5.9l-2.3-.9a.7.7 0 0 0-.9.3l-2 3.4a.7.7 0 0 0 .2.9l2 1.5a7.8 7.8 0 0 0 0 1.8l-2 1.5a.7.7 0 0 0-.2.9l2 3.4c.2.3.5.4.9.3l2.3-.9a7 7 0 0 0 1.5.9l.3 2.5c0 .3.3.6.7.6h3.9c.4 0 .7-.3.7-.6l.3-2.5a7 7 0 0 0 1.5-.9l2.3.9c.4.1.7 0 .9-.3l2-3.4a.7.7 0 0 0-.2-.9l-2-1.5Zm-7.4 2.6a3.5 3.5 0 1 1 0-7 3.5 3.5 0 0 1 0 7Z'/%3E%3C/svg%3E")
    no-repeat 50%/contain;
}
#home-about .ga-btn-service:hover::after,
#home-about .ga-btn-service:focus::after{
  opacity:1;
  transform:translateY(-50%) translateX(0) rotate(16deg);
}

/* Mobile: hide external icons entirely to keep layout tight */
@media (max-width: 480px){
  #home-about .ga-btn::after{ display:none; }
}
/* ===== GA! Home About — Layout & Spacing ===== */
.ga-home-about .ga-home-about__cols{
  column-gap: clamp(1rem, 4vw, 3rem);
  row-gap: 1.5rem;
  align-items: center;
}
.ga-home-about__figure{ margin:0; }

.ga-home-about__content{
  /* extra breathing room from the image on large screens */
  padding-left: clamp(0rem, 2vw, 0.5rem);
}

/* ===== Gold title (gradient, subtle shine) ===== */
.ga-home-about__title{
  margin: 0 0 .5rem;
  font-weight: 800;
  letter-spacing: .01em;
  color: #B29250;
  background: linear-gradient(90deg,#B29250,#E3BF7E,#B29250);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
@media (prefers-reduced-motion:no-preference){
  .ga-home-about__title{
    background-size: 200% 100%;
    animation: gaTitleShine 8s linear infinite;
  }
}
@keyframes gaTitleShine{ 0%{background-position:0 0;} 100%{background-position:200% 0;} }

.ga-home-about__lede{ margin: .4rem 0 .6rem; line-height: 1.65; }
.ga-home-about__body{ margin: 0 0 1rem; line-height: 1.65; }

/* ===== Button base (matches your GA! style) ===== */
.ga-home-about__buttons .ga-btn{
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  padding: .68rem 1.15rem;
  border-radius: 999px;
  font-weight: 800;
  line-height: 1;
  color: #fff;
  text-decoration: none;
  border: 2px solid #B29250;
  background: linear-gradient(180deg,#B29250,#b18a42);
  transition: filter .15s ease, transform .15s ease;
}
.ga-home-about__buttons .ga-btn:hover,
.ga-home-about__buttons .ga-btn:focus{
  filter: brightness(1.06);
  transform: translateY(-1px);
  outline: none;
}

/* ===== External icons (sit LEFT of the button, never overlap text) ===== */
/* we draw the icon OUTSIDE the pill so text is always readable */
.ga-home-about__buttons .ga-btn::after{
  content:"";
  position:absolute;
  top:50%;
  right: calc(100% + 14px);          /* gap from the left edge of the pill */
  transform: translateY(-50%) translateX(-6px);
  width: 20px; height: 20px;
  opacity: 0;                         /* hidden by default */
  pointer-events: none;
  filter: drop-shadow(0 1px 0 rgba(0,0,0,.15));
  transition: transform .25s ease, opacity .18s ease;
}

/* Reveal / animate on hover/focus */
.ga-home-about__buttons .ga-btn:hover::after,
.ga-home-about__buttons .ga-btn:focus::after{
  opacity: 1;
  transform: translateY(-50%) translateX(0);
}

/* 1) Learn more → BOOK icon (always appears on hover/focus) */
.ga-home-about__buttons .ga-btn-learn::after{
  background:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24'%3E%3Cpath fill='%23ffffff' d='M6.2 5.2A2.8 2.8 0 0 1 8.9 3H20v14.9c0 .7-.8 1.1-1.3.7-1.6-1.2-3.1-1.9-4.9-1.9H8.9A2.8 2.8 0 0 0 6.2 19V5.2z'/%3E%3Cpath fill='%23ffffff' d='M11 6.5h5v1.2h-5zM11 9h4v1.2h-4z'/%3E%3C/svg%3E")
    no-repeat 50%/contain;
}

/* 2) Support us → HEART icon (appears on hover/focus) */
.ga-home-about__buttons .ga-btn-support::after{
  background:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24'%3E%3Cpath fill='%23ffffff' d='M12 21s-6.6-4-9.2-7.1c-2-2.1-1.5-5.2.6-7 2-1.7 4.8-1.3 6.6.4L12 9l2-1.8c1.8-1.7 4.6-2 6.6-.3 2.2 1.8 2.6 4.9.6 7C18.6 17 12 21 12 21z'/%3E%3C/svg%3E")
    no-repeat 50%/contain;
}

/* 3) Service → GEAR icon (hidden by default; shows only on hover/focus) */
.ga-home-about__buttons .ga-btn-service::after{
  background:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24'%3E%3Cpath fill='%23ffffff' d='M19.4 12.9a7.8 7.8 0 0 0 0-1.8l2-1.5a.7.7 0 0 0 .2-.9l-2-3.4a.7.7 0 0 0-.9-.3l-2.3.9a7 7 0 0 0-1.5-.9l-.3-2.5a.7.7 0 0 0-.7-.6h-3.9a.7.7 0 0 0-.7.6l-.3 2.5a7 7 0 0 0-1.5.9l-2.3-.9a.7.7 0 0 0-.9.3l-2 3.4a.7.7 0 0 0 .2.9l2 1.5a7.8 7.8 0 0 0 0 1.8l-2 1.5a.7.7 0 0 0-.2.9l2 3.4c.2.3.5.4.9.3l2.3-.9a7 7 0 0 0 1.5.9l.3 2.5c0 .3.3.6.7.6h3.9c.4 0 .7-.3.7-.6l.3-2.5a7 7 0 0 0 1.5-.9l2.3.9c.4.1.7 0 .9-.3l2-3.4a.7.7 0 0 0-.2-.9l-2-1.5Zm-7.4 2.6a3.5 3.5 0 1 1 0-7 3.5 3.5 0 0 1 0 7Z'/%3E%3C/svg%3E")
    no-repeat 50%/contain;
}
/* (we already hide all ::after by default via opacity:0; they appear on hover/focus only) */

/* Mobile: remove external icons to keep layout tight */
@media (max-width: 480px){
  .ga-home-about__buttons .ga-btn::after{ display:none; }
}
/* ==== Home CTA fly-by animations (CSS-only, no HTML changes) ==== */
/* Targets buttons whose hrefs match About / Donation / Service */
:root{
  --ga-gold:#B29250;
  --ga-gold2:#E3BF7E;
  --ga-ink:#141414;
}

/* Base look + space for icon to fly past the left edge */
.wp-block-button__link[href*="/about/"],
.wp-block-button__link[href*="/donation/"],
.wp-block-button__link[href*="/service/"]{
  position:relative;
  overflow:visible;
  padding:.72rem 1.15rem .72rem 1.6rem; /* extra left so label stays readable */
  border-radius:999px;
  font-weight:800;
  line-height:1;
  color:#fff;
  border:2px solid var(--ga-gold);
  background:linear-gradient(180deg,var(--ga-gold),#b18a42);
  box-shadow:0 8px 18px rgba(178,146,80,.22);
  transition:filter .12s ease, transform .12s ease;
}
.wp-block-button__link[href*="/about/"]:hover,
.wp-block-button__link[href*="/donation/"]:hover,
.wp-block-button__link[href*="/service/"]:hover,
.wp-block-button__link[href*="/about/"]:focus,
.wp-block-button__link[href*="/donation/"]:focus,
.wp-block-button__link[href*="/service/"]:focus{
  filter:brightness(1.06);
  transform:translateY(-1px);
}

/* Shared fly parts (icon + short trail) */
.wp-block-button__link[href*="/about/"]::before,
.wp-block-button__link[href*="/donation/"]::before,
.wp-block-button__link[href*="/service/"]::before,
.wp-block-button__link[href*="/about/"]::after,
.wp-block-button__link[href*="/donation/"]::after,
.wp-block-button__link[href*="/service/"]::after{
  content:"";
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  pointer-events:none;
  opacity:0;
}

/* Icon starts just left of the button */
.wp-block-button__link[href*="/about/"]::before,
.wp-block-button__link[href*="/donation/"]::before,
.wp-block-button__link[href*="/service/"]::before{
  left:-34px;
  width:26px; height:22px;
  z-index:3;
  background:no-repeat 50% 50%/contain;
}

/* Trail behind the icon */
.wp-block-button__link[href*="/about/"]::after,
.wp-block-button__link[href*="/donation/"]::after,
.wp-block-button__link[href*="/service/"]::after{
  left:-86px;
  width:78px; height:10px;
  z-index:2;
  background:repeating-linear-gradient(90deg, rgba(178,146,80,.9) 0 10px, rgba(178,146,80,0) 10px 18px);
  filter:blur(.2px);
}

/* Flight animations */
@keyframes gaFly {
  0%   { transform:translate(-6px,-50%) rotate(0);      opacity:0; }
  12%  { transform:translate(0,-50%) rotate(0);         opacity:.98; }
  55%  { transform:translate(120%,-110%) rotate(-15deg);opacity:.92; }
  100% { transform:translate(250%,-180%) rotate(-22deg);opacity:0; }
}
@keyframes gaTrail {
  0%   { transform:translate(0,-50%);    opacity:0; }
  18%  { transform:translate(12%,-50%);  opacity:.7; }
  72%  { transform:translate(110%,-50%); opacity:.45; }
  100% { transform:translate(220%,-50%); opacity:0; }
}

/* Trigger animation on hover/focus */
.wp-block-button__link[href*="/about/"]:hover::before,
.wp-block-button__link[href*="/about/"]:focus::before,
.wp-block-button__link[href*="/donation/"]:hover::before,
.wp-block-button__link[href*="/donation/"]:focus::before,
.wp-block-button__link[href*="/service/"]:hover::before,
.wp-block-button__link[href*="/service/"]:focus::before{
  animation: gaFly 1.05s ease-in forwards;
}
.wp-block-button__link[href*="/about/"]:hover::after,
.wp-block-button__link[href*="/about/"]:focus::after,
.wp-block-button__link[href*="/donation/"]:hover::after,
.wp-block-button__link[href*="/donation/"]:focus::after,
.wp-block-button__link[href*="/service/"]:hover::after,
.wp-block-button__link[href*="/service/"]:focus::after{
  animation: gaTrail 1.05s ease-in forwards;
}
/* === GA! Home CTA — outside, behind-the-button diagonal fly-by =========== */
/* Let icons fly outside the pill */
.wp-block-buttons,
.wp-block-button { overflow: visible !important; }

/* Host animations on the WRAPPER; keep the link above them */
.wp-block-button { position: relative; }
.wp-block-button > .wp-block-button__link { position: relative; z-index: 1; }

/* Keep your pill look */
.wp-block-button > .wp-block-button__link[href*="/about/"],
.wp-block-button > .wp-block-button__link[href*="/donation/"],
.wp-block-button > .wp-block-button__link[href*="/service/"]{
  border-radius:999px; font-weight:800; line-height:1; color:#fff;
  border:2px solid #B29250;
  background:linear-gradient(180deg,#B29250,#b18a42);
  box-shadow:0 8px 18px rgba(178,146,80,.22);
  transition:filter .12s ease, transform .12s ease;
}
.wp-block-button > .wp-block-button__link[href*="/about/"]:hover,
.wp-block-button > .wp-block-button__link[href*="/donation/"]:hover,
.wp-block-button > .wp-block-button__link[href*="/service/"]:hover,
.wp-block-button > .wp-block-button__link[href*="/about/"]:focus,
.wp-block-button > .wp-block-button__link[href*="/donation/"]:focus,
.wp-block-button > .wp-block-button__link[href*="/service/"]:focus{
  filter:brightness(1.06); transform:translateY(-1px);
}

/* Shared icon + trail (on the WRAPPER) — always BEHIND the pill */
.wp-block-button:has(> .wp-block-button__link[href*="/about/"])::before,
.wp-block-button:has(> .wp-block-button__link[href*="/donation/"])::before,
.wp-block-button:has(> .wp-block-button__link[href*="/service/"])::before,
.wp-block-button:has(> .wp-block-button__link[href*="/about/"])::after,
.wp-block-button:has(> .wp-block-button__link[href*="/donation/"])::after,
.wp-block-button:has(> .wp-block-button__link[href*="/service/"])::after{
  content:""; position:absolute; top:50%; transform:translateY(-50%);
  pointer-events:none; opacity:0; z-index:0; /* under the link */
}

/* Start positions (outside, left) */
.wp-block-button:has(> .wp-block-button__link[href*="/about/"])::before,
.wp-block-button:has(> .wp-block-button__link[href*="/donation/"])::before,
.wp-block-button:has(> .wp-block-button__link[href*="/service/"])::before{
  left:-56px; width:28px; height:24px;
  background:no-repeat 50% 50%/contain;
  filter:drop-shadow(0 1px 0 rgba(0,0,0,.15));
}
.wp-block-button:has(> .wp-block-button__link[href*="/about/"])::after,
.wp-block-button:has(> .wp-block-button__link[href*="/donation/"])::after,
.wp-block-button:has(> .wp-block-button__link[href*="/service/"])::after{
  left:-122px; width:96px; height:10px;
  background:repeating-linear-gradient(90deg, rgba(178,146,80,.9) 0 10px, rgba(178,146,80,0) 10px 18px);
  filter:blur(.2px);
}

/* Flight path (diagonal from behind → past the left edge → up-right) */
@keyframes gaFlyDiag {
  0%   { transform:translate(-10px,-50%) rotate(0);      opacity:0; }
  12%  { transform:translate(0,-50%) rotate(0);          opacity:.95; }
  55%  { transform:translate(70px,-70%) rotate(-12deg);  opacity:.85; }
  100% { transform:translate(180px,-120%) rotate(-18deg);opacity:0; }
}
@keyframes gaTrailDiag {
  0%   { transform:translate(0,-50%);    opacity:0; }
  18%  { transform:translate(12%,-50%);  opacity:.7; }
  72%  { transform:translate(120%,-50%); opacity:.45; }
  100% { transform:translate(220%,-50%); opacity:0; }
}

/* Trigger animations when the LINK is hovered/focused */
.wp-block-button:has(> .wp-block-button__link[href*="/about/"]:hover)::before,
.wp-block-button:has(> .wp-block-button__link[href*="/about/"]:focus)::before,
.wp-block-button:has(> .wp-block-button__link[href*="/donation/"]:hover)::before,
.wp-block-button:has(> .wp-block-button__link[href*="/donation/"]:focus)::before,
.wp-block-button:has(> .wp-block-button__link[href*="/service/"]:hover)::before,
.wp-block-button:has(> .wp-block-button__link[href*="/service/"]:focus)::before{
  animation:gaFlyDiag 1.05s ease-in forwards;
}
.wp-block-button:has(> .wp-block-button__link[href*="/about/"]:hover)::after,
.wp-block-button:has(> .wp-block-button__link[href*="/about/"]:focus)::after,
.wp-block-button:has(> .wp-block-button__link[href*="/donation/"]:hover)::after,
.wp-block-button:has(> .wp-block-button__link[href*="/donation/"]:focus)::after,
.wp-block-button:has(> .wp-block-button__link[href*="/service/"]:hover)::after,
.wp-block-button:has(> .wp-block-button__link[href*="/service/"]:focus)::after{
  animation:gaTrailDiag 1.05s ease-in forwards;
}

/* Per-button icons (BOOK / HEART / WRENCH) — data-URI SVGs */
.wp-block-button:has(> .wp-block-button__link[href*="/about/"])::before{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 24'%3E%3Cpath d='M4 5a3 3 0 0 1 3-3h15v15.5c0 .7-.8 1.1-1.3.7A8.4 8.4 0 0 0 16.5 16H7A3 3 0 0 0 4 19V5Z' fill='%23ffffff'/%3E%3Cpath d='M4 5a3 3 0 0 1 3-3h15v15.5c0 .7-.8 1.1-1.3.7A8.4 8.4 0 0 0 16.5 16H7A3 3 0 0 0 4 19V5Z' fill='none' stroke='%23B29250' stroke-width='2'/%3E%3Cpath d='M10 7h7M10 10h5' stroke='%23E3BF7E' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");
}
.wp-block-button:has(> .wp-block-button__link[href*="/donation/"])::before{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 24'%3E%3Cpath d='M14 21s-7.7-4.8-10.5-8.4C1.2 10 1.7 6.4 4.1 4.4c2.4-2 5.8-1.6 8 .4l1.9 1.8 1.9-1.8c2.2-2 5.6-2.4 8-.4 2.4 2 2.9 5.6.9 7.9C21.7 16.2 14 21 14 21z' fill='%23E3BF7E' stroke='%23B29250' stroke-width='1.4'/%3E%3C/svg%3E");
}
.wp-block-button:has(> .wp-block-button__link[href*="/service/"])::before{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 24'%3E%3Cpath d='M17.2 4a5.2 5.2 0 0 1-6.9 6.9L5.3 15l3 3 3.6-3.6A5.2 5.2 0 0 1 18.8 7l-2.6 2.6L18.8 7z' fill='%23E3BF7E' stroke='%23B29250' stroke-width='1.4'/%3E%3Ccircle cx='21.2' cy='19' r='3.2' fill='%23ffffff' stroke='%23B29250' stroke-width='1.6'/%3E%3C/svg%3E");
}

/* Respect reduced motion */
@media (prefers-reduced-motion: reduce){
  .wp-block-button:has(> .wp-block-button__link[href*="/about/"])::before,
  .wp-block-button:has(> .wp-block-button__link[href*="/about/"])::after,
  .wp-block-button:has(> .wp-block-button__link[href*="/donation/"])::before,
  .wp-block-button:has(> .wp-block-button__link[href*="/donation/"])::after,
  .wp-block-button:has(> .wp-block-button__link[href*="/service/"])::before,
  .wp-block-button:has(> .wp-block-button__link[href*="/service/"])::after{
    animation:none !important; opacity:1;
  }
}
/* === GA! Home CTA — “only show ABOVE the button” overrides ============ */
/* Keep effects behind the button text */
.wp-block-button { position: relative; }
.wp-block-button > .wp-block-button__link { position: relative; z-index: 1; }

/* Move start further left; keep trails/icons outside */
.wp-block-button:has(> .wp-block-button__link[href*="/about/"])::before,
.wp-block-button:has(> .wp-block-button__link[href*="/donation/"])::before,
.wp-block-button:has(> .wp-block-button__link[href*="/service/"])::before{
  left:-64px;                      /* further off-screen left */
  width:28px; height:24px;
  z-index:0;                       /* always under the button text */
}
.wp-block-button:has(> .wp-block-button__link[href*="/about/"])::after,
.wp-block-button:has(> .wp-block-button__link[href*="/donation/"])::after,
.wp-block-button:has(> .wp-block-button__link[href*="/service/"])::after{
  left:-136px;                     /* trail even further left */
  width:110px; height:10px;
  z-index:0;
}

/* New path: stay invisible (opacity:0) while skimming the pill,
   then fade in once it has risen well ABOVE the button. */
@keyframes gaFlyDiagHigh {
  /* alongside the button → invisible */
  0%   { transform:translate(-12px,-50%) rotate(0);      opacity:0; }
  35%  { transform:translate(12px,-54%) rotate(-4deg);   opacity:0; }
  /* begin to rise above the pill → start appearing */
  45%  { transform:translate(40px,-90%) rotate(-10deg);  opacity:.25; }
  60%  { transform:translate(90px,-140%) rotate(-14deg); opacity:.75; }
  /* well above the pill → fully visible then fade out */
  100% { transform:translate(220px,-220%) rotate(-18deg);opacity:0; }
}

@keyframes gaTrailDiagHigh {
  /* hide the trail while near the pill */
  0%   { transform:translate(0,-50%);    opacity:0; }
  38%  { transform:translate(10%,-50%);  opacity:0; }
  /* trail appears only once the icon is above */
  55%  { transform:translate(120%,-90%); opacity:.45; }
  100% { transform:translate(230%,-180%);opacity:0; }
}

/* Hook new keyframes to the existing triggers */
.wp-block-button:has(> .wp-block-button__link[href*="/about/"]:hover)::before,
.wp-block-button:has(> .wp-block-button__link[href*="/about/"]:focus)::before,
.wp-block-button:has(> .wp-block-button__link[href*="/donation/"]:hover)::before,
.wp-block-button:has(> .wp-block-button__link[href*="/donation/"]:focus)::before,
.wp-block-button:has(> .wp-block-button__link[href*="/service/"]:hover)::before,
.wp-block-button:has(> .wp-block-button__link[href*="/service/"]:focus)::before{
  animation: gaFlyDiagHigh 1.05s ease-in forwards;
}

.wp-block-button:has(> .wp-block-button__link[href*="/about/"]:hover)::after,
.wp-block-button:has(> .wp-block-button__link[href*="/about/"]:focus)::after,
.wp-block-button:has(> .wp-block-button__link[href*="/donation/"]:hover)::after,
.wp-block-button:has(> .wp-block-button__link[href*="/donation/"]:focus)::after,
.wp-block-button:has(> .wp-block-button__link[href*="/service/"]:hover)::after,
.wp-block-button:has(> .wp-block-button__link[href*="/service/"]:focus)::after{
  animation: gaTrailDiagHigh 1.05s ease-in forwards;
}
/* ===== GA! Home CTA — one animation per button, black icons, outside pill ===== */

/* 0) Hard reset any older per-button effects so nothing stacks */
.wp-block-button__link[href*="/about/"]::before,
.wp-block-button__link[href*="/about/"]::after,
.wp-block-button__link[href*="/donation/"]::before,
.wp-block-button__link[href*="/donation/"]::after,
.wp-block-button__link[href*="/service/"]::before,
.wp-block-button__link[href*="/service/"]::after { content:none !important; }

.wp-block-button { position:relative; overflow:visible !important; }
.wp-block-button > .wp-block-button__link { position:relative; z-index:1; }

/* 1) Base look for the three CTAs (keeps your style) */
.wp-block-button > .wp-block-button__link[href*="/about/"],
.wp-block-button > .wp-block-button__link[href*="/donation/"],
.wp-block-button > .wp-block-button__link[href*="/service/"]{
  border-radius:999px;
  font-weight:800;
  color:#fff;
  border:2px solid #B29250;
  background:linear-gradient(180deg,#B29250,#b18a42);
  box-shadow:0 8px 18px rgba(178,146,80,.22);
  transition:filter .12s ease, transform .12s ease;
  padding:.72rem 1.15rem;        /* label stays centered; icons fly OUTSIDE */
}
.wp-block-button > .wp-block-button__link[href*="/about/"]:hover,
.wp-block-button > .wp-block-button__link[href*="/donation/"]:hover,
.wp-block-button > .wp-block-button__link[href*="/service/"]:hover,
.wp-block-button > .wp-block-button__link[href*="/about/"]:focus,
.wp-block-button > .wp-block-button__link[href*="/donation/"]:focus,
.wp-block-button > .wp-block-button__link[href*="/service/"]:focus{
  filter:brightness(1.06);
  transform:translateY(-1px);
}

/* 2) Single fly-by ICON per button (attached to the wrapper ::before) */
.wp-block-button:has(> .wp-block-button__link[href*="/about/"])::before,
.wp-block-button:has(> .wp-block-button__link[href*="/donation/"])::before,
.wp-block-button:has(> .wp-block-button__link[href*="/service/"])::before{
  content:"";
  position:absolute;
  top:50%;
  left:-68px;                    /* start OUTSIDE, left of pill */
  transform:translate(-12px,-50%) rotate(0);
  width:28px; height:24px;
  background:no-repeat 50% 50%/contain;
  opacity:0;                     /* invisible beside/over the pill */
  pointer-events:none;
  z-index:0;                     /* behind button label */
}

/* 3) One path: invisible near pill → visible only ABOVE → fade out */
@keyframes gaFlyUpOne {
  /* alongside pill = invisible */
  0%   { transform:translate(-12px,-50%) rotate(0);      opacity:0; }
  35%  { transform:translate(  8px,-54%) rotate(-4deg);  opacity:0; }
  /* above pill = appear and rise */
  48%  { transform:translate( 50px,-95%) rotate(-10deg); opacity:.35; }
  65%  { transform:translate(110px,-150%) rotate(-14deg);opacity:.85; }
  /* high + out */
  100% { transform:translate(220px,-220%) rotate(-18deg);opacity:0; }
}

/* 4) Hook the animation (ONE animation per button) */
.wp-block-button:has(> .wp-block-button__link[href*="/about/"]:hover)::before,
.wp-block-button:has(> .wp-block-button__link[href*="/about/"]:focus)::before,
.wp-block-button:has(> .wp-block-button__link[href*="/donation/"]:hover)::before,
.wp-block-button:has(> .wp-block-button__link[href*="/donation/"]:focus)::before,
.wp-block-button:has(> .wp-block-button__link[href*="/service/"]:hover)::before,
.wp-block-button:has(> .wp-block-button__link[href*="/service/"]:focus)::before{
  animation: gaFlyUpOne 1.05s ease-in forwards;
}

/* 5) BLACK icons (data-URI SVGs) — one per button */

/* Learn more → BOOK (black) */
.wp-block-button:has(> .wp-block-button__link[href*="/about/"])::before{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 24'%3E%3Cpath d='M4 5a3 3 0 0 1 3-3h15v15.5c0 .7-.8 1.1-1.3.7A8.4 8.4 0 0 0 16.5 16H7A3 3 0 0 0 4 19V5Z' fill='%23ffffff'/%3E%3Cpath d='M4 5a3 3 0 0 1 3-3h15v15.5c0 .7-.8 1.1-1.3.7A8.4 8.4 0 0 0 16.5 16H7A3 3 0 0 0 4 19V5Z' fill='none' stroke='%23141414' stroke-width='2'/%3E%3Cpath d='M10 7h7M10 10h5' stroke='%23141414' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");
}

/* Support us → HEART (black) */
.wp-block-button:has(> .wp-block-button__link[href*="/donation/"])::before{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 24'%3E%3Cpath d='M14 21s-7.7-4.8-10.5-8.4C1.2 10 1.7 6.4 4.1 4.4c2.4-2 5.8-1.6 8 .4l1.9 1.8 1.9-1.8c2.2-2 5.6-2.4 8-.4 2.4 2 2.9 5.6.9 7.9C21.7 16.2 14 21 14 21z' fill='%23141414'/%3E%3C/svg%3E");
}

/* Service → WRENCH/GEAR (black) */
.wp-block-button:has(> .wp-block-button__link[href*="/service/"])::before{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 24'%3E%3Cpath d='M17.2 4a5.2 5.2 0 0 1-6.9 6.9L5.3 15l3 3 3.6-3.6A5.2 5.2 0 0 1 18.8 7l-2.6 2.6L18.8 7z' fill='%23141414'/%3E%3Ccircle cx='21.2' cy='19' r='3.2' fill='%23ffffff' stroke='%23141414' stroke-width='1.6'/%3E%3C/svg%3E");
}

/* 6) Motion preference */
@media (prefers-reduced-motion: reduce){
  .wp-block-button:has(> .wp-block-button__link[href*="/about/"])::before,
  .wp-block-button:has(> .wp-block-button__link[href*="/donation/"])::before,
  .wp-block-button:has(> .wp-block-button__link[href*="/service/"])::before{
    animation:none !important; opacity:1; transform:translate(-12px,-110%) rotate(-12deg);
  }
}
/* === OVERRIDES — zwarte icons buiten de knop ===================== */
/* BOOK voor “Learn more” (zwarte, duidelijk herkenbare boek-icoon) */
.wp-block-button:has(> .wp-block-button__link[href*="/about/"])::before{
  width:28px; height:24px;
  background:no-repeat 50% 50%/contain;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 24'%3E%3Crect x='4' y='3' width='20' height='18' rx='2' ry='2' fill='none' stroke='%23141414' stroke-width='2'/%3E%3Cpath d='M9 7h10M9 10h7M9 13h9' stroke='%23141414' stroke-width='2' stroke-linecap='round' fill='none'/%3E%3Cpath d='M6 3v8l2.6-1.5 2.6 1.5V3' fill='%23141414'/%3E%3C/svg%3E") !important;
}

/* GEAR (rouage) voor “Service” — tandwiel met tanden, zwart */
.wp-block-button:has(> .wp-block-button__link[href*="/service/"])::before{
  width:28px; height:28px;
  background:no-repeat 50% 50%/contain;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 28'%3E%3Ccircle cx='14' cy='14' r='7' fill='none' stroke='%23141414' stroke-width='2'/%3E%3Ccircle cx='14' cy='14' r='3' fill='%23ffffff' stroke='%23141414' stroke-width='2'/%3E%3Crect x='12.5' y='1' width='3' height='6' rx='1' fill='%23141414'/%3E%3Crect x='12.5' y='21' width='3' height='6' rx='1' fill='%23141414'/%3E%3Crect x='21' y='12.5' width='6' height='3' rx='1' fill='%23141414'/%3E%3Crect x='1' y='12.5' width='6' height='3' rx='1' fill='%23141414'/%3E%3Crect x='19.1' y='3.1' width='3' height='6' rx='1' transform='rotate(45 20.6 6.1)' fill='%23141414'/%3E%3Crect x='19.1' y='18.9' width='3' height='6' rx='1' transform='rotate(135 20.6 21.9)' fill='%23141414'/%3E%3Crect x='5.9' y='3.1' width='3' height='6' rx='1' transform='rotate(-45 7.4 6.1)' fill='%23141414'/%3E%3Crect x='5.9' y='18.9' width='3' height='6' rx='1' transform='rotate(-135 7.4 21.9)' fill='%23141414'/%3E%3C/svg%3E") !important;
}
/* --- STOP applying the book animation to /about/contact/ (ANBI page) --- */
.wp-block-button:has(> .wp-block-button__link[href*="/about/contact"])::before,
.wp-block-button:has(> .wp-block-button__link[href*="/about/contact"])::after{
  content:none !important;
}

/* --- Apply the book fly-by ONLY to the exact Learn more URL (/about/) --- */
/* Swap your broad [href*="/about/"] selector with this END-anchored one */
.wp-block-button:has(> .wp-block-button__link[href$="/about/"])::before,
.wp-block-button:has(> .wp-block-button__link[href$="/about/"])::after{
  /* keep whatever styles/animation you already use for the book here, e.g.: */
  opacity:0; /* will be animated in your existing keyframes */
}

/* And the hover trigger scoped to the exact /about/ button only */
.wp-block-button:has(> .wp-block-button__link[href$="/about/"]:hover)::before,
.wp-block-button:has(> .wp-block-button__link[href$="/about/"]:focus)::before{
  animation: gaFlyDiag 1.05s ease-in forwards;
}
.wp-block-button:has(> .wp-block-button__link[href$="/about/"]:hover)::after,
.wp-block-button:has(> .wp-block-button__link[href$="/about/"]:focus)::after{
  animation: gaTrailDiag 1.05s ease-in forwards;
}
/* === GA! Latest — look & light animations (no markup tricks) === */
.ga-gold-title{
  display:inline-block;
  margin:0;
  font-family:"Playfair Display SC", serif;
  letter-spacing:.02em;
  color:#B29250;
  background:linear-gradient(90deg,#B29250,#E3BF7E,#B29250);
  -webkit-background-clip:text;
  background-clip:text;
}
.ga-latest-head{ border-bottom:3px solid var(--wp--preset--color--contrast, #141414); padding-bottom:.4rem; }

/* Grid spacing */
.ga-latest-grid{ gap:var(--wp--preset--spacing--40, 24px); }

/* Card base */
.ga-card{
  border:1px solid #CCBAA9;
  border-radius:14px;
  background:linear-gradient(180deg,#ffffff,#fffdf9);
  box-shadow:0 10px 26px rgba(2,6,23,.08);
  padding:1rem 1.2rem 1.2rem;
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
  position:relative;
  overflow:hidden;
}
.ga-card:hover{
  transform:translateY(-2px);
  box-shadow:0 16px 36px rgba(2,6,23,.12);
  border-color:#d9c7b6;
}
.ga-card-top{ margin-bottom:.6rem; }
.ga-card-h{ margin:.1rem 0 .2rem; font-weight:800; color:#141414; }
.ga-sub{ margin:0; color:#6b5f57; font-size:.95rem; }

/* Podcast embed — tidy & halo on hover */
.ga-podcast-embed{
  border:1px solid #CCBAA9;
  border-radius:12px;
  overflow:hidden;
  box-shadow:0 6px 16px rgba(2,6,23,.06);
  transition: box-shadow .25s ease, filter .25s ease;
}
.ga-card--podcast:hover .ga-podcast-embed{
  box-shadow:0 10px 28px rgba(2,6,23,.12), 0 0 0 6px rgba(227,191,126,.18);
  filter: saturate(1.05);
}
.ga-card--podcast .ga-note{ margin:.6rem 0 0; color:#6b5f57; font-size:.9rem; }

/* Event image & caption */
.ga-event-figure{
  margin:0 0 .6rem 0;
  border-radius:12px;
  overflow:hidden;
  border:1px solid #CCBAA9;
  box-shadow:0 6px 16px rgba(2,6,23,.06);
}
.ga-event-figure img{ display:block; width:100%; height:auto; }
.ga-caption{ text-align:center; font-size:.88rem; color:#6b5f57; padding:.35rem .5rem; }

/* Event title/date */
.ga-event-title{ margin:.2rem 0 .2rem; font-weight:800; color:#141414; }
.ga-event-date{ margin:0 0 .5rem; color:#6b5f57; }

/* Register button */
.ga-actions .ga-btn{
  display:inline-flex; align-items:center; justify-content:center;
  border-radius:999px; padding:.6rem 1rem; font-weight:800;
  color:#fff; text-decoration:none;
  border:2px solid #B29250; background:linear-gradient(180deg,#B29250,#b18a42);
  box-shadow:0 8px 18px rgba(178,146,80,.20);
  transition: filter .12s ease, transform .12s ease, background-position .35s ease;
  position:relative;
  isolation:isolate; /* ensure icon sits behind */
}
/* Ticket icon fly-up on hover (simple, fun, unobtrusive) */
.ga-actions .ga-btn::before{
  content:"";
  position:absolute;
  left:.6rem; top:50%;
  width:18px; height:12px;
  transform:translate(-10px, 40%) rotate(-12deg);
  opacity:0; pointer-events:none; z-index:0;
  background:no-repeat 50% 50%/contain;
  /* black ticket icon */
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='36' height='24' viewBox='0 0 36 24'%3E%3Cpath d='M3 7a3 3 0 0 1 3-3h24a3 3 0 0 1 3 3v3a3 3 0 0 0 0 6v3a3 3 0 0 1-3 3H6a3 3 0 0 1-3-3v-3a3 3 0 0 0 0-6V7z' fill='%23000000'/%3E%3Cpath d='M12 6v12' stroke='%23fff' stroke-width='2' opacity='.4'/%3E%3C/svg%3E");
}
@keyframes gaTicketUp{
  0%{ transform:translate(-10px, 40%) rotate(-12deg); opacity:0; }
  25%{ opacity:.9; }
  100%{ transform:translate(110%, -160%) rotate(-18deg); opacity:0; }
}
.ga-actions .ga-btn:hover::before,
.ga-actions .ga-btn:focus::before{ animation: gaTicketUp .9s ease-out forwards; }
.ga-actions .ga-btn:hover, .ga-actions .ga-btn:focus{
  filter:brightness(1.06); transform:translateY(-1px);
}

/* Responsive tweaks */
@media (max-width:900px){
  .ga-latest-grid{ gap:18px; }
}
/* === GA! Highlights Ribbon (between About + Latest) === */
.ga-highlights{
  --ink:#141414; --muted:#6b5f57; --line:#CCBAA9; --gold:#B29250; --gold2:#E3BF7E;
  background:
    radial-gradient(24px 24px at 8% 12%, #fff9ef 18%, transparent 20%) no-repeat,
    linear-gradient(180deg,#ffffff,#fffdf9);
  padding: clamp(28px, 3vw, 44px) 0;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.ga-highlights-inner{ max-width:1100px; margin:0 auto; padding:0 16px; }

/* Section head */
.ga-highlights .ga-title{
  display:block; width:max-content; margin:0 auto .35rem;
  font-family:"Playfair Display SC", serif; letter-spacing:.02em;
  color:var(--gold);
  background:linear-gradient(90deg,var(--gold),var(--gold2),var(--gold));
  -webkit-background-clip:text; background-clip:text;
}
.ga-highlights .ga-title::after{
  content:""; display:block; width:78px; height:3px; margin:.45rem auto 0;
  background:linear-gradient(90deg,var(--gold),var(--gold2)); border-radius:3px;
}
.ga-highlights .ga-sub{
  margin:.2rem auto 1.1rem; text-align:center; max-width:60ch; color:var(--muted);
}

/* Grid */
.ga-highlights-grid{ gap:clamp(14px,2.2vw,22px); }

/* Card */
.ga-h-card{
  position:relative;
  border:1px solid var(--line);
  border-radius:16px;
  background:linear-gradient(180deg,#ffffff,#fffdf9);
  box-shadow:0 10px 26px rgba(2,6,23,.08);
  padding:1rem 1.1rem 1.15rem;
  overflow:hidden;
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.ga-h-card::before{
  /* soft gold edge on the left */
  content:""; position:absolute; inset:0 auto 0 0; width:6px;
  background:linear-gradient(180deg,var(--gold),#b18a42);
}
.ga-h-card:hover{
  transform:translateY(-2px);
  box-shadow:0 16px 36px rgba(2,6,23,.12);
  border-color:#d9c7b6;
}

/* Icon */
.ga-h-card .ga-ico{
  width:44px; height:44px; display:inline-flex; align-items:center; justify-content:center;
  border-radius:12px; background:#fff;
  border:1px solid var(--line);
  box-shadow:0 6px 16px rgba(2,6,23,.06);
  margin:.1rem 0 .5rem;
  transition: transform .25s ease, box-shadow .25s ease;
}
.ga-h-card:hover .ga-ico{
  transform: translateY(-2px) rotate(-2deg);
  box-shadow:0 10px 24px rgba(2,6,23,.12), 0 0 0 6px rgba(227,191,126,.14);
}
.ga-h{ margin:.2rem 0 .25rem; font-weight:800; color:var(--ink); }
.ga-blurb{ margin:0 0 .75rem; color:var(--muted); }

/* Button */
.ga-actions .ga-btn{
  display:inline-flex; align-items:center; justify-content:center;
  border-radius:999px; padding:.58rem .95rem; font-weight:800; line-height:1;
  color:#fff; text-decoration:none;
  border:2px solid var(--gold);
  background:linear-gradient(180deg,var(--gold),#b18a42);
  box-shadow:0 8px 18px rgba(178,146,80,.20);
  transition:filter .12s ease, transform .12s ease, background-position .35s ease;
  position:relative; isolation:isolate;
}
.ga-actions .ga-btn:hover,
.ga-actions .ga-btn:focus{
  filter:brightness(1.06); transform:translateY(-1px);
}

/* Subtle shimmer on hover (not overbearing) */
.ga-actions .ga-btn::after{
  content:""; position:absolute; inset:0; border-radius:inherit;
  background:linear-gradient(90deg,rgba(255,255,255,0) 0%,rgba(255,255,255,.4) 50%,rgba(255,255,255,0) 100%);
  background-size:240% 100%;
  transform:translateZ(0); opacity:0;
  transition:opacity .25s ease;
}
.ga-actions .ga-btn:hover::after,
.ga-actions .ga-btn:focus::after{
  opacity:1; animation: gaShine 1.8s linear infinite;
}
@keyframes gaShine{ to{ background-position:200% 0; } }

/* Responsiveness */
@media (max-width:900px){
  .ga-highlights .ga-sub{ margin-bottom:.9rem; }
}
/* Icons: allow image logo variant */
.ga-ico.ga-ico-img{
  padding:4px;
  display:flex; align-items:center; justify-content:center;
}
.ga-ico.ga-ico-img img{
  width:36px; height:36px; object-fit:contain; display:block;
  filter: drop-shadow(0 0 0 rgba(0,0,0,0)); /* crisp */
}

/* Buttons: keep hover lift only (no envelope/shine) */
.ga-actions .ga-btn{ position:relative; }
.ga-actions .ga-btn::after{ content:none !important; }  /* kills shimmer if present */
/* Scope: only the buttons inside .ga-highlights */
.ga-highlights .ga-actions .wp-block-button,
.ga-highlights .ga-actions .wp-block-button__link{
  position:relative;
  overflow:visible;
}

/* Nuke decorative ::before/::after effects that other styles might add */
.ga-highlights .ga-actions .wp-block-button::before,
.ga-highlights .ga-actions .wp-block-button::after,
.ga-highlights .ga-actions .wp-block-button__link::before,
.ga-highlights .ga-actions .wp-block-button__link::after{
  content:none !important;
  animation:none !important;
  background:none !important;
  box-shadow:none !important;
}

/* Keep your gold pill look + simple hover lift */
.ga-highlights .ga-actions .ga-btn{
  border-radius:999px; font-weight:800; color:#fff;
  border:2px solid #B29250; background:linear-gradient(180deg,#B29250,#b18a42);
  box-shadow:0 8px 18px rgba(178,146,80,.22);
  transition:filter .12s ease, transform .12s ease;
}
.ga-highlights .ga-actions .ga-btn:hover,
.ga-highlights .ga-actions .ga-btn:focus{
  filter:brightness(1.06); transform:translateY(-1px);
}

/* Logo image sizing in icon circle */
.ga-ico.ga-ico-img img{ width:36px; height:36px; object-fit:contain; display:block; }
/* === GA! Contact (Get involved) ============================ */
.ga-contact{ --ink:#141414; --muted:#6b5f57; --line:#CCBAA9; --gold:#B29250; --gold2:#E3BF7E; }
.ga-contact-row{ gap:clamp(20px,4vw,40px); }

/* Title with subtle gold shimmer */
.ga-contact-title{
  margin:0 0 .35rem;
  font-family:"Playfair Display SC", serif;
  letter-spacing:.02em;
  background:linear-gradient(90deg,var(--gold),var(--gold2),var(--gold));
  -webkit-background-clip:text; background-clip:text; color:transparent;
}
@media (prefers-reduced-motion:no-preference){
  .ga-contact-title{ background-size:200% 100%; animation:gaTitleShine 8s linear infinite; }
  @keyframes gaTitleShine{ to{background-position:200% 0;} }
}

.ga-contact-lede{
  margin:.1rem 0 .8rem; font-size:1.05rem; font-weight:700; color:var(--gold);
}
.ga-contact-body, .ga-contact-foot{ color:var(--ink); line-height:1.65; }
.ga-contact-foot{ margin:.8rem 0 0; color:var(--muted); }

/* Image with chip */
.ga-contact-figure{ position:relative; overflow:hidden; border-radius:16px;
  box-shadow:0 12px 28px rgba(2,6,23,.12); border:1px solid var(--line); }
.ga-contact-figure img{ display:block; width:100%; height:auto; }
.ga-chip{
  position:absolute; left:12px; bottom:12px;
  padding:.32rem .6rem; font-size:.85rem; font-weight:800; color:#141414;
  background:linear-gradient(180deg,#fff,#fffdf9);
  border:1px solid var(--line); border-radius:999px;
  box-shadow:0 6px 16px rgba(2,6,23,.10);
}

/* Form card */
.ga-form-card{
  margin:1rem 0 0; padding:1rem 1.1rem;
  background:linear-gradient(180deg,#ffffff,#fffdf9);
  border:1px solid var(--line); border-radius:16px;
  box-shadow:0 10px 26px rgba(2,6,23,.08);
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.ga-form-card:hover{ transform:translateY(-2px); box-shadow:0 16px 36px rgba(2,6,23,.12); border-color:#d9c7b6; }

/* Jetpack fields inside the card */
.ga-form-card .ga-field{ margin:.65rem 0; }
.ga-form-card label{ display:block; font-weight:800; font-size:.92rem; color:var(--ink); margin:0 0 .25rem; }
.ga-form-card input[type="text"],
.ga-form-card input[type="email"],
.ga-form-card textarea{
  width:100%; padding:.7rem .8rem; font:inherit; color:var(--ink);
  background:#fff; border:1px solid var(--line); border-radius:12px;
  box-shadow:0 2px 6px rgba(2,6,23,.04) inset; transition:border-color .15s, box-shadow .15s;
}
.ga-form-card textarea{ min-height:140px; resize:vertical; }
.ga-form-card input:focus, .ga-form-card textarea:focus{
  outline:none; border-color:var(--gold2);
  box-shadow:0 0 0 3px rgba(227,191,126,.25), 0 2px 6px rgba(2,6,23,.04) inset;
}

/* GA gold button (no envelope animations here) */
.ga-form-card .ga-btn,
.ga-form-card .wp-block-jetpack-button .wp-block-button__link{
  display:inline-flex; align-items:center; justify-content:center;
  border-radius:999px; padding:.7rem 1.15rem; font-weight:800; line-height:1; color:#fff;
  border:2px solid var(--gold);
  background:linear-gradient(180deg,var(--gold),#b18a42);
  box-shadow:0 8px 18px rgba(178,146,80,.22);
  transition:filter .12s ease, transform .12s ease;
}
.ga-form-card .ga-btn:hover,
.ga-form-card .wp-block-jetpack-button .wp-block-button__link:hover{
  filter:brightness(1.06); transform:translateY(-1px);
}

/* Kill any inherited decorative ::before/::after effects from other sections */
.ga-form-card .wp-block-jetpack-button .wp-block-button__link::before,
.ga-form-card .wp-block-jetpack-button .wp-block-button__link::after{ content:none !important; }

/* Responsive spacing between columns */
@media (max-width:900px){
  .ga-contact-row{ gap:20px; }
  .ga-contact-figure{ margin-top:.6rem; }
}
/* === GA! Contact (Get involved) — tweaks =================== */
.ga-contact{ --ink:#141414; --muted:#6b5f57; --line:#CCBAA9; --gold:#B29250; --gold2:#E3BF7E; }
.ga-contact-row{ gap:clamp(20px,4vw,44px); }

/* Center the heading & subtitle and keep them tight */
.ga-contact-col{ max-width:720px; margin-inline:auto; }
.ga-contact-title{
  margin:0 0 .25rem; text-align:center;
  font-family:"Playfair Display SC", serif; letter-spacing:.02em;
  background:linear-gradient(90deg,var(--gold),var(--gold2),var(--gold));
  -webkit-background-clip:text; background-clip:text; color:transparent;
}
.ga-contact-lede{ text-align:center; margin:.1rem 0 1rem; font-weight:800; color:var(--gold); }

/* Interactive text: gentle gold highlight on hover/keyboard focus */
.ga-touch{ position:relative; }
.ga-touch:hover, .ga-touch:focus-within{
  text-shadow:0 0 0 rgba(0,0,0,0); /* no blur; keeps crisp text */
}
.ga-touch:hover::selection{ background:rgba(227,191,126,.35); }
.ga-touch a{
  color:var(--ink); text-decoration:none; background:
    linear-gradient(currentColor, currentColor) 0 100% / 0 2px no-repeat;
  transition:background-size .25s ease, color .15s ease;
}
.ga-touch a:hover{ color:var(--gold); background-size:100% 2px; }

/* Image spacing: push it in from the right edge on wide screens */
.ga-contact-figure{
  position:relative; overflow:hidden; border-radius:16px;
  box-shadow:0 12px 28px rgba(2,6,23,.12); border:1px solid var(--line);
  margin-right:clamp(12px,3vw,36px);
}
@media (max-width:900px){
  .ga-contact-figure{ margin-right:0; }
}

/* Form card keeps your existing look */
.ga-form-card{
  margin:1rem 0 0; padding:1rem 1.1rem;
  background:linear-gradient(180deg,#ffffff,#fffdf9);
  border:1px solid var(--line); border-radius:16px;
  box-shadow:0 10px 26px rgba(2,6,23,.08);
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.ga-form-card:hover{ transform:translateY(-2px); box-shadow:0 16px 36px rgba(2,6,23,.12); border-color:#d9c7b6; }

.ga-field{ margin:.65rem 0; }
.ga-form-card label{ display:block; font-weight:800; font-size:.92rem; color:var(--ink); margin:0 0 .25rem; }
.ga-form-card input[type="text"],
.ga-form-card input[type="email"],
.ga-form-card textarea{
  width:100%; padding:.7rem .8rem; font:inherit; color:var(--ink);
  background:#fff; border:1px solid var(--line); border-radius:12px;
  box-shadow:0 2px 6px rgba(2,6,23,.04) inset; transition:border-color .15s, box-shadow .15s;
}
.ga-form-card textarea{ min-height:140px; resize:vertical; }
.ga-form-card input:focus, .ga-form-card textarea:focus{
  outline:none; border-color:var(--gold2);
  box-shadow:0 0 0 3px rgba(227,191,126,.25), 0 2px 6px rgba(2,6,23,.04) inset;
}

/* Gold button (no envelope animation here) */
.ga-form-card .ga-btn,
.ga-form-card .wp-block-jetpack-button .wp-block-button__link{
  display:inline-flex; align-items:center; justify-content:center;
  border-radius:999px; padding:.7rem 1.15rem; font-weight:800; line-height:1; color:#fff;
  border:2px solid var(--gold);
  background:linear-gradient(180deg,var(--gold),#b18a42);
  box-shadow:0 8px 18px rgba(178,146,80,.22);
  transition:filter .12s ease, transform .12s ease;
}
.ga-form-card .ga-btn:hover,
.ga-form-card .wp-block-jetpack-button .wp-block-button__link:hover{
  filter:brightness(1.06); transform:translateY(-1px);
}
/* Ensure NO inherited icon/animation decorations */
.ga-form-card .wp-block-jetpack-button .wp-block-button__link::before,
.ga-form-card .wp-block-jetpack-button .wp-block-button__link::after{ content:none !important; }

/* Motion respect */
@media (prefers-reduced-motion:reduce){
  .ga-form-card{ transition:none; }
}
/* === GA! Get involved — layout hot-fix ================================== */
.ga-contact{ --ink:#141414; --muted:#6b5f57; --line:#CCBAA9; --gold:#B29250; --gold2:#E3BF7E; }

/* Make the columns a clean grid with breathing room */
.ga-contact-row{
  display:grid;
  grid-template-columns: 1.05fr .95fr;   /* text / image */
  align-items:center;
  gap:clamp(24px,5vw,56px);
  padding-inline:clamp(14px,3.5vw,36px); /* margin feel on both sides */
  max-width:1100px;
  margin-inline:auto;
}

/* Text column width + inner spacing */
.ga-contact-col{
  max-width:720px;
  margin-inline:auto;
}

/* Title + subtitle remain centered */
.ga-contact-title{ text-align:center; }
.ga-contact-lede{ text-align:center; margin:.15rem 0 1rem; font-weight:800; color:var(--gold); }

/* Image card: cap size, add margin feel, keep 3/4 crop */
.ga-contact-figure{
  justify-self:end;
  margin:0;                             /* reset WP defaults */
  border-radius:16px;
  overflow:hidden;
  border:1px solid var(--line);
  box-shadow:0 12px 28px rgba(2,6,23,.12);
  max-width:min(520px,42vw);            /* << cap width */
  aspect-ratio:3/4;
}
.ga-contact-figure img{
  width:100%; height:100%; object-fit:cover; display:block;
  transform:none !important;            /* avoid theme transforms */
}

/* Stack nicely on mobile and keep margins */
@media (max-width: 980px){
  .ga-contact-row{ grid-template-columns:1fr; }
  .ga-contact-figure{ justify-self:center; max-width:520px; margin-top:12px; }
  .ga-contact-col{ margin-inline:clamp(10px,4vw,20px); }
}

/* === Jetpack form clean-up (inputs were stretching/misaligned) ========= */
.ga-contact .wp-block-jetpack-contact-form{ width:100%; }
.ga-contact .wp-block-jetpack-contact-form label{
  display:block; font-weight:800; font-size:.92rem; color:var(--ink); margin:0 0 .25rem;
}
.ga-contact .wp-block-jetpack-contact-form input[type="text"],
.ga-contact .wp-block-jetpack-contact-form input[type="email"],
.ga-contact .wp-block-jetpack-contact-form textarea{
  width:100%; box-sizing:border-box;
  padding:.72rem .85rem; font:inherit; color:var(--ink);
  background:#fff; border:1px solid var(--line); border-radius:12px;
  box-shadow:0 2px 6px rgba(2,6,23,.04) inset;
}
.ga-contact .wp-block-jetpack-contact-form textarea{ min-height:140px; resize:vertical; }
.ga-contact .wp-block-jetpack-contact-form input:focus,
.ga-contact .wp-block-jetpack-contact-form textarea:focus{
  outline:none; border-color:var(--gold2);
  box-shadow:0 0 0 3px rgba(227,191,126,.25), 0 2px 6px rgba(2,6,23,.04) inset;
}

/* Submit button (no envelope animation) */
.ga-contact .wp-block-jetpack-button .wp-block-button__link{
  display:inline-flex; align-items:center; justify-content:center;
  border-radius:999px; padding:.7rem 1.15rem; font-weight:800; line-height:1; color:#fff;
  border:2px solid var(--gold);
  background:linear-gradient(180deg,var(--gold),#b18a42);
  box-shadow:0 8px 18px rgba(178,146,80,.22);
  transition:filter .12s ease, transform .12s ease;
}
.ga-contact .wp-block-jetpack-button .wp-block-button__link:hover{
  filter:brightness(1.06); transform:translateY(-1px);
}
/* Ensure NO inherited icon/animation decorations from global CTA styles */
.ga-contact .wp-block-jetpack-button .wp-block-button__link::before,
.ga-contact .wp-block-jetpack-button .wp-block-button__link::after{
  content:none !important;
}

/* Card around the form (keeps it tidy) */
.ga-form-card{
  margin:1rem 0 0; padding:1rem 1.1rem;
  background:linear-gradient(180deg,#ffffff,#fffdf9);
  border:1px solid var(--line); border-radius:16px;
  box-shadow:0 10px 26px rgba(2,6,23,.08);
}

/* === GA! — About page hero (nice, centered, gold, tidy) =============== */
.ga-about{
  --ink:#141414; --muted:#6b5f57; --line:#CCBAA9; --gold:#B29250; --gold2:#E3BF7E;
  max-width:1060px; margin-inline:auto;
  padding:clamp(10px,2.5vw,18px) clamp(12px,3.2vw,24px);
}

/* Title: gold gradient, subtle underline accent */
.ga-about h2{
  margin:0 0 .6rem;
  font-weight:900; letter-spacing:.01em;
  background:linear-gradient(90deg,var(--gold),var(--gold2),var(--gold));
  -webkit-background-clip:text; background-clip:text; color:transparent;
  text-shadow:0 1px 0 rgba(0,0,0,.06);
  position:relative;
}
.ga-about h2::after{
  content:""; display:block; width:88px; height:3px; margin:.5rem auto 0;
  background:linear-gradient(90deg,var(--gold),var(--gold2));
  border-radius:3px;
}

/* Lede paragraph: centered, comfy line-height */
.ga-about p.has-text-align-center{
  max-width:58ch; margin:.8rem auto 1.4rem;
  line-height:1.65; color:var(--ink);
}

/* Buttons row: centered, pill buttons in GA style */
.ga-about .wp-block-buttons{
  justify-content:center; gap:12px; flex-wrap:wrap;
}
.ga-about .wp-block-button .wp-block-button__link{
  display:inline-flex; align-items:center; justify-content:center;
  border-radius:999px; padding:.70rem 1.15rem; font-weight:800; line-height:1;
  color:#fff; text-decoration:none;
  border:2px solid var(--gold);
  background:linear-gradient(180deg,var(--gold),#b18a42);
  box-shadow:0 8px 18px rgba(178,146,80,.22);
  transition:filter .12s ease, transform .12s ease;
}
/* Hover pop (no envelope/icon animations here) */
.ga-about .wp-block-button .wp-block-button__link:hover,
.ga-about .wp-block-button .wp-block-button__link:focus{
  filter:brightness(1.06); transform:translateY(-1px); outline:none;
}
/* Ensure no global button animations bleed in */
.ga-about .wp-block-button .wp-block-button__link::before,
.ga-about .wp-block-button .wp-block-button__link::after{ content:none !important; }

/* Optional: wrap the center content in a soft card for readability */
.ga-about > .wp-block-heading + p.has-text-align-center{
  background:linear-gradient(180deg,#ffffff,#fffdf9);
  border:1px solid var(--line);
  border-radius:14px;
  box-shadow:0 6px 18px rgba(2,6,23,.06);
  padding:1rem 1.1rem;
}
/* About page buttons: force both pills to be equally round */
.ga-about .wp-block-buttons{ gap:12px; flex-wrap:wrap; }

.ga-about .wp-block-button .wp-block-button__link,
.ga-about .wp-block-button.is-style-fill .wp-block-button__link,
.ga-about .wp-block-button.is-style-outline .wp-block-button__link{
  display:inline-flex; align-items:center; justify-content:center;
  padding:.70rem 1.15rem !important;
  border-radius:999px !important;     /* ← makes both perfectly round */
  line-height:1;
}

/* Optional: keep the GA gold look consistent on both */
.ga-about .wp-block-button .wp-block-button__link{
  border:2px solid #B29250; 
  background:linear-gradient(180deg,#B29250,#b18a42);
  color:#fff; font-weight:800;
  box-shadow:0 8px 18px rgba(178,146,80,.22);
  transition:filter .12s, transform .12s;
}
.ga-about .wp-block-button .wp-block-button__link:hover{ 
  filter:brightness(1.06); transform:translateY(-1px);
}
/* ===== GA! Archive styling (scoped to .ga-archive) ===== */
.ga-archive .wp-block-post-template {
  --gap: clamp(12px, 2vw, 22px);
  display: grid !important;
  gap: var(--gap) !important;
}

/* Better grid breakpoints */
@media (min-width: 600px){ .ga-archive .wp-block-post-template { grid-template-columns: repeat(2, minmax(0,1fr)) !important; } }
@media (min-width: 900px){ .ga-archive .wp-block-post-template { grid-template-columns: repeat(3, minmax(0,1fr)) !important; } }
@media (min-width: 1200px){ .ga-archive .wp-block-post-template { grid-template-columns: repeat(4, minmax(0,1fr)) !important; } }

/* Card shell */
.ga-archive .wp-block-post {
  background: #fff;
  border: 1px solid #D7C8B4;
  border-radius: 14px;
  box-shadow: 0 10px 26px rgba(2,6,23,.06);
  overflow: hidden;
  transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}
.ga-archive .wp-block-post:hover {
  transform: translateY(-3px);
  box-shadow: 0 16px 38px rgba(2,6,23,.10);
  border-color: #cdbb9f;
}

/* Featured image */
.ga-archive .wp-block-post-featured-image {
  margin: 0 !important;
  aspect-ratio: 3/2;
  overflow: hidden;
}
.ga-archive .wp-block-post-featured-image img {
  display: block;
  width: 100%; height: 100%;
  object-fit: cover;
  transform: scale(1);
  transition: transform .35s ease;
}
.ga-archive .wp-block-post:hover .wp-block-post-featured-image img {
  transform: scale(1.035);
}

/* Inner content spacing */
.ga-archive .wp-block-post > .wp-block-group {
  padding: 12px 14px 16px;
}

/* Meta: date & author */
.ga-archive time,
.ga-archive .wp-block-post-author-name a {
  color: #6b5f57;
  font-size: .9rem;
}
.ga-archive .wp-block-post-author-name a { text-decoration: none; border-bottom: 1px dashed #B29250; }
.ga-archive .wp-block-post-author-name a:hover { color: #B29250; }

/* Title */
.ga-archive .wp-block-post-title a {
  text-decoration: none;
  color: #1b1b1b;
  font-weight: 800;
  line-height: 1.15;
  transition: color .15s ease, text-shadow .15s ease;
}
.ga-archive .wp-block-post:hover .wp-block-post-title a {
  color: #B29250;
  text-shadow: 0 0 0 rgba(0,0,0,0);
}

/* Pagination */
.ga-archive .wp-block-query-pagination {
  gap: 10px;
}
.ga-archive .wp-block-query-pagination a,
.ga-archive .wp-block-query-pagination .page-numbers {
  display: inline-block;
  padding: .55rem .85rem;
  border-radius: 999px;
  border: 2px solid #B29250;
  text-decoration: none;
  color: #1b1b1b;
  background: #fff;
  transition: filter .12s ease, transform .12s ease, background .12s ease;
}
.ga-archive .wp-block-query-pagination a:hover,
.ga-archive .wp-block-query-pagination .page-numbers:hover {
  background: linear-gradient(180deg,#B29250,#b18a42);
  color: #fff;
  transform: translateY(-1px);
}
.ga-archive .wp-block-query-pagination .current {
  background: linear-gradient(180deg,#B29250,#b18a42);
  color: #fff;
}

/* Categories section — golden pill cloud */
.ga-archive .alignwide + .alignwide .wp-block-group.has-xxxx-large-font-size p {
  margin: 0 .4rem .45rem 0;
  display: inline-block;
}
.ga-archive .alignwide + .alignwide .wp-block-group.has-xxxx-large-font-size a {
  display: inline-block;
  font-size: clamp(.92rem, 2vw, 1rem);
  line-height: 1;
  padding: .5rem .8rem;
  border-radius: 999px;
  border: 1px solid #D7C8B4;
  background: #fff;
  color: #1b1b1b;
  text-decoration: none;
  transition: background .12s ease, border-color .12s ease, color .12s ease, transform .12s ease;
}
.ga-archive .alignwide + .alignwide .wp-block-group.has-xxxx-large-font-size a:hover {
  background: #E3BF7E;
  border-color: #B29250;
  color: #1b1b1b;
  transform: translateY(-1px);
}

/* Small polish */
.ga-archive .wp-block-group.alignwide > .wp-block-group.alignwide h2 {
  color: #B29250;
  letter-spacing: .03em;
}
/* === GA! Jetpack Countdown — clean single row, labels under numbers === */
.wp-block-jetpack-event-countdown.ga-count-line{
  --bg:#FCF9F5; --ink:#1b1b1b; --muted:#6b5f57; --gold:#B29250; --line:#D7C8B4;
  box-sizing:border-box; background:var(--bg);
  border:1px solid var(--line); border-radius:16px;
  box-shadow:0 14px 36px rgba(2,6,23,.08);
  padding:22px 22px 52px;
  max-width:980px; margin:26px auto;
  text-align:center; position:relative;
}

/* Soft gold glow band */
.wp-block-jetpack-event-countdown.ga-count-line{
  background:
    radial-gradient(480px 120px at 8% 0%, rgba(227,191,126,.25), transparent 60%),
    var(--bg);
}

/* Title above */
.wp-block-jetpack-event-countdown.ga-count-line > div{
  display:flex; flex-direction:column; gap:10px;
}
.wp-block-jetpack-event-countdown.ga-count-line .event-countdown__event-title{ order:-1; }
.wp-block-jetpack-event-countdown.ga-count-line .event-countdown__event-title p{
  margin:.2rem 0 .5rem;
  font-family:"Playfair Display", Georgia, serif;
  font-weight:900; letter-spacing:.2px; color:var(--gold);
  font-size:1.9rem;
}

/* Hide raw Unix time + Jetpack's default "until" line */
.wp-block-jetpack-event-countdown.ga-count-line .event-countdown__date{ display:none !important; }
.wp-block-jetpack-event-countdown.ga-count-line .event-countdown__counter + p{ display:none !important; }

/* ONE HORIZONTAL ROW — Force grid layout as backup to flex */
.wp-block-jetpack-event-countdown.ga-count-line .event-countdown__counter{
  display:grid !important;
  grid-template-columns:repeat(4, 170px) !important;
  justify-content:center !important;
  gap:18px !important;
  margin:0 auto !important;
  width:100% !important;
}

/* Each unit cell */
.wp-block-jetpack-event-countdown.ga-count-line .event-countdown__counter > *{
  box-sizing:border-box !important;
  width:170px !important;                        
  margin:0 !important; 
  padding:0 !important;
  line-height:1 !important;
  text-align:center !important;
  display:block !important;
  position:relative !important;
}

/* Target the actual countdown elements */
.wp-block-jetpack-event-countdown.ga-count-line .event-countdown__day,
.wp-block-jetpack-event-countdown.ga-count-line .event-countdown__hour,
.wp-block-jetpack-event-countdown.ga-count-line .event-countdown__minute,
.wp-block-jetpack-event-countdown.ga-count-line .event-countdown__second{
  box-sizing:border-box !important;
  width:170px !important;
  margin:0 !important;
  padding:0 !important;
  display:block !important;
  text-align:center !important;
  line-height:1 !important;
  font-size:0 !important;
}

/* Number box */
.wp-block-jetpack-event-countdown.ga-count-line .event-countdown__counter strong{
  box-sizing:border-box;
  display:block !important; 
  width:170px !important; 
  min-height:104px !important;
  padding:20px 16px 12px !important;
  margin:0 auto 8px !important;
  background:#fff !important; 
  color:var(--ink) !important;
  border:1px solid var(--line) !important; 
  border-radius:12px !important;
  box-shadow:0 8px 24px rgba(2,6,23,.06) !important;
  font-variant-numeric:tabular-nums !important; 
  font-weight:800 !important;
  font-size:2.1rem !important;
  line-height:1.2 !important;
  text-align:center !important;
  transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease !important;
}

.wp-block-jetpack-event-countdown.ga-count-line .event-countdown__counter strong:hover{
  transform:translateY(-2px) !important;
  box-shadow:0 14px 36px rgba(2,6,23,.10) !important;
  border-color:#cdbb9f !important;
}

/* Show the actual text labels (days, hours, etc.) and style them */
.wp-block-jetpack-event-countdown.ga-count-line .event-countdown__day,
.wp-block-jetpack-event-countdown.ga-count-line .event-countdown__hour,
.wp-block-jetpack-event-countdown.ga-count-line .event-countdown__minute,
.wp-block-jetpack-event-countdown.ga-count-line .event-countdown__second{
  font-size:.78rem !important;
  letter-spacing:.08em !important; 
  text-transform:uppercase !important;
  color:var(--gold) !important; 
  font-weight:600 !important;
  line-height:1.3 !important;
  margin-top:4px !important;
}

/* Make sure labels are visible */
.wp-block-jetpack-event-countdown.ga-count-line .event-countdown__day::first-line,
.wp-block-jetpack-event-countdown.ga-count-line .event-countdown__hour::first-line,
.wp-block-jetpack-event-countdown.ga-count-line .event-countdown__minute::first-line,
.wp-block-jetpack-event-countdown.ga-count-line .event-countdown__second::first-line{
  font-size:0 !important;
}

/* Alternative: use text directly if it's in the element */
.wp-block-jetpack-event-countdown.ga-count-line .event-countdown__day::after{ 
  content:"Days" !important; 
  display:block !important;
  font-size:.78rem !important;
}
.wp-block-jetpack-event-countdown.ga-count-line .event-countdown__hour::after{ 
  content:"Hours" !important; 
  display:block !important;
  font-size:.78rem !important;
}
.wp-block-jetpack-event-countdown.ga-count-line .event-countdown__minute::after{ 
  content:"Minutes" !important; 
  display:block !important;
  font-size:.78rem !important;
}
.wp-block-jetpack-event-countdown.ga-count-line .event-countdown__second::after{ 
  content:"Seconds" !important; 
  display:block !important;
  font-size:.78rem !important;
}

/* Footer shimmer */
.wp-block-jetpack-event-countdown.ga-count-line::after{
  content:"Mark your calendar — see you there";
  position:absolute; left:50%; bottom:14px; transform:translateX(-50%);
  font-weight:700; letter-spacing:.02em; font-size:.95rem;
  background:linear-gradient(90deg, var(--muted), var(--gold), var(--muted));
  -webkit-background-clip:text; background-clip:text; color:transparent;
  animation:gaShimmer 3.6s ease-in-out infinite;
}
@keyframes gaShimmer{ 0%,100%{ filter:brightness(1) } 50%{ filter:brightness(1.15) } }
@media (prefers-reduced-motion:reduce){ .wp-block-jetpack-event-countdown.ga-count-line::after{ animation:none; } }

/* Mobile: wrap to 2×2 */
@media (max-width:720px){
  .wp-block-jetpack-event-countdown.ga-count-line .event-countdown__counter{
    grid-template-columns:repeat(2, 46%) !important;
  }
  .wp-block-jetpack-event-countdown.ga-count-line .event-countdown__counter > *,
  .wp-block-jetpack-event-countdown.ga-count-line .event-countdown__day,
  .wp-block-jetpack-event-countdown.ga-count-line .event-countdown__hour,
  .wp-block-jetpack-event-countdown.ga-count-line .event-countdown__minute,
  .wp-block-jetpack-event-countdown.ga-count-line .event-countdown__second{
    width:100% !important;
  }
  .wp-block-jetpack-event-countdown.ga-count-line .event-countdown__counter strong{
    width:100% !important;
  }
}
/* Intro section polish */
.ga-intro .wp-block-columns {
  row-gap: clamp(12px, 2vw, 24px);
}
.ga-intro .wp-block-heading {
  line-height: 1.15;
  letter-spacing: -0.01em;
}
.ga-intro p {
  margin-block: 0.6em 1em;
}

/* QR: sharper + accessible tap size */
.ga-intro .ga-qr img {
  image-rendering: -webkit-optimize-contrast;
  max-width: 160px;
  width: 40%;
  min-width: 120px;
  height: auto;
}

/* Slideshow column: keep a pleasant max width on large displays */
.ga-intro .ga-slideshow-col {
  max-width: 760px;
  margin-inline: auto;
}

/* Reduce CLS: reserve height for slideshow images on load */
.wp-block-jetpack-slideshow_image {
  aspect-ratio: 16/9;
  object-fit: cover;
  width: 100%;
  height: auto;
  display: block;
}

/* Better controls hit area on mobile */
.wp-block-jetpack-slideshow_button-prev,
.wp-block-jetpack-slideshow_button-next {
  padding: 8px;
}

/* Dark images? Optional light lift for captions/buttons if you add later */
.ga-intro .is-style-rectangular {
  --ga-shadow: 0 6px 30px rgba(0,0,0,.15);
  box-shadow: var(--ga-shadow);
  border-radius: 12px;
  overflow: hidden;
}
/* ===== GA! Insights Intro v5 — no crop + QR fills ===== */
.ga-intro5 .wp-block-columns{
  column-gap: clamp(36px, 5.5vw, 64px);
  row-gap: clamp(18px, 3.5vw, 30px);
}
.ga-intro5 .ga-intro5-left{ position: relative; z-index: 3; }
.ga-intro5 .ga-intro5-title{ margin-bottom: clamp(22px, 3vw, 40px) !important; }

/* Media card */
.ga-intro5 .ga-media-card{
  background: linear-gradient(180deg, #fff, #fffdf9);
  border: 1px solid var(--line);
  border-radius: 14px;
  box-shadow: 0 10px 28px rgba(2,6,23,.06);
  padding: 12px;
}
.ga-intro5 .ga-media-viewport{
  /* Auto height with a soft cap: images decide height (no crop), but box stays compact */
  max-height: clamp(260px, 36vw, 420px);
  border-radius: 10px;
  overflow: hidden;
  background: #fffdf9;
}

/* Let slideshow inherit natural height */
.ga-intro5 .ga-insights-slideshow .wp-block-jetpack-slideshow_container,
.ga-intro5 .ga-insights-slideshow .wp-block-jetpack-slideshow_swiper-wrapper,
.ga-intro5 .ga-insights-slideshow .wp-block-jetpack-slideshow_slide{
  height: auto !important;
}

/* Images: show full, fill as much as possible without cropping */
.ga-intro5 .ga-insights-slideshow .wp-block-jetpack-slideshow_image{
  display: block;
  width: 100%;
  height: auto;
  max-height: clamp(260px, 36vw, 420px); /* match viewport cap */
  object-fit: contain;         /* no crop */
  object-position: center;
  background: #fffdf9;         /* subtle letterbox if needed */
}

/* Optional micro zoom on hover without cropping (visual fill) */
.ga-intro5 .ga-insights-slideshow:hover .wp-block-jetpack-slideshow_image{
  transform: scale(1.01);
  transition: transform .2s ease;
}

/* QR code — fills its box + hover animation */
.ga-intro5 .ga-qr{
  display: inline-block;
  margin: .25rem 0 0;
  border-radius: 12px;
  overflow: hidden;               /* sheen stays inside */
  border: 1px solid var(--line);
  box-shadow: 0 6px 16px rgba(2,6,23,.06);
  /* Define the box size; image will fill it */
  width: clamp(140px, 34%, 200px);
  aspect-ratio: 1/1;
  padding: 0;                     /* no padding so the image truly fills */
  position: relative;
}
.ga-intro5 .ga-qr img{
  width: 100%;
  height: 100%;
  object-fit: contain;            /* QR stays crisp and fully visible */
  display: block;
  border-radius: 0;
  transition: transform .25s ease, filter .25s ease;
}

/* Sheen overlay + lift on hover */
.ga-intro5 .ga-qr.ga-qr-anim::after{
  content:"";
  position:absolute; inset:0;
  background: linear-gradient(110deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.65) 18%, rgba(255,255,255,0) 36%);
  transform: translateX(-120%);
  pointer-events:none;
}
.ga-intro5 .ga-qr.ga-qr-anim:hover{
  border-color:#d9c7b6; box-shadow:0 12px 28px rgba(2,6,23,.12);
}
.ga-intro5 .ga-qr.ga-qr-anim:hover img{
  transform: translateY(-2px) scale(1.02);
  filter: contrast(1.05);
}
.ga-intro5 .ga-qr.ga-qr-anim:hover::after{
  animation: gaQrShine 900ms cubic-bezier(.22,.61,.36,1) 1;
}
@keyframes gaQrShine{
  0%{ transform: translateX(-120%); }
  100%{ transform: translateX(120%); }
}

/* Controls tap targets */
.wp-block-jetpack-slideshow_button-prev,
.wp-block-jetpack-slideshow_button-next{ padding: 8px; }

/* Motion preferences */
@media (prefers-reduced-motion: reduce){
  .ga-intro5 *{ animation:none !important; transition:none !important; }
}
/* Center the Spotify QR wrapper and its image */
.ga-intro5 .ga-qr{
  margin-left:auto;
  margin-right:auto;
  display:grid;
  place-items:center;      /* centers content both axes */
}

/* (Optional) also center the label above it */
.ga-intro5-left p strong{
  display:block;
  text-align:center;
}
/* ===== GA! Episodes — consolidated, tidy, and functional ===== */
.ga-episodes{
  /* Palette */
  --ink:#141414; --muted:#6b5f57; --line:#CCBAA9; --gold:#B29250; --gold2:#E3BF7E;

  /* Spacing + embed sizing */
  --ep-gap: clamp(10px, 1.2vw, 14px);
  --ep-gap-bottom: clamp(10px, 1.2vw, 14px);
  --ep-embed-h: clamp(220px, 22vw, 320px);   /* height of the Spotify box */
  --ep-embed-pad: .3rem;                      /* inner padding for Spotify box */
}

/* Card look for each Media & Text */
.ga-episodes .wp-block-media-text{
  gap: clamp(14px, 2.6vw, 24px);
  align-items: start; /* align titles at the top */
  padding: clamp(12px, 2.4vw, 18px);
  border:1px solid var(--line);
  border-radius:14px;
  background: linear-gradient(180deg,#ffffff,#fffdf9);
  box-shadow:0 8px 24px rgba(2,6,23,.06);
  transition: box-shadow .2s ease, transform .2s ease, border-color .2s ease, background .2s ease;
  margin-bottom: clamp(16px, 3.2vw, 28px);
}
.ga-episodes .wp-block-media-text:hover{
  transform: translateY(-2px);
  box-shadow:0 16px 36px rgba(2,6,23,.12);
  border-color:#d9c7b6;
}

/* Alternate layout: image left/right per row (desktop only) */
@media (min-width: 781px){
  .ga-episodes .wp-block-media-text:nth-of-type(even){
    grid-template-columns: 1fr 1fr;
  }
  .ga-episodes .wp-block-media-text:nth-of-type(even) .wp-block-media-text__media{ order:2; }
  .ga-episodes .wp-block-media-text:nth-of-type(even) .wp-block-media-text__content{ order:1; }
}

/* Artwork frame (square, no crop) */
.ga-episodes .wp-block-media-text__media{
  border-radius:12px; overflow:hidden;
  border:1px solid var(--line);
  box-shadow:0 6px 18px rgba(2,6,23,.06);
}
.ga-episodes .wp-block-media-text__media img{
  width:100%; height:100%;
  aspect-ratio: 1 / 1;
  object-fit: contain;           /* never crop covers */
  background:#fff;
  display:block;
}

/* Content column base + rhythm */
.ga-episodes .wp-block-media-text__content{
  display: grid;
  row-gap: clamp(8px, 1.4vw, 14px);
  min-width: 0;                  /* prevents right-edge clipping of audio controls */
}
.ga-episodes .wp-block-media-text__content > *{ margin:0; }
.ga-episodes .wp-block-media-text__content p{
  color:var(--ink);
  line-height:1.6;
  margin-bottom: clamp(8px, 1.2vw, 12px);
}
.ga-episodes .wp-block-media-text__content p strong{
  font-weight:800; color:var(--gold);
  position:relative; display:inline-block;
}
.ga-episodes .wp-block-media-text__content p strong::after{
  content:""; position:absolute; left:0; bottom:-6px; width:28px; height:2px;
  background: linear-gradient(90deg, var(--gold), var(--gold2)); border-radius:2px;
}
.ga-episodes .wp-block-media-text__content > *:last-child{ margin-bottom:0 !important; }

/* ---------- Spotify embed (BIGGER BOX, consistent) ---------- */
.ga-episodes .wp-block-media-text__content > .wp-block-embed-spotify,
.ga-episodes .wp-block-media-text__content > figure.wp-block-embed.wp-block-embed-spotify{
  display: grid;
  align-items: stretch;
  margin-top: var(--ep-gap) !important;
  margin-bottom: var(--ep-gap-bottom) !important;
  padding: var(--ep-embed-pad);
  min-height: var(--ep-embed-h);           /* the BOX height */
  border:1px solid var(--line);
  border-radius:12px;
  overflow:hidden;
  box-shadow:0 6px 18px rgba(2,6,23,.06);
  background:#fff;
  box-sizing:border-box;
}
.ga-episodes .wp-block-embed-spotify .wp-block-embed__wrapper{
  height: calc(var(--ep-embed-h) - 2 * var(--ep-embed-pad)) !important;
  width: 100% !important;
  padding:0; margin:0;
}
.ga-episodes .wp-block-embed-spotify .wp-block-embed__wrapper > *{
  display:block;
  width:100% !important;
  height:100% !important;
}

/* Keep equal gap when both Spotify and Audio exist */
.ga-episodes .wp-block-media-text__content > .wp-block-embed-spotify + .wp-block-audio,
.ga-episodes .wp-block-media-text__content > .wp-block-audio + .wp-block-embed-spotify{
  margin-top: var(--ep-gap) !important;
}

/* ---------- Audio player (always visible, fits inside) ---------- */
.ga-episodes .wp-block-media-text__content figure.wp-block-audio,
.ga-episodes .wp-block-media-text__content .wp-block-audio{
  display:block !important;
  width:100%; max-width:100%;
  margin-top: var(--ep-gap) !important;
  margin-bottom: 0 !important;
  padding:.6rem .7rem;
  border:1px solid var(--line);
  border-radius:12px;
  background:#fff;
  box-shadow:0 4px 12px rgba(2,6,23,.05);
  overflow:hidden;                 /* keep native controls within the frame */
  box-sizing:border-box;
}
.ga-episodes .wp-block-media-text__content figure.wp-block-audio audio,
.ga-episodes .wp-block-media-text__content .wp-block-audio audio{
  display:block;
  width:100% !important; max-width:100%;
  min-height:44px;
  height:auto; margin:0;
  box-sizing:border-box;
}

/* Neutralize random theme margins on generic figures inside content */
.ga-episodes .wp-blo
/* === Bigger boxes for Spotify embed + Audio (uniform + responsive) === */
.ga-episodes{
  /* Tweak these two to taste */
  --ep-embed-h: clamp(280px, 28vw, 420px);  /* Spotify BOX height */
  --ep-embed-pad: 1rem;                     /* inner padding for the Spotify box */
  --ep-audio-h: clamp(64px, 30vw, 96px);     /* Audio BOX min-height */
}

/* Spotify: enlarge the BOX itself and make inner fill it */
.ga-episodes .wp-block-media-text__content > .wp-block-embed-spotify,
.ga-episodes .wp-block-media-text__content > figure.wp-block-embed.wp-block-embed-spotify{
  min-height: var(--ep-embed-h);
  padding: var(--ep-embed-pad);
  box-sizing: border-box;
  display: grid;
  align-items: stretch;
}

/* Kill WP aspect-ratio padding that can fight fixed height */
.ga-episodes .wp-block-media-text__content > .wp-block-embed-spotify.wp-has-aspect-ratio,
.ga-episodes .wp-block-media-text__content > figure.wp-block-embed.wp-block-embed-spotify.wp-has-aspect-ratio{
  height: var(--ep-embed-h) !important;
}
.ga-episodes .wp-block-media-text__content > .wp-block-embed-spotify.wp-has-aspect-ratio .wp-block-embed__wrapper,
.ga-episodes .wp-block-media-text__content > figure.wp-block-embed.wp-block-embed-spotify.wp-has-aspect-ratio .wp-block-embed__wrapper{
  padding-top: 0 !important;  /* remove 21:9 padding hack */
  height: calc(var(--ep-embed-h) - 2 * var(--ep-embed-pad)) !important;
}

/* Generic wrapper fill (covers non-aspect versions too) */
.ga-episodes .wp-block-embed-spotify .wp-block-embed__wrapper{
  width: 100% !important;
  height: calc(var(--ep-embed-h) - 2 * var(--ep-embed-pad)) !important;
}
.ga-episodes .wp-block-embed-spotify .wp-block-embed__wrapper > *{
  width: 100% !important;
  height: 100% !important;
  display: block;
}

/* Audio: make the BOX taller and ensure controls fit end-to-end */
.ga-episodes .wp-block-media-text__content figure.wp-block-audio,
.ga-episodes .wp-block-media-text__content .wp-block-audio{
  min-height: var(--ep-audio-h);
  display: flex !important
/* === FINAL PATCH: bigger boxes + true fit for Spotify & Audio === */

/* Tweak sizes here */
.ga-episodes{
  --ep-embed-h: clamp(320px, 32vw, 480px);  /* SPOTIFY BOX height (not just iframe) */
  --ep-embed-pad: 1rem;                     /* inner padding for Spotify box */
  --ep-audio-h: clamp(64px, 7vw, 110px);    /* AUDIO BOX min-height */
}

/* 0) Grid safety: allow both columns to shrink so content isn't clipped */
@media (min-width: 781px){
  .ga-episodes .wp-block-media-text{
    grid-template-columns: minmax(0,1fr) minmax(0,1fr) !important;
  }
}
.ga-episodes .wp-block-media-text__content{ min-width: 0 !important; }

/* 1) SPOTIFY — enlarge the BOX itself and remove WP's aspect padding */
.ga-episodes .wp-block-media-text__content > .wp-block-embed-spotify,
.ga-episodes .wp-block-media-text__content > figure.wp-block-embed.wp-block-embed-spotify{
  min-height: var(--ep-embed-h) !important;     /* the BOX is taller */
  padding: var(--ep-embed-pad) !important;
  box-sizing: border-box !important;
  display: grid !important;
  align-items: stretch !important;
}

/* Kill the 21:9 padding hack that keeps fighting fixed height */
.ga-episodes .wp-block-media-text__content > .wp-block-embed-spotify.wp-has-aspect-ratio,
.ga-episodes .wp-block-media-text__content > figure.wp-block-embed.wp-block-embed-spotify.wp-has-aspect-ratio{
  height: var(--ep-embed-h) !important;
  padding-top: 0 !important;
}

/* Wrapper + iframe fill the box, always */
.ga-episodes .wp-block-embed-spotify .wp-block-embed__wrapper{
  height: 100% !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}
.ga-episodes .wp-block-embed-spotify iframe,
.ga-episodes .wp-block-embed-spotify .wp-block-embed__wrapper > *{
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
}

/* 2) AUDIO — bigger box and full control visible end-to-end */
.ga-episodes .wp-block-media-text__content figure.wp-block-audio,
.ga-episodes .wp-block-media-text__content .wp-block-audio{
  display: flex !important;
  align-items: center !important;
  min-height: var(--ep-audio-h) !important;     /* taller audio BOX */
  width: 100% !important;
  max-width: 100% !important;
  margin-top: var(--ep-gap) !important;
  margin-bottom: 0 !important;
  padding: .9rem 1rem !important;               /* extra room so ends aren’t cramped */
  box-sizing: border-box !important;
  overflow: visible !important;                  /* let native controls breathe */
}

.ga-episodes .wp-block-media-text__content figure.wp-block-audio audio,
.ga-episodes .wp-block-media-text__content .wp-block-audio audio{
  flex: 1 1 auto !important;
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-height: 48px !important;
  height: auto !important;
  margin: 0 !important;
  box-sizing: border-box !important;
}
/* === WIDTH-SAFE PATCH: prevent horizontal overflow on Spotify + Audio === */

/* Let both grid columns shrink; otherwise content clips/overflows on the right */
.ga-episodes .wp-block-media-text{
  grid-template-columns: minmax(0,1fr) minmax(0,1fr) !important;
}
.ga-episodes .wp-block-media-text__media,
.ga-episodes .wp-block-media-text__content{
  min-width: 0 !important;   /* critical for grid children */
}

/* Spotify BOX: never exceed the text column width */
.ga-episodes .wp-block-media-text__content > .wp-block-embed-spotify,
.ga-episodes .wp-block-media-text__content > figure.wp-block-embed.wp-block-embed-spotify{
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  overflow: hidden !important;         /* hard stop at box edge */
}

/* Kill WP 21:9 padding that can create phantom width */
.ga-episodes .wp-block-media-text__content > .wp-block-embed-spotify.wp-has-aspect-ratio,
.ga-episodes .wp-block-media-text__content > figure.wp-block-embed.wp-block-embed-spotify.wp-has-aspect-ratio{
  padding-top: 0 !important;
  height: var(--ep-embed-h) !important;  /* you already set this */
}

/* Force the embed wrapper to obey its parent */
.ga-episodes .wp-block-embed-spotify .wp-block-embed__wrapper{
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}
.ga-episodes .wp-block-embed-spotify iframe,
.ga-episodes .wp-block-embed-spotify .wp-block-embed__wrapper > *{
  width: 100% !important;
  max-width: 100% !important;
  height: 100% !important;
  display: block !important;
}

/* Audio BOX: full fit inside column, never bleed horizontally */
.ga-episodes .wp-block-media-text__content figure.wp-block-audio,
.ga-episodes .wp-block-media-text__content .wp-block-audio{
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  overflow: hidden !important;            /* keep native controls inside */
  display: flex !important;
  align-items: center !important;
  min-height: var(--ep-audio-h) !important;  /* you set this above */
  padding: .9rem 1rem !important;
  margin-top: var(--ep-gap) !important;
  margin-bottom: 0 !important;
}

/* Audio element: stretch, but never wider than the box */
.ga-episodes .wp-block-media-text__content figure.wp-block-audio audio,
.ga-episodes .wp-block-media-text__content .wp-block-audio audio{
  flex: 1 1 auto !important;
  width: 100% !important;
  max-width: 100% !important;
  min-height: 48px !important;
  height: auto !important;
  margin: 0 !important;
  box-sizing: border-box !important;
}

/* Safari/WebKit sometimes forces a min-width on controls — cap it */
.ga-episodes .wp-block-media-text__content figure.wp-block-audio audio::-webkit-media-controls-enclosure{
  max-width: 100% !important;
  width: 100% !important;
  box-sizing: border-box !important;
}
/* As a last resort, clip any child trying to go wider than the card */
.ga-episodes .wp-block-media-text { overflow: hidden; }
/* ===== GA! Hero — Nederlandse Weerbaarheid (unik) ===== */
.ga-hero-weerbaarheid{
  --ink:#141414; --muted:#6b5f57; --line:#CCBAA9; --gold:#B29250; --gold2:#E3BF7E;
}
.ga-hero-weerbaarheid .wp-block-columns{ gap: clamp(18px,4vw,48px); align-items:center; }

/* --- Cover: card + tilt + sheen --- */
.ga-hero-weerbaarheid .ga-hero-cover{
  position:relative; border-radius:16px; overflow:hidden;
  border:1px solid var(--line); background:#fff;
  box-shadow:0 14px 34px rgba(2,6,23,.10);
  transform: perspective(900px) rotateX(0deg) rotateY(0deg) translateY(4px);
  transition: transform .35s ease, box-shadow .35s ease, border-color .35s ease;
  isolation:isolate;
}
.ga-hero-weerbaarheid .ga-hero-cover img{ display:block; width:100%; height:auto; }
.ga-hero-weerbaarheid .ga-hero-cover::before{
  /* sheen sweep */
  content:""; position:absolute; inset:-20% -120% -20% -120%;
  background: linear-gradient(110deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.55) 12%, rgba(255,255,255,0) 24%);
  transform: translateX(-40%); filter: blur(2px); opacity:.0; pointer-events:none;
  transition: opacity .25s ease;
}
.ga-hero-weerbaarheid .ga-hero-cover:hover{
  transform: perspective(900px) rotateX(1.2deg) rotateY(-2deg) translateY(0);
  box-shadow:0 22px 48px rgba(2,6,23,.18);
  border-color:#d9c7b6;
}
.ga-hero-weerbaarheid .ga-hero-cover:hover::before{
  animation: gaSheen 900ms cubic-bezier(.22,.61,.36,1) 1; opacity:.8;
}
@keyframes gaSheen{ to{ transform: translateX(60%); } }

/* --- Kicker: subtle slide-in --- */
.ga-hero-weerbaarheid .ga-kicker{
  margin:0 0 .35rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase;
  font-size:.85rem; color:var(--muted);
  opacity:0; transform: translateY(6px);
  animation: gaRise .5s ease-out .05s both;
}

/* --- Title: line-by-line reveal + gradient ink --- */
.ga-hero-weerbaarheid .ga-hero-title{
  margin:0 0 .6rem; line-height:1.05; letter-spacing:.01em;
  background: linear-gradient(90deg, var(--gold), var(--gold2), var(--gold));
  -webkit-background-clip:text; background-clip:text; color:transparent;
}
.ga-hero-weerbaarheid .ga-hero-title .line{
  display:block; opacity:0; transform: translateY(14px) skewY(2deg);
  animation: gaLineIn .6s cubic-bezier(.2,.7,.2,1) both;
}
.ga-hero-weerbaarheid .ga-hero-title .line:nth-child(1){ animation-delay:.12s; }
.ga-hero-weerbaarheid .ga-hero-title .line:nth-child(2){ animation-delay:.26s; }
@keyframes gaLineIn{
  to{ opacity:1; transform: translateY(0) skewY(0); }
}

/* --- Lede: highlighted block with underline sweep on links --- */
.ga-hero-weerbaarheid .ga-hero-lede{
  color:var(--ink); line-height:1.65;
  background: linear-gradient(180deg,#fff,#fffdf9);
  border:1px solid var(--line); border-radius:14px;
  padding: clamp(12px,1
/* ===== Unique Hero — Nederlandse Weerbaarheid (no buttons) ===== */
.ga-hero-weerbaarheid-v2{
  --ink:#141414; --muted:#6b5f57; --line:#CCBAA9; --gold:#B29250; --gold2:#E3BF7E;
}
.ga-hero-weerbaarheid-v2 .wp-block-columns{ gap: clamp(18px,4vw,50px); align-items:center; }

/* Cover: depth, subtle tilt, light sweep */
.ga-hero-weerbaarheid-v2 .ga-hero-cover{
  position:relative; border-radius:16px; overflow:hidden;
  border:1px solid var(--line); background:#fff;
  box-shadow:0 14px 34px rgba(2,6,23,.10);
  transform: perspective(900px) rotateX(0deg) rotateY(0deg);
  transition: transform .35s ease, box-shadow .35s ease, border-color .35s ease;
  isolation:isolate;
}
.ga-hero-weerbaarheid-v2 .ga-hero-cover img{ display:block; width:100%; height:auto; }
.ga-hero-weerbaarheid-v2 .ga-hero-cover::after{
  /* sheen band that glides across on hover */
  content:""; position:absolute; inset:-30% -140% -30% -140%;
  background: linear-gradient(110deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.55) 12%, rgba(255,255,255,0) 24%);
  transform: translateX(-40%); opacity:0; pointer-events:none; filter: blur(2px);
  transition: opacity .25s ease;
}
.ga-hero-weerbaarheid-v2 .ga-hero-cover:hover{
  transform: perspective(900px) rotateX(1deg) rotateY(-2deg) translateY(-2px);
  box-shadow:0 22px 48px rgba(2,6,23,.18);
  border-color:#d9c7b6;
}
.ga-hero-weerbaarheid-v2 .ga-hero-cover:hover::after{
  animation: gaWeerSheen 900ms cubic-bezier(.22,.61,.36,1) 1; opacity:.85;
}
@keyframes gaWeerSheen{ to{ transform: translateX(60%); } }

/* Title: line-by-line reveal + living gold gradient */
.ga-hero-weerbaarheid-v2 .ga-hero-title{
  margin:0 0 .6rem; line-height:1.05; letter-spacing:.01em;
  font-family:"Playfair Display SC", serif;
  background: linear-gradient(90deg, var(--gold), var(--gold2), var(--gold));
  -webkit-background-clip:text; background-clip:text; color:transparent;
  background-size:200% 100%;
  animation: gaGoldShift 8s linear infinite; /* slow shimmer */
}
@keyframes gaGoldShift{ from{background-position:0 0;} to{background-position:200% 0;} }

.ga-hero-weerbaarheid-v2 .ga-hero-title .line{
  display:block; opacity:0; transform: translateY(14px) skewY(2deg);
  animation: gaLineIn .6s cubic-bezier(.2,.7,.2,1) both;
}
.ga-hero-weerbaarheid-v2 .ga-hero-title .line:nth-child(1){ animation-delay:.08s; }
.ga-hero-weerbaarheid-v2 .ga-hero-title .line:nth-child(2){ animation-delay:.22s; }
@keyframes gaLineIn{ to{ opacity:1; transform: translateY(0) skewY(0); } }

/* Lede: soft card + animated underline on link */
.ga-hero-weerbaarheid-v2 .ga-hero-lede{
  color:var(--ink); line-height:1.65;
  background: linear-gradient(180deg,#fff,#fffdf9);
  border:1px solid var(--line); border-radius:14px;
  padding: clamp(12px,1.8vw,18px) clamp(14px,2vw,20px);
  box-shadow:0 8px 22px rgba(2,6,23,.08);
  margin: 0;
  opacity:0; transform: translateY(10px);
  animation: gaRise .55s ease-out .30s both;
}
.ga-hero-weerbaarheid-v2 .ga-hero-lede a{
  position:relative; text-decoration:none; font-weight:700;
  background: linear-gradient(90deg, var(--gold), var(--gold2));
  -webkit-background-clip:text; background-clip:text; color:transparent;
}
.ga-hero-weerbaarheid-v2 .ga-hero-lede a::after{
  content:""; position:absolute; left:0; bottom:-3px; height:2px; width:100%;
  background: linear-gradient(90deg, var(--gold), var(--gold2));
  transform: scaleX(0); transform-origin:left; transition: transform .35s ease;
  border-radius:2px;
}
.ga-hero-weerbaarheid-v2 .ga-hero-lede a:hover::after{ transform: scaleX(1); }

/* Shared rise */
@keyframes gaRise{ to{ opacity:1; transform: translateY(0); } }

/* Mobile spacing */
@media (max-width: 900px){
  .ga-hero-weerbaarheid-v2 .wp-block-columns{ gap: 16px; }
}

/* Reduced motion accessibility */
@media (prefers-reduced-motion: reduce){
  .ga-hero-weerbaarheid-v2 *{ animation:none !important; transition:none !important; transform:none !important; }
}
/* ===== Hero — Nederlandse Weerbaarheid (geïnspireerd op GA! ANBI) ===== */
.wp-site-blocks .ga-weerbaarheid-hero,
.ga-weerbaarheid-hero{
  /* Palet uit je ANBI-stijl */
  --ink:#141414; --muted:#6b5f57; --line:#CCBAA9; --gold:#B29250; --gold2:#E3BF7E;
}

/* Layout */
.ga-weerbaarheid-hero .wp-block-columns{ 
  gap: clamp(18px, 4vw, 52px); 
  align-items: center;
}

/* --- Cover: ANBI-card met tilt + sheen --- */
.ga-weerbaarheid-hero .ga-wh-cover{
  position: relative;
  border-radius: 14px; 
  overflow: hidden;
  border:1px solid var(--line);
  background:#fff;
  box-shadow:0 10px 28px rgba(2,6,23,.06);
  transition: transform .35s ease, box-shadow .35s ease, border-color .35s ease;
  transform: translateY(2px) perspective(900px) rotateX(0) rotateY(0);
  isolation:isolate;
}
.ga-weerbaarheid-hero .ga-wh-cover img{
  display:block; width:100%; height:auto;
}
.ga-weerbaarheid-hero .ga-wh-cover::after{
  /* zachte sheen-band die over de cover veegt bij hover */
  content:""; position:absolute; inset:-30% -140% -30% -140%;
  background: linear-gradient(110deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.55) 12%, rgba(255,255,255,0) 24%);
  transform: translateX(-40%); opacity:0; filter: blur(2px); pointer-events:none;
  transition: opacity .25s ease;
}
.ga-weerbaarheid-hero .ga-wh-cover:hover{
  transform: translateY(0) perspective(900px) rotateX(1deg) rotateY(-2deg);
  box-shadow:0 16px 36px rgba(2,6,23,.12);
  border-color:#d9c7b6;
}
.ga-weerbaarheid-hero .ga-wh-cover:hover::after{
  animation: gaWHsheen 900ms cubic-bezier(.22,.61,.36,1) 1;
  opacity:.85;
}
@keyframes gaWHsheen{ to{ transform: translateX(60%); } }

/* --- Titel: luxe gradient + ANBI shine --- */
.ga-weerbaarheid-hero .ga-wh-title{
  margin: 0 0 clamp(12px, 1.8vw, 18px) !important;
  font-family:"Playfair Display SC", serif;
  letter-spacing:.02em;
  line-height:1.02;
  background: linear-gradient(90deg, var(--gold), var(--gold2), var(--gold));
  -webkit-background-clip:text; background-clip:text; color:transparent;
  text-shadow:0 1px 0 rgba(0,0,0,.06);
}
@media (prefers-reduced-motion: no-preference){
  .ga-weerbaarheid-hero .ga-wh-title{
    background-size:200% 100%;
    animation: gaWHtitle 6s linear infinite;
  }
  @keyframes gaWHtitle{ 0%{background-position:0 0;} 100%{background-position:200% 0;} }
}

/* --- Lede: ANBI-lede kaart (zelfde feel) + link-underline sweep --- */
.ga-weerbaarheid-hero .ga-wh-lede{
  color:var(--ink);
  line-height:1.65;
  background: linear-gradient(180deg,#ffffff,#fffdf9);
  border:1px solid var(--line);
  border-radius:12px;
  box-shadow:0 6px 18px rgba(2,6,23,.06);
  padding: clamp(12px,1.8vw,18px) clamp(14px,2vw,20px);
  margin: 0;
  opacity: 0;
  transform: translateY(8px);
  animation: gaWHrise .5s ease-out .18s both;
}
.ga-weerbaarheid-hero .ga-wh-lede a{
  position:relative; text-decoration:none; font-weight:700;
  background: linear-gradient(90deg, var(--gold), var(--gold2));
  -webkit-background-clip:text; background-clip:text; color:transparent;
}
.ga-weerbaarheid-hero .ga-wh-lede a::after{
  content:""; position:absolute; left:0; bottom:-3px; height:2px; width:100%;
  background: linear-gradient(90deg, var(--gold), var(--gold2));
  transform: scaleX(0); transform-origin:left;
  transition: transform .35s ease;
  border-radius:2px;
}
.ga-weerbaarheid-hero .ga-wh-lede a:hover::after{ transform: scaleX(1); }

@keyframes gaWHrise{ to{ opacity:1; transform: translateY(0); } }

/* Mobile tweaks */
@media (max-width:900px){
  .ga-weerbaarheid-hero .wp-block-columns{ gap:16px; }
}

/* A11y: reduce motion */
@media (prefers-reduced-motion: reduce){
  .ga-weerbaarheid-hero *{ animation:none !important; transition:none !important; transform:none !important; }
}
/* ===== GA! Masonry Grid — premium framing + motion ===== */
.ga-masonry{
  --ink:#141414; --muted:#6b5f57; --line:#CCBAA9; --gold:#B29250; --gold2:#E3BF7E;
}

.ga-masonry .wp-block-columns.alignwide{ 
  gap: clamp(16px,3vw,28px); 
}

/* Each figure becomes a framed card */
.ga-masonry figure.wp-block-image{
  position: relative;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: linear-gradient(180deg,#fff,#fffdf9);
  box-shadow: 0 8px 22px rgba(2,6,23,.08);
  overflow: hidden;
  padding: 0; margin: 0;
  transform: translateY(10px);
  opacity: 0;
  animation: gaFadeUp .6s cubic-bezier(.2,.7,.2,1) forwards;
}

/* Staggered entrance per column */
.ga-masonry .wp-block-column:nth-child(1) figure.wp-block-image{ animation-delay: .05s; }
.ga-masonry .wp-block-column:nth-child(2) figure.wp-block-image{ animation-delay: .12s; }
.ga-masonry .wp-block-column:nth-child(3) figure.wp-block-image{ animation-delay: .18s; }

/* Inside links/images fill neatly; respect your provided aspect-ratio inline styles */
.ga-masonry figure.wp-block-image > a,
.ga-masonry figure.wp-block-image > img{
  display:block; width:100%;
}
.ga-masonry figure.wp-block-image img{
  height: auto; /* uses your inline aspect-ratio + object-fit */
  transition: transform .35s ease, filter .35s ease;
  will-change: transform;
  backface-visibility: hidden;
}

/* Hover: micro-lift + light sheen */
.ga-masonry figure.wp-block-image:hover{
  box-shadow: 0 16px 36px rgba(2,6,23,.14);
  border-color:#d9c7b6;
  transform: translateY(6px); /* settle from initial 10px */
}
.ga-masonry figure.wp-block-image:hover img{
  transform: scale(1.02);
  filter: contrast(1.03);
}

/* Sheen sweep (on hover) */
.ga-masonry figure.wp-block-image::after{
  content:"";
  position:absolute; inset:-30% -140% -30% -140%;
  background: linear-gradient(110deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.55) 12%, rgba(255,255,255,0) 24%);
  transform: translateX(-45%);
  opacity: 0;
  pointer-events:none;
}
.ga-masonry figure.wp-block-image:hover::after{
  animation: gaSheen 900ms cubic-bezier(.22,.61,.36,1) 1;
  opacity:.85;
}

/* PDF badge on linked covers (auto if href ends with .pdf) */
.ga-masonry figure.wp-block-image > a[href$=".pdf"]::before{
  content:"PDF";
  position:absolute; top:10px; left:10px;
  z-index:2;
  font: 800 .78rem/1 system-ui, -apple-system, Segoe UI, Roboto, "Playfair Display SC", serif;
  color:#fff;
  padding:.28rem .5rem;
  border-radius:999px;
  border:1px solid rgba(0,0,0,.08);
  background: linear-gradient(180deg, var(--gold), #b18a42);
  box-shadow:0 6px 14px rgba(178,146,80,.25);
}

/* Rounded-top variant you used keeps its feel */
.ga-masonry figure.is-style-rounded{
  border-radius: 28px 28px 14px 14px;
}

/* Nice focus states for keyboard users */
.ga-masonry a:focus-visible{
  outline: 3px solid var(--gold2);
  outline-offset: 3px;
  border-radius: 8px;
}

/* Animations */
@keyframes gaFadeUp{ 
  from{ opacity:0; transform: translateY(10px); } 
  to{ opacity:1; transform: translateY(0); } 
}
@keyframes gaSheen{ to{ transform: translateX(60%); } }

/* Respect reduced motion */
@media (prefers-reduced-motion: reduce){
  .ga-masonry figure.wp-block-image{ animation:none; transform:none; opacity:1; }
  .ga-masonry figure.wp-block-image:hover img{ transform:none; filter:none; }
  .ga-masonry figure.wp-block-image:hover::after{ animation:none; }
}
/* ===== GA! Masonry (scoped) — premium framing + stagger + sheen + 3D tilt ===== */
.ga-masonry{
  --ink:#141414; --muted:#6b5f57; --line:#CCBAA9; --gold:#B29250; --gold2:#E3BF7E;
}

.ga-masonry .wp-block-columns.alignwide{ 
  gap: clamp(16px,3vw,28px);
}

/* Card frame for every tile */
.ga-masonry figure.wp-block-image{
  position: relative;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: linear-gradient(180deg,#fff,#fffdf9);
  box-shadow: 0 8px 22px rgba(2,6,23,.08);
  overflow: hidden;
  padding: 0; margin: 0;
  transform: translateY(10px);
  opacity: 0;
  animation: gaMasonryFadeUp .6s cubic-bezier(.2,.7,.2,1) forwards;
  will-change: transform, opacity;
}

/* Stagger per column */
.ga-masonry .wp-block-column:nth-child(1) figure.wp-block-image{ animation-delay:.05s; }
.ga-masonry .wp-block-column:nth-child(2) figure.wp-block-image{ animation-delay:.12s; }
.ga-masonry .wp-block-column:nth-child(3) figure.wp-block-image{ animation-delay:.18s; }

/* Make media fill neatly (your inline aspect-ratio/object-fit still applies) */
.ga-masonry figure.wp-block-image > a,
.ga-masonry figure.wp-block-image > img{
  display:block; width:100%;
}
.ga-masonry figure.wp-block-image img{
  height:auto;
  transition: transform .35s ease, filter .35s ease;
  backface-visibility: hidden;
}

/* Hover: stronger shadow + gold tint + micro zoom */
.ga-masonry figure.wp-block-image:hover{
  box-shadow: 0 16px 36px rgba(2,6,23,.14);
  border-color:#d9c7b6;
  transform: translateY(6px);
}
.ga-masonry figure.wp-block-image:hover img{
  transform: scale(1.02);
  filter: contrast(1.03);
}

/* 3D tilt on hover (subtle, classy) */
.ga-masonry figure.wp-block-image{
  transform-style: preserve-3d;
  perspective: 900px;
}
.ga-masonry figure.wp-block-image:hover{
  transform: perspective(900px) rotateX(1.2deg) rotateY(-2deg) translateY(2px);
}

/* Sheen sweep */
.ga-masonry figure.wp-block-image::after{
  content:"";
  position:absolute; inset:-30% -140% -30% -140%;
  background: linear-gradient(110deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.55) 12%, rgba(255,255,255,0) 24%);
  transform: translateX(-45%);
  opacity: 0; pointer-events:none;
}
.ga-masonry figure.wp-block-image:hover::after{
  animation: gaMasonrySheen 900ms cubic-bezier(.22,.61,.36,1) 1;
  opacity:.85;
}

/* Auto PDF badge for links ending in .pdf */
.ga-masonry figure.wp-block-image > a[href$=".pdf"]::before{
  content:"PDF";
  position:absolute; top:10px; left:10px; z-index:2;
  font: 800 .78rem/1 system-ui, -apple-system, Segoe UI, Roboto, "Playfair Display SC", serif;
  color:#fff; padding:.28rem .5rem; border-radius:999px;
  border:1px solid rgba(0,0,0,.08);
  background: linear-gradient(180deg, var(--gold), #b18a42);
  box-shadow:0 6px 14px rgba(178,146,80,.25);
}

/* Keep your rounded-top variant intentional */
.ga-masonry figure.is-style-rounded{
  border-radius: 28px 28px 14px 14px;
}

/* Focus ring for keyboard users */
.ga-masonry a:focus-visible{
  outline: 3px solid var(--gold2);
  outline-offset: 3px;
  border-radius: 8px;
}

/* Animations */
@keyframes gaMasonryFadeUp{ from{opacity:0; transform:translateY(10px);} to{opacity:1; transform:translateY(0);} }
@keyframes gaMasonrySheen{ to{ transform: translateX(60%); } }

/* Reduced motion */
@media (prefers-reduced-motion: reduce){
  .ga-masonry figure.wp-block-image{ animation:none; transform:none; opacity:1; }
  .ga-masonry figure.wp-block-image:hover{ transform:none; }
  .ga-masonry figure.wp-block-image:hover img{ transform:none; filter:none; }
  .ga-masonry figure.wp-block-image:hover::after{ animation:none; }
}
/* ===== GA! — “Why GA! Magazine?” section (scoped) ===== */
.ga-why-ga{
  --ink:#141414; --muted:#6b5f57; --line:#CCBAA9;
  --gold:#B29250; --gold2:#E3BF7E;
  color:var(--ink);
}

/* Title: GA! gold gradient with gentle shimmer */
.ga-why-ga .ga-title{
  margin:0 0 clamp(12px,1.8vw,18px);
  font-family:"Playfair Display SC", serif;
  letter-spacing:.02em; line-height:1.05; text-align:center;
  background:linear-gradient(90deg,var(--gold),var(--gold2),var(--gold));
  -webkit-background-clip:text; background-clip:text; color:transparent;
  text-shadow:0 1px 0 rgba(0,0,0,.06);
  position:relative; display:block; width:max-content; margin-inline:auto;
}
.ga-why-ga .ga-title::after{
  content:""; display:block; width:78px; height:3px; margin:.5rem auto 0;
  background:linear-gradient(90deg,var(--gold),var(--gold2)); border-radius:3px;
}
@media (prefers-reduced-motion:no-preference){
  .ga-why-ga .ga-title{ background-size:200% 100%; animation: gaTitleShine 7s linear infinite; }
  @keyframes gaTitleShine{ from{background-position:0 0;} to{background-position:200% 0;} }
}

/* Points grid (stacks on mobile) */
.ga-why-ga .ga-points{
  list-style:none; padding:0; margin:clamp(12px,2vw,18px) 0 0;
  display:grid; gap:clamp(12px,2vw,18px);
  grid-template-columns: repeat(3, minmax(0,1fr));
}
@media (max-width:900px){
  .ga-why-ga .ga-points{ grid-template-columns:1fr; }
}

/* Each point: soft card with gold accent + motion */
.ga-why-ga .ga-point{
  position:relative; isolation:isolate;
  border:1px solid var(--line); border-radius:14px;
  background:linear-gradient(180deg,#ffffff,#fffdf9);
  box-shadow:0 8px 22px rgba(2,6,23,.08);
  padding:clamp(12px,1.8vw,16px) clamp(14px,2vw,18px);
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease, background .22s ease;
  transform: translateY(6px); opacity:0; /* load-in */
  overflow:hidden;
}
.ga-why-ga .ga-point h3{
  margin:.1rem 0 .35rem; font-weight:800; line-height:1.2;
  color:var(--ink); position:relative; padding-left:34px;
}
.ga-why-ga .ga-point h3::before{
  /* gold coin bullet */
  content:""; position:absolute; left:0; top:.05rem;
  width:22px; height:22px; border-radius:999px;
  background:linear-gradient(180deg,var(--gold),#b18a42);
  box-shadow:0 6px 14px rgba(178,146,80,.25);
  border:1px solid rgba(0,0,0,.06);
}
.ga-why-ga .ga-point h3::after{
  /* tiny underline */
  content:""; position:absolute; left:34px; bottom:-6px; width:28px; height:2px;
  background:linear-gradient(90deg,var(--gold),var(--gold2)); border-radius:2px;
}
.ga-why-ga .ga-point p{ margin:0; color:var(--ink); line-height:1.6; }

/* Hover/focus: micro-lift + sheen */
.ga-why-ga .ga-point:hover,
.ga-why-ga .ga-point:focus-within{
  transform: translateY(0);
  box-shadow:0 16px 36px rgba(2,6,23,.14);
  border-color:#d9c7b6;
}
.ga-why-ga .ga-point::after{
  /* sheen band */
  content:""; position:absolute; inset:-30% -140% -30% -140%;
  background:linear-gradient(110deg, transparent 0%, rgba(255,255,255,.55) 12%, transparent 24%);
  transform: translateX(-45%); opacity:0; pointer-events:none;
}
.ga-why-ga .ga-point:hover::after,
.ga-why-ga .ga-point:focus-within::after{
  animation: gaSheen 900ms cubic-bezier(.22,.61,.36,1) 1; opacity:.85;
}
@keyframes gaSheen{ to{ transform: translateX(60%); } }

/* Staggered entrance */
.ga-why-ga .ga-point{ animation: gaRise .5s ease-out both; }
.ga-why-ga .ga-point:nth-child(1){ animation-delay:.05s; }
.ga-why-ga .ga-point:nth-child(2){ animation-delay:.14s; }
.ga-why-ga .ga-point:nth-child(3){ animation-delay:.23s; }
@keyframes gaRise{ from{opacity:0; transform:translateY(6px);} to{opacity:1; transform:translateY(0);} }

/* Accessible motion preference */
@media (prefers-reduced-motion:reduce){
  .ga-why-ga *{ animation:none !important; transition:none !important; transform:none !important; }
}
/* ===== GA! “Why” block — v2 (scoped) ===== */
.ga-why.v2{
  --ink:#141414; --muted:#6b5f57; --line:#CCBAA9;
  --gold:#B29250; --gold2:#E3BF7E;
  color:var(--ink);
}

/* Title with shimmering gold */
.ga-why.v2 .ga-title{
  margin:0 auto .6rem; width:max-content;
  font-family:"Playfair Display SC", serif; letter-spacing:.02em; line-height:1.05;
  background:linear-gradient(90deg,var(--gold),var(--gold2),var(--gold));
  -webkit-background-clip:text; background-clip:text; color:transparent;
  text-shadow:0 1px 0 rgba(0,0,0,.06); position:relative;
}
.ga-why.v2 .ga-title::after{
  content:""; display:block; width:78px; height:3px; margin:.45rem auto 0;
  background:linear-gradient(90deg,var(--gold),var(--gold2)); border-radius:3px;
}
@media (prefers-reduced-motion:no-preference){
  .ga-why.v2 .ga-title{ background-size:200% 100%; animation: gaTitleShine 6s linear infinite; }
  @keyframes gaTitleShine{ 0%{background-position:0 0;} 100%{background-position:200% 0;} }
}

/* Lede badge */
.ga-why.v2 .ga-lede{
  text-align:center; margin:.6rem auto 1.1rem; max-width:58ch;
  padding:.9rem 1.05rem;
  background:linear-gradient(180deg,#fff,#fffdf9);
  border:1px solid var(--line); border-radius:12px;
  box-shadow:0 6px 18px rgba(2,6,23,.06);
  font-size:1.04rem; line-height:1.65; color:var(--ink);
  opacity:0; transform:translateY(8px); animation:gaRise .55s ease-out .08s both;
}

/* Grid */
.ga-why.v2 .ga-why__grid{
  display:grid; grid-template-columns:repeat(3, minmax(0,1fr));
  gap:clamp(12px,2.2vw,18px);
}
@media (max-width:900px){ .ga-why.v2 .ga-why__grid{ grid-template-columns:1fr; }}

/* Cards */
.ga-why.v2 .ga-card{
  position:relative; isolation:isolate;
  display:flex; flex-direction:column; gap:.4rem;
  border:1px solid var(--line); border-radius:14px;
  background:linear-gradient(180deg,#ffffff,#fffdf9);
  box-shadow:0 8px 22px rgba(2,6,23,.08);
  padding:clamp(.85rem,1.8vw,1.1rem) clamp(1rem,2.2vw,1.2rem);
  transform:translateY(6px) perspective(900px) rotateX(.2deg);
  opacity:0; transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease, background .22s ease;
  overflow:hidden;
  animation:gaRise .52s ease-out both;
}
.ga-why.v2 .ga-card:nth-child(1){ animation-delay:.06s; }
.ga-why.v2 .ga-card:nth-child(2){ animation-delay:.14s; }
.ga-why.v2 .ga-card:nth-child(3){ animation-delay:.22s; }

.ga-why.v2 .ga-card:hover,
.ga-why.v2 .ga-card:focus-within{
  transform:translateY(0) perspective(900px) rotateX(0) rotateY(-1.2deg);
  box-shadow:0 16px 36px rgba(2,6,23,.14);
  border-color:#d9c7b6;
}

/* Sheen sweep */
.ga-why.v2 .ga-card::after{
  content:""; position:absolute; inset:-30% -140% -30% -140%;
  background:
/* ===== GA! Why — PRIME (shiny, animated, scoped) ===== */
.ga-why-prime{
  --ink:#141414; --muted:#6b5f57; --line:#CCBAA9;
  --gold:#B29250; --gold2:#E3BF7E; --gold3:#f6e3b3;
  color:var(--ink);
  position:relative; isolation:isolate;
  padding: clamp(18px, 4vw, 36px) 0;
}

/* Title: animated gold gradient + halo */
.ga-why-prime .gawp-title{
  margin:0 auto .75rem; width:max-content;
  font-family:"Playfair Display SC", serif;
  letter-spacing:.02em; line-height:1.05;
  background:linear-gradient(90deg,var(--gold),var(--gold2),var(--gold));
  -webkit-background-clip:text; background-clip:text; color:transparent;
  text-shadow:0 1px 0 rgba(0,0,0,.06);
}
.ga-why-prime .gawp-title:after{
  content:""; display:block; width:78px; height:3px; margin:.5rem auto 0;
  background:linear-gradient(90deg,var(--gold),var(--gold2)); border-radius:3px;
}
.ga-why-prime .gawp-head{ position:relative; }
.ga-why-prime .gawp-title-glow{
  position:absolute; left:50%; top:50%; translate:-50% -50%;
  width:min(720px,92vw); height:60%;
  background: radial-gradient(60% 50% at 50% 40%, rgba(227,191,126,.22) 0%, rgba(227,191,126,0) 60%);
  filter: blur(24px); pointer-events:none; z-index:-1;
}
@media (prefers-reduced-motion:no-preference){
  .ga-why-prime .gawp-title{
    background-size:200% 100%;
    animation: gawpTitleShine 7s linear infinite;
  }
  @keyframes gawpTitleShine{ from{background-position:0 0;} to{background-position:200% 0;} }
}

/* Grid: 3 columns → 1 on mobile */
.ga-why-prime .gawp-grid{
  display:grid; gap: clamp(12px,2.2vw,18px);
  grid-template-columns: repeat(3, minmax(0,1fr));
  margin-top: clamp(12px, 2vw, 18px);
}
@media (max-width:900px){ .ga-why-prime .gawp-grid{ grid-template-columns:1fr; }}

/* Card: animated gradient border + subtle hover lift */
.ga-why-prime .gawp-card{
  position:relative; isolation:isolate; overflow:hidden;
  border-radius:14px;
  background: linear-gradient(180deg,#ffffff,#fffdf9);
  box-shadow:0 8px 22px rgba(2,6,23,.08);
  padding: clamp(.95rem,2vw,1.2rem) clamp(1.05rem,2.4vw,1.35rem);
  transition: transform .22s ease, box-shadow .22s ease, background .22s ease;
  opacity:0; transform: translateY(8px);
  animation: gawpRise .5s ease-out forwards;
}
.ga-why-prime .gawp-card:nth-child(2){ animation-delay:.08s; }
.ga-why-prime .gawp-card:nth-child(3){ animation-delay:.16s; }

@keyframes gawpRise{ to{ opacity:1; transform: translateY(0);} }

/* Animated gold border ring using :before */
.ga-why-prime .gawp-card::before{
  content:""; position:absolute; inset:-1px; border-radius:16px;
  padding:1px; background:
    linear-gradient(135deg, rgba(178,146,80,.85), rgba(227,191,126,.85)) border-box,
    linear-gradient(135deg, rgba(178,146,80,.35), rgba(227,191,126,.35)) padding-box;
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor; mask-composite: exclude;
  pointer-events:none;
  opacity:.85;
}
@media (prefers-reduced-motion:no-preference){
  .ga-why-prime .gawp-card::before{
    background-size: 200% 200%, 200% 200%;
    animation: gawpBorder 8s linear infinite;
  }
  @keyframes gawpBorder{
    0%{ background-position: 0% 0%, 100% 100%; }
    100%{ background-position: 200% 200%, -100% -100%; }
  }
}

/* Hover polish + sheen sweep */
.ga-why-prime .gawp-card:hover,
.ga-why-prime .gawp-card:focus-within{
  transform: translateY(-2px);
  box-shadow: 0 16px 36px rgba(2,6,23,.14);
  background: linear-gradient(180deg,#fffef6,#fffdf9);
}
.ga-why-prime .gawp-card .gawp-sheen{
  position:absolute; inset:-40% -160% -40% -160%;
  background: linear-gradient(110deg, transparent 0%, rgba(255,255,255,.55) 12%, transparent 24%);
  transform: translateX(-45%); opacity:0; pointer-events:none;
}
.ga-why-prime .gawp-card:hover .gawp-sheen,
.ga-why-prime .gawp-card:focus-within .gawp-sheen{
  animation: gawpSheen 1100ms cubic-bezier(.22,.61,.36,1) 1; opacity:.85;
}
@keyframes gawpSheen{ to{ transform: translateX(60%); } }

/* Icon medallion with soft pulse */
.ga-why-prime .gawp-ico{
  width:46px; height:46px; border-radius:999px;
  display:grid; place-items:center; background:#fff;
  border: 2px solid var(--gold);
  box-shadow:0 6px 16px rgba(2,6,23,.08);
  margin-bottom:.45rem;
}
.ga-why-prime .gawp-ico svg{ width:22px; height:22px; fill:var(--gold); }
@media (prefers-reduced-motion:no-preference){
  .ga-why-prime .gawp-ico{ animation: gawpPulse 3.2s ease-in-out infinite; }
  @keyframes gawpPulse{
    0%,100%{ filter: saturate(1); transform: translateZ(0) scale(1); }
    50%{ filter: saturate(1.1); transform: translateZ(0) scale(1.03); }
  }
}

/* Headings + golden underline */
.ga-why-prime .gawp-h{
  margin:.1rem 0 .35rem; font-weight:800; line-height:1.2; color:var(--ink);
  position:relative;
}
.ga-why-prime .gawp-h::after{
  content:""; position:absolute; left:0; bottom:-6px; width:28px; height:2px;
  background: linear-gradient(90deg,var(--gold),var(--gold2)); border-radius:2px;
}

/* Body */
.ga-why-prime p{ margin:0; line-height:1.6; color:var(--ink); }

/* Reduced motion */
@media (prefers-reduced-motion:reduce){
  .ga-why-prime *{ animation:none !important; transition:none !important; transform:none !important; }
}
/* GA! why-prime — emergency tidy */
.ga-why-prime .gawp-ico{ display:none !important; }                 /* remove the ugly icons */
.ga-why-prime .gawp-card{ padding:1rem 1.1rem !important; }         /* tighter card */
.ga-why-prime .gawp-h{ margin:.1rem 0 .4rem !important; }           /* clean heading rhythm */
.ga-why-prime .gawp-card::before{ opacity:.6 !important; }          /* calmer border */
.ga-why-prime .gawp-card{ transform:none; opacity:1; }              /* no jump-in if you hate it */
/* GA! Countdown — styling for your custom/Jetpack block */
.wp-block-jetpack-event-countdown.ga-count-line{
  background:#FCF9F5;
  border:1px solid #D7C8B4;
  border-radius:16px;
  box-shadow:0 14px 36px rgba(2,6,23,.08);
  padding:22px 22px 52px;
  max-width:980px;
  margin:26px auto;
  text-align:center;
  position:relative;
  color:#1b1b1b;
}
.wp-block-jetpack-event-countdown.ga-count-line *{ box-sizing:border-box; }
.wp-block-jetpack-event-countdown.ga-count-line > div{ display:flex; flex-direction:column; gap:10px; }
.wp-block-jetpack-event-countdown.ga-count-line .event-countdown__date{ display:none; }
.wp-block-jetpack-event-countdown.ga-count-line .event-countdown__event-title{ order:-1; }
.wp-block-jetpack-event-countdown.ga-count-line .event-countdown__event-title p{
  margin:.2rem 0 .5rem;
  font-family:"Playfair Display", Georgia, serif;
  font-weight:900; letter-spacing:.2px; color:#B29250; font-size:1.9rem;
}
.wp-block-jetpack-event-countdown.ga-count-line .event-countdown__counter{
  display:flex; flex-wrap:wrap; justify-content:center; gap:16px; margin:0 auto; width:100%;
}
.wp-block-jetpack-event-countdown.ga-count-line .event-countdown__counter > p{
  width:240px; max-width:100%; margin:0; padding:0; line-height:1.15; text-align:center;
  text-transform:uppercase; letter-spacing:.08em; color:#B29250; font-size:.82rem;
}
.wp-block-jetpack-event-countdown.ga-count-line .event-countdown__counter strong{
  display:block; width:100%; min-height:104px; padding:20px 16px 12px; margin:0 0 8px;
  background:#fff; color:#1b1b1b; border:1px solid #D7C8B4; border-radius:12px;
  box-shadow:0 8px 24px rgba(2,6,23,.06); font-weight:800; font-variant-numeric:tabular-nums;
  font-size:32px; line-height:1.2;
}
.wp-block-jetpack-event-countdown.ga-count-line .event-countdown__counter + p{
  margin:.2rem 0 0; color:#6b5f57; font-size:.95rem;
}
@media (max-width:720px){
  .wp-block-jetpack-event-countdown.ga-count-line .event-countdown__counter > p{ width:47%; }
}
/* === GA! Hero Event — luxe gold, gentle motion === */
.ga-hero-event{
  --ink:#141414; --muted:#6b5f57; --line:#CCBAA9; --gold:#B29250; --gold2:#E3BF7E;
  position:relative;
  padding: clamp(18px, 3vw, 28px);
  border:1px solid var(--line);
  border-radius:16px;
  background: linear-gradient(180deg,#ffffff,#fffdf9);
  box-shadow:0 14px 36px rgba(2,6,23,.08);
  overflow:clip;
}

/* soft background glow sweep */
.ga-hero-event::before{
  content:""; position:absolute; inset:-40% -10% auto -10%; height:56%;
  background: radial-gr
/* === GA! Hero — bold gold, animated shine, staggered reveals === */
.ga-hero-ga{
  --ink:#141414; --muted:#6b5f57; --line:#CCBAA9; --gold:#B29250; --gold2:#E3BF7E;
  position:relative;
  padding: clamp(20px, 3.5vw, 34px);
  border:1px solid var(--line);
  border-radius:16px;
  background: linear-gradient(180deg,#ffffff,#fffdf9);
  box-shadow:0 16px 44px rgba(2,6,23,.10);
  overflow:hidden;
  isolation:isolate;                 /* keeps the glow under content */
}

/* Soft animated gold halo */
.ga-hero-ga::before{
  content:"";
  position:absolute; inset: -30% -10% auto -10%;
  height:60%;
  background:
    radial-gradient(60% 80% at 18% 0%, rgba(227,191,126,.28), transparent 70%),
    radial-gradient(40% 60% at 90% 20%, rgba(227,191,126,.12), transparent 72%);
  filter: blur(2px);
  z-index:0;
  animation: gaGlowDrift 10s ease-in-out infinite;
}

/* TITLE — GA! gradient + animated shine + underline bar */
.ga-hero-ga .wp-block-heading{
  margin:0 0 clamp(12px, 2vw, 16px) !important;
  line-height:1.08; letter-spacing:.01em;
  font-family:"Playfair Display SC", serif;
  background: linear-gradient(90deg, var(--gold), var(--gold2), var(--gold));
  -webkit-background-clip:text; background-clip:text; color:transparent;
  text-align:center; position:relative; z-index:1;
}
.ga-hero-ga .wp-block-heading::after{
  content:""; display:block; margin: clamp(8px,1.4vw,10px) auto 0;
  width:84px; height:3px; border-radius:3px;
  background: linear-gradient(90deg, var(--gold), var(--gold2));
  animation: gaPulse 2.8s ease-in-out infinite;
}
@media (prefers-reduced-motion: no-preference){
  .ga-hero-ga .wp-block-heading{
    background-size:200% 100%;
    animation: gaTitleShine 7s linear infinite;
  }
}

/* Emphasised part inside the title */
.ga-hero-ga .wp-block-heading em{ font-style:italic; opacity:.98; }

/* META LINES — staggered rise-in */
.ga-hero-ga p.has-text-align-center{
  color:var(--ink);
  margin: .45rem 0;
  font-size: clamp(1rem, .9vw + .85rem, 1.08rem);
  line-height:1.6;
  opacity:0; transform: translateY(10px);
  z-index:1;
  animation: gaRise .55s ease-out forwards;
}
.ga-hero-ga p.has-text-align-center:nth-of-type(1){ animation-delay:.08s; }
.ga-hero-ga p.has-text-align-center:nth-of-type(2){ animation-delay:.18s; }
.ga-hero-ga p.has-text-align-center:nth-of-type(3){ animation-delay:.28s; }

/* Links — GA! ink + animated underline */
.ga-hero-ga a{
  position:relative; text-decoration:none;
  background: linear-gradient(90deg, var(--gold), var(--gold2));
  -webkit-background-clip:text; background-clip:text; color:transparent;
}
.ga-hero-ga a::after{
  content:""; position:absolute; left:0; bottom:-2px; height:2px; width:100%;
  background: linear-gradient(90deg, var(--gold), var(--gold2));
  border-radius:2px; transform: scaleX(0); transform-origin:left;
  transition: transform .28s ease;
}
.ga-hero-ga a:hover::after{ transform: scaleX(1); }

/* BUTTONS — gold pill with sheen + small hop loop */
.ga-hero-ga .wp-block-buttons{ justify-content:center; gap:12px; margin-top: clamp(12px, 2.4vw, 18px); }
.ga-hero-ga .wp-block-button__link{
  display:inline-flex; align-items:center; justify-content:center;
  border-radius:999px; padding:.78rem 1.25rem;
  font-weight:800; font-size:1rem; line-height:1;
  color:#fff; border:2px solid var(--gold);
  background-image:
    linear-gradient(180deg, var(--gold), #b18a42),
    linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.65) 50%, rgba(255,255,255,0) 100%);
  background-size:100% 100%, 240% 100%;
  background-position:0 0, -200% 0;
  box-shadow:0 12px 28px rgba(178,146,80,.24);
  transition: filter .12s ease, transform .12s ease, box-shadow .12s ease;
  animation: gaSheen 3.2s linear infinite, gaHop2 4.8s ease-in-out infinite;
}
.ga-hero-ga .wp-block-button__link:hover{
  filter:brightness(1.07); transform: translateY(-1px);
  box-shadow:0 18px 38px rgba(178,146,80,.30);
}

/* Lift the whole card a touch on hover */
.ga-hero-ga:hover{
  border-color:#d9c7b6; box-shadow:0 22px 60px rgba(2,6,23,.16);
  transition: box-shadow .25s ease, border-color .25s ease, transform .25s ease;
  transform: translateY(-2px);
}

/* Ensure clicks work even if a parent uses pointer-events-none */
.ga-hero-ga, .ga-hero-ga *{ pointer-events:auto; }

/* === Animations === */
@keyframes gaTitleShine{ from{background-position:0 0;} to{background-position:200% 0;} }
@keyframes gaRise{ to{ opacity:1; transform: translateY(0); } }
@keyframes gaSheen{ to{ background-position:0 0, 200% 0; } }
@keyframes gaHop2{
  0%,100%{ transform: translateY(0); }
  35%{ transform: translateY(-3px); }
  70%{ transform: translateY(0); }
}
@keyframes gaGlowDrift{
  0%,100%{ transform: translateX(-2%) translateY(0); opacity:.75; }
  50%{ transform: translateX(2%) translateY(2%); opacity:.95; }
}
@keyframes gaPulse{
  0%,100%{ opacity:.85; transform:scaleX(1); }
  50%{ opacity:1; transform:scaleX(1.06); }
}

/* Motion preferences */
@media (prefers-reduced-motion: reduce){
  .ga-hero-ga, .ga-hero-ga *{
    animation:none !important; transition:none !important; transform:none !important;
  }
}
/* === GA! Two-Button Row — primary + ghost, with subtle motion === */
.ga-cta-duo{
  --ink:#141414; --muted:#6b5f57; --line:#CCBAA9; --gold:#B29250; --gold2:#E3BF7E;
  justify-content:center; gap:12px; flex-wrap:wrap;
}

/* base reset */
.ga-cta-duo .wp-block-button{ margin:0; }
.ga-cta-duo .wp-block-button__link{
  display:inline-flex; align-items:center; justify-content:center;
  border-radius:999px; padding:.78rem 1.2rem;
  font-weight:800; line-height:1; font-size:1rem;
  text-decoration:none; box-shadow:none; transition:filter .12s ease, transform .12s ease, box-shadow .12s ease;
}

/* PRIMARY (first) — GA! gold with sheen + tiny hop loop */
.ga-cta-duo .wp-block-button:first-child .wp-block-button__link{
  color:#fff; border:2px solid var(--gold);
  background-image:
    linear-gradient(180deg, var(--gold), #b18a42),
    linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.65) 50%, rgba(255,255,255,0) 100%);
  background-size:100% 100%, 240% 100%;
  background-position:0 0, -200% 0;
  box-shadow:0 12px 28px rgba(178,146,80,.22);
  animation: gaBtnSheen 3.2s linear infinite, gaBtnHop 4.8s ease-in-out infinite;
}
.ga-cta-duo .wp-block-button:first-child .wp-block-button__link:hover{
  filter:brightness(1.07); transform:translateY(-1px);
  box-shadow:0 18px 38px rgba(178,146,80,.28);
}

/* SECONDARY (second) — ghost pill with gold hover */
.ga-cta-duo .wp-block-button:nth-child(2) .wp-block-button__link{
  color:var(--ink); background:#fff;
  border:2px solid var(--line);
  box-shadow:0 8px 20px rgba(2,6,23,.06);
}
.ga-cta-duo .wp-block-button:nth-child(2) .wp-block-button__link:hover{
  border-color:var(--gold); background:#fffdf9; transform:translateY(-1px);
  box-shadow:0 12px 28px rgba(2,6,23,.10);
}

/* Focus states */
.ga-cta-duo .wp-block-button__link:focus-visible{
  outline:2px solid var(--gold2); outline-offset:2px;
}

/* Animations */
@keyframes gaBtnSheen{ to{ background-position:0 0, 200% 0; } }
@keyframes gaBtnHop{
  0%,100%{ transform: translateY(0); }
  35%{ transform: translateY(-3px); }
  70%{ transform: translateY(0); }
}

/* Respect reduced motion */
@media (prefers-reduced-motion: reduce){
  .ga-cta-duo .wp-block-button__link{ animation:none !important; transition:none !important; transform:none !important; }
}
/* === GA! Past Events — luxe cards, framed thumbs, animated buttons === */
.ga-events{
  --ink:#141414; --muted:#6b5f57; --line:#CCBAA9; --gold:#B29250; --gold2:#E3BF7E;
}

/* Section title: GA! gradient + shine + underline */
.ga-events > .wp-block-heading{
  font-family:"Playfair Display SC", serif;
  letter-spacing:.02em; line-height:1.1;
  background:linear-gradient(90deg,var(--gold),var(--gold2),var(--gold));
  -webkit-background-clip:text; background-clip:text; color:transparent;
  text-align:center;
  margin-bottom: clamp(14px, 2.4vw, 22px) !important;
  position:relative;
}
.ga-events > .wp-block-heading::after{
  content:""; display:block; width:84px; height:3px; border-radius:3px;
  background:linear-gradient(90deg,var(--gold),var(--gold2));
  margin: clamp(8px,1.6vw,12px) auto 0;
  animation: gaPulse 3s ease-in-out infinite;
}
@media (prefers-reduced-motion:no-preference){
  .ga-events > .wp-block-heading{ background-size:200% 100%; animation: gaTitleShine 8s linear infinite; }
}

/* Items container: tighten vertical rhythm a bit */
.ga-events .wp-block-group.alignwide > .wp-block-group.alignwide{
  /* These are your 'Item' rows with the border-bottom */
  border-color: var(--line) !important;
  padding-top: clamp(18px, 3vw, 28px) !important;
  padding-bottom: clamp(18px, 3vw, 28px) !important;
  background: linear-gradient(180deg,#ffffff,#fffdf9);
  border-radius: 14px;
  box-shadow: 0 10px 28px rgba(2,6,23,.06);
  padding-left: clamp(12px, 2.2vw, 20px) !important;
  padding-right: clamp(12px, 2.2vw, 20px) !important;
  margin-bottom: clamp(14px, 2.6vw, 22px);
  border: 1px solid var(--line) !important;        /* replaces the bottom-only rule visually */
  position: relative;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.ga-events .wp-block-group.alignwide > .wp-block-group.alignwide:hover{
  transform: translateY(-2px);
  box-shadow: 0 18px 44px rgba(2,6,23,.12);
  border-color:#d9c7b6 !important;
}

/* Event titles inside items */
.ga-events .is-event-name{
  margin: 0 0 .35rem;
  font-weight: 800;
  color: var(--ink);
  position: relative;
}
.ga-events .is-event-name::after{
  content:""; position:absolute; left:0; bottom:-6px; width:32px; height:2px;
  background: linear-gradient(90deg,var(--gold),var(--gold2)); border-radius:2px;
}

/* Date / location lines */
.ga-events p{ color: var(--ink); line-height:1.55; margin:.35rem 0; }
.ga-events .is-event-date, .ga-events .is-event-location{ color: var(--muted); }

/* Thumbnails: frame + lift */
.ga-events figure.wp-block-image{
  border:1px solid var(--line); border-radius:12px; overflow:hidden; background:#fff;
  box-shadow:0 8px 22px rgba(2,6,23,.06);
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
  margin: 0 !important;
}
.ga-events figure.wp-block-image:hover{
  transform: translateY(-2px);
  box-shadow:0 14px 30px rgba(2,6,23,.12);
  border-color:#d9c7b6;
}
.ga-events figure.wp-block-image img{
  display:block; width:100%; height:auto; object-fit:cover;
}

/* Buttons row: align + gaps */
.ga-events .wp-block-buttons{ gap: 12px; align-items:flex-start; }

/* Buttons — primary navy becomes GA! gold style */
.ga-events .wp-block-button__link{
  display:inline-flex; align-items:center; justify-content:center;
  border-radius:999px; padding:.7rem 1.1rem; font-weight:800; line-height:1; font-size:.98rem;
  text-decoration:none;
  border:2px solid var(--gold);
  color:#fff !important;
  background-image:
    linear-gradient(180deg, var(--gold), #b18a42),
    linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.65) 50%, rgba(255,255,255,0) 100%);
  background-size:100% 100%, 240% 100%;
  background-position:0 0, -200% 0;
  box-shadow:0 10px 24px rgba(178,146,80,.20);
  transition: filter .12s ease, transform .12s ease, box-shadow .12s ease;
  animation: gaSheen 3.2s linear infinite;
}
.ga-events .wp-block-button__link:hover{
  filter:brightness(1.06); transform: translateY(-1px);
  box-shadow:0 16px 34px rgba(178,146,80,.28);
}

/* Flex groups inside each item: keep spacing tidy on wrap */
.ga-events .wp-block-group[style*="justify-content:space-between"]{
  gap: clamp(12px, 2vw, 18px);
}

/* Kill double borders if your original bottom border remains somewhere */
.ga-events .wp-block-group.alignwide > .wp-block-group.alignwide[style*="border-bottom-width"]{
  border-bottom: none !important;
}

/* Animations */
@keyframes gaTitleShine{ from{background-position:0 0;} to{background-position:200% 0;} }
@keyframes gaSheen{ to{ background-position:0 0, 200% 0; } }
@keyframes gaPulse{ 0%,100%{ opacity:.85; transform:scaleX(1);} 50%{ opacity:1; transform:scaleX(1.06);} }

/* Respect reduced motion */
@media (prefers-reduced-motion: reduce){
  .ga-events *{ animation:none !important; transition:none !important; transform:none !important; }
}
/* ===== GA! palette ===== */
.ga-subscribe, .ga-newsletter{
  --ink:#141414; --muted:#6b5f57; --line:#CCBAA9; --gold:#B29250; --gold2:#E3BF7E; --panel:#fffdf9;
}

/* ===== Fancy gradient titles with gentle shine ===== */
.ga-title{
  margin:0 auto .8rem; text-align:center;
  font-family:"Playfair Display SC", serif; letter-spacing:.02em; line-height:1.12;
  background:linear-gradient(90deg,var(--gold),var(--gold2),var(--gold));
  -webkit-background-clip:text; background-clip:text; color:transparent;
  text-shadow:0 1px 0 rgba(0,0,0,.06);
}
.ga-title-small{ margin-bottom:.5rem; font-size:clamp(1.6rem,2.4vw,2rem); }
@media (prefers-reduced-motion:no-preference){
  .ga-title{ background-size:200% 100%; animation:gaTitleShine 7s linear infinite; }
}
@keyframes gaTitleShine{ from{background-position:0 0;} to{background-position:200% 0;} }

/* ===== Intro section ===== */
.ga-subscribe{ padding: clamp(28px,5vw,56px) 0; }
.ga-subscribe-inner{ max-width:1100px; margin:0 auto; padding:0 16px; }

.ga-lede{
  margin: .6rem auto 1.1rem; max-width: 68ch; color:var(--ink);
  background:linear-gradient(180deg,#fff,var(--panel));
  border:1px solid var(--line); border-radius:12px;
  box-shadow:0 10px 28px rgba(2,6,23,.06);
  padding: clamp(.9rem,2.2vw,1.2rem);
  opacity:0; transform:translateY(8px);
  animation: gaRise .55s ease-out .08s forwards;
}

/* Three small icon cards */
.ga-points{
  display:grid; grid-template-columns: repeat(3, minmax(0,1fr));
  gap: clamp(.7rem,2.2vw,1rem);
  margin: clamp(.6rem,2.4vw,1rem) auto; max-width:1100px;
}
@media (max-width:860px){ .ga-points{ grid-template-columns:1fr; } }

.ga-point{
  display:grid; grid-template-columns:auto 1fr; grid-template-rows:auto auto;
  column-gap:.75rem; row-gap:.35rem; align-items:center;
  background:#fff; border:1px solid var(--line); border-radius:12px;
  box-shadow:0 8px 22px rgba(2,6,23,.06);
  padding:.85rem .95rem;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease, background .2s ease;
}
.ga-point:hover{ transform:translateY(-2px); box-shadow:0 16px 36px rgba(2,6,23,.12); border-color:#d9c7b6; background:#fffef6; }

.ga-ico{
  width:42px; height:42px; display:grid; place-items:center;
  border-radius:999px; background:#fffdf9; border:2px solid var(--gold);
  box-shadow:0 6px 16px rgba(2,6,23,.08);
}
.ga-ico svg{ width:22px; height:22px; display:block; }

.ga-card-h{
  margin:0; font-weight:800; color:var(--gold); position:relative;
}
.ga-card-h::after{
  content:""; position:absolute; left:0; bottom:-6px; width:28px; height:2px; border-radius:2px;
  background:linear-gradient(90deg,var(--gold),var(--gold2));
}
.ga-point p{ margin: .2rem 0 0; color:var(--ink); }

/* Note */
.ga-note{
  margin:.6rem auto 0; max-width:62ch; text-align:center; color:var(--muted);
}

/* Scroll hint */
.ga-scroll-hint{
  margin:.9rem auto 0; text-align:center; font-weight:700; letter-spacing:.08em;
  color:var(--gold); opacity:.85;
  animation: gaHint 1.5s ease-in-out infinite;
}
@keyframes gaHint{ 0%,100%{ transform:translateY(0); } 50%{ transform:translateY(4px); } }

/* ===== Newsletter form wrapper ===== */
.ga-newsletter{ padding: clamp(32px,6vw,72px) 0; background:
  radial-gradient(60% 24% at 10% 0%, rgba(227,191,126,.18), transparent 60%),
  linear-gradient(180deg,#fff,#fffdf9);
  border-top:1px solid var(--line);
}
.ga-newsletter-inner{ max-width:900px; margin:0 auto; padding:0 16px; text-align:center; }
.ga-sub{ margin:0 auto clamp(.7rem,2.4vw,1.1rem); max-width:62ch; color:var(--ink); }

.ga-form-frame{
  margin: 0 auto; max-width:640px;
  border:1px solid var(--line); border-radius:14px; background:#fff;
  box-shadow:0 10px 28px rgba(2,6,23,.06);
  padding: clamp(.9rem,2.2vw,1.2rem);
}

/* Jetpack Subscriptions basic skin */
.ga-form-frame form,
.ga-form-frame .wp-block-jetpack-subscriptions{
  display:grid; grid-template-columns: 1fr auto; gap:.6rem;
  align-items:center;
}
@media (max-width:640px){
  .ga-form-frame form,
  .ga-form-frame .wp-block-jetpack-subscriptions{ grid-template-columns:1fr; }
}

.ga-form-frame input[type="email"],
.ga-form-frame .components-text-control__input{
  width:100%; box-sizing:border-box;
  border:1px solid var(--line); border-radius:999px;
  padding:.75rem 1rem; font-size:1rem; line-height:1.2; color:var(--ink);
  background:#fff;
  transition:border-color .2s ease, box-shadow .2s ease;
}
.ga-form-frame input[type="email"]:focus{
  outline:none; border-color:#d9c7b6; box-shadow:0 0 0 3px rgba(227,191,126,.25);
}

/* Button (GA! gold with sheen) */
.ga-form-frame button[type="submit"],
.ga-form-frame .wp-block-jetpack-subscriptions__button{
  cursor:pointer; border:none;
  border-radius:999px; padding:.8rem 1.2rem; font-weight:800; font-size:1rem;
  color:#fff; background-image:
    linear-gradient(180deg, var(--gold), #b18a42),
    linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.65) 50%, rgba(255,255,255,0) 100%);
  background-size:100% 100%, 240% 100%;
  background-position:0 0, -200% 0;
  box-shadow:0 10px 24px rgba(178,146,80,.18);
  transition: filter .12s ease, transform .12s ease, box-shadow .12s ease;
  animation: gaBtnSheen 3.2s linear infinite;
}
.ga-form-frame button[type="submit"]:hover{ filter:brightness(1.06); transform:translateY(-1px); box-shadow:0 16px 36px rgba(178,146,80,.28); }
@keyframes gaBtnSheen{ to{ background-position:0 0, 200% 0; } }

/* Privacy line */
.ga-privacy{
  margin:.8rem auto 0; color:var(--muted); display:flex; gap:.45rem; justify-content:center; align-items:center;
}
.ga-privacy .ga-lock{ width:18px; height:18px; display:inline-grid; place-items:center; }

/* Animations */
@keyframes gaRise{ to{ opacity:1; transform:translateY(0); } }

/* Respect reduced motion */
@media (prefers-reduced-motion:reduce){
  .ga-title, .ga-scroll-hint, .ga-form-frame button[type="submit"]{ animation:none !important; }
  .ga-point, .ga-lede, .ga-form-frame button[type="submit"]{ transition:none !important; }
}
/* ===== GA! base palette ===== */
.ga-subscribe-pro, .ga-newsletter-pro{
  --ink:#141414; --muted:#6b5f57; --line:#CCBAA9; --gold:#B29250; --gold2:#E3BF7E; --panel:#fffdf9;
}

/* ===== Donation-page style background glow + spacing ===== */
.ga-subscribe-pro{
  padding: clamp(28px, 5vw, 64px) 0;
  background:
    radial-gradient(60% 22% at 10% 0%, rgba(227,191,126,.20), transparent 66%),
    linear-gradient(180deg, #fff, #fffdf9);
  border-top:1px solid var(--line);
}
.ga-sub-hero{ max-width:1100px; margin:0 auto; padding:0 16px; }

/* Fancy gradient title + shiny animation */
.ga-title{
  margin:0 auto .8rem; text-align:center;
  font-family:"Playfair Display SC", serif; letter-spacing:.02em; line-height:1.1;
  background: linear-gradient(90deg, var(--gold), var(--gold2), var(--gold));
  -webkit-background-clip:text; background-clip:text; color:transparent;
  text-shadow:0 1px 0 rgba(0,0,0,.06);
}
.ga-title-small{ font-size:clamp(1.6rem, 2.4vw, 2rem); }
@media (prefers-reduced-motion:no-preference){
  .ga-title{ background-size:200% 100%; animation: gaTitleShine 7s linear infinite; }
}
@keyframes gaTitleShine{ from{background-position:0 0;} to{background-position:200% 0;} }

/* Lede card like Donation page */
.ga-lede{
  margin:.6rem auto 1.1rem; max-width:68ch; color:var(--ink);
  background:linear-gradient(180deg,#ffffff,#fffdf9);
  border:1px solid var(--line); border-radius:14px;
  box-shadow:0 10px 28px rgba(2,6,23,.06);
  padding: clamp(.9rem, 2.2vw, 1.25rem);
  opacity:0; transform: translateY(8px);
  animation: gaRise .55s ease-out .08s forwards;
}

/* Cards row (icon + micro-hover) */
.ga-points{
  display:grid; grid-template-columns:repeat(3, minmax(0,1fr));
  gap: clamp(.8rem, 2.2vw, 1.1rem);
  margin: clamp(.7rem, 2.6vw, 1.2rem) 0;
}
@media (max-width:860px){ .ga-points{ grid-template-columns:1fr; } }

.ga-card{
  display:grid; grid-template-columns:auto 1fr; grid-auto-rows:auto; align-items:center;
  column-gap:.8rem; row-gap:.35rem;
  background:#fff; border:1px solid var(--line); border-radius:12px;
  box-shadow:0 10px 26px rgba(2,6,23,.06);
  padding:.9rem 1rem;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease, background .2s ease;
}
.ga-card:hover{ transform: translateY(-2px); box-shadow:0 16px 36px rgba(2,6,23,.12); border-color:#d9c7b6; background:#fffef6; }

.ga-ico{
  width:44px; height:44px; display:grid; place-items:center; border-radius:999px;
  background:#fffdf9; border:2px solid var(--gold);
  box-shadow:0 6px 16px rgba(2,6,23,.08);
}
.ga-ico svg{ width:22px; height:22px; display:block; }

.ga-card-h{
  margin:0; font-weight:800; color:var(--gold); position:relative;
}
.ga-card-h::after{
  content:""; position:absolute; left:0; bottom:-6px; width:28px; height:2px; border-radius:2px;
  background:linear-gradient(90deg, var(--gold), var(--gold2));
}
.ga-card p{ margin:.15rem 0 0; color:var(--ink); }

/* Soft helper line */
.ga-note{
  margin:.6rem auto 0; text-align:center; color:var(--muted); max-width:62ch;
}

/* ===== Newsletter form section (styled like donation “cards”) ===== */
.ga-newsletter-pro{
  padding: clamp(34px, 6vw, 72px) 0;
  background:
    radial-gradient(55% 20% at 90% 0%, rgba(227,191,126,.18), transparent 70%),
    linear-gradient(180deg, #fffdf9, #ffffff);
  border-top:1px solid var(--line);
}
.ga-news-inner{ max-width:900px; margin:0 auto; padding:0 16px; text-align:center; }
.ga-sub{ margin:.2rem auto 1.1rem; max-width:62ch; color:var(--ink); }

/* Form card (wraps Jetpack block) */
.ga-form-card{
  margin:0 auto; max-width:640px;
  border:1px solid var(--line); border-radius:14px; background:#fff;
  box-shadow:0 12px 30px rgba(2,6,23,.08);
  padding: clamp(1rem, 2.4vw, 1.25rem);
}

/* Jetpack Subscriptions form layout */
.ga-form-card form,
.ga-form-card .wp-block-jetpack-subscriptions{
  display:grid; grid-template-columns: 1fr auto; gap:.7rem; align-items:center;
}
@media (max-width:640px){
  .ga-form-card form,
  .ga-form-card .wp-block-jetpack-subscriptions{ grid-template-columns:1fr; }
}

/* Email input */
.ga-form-card input[type="email"],
.ga-form-card .components-text-control__input{
  width:100%; box-sizing:border-box;
  border:1px solid var(--line); border-radius:999px;
  padding:.8rem 1rem; font-size:1rem; line-height:1.2; color:var(--ink);
  background:#fff; transition:border-color .2s ease, box-shadow .2s ease;
}
.ga-form-card input[type="email"]:focus{
  outline:none; border-color:#d9c7b6; box-shadow:0 0 0 3px rgba(227,191,126,.25);
}

/* Gold button with sheen + hop (like donation) */
.ga-form-card button[type="submit"],
.ga-form-card .wp-block-jetpack-subscriptions__button{
  cursor:pointer; border:none; border-radius:999px;
  padding:.9rem 1.25rem; font-weight:800; font-size:1rem; line-height:1;
  color:#fff; background-image:
    linear-gradient(180deg, var(--gold), #b18a42),
    linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.65) 50%, rgba(255,255,255,0) 100%);
  background-size:100% 100%, 240% 100%;
  background-position:0 0, -200% 0;
  box-shadow:0 10px 24px rgba(178,146,80,.20);
  transition: filter .12s ease, transform .12s ease, box-shadow .12s ease;
  animation: gaBtnSheen 3s linear infinite, gaHop3 3s ease-in-out infinite;
}
.ga-form-card button[type="submit"]:hover,
.ga-form-card .wp-block-jetpack-subscriptions__button:hover{
  filter:brightness(1.06); transform:translateY(-1px); box-shadow:0 16px 36px rgba(178,146,80,.28);
}
@keyframes gaBtnSheen{ to{ background-position:0 0, 200% 0; } }
@keyframes gaHop3{
  0%,58%{ transform:translateY(0); }
  64%{ transform:translateY(-3px) scale(1.01); }
  70%{ transform:translateY(0); }
  78%{ transform:translateY(-3px) scale(1.01); }
  84%{ transform:translateY(0); }
  92%{ transform:translateY(-3px) scale(1.01); }
  98%,100%{ transform:translateY(0); }
}

/* Privacy line */
.ga-privacy{
  margin:.9rem auto 0; color:var(--muted);
  display:flex; gap:.45rem; justify-content:center; align-items:center;
}
.ga-lock{ width:18px; height:18px; display:inline-grid; place-items:center; }

/* Micro animations */
@keyframes gaRise{ to{ opacity:1; transform: translateY(0); } }

/* Respect reduced motion */
@media (prefers-reduced-motion:reduce){
  .ga-title, .ga-form-card button[type="submit"]{ animation:none !important; }
  .ga-card, .ga-lede, .ga-form-card button[type="submit"]{ transition:none !important; }
}
/* === Patch: smaller icons + single-row cards === */

/* one row on wide screens */
.ga-points{ grid-template-columns: repeat(4, minmax(0, 1fr)); }
@media (min-width: 1100px){
  .ga-points{ grid-template-columns: repeat(3, 1fr); }
}

/* stack on tablet/phone */
@media (max-width: 860px){
  .ga-points{ grid-template-columns: 1fr; }
}

/* smaller icon chip */
.ga-ico{
  width: 32px;
  height: 32px;
  border-width: 1.5px;
  box-shadow: 0 4px 10px rgba(2,6,23,.06);
}
.ga-ico svg{
  width: 16px;
  height: 16px;
}

/* tighten the card spacing so the row breathes less */
.ga-card{
  column-gap: .6rem;
  row-gap: .25rem;
  padding: .7rem .85rem;
}

/* slightly smaller headings to match the reduced icon size */
.ga-card-h{
  font-size: 1rem;
}
.ga-card p{
  font-size: .95rem;
}
/* Make the header stick */
.ga-header {
  position: sticky;
  top: 0;
  z-index: 50;
  backdrop-filter: saturate(1.2) blur(6px);
}

/* Tighten on small screens */
@media (max-width: 782px) {
  .ga-header__bar { padding-left: var(--wp--preset--spacing--40) !important; padding-right: var(--wp--preset--spacing--40) !important; }
  .ga-header__search { display: none; } /* hide inline search; users can use menu overlay */
}

/* Make the nav overlay feel branded */
.wp-block-navigation__responsive-close,
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container a {
  text-transform: none;
}

/* Optional: subtle hover underline for nav */
.wp-block-navigation a {
  text-underline-offset: 0.2em;
  text-decoration-thickness: 1px;
}
.wp-block-navigation a:hover {
  text-decoration-line: underline;
}
/* Make the header stick */
.ga-header {
  position: sticky;
  top: 0;
  z-index: 50;
  backdrop-filter: saturate(1.2) blur(6px);
}

/* Tighten on small screens */
@media (max-width: 782px) {
  .ga-header__bar { padding-left: var(--wp--preset--spacing--40) !important; padding-right: var(--wp--preset--spacing--40) !important; }
  .ga-header__search { display: none; } /* hide inline search; users can use menu overlay */
}

/* Make the nav overlay feel branded */
.wp-block-navigation__responsive-close,
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container a {
  text-transform: none;
}

/* Optional: subtle hover underline for nav */
.wp-block-navigation a {
  text-underline-offset: 0.2em;
  text-decoration-thickness: 1px;
}
.wp-block-navigation a:hover {
  text-decoration-line: underline;
}
/* Frame & container */
.ga-clean-header{position:sticky;top:0;z-index:60;background:var(--wp--preset--color--base);border-bottom:1px solid var(--wp--preset--color--custom-color-1);}
.ga-clean-header .ga-wrap{max-width:1200px;margin:0 auto;padding:0 var(--wp--preset--spacing--60);}

/* Utility */
.ga-util{border-bottom:1px solid var(--wp--preset--color--custom-color-1);padding:10px 0;}
.ga-util .wp-block-social-links{gap:16px}
.ga-util .wp-block-social-link svg{width:22px;height:22px}
.ga-util .wp-block-social-link a{transition:transform .18s ease,opacity .18s ease}
.ga-util .wp-block-social-link a:hover{transform:translateY(-1px);opacity:.92}
.ga-search .wp-block-search__inside-wrapper{border:1px solid var(--wp--preset--color--custom-color-1);border-radius:999px;overflow:hidden}
.ga-search .wp-block-search__button{border-radius:999px}

/* Brand + tiny animation */
.ga-brand{padding:26px 0}
.ga-brand .ga-brand-line{gap:var(--wp--preset--spacing--30);opacity:0;transform:translateY(6px);animation:gaFadeUp .38s ease-out .06s forwards;}
.ga-brand .wp-block-site-title{font-size:clamp(28px,3.2vw,46px)}
.ga-brand .wp-block-site-title a{text-decoration:none}
.ga-tagline{margin-top:6px;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--wp--preset--color--primary);opacity:0;transform:translateY(4px);animation:gaFadeUp .36s ease-out .18s forwards;}

@keyframes gaFadeUp{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}

/* Nav with subtle underline */
.ga-nav{padding:12px 0 16px}
.ga-nav .wp-block-navigation{justify-content:center}
.ga-nav .wp-block-navigation a{position:relative;text-decoration:none;padding:6px 8px}
.ga-nav .wp-block-navigation a::after{
  content:"";position:absolute;left:12%;right:12%;bottom:-3px;height:2px;border-radius:2px;
  background:linear-gradient(90deg,var(--wp--preset--color--custom-color-1),var(--wp--preset--color--custom-color-2));
  transform:scaleX(0);transform-origin:left;transition:transform .18s ease;
}
.ga-nav .wp-block-navigation a:hover::after{transform:scaleX(1)}

/* Mobile breathing */
@media (max-width:782px){
  .ga-clean-header .ga-wrap{padding:0 var(--wp--preset--spacing--40)}
  .ga-brand{padding:18px 0}
  .ga-util{padding:8px 0}
  .ga-tagline{display:none}
}

/* Respect reduced motion */
@media (prefers-reduced-motion:reduce){
  .ga-brand .ga-brand-line,.ga-tagline{animation:none;opacity:1;transform:none}
  .ga-nav .wp-block-navigation a::after{transition:none}
  .ga-util .wp-block-social-link a{transition:none}
}
/* ----- GLOBAL MOBILE FIXES ----- */
@media (max-width: 768px) {

  /* Reduce giant spacers */
  .wp-block-spacer {
    height: 20px !important;
  }

  /* Fix wide columns breaking layout */
  .wp-block-columns {
    flex-direction: column !important;
    gap: 24px !important;
  }

  /* Column children full width */
  .wp-block-column {
    flex-basis: 100% !important;
    width: 100% !important;
  }

  /* Fix images overflowing */
  .wp-block-image img {
    width: 100% !important;
    height: auto !important;
  }

  /* Buttons centered on mobile */
  .wp-block-buttons {
    justify-content: center !important;
  }

  /* Reduce padding for full-width groups */
  .wp-block-group.alignfull,
  .wp-block-group.alignwide {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  /* Prevent horizontal scroll */
  body, html {
    overflow-x: hidden !important;
  }
}
@media (max-width: 768px) {
  .wp-block-media-text.is-stacked-on-mobile {
    grid-template-columns: 1fr !important;
  }
  .wp-block-media-text__media img {
    width: 100% !important;
    height: auto !important;
  }
}
@media (max-width: 768px) {
  .wp-block-file__embed {
    height: 300px !important;
  }
}
@media (max-width: 768px) {
  .wp-block-cover {
    padding: 20px !important;
    min-height: 250px !important;
  }
  .wp-block-cover__inner-container p {
    font-size: 16px !important;
    line-height: 1.4 !important;
  }
}
@media (max-width: 768px) {
  .wp-block-columns .wp-block-image img {
    max-width: 100% !important;
    height: auto !important;
  }

  .event-countdown__counter p {
    font-size: 14px !important;
  }
}
@media (max-width: 768px) {
  .is-style-section-2 .wp-block-columns {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 20px !important;
  }
}
@media (max-width: 768px) {
  .wp-block-group.has-tertiary-background-color {
    padding: 30px 20px !important;
  }
}
@media (max-width: 768px) {
  .wp-block-buttons {
    flex-direction: column !important;
    gap: 12px !important;
  }
  .wp-block-button {
    width: 100% !important;
  }
}
@media (max-width: 768px) {
  .wp-block-group,
  .wp-block-column,
  .wp-block-media-text {
    margin-bottom: 24px !important;
  }
}
.wp-block-file__embed {
  pointer-events: auto !important;
}
@media (max-width: 768px) {
  .a8c-posts-carousel article,
  .a8c-posts-carousel .post,
  .wp-block-a8c-posts-carousel article {
    width: 100% !important;
    max-width: 100% !important;
  }

  .a8c-posts-carousel__inner {
    overflow-x: scroll !important;
    padding-bottom: 10px;
  }
}
@media (max-width: 768px) {
  .a8c-posts-carousel img {
    max-width: 100% !important;
    height: auto !important;
  }
}
.wp-block-embed.spotify iframe,
.wp-block-embed-spotify iframe,
.wp-block-embed iframe[src*="spotify"] {
  width: 100% !important;
  height: 180px !important; /* clean, mobile-friendly */
  max-width: 100% !important;
}
.wp-block-audio audio {
  width: 100% !important;
}
@media (max-width: 768px) {
  .wp-block-media-text {
    grid-template-columns: 1fr !important;
  }
}
:root{
  /* GA! brand palette */
  --ga-ink:#121212;
  --ga-muted:#6b5f57;
  --ga-line:#e7dfd4;
  --ga-gold:#B29250;
  --ga-gold2:#E3BF7E;

  /* surfaces */
  --ga-paper:#fffdf9;
  --ga-card:#ffffff;

  /* effects */
  --ga-shadow: 0 20px 60px rgba(18,18,18,.12);
  --ga-shadow-strong: 0 26px 90px rgba(18,18,18,.18);
  --ga-radius: 18px;
}
