/* ================= BO CTA BAND WIDGET — default styling =================
   Scoped under .bo-cta-band-wrap. Reproduces .about-cta-section /
   .about-cta-band / .about-cta-copy / .about-cta-actions exactly,
   including the 980px/640px responsive rules that apply to this band.
   ========================================================================= */

.bo-cta-band-wrap{
  --ctab-bg-start: #0A2347;
  --ctab-bg-end: #071C38;
  --ctab-accent: #1083E6;
  --ctab-accent-soft: #BFE0FB;
  --ctab-section-bg: #F7F9FC;
  --ctab-ease: cubic-bezier(.22,1,.36,1);
  font-family:'Roboto', sans-serif;
}

.bo-cta-band-wrap .about-cta-section{
  padding:80px 0;
  background:var(--ctab-section-bg);
}
.bo-cta-band-wrap .ctab-wrap{ max-width:1220px; margin:0 auto; padding:0 40px; }

.bo-cta-band-wrap .about-cta-band{
  background:linear-gradient(135deg, var(--ctab-bg-start), var(--ctab-bg-end));
  border-radius:20px;
  padding:58px 60px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:40px;
  position:relative;
  overflow:hidden;
}
.bo-cta-band-wrap .about-cta-band::before{
  content:'';
  position:absolute;
  top:-40%; right:-8%;
  width:380px; height:380px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(16,131,230,.2), transparent 70%);
  pointer-events:none;
}

/* ---------- Copy ---------- */
.bo-cta-band-wrap .about-cta-copy{ position:relative; z-index:1; }
.bo-cta-band-wrap .ctab-eyebrow{
  font-family:'IBM Plex Mono', monospace;
  font-size:11px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--ctab-accent-soft);
  font-weight:500;
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:14px;
}
.bo-cta-band-wrap .ctab-eyebrow::before{
  content:'';
  width:18px; height:1px;
  background:var(--ctab-accent-soft);
  display:inline-block;
}
.bo-cta-band-wrap .about-cta-copy h2{
  font-family:'Roboto Slab', serif;
  font-weight:500;
  letter-spacing:-0.01em;
  line-height:1.2;
  color:#fff;
  font-size:30px;
  margin:0;
}
.bo-cta-band-wrap .about-cta-copy h2 em{
  color:var(--ctab-accent);
  font-style:italic;
  font-weight:400;
}

/* ---------- Actions / buttons ---------- */
.bo-cta-band-wrap .about-cta-actions{
  display:flex;
  gap:14px;
  flex-shrink:0;
  position:relative;
  z-index:1;
}
.bo-cta-band-wrap .ctab-btn{
  font-family:'Roboto', sans-serif;
  font-weight:600;
  font-size:13.5px;
  padding:11px 22px;
  border-radius:7px;
  display:inline-flex;
  align-items:center;
  gap:9px;
  border:1px solid transparent;
  white-space:nowrap;
  text-decoration:none;
  transition:all .35s var(--ctab-ease);
}
.bo-cta-band-wrap .ctab-btn-primary{
  background:linear-gradient(135deg, var(--ctab-accent), #0C66B8);
  color:#fff;
  box-shadow:0 8px 20px -8px rgba(16,131,230,.55);
}
.bo-cta-band-wrap .ctab-btn-primary:hover{
  transform:translateY(-2px);
  box-shadow:0 14px 26px -8px rgba(16,131,230,.65);
  color:#fff;
}
.bo-cta-band-wrap .ctab-btn-ghost{
  background:transparent;
  color:#fff;
  border-color:rgba(255,255,255,.25);
}
.bo-cta-band-wrap .ctab-btn-ghost:hover{
  border-color:#fff;
  background:rgba(255,255,255,.06);
  transform:translateY(-2px);
  color:#fff;
}

/* ---------- Reveal helper ---------- */
.bo-cta-band-wrap .reveal{
  opacity:0; transform:translateY(26px);
  transition:opacity .8s var(--ctab-ease), transform .8s var(--ctab-ease);
}
.bo-cta-band-wrap .reveal.in{ opacity:1; transform:translateY(0); }

@media (prefers-reduced-motion: reduce){
  .bo-cta-band-wrap .reveal{ opacity:1; transform:none; transition:none; }
}

/* ---------- Editor-active safety net ----------
   Elementor adds this class to the preview iframe <body> so plugins can
   force-show scroll-reveal content while editing, independent of any
   JS timing race. */
body.elementor-editor-active .bo-cta-band-wrap .reveal{
  opacity:1 !important; transform:none !important;
}
/* ================= RESPONSIVE ================= */
@media (max-width:980px){
  .bo-cta-band-wrap .about-cta-band{
    flex-direction:column;
    align-items:flex-start;
    padding:44px 36px;
  }
}
@media (max-width:640px){
  .bo-cta-band-wrap .ctab-wrap{ padding:0 20px; }
  .bo-cta-band-wrap .about-cta-section{ padding:56px 0; }
  .bo-cta-band-wrap .about-cta-band{ padding:36px 24px; }
  .bo-cta-band-wrap .about-cta-copy h2{ font-size:24px; }
  .bo-cta-band-wrap .about-cta-actions{
    flex-direction:column;
    width:100%;
  }
  .bo-cta-band-wrap .about-cta-actions .ctab-btn{ justify-content:center; }
}