:root {
            --gold: #c5a059;
            --ocean: #075985;
            --dark: #0f172a;
            --light: #f8fafc;
            --white: #ffffff;
            --shadow: 0 15px 35px rgba(0,0,0,0.1);
        }

        * { margin: 0; padding: 0; box-sizing: border-box; font-family: 'Poppins', sans-serif; }
        body { background-color: var(--light); color: var(--dark); scroll-behavior: smooth; }

        /* --- HERO SECTION --- */
        header {
            height: 70vh;
            background: linear-gradient(rgba(15, 23, 42, 0.5), rgba(15, 23, 42, 0.5)), 
                        url('img/img1.webp?auto=format&fit=crop&q=80&w=2000') no-repeat center center/cover;
            display: flex;
            align-items: center;
            justify-content: center;
            text-align: center;
            color: white;
        }

        .hero-text h1 { font-family: 'Playfair Display', serif; font-size: clamp(2.5rem, 5vw, 4rem); margin-bottom: 10px; }
        .hero-text p { font-size: 1.2rem; font-weight: 300; letter-spacing: 3px; text-transform: uppercase; }

        .container { max-width: 1200px; margin: auto; padding: 0 20px; }

        /* --- CARACTERÍSTICAS RÁPIDAS --- */
        .quick-features {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
            gap: 20px;
            margin-top: -60px;
            position: relative;
            z-index: 20;
        }

        .feature-item {
            background: var(--white);
            padding: 30px;
            text-align: center;
            border-radius: 15px;
            box-shadow: var(--shadow);
            border-bottom: 4px solid var(--gold);
        }

        .feature-item i { font-size: 2rem; color: var(--ocean); margin-bottom: 15px; }

        /* --- CARRUSEL DINÁMICO (Carpeta /img) --- */
        .gallery-section { padding: 80px 0; }
        .section-title { text-align: center; margin-bottom: 40px; }
        .section-title h2 { font-family: 'Playfair Display', serif; font-size: 2.5rem; color: var(--ocean); }

        .slider-container {
            position: relative;
            width: 100%;
            height: 600px;
            border-radius: 20px;
            overflow: hidden;
            box-shadow: var(--shadow);
            background: #e2e8f0;
        }

        .slides { display: flex; width: 100%; height: 100%; transition: transform 0.6s cubic-bezier(0.4, 0, 0.2, 1); }
        .slide { min-width: 100%; height: 100%; }
        .slide img { width: 100%; height: 100%; object-fit: cover; }

        .slider-btn {
            position: absolute;
            top: 50%; transform: translateY(-50%);
            background: rgba(255, 255, 255, 0.9);
            border: none; width: 55px; height: 55px;
            border-radius: 50%; cursor: pointer;
            color: var(--ocean); font-size: 1.2rem;
            transition: 0.3s; z-index: 10;
        }
        .slider-btn:hover { background: var(--ocean); color: white; }
        .prev { left: 25px; } .next { right: 25px; }

        /* --- DETALLES Y RESERVA --- */
        .main-grid {
            display: grid;
            grid-template-columns: 1.8fr 1fr;
            gap: 40px;
            padding-bottom: 80px;
        }

        .info-card, .booking-card { background: white; padding: 40px; border-radius: 20px; box-shadow: var(--shadow); }
        
        .amenities-list {
            display: grid; grid-template-columns: 1fr 1fr; gap: 15px; list-style: none; margin-top: 25px;
        }
        .amenities-list li i { color: var(--gold); margin-right: 10px; }

        .booking-card { position: sticky; top: 20px; border: 1px solid #e2e8f0; }
        .price-tag { font-size: 2rem; font-weight: 700; color: var(--ocean); text-align: center; margin-bottom: 20px; }
        
        .btn-whatsapp {
            display: flex; align-items: center; justify-content: center; gap: 10px;
            background: #25d366; color: white; text-decoration: none;
            padding: 18px; border-radius: 12px; font-weight: 600; transition: 0.3s;
        }
        .btn-whatsapp:hover { background: #128c7e; transform: translateY(-3px); }

        .map-wrapper { height: 300px; border-radius: 15px; overflow: hidden; margin-top: 30px; }

        footer { background: var(--dark); color: white; text-align: center; padding: 50px 20px; }

        @media (max-width: 992px) {
            .main-grid { grid-template-columns: 1fr; }
            .slider-container { height: 400px; }
            .quick-features { margin-top: -30px; }
        }

        #btnTop {
  display: none; /* Oculto por defecto */
  position: fixed; /* Posición fija */
  bottom: 20px; /* Distancia del fondo */
  right: 30px; /* Distancia de la derecha */
  z-index: 99; /* Asegura que esté encima de todo */
  border: none;
  outline: none;
  background-color: #c5a059; /* Usa tu variable --gold aquí */
  color: white;
  cursor: pointer;
  padding: 15px;
  border-radius: 50%; /* Botón circular */
  font-size: 18px;
  width: 50px;
  height: 50px;
  box-shadow: 0px 4px 10px rgba(0,0,0,0.3);
  transition: background-color 0.3s, transform 0.3s;
}

#btnTop:hover {
  background-color: #a38241; /* Un tono más oscuro al pasar el mouse */
  transform: translateY(-5px); /* Pequeño salto visual */
}

