/*
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:-20px !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;

}
/*==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: 12% !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: scale(1.03) !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: 2000px) {
    .boton-cotizar a,
    .boton-cotizar .elementor-button {
        border-width: 2px !important;
    }
}



/*estilo del menu activo*/
.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;
}

/*============================
 * 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;
}
/* === 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: 350px;
        right: 40px;
    }
}
.svc-whatsapp-float:hover {
    transform: translateY(-3px);
    text-decoration: none;
}

/* Píldora de texto translúcida */
.svc-whatsapp-float__texto {
    background: rgba(255, 255, 255, 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 
========================= */
/*====== 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 (max-width: 768px) {
	.contenedor-padre-seccion2 {
		margin-top:-280px;
	}
	.titulo-soluciones{
		padding: 0;
		padding-top: 12%;
	}
	
    .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;
		
	}
}
@media (min-width: 1441px) {
    .titulo-soluciones {
        padding-top: 30% !important;
    }
}
/*=====================
 * SECCION ICONOS HOME
 * ===================*/
.features-section .elementor-widget-text-editor p {
  font-size: clamp(12px, 1.197vw, 23px) !important;
}

/*====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;
}


/*=== 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;
}

/*****ACORDEON SECTION ***/
.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;
}
/*---sigue acordeon section --*/
/* 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 */
[data-id="2eed99c"] .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;

}
/*==== FORMULARIO CONVERSEMOS SECCION ====*/
.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 .form-row p {
  display: flex;
  gap: 10px;
  margin-bottom: 0;
}

.wpcf7 .form-row .wpcf7-form-control-wrap {
  flex: 1;
}

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

.wpcf7 .form-row br {
  display: none !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;
  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 — el texto también blanco */
.wpcf7 select option {
  color: #333333 !important;
  background-color: #ffffff !important;
}

/* Textarea sin border-radius tan exagerado */
.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 del boton seleccionar ***/
/* Ocultar el input file nativo */
.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 campo file */
.wpcf7 .wpcf7-form-control-wrap[data-name="adjunto"] {
  display: block !important;
  background-color: rgba(255, 255, 255, 0.15) !important;
  border: 1px solid rgba(255, 255, 255, 0.6) !important;
  border-radius: 50px !important;
  padding: 12px 20px !important;
}
/* Cuando hay archivo seleccionado: muestra el nombre */
.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;
}
/* Sin archivo: muestra el placeholder */
.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;
}

/*==== SECCION GOOGLE MAPS ====*/
.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;
}

.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;
}

/*=== 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;
}
/*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;
}
/*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;
}