/* =========================================================
   CRA Soluções — Seções / Block Patterns
   Carregado no site E no editor de blocos (add_editor_style).
   ========================================================= */
:root, .editor-styles-wrapper{
  --cra-navy:#00263A; --cra-navy-2:#0A4A73; --cra-navy-light:#1E7FC0;
  --cra-orange:#FC4C02; --cra-orange-dark:#C43A00; --cra-orange-light:#FF8A3D;
  --cra-ink:#10202B; --cra-muted:#5C6B75; --cra-line:#E4E9ED; --cra-bg-soft:#F5F7F9;
  --grad-navy:linear-gradient(135deg,#00263A 0%,#0A4A73 55%,#1E7FC0 100%);
  --grad-orange:linear-gradient(135deg,#C43A00 0%,#FC4C02 50%,#FF8A3D 100%);
  --neon:0 0 0 1px rgba(252,76,2,.35),0 8px 30px rgba(252,76,2,.28),0 0 40px rgba(252,76,2,.20);
  --cra-radius:16px;
}

/* ---- Área de conteúdo livre da home (suporta largura total) ---- */
.free-content{ padding:10px 0; font-family:'Raleway',sans-serif; }
.free-content > *{ max-width:1200px; margin-left:auto; margin-right:auto; padding-left:22px; padding-right:22px; }
.free-content > .alignwide{ max-width:1320px; }
.free-content > .alignfull{ max-width:none; width:100vw; margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw); padding-left:0; padding-right:0; }

/* ---- Bandas de seção (base das patterns) ---- */
.cra-band{ padding:80px 22px; }
.cra-band--soft{ background:var(--cra-bg-soft); }
.cra-band--navy{ background:var(--grad-navy); color:#dbe7ef; }
.cra-band--navy h1,.cra-band--navy h2,.cra-band--navy h3{ color:#fff; }
.cra-band--orange{ padding:0; }
.cra-inner{ max-width:1200px; margin:0 auto; }

/* Cabeçalho de seção dentro das patterns */
.cra-eyebrow{ display:inline-block; font-weight:800; letter-spacing:.14em; text-transform:uppercase; font-size:.8rem; color:var(--cra-orange); margin-bottom:.4rem; }
.cra-band h2{ font-family:'Raleway',sans-serif; font-weight:800; color:var(--cra-navy); }

/* Cartões */
.cra-card{
  background:#fff; border:1px solid var(--cra-line); border-radius:var(--cra-radius);
  padding:28px; box-shadow:0 10px 30px rgba(0,38,58,.08); height:100%;
  transition:transform .3s ease, box-shadow .3s ease;
}
.cra-card:hover{ transform:translateY(-6px); box-shadow:var(--neon); }
.cra-card h3,.cra-card h4{ font-family:'Raleway',sans-serif; color:var(--cra-navy); margin-top:0; }

/* Faixa CTA laranja */
.cra-band--orange .cra-inner{
  background:var(--grad-orange); color:#fff; border-radius:22px; padding:48px 40px; text-align:center; margin:40px auto;
}
.cra-band--orange h2{ color:#fff; }
.cra-band--orange p{ color:#fff2ea; max-width:600px; margin-left:auto; margin-right:auto; }

/* Números / estatísticas */
.cra-stat{ text-align:center; }
.cra-stat .num{ font-size:2.8rem; font-weight:900; font-family:'Raleway',sans-serif; background:var(--grad-orange); -webkit-background-clip:text; background-clip:text; color:transparent; line-height:1; }
.cra-stat .lbl{ color:#c3d3de; font-weight:600; margin-top:6px; display:block; }
.cra-band--navy .cra-stat .lbl{ color:#c3d3de; }

/* Logos "Quem atendemos" */
.cra-logos{ display:flex; flex-wrap:wrap; gap:24px; align-items:center; justify-content:center; }
.cra-logos img{ max-height:60px; width:auto; filter:grayscale(1); opacity:.7; transition:.3s; }
.cra-logos img:hover{ filter:none; opacity:1; }

/* Botão estilo CRA para blocos "Botão" do WordPress */
.cra-btn .wp-block-button__link,
.wp-block-button.cra-btn .wp-element-button{
  background:var(--grad-orange); border:0; border-radius:50px; padding:15px 30px;
  font-family:'Raleway',sans-serif; font-weight:800; color:#fff;
  box-shadow:0 8px 22px rgba(252,76,2,.35); transition:transform .25s ease, box-shadow .25s ease;
}
.cra-btn .wp-block-button__link:hover{ transform:translateY(-3px); box-shadow:0 14px 30px rgba(252,76,2,.5); color:#fff; }
.cra-btn-blue .wp-block-button__link,
.wp-block-button.cra-btn-blue .wp-element-button{ background:var(--grad-navy); box-shadow:0 8px 22px rgba(0,38,58,.35); }

/* Imagem com glow nero laranja usada em patterns */
.cra-glow img{ border-radius:var(--cra-radius); box-shadow:var(--neon); }

@media (max-width:640px){
  .cra-band{ padding:56px 18px; }
  .cra-band--orange .cra-inner{ padding:34px 22px; }
  .cra-stat .num{ font-size:2.2rem; }
}
