/* Ajusta el alto del swiper para Chrome */
.swiper {
  width: 100%;
  height: calc(100vh - 1px); /* evita sobre-expansión en Chrome */
  position: relative;
  overflow: hidden;
}

/* Cada slide ocupa el alto completo */
.swiper-slide {
  position: relative;
  background-size: cover;
  background-position: center;
  transform: none !important; /* elimina escalado de Chrome */
  zoom: 1 !important;         /* evita zoom aplicado por el navegador */
}

/* Eliminar overlay gris u oscuro de los slides */
.swiper-slide::after,
.swiper-slide::before {
  content: none !important;
  background: none !important;
  filter: none !important;
}

/* Contenedor del logo y textos */
.swiper-slide .logo-container {
  position: absolute;
  top: 40px;
  right: 50px;
  text-align: right;
  color: #fff;
  z-index: 2; /* encima del slide */
}

/* Ajusta el logo */
.swiper-slide .logo-container img {
  max-width: 180px;
  height: auto;
  margin-bottom: 10px;
}

/* Ajusta textos */
.swiper-slide .logo-container h4 {
  margin: 5px 0;
  font-size: 16px;
  color: #fff;
}

/* Flechas de navegación */
.swiper-button-next,
.swiper-button-prev {
  color: #fff;
  width: 50px;
  height: 50px;
}

/* Paginación */
.swiper-pagination-bullet {
  background: #fff;
  opacity: 0.7;
}
.swiper-pagination-bullet-active {
  background: #ffcc00;
  opacity: 1;
}

/* Texto centrado en cada slide */
.center-text {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  color: white;
  z-index: 2;
  width: 90%;
  max-width: 800px;
}

/* Responsive */
@media (max-width: 768px) {
  .main-title { font-size: 2.5rem; letter-spacing: 1px; }
  .subtitle { font-size: 1.1rem; }
  .cta-button { padding: 12px 30px; font-size: 1rem; }
  .logo-container {
    position: relative;
    top: auto;
    right: auto;
    text-align: center;
    margin: 10px auto;
  }
  .logo-container img { max-width: 140px; margin-bottom: 5px; }
  .logo-container h4 { font-size: 14px; }
}

@media (max-width: 480px) {
  .main-title { font-size: 2rem; }
  .subtitle { font-size: 1rem; }
  .center-text { width: 95%; }
}

/* Video centrado */
.video-container {
  position: relative;
  width: 100%;
  height: 50vh;
  text-align: center;
}

.full-video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 12px;
}

/* Botón fullscreen */
#fullscreen-btn {
  position: absolute;
  bottom: 10px;
  right: 10px;
  width: 50px;
  height: 50px;
  border: none;
  background: rgba(0,0,0,0.5);
  color: #fff;
  font-size: 22px;
  cursor: pointer;
  z-index: 3;
}

/* Overlay sobre video eliminado */
.video-container::before {
  content: none !important;
  background: none !important;
  filter: none !important;
}
/* Logo y textos - desktop */
.logo-container-2 {
  position: absolute;
  top: 10px;
  right: 50px;
  text-align: right;
  color: #fff;
  z-index: 2;
}

.logo-container-2 img {
  max-width: 180px;
  height: auto;
  margin-bottom: 10px;
}

.logo-container-2 h4 {
  margin: 5px 0;
  font-size: 16px;
  color: #fff;
}

/* --- Estilos para móviles --- */
@media (max-width: 768px) {
  .logo-container-2 {
    position: relative;   /* para que no se "pierda" */
    top: 0;
    right: 0;
    text-align: center;
    padding: 10px;
    background: rgba(0,0,0,0.6); /* fondo semitransparente para que se vea sobre blanco */
    border-radius: 8px;
    margin: 10px auto;
    width: fit-content;
  }

  .logo-container-2 img {
    max-width: 120px;  /* más pequeño en móvil */
  }

  .logo-container-2 h4 {
    font-size: 14px;   /* texto más chico */
  }
}


/* Ajustes para móvil */
@media (max-width: 768px) {
  .logo-container {
    position: relative;
    top: auto;
    right: auto;
    text-align: center;
    margin: 10px auto;
    display: block;
  }

  .logo-container-2 img { max-width: 140px; margin-bottom: 5px; }
  .logo-container-2 h4 { font-size: 14px; }
}
            /* Estilos generales (desktop) */
            .swiper .ultimos-proyectos {
            position: absolute;
            bottom: 40px;
            right: 50px;
            width: 220px;
            height: 50px;
            background: rgba(58, 58, 58, 0.8);
            color: #fff;
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 10px 15px;
            border-radius: 8px;
            font-size: 14px;
            z-index: 2;
            transition: all 0.3s ease;
            }

            .swiper .ultimos-proyectos a h4 {
            color: #fff;
            text-decoration: none;
            font-weight: bold;
            }

            /* Hover elegante solo desktop */
            .swiper .ultimos-proyectos:hover {
            background: rgba(58, 58, 58, 1);
            letter-spacing: 1px;
            cursor: pointer;
            transform: scale(1.05);
            }

            /* Ajustes solo para móvil */

            /* Ajustes solo para móvil */
            @media (max-width: 768px) {
            .swiper .ultimos-proyectos {
                position: absolute;       /* flota sobre el slider */
                bottom: 0;                /* pegado al borde inferior */
                left: 0;                  /* inicio de la pantalla */
                width: 100%;              /* ocupar todo el ancho */
                height: 50px;             /* altura tipo banda */
                padding: 0;               /* sin padding extra */
                background: rgba(58, 58, 58, 0.85); /* fondo semitransparente */
                display: flex;
                align-items: center;
                justify-content: center;
                font-size: 16px;          /* tamaño de texto legible */
                border-radius: 0;         /* quitar bordes redondeados para la banda */
                z-index: 999;             /* siempre encima */
                box-shadow: 0 -2px 10px rgba(0,0,0,0.3); /* opcional para destacar */
            }

            .swiper .ultimos-proyectos a h4 {
                margin: 0;
                font-size: 16px;
                font-weight: bold;
            }
            }
