:root {
      --navy-deep: #000033;
      --gold: #D4AF37;
      --gold-glow: rgba(212, 175, 55, 0.4);
    }

    * {
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
    }

    body {
      font-family: 'Inter', sans-serif;
      background: linear-gradient(135deg, #000033 0%, #000011 50%, #000033 100%);
      color: #ffffff;
      scroll-behavior: smooth;
      overflow-x: hidden;
      position: relative;
    }

    /* Premium Animated Background Mesh */
    body::before {
      content: '';
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background:
        radial-gradient(circle at 10% 20%, rgba(212, 175, 55, 0.08) 0%, transparent 50%),
        radial-gradient(circle at 90% 80%, rgba(212, 175, 55, 0.06) 0%, transparent 50%),
        radial-gradient(circle at 50% 50%, rgba(212, 175, 55, 0.04) 0%, transparent 70%);
      animation: meshMove 20s ease-in-out infinite;
      pointer-events: none;
      z-index: 0;
    }

    @keyframes meshMove {

      0%,
      100% {
        opacity: 0.5;
        transform: scale(1) rotate(0deg);
      }

      50% {
        opacity: 0.8;
        transform: scale(1.1) rotate(2deg);
      }
    }

    /* Premium Floating Particles */
    body::after {
      content: '';
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-image:
        radial-gradient(2px 2px at 20% 30%, rgba(212, 175, 55, 0.3), transparent),
        radial-gradient(2px 2px at 60% 70%, rgba(212, 175, 55, 0.3), transparent),
        radial-gradient(1px 1px at 50% 50%, rgba(212, 175, 55, 0.3), transparent),
        radial-gradient(1px 1px at 80% 10%, rgba(212, 175, 55, 0.3), transparent),
        radial-gradient(2px 2px at 90% 60%, rgba(212, 175, 55, 0.3), transparent),
        radial-gradient(1px 1px at 33% 90%, rgba(212, 175, 55, 0.3), transparent);
      background-size: 200% 200%;
      background-position: 0% 0%;
      animation: particleFloat 60s ease-in-out infinite;
      pointer-events: none;
      z-index: 0;
    }

    @keyframes particleFloat {

      0%,
      100% {
        transform: translate(0, 0);
      }

      25% {
        transform: translate(5%, -5%);
      }

      50% {
        transform: translate(-3%, 3%);
      }

      75% {
        transform: translate(-5%, -3%);
      }
    }

    .font-brand {
      font-family: 'Montserrat', sans-serif;
      letter-spacing: -0.02em;
    }

    /* Premium Scrollbar */
    ::-webkit-scrollbar {
      width: 8px;
    }

    ::-webkit-scrollbar-track {
      background: var(--navy-deep);
      border-left: 1px solid rgba(212, 175, 55, 0.1);
    }

    ::-webkit-scrollbar-thumb {
      background: linear-gradient(180deg, var(--gold), #A6862C);
      border-radius: 10px;
      box-shadow: 0 0 10px rgba(212, 175, 55, 0.3);
    }

    ::-webkit-scrollbar-thumb:hover {
      background: var(--gold);
      box-shadow: 0 0 20px rgba(212, 175, 55, 0.6);
    }

    /* Premium Logo with Enhanced Glow */
    .logo-img {
      filter: drop-shadow(0 4px 12px rgba(0, 0, 0, 0.5)) drop-shadow(0 0 20px var(--gold-glow)) drop-shadow(0 0 40px rgba(212, 175, 55, 0.2));
      transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
      mix-blend-mode: screen;
    }

    .logo-img:hover {
      filter: drop-shadow(0 8px 24px rgba(0, 0, 0, 0.7)) drop-shadow(0 0 30px var(--gold-glow)) drop-shadow(0 0 60px rgba(212, 175, 55, 0.4));
      transform: scale(1.05);
    }

    /* Mobile Menu with Glassmorphism */
    .mobile-menu-overlay {
      transform: translateX(100%);
      transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
      backdrop-filter: blur(20px);
      background: rgba(0, 0, 51, 0.95);
    }

    .mobile-menu-overlay.active {
      transform: translateX(0);
    }

    /* Premium Gold Gradient Text */
    .gold-gradient-text {
      background: linear-gradient(135deg, #FBF5B7 0%, #D4AF37 50%, #A6862C 100%);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      background-clip: text;
      animation: gradientShift 8s ease-in-out infinite;
      background-size: 200% 200%;
    }

    @keyframes gradientShift {

      0%,
      100% {
        background-position: 0% 50%;
      }

      50% {
        background-position: 100% 50%;
      }
    }

    /* Premium Booking Widget */
    #booking-wrapper {
      min-height: 500px;
      transition: height 0.4s ease;
      width: 100%;
      position: relative;
      background: rgba(255, 255, 255, 0.02);
      backdrop-filter: blur(10px);
      border-radius: 1.5rem;
      box-shadow:
        0 20px 60px -15px rgba(0, 0, 0, 0.5),
        inset 0 1px 0 rgba(255, 255, 255, 0.1);
    }

    .sb-widget-container {
      background-color: transparent !important;
    }

    /* Premium Service Cards with Glass Effect */
    .service-card {
      transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
      border: 1px solid rgba(255, 255, 255, 0.05);
      backdrop-filter: blur(10px);
      position: relative;
      overflow: hidden;
      will-change: transform;
    }

    .service-card::before {
      content: '';
      position: absolute;
      top: 0;
      left: -100%;
      width: 100%;
      height: 100%;
      background: linear-gradient(90deg, transparent, rgba(212, 175, 55, 0.1), transparent);
      transition: left 0.6s ease;
    }

    .service-card:hover::before {
      left: 100%;
    }

    .service-card:hover {
      border-color: var(--gold);
      background: rgba(212, 175, 55, 0.05);
      transform: translateY(-8px) scale(1.02);
      box-shadow:
        0 20px 40px -15px rgba(212, 175, 55, 0.3),
        0 0 0 1px rgba(212, 175, 55, 0.1),
        inset 0 1px 0 rgba(255, 255, 255, 0.1);
    }

    /* Premium Buttons */
    .premium-btn {
      position: relative;
      overflow: hidden;
      isolation: isolate;
    }

    .premium-btn::before {
      content: '';
      position: absolute;
      inset: 0;
      background: linear-gradient(135deg, rgba(255, 255, 255, 0.2), transparent);
      opacity: 0;
      transition: opacity 0.3s ease;
    }

    .premium-btn:hover::before {
      opacity: 1;
    }

    .premium-btn::after {
      content: '';
      position: absolute;
      inset: -3px;
      background: linear-gradient(45deg, transparent, var(--gold-glow), transparent);
      opacity: 0;
      filter: blur(10px);
      z-index: -1;
      transition: opacity 0.5s ease;
    }

    .premium-btn:hover::after {
      opacity: 1;
    }

    /* Fade-in Animation Utilities */
    .fade-in-up {
      opacity: 0;
      transform: translateY(30px);
      transition: opacity 0.8s ease, transform 0.8s ease;
    }

    .fade-in-up.visible {
      opacity: 1;
      transform: translateY(0);
    }

    .fade-in {
      opacity: 0;
      transition: opacity 1s ease;
    }

    .fade-in.visible {
      opacity: 1;
    }

    /* Premium Nav with Enhanced Glassmorphism */
    nav {
      backdrop-filter: blur(20px) saturate(180%);
      background: rgba(0, 0, 51, 0.98) !important;
      box-shadow:
        0 8px 32px rgba(0, 0, 0, 0.4),
        inset 0 1px 0 rgba(255, 255, 255, 0.05);
    }

    /* Text Selection */
    ::selection {
      background: var(--gold);
      color: var(--navy-deep);
    }

    /* Premium Focus States */
    input:focus,
    textarea:focus,
    select:focus {
      box-shadow:
        0 0 0 3px rgba(212, 175, 55, 0.1),
        0 10px 30px -10px rgba(212, 175, 55, 0.3);
      transform: translateY(-2px);
    }

    /* Smooth Stagger Delays */
    .stagger-1 {
      transition-delay: 0.1s;
    }

    .stagger-2 {
      transition-delay: 0.2s;
    }

    .stagger-3 {
      transition-delay: 0.3s;
    }

    .stagger-4 {
      transition-delay: 0.4s;
    }

    .stagger-5 {
      transition-delay: 0.5s;
    }

    .stagger-6 {
      transition-delay: 0.6s;
    }

    /* Premium Shimmer Effect */
    @keyframes shimmer {
      0% {
        background-position: -1000px 0;
      }

      100% {
        background-position: 1000px 0;
      }
    }

    .shimmer {
      background: linear-gradient(90deg, transparent, rgba(212, 175, 55, 0.3), transparent);
      background-size: 1000px 100%;
      animation: shimmer 3s infinite;
    }
