body {
  background: #FFF;
}

.cb-button-next.swiper-button-next {
  display: none;
}

.cb-button-prev.swiper-button-prev.swiper-button-disabled {
  display: none;
}

.swiper-button-next::after {
  content: '' !important;
  background-image: url('/wp-content/uploads/2025/11/right.svg');
  width: 50px !important;
  height: 50px !important;
  background-size: cover;
  min-width: 50px !important;
}

.wp-block-cb-carousel-v2 .cb-button-prev::after {
  content: '' !important;
  background-image: url('/wp-content/uploads/2025/11/left.svg');
  width: 50px !important;
  height: 50px !important;
  background-size: cover;
  min-width: 50px !important;
}

.wpforms-field-label {
  font-weight: 500 !important;
  font-size: 16px !important;
}

.wp-block-cb-carousel-v2 .cb-button-prev,
.wp-block-cb-carousel-v2.cb-rtl .cb-button-next {
  left: auto;
  right: 124px;
  top: 0;
}

.wp-block-cb-carousel-v2 .cb-button-next,
.wp-block-cb-carousel-v2.cb-rtl .cb-button-prev {
  right: 60px;
  top: 0;
}

#wpforms-submit-403 {
  width: 100%;
  text-transform: uppercase;
}

.gap {
  gap: 40px !important;
}

.wp-block-cb-carousel-v2 .cb-pagination .cb-pagination-bullet.swiper-pagination-bullet-active {
  background: #69D9A8;
  opacity: 1;
}

.wp-block-cb-carousel-v2 .cb-pagination .cb-pagination-bullet {
  background: #183263;
  opacity: 1;
}

.opacidad {
  background-color: rgba(24, 50, 99, 0.04) !important;
}

.slider-logo {
  display: flex;
  width: max-content;
  animation: scroll 30s linear infinite;
  /* más lento */
}

#primary-menu a,
#primary-menu li {
  color: #1A202C !important;
}

.slider-logo img {
  width: fit-content;
  height: 80px;
  flex-shrink: 0;
  margin: 16px 0px;
}

/* Contenedor visible */
.slider-wrapper {
  width: 100%;
  overflow: hidden;
}


.max-width-container {
  max-width: 1320px;
  margin: auto;
}

/* Animación */
@keyframes scroll {
  0% {
    transform: translateX(0);
  }

  100% {
    transform: translateX(-50%);
  }
}

.middle-color {
  width: fit-content;
  margin: 0 auto;
  padding: 0px 10px 5px 10px;
  background: linear-gradient(to bottom, transparent 50%, #D6C9FE 60%);
  box-decoration-break: clone;
  padding: 10px 5px;
  display: inline;
  text-align: center !important;
}

.center {
  text-align: center;
}


.custom-list {
  list-style: none;
  padding-left: 0;
}

.custom-list li {
  position: relative;
  padding-left: 28px;
  margin-bottom: 24px;
}

.custom-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 12px;
  transform: translateY(-50%);
  width: 20px;
  height: 20px;
  background: url("/wp-content/uploads/2025/11/check.svg") no-repeat center;
  background-size: contain;
}

.sombra img {
  box-shadow: 0px 3px 46px #1932635D;
}

.testimonios>div>div>div>div {
  box-shadow: 0px 3px 46px #19326330;
  margin: 0 20px 0 20px !important;
  min-height: 230px !important;
}

.testimonios>div>div>div>.last-child {
  margin: 0 20px 0 40px !important;
}

.testimonios>div>div>div>.f-child {
  margin: 0 40px 0 20px !important;
}



.btn>a::after {
  content: "";
  display: inline-block;
  width: 12px;
  height: 9px;
  margin-left: 8px;
  background: url("/wp-content/uploads/2025/11/Arrow-left.png") no-repeat center;
  background-size: contain;
}

#primary {
  margin-bottom: 0;
}

.site-footer-row.site-footer-row-columns-2.site-footer-row-column-layout-left-golden {
  grid-template-columns: minmax(0, 5fr) minmax(0, 1fr);
}

.subtitulo-banner p {
  text-align: left;
  font-size: 32px;
  letter-spacing: 0px;
  color: #FFFFFF;
  opacity: 1;
  font-weight: 300;
  line-height: 1.3;
  width: 100%;
  max-width: 904px;
}

.titulo-banner h1 {
  text-align: left;
  font-size: 50px;
  letter-spacing: 0px;
  color: #FFFFFF;
  opacity: 1;
}


footer {
  background: #183263 !important;
}

footer h3,
footer a {
  color: #FFF !important;
}

footer p {
  color: #69D9A8 !important;
  font-size: 16px !important;
  font-weight: 300 !important;
}

footer a {
  font-size: 16px;
  font-weight: 400;
}

footer h3 {
  font-size: 20px;
}

footer svg {
  width: 20px !important;
  height: 20px !important;
  fill: #69D9A8;
}

#nav_menu-7 .collapse-sub-navigation ul.menu li a {
  padding: 0 !important;
  border: none !important;
  text-align: right;
}

.wpforms-field-label-inline a {
	color: #183263 !important;
}

a.social-button {
  width: fit-content;
  height: fit-content;
}

#wpforms-form-739>div {
  display: flex;
  flex-wrap: wrap;
}

#wpforms-form-739>div>div {
  width: 50%;
  box-sizing: border-box;
  padding: 10px;
}

#wpforms-form-739>div>div:nth-last-child(-n+1) {
  width: 100%;
}

#wpforms-submit-739 {
  margin: 0 auto;
  background: #D6C9FE 0% 0% no-repeat padding-box;
  border-radius: 27px;
  opacity: 1;
  padding: 10px 35px !important;
  color: #183263;
  font-weight: 600 !important;
}

#wpforms-submit-739:hover {
  background: #183263 0% 0% no-repeat padding-box;
  color: #FFF;
}

@media (max-width: 1050px) {
  .s-1 {
    flex-direction: column-reverse;
  }

  .s-1-1,
  .s-3,
  .s-5,
  .s-6,
  .s-7,
  .s-8,
  .s-9,
  .s-10,
  .s-11,
  .s-12 {
    padding: 40px 24px !important;
  }

  .s-1 h1 {
    font-size: 40px !important;
  }

  .s-3 h2,
  .s-5 h2,
  .s-5 h2,
  .s-6 h2,
  .s-7 h2,
  .s-8 h2,
  .s-9 h2,
  .s-11 h2,
  .s-12 h2,
  .s-10 h2 {
    font-size: 24px !important;
  }

  footer .site-container,
  #mobile-header .site-container {
    padding: 24px !important;
  }

  .reverso>div>div {
    flex-direction: column-reverse !important;
    display: flex !important;
  }


  .site-middle-footer-inner-wrap.site-footer-row.site-footer-row-columns-2.site-footer-row-column-layout-left-golden.site-footer-row-tablet-column-layout-default.site-footer-row-mobile-column-layout-row.ft-ro-dir-column.ft-ro-collapse-normal.ft-ro-t-dir-default.ft-ro-m-dir-column.ft-ro-lstyle-plain {
    display: flex;
    flex-direction: column;
  }

  .s-3 p {
    font-size: 20px !important;
    line-height: 1.8;
  }
}

.bi-section {
  padding: 4rem 2rem;
  max-width: 1200px;
  margin: 0 auto;
}

.container {
  width: 100%;
}

.bi-content {
  display: flex;
  flex-direction: column;
  gap: 3rem;
}

@media (min-width: 992px) {
  .bi-content {
    flex-direction: row;
    align-items: flex-start;
    gap: 4rem;
  }
}

/* Left Column (Image & Title on mobile, but Title is top left in design) */
/* Actually, looking at the design:
   Left side: Title + Image
   Right side: List
*/

.bi-image-column {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 2rem;
}

.bi-title {
  font-size: 2rem;
  font-weight: 700;
  color: #1f2937;
  /* Dark grey */
  line-height: 1.3;
  margin-bottom: 1rem;
}

.bi-title .highlight {
  background-color: var(--highlight-bg);
  padding: 0 0.2em;
  border-radius: 4px;
  display: inline-block;
  /* To ensure background wraps nicely if needed */
}

.image-wrapper {
  width: 100%;
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15);
}

.bi-image {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
}

/* Right Column (List) */
.bi-text-column {
  flex: 1;
}

.bi-list {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 2rem;
}

.bi-item {
  display: flex;
  gap: 1rem;
  align-items: flex-start;
}

.bi-number {
  font-size: 2.5rem;
  font-weight: 300;
  /* Light weight for numbers */
  color: var(--accent-color);
  line-height: 1;
  min-width: 60px;
  /* Ensure alignment */
}

.bi-details h3 {
  font-size: 1.1rem;
  font-weight: 700;
  color: #1f2937;
  margin-bottom: 0.5rem;
}

.bi-details p {
  font-size: 0.95rem;
  color: #4b5563;
  /* Lighter grey for body text */
  line-height: 1.5;
}

/* Responsive adjustments */
@media (max-width: 768px) {
  .wpforms-required-label {
    display: none;
  }

  .bi-title {
    font-size: 1.75rem;
  }

  .bi-number {
    font-size: 2rem;
  }
}


.how-we-do-it {
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  background-color: #f3f5f7;
  padding: 72px 77px;
}

.container {
  max-width: 1200px;
  width: 100%;
  margin: 0 auto;
}

/* Header */
.header {
  margin-bottom: 3rem;
  max-width: 864px;
}

.header h2 {
  color: #183263;
  /* Azul oscuro para títulos */
  font-size: 2.5rem;
  font-weight: 700;
  margin-bottom: 1rem;
  margin-top: 0;
}

.header p {
  font-size: 20px;
  color: #183263;
  opacity: 0.9;
  margin: 0;
  font-weight: 500;
}

/* Grid de Pasos */
.steps-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0;
  position: relative;
}

.step-card {
  padding: 2rem;
  border-right: 1px solid #E2E8F0;
  /* Color de los separadores */
}

.step-card:last-child {
  border-right: none;
}

.step-card:first-child {
  padding-left: 0;
}

.step-card:last-child {
  padding-right: 0;
}

.detail-icon {
  margin-bottom: 8px;
}

/* Iconos */
.icon-wrapper {
  margin-bottom: 16px;
}

.icon-wrapper svg {
  width: 24px;
  height: 24px;
}

/* Textos de las cards */
.step-card h3 {
  color: #183263;
  font-size: 1.5rem;
  font-weight: 700;
  margin-bottom: 1rem;
  margin-top: 0;
}

.step-card p {
  font-size: 16px;
  color: #183263;
  line-height: 1.6;
  margin: 0;
}

/* Responsividad */
@media (max-width: 1024px) {
  .steps-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .step-card {
    border-right: none;
    border-bottom: 1px solid #E2E8F0;
    padding: 2rem 1rem;
  }

  .step-card:nth-child(odd) {
    border-right: 1px solid #E2E8F0;
    padding-left: 0;
  }

  .step-card:nth-child(even) {
    padding-right: 0;
  }

  /* .step-card:nth-last-child(-n+2) {
    border-bottom: none;
  } */
}

@media (max-width: 768px) {
  .nuestros-servicios {
    margin-bottom: 24px !important;
  }

  .nuestros-servicios span strong {
    font-size: 30px;
  }

  .titulo-que-hacemos strong {
    font-size: 30px;
  }

  .steps-grid {
    grid-template-columns: 1fr;
  }

  .step-card {
    border-right: none !important;
    border-bottom: 1px solid #E2E8F0;
    padding: 20px 0 !important;
  }

  .step-card:last-child {
    border-bottom: none;
  }

  .header h2 {
    font-size: 30px;
  }
}



.slider-logo {
  display: flex;
  width: max-content;
  animation: scroll 24s linear infinite;
  /* más lento */
}

.slider-logo img {
  width: 12%;
  /* ancho automático */
  height: 75px;
  /* altura fija */
  flex-shrink: 0;
}

/* Contenedor visible */
.slider-wrapper {
  width: 100%;
  overflow: hidden;
  height: 122px
}

/* Seccion problemas servicios */

.problems-section {
  --primary-dark: #183263;
  --bg-light: #f3f4f6;
  --text-white: #ffffff;
  --text-dark: #333333;
  --accent-green: #4ade80;
  --font-family: 'Inter', sans-serif;

  font-family: var(--font-family);
  color: var(--text-dark);
  line-height: 1.6;
  padding: 60px 0;
  box-sizing: border-box;
}

.problems-section * {
  box-sizing: border-box;
}

.titulo-que-hacemos span strong {
  font-size: 36px !important;
}

.container-problemas {
  max-width: 100%;
  margin: 0 auto;
}

.section-title {
  font-size: 36px;
  color: var(--primary-dark);
  margin-bottom: 20px;
  font-weight: 700;
}

.content-wrapper {
  display: flex;
  gap: 40px;
  align-items: flex-start;
}

.problems-list {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.problem-item {
  padding: 20px 25px;
  background-color: var(--bg-light);
  border-radius: 8px;
  cursor: pointer;
  transition: all 0.3s ease;
  font-weight: 600;
  color: var(--primary-dark);
  display: flex;
  align-items: center;
}

.problem-item.active {
  background-color: #183263;
  color: var(--text-white);
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

.problem-item:hover:not(.active) {
  background-color: #e5e7eb;
}

.problem-detail {
  flex: 1;
  padding: 20px;
  animation: fadeIn 0.3s ease-in-out;
}


.detail-title {
  font-size: 1.25rem;
  font-weight: 700;
  color: var(--primary-dark);
  margin-bottom: 15px;
}


.detail-description {
  color: #183263;
  font-size: 16px;
}

@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(10px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (max-width: 768px) {
  .titulo-que-hacemos span strong {
    font-size: 30px !important;
  }

  .content-wrapper {
    flex-direction: column;
  }

  .section-title {
    font-size: 2rem;
  }
}

.hidden {
  display: none;
}

.details-container {
  flex: 1;
}

/* Animación */
@keyframes scroll {
  0% {
    transform: translateX(0);
  }

  100% {
    transform: translateX(-50%);
  }
}

.boton-lila a {
  border: 2px solid #a64ca6;
  border: 2px solid #D6C9FE !important;
  background: transparent;
}

.boton-banner div a {
  font-weight: 500;
}

.nuestros-servicios span {
  font-size: 36px !important;
}

.fondo-banner {
  position: relative;
  background: url('/wp-content/uploads/2025/11/tablero-de-analisis-de-kpi-con-graficos.webp') center center / cover no-repeat;
  height: 77vh;
  /* o la altura que necesites */
  overflow: hidden;
}

.banner-servicio {
  position: relative;
  background: url('/wp-content/uploads/2025/11/img-hero-3.webp') center center / cover no-repeat;
  height: 77vh;
  /* o la altura que necesites */
  overflow: hidden;
}

.banner-servicio::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 77vh;
  background: var(--unnamed-color-183263) 0% 0% no-repeat padding-box;
  background: #183263 0% 0% no-repeat padding-box;
  mix-blend-mode: multiply;
  opacity: 0.8;
  pointer-events: none;
  /* evita que bloquee clics */
}

.fondo-banner::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 77vh;
  background: var(--unnamed-color-183263) 0% 0% no-repeat padding-box;
  background: #183263 0% 0% no-repeat padding-box;
  mix-blend-mode: multiply;
  opacity: 0.8;
  pointer-events: none;
  /* evita que bloquee clics */
}

.fondo-banner .contenido-columna {
  position: relative;
  z-index: 2;
}

.banner-servicio .contenido-columna {
  position: relative;
  z-index: 2;
}

.entry-content-wrap {
  padding: 0 !important;
}

.entry-header.page-title.title-align-inherit.title-tablet-align-inherit.title-mobile-align-inherit {
  display: none !important;
}

/* Estilo para el campo de mensaje */
.wpforms-form textarea {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box;
}

/* Asegurarse de que el contenedor no limite el ancho */
.wpforms-field.wpforms-field-textarea {
  width: 100% !important;
}

.contacto {
  align-items: center;
  display: flex;
  flex-direction: column;
  /* apila título y formulario */
  justify-content: center;
  /* centra verticalmente si das altura */
}

.contacto div {
  max-width: 864px;
}

.contacto h2,
.contacto p {
  max-width: 864px;
  text-align: center;
  font-size: 20px;
  color: #183263;
  font-weight: 400;
}

.contacto h2 {
  max-width: 864px;
  text-align: center;
  font-size: 36px;
  font-weight: bold;
}

#wpforms-form-739 {
  margin-bottom: 72px;
}


.llevar-tu-negocio,
.que-hacemos-sub {
  width: 100%;
  max-width: 957px;
  margin: 0 auto 40px auto;
}


/* Suaviza todos los items */
.owl-carousel-opinions .owl-item {
  transition: transform 0.4s ease, opacity 0.4s ease;
}

/* Permite que los items ampliados no se corten */
.owl-carousel-opinions .owl-stage-outer {
  overflow: visible !important;
}

/* Amplifica el item central sin cortar contenido */
.owl-carousel-opinions .owl-item.center {
  transform: scale(1.10);
  opacity: 1;
  z-index: 3;
}

/* Asegura que el contenido interno también escale suavemente */
.owl-carousel-opinions .owl-item .item {
  transition: inherit;
  background: white;
  /* evita que Owl pinte un fondo raro */
  text-align: left;
}


.owl-carousel-opinions .item {
  height: auto;
  min-height: auto;
}

.owl-carousel-opinions .owl-stage {
  align-items: stretch !important;
}

.single-content .wp-block-image {
  margin-bottom: 0 !important;
}
.content-wrap .entry.single-entry, .content-wrap .entry {
  box-shadow: none;
}

@media screen and (max-width: 945px) {
  #opinions .opinions-container .owl-carousel-opinions .item {
    margin: 0px;
    margin-left: 0px;
    margin-left: 14px !important;
  }
}



/* Ajuste responsive */
@media (max-width: 767px) {
  .wp-block-group__inner-container.is-layout-constrained.wp-block-group-is-layout-constrained {
    margin: auto;
  }
  #nav_menu-7 .collapse-sub-navigation ul.menu li a {
    padding: 0 !important;
    border: none !important;
    text-align: left;
  }
  .site-middle-footer-inner-wrap {
    padding-top: 0 !important;
    padding-bottom: 0 !important
  }
  #wpforms-form-739 {
    margin-bottom: 40px;
  }
  .owl-carousel.owl-drag .owl-item {
    margin: 24px 1px;
    margin-right: 20px !important;
  }

  div:has(> .no-padd) {
    padding: 0 !important;
  }

  .s-11 {
    background: rgba(24, 50, 99, 0.05);
  }

  .how-we-do-it {
    padding: 40px 25px;
  }

  #problems-accordion {
    padding: 0 25px;
    margin: 40px 0;
  }

  #opinions-two {
    padding: 0;
    background: none !important;
    overflow: hidden !important;
  }

  .llevar-tu-negocio {
    width: 100%;
    margin-left: 0px;
  }

  .header .arrow-container-success button {
    width: 41px;
  }

  .numeros-s2 {
    margin-top: 0;
  }

  .contacto h2 {
    font-size: 26px;
  }

  .contacto p {
    font-size: 15px;
  }
}

@media (max-width: 767px) {
  .wp-block-group.center {
    padding: 24px 0 0 0 !important;
  }
}

@media (max-width: 767px) {
  #wpforms-739 .wpforms-field-container {
    display: block !important;
  }

  #wpforms-739 .wpforms-field.wpforms-one-half,
  #wpforms-739 .wpforms-field.wpforms-one-third,
  #wpforms-739 .wpforms-field.wpforms-one-fourth {
    width: 100% !important;
    float: none !important;
    clear: both !important;
  }

  #wpforms-form-739>div>div {
    width: 100%;
    box-sizing: border-box;
    padding: 10px 0px !important;
  }
}

@media (max-width: 767px) {
  div#page-header .header-container h1 {
    line-height: 1.2;
  }

  #opinions-two {
    background: rgba(24, 50, 99, 0.05);
  }

  .contacto {
    padding: 0 24px;
  }

  .boton-lila a {
    margin-top: -16px;
    margin-bottom: 10px;
  }

  .cb-button-prev.swiper-button-prev {
    display: none;
  }

  .wp-block-image .alignright {
    margin-left: 0px !important;
  }

  .wp-block-image .alignleft {
    margin-right: 0px !important;
  }

  body h2 {
    font-size: 30px;
  }

  .que-hacemos-sub {
    padding-left: 0px !important;
    padding-right: 0px !important;
  }

  .listo-para-llevar span strong {
    font-size: 20px;
    font-weight: 700;
  }

  .mobile-listo p {
    font-size: 18px !important;
  }

  .mobile-abandona,
  .mobile-listo {
    padding: 40px !important;
  }

  .abandona-texto span {
    font-size: 20px !important;
  }

  .subtitulo-banner p {
    text-align: left;
    font-size: 22px;
    letter-spacing: 0px;
    color: #FFFFFF;
    opacity: 1;
    font-weight: 300;
    line-height: 1.4;
  }

  .titulo-banner h1 {
    text-align: left;
    font-size: 40px;
    letter-spacing: 0px;
    color: #FFFFFF;
    opacity: 1;
    padding-top: 34px;
    line-height: 1.2;
  }

  .fondo-banner::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 72vh !important;
    background: var(--unnamed-color-183263) 0% 0% no-repeat padding-box;
    background: #183263 0% 0% no-repeat padding-box;
    mix-blend-mode: multiply;
    opacity: 0.8;
    pointer-events: none;
  }

  .fondo-banner {
    position: relative;
    background: url('/wp-content/uploads/2025/11/tablero-de-analisis-de-kpi-con-graficos.webp') center center / cover no-repeat;
    height: 72vh !important;
    overflow: hidden;
  }

  .numeros-mobile {
    padding: 24px !important;
  }

  #opinions {
    padding: 40px 25px !important;
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column {
    flex-basis: 100% !important;
    align-content: center;
  }

  .numeros-s2 {
    margin-top: 0;
  }

  .wp-block-image.sombra {
    display: flex;
    justify-content: center;
  }

  #opinions-two {
    padding: 0;
    background: none;
  }

  .contacto {
    padding: 0 24px;
  }

  .s-11 {
    background: rgba(24, 50, 99, 0.05);
  }
}