/* 
 * ====================================================================
 * Smartmil Viewport Lock — Responsive Desktop CSS
 * Selectores reales extraídos del HTML de nueva.cnevado.cl (mayo 2026)
 * CSS puro, sin JS, sin transform, sin zoom global.
 * Solo actúa desde 1025px hacia arriba.
 * ==================================================================== 
 */

/* Seguridad global: evita scroll horizontal */
html, body {
  overflow-x: hidden !important;
  max-width: 100vw;
}

/* ====================================================================
 * A) Laptops pequeñas: 1025px – 1366px
 * Aquí el menú se corta, el logo del hero es demasiado grande.
 * Replicamos el efecto de "bajar el zoom" solo en los elementos que lo necesitan.
 * ==================================================================== */
@media (min-width: 1025px) and (max-width: 1366px) {

  /* --- Barra superior (correo + Trabaja con Nosotros) --- */
  .elementor-location-header .elementor-element-c6f9611 {
    font-size: 13px !important;
  }
  .elementor-location-header .elementor-element-c6f9611 a,
  .elementor-location-header .elementor-element-c6f9611 span {
    font-size: 13px !important;
    letter-spacing: 0 !important;
  }

  /* --- Logo del header --- */
  .elementor-location-header .elementor-element-01e4c46 img {
    max-width: 120px !important;
    width: 120px !important;
    height: auto !important;
  }

  /* --- Menú principal (ElementsKit) --- */
  .elementor-location-header .elementor-element-98b2697 {
    /* Asegura que el widget del nav no genere overflow */
    overflow: visible !important;
  }
  .elementor-location-header .elementor-element-98b2697 .ekit-menu-nav-link {
    font-size: 12px !important;
    letter-spacing: 0.5px !important;
    padding-left: 7px !important;
    padding-right: 7px !important;
    white-space: nowrap !important;
  }
  .elementor-location-header .elementor-element-98b2697 .elementskit-navbar-nav {
    gap: 0 !important;
  }

  /* --- Botón Contacto --- */
  .elementor-location-header .elementor-element-e11500c .elementor-button {
    font-size: 13px !important;
    padding: 10px 16px !important;
    letter-spacing: 0.5px !important;
  }

  /* --- Hero principal: columna izquierda --- */
  .elementor-element-17a518e > .elementor-element-bd4b88b {
    /* Evita que la columna izquierda ocupe más del 50% */
    max-width: 50% !important;
    flex: 0 0 50% !important;
  }

  /* --- Logo grande del hero --- */
  .elementor-element-7cac87c img {
    max-width: clamp(280px, 28vw, 420px) !important;
    height: auto !important;
    width: 100% !important;
  }
}

/* ====================================================================
 * B) MacBook Air / Laptops medianas: 1367px – 1440px
 * Ajuste moderado del menú. El hero puede quedar casi como el Pro.
 * ==================================================================== */
@media (min-width: 1367px) and (max-width: 1440px) {

  /* Logo del header: leve reducción */
  .elementor-location-header .elementor-element-01e4c46 img {
    max-width: 140px !important;
    height: auto !important;
  }

  /* Menú: font ligeramente menor, sin letter-spacing exagerado */
  .elementor-location-header .elementor-element-98b2697 .ekit-menu-nav-link {
    font-size: 13px !important;
    letter-spacing: 1px !important;
    padding-left: 10px !important;
    padding-right: 10px !important;
    white-space: nowrap !important;
  }

  /* Logo hero: acotado para que no se coma todo el espacio */
  .elementor-element-7cac87c img {
    max-width: clamp(320px, 30vw, 480px) !important;
    height: auto !important;
  }
}

/* ====================================================================
 * C) MacBook Pro / Desktop base: 1441px – 1728px
 * El diseño original ya funciona bien aquí. Cambios preventivos mínimos.
 * ==================================================================== */
@media (min-width: 1441px) and (max-width: 1728px) {
  /* No se interviene el header ni el hero: el diseño original manda aquí */

  /* Solo protegemos el hero para que no crezca más allá de lo diseñado */
  .elementor-element-17a518e {
    max-width: 100% !important;
  }
}

/* ====================================================================
 * D) Full HD: 1729px – 1920px
 * Evitamos que el hero y el contenido se estiren horizontalmente.
 * Los fondos full-width se mantienen (aplicamos solo a contenedores internos).
 * ==================================================================== */
@media (min-width: 1729px) and (max-width: 1920px) {

  /* Hero interno: el contenedor flex se limita pero el fondo azul sigue full width */
  .elementor-element-17a518e.e-con {
    max-width: 1600px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  /* Logo del hero no crece infinitamente */
  .elementor-element-7cac87c img {
    max-width: clamp(420px, 30vw, 600px) !important;
    height: auto !important;
  }

  /* Contenido de página interna: centraliza sin romper secciones full width */
  .sm-content-boxed .e-con-inner,
  .sm-content-boxed > .elementor-container {
    max-width: 1512px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

/* ====================================================================
 * E) Pantallas grandes / TV: 1921px en adelante
 * Frenamos el crecimiento al infinito. Fondos siguen full width.
 * ==================================================================== */
@media (min-width: 1921px) {

  /* Hero: el contenedor se limita, el fondo azul completo se mantiene */
  .elementor-element-17a518e.e-con {
    max-width: 1728px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  /* Logo hero: tamaño fluido con tope */
  .elementor-element-7cac87c img {
    max-width: clamp(440px, 28vw, 650px) !important;
    height: auto !important;
  }

  /* Contenido interno boxed en páginas interiores */
  .sm-content-boxed .e-con-inner,
  .sm-content-boxed > .elementor-container {
    max-width: 1600px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  /* Cabeceras: tipografía fluida con tope superior */
  h1.elementor-heading-title {
    font-size: clamp(36px, 3vw, 64px) !important;
  }
  h2.elementor-heading-title {
    font-size: clamp(28px, 2.4vw, 52px) !important;
  }
}

/* ====================================================================
 * Clases de utilidad (usa en Elementor > Advanced > CSS Classes)
 * ==================================================================== */

/* Aplica a cualquier sección que necesites centrar / acotar en HD+ */
.sm-content-boxed {
  width: 100% !important;
}

/* Padding lateral fluido para columnas internas */
.sm-fluid-padding {
  padding-inline: clamp(20px, 3vw, 60px) !important;
}

/* Imagen que necesita object-fit cover en su contenedor */
.sm-image-cover img {
  object-fit: cover !important;
  width: 100% !important;
  height: 100% !important;
  display: block !important;
}
