/* En estilos.css */
@font-face {
    font-family: 'HelveticaNeueLTStd';
    src: url('../fonts/HelveticaNeueLTStd.woff2') format('woff2'),
         url('../fonts/HelveticaNeueLTStd.woff') format('woff');
    font-weight: 400;
    font-style: normal;
  }
  
  @font-face {
    font-family: 'HelveticaNeueLTStd';
    src: url('../fonts/HelveticaNeueLTStd-Th.woff2') format('woff2'),
         url('../fonts/HelveticaNeueLTStd-Th.woff') format('woff');
    font-weight: 200; 
    font-style: normal;
  }

  @font-face {
    font-family: 'HelveticaNeueLTStd';
    src: url('../fonts/HelveticaNeueLTStd-Lt.woff2') format('woff2'),
         url('../fonts/HelveticaNeueLTStd-Lt.woff') format('woff');
    font-weight: 300; /* Light suele ser 300 */
    font-style: normal;
  }
  
  @font-face {
    font-family: 'HelveticaNeueLTStd';
    src: url('../fonts/HelveticaNeueLTStd-Bd.woff2') format('woff2'),
         url('../fonts/HelveticaNeueLTStd-Bd.woff') format('woff');
    font-weight: 700;
    font-style: normal;
  }
  
body {
    font-family: 'HelveticaNeueLTStd', Helvetica, Arial, sans-serif;
  }
  
a {
  text-decoration: none;
  color:#000000;
}
.encabezado {
    height: 70px;
    background-color: #ffff3c !important;
    padding: 0px 40px 0px 40px;
  }

  .banner {
    position: relative;
    height: 100vh; /* ocupa toda la altura visible */
    overflow: hidden;
    padding: 0px 40px 0px 40px;
  }
  
  .bg-video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 0;
  }
  
  /* Contenedor superior dentro del banner */
  .banner-top {
    position: relative;
    z-index: 1;
    height: 100px;
    /**background-color: rgba(255, 255, 255, 0.8); /* opcional */
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    
    
  }
  
  /* Estilo de los enlaces del menú */
  .banner-top .menu a {
    font-size: 16px;
    font-weight: bold;
    color: #ffffff !important;
    text-decoration: none;
    transition: color 0.3s;
    padding-right: 10px;
  }
  
  .banner-top .menu a:hover{
    color: #fffff !important;
  }

  .menu-toggle {
    display: none;
  }

.img-baseline {
  vertical-align: baseline;
}

.align-text-bottom {
  vertical-align: text-bottom;
}

.elevar-contenido {
  position: relative;
  top: -11px; /* ajustá este valor según cómo lo veas */
}




.img-baseline {
  vertical-align: baseline;
}


/* RESPONSIVE HEADER Y BANNER */

@media (max-width: 768px) {




  .banner {
    position: relative;
    height: 60vh; /* ocupa toda la altura visible */
    overflow: hidden;
    padding: 0px;
  }

  /*
.encabezado::before {
  content: "";
  display: block;
  height: 70px;
  background-color: #ffff3c;
  background-image: url('../img/express8.png');
  background-repeat: no-repeat;
  background-size: auto 50px;
  background-position: center;
}
  */


  @media (max-width: 768px) {
    .menu-toggle {
      display: block;
      background: none;
      border: none;
      color: white;
      font-size: 28px;
      cursor: pointer;
    }
  }
  
  /* BANNER: centrar logo y ocultar menú en mobile */
  .banner-top {
    justify-content: space-between;
    align-items: center;
    height: 80px;
    padding: 0 20px;
  }

  .banner-top img {
    height: 50px;
  }

  .menu {
    display: none !important; /* Forzamos oculto en móvil */
  }

  .menu-toggle {
    display: block;
    background: none;
    border: none;
    color: white;
    font-size: 28px;
    cursor: pointer;
  }
}



.menu-toggle::before {
  content: '☰'; /* Hamburguesa por defecto */
  font-size: 28px;
  display: inline-block;
  transition: transform 0.3s ease;
}


.menu-toggle.open::before {
  content: '✕'; /* Cruz cuando está abierto */
}

/* Estilo del menú hamburguesa dropdown en mobile */
.dropdown-menu-custom {
  display: none;
  position: absolute;
  right: 0;
  top: 40px;
  background-color: rgba(0, 0, 0, 0.85);
  padding: 10px 20px;
  border-radius: 8px;
  z-index: 10;
  flex-direction: column;
  min-width: 220px; /* ⬅️ NUEVO: ancho mínimo para evitar cortes de línea */
}


.dropdown-menu-custom a {
  display: block;
  padding: 8px 0;
  color: #fff;
  text-decoration: none;
  font-weight: bold;
}

.dropdown-menu-custom a:hover {
  text-decoration: underline;
}


  /* Corrección del selector para que las imágenes cambien *//*
  .bg-slider .slide:nth-child(1) { animation-delay: 0s; }
  .bg-slider .slide:nth-child(2) { animation-delay: 6s; }
  .bg-slider .slide:nth-child(3) { animation-delay: 12s; }
  .bg-slider .slide:nth-child(4) { animation-delay: 18s; }
  .bg-slider .slide:nth-child(5) { animation-delay: 24s; }
  .bg-slider .slide:nth-child(6) { animation-delay: 30s; }
  .bg-slider .slide:nth-child(7) { animation-delay: 36s; }
  */

  .bg-slider .slide:nth-child(1) { animation-delay: 0s; }
  .bg-slider .slide:nth-child(2) { animation-delay: 3s; }
  .bg-slider .slide:nth-child(3) { animation-delay: 6s; }
  .bg-slider .slide:nth-child(4) { animation-delay: 9s; }
  .bg-slider .slide:nth-child(5) { animation-delay: 12s; }
  .bg-slider .slide:nth-child(6) { animation-delay: 15s; }
  .bg-slider .slide:nth-child(7) { animation-delay: 18s; }

/* Posicionamiento correcto del bloque superior en mobile */
@media (max-width: 768px) {

  .banner-top {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 80px;
    padding: 0 20px;
    z-index: 2;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }

  .bg-slider {
    position: relative;
    z-index: 0;
    height: 70vh;
    overflow: hidden;
    width: 100%;
    margin: 0;
    padding: 0;
    
  }

  .bg-slider .slide {
    position: absolute;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    opacity:0;
    animation: fadeSlider 20s infinite;
    animation-fill-mode: both;
  }

  @keyframes fadeSlider {
    0%     { opacity: 0; }
    5%     { opacity: 1; }
    15%    { opacity: 1; }
    20%    { opacity: 0; }
    100%   { opacity: 0; }
  }
  
  
  .slider-text {
    position: inherit;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1;
    text-align: center;
    color: #fff;
    padding: 0 10px;
  }

  .slider-text h2 {
    font-size: 2.4rem;
    font-weight: bold;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.6);
  }
}

/* Sección Qué Hacemos */
.titulo-principal {
  font-size: 85px;
  font-weight: 200;
  line-height: 0.9;
}

.bajada-principal {
  font-size: 45px;
  font-weight: 200;
  margin-top: 10px;
  line-height: 1.2;
}

.titulo-servicio {
  font-size: 43px;
  font-weight: 200;
  padding-bottom: 10px;
}

.texto-servicio {
  font-size: 26px;
  font-weight: 300;
  line-height: 1.2;
  padding-bottom: 10px;
}

.linea-servicio {
  font-size: 22px;
  font-weight: 300;
  margin-bottom: 5px;
  color:#ff0000;
  text-decoration: none;
  line-height: 1;
}

.linea-servicio a {
  text-decoration: underline;
  color: inherit;
  color:#ff0000;
  text-decoration: none;
}

.linea-servicio a:hover {
  color: #ffc107; /* o el color de acento que prefieras */
}

.img-fluid{
  max-width: 50%;
}


@media (max-width: 768px) {

  .titulo-principal {
    font-size: 42px;
    margin-top: 0;
   line-height:1;
  }

  .bajada-principal {
    font-size: 24px;
  }

  .titulo-servicio {
    font-size: 30px;
  }

  .texto-servicio {
    font-size: 20px;
  }

  .linea-servicio {
    font-size: 18px;
  }

  /* Espaciado más compacto en columnas */
  #quehacemos .col-md-6 {
   
  }

  #quehacemos{
    padding-left: 10px;
    padding-right: 10px;
  }

  

  #quehacemos .row {
    --bs-gutter-y: 1rem; /* reduce vertical gap */
  }

    #quehacemos .row.mb-5 {
    margin-bottom: 1.5rem !important; /* en lugar de ~3rem */
  }

  #quehacemos .col-md-6.mb-4 {
    margin-bottom: 1.5rem !important;
  }

  #quehacemos .row:last-child {
    margin-bottom: 0 !important;
  }
}

.texto-bajada {
  font-size: 26px;
  font-weight: 300;
  line-height: 1.2;
  padding-bottom: 10px;
  padding-top: 20px;
}

.texto-bajada-secundaria {
  font-size: 26px;
  font-weight: 300;
  line-height: 1.2;
  margin: 20px 0;
}

.texto-material {
  font-size: 22px;
  font-weight: 300;
  line-height: 1.4;
}

/* Opcional: mejorar el espaciado entre imagen y texto */
@media (min-width: 768px) {
  .texto-material {
    padding-left: 20px;
  }
}

#materiales{
  background-color: #f2f2f2;
}

@media (max-width: 768px) {

  .texto-bajada,
  .texto-bajada-secundaria {
    font-size: 20px;
    line-height: 1.3;
    text-align: center;
    padding: 0 10px;
  }

  .texto-material {
    font-size: 18px;
    text-align: center;
    margin-top: 15px;
  }

  /* Las imágenes se centran en mobile y no flotan */
  .img-fluid {
    display: block;
    margin: 0 auto;
    float: none !important;
    max-width: 70%;
  }

  /* Espaciado extra entre filas en mobile */
  #materiales .row {
    margin-bottom: 2.5rem !important;
  }
}


.dato-contacto a {
  font-size: 60px;
  font-weight: 200;
  color: red;
  line-height: 1;
}

.dato-contacto  {
  font-size: 60px;
  font-weight: 200;
  color: red;
  line-height: 1;
}

.texto-contacto {
  font-size: 26px;
  font-weight: 300;
  margin: 0;
}

.push-icon {
  margin-right: 90px;
}

.push-icon-left {
  margin-left: 70px;
}

.icono-3{
  height: 200px;
}

/* Responsive */
@media (max-width: 768px) {
  .icono-3{
    height: 100px;
  }
  .push-icon,
  .push-icon-left {
    margin: 0 auto;
    text-align: center;
  }

  .dato-contacto {
    font-size: 36px;
    text-align: center;
    display: block;
    margin-top: 10px;
  }

  .texto-contacto {
    text-align: center !important;
  }

  .d-flex {
    flex-direction: column !important;
    align-items: center !important;
  }
}

.seccion-cierre {
/*  height: 460px;*/
  background-image: url('../img/fabricablur.webp'); /* Cambiá la ruta según tu imagen */
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  padding: 40px 0;
}

#mapa iframe {
  width: 100%;
  height: 450px;
  border: none;
}

.footer-contacto{
  background-color: #999;
  margin: 0px;
}

/* Asegura contraste */
.seccion-cierre h2,
.seccion-cierre .texto-bajada {
  color: #ffffff;
}

.footer-text{
  font-size: 20px;
  line-height: 1.2;
}

/* Responsive: reduce altura si querés en mobile */
@media (max-width: 768px) {
@media (max-width: 768px) {

  /* Header con menos margen lateral */
  .encabezado {
    background-color: #ffff3c;
    padding: 10px 10px; /* ⬅️ margen lateral reducido */
  }

  .encabezado .container-fluid {
    padding: 0 !important; /* evita paddings internos si hay */
  }

  .encabezado .row {
    margin: 0;
    flex-wrap: nowrap;
    justify-content: center;
    text-align: center;
  }

  .encabezado .col.d-flex {
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 0;
  }

  .encabezado .col.d-flex img {
    height: 40px;
    margin-bottom: 5px;
  }

  .encabezado .col.d-flex a {
    font-size: 14px;
    text-align: center;
    white-space: normal;
    line-height: 1.2;
    padding: 0;
    margin: 0;
  }

  /* Ocultar WhatsApp en mobile */
  .encabezado .col-auto {
    display: none !important;
  }
}





}

/* WHATSAPP FIJO */

.waNab {
    position: fixed;
    right: 5px;
    bottom: 10px;
    width: 60px;
    height: 60px;
    z-index: 99999;
    background-color: #0aaa46;
    padding: 8px;
    display: flex;
    justify-content: center;
    color: #fff !important;
    border-radius: 100px;
    margin: 20px;
}

#btnWa a {
    color: #fff !important;
    font-weight: 500;
    font-size: 17px;
}

#btnWa img {
    width: 50px;
    height: auto;
    align-items: center;
    padding-top: 0px;
    padding-left: 4px;
}

.text-dark{
  margin-top: 20px;

}

@media (max-width: 768px) {
  .encabezado .col.d-flex {
    justify-content: space-between !important;
  }

  .encabezado .col.d-flex img {
    margin-right: auto;
  }

  .encabezado .col.d-flex a {
        font-size: 14px;
        text-align: center;
        white-space: normal;
        padding: 0
  }

  /* Ocultar columna derecha (WhatsApp) en mobile */
  .encabezado .col-auto {
    display: none !important;
  }

  .encabezado{
    height: 100px;
    padding: 0;

    
  }

  .waNab {
    position: fixed;
    right: 5px;
    bottom: 10px;
    width: 70px;
    height: 70px;
    z-index: 99999;
    background-color: #0aaa46;
    padding: 8px;
    display: flex;
    justify-content: center;
    color: #fff !important;
    border-radius: 100px;
    margin: 10px;
}

#btnWa a {
    color: #fff !important;
    font-weight: 500;
    font-size: 17px;
}

#btnWa img {
    width: 50px;
    height: auto;
    align-items: center;
    padding-top: 5px;
    padding-left: 5px;
}
}
