/* ==========================================================
   home.css — Homepage styles
   ========================================================== */

/* Hero Carousel */
.hero-carousel { position:relative; }
.hero-carousel .carousel-item { height:90vh; min-height:500px; }

.hero-slide {
  height:100%;
  background-size:cover; background-position:center; background-repeat:no-repeat;
  display:flex; align-items:center; position:relative;
}
.hero-slide::before {
  content:''; position:absolute; inset:0;
  /*background:linear-gradient(135deg,rgba(10,30,25,.75) 0%,rgba(0,0,0,.35) 100%);*/
  background: linear-gradient(135deg,rgba(10, 30, 25, 0.12) 0%,rgba(0, 0, 0, 0.08) 100%);
  z-index:1;
}
.hero-carousel::after {
  content:''; position:absolute; bottom:0; left:0; right:0;
  height:90px;
  background:linear-gradient(to top,#fffaf2,transparent);
  z-index:10; pointer-events:none;
}

.hero-content-wrap { position:relative; z-index:2; color:#fff; padding:70px 0; width:100%; }

.hero-badge {
  display:inline-flex; align-items:center; gap:8px;
  background:rgba(201,155,55,.22); border:1px solid rgba(201,155,55,.55);
  color:#e0b54a; padding:7px 18px; border-radius:40px;
  font-size:12px; font-weight:700; letter-spacing:1px; text-transform:uppercase;
  margin-bottom:22px;
}

.hero-content-wrap h1 {
  font-family:'Playfair Display',Georgia,serif;
  font-size:clamp(32px,5vw,56px); line-height:1.12; color:#fff;
  margin-bottom:18px; text-shadow:0 2px 22px rgba(0,0,0,.3);
}

.hero-lead {
  font-size:clamp(15px,2vw,18px); color:rgba(255,255,255,.88);
  font-weight:300; max-width:580px; margin-bottom:30px;
}

.hero-carousel .carousel-control-prev,
.hero-carousel .carousel-control-next {
  width:48px; height:48px;
  background:rgba(255,255,255,.18); border:1.5px solid rgba(255,255,255,.35);
  border-radius:50%; top:50%; transform:translateY(-50%);
  opacity:1; transition:background .2s; z-index:5;
}
.hero-carousel .carousel-control-prev { left:24px; }
.hero-carousel .carousel-control-next { right:24px; }
.hero-carousel .carousel-control-prev:hover,
.hero-carousel .carousel-control-next:hover { background:rgba(255,255,255,.32); }
.hero-carousel .carousel-control-prev-icon,
.hero-carousel .carousel-control-next-icon { width:18px; height:18px; }

.hero-carousel .carousel-indicators { bottom:100px; z-index:11; }
.hero-carousel .carousel-indicators [data-bs-target] {
  width:10px; height:10px; border-radius:50%;
  background:rgba(255,255,255,.55); border:none; margin:0 5px;
  transition:background .2s, transform .2s;
}
.hero-carousel .carousel-indicators .active { background:#c99b37; transform:scale(1.25); }

@media (max-width:767.98px) {
  .hero-carousel .carousel-item { height:75vh; }
  .hero-carousel .carousel-control-prev,
  .hero-carousel .carousel-control-next { display:none; }
  .hero-carousel .carousel-indicators { bottom:40px; }
}

/* Welcome / Stats */
.welcome-section { background:#fff; padding:65px 0; border-bottom:1px solid rgba(0,0,0,.06); }
.stat-block { text-align:center; padding:10px 24px; }
.stat-number { font-family:'Playfair Display',Georgia,serif; font-size:40px; font-weight:700; color:#173f35; line-height:1; }
.stat-label  { font-size:12px; color:#5a5a5a; text-transform:uppercase; letter-spacing:.9px; margin-top:7px; }
.stat-sep    { width:1px; background:rgba(0,0,0,.12); margin:6px 0; align-self:stretch; }

/* Rooms section */
.rooms-section { padding:75px 0; background:#fffaf2; }

/* Amenities (homepage strip) */
.amenities-section { background:#1C3530; padding:75px 0; }
.amenities-section .section-tag     { color:#e0b54a; }
.amenities-section .section-heading { color:#fff; }
.amenities-section .section-intro   { color:rgba(255,255,255,.65); }

.amenity-card {
  background:#254038; border:1px solid rgba(255,255,255,.09);
  border-radius:16px; padding:28px 14px 24px;
  text-align:center; height:100%;
  display:flex; flex-direction:column; align-items:center; justify-content:center; gap:13px;
  transition:background .22s, transform .22s, border-color .22s;
}
.amenity-card:hover { background:#2d4d43; border-color:rgba(201,155,55,.38); transform:translateY(-3px); }
.amenity-icon-ring {
  width:56px; height:56px;
  background:rgba(201,155,55,.14); border:1px solid rgba(201,155,55,.28);
  border-radius:50%; display:flex; align-items:center; justify-content:center;
}
.amenity-icon-ring i { font-size:24px; color:#e0b54a; }
.amenity-label { color:#fff; font-size:14px; line-height:1.45; margin:0; }

/* Mini Hall */
.minihall-section { background:#fff; padding:78px 0; }
.split-img { width:100%; border-radius:22px; box-shadow:0 14px 42px rgba(0,0,0,.14); object-fit:cover; }

/* Explore */
.explore-section { background:#f4f8f5; padding:75px 0; }
.explore-card {
  background:#fff; border-radius:16px; padding:30px 26px;
  box-shadow:0 4px 16px rgba(0,0,0,.07); border-left:4px solid #c99b37;
  height:100%; display:flex; flex-direction:column; gap:13px;
  transition:transform .22s, box-shadow .22s;
}
.explore-card:hover { transform:translateY(-4px); box-shadow:0 8px 30px rgba(0,0,0,.11); }
.explore-icon-box {
  width:48px; height:48px;
  background:linear-gradient(135deg,#edf5f1,#d5ebe1);
  border-radius:10px; display:flex; align-items:center; justify-content:center;
}
.explore-icon-box i { font-size:22px; color:#173f35; }
.explore-card h3 { font-family:'Playfair Display',Georgia,serif; color:#173f35; font-size:19px; margin:0; }
.explore-card p  { font-size:14.5px; color:#5a5a5a; line-height:1.7; margin:0; }
