body { font-family: 'Poppins', sans-serif; scroll-behavior: smooth; background:#f0f2f5; }

/* Navbar */
nav { backdrop-filter: blur(8px); background: rgba(255,255,255,0.85); }

/* Hero 3D */
.hero {
  height: 100vh;
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* IMAGE animée */
.hero::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url('image/femme espace.jpg');
  background-size: cover;
  background-position: center;
  animation: dropImage 1.5s ease-out forwards;
  z-index: 1;
}

/* Overlay sombre */
.hero::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,0.4);
  z-index: 2;
}

/* Contenu */
.hero-content {
  position: relative;
  z-index: 3;
  color: white;
  text-align: center;
}

/* Animation chute */
@keyframes dropImage {
  0% {
    transform: translateY(-100%);
  }
  100% {
    transform: translateY(0);
  }
}

/* Carousel 3D */
.carousel-inner { perspective: 1000px; }
.carousel-item { display:flex; justify-content:center; transition: transform 0.5s, opacity 0.5s; }
.carousel-item img {
  width: 600px; height: 400px; object-fit: cover;
  border-radius:20px; box-shadow:0 15px 35px rgba(0,0,0,0.3);
  transform: rotateY(-5deg); transition: transform 0.5s;
}
.carousel-item img:hover { transform: rotateY(0deg) scale(1.05); }

/* Responsive carousel */
@media (max-width: 768px) { .carousel-item img { width:90%; height:300px; } }
@media (max-width: 480px) { .carousel-item img { width:100%; height:250px; } }

/* Sections 3D parallax */
section { transform-style: preserve-3d; transition: transform 0.8s, opacity 0.8s; opacity:0; }
section.visible { opacity:1; transform: translateZ(0px); }

/* Stats */
.stat { font-size:2.5rem; font-weight:700; color:#0984e3; }

/* Testimonials */
.testimonial-card { background:#fff; border-radius:15px; box-shadow:0 8px 20px rgba(0,0,0,0.1); padding:25px; transform: translateZ(30px); transition: transform 0.5s; }
.testimonial-card:hover { transform: translateZ(0px) scale(1.03); }

/* Reservation Form */
#reservation { padding:80px 5%; background:#fff; border-radius:30px; max-width:800px; margin:60px auto; box-shadow:0 20px 40px rgba(0,0,0,0.2); transform: translateZ(50px);}
#reservation h2 { text-align:center; margin-bottom:30px;}
.form-control, .form-label { border-radius:10px; }

/* WhatsApp floating */
.whatsapp-btn { position:fixed; bottom:25px; right:25px; z-index:999; background:#25D366; color:#fff; padding:15px 20px; border-radius:50px; font-weight:600; box-shadow:0 5px 15px rgba(0,0,0,0.3); display:flex; align-items:center; gap:10px; transition:0.3s; }
.whatsapp-btn:hover { transform:scale(1.1);}
/* ===== POPUP PREMIUM ===== */
.custom-popup{
    position: fixed;
    top: 30px;
    right: 30px;
    background: linear-gradient(135deg, #00b894, #00cec9);
    color: white;
    padding: 18px 25px;
    border-radius: 15px;
    box-shadow: 0 10px 25px rgba(0,0,0,0.3);
    font-weight: 600;
    transform: translateX(120%);
    transition: all 0.4s ease;
    z-index: 9999;
}

.custom-popup.show{
    transform: translateX(0);
}
.espace-content{
display:none;
}

.espace-content.active{
display:block;
}

.espace-btn{
margin:5px;
}

