/* Nuevo Pudahuel App Page Styles - Based on Original Drupal Theme */

.npudahuel-app .contenedor {
  margin: 20px auto 0;
  width: 90%;
  max-width: 1200px;
}

.npudahuel-app .clearfix::after {
  content: "";
  display: table;
  clear: both;
}

/* Fila 1: Hero Section */
.npudahuel-app .fila {
  position: relative;
}

.npudahuel-app .fila.uno .desk {
  display: block;
  width: 100%;
}

.npudahuel-app .fila.uno .mobile {
  width: 100%;
  display: none;
}

.npudahuel-app .fila.uno .texto {
  position: absolute;
  top: 5%;
  left: 48%;
  width: 41%;
}

.npudahuel-app .fila.uno .texto h1 {
  font-family: 'RobotoRegular', 'KhandRegular', Arial, sans-serif;
  color: #434343;
  font-size: 22px;
  text-align: center;
  line-height: 33px;
}

.npudahuel-app .fila.uno .descarga-app {
  position: absolute;
  top: 30%;
  left: 55%;
  width: 24%;
}

.npudahuel-app .fila.uno .descarga-app tbody,
.npudahuel-app .fila.uno .descarga-app th {
  border: 0;
}

.npudahuel-app .fila.uno .descarga-app td img {
  width: 97%;
  margin: 0;
  max-height: 100%;
}

.npudahuel-app .fila.uno .descarga-app h2 {
  font-family: 'RobotoBold', 'KhandRegular', Arial, sans-serif;
  font-size: 22px;
  text-align: center;
  line-height: 33px;
  color: #434343;
  margin: 0 0 10px 0;
}

/* Fila 2: Características con Carrusel */
.npudahuel-app .fila.dos img {
  width: 100%;
}

.npudahuel-app .fila.dos .mobile {
  display: none;
}

.npudahuel-app .fila.dos .slide {
  width: 23% !important;
  position: relative;
  left: 10%;
  margin: 83px 0px 52px 0px;
}

.npudahuel-app .env_carousel {
  width: 80%;
  left: 10%;
  height: 82%;
  position: absolute;
  top: -2%;
}

/* Slick Carousel Controls */
.npudahuel-app button.slick-arrow {
  background-position: 0 0;
  background-repeat: no-repeat;
  bottom: 0px;
  display: block;
  height: 84px;
  overflow: hidden;
  position: absolute;
  text-indent: -9999px;
  width: 52px;
  top: 48%;
  border: none;
  padding: 0;
  cursor: pointer;
  background-color: transparent;
}

.npudahuel-app button.slick-prev {
  left: -5%;
  background-image: url(/images/npudahuel-app/prev.png);
}

.npudahuel-app button.slick-next {
  background-image: url(/images/npudahuel-app/next.png);
  right: -5%;
}

.npudahuel-app button.slick-prev:before,
.npudahuel-app button.slick-next:before {
  content: '';
}

/* Logo and Text positioned to the right of phone */
.npudahuel-app .logo {
  display: block;
  position: absolute;
  top: 20%;
  left: 115%;
  width: 154% !important;
}

.npudahuel-app div.texto {
  display: block;
  position: absolute;
  top: 42%;
  left: 121%;
  width: 238%;
}

.npudahuel-app .txt {
  font-family: 'RobotoLight', Arial, sans-serif;
  font-size: 22px;
  text-align: left;
  line-height: 33px;
  color: #434343;
}

/* Screenshot Carousel - INSIDE the phone with negative margin */
.npudahuel-app .carro {
  position: relative;
  left: 3%;
  margin-left: 2.86%;
  margin-top: -178%;
  max-height: 350px;
  max-width: 88%;
  top: 11%;
}

.npudahuel-app .carro img.mini {
  width: 100%;
  height: auto;
  display: block;
}

/* Hide extra slick elements */
.npudahuel-app .slide .slick-list {
  overflow: visible;
}

/* Responsive Styles */
@media (max-width: 1100px) {
  .npudahuel-app .contenedor {
    width: 100%;
  }

  .npudahuel-app .fila.dos img {
    width: 100%;
  }
}

@media (max-width: 1050px) {
  .npudahuel-app .fila.uno .texto h1 {
    font-size: 20px;
    line-height: 25px;
  }

  .npudahuel-app .fila.uno .descarga-app h2 {
    font-size: 19px;
  }
}

@media (max-width: 900px) {
  .npudahuel-app .fila.uno .texto h1 {
    font-size: 17px;
  }

  .npudahuel-app .fila.uno .descarga-app h2 {
    font-size: 17px;
  }
}

@media (max-width: 768px) {
  .npudahuel-app .fila.uno .texto h1 {
    font-size: 15px;
  }

  .npudahuel-app .fila.uno .descarga-app h2 {
    font-size: 15px;
  }

  .npudahuel-app .txt {
    font-size: 17px;
    line-height: 33px;
  }

  .npudahuel-app .fila.dos .slide {
    margin: 48px 0px 52px 0px;
  }
}

@media (max-width: 600px) {
  .npudahuel-app .fila.uno .texto h1 {
    font-size: 12px;
  }

  .npudahuel-app .fila.uno .descarga-app h2 {
    font-size: 12px;
  }

  .npudahuel-app .fila.uno .texto {
    left: 40%;
    width: 60%;
  }
}

@media (max-width: 480px) {
  .npudahuel-app .fila.uno .desk {
    display: none;
  }

  .npudahuel-app .fila.uno .mobile {
    display: block;
  }

  .npudahuel-app .fila.uno .texto h1 {
    font-size: 28px;
    line-height: 38px;
  }

  .npudahuel-app .fila.uno .texto {
    left: 13%;
    width: 78%;
  }

  .npudahuel-app .fila.uno .descarga-app {
    left: 8%;
    width: 88%;
  }

  .npudahuel-app .fila.uno .descarga-app h2 {
    font-size: 22px;
    line-height: 31px;
  }

  .npudahuel-app .fila.dos .desk {
    display: none;
  }

  .npudahuel-app .fila.dos .mobile {
    display: block;
  }

  .npudahuel-app .env_carousel {
    left: 12%;
  }

  .npudahuel-app .fila.dos .slide {
    width: 58% !important;
    position: relative;
    left: 22%;
    margin: 270px 0px 37% 0px;
  }

  .npudahuel-app div.texto {
    display: block;
    position: absolute;
    top: -30%;
    left: -20%;
    width: 147%;
  }

  .npudahuel-app .logo {
    display: block;
    position: absolute;
    top: -53%;
    left: 0;
    width: 117% !important;
  }

  .npudahuel-app .txt {
    font-size: 19px;
    line-height: 24px;
  }

  .npudahuel-app button.slick-next {
    right: -12%;
    background-size: 39px;
  }

  .npudahuel-app button.slick-prev {
    left: -12%;
    background-size: 39px;
  }
}

@media (max-width: 400px) {
  .npudahuel-app .fila.uno .texto {
    left: 13%;
  }

  .npudahuel-app .fila.uno .texto h1 {
    font-size: 21px;
    line-height: 27px;
  }

  .npudahuel-app .fila.uno .descarga-app h2 {
    font-size: 15px;
    line-height: 16px;
  }

  .npudahuel-app div.texto {
    display: block;
    position: absolute;
    top: -50%;
    left: -20%;
    width: 147%;
  }

  .npudahuel-app .logo {
    top: -75%;
    left: -33px;
    width: 144% !important;
  }
}

/* Accessibility */
.npudahuel-app a {
  outline-offset: 2px;
}

.npudahuel-app a:focus {
  outline: 2px solid #00458a;
}

/* Table Styles */
.npudahuel-app table {
  width: 100%;
  border-collapse: collapse;
}

.npudahuel-app td {
  padding: 5px;
  text-align: center;
}

/* Print Styles */
@media print {
  .npudahuel-app .carousel,
  .npudahuel-app .slick-prev,
  .npudahuel-app .slick-next {
    display: none;
  }
}
