/*
Theme Name: Astra Child
Theme URI: https://wpastra.com/
Template: astra
Author: Brainstorm Force
Author URI: https://wpastra.com/about/?utm_source=theme_preview&utm_medium=author_link&utm_campaign=astra_theme
Description: The Astra WordPress theme is lightning-fast and highly customizable. It has over 1 million downloads and the only theme in the world with 6,000+ five-star reviews! It’s ideal for professional web designers, solopreneurs, small businesses, eCommerce, membership sites and any type of website. It offers special features and templates so it works perfectly with all page builders like Spectra, Elementor, Beaver Builder, etc. Fast performance, clean code, mobile-first design and schema markup are all built-in, making the theme exceptionally SEO-friendly. It’s fully compatible with WooCommerce, SureCart and other eCommerce plugins and comes with lots of store-friendly features and templates. Astra also provides expert support for free users. A dedicated team of fully trained WordPress experts are on hand to help with every aspect of the theme. Try the live demo of Astra: https://zipwp.org/themes/astra/
Tags: custom-menu,custom-logo,entertainment,one-column,two-columns,left-sidebar,e-commerce,right-sidebar,custom-colors,editor-style,featured-images,full-width-template,microformats,post-formats,rtl-language-support,theme-options,threaded-comments,translation-ready,blog
Version: 4.12.3.1773065767
Updated: 2026-03-09 11:16:07

*/

/* BOTÓN CONTACTO */

.ast-header-button-1[data-section*="section-hb-button-"] .ast-builder-button-wrap .ast-custom-button {
	border-color: #000000;
	border-style: dotted;
	border-width: 0px 0px 0px 5px;
	padding-left: 45px;
}

/* STICKY MENU */

.site-header {
  position: sticky;
  top: 0;
  z-index: 6000;
}
/* BORDES "ESTAMPILLA" */

.estampilla {
	outline: 6px dotted #fff;
	outline-offset: -3px;
}

.estampilla-gris {
	outline: 6px dotted #e1e1e1;
	outline-offset: -3px;
}

/* TESTIMONIOS */

.testimonios-slider .swiper-slide {
	height:auto !important;
}

@media (min-width:768px) {

	.testimonios-slider .swiper-slide {
		display:flex;
	}

	.testimonio-card {
		height:100% !important;
	}
}

.testimonio-card{

display:flex;
flex-direction:column;
padding:0px 20px 0px 20px;
border:1px solid #e5e5e5;
height:100%;
}

/* MOBILE */

@media (max-width:767px){

.testimonio-card{
height:auto !important;
	padding: 0px 20px 0px 20px;
}

.testimonios-slider .swiper-slide{
display:block;
}

}

.testimonio-nombre{
font-weight:700;
font-size:25px;
}

.testimonio-cargo{
font-size:25px;
margin-top:4px;
}

.testimonio-separador{
border-bottom:4px dotted #75AADB;
margin:15px 0;
}

.testimonio-texto{
line-height:1.6;
flex-grow:1;
}

.testimonios-slider .swiper-pagination{
margin-top:30px;
position:relative;
}

@media (max-width:767px){

.testimonios-slider .swiper-pagination{
display:none;
}

}

/* ENTRADAS */

@media (max-width: 599px) {
	.post-title {
		font-size: 48px !important;
		margin-top: 30px;
	}
	.post-subtitle {
		font-size: 30px !important;
	}
}

/* Últimas 3 */

.mas-acciones{
	list-style:none;
	padding: 200px 0px 100px 0px !important;
	position:relative;
	z-index:1;
}

.mas-acciones::before{
content:"";
position:absolute;
top:0;
bottom:0;
left:50%;
width:100vw;
transform:translateX(-50%);
background:#e1e1e1;
z-index:-1;
}

.ver-mas-acciones{
padding-bottom: 75px !important;
position:relative;
z-index:1;
}

.ver-mas-acciones::before{
content:"";
position:absolute;
top:0;
bottom:0;
left:50%;
width:100vw;
transform:translateX(-50%);
background:#e1e1e1;
z-index:-1;
}

.mas-acciones .wp-block-latest-posts__featured-image {
	outline: 6px dotted #e1e1e1;
	outline-offset: -3px;
}

/* convertir el bloque en grid real */
.mas-acciones.wp-block-latest-posts.is-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:50px;
}

/* eliminar el sistema viejo de márgenes y widths */
.mas-acciones.wp-block-latest-posts.is-grid li{
width:auto;
margin:0;
}

@media (max-width: 599px) {
	.mas-acciones.wp-block-latest-posts.is-grid {
		grid-template-columns:1fr;
	}
	.mas-acciones{
		padding: 100px 0px 75px 0px !important;
	}
}

.entry-content ul{
    padding-left: 0px;
}

/* Botones Leer Más */
.wp-block-latest-posts__read-more{
	display:block;
	padding:10px 30px;
	border:2px solid #75AADB;
	border-radius: 8px;
	color:#75AADB !important;
	font-size: 18px;
	font-weight: 700;	
	margin-top:25px !important;
	text-decoration:none;
	text-align:left;
	text-transform: uppercase;
	width:fit-content;
}

/* Excerpt de 4 líneas*/

.wp-block-latest-posts__post-excerpt{
display:-webkit-box;
-webkit-box-orient:vertical;
-webkit-line-clamp:4;
overflow:hidden;
}

/* Quitar navegación entrada Anterior y Siguiente */
.post-navigation{
display:none;
}

/* MAS ACCIONES EN HOME */

.home .mas-acciones {
	padding: 0px !important;
}

.home .mas-acciones::before{
	display:none;
}

.home .mas-acciones .wp-block-latest-posts__featured-image {
	margin-bottom: 1em;
	outline: 6px dotted #fff;
	outline-offset: -3px;
}

.home .mas-acciones .wp-block-latest-posts__post-title {
	color: #000000;
}

/* Todas las acciones en ACCIONES */

.page-id-1014 .mas-acciones::before  {
    background: transparent;
}

.page-id-1014 .mas-acciones {
    padding: 100px 0px 100px 0px !important;	
}

.page-id-1014 .mas-acciones .wp-block-latest-posts__featured-image {
	margin-bottom: 1em;
	outline: 6px dotted #fff;
	outline-offset: -3px;
}

.page-id-1014 .wp-block-latest-posts__post-title {
	color: #000000;
}

/* FORMULARIO FIRMA */

#wpcf7-f508-p37-o1 input::placeholder,
#wpcf7-f508-p37-o1 textarea::placeholder {
  color: #ffffff;
  opacity: 1;
}

#wpcf7-f508-p37-o1 input,
#wpcf7-f508-p37-o1 textarea {
	color: #ffffff;
	text-transform: none;
}

#wpcf7-f508-p37-o1 .wpcf7-form-control-wrap {
	margin-bottom: 20px;
}

.titulo-firma {
	font-size: 22px;
	line-height: 1em;
}

#firma {
	width: 100%;
}

/* Contenedor de los dos bloques */

.fila-submit {
	border-top: 5px dotted #75AADB;
	display: flex;
	align-items: center;
	gap: 15px;
	padding-top: 40px;
}

.leyenda-firma {
	line-height: 1em;
	font-size: 18px;
	margin-top: -25px;
}

.fila-submit p:last-child {
  margin-bottom: 0;
}

.datosPersonales {
	font-size: 12px !important;
	line-height: 1.2em;
	text-align: center;
	margin-top: -25px !important;
}

/* PIE DE PÁGINA */

.site-primary-footer-wrap[data-section="section-primary-footer-builder"] {
    border-style: dotted;
}

@media (min-width:1024px) {
	.ast-builder-grid-row-3-rheavy .ast-builder-grid-row {
    	grid-template-columns: 1fr 2fr 4fr !important;
	}
}

/* Créditos */
.site-footer-primary-section-3 p {
    margin-bottom: 1px;
}

/* IR ARRIBA */

#ast-scroll-top {
    background-color: #FFB81C;
}

/* MODAL CONTACTO */

/* Overlay oculto por defecto */
.modal-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: none; /* oculta */
  justify-content: center;
  align-items: left;
  background: rgba(0,0,0,0.7);
  z-index: 9999;
}

/* Cuando está activo */
.modal-overlay.active {
  display: flex;
}

/* Caja del modal */
.modal-content {
  background: #fff;
  padding: 30px;
  max-width: 500px;
  width: 90%;
  border-radius: 4px;
  position: relative;

  /* SOLUCIÓN */
  max-height: 80vh;
  overflow-y: auto;
}

/* Botón cerrar */
.close-modal {
  position: absolute;
  top: 10px;
  right: 15px;
  font-size: 22px;
  cursor: pointer;
}

#wpcf7-f1171-o2 h3 {
	text-align: left;
}

.modal-texto {
	font-size: 18px !important;
	line-height: 1.2em;
	margin-top: 10px;
	margin-bottom: 10px;
	text-align: left;
}

#wpcf7-f1171-o2 input::placeholder,
#wpcf7-f1171-o2 textarea::placeholder {
  color: #ffffff;
  opacity: 1;
}

#wpcf7-f1171-o2 input,
#wpcf7-f1171-o2 textarea {
	color: #ffffff;
	text-transform: none;
}

#wpcf7-f1171-o2 .wpcf7-form-control-wrap {
	margin-bottom: -10px;
}

.wpcf7-list-item {
	text-align: left;
	margin: 0px 0px 0px 0px;
}

.wpcf7 input[type=radio] {
	height: 0.5em;
	margin: 0px 0px 0px 0px;
}

.wpcf7-form .wpcf7-list-item label {
  line-height: 1.2 !important;
  display: inline-flex !important;
  align-items: flex-start;
  gap: 6px;
}

.wpcf7-form .wpcf7-list-item input {
  margin-top: 3px;
}

.wpcf7-form input[type="submit"] {
    display: block;
    margin-left: 0;
    margin-right: auto;
    text-align: left;
}

/* estilo del modal cuando se abre desde la página de acciones */

#wpcf7-f1171-o1 h3 {
	text-align: left;
}

#wpcf7-f1171-o1 input::placeholder,
#wpcf7-f1171-o1 textarea::placeholder {
  color: #ffffff;
  opacity: 1;
}

#wpcf7-f1171-o1 input,
#wpcf7-f1171-o1 textarea {
	color: #ffffff;
	text-transform: none;
}

#wpcf7-f1171-o1 .wpcf7-form-control-wrap {
	margin-bottom: -10px;
}

/* ------------------------------------ */

/* SLIDER LOGOS NOS ACOMPAÑAN */

.logo-slider {
  overflow: hidden;
  width: 100%;
}

.logo-track {
  display: flex;
  align-items: center;
  gap: 100px;
  width: max-content;
  animation: scroll-logos 35s linear infinite;
}

.logo-track img {
  height: 240px;
  width: auto;
  object-fit: contain;
  flex-shrink: 0;
  opacity: 0.85;
}

@media (max-width: 767px) {
  .logo-track img {
    height: 120px;
  }
}

@keyframes scroll-logos {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}

/* LÍNEAS VERTICALES EN "PARA QUIEN" */

/* Div 1 - contenedor */
.tu-clase-div1 {
  position: relative !important;
  align-self: stretch !important;
}

/* Línea 1 */
.tu-clase-div1 > div:nth-child(1) {
  position: absolute !important;
  top: 0 !important;
  bottom: 0 !important;
  width: 3px;
  border-left: 0px solid #tucolor;
  left: calc(50% - 25px); /* centro - la mitad del grupo total (59px/2 ≈ 29.5) - 11.5px offset */
}

/* Línea 2 */
.tu-clase-div1 > div:nth-child(2) {
  position: absolute !important;
  top: 0 !important;
  bottom: 0 !important;
  width: 3px;
  border-left: 0px solid #tucolor;
  left: calc(50%); /* exactamente centrada */
}

/* Línea 3 */
.tu-clase-div1 > div:nth-child(3) {
  position: absolute !important;
  top: 0 !important;
  bottom: 0 !important;
  width: 3px;
  border-left: 0px solid #tucolor;
  left: calc(50% + 25px);
}

/* ------------------------------------ */

.dscf7_signature_inner {
	border: 2px solid #000;
}

/* ------------------------------------ */

/* CERTIFICADO DE COMPROMISO */

#promesaNumLanding {
	color: #333333;
}

/* SLIDER MOBILE "POR DONDE EMPEZAR" ------------------------------------ */

/* Slider mobile - sección 3cddbc9 */
@media (max-width: 767px) {

  .elementor-element-3cddbc9 {
    overflow-x: auto !important;
    overflow-y: visible !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    scroll-snap-type: x mandatory !important;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    gap: 30px !important;
    padding: 0 !important;
    scroll-padding-left: 30px;
    box-sizing: border-box;
    align-items: flex-start !important;
  }

  .elementor-element-3cddbc9::-webkit-scrollbar {
    display: none;
  }

  /* Los 5 slides por ID exacto */
  .elementor-element-0a1f459,
  .elementor-element-df6e7df,
  .elementor-element-8446f08,
  .elementor-element-55ea892,
  .elementor-element-ee01e6f {
    min-width: calc(100% - 60px) !important;
    width: calc(100% - 60px) !important;
    flex: 0 0 calc(100% - 60px) !important;
    scroll-snap-align: start;
    box-sizing: border-box;
    flex-shrink: 0 !important;
  }

  /* Margen izquierdo en el primero, derecho en el último */
  .elementor-element-0a1f459 {
    margin-left: 30px !important;
  }

  .elementor-element-ee01e6f {
    margin-right: 30px !important;
  }

  /* Dots */
  .lpa-slider-dots {
    display: flex;
    justify-content: center;
    gap: 8px;
    margin-top: 16px;
  }

  .lpa-slider-dots button {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    border: none;
    background: #ccc;
    padding: 0;
    cursor: pointer;
    transition: background 0.2s, width 0.2s;
  }

  .lpa-slider-dots button.active {
    background: #555;
    width: 20px;
    border-radius: 4px;
  }
}

@media (max-width: 767px) {
  .elementor-element-3cddbc9 {
    justify-content: flex-start !important;
  }
}

/* SLIDER MOBILE "EQUIPO" ------------------------------------ */

/* Slider mobile - sección Equipo 6ed4c81 */
@media (max-width: 767px) {

  .elementor-element-6ed4c81 .e-con-inner {
    overflow-x: auto !important;
    overflow-y: visible !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    scroll-snap-type: x mandatory !important;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    gap: 30px !important;
    padding: 0 !important;
    scroll-padding-left: 30px;
    box-sizing: border-box;
    justify-content: flex-start !important;
    align-items: flex-start !important;
  }

  .elementor-element-6ed4c81 .e-con-inner::-webkit-scrollbar {
    display: none;
  }

  .elementor-element-be0c40d,
  .elementor-element-be4c9c2,
  .elementor-element-7bba254,
  .elementor-element-395df46 {
    min-width: calc(100% - 60px) !important;
    width: calc(100% - 60px) !important;
    flex: 0 0 calc(100% - 60px) !important;
    scroll-snap-align: start;
    box-sizing: border-box;
    flex-shrink: 0 !important;
  }

  .elementor-element-be0c40d {
    margin-left: 30px !important;
  }

  .elementor-element-395df46 {
    margin-right: 30px !important;
  }

  .lpa-equipo-dots {
    display: flex;
    justify-content: center;
    gap: 8px;
    margin-top: 16px;
  }

  .lpa-equipo-dots button {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    border: none;
    background: #ccc;
    padding: 0;
    cursor: pointer;
    transition: background 0.2s, width 0.2s;
  }

  .lpa-equipo-dots button.active {
    background: #555;
    width: 20px;
    border-radius: 4px;
  }
}