/* ==========================================================================
   GM CORE — CTA Band module CSS.
   Full-width gold gradient strip: heading + subtext left, buttons right.
   Navy buttons (navy-on-gold = 7.4:1, verified). Self-contained with brand
   fallbacks via var(--x, LITERAL).
   ========================================================================== */

.gm-cta-widget.band{
  background:var(--gold-grad,linear-gradient(135deg,#E8B33C,#D9A02B 48%,#B97512));
  padding-block:76px;position:relative;overflow:hidden;
}
.gm-cta-widget.band--no-bg{background:none}

/* Subtle radial light glow, top-right (from the mockup). */
.gm-cta-widget.band::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(600px 340px at 88% 20%,rgba(255,255,255,.28),transparent 62%);
}
/* Growth-gradient strip along the bottom edge (from the mockup). */
.gm-cta-widget.band::after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:5px;
  background:var(--growth,linear-gradient(90deg,#1F4FBF,#0E7CC4 34%,#0AA9AC 68%,#0FA37A));
}
/* When the gold background is toggled off, drop the decorative glow too. */
.gm-cta-widget.band--no-bg::before{display:none}

.gm-cta-widget.band .band__in,.gm-cta-widget .band__in{
  max-width:var(--wrap,1240px);margin-inline:auto;padding-inline:28px;position:relative;
  display:flex;align-items:center;justify-content:space-between;gap:44px;flex-wrap:wrap;
  box-sizing:border-box;
}
.gm-cta-widget.band h2,.gm-cta-widget .band h2{
  color:var(--navy,#0A1B33);font-size:clamp(1.6rem,3vw,2.125rem);line-height:1.32;margin:0;
}
.gm-cta-widget.band p,.gm-cta-widget .band p{
  color:rgba(10,27,51,.74);font-size:1rem;margin:10px 0 0;font-weight:600;
}
.gm-cta-widget .band__btns{display:flex;gap:14px;flex-wrap:wrap}

/* Buttons — navy on gold (7.4:1). Fallbacks so they look right without gm.css */
.gm-cta-widget .btn{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  padding:15px 32px;border:2px solid transparent;border-radius:var(--r-pill,100px);
  font-size:.9375rem;font-weight:700;text-decoration:none;cursor:pointer;
  transition:transform .26s cubic-bezier(.4,0,.2,1),background .26s,box-shadow .26s;
}
.gm-cta-widget .btn--navy{
  background:var(--navy,#0A1B33);color:#fff;box-shadow:var(--sh,0 4px 24px rgba(10,27,51,.07));
}
.gm-cta-widget .btn--navy:hover{background:var(--navy-3,#17375E);transform:translateY(-2px)}

@media(max-width:680px){
  .gm-cta-widget.band .band__in,.gm-cta-widget .band__in{flex-direction:column;align-items:flex-start;gap:26px}
}
@media(prefers-reduced-motion:reduce){
  .gm-cta-widget .btn{transition:none}
}
