/* =========================================================================
   CTA BAND — full-width dark slab, two-column: italic Lora pull-quote left,
   buttons right. Used at most once per page.
   ========================================================================= */

.cta-band{padding:64px 0;background:var(--ink);color:rgba(255,255,255,0.78);position:relative;overflow:hidden}
.cta-band::before{content:'';position:absolute;top:-200px;right:-200px;width:540px;height:540px;border-radius:50%;background:radial-gradient(circle,rgba(255,91,31,0.18) 0%,transparent 65%);pointer-events:none;filter:blur(40px)}
.cta-band::after{content:'';position:absolute;bottom:-200px;left:-200px;width:480px;height:480px;border-radius:50%;background:radial-gradient(circle,rgba(27,59,255,0.16) 0%,transparent 60%);pointer-events:none;filter:blur(40px)}

.cta-band__inner{position:relative;z-index:1;display:grid;grid-template-columns:1.4fr 1fr;gap:48px;align-items:center}

.cta-band__copy{display:flex;flex-direction:column;gap:14px}
.cta-band__eyebrow{font-size:11px;font-weight:700;letter-spacing:0.22em;text-transform:uppercase;color:var(--brand);display:flex;align-items:center;gap:10px}
.cta-band__eyebrow::before{content:'';width:24px;height:1.5px;background:var(--brand)}
.cta-band__h{font-family:var(--sans);font-size:clamp(28px,4vw,44px);font-weight:800;color:var(--white);letter-spacing:-0.03em;line-height:1.12;margin:0}
.cta-band__h em{font-family:var(--serif);font-style:italic;font-weight:500;color:var(--brand)}
.cta-band__sub{font-size:16px;line-height:1.65;color:rgba(255,255,255,0.65);max-width:540px;margin:0}

.cta-band__actions{display:flex;flex-direction:column;gap:14px;align-items:flex-start}
.cta-band__actions .btn{justify-content:center;min-width:200px}
.cta-band__actions .btn--ghost{color:var(--white);border-color:rgba(255,255,255,0.30)}
.cta-band__actions .btn--ghost:hover{background:var(--white);color:var(--ink);border-color:var(--white)}

.cta-band__direct{margin-top:18px;font-size:13px;color:rgba(255,255,255,0.55);line-height:1.7}
.cta-band__direct a{color:var(--white);font-weight:600;border-bottom:1px solid rgba(255,255,255,0.25);padding-bottom:1px;transition:border-bottom-color 0.2s}
.cta-band__direct a:hover{border-bottom-color:var(--brand)}

/* Variant: light surface band (less heavy) */
.cta-band--light{background:var(--surface);color:var(--slate)}
.cta-band--light::before{background:radial-gradient(circle,rgba(255,91,31,0.12) 0%,transparent 65%)}
.cta-band--light::after{background:radial-gradient(circle,rgba(27,59,255,0.10) 0%,transparent 60%)}
.cta-band--light .cta-band__h{color:var(--ink)}
.cta-band--light .cta-band__sub{color:var(--slate)}
.cta-band--light .cta-band__actions .btn--ghost{color:var(--ink);border-color:var(--ink)}
.cta-band--light .cta-band__actions .btn--ghost:hover{background:var(--ink);color:var(--white)}
.cta-band--light .cta-band__direct{color:var(--mute)}
.cta-band--light .cta-band__direct a{color:var(--ink);border-bottom-color:var(--line-strong)}

@media(max-width:1024px){
  .cta-band{padding:72px 0}
  .cta-band__inner{gap:48px}
}
@media(max-width:860px){
  .cta-band__inner{grid-template-columns:1fr;gap:32px}
  .cta-band__actions{flex-direction:row;flex-wrap:wrap}
  .cta-band__actions .btn{min-width:0;flex:1}
}
@media(max-width:480px){
  .cta-band{padding:56px 0}
  .cta-band__actions{flex-direction:column;align-items:stretch}
  .cta-band__actions .btn{flex:none;width:100%}
}
