.elementor-1378 .elementor-element.elementor-element-48bcc46{--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;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-1378 .elementor-element.elementor-element-3774cd2{padding:0px 0px 0px 0px;font-family:"Roboto Slab", Sans-serif;font-size:16px;font-weight:400;color:var( --e-global-color-primary );}.elementor-1378 .elementor-element.elementor-element-b9bf4e0{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );}.elementor-1378 .elementor-element.elementor-element-493a36a img{border-radius:12px 12px 12px 12px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-1378 .elementor-element.elementor-element-5a6faab .elementor-heading-title{font-family:"Roboto Slab", Sans-serif;font-weight:800;}.elementor-1378 .elementor-element.elementor-element-4966338{padding:0px 0px 0px 0px;font-family:"Roboto Slab", Sans-serif;font-size:16px;font-weight:400;color:var( --e-global-color-primary );}.elementor-1378 .elementor-element.elementor-element-903c936{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1378 .elementor-element.elementor-element-6cb310a img{border-radius:12px 12px 12px 12px;}.elementor-1378 .elementor-element.elementor-element-4e73212 .elementor-heading-title{font-family:"Roboto Slab", Sans-serif;font-weight:800;}.elementor-1378 .elementor-element.elementor-element-b60541a{font-family:"Roboto Slab", Sans-serif;font-size:16px;font-weight:400;color:var( --e-global-color-primary );}.elementor-1378 .elementor-element.elementor-element-ed38969{font-family:"Roboto Slab", Sans-serif;font-size:16px;font-weight:600;color:var( --e-global-color-accent );}.elementor-1378 .elementor-element.elementor-element-816e951{font-family:"Roboto Slab", Sans-serif;font-size:16px;font-weight:400;color:var( --e-global-color-primary );}.elementor-1378 .elementor-element.elementor-element-4239756{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1378 .elementor-element.elementor-element-c8d1404 img{border-radius:12px 12px 12px 12px;}.elementor-1378 .elementor-element.elementor-element-83d6bc9 .elementor-heading-title{font-family:"Roboto Slab", Sans-serif;font-weight:800;}.elementor-1378 .elementor-element.elementor-element-2d226fe{font-family:"Roboto Slab", Sans-serif;font-size:16px;font-weight:400;color:var( --e-global-color-primary );}.elementor-1378 .elementor-element.elementor-element-45c4f9a{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1378 .elementor-element.elementor-element-d51207e img{border-radius:12px 12px 12px 12px;}.elementor-1378 .elementor-element.elementor-element-0744b9b .elementor-heading-title{font-family:"Roboto Slab", Sans-serif;font-weight:800;}.elementor-1378 .elementor-element.elementor-element-899ca83{font-family:"Roboto Slab", Sans-serif;font-size:16px;font-weight:400;color:var( --e-global-color-primary );}.elementor-1378 .elementor-element.elementor-element-f812944{--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;}.elementor-1378 .elementor-element.elementor-element-b353705{font-family:"Roboto Slab", Sans-serif;font-size:16px;font-weight:400;color:var( --e-global-color-primary );}.elementor-1378 .elementor-element.elementor-element-a66dcee{font-family:"Roboto Slab", Sans-serif;font-size:16px;font-weight:400;color:var( --e-global-color-primary );}.elementor-1378 .elementor-element.elementor-element-af14a17 .elementor-heading-title{font-family:"Roboto Slab", Sans-serif;font-weight:800;}.elementor-1378 .elementor-element.elementor-element-c9e15fa{color:var( --e-global-color-primary );}.elementor-1378 .elementor-element.elementor-element-c9e15fa a{color:#0005C2;}.elementor-1378 .elementor-element.elementor-element-f782213{--display:flex;}.elementor-1378 .elementor-element.elementor-element-dd4edf0 img{border-radius:12px 12px 12px 12px;}.elementor-1378 .elementor-element.elementor-element-cd60044{color:var( --e-global-color-primary );}.elementor-1378 .elementor-element.elementor-element-e1c25c3{font-family:"Poppins", Sans-serif;font-size:16px;font-weight:500;color:var( --e-global-color-accent );}.elementor-1378 .elementor-element.elementor-element-f47ab41{color:var( --e-global-color-primary );}.elementor-1378 .elementor-element.elementor-element-57512f1{--display:flex;}.elementor-1378 .elementor-element.elementor-element-d35b266{color:var( --e-global-color-primary );}.elementor-1378 .elementor-element.elementor-element-8352131{--display:flex;}.elementor-1378 .elementor-element.elementor-element-70691dd{color:var( --e-global-color-primary );}.elementor-1378 .elementor-element.elementor-element-012081a{--display:flex;}.elementor-1378 .elementor-element.elementor-element-7887ab4{color:var( --e-global-color-primary );}.elementor-1378 .elementor-element.elementor-element-339c877{--display:flex;}.elementor-1378 .elementor-element.elementor-element-08a1db8{color:var( --e-global-color-primary );}.elementor-1378 .elementor-element.elementor-element-caa9a39{--display:flex;}.elementor-1378 .elementor-element.elementor-element-774b6a4{color:var( --e-global-color-primary );}.elementor-1378 .elementor-element.elementor-element-584aae4{--n-accordion-title-font-size:1rem;--n-accordion-item-title-space-between:8px;--n-accordion-item-title-distance-from-content:0px;--n-accordion-border-radius:12px 12px 12px 12px;--n-accordion-icon-size:21px;--n-accordion-icon-gap:14px;--n-accordion-icon-normal-color:var( --e-global-color-accent );--n-accordion-icon-active-color:var( --e-global-color-accent );}:where( .elementor-1378 .elementor-element.elementor-element-584aae4 > .e-n-accordion > .e-n-accordion-item > .e-n-accordion-item-title > .e-n-accordion-item-title-header ) > .e-n-accordion-item-title-text{font-family:"Roboto Slab", Sans-serif;}.elementor-1378 .elementor-element.elementor-element-584aae4 :where( .elementor-1378 .elementor-element.elementor-element-584aae4 > .e-n-accordion > .e-n-accordion-item:not([open]) > .e-n-accordion-item-title:not(hover) > .e-n-accordion-item-title-header ) > .e-n-accordion-item-title-text{-webkit-text-stroke-color:#000;stroke:#000;}.elementor-1378 .elementor-element.elementor-element-f547436{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1378 .elementor-element.elementor-element-be30aa7 img{border-radius:12px 12px 12px 12px;}.elementor-1378 .elementor-element.elementor-element-f58b2b4{font-family:"Roboto Slab", Sans-serif;font-size:16px;font-weight:400;color:var( --e-global-color-primary );}@media(max-width:1024px){.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );}}@media(max-width:767px){.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );}.elementor-1378 .elementor-element.elementor-element-ed38969{font-size:16px;}}/* Start custom CSS for text-editor, class: .elementor-element-2d226fe *//* Contenedor de la cuadrícula */
.services-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); /* Se adapta a móvil y PC auto */
  gap: 25px; /* Espacio entre tarjetas */
  margin-top: 30px;
  margin-bottom: 40px;
}

/* Estilo de cada tarjeta */
.service-card {
  background-color: #ffffff;
  border-radius: 12px;
  padding: 25px;
  box-shadow: 0 5px 15px rgba(0,0,0,0.05); /* Sombra muy suave */
  border-top: 5px solid #4A1E58; /* Tu color morado de marca */
  transition: transform 0.2s ease;
}

.service-card:hover {
  transform: translateY(-5px); /* Efecto al pasar el mouse */
  box-shadow: 0 10px 20px rgba(0,0,0,0.1);
}

/* Tipografía dentro de la tarjeta */
.service-card h3 {
  color: #4A1E58;
  margin-top: 0;
  margin-bottom: 15px;
  font-size: 1.3rem;
  font-weight: 700;
}

.service-card p {
  color: #555;
  font-size: 0.95rem;
  line-height: 1.6;
  margin: 0;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-b353705 *//* Estilos generales (Escritorio) - IGUAL QUE ANTES */
.service-table {
  width: 100%;
  border-collapse: collapse;
  margin: 20px 0;
  font-family: Arial, sans-serif;
}
.service-table th, .service-table td {
  border: 1px solid #ddd;
  padding: 12px;
  text-align: left;
  vertical-align: top;
}
.service-table th {
  background-color: #f4f4f4;
  font-weight: bold;
}

/* --- NUEVO: Estilos para Móvil (Responsive) --- */
@media screen and (max-width: 768px) {
  /* 1. Ocultar los encabezados de la tabla tradicional */
  .service-table thead {
    display: none;
  }

  /* 2. Convertir la tabla y filas en bloques */
  .service-table, .service-table tbody, .service-table tr, .service-table td {
    display: block;
    width: 100%;
    box-sizing: border-box; /* Asegura que el padding no rompa el ancho */
  }

  /* 3. Estilo de "Tarjeta" para cada fila */
  .service-table tr {
    margin-bottom: 20px;
    border: 1px solid #ddd;
    box-shadow: 0 2px 5px rgba(0,0,10,0.05); /* Sombra suave */
    border-radius: 8px;
    overflow: hidden;
    background: #fff;
  }

  /* 4. Estilo de las celdas internas */
  .service-table td {
    padding: 15px;
    padding-top: 30px; /* Espacio para la etiqueta */
    position: relative;
    border: none;
    border-bottom: 1px solid #eee;
  }
  
  .service-table td:last-child {
    border-bottom: none;
  }

  /* 5. Insertar el título de la columna (data-label) automáticamente */
  .service-table td::before {
    content: attr(data-label); /* Toma el texto del HTML */
    position: absolute;
    top: 8px;
    left: 15px;
    font-size: 0.75rem;
    font-weight: bold;
    color: #582075;
    text-transform: uppercase;
    letter-spacing: 1px;
  }

  /* Opcional: Destacar la primera celda (Nombre del Servicio) como título de tarjeta */
  .service-table td:first-child {
    background-color: #f8f9fa;
    color: #333;
    font-size: 1.1rem;
    padding-top: 15px; /* Menos padding porque el título ya es grande */
  }
  .service-table td:first-child::before {
    display: none; /* Ocultar la etiqueta "Service Type" para que se vea más limpio */
  }
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-7964fd9 *//* Contenedor Principal del CTA */
.cta-container {
  background-color: #4A1E58; /* Color morado de tu marca */
  border-radius: 16px; /* Bordes redondeados consistentes con tu sitio */
  padding: 40px;
  margin: 50px 0; /* Espacio arriba y abajo para separarlo del texto */
  display: flex;
  align-items: center;
  justify-content: space-between;
  box-shadow: 0 10px 30px rgba(74, 30, 88, 0.2); /* Sombra suave morada */
  font-family: Arial, sans-serif; /* O la fuente que use tu tema */
  color: #ffffff;
}

/* Sección de Texto */
.cta-content {
  flex: 1;
  padding-right: 30px;
}

.cta-content h3 {
  margin: 0 0 10px 0;
  font-size: 1.8rem;
  font-weight: 700;
  color: #ffffff;
}

.cta-content p {
  margin: 0;
  font-size: 1.1rem;
  line-height: 1.6;
  opacity: 0.9; /* Un poco de transparencia para jerarquía visual */
}

/* Sección del Botón */
.cta-action {
  flex-shrink: 0;
}

/* Estilo del Botón (Invertido respecto a tu header) */
.cta-button {
  display: inline-block;
  background-color: #ffffff;
  color: #4A1E58;
  padding: 15px 30px;
  border-radius: 50px; /* Estilo píldora como en tu header */
  font-weight: bold;
  text-decoration: none;
  font-size: 1rem;
  transition: all 0.3s ease;
  box-shadow: 0 4px 15px rgba(0,0,0,0.1);
}

.cta-button:hover {
  transform: translateY(-3px); /* Efecto de elevación */
  box-shadow: 0 8px 20px rgba(0,0,0,0.2);
  background-color: #f4f4f4;
}

/* --- Versión Móvil (Responsive) --- */
@media screen and (max-width: 768px) {
  .cta-container {
    flex-direction: column;
    text-align: center;
    padding: 30px 20px;
  }

  .cta-content {
    padding-right: 0;
    margin-bottom: 25px;
  }

  .cta-button {
    width: 100%; /* Botón ancho completo en celular */
    box-sizing: border-box;
    display: block;
    text-align: center;
  }
}/* End custom CSS */