/*
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.1771253068
Updated: 2026-02-16 14:44:28

*/
/*================
 * MENU STICKY
 * =============*/
/* Header transparente y sticky */
.site-header,
.main-header-bar {
  position: fixed !important;
  top: 0px !important;
  width: 100% !important;
  z-index: 9999 !important;
  background: linear-gradient(to top, rgba(0,0,0,0), rgba(0,0,0,0.41)) !important;
}
/* header width 100% max 1920 */
.main-header-bar .ast-container {
  max-width: 1920px !important;
  width: 100% !important;
  margin: 0 auto !important;
  padding-left: 40px !important;
  padding-right: 40px !important;
  margin-top:0px !important;

}


/*===============================
 * CONTENEDOR PRINCIPAL GALERIA 1
 * =============================*/
.contenedor-principal {
    position: relative !important;
    max-width: 1920px !important;
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
	overflow: hidden !important;
	margin-top: 20px;
}
@media (max-width: 480px) {
  .contenedor-principal {
    margin-top:10px !important;
  }
}
/*==BORDES REDONDEADOS smart slider ppal ==*/
.n2-ss-slider-wrapper-inside {
    border-radius: 30px !important;
    overflow: hidden !important;
}


/*=========================*/
/*==== BOTON COTIZAR - PROPORCIONES EXACTAS DE FIGMA ====*/

/* 1. EL CONTENEDOR con la imagen blanca - SIEMPRE 28% */
.boton-cotizar {
    /* Reseteo de variables */
    --padding-top: 0px !important;
    --padding-bottom: 0px !important;
    --padding-left: 0px !important;
    --padding-right: 0px !important;
    --gap: 0px !important;
    --widgets-spacing: 0px !important;
    --container-padding: 0px !important;
    --e-button-padding-block-start: 0 !important;
    --e-button-padding-block-end: 0 !important;
    --e-button-padding-inline-start: 0 !important;
    --e-button-padding-inline-end: 0 !important;
    
    /* POSICIÓN AJUSTADA */
    position: absolute !important;
    bottom: 9px !important;
    right: 20px !important;
    padding: 0 !important;
    margin: 0 !important;
    
    /* TAMAÑO FIJO EN TODAS LAS PANTALLAS */
    width: 28% !important; 
    aspect-ratio: 548 / 176 !important; 
    
    background-image: url('https://svchome.xn--diseowebsalta-lkb.com.ar/wp-content/uploads/2026/02/gallery-corner-548.png') !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-position: bottom right !important;    
    
    display: flex !important;
    align-items: center !important; 
    justify-content: center !important;
   /* z-index: 100 !important;*/
    box-sizing: border-box !important;
    overflow: visible !important;
}
@media (max-width: 480px) {
  .boton-cotizar {
    bottom: 0px !important;
    right: 10px !important;
    width: 55% !important;
  }
}

/* Forzar el wrapper interno */
.boton-cotizar > *,
.boton-cotizar .elementor-widget-container,
.boton-cotizar .elementor-button-wrapper {
    width: 100% !important;
    height: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
}

/* 2. EL BOTÓN - PROPORCIONES EXACTAS: 462x99 dentro de 548x176 */
.boton-cotizar a,
.boton-cotizar .elementor-button,
.boton-cotizar a.elementor-button,
.boton-cotizar .elementor-button-link {
    /* PROPORCIONES EXACTAS DE FIGMA */
    width: 84.3% !important;     /* 462 ÷ 548 */
    height: 56.25% !important;   /* 99 ÷ 176 */
    max-width: none !important;
    min-width: auto !important;
    
    /* AJUSTE DE POSICIÓN DENTRO DEL BG BLANCO */
    margin-top: 13% !important;    /* Bajarlo un poco */
    margin-right: 3% !important; /* Moverlo un poquito a la derecha */
    margin-left: auto !important;
    margin-bottom: auto !important;
    padding: 0 !important;
    
    /* Display */
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    
    /* Estética */
    background: transparent !important; 
    background-color: transparent !important;
    border: 1px solid #151515 !important;
    border-radius: 25px !important;
    
    /* Tipografía escalable */
    font-family: 'Poppins', sans-serif !important;
    font-weight: 400 !important;
    font-size: clamp(12px, 1vw, 20px) !important;
    line-height: 1.2 !important;
    color: #151515 !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    
    transition: all 0.3s ease !important;
    box-sizing: border-box !important;
}

/* El texto dentro del botón */
.boton-cotizar .elementor-button-text,
.boton-cotizar span {
    padding: 0 !important;
    margin: 0 !important;
}

/* Hover */
.boton-cotizar a:hover,
.boton-cotizar .elementor-button:hover {
    background: #151515 !important;
	color:#fff !important;
    transform: none !important;
}

/* === AJUSTES SOLO PARA EL GROSOR DEL BORDE === */

/* Pantallas grandes - borde más visible */
@media (min-width: 1600px) {
    .boton-cotizar a,
    .boton-cotizar .elementor-button {
        border-width: 1.5px !important;
    }
}

/* Pantallas muy grandes - borde aún más visible */
@media (min-width: 1920px) {
    .boton-cotizar a,
    .boton-cotizar .elementor-button {
        border-width: 2px !important;
    }
	.boton-cotizar a,
	.boton-cotizar .elementor-button,
	.boton-cotizar a.elementor-button,
	.boton-cotizar .elementor-button-link{
		border-radius: 38px !important;
		margin-top: 13% !important;
	}
	
	
}



/***MENU DE NAVEGACION***/
.ast-nav-menu .current-menu-item {
  display: flex !important;
  align-items: center !important;
  background: none !important;
  padding: 0 !important;
  height: auto !important;
}

.ast-nav-menu .current-menu-item .menu-link {
  background-color: #cacaca !important;
  color: #ffffff !important;
  border: 1px solid #ffffff !important;
  border-radius: 50px !important;
  padding: 6px 18px !important;
  line-height: normal !important;
  display: flex !important;
  align-items: center !important;
}

.ast-nav-menu li {
  height: auto !important;
  align-self: center !important;
}
/* Quitar estilo activo del anchor Contacto */
.ast-nav-menu .current-menu-item a[href*="#contacto"].menu-link {
  background-color: transparent !important;
  border: none !important;
  color: inherit !important;
  font-weight: normal !important;
}
/* Arreglar estilos generales del menú mobile */
@media (max-width: 921px) {
  .ast-header-break-point .main-header-menu .menu-item .menu-link {
    color: #000000 !important;
    background: none !important;
    padding: 10px 20px !important;
    width: 100% !important;
    display: block !important;
  }

  /* Quitar el resaltado activo de Contacto (anchor link) */
  .main-header-menu .menu-item-3819.current-menu-item .menu-link,
  .main-header-menu .menu-item-3819.current-menu-item {
    background: none !important;
    color: #000000 !important;
    font-weight: normal !important;
  }

  /* Mantener solo Home como activo con estilo sutil */
  .main-header-menu .current-menu-item:not(.menu-item-3819) .menu-link {
    font-weight: 600 !important;
  }
	/* bajar el menu del mobile */
  #ast-hf-menu-1-mobile {
    margin-top: 100px !important;
  }	
	/* quitar el borde bottom de nosotros */
  .ast-header-break-point .main-navigation ul .menu-item .menu-link {
    border-bottom: none !important;
  }	
	/* tamaño del logo */
  .ast-theme-transparent-header #masthead .site-logo-img .transparent-custom-logo img {
    max-width: 100px !important;
    width: 100px !important;
  }
}
/*============================
 * GALERIA PRINCIPAL DE ARRIBA
 * ==========================*/
/*===== icono chevron ===*/
.hero-chevron {
  position: absolute !important;
  bottom: 50px !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  z-index: 99 !important;
  width: auto !important;
}

.hero-chevron i {
  color: #ffffff !important;
  font-size: clamp(12px, 1vw, 20px) !important;
  padding-top: 2px;
}

.hero-chevron .elementor-icon {
  border: 1px solid #ffffff !important;
  border-radius: 50% !important;
  padding: 5px !important;
  width: clamp(25px, 2vw, 45px) !important;
  height: clamp(25px, 2vw, 45px) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
@media (max-width: 768px) {
	.hero-chevron {
	  bottom: 60px !important;
	}
	.n2-ss-control-bullet-horizontal {
        margin-bottom: 20px !important;
		margin-right:10px !important;
		z-index:99 !important;
    }
}
/* === botones blancos de la primer galería ==== */
.boton-cotizar {
    z-index: 0 !important;
}
.n2-ss-slider-controls,
.n2-ss-control-bullet,
.n2-bullet {
    z-index:99 !important;
}

/* Mobile */
.n2-ss-slider-controls {
    bottom: 50px !important;
}

/* 1366px */
@media (min-width: 1280px) {
    .n2-ss-slider-controls {
        bottom: 102px !important;
		padding-right: 100px !important;
    }
	.n2-ss-control-bullet{
		bottom: 10px !important;
	}
}

/* 1920px */
@media (min-width: 1920px) {
    .n2-ss-slider-controls {
        bottom: 155px !important;
		padding-right: 200px;
    }
}
/* ================================================
   WhatsApp Flotante - Fixed
   ================================================ */
.svc-whatsapp-float {
    position: fixed;
    bottom: 30px; /*mobile*/
    right: 16px; /*mobile*/
    z-index: 9999;
	bottom: clamp(80px, 12vw, 220px); /* antes era clamp(16px, 2.08vw, 40px) */

    display: flex;
    align-items: center;

    text-decoration: none;
    transition: transform 0.2s ease;
}
/* 1366px */
@media (min-width: 1366px) {
    .svc-whatsapp-float {
        bottom: 80px;
        right: 30px;
    }
}

/* 1920px */
@media (min-width: 1920px) {
    .svc-whatsapp-float {
        bottom: 100px;
        right: 40px;
    }
}
.svc-whatsapp-float:hover {
    transform: translateY(-3px);
    text-decoration: none;
}

/* Píldora de texto translúcida */
.svc-whatsapp-float__texto {
    background: rgba(200, 200, 200, 0.20);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border: 1px solid rgba(255, 255, 255, 0.45);
    
    color: #ffffff;
    font-size: clamp(12px, 0.83vw, 16px);
    font-weight: 400;
    white-space: nowrap;
    line-height: 1;

    padding: clamp(10px, 0.94vw, 18px) clamp(20px, 2.08vw, 40px);
    padding-right: clamp(50px, 4.17vw, 80px); /* espacio para que el ícono no tape el texto */
    border-radius: 50px;

    position: relative;
    right: -20px; /* se mete debajo del ícono */
    z-index: 1;
}

/* Ícono cuadrado verde */
.svc-whatsapp-float__icono {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;

    background-color: #30DA51;
    border-radius: 16px; 
    
    width: clamp(48px, 4.17vw, 80px);
    height: clamp(48px, 4.17vw, 80px);

    box-shadow: 0 4px 16px rgba(37, 211, 102, 0.45);
    position: relative;
    z-index: 2;
}

.svc-whatsapp-float__icono svg {
    width: 70%;
    height: 70%;
}

/* Móvil: solo ícono */
@media (max-width: 768px) {
    .svc-whatsapp-float__texto {
        display: none;
    }
}

/* =========================
 *** SEGUNDA SECCION ***
   CARDS SLIDER SWIPER - SEGUNDA GALERIA 
CAROUSEL DE CARDS 
========================= */
#nuestras-soluciones{
	margin-top:20px;
}
/*====== RESPETANDO 1366 Y AMPLIANDO 1920 =======*/

.contenedor-relativo {
    position: relative !important;
	overflow-x: hidden !important; 
}


.contenedor-principal-seccion2 {
    position: relative !important;
	overflow-x: hidden !important; 
}
@media (max-width: 768px) {	
	.imagen-principal-seccion2 img{
        width: 100% !important;
        height: 600px !important;   /* altura de la imagen */
        object-fit: cover !important;
        object-position: center !important;
		/*border-radius: 30px;*/
    }
}


/* Para que el hero no quede tapado BUSCAR DONDE ESTA ESTO*/
#page {
  padding-top: 0 !important;
}
/* comienza el carousel de cards */
.nts-swiper {
  padding: 60px 0;
  overflow: visible !important;
  max-width: 100%;
  position: relative;
}

.nts-swiper .swiper-wrapper {
  transition-timing-function: linear !important;
  align-items: stretch !important;
}

.nts-swiper .swiper-slide {
  width: 300px !important;
  height: auto !important;
  display: flex !important;
  align-items: stretch !important;
  min-width: 0 !important; /* CLAVE PARA FIREFOX */
  flex-basis: 300px !important; /* TAMBIÉN IMPORTANTE */	
}

/* LA CLAVE: Forzar el layout vertical */
.nts-swiper .nts-card {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  min-width: 0 !important; /* EVITA QUE SE EXPANDA */
  max-width: 100% !important; /* LIMITA EL ANCHO */	
  height: 100% !important;
  border-radius: 28px;
  overflow: hidden;
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  background: rgba(255, 255, 255, 0.08) !important;
  border: 1px solid rgba(255, 255, 255, 0.15);
  padding: 12px !important;
  box-sizing: border-box !important;
  box-shadow: 0 10px 30px rgba(0,0,0,0.3);
  transition: all 0.4s ease;
}

.nts-swiper .nts-card:hover {
  transform: translateY(-10px);
  background: rgba(255, 255, 255, 0.12) !important;
  box-shadow: 0 20px 40px rgba(0,0,0,0.4);
}

/* Imagen arriba - ocupa su espacio */
.nts-card img {
  width: 100% !important;
  min-width: 0 !important; /* FIREFOX FIX */	
  height: 220px !important;
  object-fit: cover !important;
  border-radius: 20px !important;
  margin: 0 !important;
  padding: 0 !important;
  display: block !important;
  flex-shrink: 0 !important;
}

/* Contenido abajo */
.nts-card-content {
  width: 100% !important;
  min-width: 0 !important; /* FIREFOX FIX */
  display: flex !important;
  flex-direction: column !important;
  padding: 15px 10px 10px !important;
  margin: 0 !important;
  background: transparent !important;
  flex-grow: 1 !important;
}

.nts-card-content h3 {
  margin: 0 0 8px 0 !important;
  font-size: 18px !important;
  color: white !important;
  font-weight: 500 !important;
  line-height: 1.3 !important;
}

.nts-card-content a {
  display: block !important;
  text-align: right !important;
  font-size: 10px !important;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: rgba(255,255,255,0.6) !important;
  text-decoration: none !important;
  margin-top: auto !important;
  transition: color 0.3s ease;
}

.nts-card-content a:hover {
  color: rgba(255,255,255,1) !important;
}

/* Flechas de navegación */
.nts-swiper .swiper-button-next,
.nts-swiper .swiper-button-prev {
  background: rgba(255, 255, 255, 0.1) !important;
  width: 45px !important;
  height: 45px !important;
  border-radius: 50%;
  backdrop-filter: blur(5px);
  border: 1px solid rgba(255, 255, 255, 0.2);
  transition: all 0.3s ease;
}

.nts-swiper .swiper-button-next:hover,
.nts-swiper .swiper-button-prev:hover {
  background: rgba(255, 255, 255, 0.2) !important;
}

.nts-swiper .swiper-button-next::after,
.nts-swiper .swiper-button-prev::after {
  font-size: 16px !important;
  color: white;
  font-weight: bold;
}

/* =========================
   POSICIONAMIENTO DEL CAROUSEL DE CARDS
========================= */
.shortcode-carousel-absolute {
    position: absolute !important;
    top: 15% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    width: calc(100% - 42px) !important;
    max-width: 1920px !important;
    z-index: 2 !important;
	overflow: hidden !important;
}

/* Y sacá el position absolute de aquí */
.cards-carousel-soluciones {
    width: 100% !important;
    /* SIN position absolute */
}

/* MEDIAS QUERYS - Base para pantallas pequeñas/medianas (hasta 1366px) */
@media (max-width: 1366px) {
    .nts-swiper .swiper-slide {
        width: 280px !important;
        flex-basis: 280px !important;
    }
    
    .nts-card img {
        height: 200px !important;
    }
    
    .nts-card-content h3 {
        font-size: 16px !important;
    }
    
    .shortcode-carousel-absolute {
        width: calc(100% - 60px) !important;
    }
}

/* Pantallas medianas (1367px - 1599px) */
@media (min-width: 1367px) and (max-width: 1599px) {
    .nts-swiper .swiper-slide {
        width: 300px !important;
        flex-basis: 300px !important;
    }
    
    .nts-card img {
        height: 220px !important;
    }
    
    .nts-card-content h3 {
        font-size: 18px !important;
    }
}

/* Pantallas grandes (1600px - 1919px) */
@media (min-width: 1600px) and (max-width: 1919px) {
    .nts-swiper .swiper-slide {
        width: 340px !important;
        flex-basis: 340px !important;
    }
    
    .nts-card img {
        height: 240px !important;
    }
    
    .nts-card-content h3 {
        font-size: 20px !important;
    }
    
    .swiper-button-next, .swiper-button-prev {
        width: 50px !important;
        height: 50px !important;
    }
}

/* Full HD y superior (1920px+) */
@media (min-width: 1920px) {
    .nts-swiper .swiper-slide {
        width: 400px !important;
        flex-basis: 400px !important;
    }
    
    .nts-card img {
        height: 280px !important;
    }
    
    .nts-card-content h3 {
        font-size: 22px !important;
        padding: 20px 0 10px !important;
    }
    
    .nts-card-content a {
        font-size: 12px !important;
    }
    
    .swiper-button-next, .swiper-button-prev {
        width: 55px !important;
        height: 55px !important;
    }
    
    .swiper-button-next::after, .swiper-button-prev::after {
        font-size: 20px !important;
    }
}

/* 2K y superior (2560px+) */
@media (min-width: 2560px) {
    .nts-swiper .swiper-slide {
        width: 500px !important;
        flex-basis: 500px !important;
    }
    
    .nts-card img {
        height: 350px !important;
    }
    
    .nts-card-content h3 {
        font-size: 26px !important;
    }
    
    .nts-card-content a {
        font-size: 14px !important;
    }
}

@media (max-width: 768px) {
	.shortcode-carousel-absolute {
		width: 100% !important;
	}
}
/*======================
 * SEGUNDA SECCION ABAJO DEL CAROUSEL DE CARDS 
 * ===================*/
.contenedor-padre-seccion2 {
	margin-top: -22%;
}
.columna-izquierda-s2 {
    position: relative;
    overflow: visible !important;
	z-index: 2;
}
.columna-derecha-s2{
	z-index:1;
}
.titulo-soluciones{
	padding: 25% 0 10% 5%;
}
.smart-slider2{
	z-index:2;
	margin-top:50px;
}
.texto-largo{
	padding: 0 15px 0 3px !important;
}
/* POSICIONAMIENTO DEL BADGE */
.badge-garantia {
    position: absolute;
    right: -45px; /* cuánto sobresale hacia la derecha */
    top: 7%;
    width: clamp(80px, 8vw, 120px);
    z-index: 100;
}
@media (min-width: 1441px) {
    .titulo-soluciones {
        padding-top: 30% !important;
    }
}
@media (min-width: 1920px) {
  .badge-garantia {
    width: 201px !important;
    height: 201px !important;
	right: -100px !important;
	top:14% !important;
  }
    .titulo-soluciones {
        padding: 26% 0 8% 10% !important;
    }
	.titulo-soluciones p{
		line-height: 1.6em;
	}
	.texto-largo{
		padding: 0 120px 0 30px !important;
	}
	.texto-largo p,
	.texto-diseno p{
		line-height: 2.1em;
	}	
}
@media (max-width: 768px) {
	.contenedor-padre-seccion2 {
		margin-top:-280px;
	}
	.titulo-soluciones{
		padding: 0;
		padding-top: 30%;
	}
	
    .titulo-soluciones br,
	.texto-diseno br{
        display: none !important;
    }	
	.titulo-soluciones p,
	.texto-diseno p{
		font-size: 14px !important;
		text-align: center !important;
	}
    .smart-slider2 .n2-ss-widget {
        --widget-offset: -25px !important;
		padding-right:8% !important;
    }

	.badge-garantia {
        right: auto !important;
        left: 50% !important;
        transform: translateX(-50%) !important;
		top: -30px;
	}
	.texto-largo{
		padding: 0 45px !important;
	}
	.texto-largo p{
		font-size: 14px;
		
	}
}

/* =========================
 *** TERCERA SECCION ***
========================= */
/* SECCION ICONOS HOME*/ 
/*.features-section .elementor-widget-text-editor p {
  font-size: clamp(12px, 1.197vw, 23px) !important;
}*/

@media (max-width: 768px) {
    .contenedor-iconos-sec3 .e-con-inner {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
    }
}
/* =========================
 *** CUARTA SECCION ***
========================= */
/*== SERVICIOS GRID - CARDS ==*/
.servicios-grid .elementor-widget-image img {
  width: 100% !important;
  height: clamp(150px, 19.3vw, 371px) !important;
  object-fit: cover !important;
  border-radius: 12px;
}

.servicio-card {
    background-size: contain !important;    /* muestra la imagen completa */
    background-position: center !important;
    background-repeat: no-repeat !important;
    border-radius: 16px !important;
    overflow: hidden !important;
    min-height: clamp(200px, 20vw, 500px) !important;
	margin-right: 10px;
	margin-left: 10px;
}


/* Fondo oculto por defecto */
.descripcion-card .elementor-icon-box-wrapper {
    background: rgba(255, 255, 255, 0) !important;
    backdrop-filter: blur(0px) !important;
    -webkit-backdrop-filter: blur(0px) !important;
    transition: background 0.35s ease, backdrop-filter 0.35s ease;
	padding:10px;
	border-radius:20px;
}

/* Descripción oculta por defecto */
.descripcion-card .elementor-icon-box-description {
    max-height: 0 !important;
    overflow: hidden !important;
    opacity: 0 !important;
    margin: 0 !important;
    transition: max-height 0.4s ease, opacity 0.35s ease 0.1s;
}

/* Hover — glassmorphism en el fondo del widget */
.servicio-card:hover .descripcion-card .elementor-icon-box-wrapper {
    background: rgba(255, 255, 255, 0.20) !important;
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important;
}

/* Hover — aparece descripción */
.servicio-card:hover .descripcion-card .elementor-icon-box-description {
    max-height: 200px !important;
    opacity: 1 !important;
}

@media (max-width: 768px) {
    .fila-servicios {
        --padding-top: 0px !important;
        --padding-bottom: 0px !important;
        padding-block-start: 0px !important;
        padding-block-end: 0px !important;
    }	
    .servicios-grid {
        gap: 8px !important;  /* espacio entre cards */	
		padding-left: 0px;
		padding-right: 0px;
    }
    
    .servicio-card {
        min-height: 250px !important;
        margin: 10px 0 !important;
        background-size: cover !important;
        background-position: center !important;	
    }
    
    .servicios-grid .elementor-widget-image img {
        height: 250px !important;
    }
}
/* =========================
 *** QUINTA SECCION ***
========================= */
/*=== SECCION BENEFICIOS ===*/
.beneficios-section {
  min-height: clamp(350px, 36.45vw, 600px) !important;
}
.beneficios-iconos-section .elementor-widget-text-editor p {
  font-size: clamp(10px, 0.83vw, 16px) !important;
  color: white;
}
/* separacion entre el contenedor del titulo y en contenedor de los iconos */
.beneficios-section .beneficios-iconos-section {
  margin-top: clamp(20px, 8vw, 90px) !important;
}
.beneficios-texto p {
  font-size: clamp(28px, 3.17vw, 61px) !important;
  line-height: clamp(36px, 4.06vw, 78px) !important;
}
.beneficios-section .elementor-widget-image img {
  width: clamp(90px, 4.9vw, 100px) !important;
  height: clamp(90px, 4.9vw, 100px) !important;
  object-fit: contain !important;
}
@media (max-width: 768px) {
    .beneficios-section {
        border-radius: 20px !important; 
        margin-left: 10px !important;
        margin-right: 10px !important;
        width: calc(100% - 20px) !important;
        max-width: calc(100% - 20px) !important; 
        padding-left: 0 !important;
        padding-right: 0 !important;		
    }
	.beneficios-section br {
		display: none;
	  }
	.beneficios-texto .elementor-widget-text-editor p {
        font-size: 22px !important; 
        line-height: 1.2;
		text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5);
    }
    .beneficios-iconos-section {
        display: flex !important;
        flex-wrap: wrap !important;
        justify-content: center !important;
    }
    .beneficios-iconos-section .elementor-widget-text-editor p {
        font-size: 11px !important;
		line-height: 18px !important;
    }    
    .beneficios-iconos-section > * {	
        width: 33% !important;
        flex-shrink: 0 !important;
        gap: 0px !important;        /* espacio entre icono y texto */
        padding: 4px !important;    /* ajustá */		
    }	
    .beneficios-iconos-section img {
        width: 45px !important;     /* ajustá el tamaño del icono en mobile */
        height: 45px !important;
    }	
}
/* =========================
 *** SEXTA SECCION ***
========================= */
/*****ACORDEON SECTION IZQUIERDA TEXTO ***/
.acordeon-texto-section{
	padding-left: 150px !important;
	align-items: flex-start !important;
}
/* Título SVCHOME */
.acordeon-texto-section h2.elementor-heading-title {
  font-size: clamp(18px, 2.5vw, 55px) !important;
}
/* texto porque elegir */
.acordeon-texto-section .elementor-widget-text-editor p {
  font-size: clamp(30px, 2.5vw, 48px) !important;
}
/* Botón Conversemos */
.btn-conversemos .elementor-button {
  font-size: clamp(14px, 1.4vw, 32px) !important;
  padding: clamp(8px, 0.8vw, 20px) clamp(15px, 1.5vw, 40px) !important;
  white-space: nowrap !important;

}
/*****ACORDEON SECTION ***/
.acordeon-section{
	padding-left:20px;
	padding-right:20px;
}
.acordeon-section .e-n-accordion-item {
  background-color: #A8A59E !important;
  border-radius: 50px !important;
  margin-bottom: 16px !important;
}

.acordeon-section .e-n-accordion-item-title {
  color: #ffffff !important;
  padding: 20px 30px !important;
}

.acordeon-section .e-n-accordion-item-title-text {
  color: #ffffff !important;
}

.acordeon-section .e-n-accordion-item-title-icon {
  color: #ffffff !important;
}

.acordeon-section .e-n-accordion-item[open] {
  background-color: #F3EDED !important;
  border-radius: 20px !important;
}

.acordeon-section .e-n-accordion-item[open] .e-n-accordion-item-title {
  background-color: #A8A59E !important;
  border-radius: 50px !important;
}

.acordeon-section .e-n-accordion-item[open] .e-n-accordion-item-title-text {
  color: #ffffff !important;
}

.acordeon-section .e-n-accordion-item {
  border: none !important;
  outline: none !important;
}

.acordeon-section .e-n-accordion-item-title {
  border: none !important;
  outline: none !important;
}

.acordeon-section .e-n-accordion-item > [role="region"] {
  border: none !important;
  outline: none !important;
}

.acordeon-section .e-n-accordion-item-title {
  justify-content: space-between !important;
}
.acordeon-section .e-n-accordion-item-title-icon {
  color: #ffffff !important;
  border: 2px solid #ffffff !important;
  border-radius: 50% !important;
  padding: 5px !important;
  width: 30px !important;
  height: 30px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.acordeon-section .e-n-accordion-item-title-icon .fas {
  color: #ffffff !important;
}
/* Ítems del acordeón */
.acordeon-section .e-n-accordion-item {
  min-height: clamp(50px, 4.1vw, 79px) !important;
  max-width: 90% !important;
}

/* Letra dentro del acordeón */
.acordeon-section .e-n-accordion-item-title-text {
  font-size: clamp(12px, 1.25vw, 24px) !important;
}

@media (max-width: 768px) {
	.acordeon-texto-section{
		padding-left: 10px !important;
		margin-bottom: 30px;
		margin-top:30px;
	}
    /* Texto más grande */
    .acordeon-texto-section .elementor-widget-text-editor p {
        font-size: 42px !important;
    }
    .acordeon-texto-section h2.elementor-heading-title {
        font-size: 42px !important;
    }
    
    /* Botón más grande */
    .btn-conversemos .elementor-button {
        font-size: 24px !important;
        padding: 12px 30px !important;
		margin-top: 10px;
    }
	.acordeon-section{
		padding-left:5px;
		padding-right:5px;
	}

    /* Cards ancho completo y texto centrado */
    .acordeon-section .e-n-accordion-item {
        max-width: 100% !important;
		border-radius: 20px !important;
		min-height: 90px !important;
		justify-content: center !important;
    }
	.acordeon-section .e-n-accordion-item-title {
 		justify-content: center !important;
	}
    .acordeon-section .e-n-accordion-item-title-text {
        font-size: 20px !important;
        text-align: center !important;
    }
    .acordeon-section .e-n-accordion-item[open] .e-n-accordion-item-title {
        border-radius: 20px !important;
    }    
    /* Ocultar ícono de flecha */
    .acordeon-section .e-n-accordion-item-title-icon {
        display: none !important;
    }
}

/* =========================
 *** SEPTIMA SECCION ***
========================= */
/*==== FORMULARIO CONVERSEMOS SECCION ====*/
.conversemos-section {
  margin-left: 5% !important;
}
.conversemos-section .elementor-widget-text-editor p {
  font-size: clamp(40px, 6.67vw, 128px) !important;
  color: #ffffff !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  margin: 0 !important;
}

/*==== FORMULARIO DE CONTACTO ====*/
.wpcf7 {
  margin-top: 10%;
}

.wpcf7 .form-row p {
  display: flex;
  gap: 10px;
}

.wpcf7 .form-row br {
  display: none !important;
}

/* Todos los wraps por igual */
.wpcf7 .form-row .wpcf7-form-control-wrap {
  flex: 1 1 0% !important;
  min-width: 0 !important;
  display: block !important;
}

.wpcf7 .form-row input,
.wpcf7 .form-row select {
  width: 100% !important;
}

/* Campos de texto */
.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"],
.wpcf7 select,
.wpcf7 textarea {
  background-color: rgba(255, 255, 255, 0.15) !important;
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;	
  border: 1px solid rgba(255, 255, 255, 0.6) !important;
  border-radius: 50px !important;
  color: #ffffff !important;
  padding: 12px 20px !important;
  width: 100% !important;
  font-size: clamp(11px, 0.9vw, 16px) !important;
}

/* Placeholder blanco */
.wpcf7 input::placeholder,
.wpcf7 textarea::placeholder {
  color: rgba(255, 255, 255, 0.8) !important;
}

/* Select opciones */
.wpcf7 select option {
  color: #333333 !important;
  background-color: #ffffff !important;
}

/* Textarea */
.wpcf7 textarea {
  border-radius: 20px !important;
  resize: none !important;
}

/* Botón Enviar */
.wpcf7 input[type="submit"] {
  background-color: #F59108 !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 50px !important;
  padding: clamp(10px, 1vw, 16px) clamp(30px, 3vw, 60px) !important;
  font-size: clamp(14px, 1vw, 18px) !important;
  cursor: pointer !important;
  display: block !important;
  margin: 10px auto 0 auto !important;
}

.wpcf7 input[type="submit"]:hover {
  background-color: #d07820 !important;
}

/*==== HACK INPUT FILE ====*/

/* Input file nativo oculto */
.wpcf7 input[type="file"] {
  position: absolute !important;
  opacity: 0 !important;
  width: 100% !important;
  height: 100% !important;
  cursor: pointer !important;
  top: 0 !important;
  left: 0 !important;
}

/* Contenedor del adjunto — mismo flex que los demás pero con estilo propio */
.wpcf7 .wpcf7-form-control-wrap[data-name="adjunto"] {
  position: relative !important;
  overflow: hidden !important;
  background-color: rgba(255, 255, 255, 0.15) !important;
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;	
  border: 1px solid rgba(255, 255, 255, 0.6) !important;
  border-radius: 50px !important;
  padding: 12px 20px !important;
  box-sizing: border-box !important;
}

/* Placeholder sin archivo */
.wpcf7 .wpcf7-form-control-wrap[data-name="adjunto"]:not([data-filename])::before {
  content: "Agregar foto / planos" !important;
  color: rgba(255, 255, 255, 0.8) !important;
  font-size: clamp(11px, 0.9vw, 16px) !important;
  pointer-events: none !important;
  display: block !important;
  line-height: 1.2 !important;
}

/* Con archivo seleccionado */
.wpcf7 .wpcf7-form-control-wrap[data-name="adjunto"][data-filename]::before {
  content: attr(data-filename) !important;
  color: #ffffff !important;
  font-size: clamp(11px, 0.9vw, 16px) !important;
  pointer-events: none !important;
  display: block !important;
  line-height: 1.2 !important;
}
.wpcf7 .wpcf7-form-control-wrap[data-name="adjunto"]:not([data-filename])::before,
.wpcf7 .wpcf7-form-control-wrap[data-name="adjunto"][data-filename]::before {
  display: flex !important;
  align-items: center !important;
  height: 100% !important;
}
/* Clip a la derecha en el campo adjunto */
.wpcf7 .wpcf7-form-control-wrap[data-name="adjunto"]:not([data-filename])::after,
.wpcf7 .wpcf7-form-control-wrap[data-name="adjunto"][data-filename]::after {
  content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21.44 11.05l-9.19 9.19a6 6 0 0 1-8.49-8.49l9.19-9.19a4 4 0 0 1 5.66 5.66l-9.2 9.19a2 2 0 0 1-2.83-2.83l8.49-8.48'/%3E%3C/svg%3E") !important;
  position: absolute !important;
  right: 15px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  pointer-events: none !important;
  font-size: 14px !important;
}

/* Flecha blanca simple en el select */
.wpcf7 select {
  appearance: none !important;
  -webkit-appearance: none !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23ffffff' stroke-width='2' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 15px center !important;
  padding-right: 40px !important;
}
@media (max-width: 768px) {
  .conversemos-section {
    padding-left: 30px;
    padding-top: 30px;
  }
  .conversemos-section .elementor-widget-text-editor p {
    font-size: 90px !important;
  }
  .wpcf7 {
    margin-top: 3%;
  }
  .wpcf7 .form-row:first-of-type p {
    flex-direction: column !important;
  }
  .wpcf7 input[type="text"],
  .wpcf7 input[type="email"],
  .wpcf7 input[type="tel"],
  .wpcf7 input[type="file"],
  .wpcf7 select,
  .wpcf7 textarea,
  .wpcf7 .wpcf7-form-control-wrap[data-name="adjunto"] {
    font-size: 12px !important;
    padding: 10px 15px !important;
    border-radius: 10px !important;
  }
  .wpcf7 input[type="submit"] {
    font-size: 18px !important;
    padding: 12px 50px !important;
    border-radius: 15px !important;
  }
  .wpcf7 input::placeholder,
  .wpcf7 textarea::placeholder {
    font-size: 12px !important;
  }
}
/* =========================
 *** SECCIONES 8 Y 9 ***
========================= */
/*==== SECCION GOOGLE MAPS ====*/
.zona-section {
	margin: 30px;
}
.zona-card {
  border-radius: 20px !important;
  overflow: hidden !important;
}
.zona-section h2.elementor-heading-title {
  font-size: clamp(24px, 3.17vw, 61px) !important;
  color: #E88B2A !important;
}

.zona-section .elementor-widget-text-editor p {
  font-size: clamp(16px, 1.5vw, 36px) !important;
  font-weight: 300 !important;
  line-height: clamp(28px, 3.125vw, 60px) !important;
}
.fila-zona-norte .zona-section .elementor-widget-text-editor p {
    text-align: right !important;
}
.whatsapp-btn-container .elementor-widget-image img {
  width: clamp(40px, 4vw, 80px) !important;
  height: clamp(40px, 4vw, 80px) !important;
}
.zona-card .elementor-custom-embed iframe {
  height: clamp(200px, 22.4vw, 430px) !important;
  width: 100% !important;
}

@media (max-width: 768px) {
    .fila-zona-centro,
    .fila-zona-norte {
        flex-direction: column !important;
    }
    
    /* Texto arriba, mapa abajo */
    .zona-section {
        order: 1 !important;
		margin: 0px;
		text-align: left !important;
		padding: 30px 20px 20px 20px;
    }
    .zona-card {
        order: 2 !important;
    }
	
    .zona-section h2.elementor-heading-title {
        text-align: left !important;
    }
    
    .zona-section .elementor-widget-text-editor p {
        text-align: left !important;
    }	
	.fila-zona-centro,
	.fila-zona-norte{
		border-style: none !important;
	}

    .fila-zona-norte .zona-section .elementor-widget-text-editor p {
        text-align: left !important;
    }    
    /* Mapa ocupa todo el ancho */
    .zona-card,
    .zona-section {
        width: 100% !important;
    }
    
    /* Altura del mapa en mobile */
    .zona-card .elementor-custom-embed iframe {
        height: 250px !important;
    }
    .whatsapp-btn-container {
        display: none !important;
    }	
}
/* =========================
 === SECCION FOOTER ===
=========================*/
/*linea naranja de la parte derecha contenedor de la derecha*/
.footer-derecha {
  border-left: 1px solid #E88B2A;
  border-radius:  100px 0 0 0;
  border-top: 1px solid #E88B2A;
  /*margin-top: 20px;*/
}
/*esmerilado*/
.footer-container {
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
  min-height: clamp(180px, 17.97vw, 345px) !important;
  padding: 20px 0 0 20px;
}
.footer-derecha{
  margin-right: 20px !important;
}
/*iconos circulares*/
.footer-derecha .elementor-social-icon {
  background-color: transparent !important;
  border: 1px solid #E88B2A !important;
  border-radius: 50% !important;
  color: #333333 !important;
  width: clamp(25px, 2vw, 40px) !important;
  height: clamp(25px, 2vw, 40px) !important;
  font-size: clamp(12px, 1vw, 18px) !important;	
  padding: 15px !important;
}
/* iconos sociales a la izquierda*/
.footer-iconos {
	justify-content: left !important;
}
/*titulos arriba iconos*/
.footer-derecha .elementor-heading-title {
  color: #E88B2A !important;
  font-size: clamp(10px, 0.8vw, 15px) !important;
  letter-spacing: 1px !important;
}
/* tagline y footer menu*/
.footer-tagline .elementor-widget-text-editor p {
  font-size: clamp(12px, 1.25vw, 24px) !important;
  font-weight: 300 !important;
}

.footer-menu .elementor-widget-text-editor p,
.footer-menu .elementor-widget-text-editor a {
  font-size: clamp(10px, 0.9375vw, 18px) !important;
  font-weight: 300 !important;
}
/*texto abajo de los iconos*/
.footer-derecha .elementor-widget-text-editor p {
  font-size: clamp(10px, 0.9375vw, 18px) !important;
}
@media (max-width: 768px) {
	.footer-container{
		padding:10px !important;
	}
    /* Quitar el borde curvo */
    .footer-derecha {
        border-left: none !important;
        border-top: 1px solid #E88B2A !important;
        border-radius: 0 !important;
        margin: 10px 20px 0 20px !important;
        padding-top: 20px !important;
		padding-left: 0px;
    }
    
    /* Todo centrado */
    .footer-container {
        text-align: center !important;
    }
    
    /* Logo más chico */
    .footer-izquierda .elementor-widget-image img {
        width: 120px !important;
    }
    
    /* Tamaños de fuente */
    .footer-tagline .elementor-widget-text-editor p {
        font-size: 13px !important;
    }
    .footer-menu .elementor-widget-text-editor p,
    .footer-menu .elementor-widget-text-editor a {
        font-size: 13px !important;
    }
    .footer-derecha .elementor-widget-text-editor p {
        font-size: 13px !important;
    }
    .footer-derecha .elementor-heading-title {
        font-size: 12px !important;
    }
    .footer-izquierda .elementor-widget-image {
        text-align: center !important; /*centrar logo*/
		margin-bottom: 15px !important;
    }
    
    /* Centrar iconos sociales */
    .footer-iconos {
        justify-content: center !important;
    }
}

/*=======================
 *  PAGINA NOSOTROS 
 * =====================*/
.texto-nosotros{
	font-size: 16px !important
}
@media (min-width: 1920px) {
	.texto-nosotros{
		font-size: 24px !important;
		line-height: 2 !important;
	}
}
@media (max-width: 768px) {
  .elementor-element-f9be9b5 {
    flex-direction: column !important;
  }
  
  .elementor-element-f9be9b5 .elementor-widget-image {
    width: 100% !important;
    max-width: 100% !important;
  }
  
  .elementor-element-f9be9b5 .elementor-widget-image img {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
  }
}
