
    :root {
      --rose-gold: #B76E79;
      --blush-pink: #FDECEF;
      --cream-white: #FFF8F5;
      --dark-brown: #3E2723;
      --soft-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
      --transition: all 0.3s ease;
    }
    * {
      margin: 0;
      padding: 0;
      box-sizing: border-box;
    }
    body {
      font-family: 'Poppins', sans-serif;
      background: var(--cream-white);
      color: var(--dark-brown);
      scroll-behavior: smooth;
      overflow-x: hidden;
    }
    h1, h2, h3, h4, .logo-text {
      font-family: 'Playfair Display', serif;
      font-weight: 700;
    }
    /* Top Bar - STICKY */
    .top-bar {
      background: var(--rose-gold);
      color: #fff;
      font-size: 0.85rem;
      padding: 8px 0;
      position: sticky;
      top: 0;
      z-index: 1040;
      width: 100%;
      box-shadow: 0 2px 8px rgba(0,0,0,0.05);
    }
    .top-bar a {
      color: #fff;
      text-decoration: none;
      margin-right: 20px;
      transition: var(--transition);
    }
    .top-bar a:hover { opacity: 0.8; }
    .social-icons a {
      margin-right: 12px;
      font-size: 0.9rem;
    }
    .btn-rose-outline {
      border: 1px solid #fff;
      background: transparent;
      padding: 2px 12px;
      border-radius: 30px;
      color: #fff;
      font-size: 0.8rem;
      transition: var(--transition);
      text-decoration: none;
      display: inline-block;
    }
    .btn-rose-outline:hover { background: #fff; color: var(--rose-gold); }
    
    /* Navbar - below top bar, also sticky */
    .navbar {
      background: #000000fa;
      transition: background 0.4s ease, box-shadow 0.3s;
      padding: 18px 0;
      position: sticky;
      top: 38px; /* Height of top bar approx */
      z-index: 1030;
    }
    .navbar-toggler {
    padding: var(--bs-navbar-toggler-padding-y) var(--bs-navbar-toggler-padding-x);
    font-size: var(--bs-navbar-toggler-font-size);
    line-height: 1;
    color: rgb(222 161 113);
    background-color: #d79896;
    border: var(--bs-border-width) solid #d79896;
    border-radius: var(--bs-navbar-toggler-border-radius);
    transition: var(--bs-navbar-toggler-transition);
}
    .navbar.scrolled {
      background: var(--cream-white);
      box-shadow: 0 4px 20px rgba(0,0,0,0.08);
    }
    .navbar.scrolled .nav-link, .navbar.scrolled .logo-text {
      color: var(--dark-brown) !important;
    }
    .logo-text {
      font-size: 1.6rem;
      font-weight: 800;
      letter-spacing: -0.5px;
      color: var(--cream-white);
    }
    .navbar.scrolled .logo-text { color: var(--rose-gold) !important; }
    .nav-link {
      color: var(--cream-white) !important;
      font-weight: 500;
      margin: 0 10px;
      transition: var(--transition);
      font-size: 0.95rem;
    }
    .navbar.scrolled .nav-link { color: var(--dark-brown) !important; }
    .nav-link:hover { color: var(--rose-gold) !important; }
    .btn-book-nav {
      background: var(--rose-gold);
      color: #fff;
      border-radius: 40px;
      padding: 8px 22px;
      font-weight: 600;
      transition: var(--transition);
      border: none;
      text-decoration: none;
    }
    .btn-book-nav:hover { background: #9e5b64; transform: translateY(-2px); color: white; }
    
    /* Hero */
    .hero {
      background: linear-gradient(rgba(62, 39, 35, 0.7), rgba(62, 39, 35, 0.6)), url('https://images.pexels.com/photos/3993449/pexels-photo-3993449.jpeg?auto=compress&cs=tinysrgb&w=1600') center/cover no-repeat;
      min-height: 100vh;
      display: flex;
      align-items: center;
      position: relative;
    }
    .hero-content h1 { font-size: 3.5rem; font-weight: 800; }
    .stats-badge {
      background: rgba(255,248,245,0.2);
      backdrop-filter: blur(8px);
      border-radius: 50px;
      padding: 10px 18px;
      font-weight: 500;
    }
    /* Section styling */
    .section-padding {
      padding: 80px 0;
      overflow: hidden;
    }
    .section-title {
      font-size: 2.8rem;
      margin-bottom: 20px;
      position: relative;
      display: inline-block;
    }
    .section-title:after {
      content: '';
      position: absolute;
      bottom: -12px;
      left: 0;
      width: 70px;
      height: 3px;
      background: var(--rose-gold);
    }
    .card-service, .why-card, .process-card {
      border: none;
      border-radius: 20px;
      background: #fff;
      transition: transform 0.3s, box-shadow 0.3s;
      box-shadow: var(--soft-shadow);
      padding: 25px 15px;
      text-align: center;
      height: 100%;
    }
    .card-service:hover, .why-card:hover, .process-card:hover {
      transform: translateY(-8px);
      box-shadow: 0 20px 30px rgba(0,0,0,0.1);
    }
    .service-icon {
      font-size: 2.8rem;
      color: var(--rose-gold);
      margin-bottom: 15px;
    }
    .btn-rose {
      background: var(--rose-gold);
      color: white;
      border-radius: 50px;
      padding: 10px 28px;
      font-weight: 500;
      transition: var(--transition);
      border: none;
      text-decoration: none;
      display: inline-block;
    }
    .btn-rose:hover { background: #9e5b64; color: #fff; transform: scale(1.02);}
    .btn-brown-outline {
      border: 2px solid var(--rose-gold);
      background: transparent;
      color: var(--rose-gold);
      border-radius: 50px;
      padding: 10px 28px;
      font-weight: 600;
      text-decoration: none;
    }
    .btn-brown-outline:hover { background: var(--rose-gold); color: #fff; }
    
    /* Gallery grid */
    .gallery-img {
      border-radius: 20px;
      overflow: hidden;
      cursor: pointer;
      transition: 0.3s;
      display: block;
    }
    .gallery-img img { width: 100%; height: 250px; object-fit: cover; transition: 0.5s; }
    .gallery-img:hover img { transform: scale(1.05); }
    .img-fluid {
    max-width: 100%;
    height: 350px;
}
    /* Process steps */
    .step-number {
      width: 60px;
      height: 60px;
      background: var(--rose-gold);
      color: white;
      font-size: 28px;
      font-weight: bold;
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      margin: 0 auto 20px;
    }
    /* Testimonial carousel */
    .testimonial-card {
      background: white;
      border-radius: 30px;
      padding: 30px;
      margin: 15px;
      box-shadow: var(--soft-shadow);
    }
    .carousel-control-prev-icon, .carousel-control-next-icon {
      background-color: var(--rose-gold);
      border-radius: 50%;
      padding: 20px;
    }
    /* CTA parallax */
    .cta-parallax {
      background: linear-gradient(rgba(62, 39, 35, 0.85), rgba(62, 39, 35, 0.85)), url('https://images.pexels.com/photos/3812053/pexels-photo-3812053.jpeg?auto=compress&cs=tinysrgb&w=1600') fixed center/cover;
      color: white;
    }
    /* footer */
    .footer {
      background: #2a1a16;
      color: #ddd;
    }
    .footer a { color: #ccc; transition: 0.3s; text-decoration: none; }
    .footer a:hover { color: var(--rose-gold); }
    /* whatsapp fixed button */
    .whatsapp-float {
      position: fixed;
      bottom: 25px;
      right: 25px;
      background: #25d366;
      color: white;
      width: 55px;
      height: 55px;
      border-radius: 50%;
      text-align: center;
      font-size: 32px;
      line-height: 55px;
      z-index: 1040;
      box-shadow: 0 5px 15px rgba(0,0,0,0.2);
      transition: 0.2s;
    }
    .whatsapp-float:hover { background: #20b859; transform: scale(1.05); color: white; }
    
    /* Lightbox close button custom fix - ensure it's visible */
    .lb-close {
      position: relative;
      float: right;
      background: rgba(0,0,0,0.6);
      border-radius: 50%;
      width: 35px;
      height: 35px;
      text-align: center;
      line-height: 35px;
      font-size: 24px;
      color: white !important;
      opacity: 1;
      margin: 5px;
    }
    .lb-close:hover {
      background: var(--rose-gold);
    }
    .lb-data .lb-caption {
      font-family: 'Poppins', sans-serif;
      font-size: 14px;
    }
    
    @media (max-width: 768px) {
      .hero-content h1 { font-size: 2.2rem; }
      .section-title { font-size: 2rem; }
      .top-bar .d-none { display: none; }
      .navbar .logo-text { font-size: 1.2rem; }
      .navbar { top: 76px; } /* adjust for mobile top bar wrapping */
      .top-bar { position: sticky; }
    }
    @media (max-width: 576px) {
      .navbar { top: 138px; }
    }
    /* smooth scroll offset fix for anchor links with sticky headers */
    html {
      scroll-padding-top: 130px;
    }
    @media (max-width: 768px) {
      html {
        scroll-padding-top: 160px;
      }
    }