*{margin:0;padding:0;box-sizing:border-box;font-family:'Poppins',sans-serif;}
body{overflow-x:hidden;background:#fff;}

/* NAVBAR */
nav{width:100%;position:fixed;top:0;left:0;z-index:999;background:rgba(255,255,255,0.65);backdrop-filter:blur(15px);display:flex;justify-content:space-between;align-items:center;padding:18px 70px;}
nav .logo{display:flex;align-items:center;}
nav .logo img{width:60px;margin-right:12px;}
nav .logo h2{color:#8a002e;font-size:26px;font-weight:800;}
nav ul{display:flex;list-style:none;gap:30px;}
nav ul li a{text-decoration:none;color:#222;font-weight:600;position:relative;}
nav ul li a::after{content:'';position:absolute;bottom:-5px;left:0;width:0;height:3px;background:#8a002e;transition:.3s;}
nav ul li a:hover::after{width:100%;}
.book-btn{background:#8a002e;color:#fff;padding:11px 28px;border-radius:40px;font-weight:600;text-decoration:none;transition:.3s;}
.book-btn:hover{background:#b3003c;}

/* HERO */
.hero{width:100%;height:100vh;position:relative;}
.slider{position:absolute;inset:0;width:100%;height:100%;}
.slider img{width:100%;height:100%;object-fit:cover;position:absolute;opacity:0;transition:opacity 1.5s ease-in-out;}
.slider img.active{opacity:1;}
.overlay{position:absolute;inset:0;background:linear-gradient(rgba(0,0,0,0.7),rgba(0,0,0,0.25));}
.hero-content{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;text-align:center;}
.hero-content h1{font-size:110px;font-weight:800;text-shadow:0 6px 12px #000;}
.tagline{display:block;font-size:32px;margin-top:10px;font-weight:600;}
.cta-box{margin-top:25px;}
.btn{padding:14px 35px;border-radius:50px;text-decoration:none;font-size:18px;margin:0 10px;font-weight:600;transition:.3s;}
.filled{background:#8a002e;color:#fff;}
.outline{border:2px solid #fff;color:#fff;}
.filled:hover{background:#b3003c;}
.outline:hover{background:#fff;color:#8a002e;}

/* ABOUT */
.about-section{padding:100px 7%;background:#fafafa;}
.about-wrapper{display:flex;align-items:center;gap:60px;flex-wrap:wrap;}

.about-images{flex:1;position:relative;display:flex;justify-content:center;}
.img-stack{position:relative;width:350px;height:430px;}

.about-img{width:100%;height:100%;object-fit:cover;border-radius:20px;box-shadow:0 15px 30px rgba(0,0,0,0.15);transition:.3s;position:absolute;}
.about-img.first{top:0;left:0;z-index:2;}
.about-img.second{bottom:0;right:0;transform:scale(.92);filter:brightness(.92);z-index:1;}

.since-badge{position:absolute;bottom:-30px;left:20px;background:#ff9900;color:#fff;padding:10px 25px;border-radius:12px;font-weight:700;box-shadow:0 5px 20px rgba(0,0,0,0.2);}
.since-badge h3{margin:0;font-size:26px;font-weight:800;}

.about-content{flex:1;}
.about-mini{color:#ff9900;text-transform:uppercase;letter-spacing:2px;font-weight:600;}
.about-title{font-size:48px;font-weight:800;line-height:1.3;margin:10px 0 20px;}
.about-title span{color:#ff9900;}
.about-desc{font-size:18px;line-height:1.8;color:#444;margin-bottom:30px;}

.about-stats{display:flex;gap:25px;flex-wrap:wrap;margin-bottom:30px;}
.stat-box{text-align:center;background:#fff;width:165px;padding:25px 30px;border-radius:18px;box-shadow:0 10px 25px rgba(0,0,0,0.1);transition:.3s;}
.stat-box:hover{transform:translateY(-10px);}
.stat-box i{font-size:32px;color:#ff9900;margin-bottom:10px;}
.stat-box h3{font-size:30px;font-weight:800;}

.about-btn{display:inline-block;background:#ff9900;padding:14px 28px;border-radius:30px;color:#fff;font-weight:600;text-decoration:none;transition:.4s;}
.about-btn:hover{background:#000;letter-spacing:1px;}

/* RESPONSIVE */
@media(max-width:991px){
  .hero-content h1{font-size:70px;}
  .img-stack{width:300px;height:350px;}
}
@media(max-width:768px){
  .about-wrapper{flex-direction:column;text-align:center;}
  .img-stack{margin-bottom:50px;}
}
@media(max-width:480px){
  .hero-content h1{font-size:40px;}
  .about-title{font-size:32px;}
}



.services-section{
  padding:110px 7%;
  background:#fff;
  text-align:center;
}

.services-header .small-title{
  color:#ff9900;
  text-transform:uppercase;
  letter-spacing:3px;
  font-weight:600;
  margin-bottom:10px;
}

.main-service-title{
  font-size:45px;
  font-weight:800;
}

.services-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(270px,1fr));
  gap:35px;
  margin-top:60px;
}

.service-card{
  background:#fff;
  border-radius:22px;
  overflow:hidden;
  box-shadow:0 15px 30px rgba(0,0,0,0.12);
  transition:.4s;
  cursor:pointer;
  position:relative;
}

.service-card:hover{
  transform:translateY(-12px);
  box-shadow:0 20px 40px rgba(0,0,0,0.2);
}

.service-img{
  position:relative;
  width:100%;
  height:220px;
  overflow:hidden;
}

.service-img img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:.4s;
}

.service-card:hover .service-img img{
  transform:scale(1.1);
}

.service-tag{
  position:absolute;
  bottom:15px;
  left:15px;
  background:rgba(255,255,255,.85);
  padding:6px 18px;
  font-size:14px;
  font-weight:700;
  border-radius:18px;
  color:#8a002e;
  backdrop-filter:blur(6px);
}

.service-content{
  padding:22px 25px;
}

.service-content h3{
  font-size:22px;
  font-weight:800;
  margin-bottom:12px;
  color:#222;
}

.service-content p{
  font-size:16px;
  color:#555;
  line-height:1.6;
  margin-bottom:18px;
}

.service-btn{
  text-decoration:none;
  font-weight:700;
  color:#8a002e;
  transition:.3s;
}

.service-btn:hover{
  letter-spacing:1px;
}

.view-all-box{margin-top:50px;}

.view-all-btn{
  padding:14px 30px;
  background:#8a002e;
  color:#fff;
  border-radius:30px;
  text-decoration:none;
  font-weight:700;
  transition:.4s;
}

.view-all-btn:hover{
  background:#b3003c;
  letter-spacing:1px;
}


.choose-section{
  padding:110px 7%;
  background:#fafafa;
  text-align:center;
}

.choose-mini{
  color:#ff9900;
  text-transform:uppercase;
  font-weight:700;
  letter-spacing:3px;
}

.choose-title{
  font-size:45px;
  font-weight:800;
  line-height:1.3;
  margin-top:10px;
}

.choose-title span{
  color:#8a002e;
}

.choose-container{
  margin-top:60px;
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  gap:25px;
}

.choose-item{
  display:flex;
  align-items:center;
  gap:25px;
  padding:22px 25px;
  background:#fff;
  border-radius:18px;
  width:340px;
  box-shadow:0 10px 25px rgba(0,0,0,0.1);
  transition:.4s;
}

.choose-item:hover{
  transform:translateY(-10px);
  box-shadow:0 12px 30px rgba(0,0,0,0.15);
}

.choose-icon i{
  font-size:40px;
  color:#8a002e;
}

.choose-content h3{
  font-size:22px;
  font-weight:800;
  margin-bottom:6px;
}

.choose-line{
  height:80px;
  width:3px;
  background:#8a002e;
  border-radius:4px;
}

.choose-content p{
  font-size:16px;
  color:#555;
  line-height:1.5;
}

.choose-foot{
  margin-top:50px;
}

.choose-btn{
  background:#8a002e;
  color:#fff;
  padding:14px 30px;
  border-radius:30px;
  font-weight:700;
  text-decoration:none;
  transition:.4s;
}

.choose-btn:hover{
  background:#b3003c;
  letter-spacing:1px;
}

/* RESPONSIVE */
@media (max-width:991px){
  .choose-title{font-size:38px;}
  .choose-item{width:100%;}
}

@media (max-width:768px){
  .choose-container{flex-direction:column;}
  .choose-line{display:none;}
}

@media (max-width:480px){
  .choose-title{font-size:30px;}
  .choose-item{padding:18px 20px;}
  .choose-icon i{font-size:32px;}
}


.testimonial-section{
  padding:120px 7%;
  background:#fff;
  text-align:center;
}

.test-mini{
  color:#ff9900;
  text-transform:uppercase;
  font-weight:700;
  letter-spacing:3px;
}

.test-title{
  font-size:45px;
  font-weight:800;
  margin-top:10px;
  margin-bottom:60px;
  line-height:1.3;
}

.testimonial-slider{
  max-width:850px;
  margin:auto;
  position:relative;
  min-height:250px;
}

.testimonial-item{
  display:none;
  opacity:0;
  transform:translateY(50px);
  transition:.6s ease;
  padding:0 15px;
}

.testimonial-item.active{
  display:block;
  opacity:1;
  transform:translateY(0);
}

.testimonial-text{
  font-size:22px;
  font-weight:500;
  line-height:1.7;
  color:#333;
  margin-bottom:25px;
}

.quote{
  font-size:28px;
  color:#8a002e;
  margin:0 8px;
}

.testimonial-name{
  font-weight:800;
  font-size:22px;
  color:#8a002e;
}

.role{
  display:block;
  margin-top:6px;
  font-size:15px;
  color:#777;
}

.test-dots{
  margin-top:40px;
  display:flex;
  justify-content:center;
  gap:12px;
}

.dot{
  width:12px;
  height:12px;
  border-radius:50%;
  background:#ccc;
  cursor:pointer;
  transition:.3s;
}

.dot.active{
  background:#8a002e;
  transform:scale(1.3);
}

/* RESPONSIVE */
@media(max-width:768px){
  .test-title{font-size:32px;}
  .testimonial-text{font-size:18px;}
}



.creative-stats{
  padding:120px 7%;
  background:#fff;
  text-align:center;
  position:relative;
}

.stats-heading{
  margin-bottom:50px;
}

.stats-mini{
  color:#ff9900;
  text-transform:uppercase;
  letter-spacing:3px;
  font-size:16px;
  font-weight:700;
}

.stats-title{
  font-size:48px;
  font-weight:800;
  line-height:1.3;
}

.stats-wrapper{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
  gap:35px;
  margin-top:40px;
}

.stats-card{
  position:relative;
  padding:55px 20px;
  border-radius:28px;
  overflow:hidden;
  background:rgba(255,255,255,0.1);
  border:1px solid rgba(255,255,255,0.3);
  backdrop-filter:blur(12px);
  box-shadow:0 15px 40px rgba(0,0,0,0.15);
  cursor:pointer;
  transition:.45s ease-in-out;
}

.stats-card:hover{
  transform:translateY(-18px) scale(1.03);
  box-shadow:0 25px 50px rgba(0,0,0,0.25);
}

.stats-overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(135deg,rgba(138,0,46,0.75),rgba(255,153,0,0.75));
  mix-blend-mode:multiply;
  opacity:.75;
  z-index:-1;
}

.stats-card h1{
  font-size:60px;
  font-weight:900;
  color:#fff;
  margin-bottom:12px;
}

.stats-card p{
  font-size:18px;
  font-weight:600;
  color:#fff;
  letter-spacing:1px;
}

/* Floating Animation */
.float{
  animation:floatAnim 4s ease-in-out infinite;
}

@keyframes floatAnim{
  0%,100%{transform:translateY(0);}
  50%{transform:translateY(-10px);}
}

/* Responsive */
@media(max-width:768px){
  .stats-title{font-size:32px;}
  .stats-card h1{font-size:42px;}
  .stats-wrapper{gap:25px;}
}


/* ---------------- FOOTER SECTION ---------------- */
.footer{
  position:relative;
  padding:90px 7% 40px;
  background:#111;
  color:#fff;
  overflow:hidden;
}

.footer-overlay{
  position:absolute;
  inset:0;
  background:url('images/pattern.png');
  opacity:0.08;
  z-index:0;
}

.footer-content{
  position:relative;
  display:flex;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:50px;
  z-index:1;
}

/* Logo & description */
.footer-col{
  flex:1;
  min-width:260px;
}

.footer-logo{
  width:130px;
  margin-bottom:18px;
}

.footer-desc{
  margin-bottom:20px;
  color:#ddd;
  line-height:1.8;
  font-size:15px;
}

/* Social icons */
.footer-social{
  display:flex;
  gap:15px;
  margin-top:10px;
}

.footer-social a{
  width:42px;
  height:42px;
  border:1px solid rgba(255,255,255,0.4);
  border-radius:50%;
  display:flex;
  justify-content:center;
  align-items:center;
  font-size:18px;
  color:#fff;
  transition:.3s;
}

.footer-social a:hover{
  background:#ff9900;
  border-color:#ff9900;
  transform:translateY(-5px);
}

/* Contact column */
.footer-col h3{
  font-size:22px;
  margin-bottom:18px;
  font-weight:700;
  color:#ff9900;
}

.footer-contact{
  list-style:none;
  padding:0;
}

.footer-contact li{
  margin-bottom:12px;
  font-size:16px;
  display:flex;
  align-items:center;
  gap:10px;
  color:#ccc;
  transition:.3s;
}

.footer-contact li:hover{
  color:#fff;
  transform:translateX(5px);
}

.footer-contact i{
  color:#ff9900;
}

/* Bottom bar */
.footer-bottom{
  margin-top:60px;
  text-align:center;
  padding-top:25px;
  border-top:1px solid rgba(255,255,255,0.25);
  font-size:15px;
  color:#ccc;
  position:relative;
}

.footer-bottom strong{
  color:#ff9900;
}

/* Back to top button */
.go-top{
  position:absolute;
  right:40px;
  top:-25px;
  width:48px;
  height:48px;
  background:#ff9900;
  color:#000;
  border-radius:50%;
  display:flex;
  justify-content:center;
  align-items:center;
  font-size:22px;
  transition:.3s;
  text-decoration:none;
}

.go-top:hover{
  background:#fff;
  transform:translateY(-5px);
}

/* MARQUEE Style */
.event-marquee{
  background:#8a002e;
  color:#fff;
  padding:14px 0;
  font-size:17px;
  font-weight:600;
  letter-spacing:1px;
}

/* RESPONSIVE FOOTER */
@media(max-width:768px){
  .footer-content{
    flex-direction:column;
    text-align:center;
    align-items:center;
  }
  .footer-social{
    justify-content:center;
  }
  .go-top{
    right:50%;
    transform:translateX(50%);
    top:-24px;
  }
}

@media(max-width:480px){
  .event-marquee{
    font-size:15px;
  }
  .footer-col h3{
    font-size:20px;
  }
}

