.elementor-168 .elementor-element.elementor-element-c262475{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}/* Start custom CSS for container, class: .elementor-element-c262475 */.elementor-168 .elementor-element.elementor-element-c262475{
    background:
      radial-gradient(circle at top right, rgba(93,167,39,0.10), transparent 24%),
      linear-gradient(180deg, #1b1b1b 0%, #101010 100%)
}/* End custom CSS */
/* Start custom CSS *//* ==============================
   RCBH Integral - Diseño Interactivo y Responsive
   ============================== */

/* ---- Keyframes ---- */
@keyframes slideInFromLeft {
  from { opacity: 0; transform: translateX(-40px); }
  to   { opacity: 1; transform: translateX(0); }
}
@keyframes slideInFromRight {
  from { opacity: 0; transform: translateX(40px); }
  to   { opacity: 1; transform: translateX(0); }
}
@keyframes slideInFromBottom {
  from { opacity: 0; transform: translateY(30px); }
  to   { opacity: 1; transform: translateY(0); }
}
@keyframes scaleIn {
  from { opacity: 0; transform: scale(0.9); }
  to   { opacity: 1; transform: scale(1); }
}
@keyframes pulseGreen {
  0%, 100% { box-shadow: 0 0 0 0 rgba(46,204,113,0.5); }
  50% { box-shadow: 0 0 0 15px rgba(46,204,113,0); }
}
@keyframes countNumber {
  from { opacity: 0; transform: translateY(20px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* ---- HERO ---- */
.elementor-element-08f7eb3 h4.elementor-heading-title {
  animation: slideInFromLeft 0.8s ease both;
}
.elementor-element-08f7eb3 h1.elementor-heading-title,
.elementor-element-08f7eb3 h2.elementor-heading-title {
  animation: slideInFromBottom 0.8s ease 0.2s both;
}
.elementor-element-08f7eb3 .elementor-text-editor {
  animation: slideInFromBottom 0.8s ease 0.5s both;
}

/* ---- QUIENES SOMOS ---- */
.elementor-element-482b2fd .elementor-widget-image img {
  border-radius: 16px;
  box-shadow: 0 20px 60px rgba(0,0,0,0.15);
  transition: transform 0.4s ease, box-shadow 0.4s ease;
}
.elementor-element-482b2fd .elementor-widget-image img:hover {
  transform: translateY(-8px) scale(1.02);
  box-shadow: 0 30px 80px rgba(46,204,113,0.2);
}

/* ---- NUESTRA ESENCIA - gradiente ---- */
.elementor-element-577a38b {
  background: linear-gradient(135deg, #f0f7f4 0%, #e8f5e9 100%) !important;
}

/* ---- MVV Cards hover effect ---- */
.elementor-element-297a21a,
.elementor-element-b2a9fd2,
.elementor-element-6b7a624 {
  transition: transform 0.35s ease, box-shadow 0.35s ease !important;
}
.elementor-element-297a21a:hover,
.elementor-element-b2a9fd2:hover,
.elementor-element-6b7a624:hover {
  transform: translateY(-12px) !important;
  box-shadow: 0 25px 60px rgba(46,204,113,0.25) !important;
}

/* ---- Iconos con pulso ---- */
.rcbh-card-icon {
  animation: pulseGreen 2.5s ease infinite;
  transition: transform 0.3s ease;
}

/* ---- ESTADÍSTICAS ---- */
.elementor-element-f161c70 {
  background: linear-gradient(135deg, #0d1117 0%, #1a2332 100%) !important;
}
.elementor-element-f161c70 .elementor-counter-number {
  animation: countNumber 0.8s ease both;
}

/* ---- EXPERTISE CARDS hover ---- */
.rcbh-expertise-card {
  transition: all 0.35s ease !important;
}

/* ---- CTA ---- */
.elementor-element-bbe65aa {
  background: linear-gradient(135deg, #2ecc71 0%, #1e8449 100%) !important;
  position: relative;
  overflow: hidden;
}
.elementor-element-bbe65aa .elementor-button {
  transition: all 0.35s ease !important;
  letter-spacing: 0.5px;
}
.elementor-element-bbe65aa .elementor-button:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 15px 35px rgba(0,0,0,0.25) !important;
}

/* ---- Imagen Quienes Somos ---- */
.elementor-element-482b2fd img {
  border-radius: 16px;
  box-shadow: 0 20px 60px rgba(0,0,0,0.15);
  transition: transform 0.4s ease, box-shadow 0.4s ease;
}

html { scroll-behavior: smooth; }

/* ==============================
   RESPONSIVE - Tablet (max 1024px)
   ============================== */
@media (max-width: 1024px) {
  .elementor-element-322d917 { padding: 60px 25px !important; }
  .elementor-element-577a38b { padding: 60px 20px !important; }
  .elementor-element-f161c70 { padding: 60px 20px !important; }
  .elementor-element-c49016a { padding: 60px 20px !important; }
  .elementor-element-bbe65aa { padding: 70px 25px !important; }
}

/* ==============================
   RESPONSIVE - Mobile (max 767px)
   ============================== */
@media (max-width: 767px) {
  /* Hero */
  .elementor-element-08f7eb3 h2.elementor-heading-title,
  .elementor-element-08f7eb3 h1.elementor-heading-title {
    font-size: 30px !important;
    line-height: 1.2 !important;
  }

  /* Quiénes somos - apila verticalmente */
  .elementor-element-322d917 > .e-con-inner {
    flex-direction: column !important;
  }
  .elementor-element-60f561e,
  .elementor-element-482b2fd {
    width: 100% !important;
    max-width: 100% !important;
  }
  .elementor-element-322d917 h2.elementor-heading-title {
    font-size: 26px !important;
  }

  /* MVV cards apila en mobile */
  .elementor-element-5f277f5 > .e-con-inner {
    flex-direction: column !important;
    align-items: center !important;
  }
  .elementor-element-297a21a,
  .elementor-element-b2a9fd2,
  .elementor-element-6b7a624 {
    width: 100% !important;
    max-width: 90% !important;
  }
  .elementor-element-577a38b h2.elementor-heading-title {
    font-size: 26px !important;
  }

  /* Stats mobile */
  .elementor-element-e11c1a8 > .e-con-inner {
    flex-direction: column !important;
    align-items: center !important;
    gap: 20px !important;
  }
  .elementor-element-f161c70 h2.elementor-heading-title {
    font-size: 26px !important;
  }

  /* Expertise mobile */
  .elementor-element-e450725 > .e-con-inner {
    flex-direction: column !important;
    align-items: center !important;
  }
  .elementor-element-c49016a h2.elementor-heading-title {
    font-size: 26px !important;
  }

  /* CTA mobile */
  .elementor-element-bbe65aa h2.elementor-heading-title {
    font-size: 24px !important;
    line-height: 1.3 !important;
  }
  .elementor-element-bbe65aa .elementor-button {
    padding: 15px 30px !important;
    font-size: 15px !important;
  }
}/* End custom CSS */