/* === STYLESHEET 1 (Core Styles) === */
:root {
    /* DEFAULT PREMIUM LIGHT THEME */
    --bg-primary: #ffffff;
    --bg-secondary: #f8fafc;
    --bg-secondary-rgb: 248, 250, 252;
    --bg-accent: #eff6ff;
    --navy: #1e293b; 
    --text-main: #0f172a;
    --text-secondary: #475569;
    --text-light: #64748b;
    --text-muted: #64748b;
    --white: #ffffff;
    --hero-bg: #f0f9ff; 
    --card-bg: #ffffff;
    --card-bg-white: #ffffff;
    --card-bg-glass: rgba(255, 255, 255, 0.7);
    --border-color: #e2e8f0;
    --border-color-light: #f1f5f9;
    --navy-dark: #0f172a;
    --navy-mid: #1e293b;
    --nav-bg: rgba(255, 255, 255, 0.9);
    --nav-scrolled-bg: linear-gradient(120deg, 
        rgba(255, 255, 255, 0.40) 0%, 
        rgba(255, 255, 255, 0.20) 25%, 
        rgba(45, 140, 255, 0.06) 50%, 
        rgba(255, 255, 255, 0.20) 75%, 
        rgba(255, 255, 255, 0.40) 100%
    );
    --nav-scrolled-border: rgba(255, 255, 255, 0.70);
    --nav-scrolled-border-bottom: rgba(45, 140, 255, 0.25);
    --nav-scrolled-shadow: 0 12px 30px rgba(45, 140, 255, 0.1),
                           0 4px 10px rgba(0, 0, 0, 0.02),
                           inset 0 2px 4px rgba(255, 255, 255, 0.8),
                           inset 0 -1px 2px rgba(45, 140, 255, 0.08);
    --accent: #2D8CFF;
    --accent-gradient: linear-gradient(135deg, #2D8CFF 0%, #00d2ff 100%);
    --accent-glow: rgba(45, 140, 255, 0.3);
    --badge-bg: rgba(45, 140, 255, 0.1);
    --badge-border: rgba(45, 140, 255, 0.2);
    --btn-shadow-primary: 0 8px 25px rgba(45, 140, 255, 0.3);
    --card-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
    
    /* GLOBAL CONSTANTS (PRESERVED) */
    --black-gradient: #000000;
    --purple-dark: #1c1917; /* Redefined from purple to premium obsidian */
    --purple-accent: #ffd700; /* Redefined from purple to gold */
    --blue-accent: #38bdf8;
    --green-accent: #34d399;
    --gold-accent: #ffd700;
    --gold-dark: #fde047;
    --badge-light-blue: #0c4a6e;
    --badge-light-yellow: #422006;
    --badge-light-purple: #451a03; /* Redefined from purple to deep amber/gold */
    --badge-light-green: #064e3b;
    --shadow-accent-glow: 0 20px 40px rgba(0, 0, 0, 0.4);
    --shadow-badge: 0 5px 15px rgba(0, 0, 0, 0.4);
    --shadow-gold-glow: 0 20px 50px rgba(255, 215, 0, 0.3);
    --transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

[data-theme="dark"] {
    /* OPTIONAL DARK THEME */
    --bg-primary: #020617;
    --bg-secondary: #0f172a;
    --bg-secondary-rgb: 15, 23, 42;
    --bg-accent: #1e293b;
    --primary: #ffd700;
    --secondary: #0f172a;
    --accent: #ffd700; 
    --accent-gradient: linear-gradient(135deg, #ffd700 0%, #ffa500 100%);
    --accent-glow: rgba(255, 215, 0, 0.2);
    --navy: #f8fafc;
    --navy-dark: #020617;
    --navy-mid: #0f172a;
    --text-main: #f8fafc;
    --text-secondary: #cbd5e1;
    --text-light: #94a3b8;
    --text-muted: #94a3b8;
    --white: #0f172a;
    --hero-bg: #020617;
    --card-bg: #0f172a;
    --card-bg-white: #0f172a;
    --card-bg-glass: rgba(15, 23, 42, 0.7);
    --border-color: #1e293b;
    --border-color-light: #1e293b;
    --nav-bg: rgba(2, 6, 23, 0.9);
    --nav-scrolled-bg: linear-gradient(120deg, 
        rgba(15, 23, 42, 0.50) 0%, 
        rgba(15, 23, 42, 0.25) 25%, 
        rgba(255, 215, 0, 0.05) 50%, 
        rgba(15, 23, 42, 0.25) 75%, 
        rgba(15, 23, 42, 0.50) 100%
    );
    --nav-scrolled-border: rgba(255, 255, 255, 0.15);
    --nav-scrolled-border-bottom: rgba(255, 215, 0, 0.3);
    --nav-scrolled-shadow: 0 15px 35px rgba(0, 0, 0, 0.45),
                           0 4px 10px rgba(0, 0, 0, 0.15),
                           inset 0 1px 1px rgba(255, 255, 255, 0.15),
                           inset 0 -1px 1.5px rgba(255, 215, 0, 0.15);
    --badge-bg: rgba(255, 215, 0, 0.1);
    --badge-border: rgba(255, 215, 0, 0.3);
    --btn-shadow-primary: 0 8px 25px rgba(0, 0, 0, 0.5);
    --card-shadow: 0 10px 25px rgba(0, 0, 0, 0.3);
}

/* --- Custom Animated Theme Switch --- */
.switch {
  position: relative;
  display: inline-block;
  width: 60px;
  height: 34px;
  cursor: pointer;
}

.switch .theme-input {
  opacity: 0;
  width: 0;
  height: 0;
  position: absolute;
}

.slider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #2D8CFF;
  -webkit-transition: 0.4s;
  transition: 0.4s;
  z-index: 0;
  overflow: hidden;
}

.sun-moon {
  position: absolute;
  content: "";
  height: 26px;
  width: 26px;
  left: 4px;
  bottom: 4px;
  background-color: yellow;
  -webkit-transition: 0.4s;
  transition: 0.4s;
  border-radius: 50%;
}

.theme-input:checked + .slider {
  background-color: black;
}

.theme-input:focus + .slider {
  box-shadow: 0 0 3px #2D8CFF;
}

.theme-input:checked + .slider .sun-moon {
  -webkit-transform: translateX(26px);
  -ms-transform: translateX(26px);
  transform: translateX(26px);
  background-color: white;
  -webkit-animation: rotate-center 0.6s ease-in-out both;
  animation: rotate-center 0.6s ease-in-out both;
}

.moon-dot {
  opacity: 0;
  transition: 0.4s;
  fill: #94a3b8; /* Crater gray */
}

.theme-input:checked + .slider .sun-moon .moon-dot {
  opacity: 1;
}

.slider.round {
  border-radius: 34px;
}

.slider.round .sun-moon {
  border-radius: 50%;
}

#moon-dot-1 {
  left: 10px;
  top: 3px;
  position: absolute;
  width: 6px;
  height: 6px;
  z-index: 4;
}

#moon-dot-2 {
  left: 2px;
  top: 10px;
  position: absolute;
  width: 10px;
  height: 10px;
  z-index: 4;
}

#moon-dot-3 {
  left: 16px;
  top: 18px;
  position: absolute;
  width: 3px;
  height: 3px;
  z-index: 4;
}

#light-ray-1 {
  left: -8px;
  top: -8px;
  position: absolute;
  width: 43px;
  height: 43px;
  z-index: -1;
  fill: white;
  opacity: 10%;
}

#light-ray-2 {
  left: -50%;
  top: -50%;
  position: absolute;
  width: 55px;
  height: 55px;
  z-index: -1;
  fill: white;
  opacity: 10%;
}

#light-ray-3 {
  left: -18px;
  top: -18px;
  position: absolute;
  width: 60px;
  height: 60px;
  z-index: -1;
  fill: white;
  opacity: 10%;
}

.cloud-light {
  position: absolute;
  fill: #eee;
  animation: cloud-move 6s ease-in-out infinite;
  transition: 0.4s;
}

.cloud-dark {
  position: absolute;
  fill: #ccc;
  animation: cloud-move 6s ease-in-out infinite;
  animation-delay: 1s;
  transition: 0.4s;
}

#cloud-1 {
  left: 30px;
  top: 15px;
  width: 40px;
}

#cloud-2 {
  left: 44px;
  top: 10px;
  width: 20px;
}

#cloud-3 {
  left: 18px;
  top: 24px;
  width: 30px;
}

#cloud-4 {
  left: 36px;
  top: 18px;
  width: 40px;
}

#cloud-5 {
  left: 48px;
  top: 14px;
  width: 20px;
}

#cloud-6 {
  left: 22px;
  top: 26px;
  width: 30px;
}

/* Hide clouds when dark mode is checked */
.theme-input:checked + .slider [class^="cloud-"] {
  opacity: 0;
  transform: translateY(15px);
}

@keyframes cloud-move {
  0% {
    transform: translateX(0px);
  }
  40% {
    transform: translateX(4px);
  }
  80% {
    transform: translateX(-4px);
  }
  100% {
    transform: translateX(0px);
  }
}

.stars {
  transform: translateY(-32px);
  opacity: 0;
  transition: 0.4s;
}

.star {
  fill: white;
  position: absolute;
  -webkit-transition: 0.4s;
  transition: 0.4s;
  animation-name: star-twinkle;
  animation-duration: 2s;
  animation-iteration-count: infinite;
}

.theme-input:checked + .slider .stars {
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
  opacity: 1;
}

#star-1 {
  width: 15px;
  top: 2px;
  left: 6px;
  animation-delay: 0.3s;
}

#star-2 {
  width: 6px;
  top: 16px;
  left: 4px;
}

#star-3 {
  width: 10px;
  top: 20px;
  left: 12px;
  animation-delay: 0.6s;
}

#star-4 {
  width: 12px;
  top: 4px;
  left: 20px;
  animation-delay: 1.3s;
}

@keyframes star-twinkle {
  0% {
    transform: scale(1);
  }
  40% {
    transform: scale(1.2);
  }
  80% {
    transform: scale(0.8);
  }
  100% {
    transform: scale(1);
  }
}

@keyframes rotate-center {
  0% {
    transform: translateX(26px) rotate(0deg);
  }
  100% {
    transform: translateX(26px) rotate(360deg);
  }
}

@-webkit-keyframes rotate-center {
  0% {
    -webkit-transform: translateX(26px) rotate(0deg);
  }
  100% {
    -webkit-transform: translateX(26px) rotate(360deg);
  }
}

        /* Page Loader */
        #loader {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: var(--bg-primary);
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            z-index: 20000;
            transition: opacity 0.8s ease-out;
            color: var(--text-main);
        }

        .loader-logo-inside {
            width: 48px;
            height: 48px;
            border-radius: 50%;
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            z-index: 10;
        }

        /* Illusion Loader Animation */
        .illusion {
          background: linear-gradient(90deg, #595959, #fff);
          width: 100px;
          height: 100px;
          top: 50%;
          left: 50%;
          transform: translate(-50%, -50%);
          display: block;
          position: absolute;
          border-radius: 50%;
          animation: rotation 5s linear infinite;
        }

        .illusion:before {
          background: linear-gradient(270deg, #595959, #fff);
          width: 86px;
          height: 86px;
          top: 7px;
          right: 0;
          display: block;
          position: absolute;
          content: "";
          border-radius: 50%;
        }

        .illusion:after {
          background: var(--bg-primary);
          width: 72px;
          height: 72px;
          top: 14px;
          left: 14px;
          display: block;
          position: absolute;
          content: "";
          border-radius: 50%;
        }

        @keyframes rotation {
          from {
            transform: translate(-50%, -50%) rotate(0deg);
          }
          to {
            transform: translate(-50%, -50%) rotate(360deg);
          }
        }

        /* Floating Buttons */
        .floats {
            position: fixed;
            bottom: 30px;
            right: 30px;
            display: flex;
            flex-direction: column;
            gap: 15px;
            z-index: 10000;
        }

        .float-btn {
            width: 55px;
            height: 55px;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            color: white;
            box-shadow: 0 10px 25px rgba(0,0,0,0.2);
            transition: var(--transition);
            text-decoration: none;
            font-size: 24px; /* For FontAwesome */
        }

        .whatsapp-float {
            background: #25D366;
        }

        .top-float {
            background: var(--bg-primary);
            border: 1px solid var(--accent);
            color: var(--text-main);
            opacity: 0;
            visibility: hidden;
            transform: translateY(20px);
        }

        .top-float.show {
            opacity: 1;
            visibility: visible;
            transform: translateY(0);
        }

        /* Floating Buttons Left */
        .floats-left {
            position: fixed;
            bottom: 30px;
            left: 30px;
            display: flex;
            flex-direction: column;
            gap: 15px;
            z-index: 10000;
        }

        .float-btn:hover {
            transform: scale(1.1) translateY(-5px);
        }

        /* Testimonial Scrollbar Hide */
        .testimonial-container::-webkit-scrollbar {
            display: none;
        }
        .testimonial-container {
            -ms-overflow-style: none;
            scrollbar-width: none;
        }

        /* Premium Enhanced Cursor */
        .cursor-dot {
            width: 5px;
            height: 5px;
            background-color: var(--accent);
            position: fixed;
            top: 0;
            left: 0;
            transform: translate(-50%, -50%);
            border-radius: 50%;
            z-index: 10001;
            pointer-events: none;
            transition: width 0.3s, height 0.3s, opacity 0.3s, background-color 0.3s;
        }

        .cursor-outline {
            width: 20px;
            height: 20px;
            border: 2px solid var(--accent);
            position: fixed;
            top: 0;
            left: 0;
            transform: translate(-50%, -50%);
            border-radius: 50%;
            z-index: 10000;
            pointer-events: none;
            mix-blend-mode: difference;
            transition: width 0.4s cubic-bezier(0.16, 1, 0.3, 1), 
                        height 0.4s cubic-bezier(0.16, 1, 0.3, 1), 
                        background 0.4s cubic-bezier(0.16, 1, 0.3, 1),
                        border-color 0.4s cubic-bezier(0.16, 1, 0.3, 1);
        }

        .cursor-hover {
            width: 60px;
            height: 60px;
            background-color: var(--accent-glow);
            border-color: var(--accent);
        }

        .cursor-hover-dot {
            width: 10px;
            height: 10px;
            background-color: #fff;
        }

        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
            font-family: 'Poppins', sans-serif;
            cursor: none !important;
        }

        html, body {
            max-width: 100vw;
            overflow-x: hidden;
        }

        html {
            scroll-behavior: smooth;
        }

        img {
            max-width: 100%;
            height: auto;
            display: block;
        }

        body {
            background-color: var(--white);
            color: var(--text-main);
            overflow-x: hidden;
            line-height: 1.6;
        }

        h1, h2, h3, .brand-name {
            font-family: 'Cormorant Garamond', serif;
            font-weight: 700;
        }

        section {
            padding: 120px 8%;
            position: relative;
        }

        /* Professional Background Pattern */
        section::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background-image: radial-gradient(rgba(45, 140, 255, 0.08) 1px, transparent 1px);
            background-size: 30px 30px;
            z-index: 0;
            pointer-events: none;
        }

        .container {
            max-width: 1200px;
            margin: 0 auto;
            position: relative;
            z-index: 1;
        }

        /* Official 3D Buttons & Visuals */
        .btn {
            padding: 16px 36px;
            border-radius: 100px !important;
            font-weight: 600;
            text-decoration: none;
            transition: var(--transition);
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 12px;
            font-size: 1rem;
            border: none;
            cursor: pointer;
        }

        .btn-primary {
            background: var(--accent-gradient);
            color: white !important;
            box-shadow: 0 10px 25px rgba(45, 140, 255, 0.2);
        }

        .btn-primary:hover {
            transform: translateY(-5px);
            box-shadow: 0 15px 35px rgba(45, 140, 255, 0.3);
        }

        .btn-outline {
            border: 2px solid var(--accent);
            color: var(--accent) !important;
            background: transparent;
        }

        .btn-outline:hover {
            background: var(--accent-gradient);
            color: white !important;
            border-color: transparent;
        }

        .btn-3d {
            position: relative;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 12px;
            padding: 14px 28px;
            border-radius: 100px !important;
            font-weight: 700;
            text-decoration: none;
            text-transform: uppercase;
            letter-spacing: 1px;
            transition: all 0.1s ease;
            cursor: pointer;
            border: none;
            color: white !important;
            box-shadow: 0 6px 0 rgba(0,0,0,0.1), 0 8px 15px rgba(0,0,0,0.05);
            z-index: 5;
        }

        .btn-3d:active {
            transform: translateY(4px);
            box-shadow: 0 2px 0 rgba(0,0,0,0.1), 0 4px 10px rgba(0,0,0,0.05);
        }

        .btn-insta-3d {
            background: linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%);
            box-shadow: 0 6px 0 #8a1363;
        }

        .btn-linkedin-3d {
            background: #0077b5;
            box-shadow: 0 6px 0 #005582;
        }

        .btn-whatsapp-3d {
            background: #25D366;
            box-shadow: 0 6px 0 #128C7E;
        }

        .btn-3d svg, .btn-3d i {
            width: 22px;
            height: 22px;
            font-size: 22px;
            stroke: currentColor;
            stroke-width: 2px;
            fill: none;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        /* Why Us: Refined Items */
        .why-item {
            position: relative;
            background: var(--card-bg);
            padding: 45px 35px;
            border-radius: 30px;
            box-shadow: var(--card-shadow);
            transition: var(--transition);
            z-index: 1;
            text-align: center;
            display: flex;
            flex-direction: column;
            align-items: center;
            border: 1px solid var(--border-color);
        }

        .why-item:hover {
            transform: translateY(-10px);
            box-shadow: var(--shadow-accent-glow);
            border-color: var(--accent);
        }

        .why-icon-wrapper {
            width: 80px;
            height: 80px;
            background: var(--bg-accent);
            border-radius: 20px;
            display: flex;
            align-items: center;
            justify-content: center;
            margin-bottom: 25px;
            font-size: 2rem;
            color: var(--accent);
            transition: var(--transition);
            position: relative;
            overflow: hidden;
        }

        .why-icon-wrapper::after {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: linear-gradient(45deg, transparent, rgba(255,255,255,0.2), transparent);
            transform: translateX(-100%);
            transition: 0.5s;
        }

        .why-item:hover .why-icon-wrapper {
            background: var(--accent-gradient);
            color: white;
            transform: scale(1.1) rotate(5deg);
        }

        .why-item:hover .why-icon-wrapper::after {
            transform: translateX(100%);
        }

        .why-3d-img {
            width: 90px;
            height: 90px;
            object-fit: contain;
            margin-bottom: 20px;
            transition: var(--transition);
            filter: drop-shadow(0 15px 15px rgba(0,0,0,0.1));
        }

        .why-item:hover .why-3d-img {
            transform: scale(1.15) translateY(-5px);
            filter: drop-shadow(0 20px 20px rgba(45, 140, 255, 0.3));
        }

        @keyframes float {
            0% { transform: translateY(0px) rotate(0deg); }
            50% { transform: translateY(-15px) rotate(5deg); }
            100% { transform: translateY(0px) rotate(0deg); }
        }

        /* Navbar */
        @keyframes liquidHeaderRefract {
            0% { background-position: 0% 50%; }
            50% { background-position: 100% 50%; }
            100% { background-position: 0% 50%; }
        }

        nav {
            position: fixed;
            top: 24px;
            left: 50%;
            transform: translateX(-50%);
            width: 90%;
            max-width: 1200px;
            padding: 12px 30px;
            z-index: 1000;
            display: flex;
            justify-content: space-between;
            align-items: center;
            border-radius: 100px;
            transition: all 0.5s cubic-bezier(0.16, 1, 0.3, 1);
            
            /* Unscrolled Liquid Glass: Dark base to contrast with cosmic video */
            background: linear-gradient(120deg, 
                rgba(15, 23, 42, 0.50) 0%, 
                rgba(15, 23, 42, 0.25) 25%, 
                rgba(45, 140, 255, 0.08) 50%, 
                rgba(15, 23, 42, 0.25) 75%, 
                rgba(15, 23, 42, 0.50) 100%
            );
            background-size: 200% 200%;
            animation: liquidHeaderRefract 8s ease infinite;

            backdrop-filter: blur(16px) saturate(160%) brightness(1.05);
            -webkit-backdrop-filter: blur(16px) saturate(160%) brightness(1.05);
            border: 1px solid rgba(255, 255, 255, 0.20);
            border-bottom: 1.5px solid rgba(45, 140, 255, 0.35);
            border-right: 1.5px solid rgba(45, 140, 255, 0.25);
            box-shadow: 
                0 15px 35px rgba(0, 0, 0, 0.35),
                inset 0 1px 1px rgba(255, 255, 255, 0.25),
                inset 0 -1px 1.5px rgba(45, 140, 255, 0.1);
        }

        /* Top shimmer line on glass pill */
        nav::before {
            content: '';
            position: absolute;
            top: 0; 
            left: 30px; 
            right: 30px;
            height: 1px;
            background: linear-gradient(90deg, 
                transparent, 
                rgba(255, 255, 255, 0.9) 30%, 
                rgba(45, 140, 255, 0.4) 60%, 
                rgba(255, 255, 255, 0.9) 75%, 
                transparent
            );
            border-radius: 50%;
            pointer-events: none;
            z-index: 1;
            transition: opacity 0.5s ease;
        }

        /* Scrolled Liquid Glass: Dynamic light/dark theme glass */
        nav.scrolled {
            top: 12px;
            padding: 8px 25px;
            background: var(--nav-scrolled-bg);
            background-size: 200% 200%;
            border: 1px solid var(--nav-scrolled-border);
            border-bottom: 1.5px solid var(--nav-scrolled-border-bottom);
            border-right: 1.5px solid var(--nav-scrolled-border-bottom);
            box-shadow: var(--nav-scrolled-shadow);
            backdrop-filter: blur(20px) saturate(180%);
            -webkit-backdrop-filter: blur(20px) saturate(180%);
        }

        nav.scrolled::before {
            opacity: 0.5;
            left: 20px;
            right: 20px;
        }

        .glass-card {
            background: var(--card-bg-glass);
            backdrop-filter: blur(15px);
            -webkit-backdrop-filter: blur(15px);
            border: 1px solid rgba(45, 140, 255, 0.1);
            border-radius: 24px;
            padding: 40px;
            transition: var(--transition);
            box-shadow: 0 10px 30px rgba(0,0,0,0.05);
        }
        
        .glass-card:hover {
            border-color: var(--accent);
            transform: translateY(-10px);
            box-shadow: var(--shadow-accent);
        }

        .logo-container {
            display: flex;
            align-items: center;
            gap: 12px;
            text-decoration: none;
        }

        .logo-img {
            width: 45px;
            height: 45px;
            border-radius: 50%;
            object-fit: cover;
        }

        .brand-name {
            font-size: 1.6rem;
            font-weight: 800;
            background: linear-gradient(135deg, #6366f1 0%, #2D8CFF 50%, #14b8a6 100%);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            text-transform: uppercase;
            letter-spacing: 1px;
        }

        .nav-links {
            display: flex;
            gap: 30px;
            align-items: center;
        }

        .nav-links a {
            text-decoration: none;
            color: rgba(255, 255, 255, 0.85); /* Default white on cosmic bg */
            font-weight: 500;
            transition: var(--transition);
            font-size: 0.95rem;
        }

        .nav-links a:hover {
            color: var(--accent);
        }



        .hamburger {
            display: none;
            cursor: pointer;
            color: rgba(255, 255, 255, 0.85);
            transition: var(--transition);
        }

        .close-menu {
            display: none;
        }

        /* Scrolled text and button icon overrides */
        nav.scrolled .nav-links a {
            color: var(--text-secondary);
        }

        nav.scrolled .nav-links a:hover {
            color: var(--accent);
        }



        nav.scrolled .hamburger {
            color: var(--text-main);
        }

        /* Hero Section Styling */
        #hero {
            height: 100vh;
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 110px 8% 20px;
            box-sizing: border-box;
            overflow: hidden;
            /* background: var(--hero-bg); Removed because it hides the dynamic z-index: -1 layers */
            position: relative;
            text-align: center;
        }

        #hero::after {
            content: '';
            position: absolute;
            bottom: 0;
            left: 0;
            width: 100%;
            height: 80px;
            display: block;
            background: linear-gradient(to bottom,
                rgba(var(--bg-secondary-rgb), 0) 0%,
                rgba(var(--bg-secondary-rgb), 0.15) 25%,
                rgba(var(--bg-secondary-rgb), 0.45) 50%,
                rgba(var(--bg-secondary-rgb), 0.8) 80%,
                var(--bg-secondary) 100%
            );
            z-index: 2;
            pointer-events: none;
            transition: background 0.4s ease;
        }



        .hero-content {
            position: relative;
            z-index: 3;
            max-width: 800px;
            text-align: center;
            display: flex;
            flex-direction: column;
            align-items: center;
            color: var(--text-main);
        }

        .hero-logo {
            width: 100px;
            height: 100px;
            border-radius: 50%;
            margin-bottom: 30px;
            border: 3px solid rgba(255, 215, 0, 0.5);
            box-shadow: 0 0 30px rgba(0,0,0,0.5);
        }

        .hero-content h1 {
            font-size: 5.5rem;
            line-height: 1.1;
            margin-bottom: 25px;
            color: var(--navy);
            font-family: 'Outfit', sans-serif;
            font-weight: 800;
            letter-spacing: -3px;
            text-shadow: 
                1px 1px 0px #e0f2fe, 
                2px 2px 0px #bae6fd, 
                3px 3px 0px #7dd3fc, 
                4px 4px 20px rgba(0, 168, 255, 0.15);
        }

        .hero-subtext {
            font-size: 1.4rem;
            color: var(--text-secondary);
            margin-bottom: 10px;
        }

        .hero-tagline {
            text-transform: uppercase;
            letter-spacing: 0.4em;
            color: var(--accent);
            font-weight: 600;
            font-size: 0.9rem;
            margin-bottom: 40px;
        }

        .hero-actions {
            display: flex;
            gap: 20px;
            justify-content: center;
        }

        .scroll-indicator {
            position: absolute;
            bottom: 30px;
            left: 50%;
            transform: translateX(-50%);
            z-index: 10;
            color: var(--accent);
            animation: bounce 2s infinite;
        }

        @keyframes bounce {
            0%, 20%, 50%, 80%, 100% {transform: translateX(-50%) translateY(0);}
            40% {transform: translateX(-50%) translateY(-10px);}
            60% {transform: translateX(-50%) translateY(-5px);}
        }

        /* Services */
        #services {
            background-color: var(--bg-secondary);
        }

        .section-header {
            text-align: center;
            margin-bottom: 60px;
        }

        .section-header h2 {
            font-size: 3rem;
            color: var(--navy);
            margin-bottom: 15px;
        }

        .section-header p {
            color: var(--text-secondary);
            font-size: 1.1rem;
            max-width: 600px;
            margin: 0 auto;
        }

        .services-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
            gap: 30px;
        }

        .service-card {
            padding: 50px 40px;
            text-align: center;
            height: 100%;
        }

        .service-icon {
            width: 80px;
            height: 80px;
            background: var(--bg-accent);
            border-radius: 20px;
            display: flex;
            align-items: center;
            justify-content: center;
            margin: 0 auto 30px;
            color: var(--accent);
            transition: var(--transition);
        }

        .service-card:hover .service-icon {
            background: var(--accent-gradient);
            color: var(--white);
            transform: scale(1.1) rotate(5deg);
        }

        .service-card h3 {
            font-size: 1.5rem;
            margin-bottom: 20px;
            color: var(--navy);
        }

        .service-card p {
            color: var(--text-secondary);
            margin-bottom: 30px;
        }

        .learn-more {
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 8px;
            color: var(--accent);
            font-weight: 600;
            text-decoration: none;
            transition: var(--transition);
        }

        .learn-more:hover {
            gap: 12px;
        }

        /* Portfolio */
        #portfolio {
            background-color: var(--bg-primary);
        }

        .filter-tabs {
            display: flex;
            justify-content: center;
            gap: 15px;
            margin-bottom: 50px;
            flex-wrap: wrap;
        }

        .filter-btn {
            padding: 10px 25px;
            border-radius: 30px;
            border: 1px solid var(--bg-accent);
            background: var(--bg-secondary);
            color: var(--text-secondary);
            cursor: pointer;
            font-weight: 500;
            transition: var(--transition);
        }

        .filter-btn.active, .filter-btn:hover {
            background: var(--accent-gradient);
            color: var(--white);
            border-color: transparent;
        }

        .portfolio-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
            gap: 30px;
        }

        .portfolio-card {
            position: relative;
            border-radius: 20px;
            overflow: hidden;
            height: 300px;
            cursor: pointer;
        }

        .portfolio-card img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: transform 0.6s cubic-bezier(0.4, 0, 0.2, 1);
        }

        .portfolio-overlay {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: rgba(255, 255, 255, 0.9);
            backdrop-filter: blur(8px);
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            opacity: 0;
            transition: var(--transition);
            padding: 30px;
            text-align: center;
            color: var(--text-main);
        }

        .portfolio-card:hover .portfolio-overlay {
            opacity: 1;
        }

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

        .portfolio-overlay h4 {
            font-size: 1.5rem;
            margin-bottom: 10px;
            font-family: 'Playfair Display', serif;
        }

        .portfolio-category {
            font-size: 0.85rem;
            text-transform: uppercase;
            letter-spacing: 0.1em;
            color: var(--accent);
            margin-bottom: 20px;
        }

        /* Why Us */
        #why-us {
            background: var(--bg-primary);
            border-top: 1px solid var(--border-color);
        }

        .why-grid {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 40px;
        }

        @media (max-width: 992px) {
            .why-grid {
                grid-template-columns: repeat(2, 1fr);
            }
        }
        @media (max-width: 1200px) {
            #case-studies-grid {
                grid-template-columns: repeat(2, 1fr) !important;
                gap: 20px !important;
            }
        }
        @media (max-width: 600px) {
            /* Global Section Compression */
            section {
                padding: 40px 5% !important;
            }
            section .section-header, 
            .container .section-header {
                margin-bottom: 40px !important;
                text-align: center !important;
                width: 100% !important;
                display: block !important;
                padding: 0 !important;
            }
            .section-header span, 
            .section-header h2, 
            .section-header p {
                display: block !important;
                width: 100% !important;
                max-width: 100% !important;
                margin-left: auto !important;
                margin-right: auto !important;
                text-align: center !important;
                float: none !important; /* Prevent floating */
                clear: both !important;
            }
            .section-header h2 {
                font-size: 2.0rem !important;
                margin-top: 10px !important;
                margin-bottom: 10px !important;
                line-height: 1.2 !important;
            }
            .section-header p {
                font-size: 0.9rem !important;
                padding: 0 10px !important;
                line-height: 1.4 !important;
            }

            /* Hero Optimization */
            #hero {
                min-height: 80vh !important;
                height: auto !important;
                padding: 100px 5% 60px !important;
            }
            #hero-main-title {
                font-size: 2.8rem !important;
                margin-bottom: 20px !important;
            }
            #hero-subtext {
                font-size: 0.95rem !important;
                margin-bottom: 30px !important;
                line-height: 1.5 !important;
            }
            #hero-ctas {
                flex-direction: column !important;
                gap: 12px !important;
            }
            #hero-ctas .btn {
                width: 100% !important;
                padding: 14px 20px !important;
                justify-content: center !important;
            }

            /* Grid & Card Compression */
            #case-studies-grid {
                display: flex !important;
                overflow-x: auto !important;
                scroll-snap-type: none !important; /* Disabled for smooth ticker */
                gap: 15px !important;
                padding-bottom: 15px !important;
                grid-template-columns: none !important;
                -webkit-overflow-scrolling: touch !important;
            }
            #case-studies-grid::-webkit-scrollbar {
                height: 4px !important;
            }
            #case-studies-grid::-webkit-scrollbar-thumb {
                background: var(--accent) !important;
                border-radius: 10px !important;
            }
            .case-study-card {
                flex: 0 0 85% !important; 
                scroll-snap-align: start !important;
                margin-bottom: 0 !important;
                padding: 10px !important; 
            }
            /* Fix hardcoded container height */
            .case-study-card div[style*="height: 250px"] {
                height: 110px !important; 
            }
            .case-study-card img {
                height: 100% !important;
                width: 100% !important;
                object-fit: cover !important;
            }
            .case-study-card div[style*="padding: 30px"] {
                padding: 10px 0 0 0 !important; 
            }
            .case-study-card div[style*="margin-bottom: 15px"] {
                margin-bottom: 4px !important;
            }
            .case-study-card h3 {
                font-size: 0.95rem !important;
                margin-bottom: 4px !important;
                line-height: 1.1 !important;
            }
            .case-study-card div[style*="margin-bottom: 25px"] {
                margin-bottom: 10px !important;
                gap: 2px !important;
            }
            .case-study-card p {
                font-size: 0.75rem !important;
                margin-bottom: 0 !important;
                line-height: 1.2 !important;
            }
            .case-study-card .btn {
                padding: 6px !important;
                font-size: 0.7rem !important;
                border-radius: 100px !important;
            }
            #portfolio {
                padding: 40px 5% !important;
            }
            .case-study-card span[style*="font-size: 0.7rem"] {
                font-size: 0.55rem !important;
                padding: 3px 8px !important;
            }
            
            .process-grid {
                grid-template-columns: 1fr !important;
                gap: 12px !important;
            }
            .why-grid {
                display: flex !important;
                overflow-x: auto !important;
                scroll-snap-type: none !important; /* Disabled for smooth ticker */
                gap: 15px !important;
                padding-bottom: 15px !important;
                grid-template-columns: none !important;
                -webkit-overflow-scrolling: touch !important;
            }
            .why-grid::-webkit-scrollbar {
                height: 4px !important;
            }
            .why-grid::-webkit-scrollbar-thumb {
                background: var(--accent) !important;
                border-radius: 10px !important;
            }
            .why-item {
                flex: 0 0 75% !important; /* Shows one card and a peek of the next */
                scroll-snap-align: start !important;
                margin-bottom: 0 !important;
                padding: 20px 15px !important;
                border-radius: 20px !important;
                text-align: center !important;
            }

            .process-card {
                padding: 15px 20px !important;
                border-radius: 15px !important;
                min-height: auto !important;
            }
            #insights-grid {
                display: flex !important;
                overflow-x: auto !important;
                scroll-snap-type: none !important; /* Disabled for smooth ticker */
                gap: 15px !important;
                padding-bottom: 15px !important;
                grid-template-columns: none !important;
                -webkit-overflow-scrolling: touch !important;
            }
            #insights-grid::-webkit-scrollbar {
                height: 4px !important;
            }
            #insights-grid::-webkit-scrollbar-thumb {
                background: var(--accent) !important;
                border-radius: 10px !important;
            }
            article.glass-card {
                flex: 0 0 80% !important;
                scroll-snap-align: start !important;
                margin-bottom: 0 !important;
                padding: 15px 10px !important;
                border-radius: 15px !important;
                text-align: center !important;
            }

            .process-card h3, .why-item h3, article.glass-card h3 {
                font-size: 0.9rem !important;
                margin-bottom: 5px !important;
            }
            .process-card p, .why-item p, article.glass-card p {
                font-size: 0.75rem !important;
                line-height: 1.3 !important;
            }
            
            /* Icon & Number adjustments */
            .process-card div[style*="font-size: 5rem"] {
                font-size: 2.2rem !important;
                top: 5px !important;
                right: 10px !important;
                opacity: 0.05 !important;
            }
            .process-card div[style*="width: 50px"] {
                width: 30px !important;
                height: 30px !important;
                font-size: 0.9rem !important;
                margin-bottom: 10px !important;
            }
            .why-icon-wrapper {
                width: 40px !important;
                height: 40px !important;
                font-size: 1.2rem !important;
                margin: 0 auto 10px !important;
            }
            article.glass-card div[style*="height: 200px"] {
                height: 80px !important;
                font-size: 1.5rem !important;
            }
            /* End Article Adjustment */

            /* Pricing Compression */
            .pricing-card {
                padding: 25px 20px !important;
                border-radius: 20px !important;
                margin-bottom: 20px !important;
                transform: none !important; /* Fix for scale(1.05) */
            }
            .pricing-card h3 {
                font-size: 1.1rem !important;
                margin-bottom: 5px !important;
            }
            .pricing-card div[style*="font-size: 3.2rem"], 
            .pricing-card div[style*="font-size: 3.8rem"],
            .pricing-card div[style*="font-size: 3.5rem"] {
                font-size: 1.8rem !important;
                margin-bottom: 15px !important;
            }
            .pricing-card ul {
                margin-bottom: 20px !important;
            }
            .pricing-card li {
                padding: 6px 0 !important;
                font-size: 0.75rem !important;
                line-height: 1.3 !important;
            }
            .pricing-card a.btn {
                padding: 10px 20px !important;
                font-size: 0.8rem !important;
            }

            /* About Section Compression */
            #about {
                padding: 60px 0 !important;
            }
            #about h2, #pricing h2 {
                font-size: 2.2rem !important;
                margin-top: 10px !important;
                margin-bottom: 20px !important;
            }
            #about p {
                font-size: 0.95rem !important;
                margin-bottom: 20px !important;
            }
            #about div[style*="display: flex"] {
                gap: 40px !important;
            }
            #about div[style*="min-width: 350px"] {
                min-width: 100% !important;
            }
            #about .glass-card {
                padding: 15px !important;
            }

            /* Services Section Compression */
            .partnership-grid {
                display: flex !important;
                overflow-x: auto !important;
                scroll-snap-type: none !important; /* Disabled for smooth ticker */
                gap: 15px !important;
                padding-bottom: 15px !important;
                grid-template-columns: none !important;
                -webkit-overflow-scrolling: touch !important;
            }
            .partnership-card {
                flex: 0 0 85% !important;
                scroll-snap-align: start !important;
                padding: 25px 20px !important;
                border-radius: 20px !important;
            }
            .partnership-card div[style*="width: 60px"] {
                width: 45px !important;
                height: 45px !important;
                font-size: 1.2rem !important;
                margin-bottom: 15px !important;
            }
            .partnership-card h3 {
                font-size: 1.1rem !important;
                margin-bottom: 10px !important;
            }
            .partnership-card p {
                font-size: 0.85rem !important;
                line-height: 1.4 !important;
            }

            /* Global Section Compression */
            section {
                padding: 25px 5% !important; /* Reduced from 40px */
            }
            section .section-header, 
            .container .section-header {
                margin-bottom: 25px !important; /* Reduced from 40px */
            }

            /* Team Section - All 3 in ONE screen */
            #team {
                padding: 15px 4% !important;
            }
            #team .section-header {
                margin-bottom: 15px !important;
            }
            #team .section-header h2 {
                font-size: 1.4rem !important;
                margin-bottom: 5px !important;
            }
            #team .section-header p {
                font-size: 0.75rem !important;
                margin-bottom: 0 !important;
            }
            #team .team-grid {
                display: flex !important;
                flex-direction: column !important;
                gap: 10px !important;
                padding: 0 !important;
            }
            #team .team-card {
                display: flex !important;
                flex-direction: row !important;
                align-items: center !important;
                width: 100% !important;
                padding: 15px !important;
                margin-bottom: 0 !important;
                border-radius: 20px !important;
                text-align: left !important;
                background: var(--bg-secondary) !important;
                gap: 15px !important;
                overflow: hidden !important;
                position: relative !important;
            }
            #team .team-img {
                width: 70px !important;
                height: 70px !important;
                min-width: 70px !important;
                border-radius: 50% !important;
                margin: 0 !important;
                border: 2px solid var(--accent) !important;
            }
            .team-card-content {
                flex: 1 !important;
                min-width: 0 !important;
                padding-right: 45px !important; /* Space for absolute socials */
            }
            #team .team-card h3, #team .team-card h4 {
                font-size: 0.9rem !important;
                margin: 0 0 2px 0 !important;
                color: var(--navy) !important;
            }
            #team .team-card .team-role {
                font-size: 0.65rem !important;
                margin-bottom: 4px !important;
                color: var(--accent) !important;
                font-weight: 700 !important;
            }
            #team .team-card p:not(.team-role) {
                font-size: 0.75rem !important;
                line-height: 1.3 !important;
                margin-bottom: 0 !important;
                display: -webkit-box !important;
                -webkit-line-clamp: 2 !important;
                -webkit-box-orient: vertical !important;
                overflow: hidden !important;
                opacity: 0.8 !important;
            }
            #team .team-socials {
                position: absolute !important;
                right: 15px !important;
                top: 50% !important;
                transform: translateY(-50%) !important;
                flex-direction: column !important;
                gap: 8px !important;
                margin: 0 !important;
            }
            #team .team-socials a {
                width: 28px !important;
                height: 28px !important;
                font-size: 0.8rem !important;
                background: var(--bg-primary) !important;
                box-shadow: 0 2px 5px rgba(0,0,0,0.1) !important;
            }
            /* FAQ Accordion Optimization */
            .faq-container {
                max-width: 95% !important;
                margin-top: 15px !important;
            }
            .faq-question {
                padding: 10px 12px !important;
            }
            .faq-question h4 {
                font-size: 0.85rem !important;
            }
            .faq-answer p {
                padding: 0 12px 12px 40px !important;
                font-size: 0.8rem !important;
            }

            /* Contact Form Optimization */
            #contact .glass-card {
                padding: 20px 15px !important;
                border-radius: 20px !important;
            }
            #contact .form-group {
                margin-top: 10px !important;
            }
            #contact div[style*="grid-template-columns: 1fr 1fr"] {
                grid-template-columns: 1fr !important; 
                gap: 10px !important;
            }
            #contact button.btn {
                margin-top: 15px !important;
                padding: 10px !important;
                font-size: 0.95rem !important;
            }
            .contact-flex {
                margin-top: 20px !important;
                gap: 20px !important;
            }

            /* About Section Compression */
            #about .container > div {
                gap: 30px !important;
            }
            #about h2 {
                font-size: 2rem !important;
                margin-top: 10px !important;
                margin-bottom: 15px !important;
            }
            #about p:not(.faq-answer p) {
                font-size: 0.9rem !important;
                line-height: 1.5 !important;
                margin-bottom: 20px !important;
            }
            #about div[style*="grid-template-columns: 1fr 1fr"] {
                grid-template-columns: 1fr !important; /* Stack vision/method */
                gap: 10px !important;
                margin-bottom: 20px !important;
            }
            #about .glass-card {
                padding: 20px !important;
            }
            #about .glass-card h4 {
                font-size: 1rem !important;
                margin-bottom: 5px !important;
            }
            #about .glass-card p {
                font-size: 0.75rem !important;
                margin-bottom: 0 !important;
            }
            #about a.btn-primary {
                padding: 12px 30px !important;
                font-size: 0.9rem !important;
                width: 100% !important;
                display: block !important;
                text-align: center !important;
            }
            /* Quote Box Compression */
            #about div[style*="padding: 50px"] {
                padding: 25px !important;
                border-radius: 25px !important;
            }
            #about div[style*="padding: 50px"] p {
                font-size: 0.95rem !important;
                line-height: 1.6 !important;
            }
            #about div[style*="padding: 50px"] div[style*="margin-top: 30px"] {
                margin-top: 15px !important;
            }
        }

        /* End of mobile overrides */

        .why-item {
            display: flex;
            flex-direction: column;
            gap: 15px;
        }

        .why-item i {
            color: var(--accent);
        }

        .why-item h3 {
            font-size: 1.3rem;
            color: var(--navy);
        }

        .why-item p {
            color: var(--text-secondary);
        }

        /* Stats */
        #stats {
            background-color: var(--white);
            padding: 80px 5%;
        }

        .stats-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
            gap: 40px;
            text-align: center;
        }

        .stat-item h2 {
            font-size: 4rem;
            color: var(--accent);
            margin-bottom: 5px;
            font-family: 'Inter', sans-serif;
            font-weight: 800;
        }

        .stat-item p {
            color: var(--text-secondary);
            font-weight: 600;
            text-transform: uppercase;
            letter-spacing: 0.1em;
            font-size: 0.9rem;
        }

        /* Pricing */
        #about {
            background-color: var(--bg-primary);
            color: var(--text-main);
        }
        
        .about-grid {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 80px;
            align-items: center;
        }

        .pricing-card {
            padding: 50px 40px;
            text-align: center;
            position: relative;
        }

        .pricing-card.popular {
            transform: scale(1.05);
            background: white;
            z-index: 2;
            border: 2px solid var(--accent);
        }

        .badge {
            position: absolute;
            top: 20px;
            right: 20px;
            background: var(--accent-gradient);
            color: white;
            padding: 5px 15px;
            border-radius: 20px;
            font-size: 0.75rem;
            font-weight: 700;
            text-transform: uppercase;
        }

        .plan-name {
            font-size: 1.2rem;
            font-weight: 700;
            color: var(--text-secondary);
            text-transform: uppercase;
            letter-spacing: 0.1em;
            margin-bottom: 10px;
        }

        .plan-desc {
            color: var(--text-secondary);
            font-size: 0.95rem;
            margin-bottom: 30px;
        }

        .plan-price {
            font-size: 3rem;
            font-weight: 800;
            color: var(--navy);
            margin-bottom: 30px;
        }

        .plan-features {
            list-style: none;
            text-align: left;
            margin-bottom: 40px;
        }

        .plan-features li {
            padding: 12px 0;
            border-bottom: 1px solid rgba(0,0,0,0.05);
            color: var(--text-secondary);
            display: flex;
            align-items: center;
            gap: 10px;
        }

        .plan-features li i {
            color: var(--accent);
            font-size: 1.1rem;
        }

        /* Team */
        #team {
            background-color: var(--white);
        }

        .team-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
            gap: 40px;
        }

        .team-card {
            padding: 40px;
            text-align: center;
        }

        .team-img {
            width: 150px;
            height: 150px;
            border-radius: 50%;
            margin: 0 auto 25px;
            border: 5px solid var(--bg-accent);
            overflow: hidden;
            background: #f0f7ff;
        }

        .team-img img {
            width: 100%;
            height: 100%;
            object-fit: cover;
        }

        .team-card h3 {
            font-size: 1.5rem;
            margin-bottom: 5px;
        }

        .team-role {
            color: var(--accent);
            font-weight: 600;
            font-size: 0.9rem;
            margin-bottom: 20px;
            text-transform: uppercase;
        }

        .team-socials {
            display: flex;
            justify-content: center;
            gap: 15px;
        }

        .team-socials a {
            width: 40px;
            height: 40px;
            border-radius: 50%;
            background: var(--bg-secondary);
            color: var(--navy);
            display: flex;
            align-items: center;
            justify-content: center;
            transition: var(--transition);
        }

        .team-socials a:hover {
            background: var(--accent-gradient);
            color: var(--white);
            transform: translateY(-3px);
        }

        /* Testimonials */
        #testimonials {
            background: linear-gradient(135deg, #E8F4FD 0%, #DAEEFF 100%);
        }

        .testimonial-carousel {
            max-width: 800px;
            margin: 0 auto;
            position: relative;
        }

        .testimonial-card {
            padding: 50px;
            text-align: center;
        }

        .quote-icon {
            color: var(--accent);
            opacity: 0.3;
            margin-bottom: 20px;
        }

        .testimonial-text {
            font-size: 1.4rem;
            font-style: italic;
            color: var(--navy);
            margin-bottom: 30px;
            line-height: 1.5;
        }

        .client-info h4 {
            font-size: 1.2rem;
            margin-bottom: 5px;
        }

        .client-info p {
            color: var(--text-secondary);
            font-size: 0.9rem;
        }

        .star-rating {
            color: #FFD700;
            margin-bottom: 15px;
        }

        /* Contact */
        #contact {
            background-color: var(--white);
        }

        .contact-flex {
            display: flex;
            gap: 60px;
            flex-wrap: wrap;
        }

        .contact-form-container {
            flex: 1.5;
            min-width: 280px;
        }

        .contact-info-container {
            flex: 1;
            min-width: 300px;
        }

        .form-group {
            margin-bottom: 20px;
        }

        .form-group label {
            display: block;
            margin-bottom: 8px;
            font-weight: 600;
            color: var(--text-secondary);
        }

        .form-control {
            width: 100%;
            padding: 15px 20px;
            border-radius: 12px;
            border: 1px solid #E1E8F0;
            background: #F8FAFC;
            transition: var(--transition);
            font-size: 1rem;
        }

        .form-control:focus {
            outline: none;
            border-color: var(--accent);
            background: white;
            box-shadow: 0 0 10px rgba(91, 184, 245, 0.1);
        }

        .contact-info-item {
            display: flex;
            gap: 20px;
            margin-bottom: 35px;
        }

        .info-icon {
            width: 50px;
            height: 50px;
            background: var(--bg-secondary);
            border-radius: 12px;
            display: flex;
            align-items: center;
            justify-content: center;
            color: var(--accent);
            flex-shrink: 0;
        }

        .info-content h4 {
            margin-bottom: 5px;
            color: var(--navy);
        }

        .info-content p {
            color: var(--text-secondary);
        }

        .social-links {
            display: flex;
            gap: 15px;
            margin-top: 40px;
        }

        .social-btn {
            width: 45px;
            height: 45px;
            border-radius: 50%;
            background: var(--navy);
            color: white;
            display: flex;
            align-items: center;
            justify-content: center;
            transition: var(--transition);
        }

        .social-btn:hover {
            background: var(--accent-gradient);
            transform: translateY(-3px);
        }

        /* Footer */
        footer {
            background-color: var(--navy);
            color: white;
            padding: 80px 5% 40px;
            text-align: center;
            position: relative;
        }

        footer::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 4px;
            background: linear-gradient(90deg, transparent, var(--accent), transparent);
            box-shadow: 0 0 20px var(--accent);
        }

        .footer-logo {
            width: 80px;
            height: 80px;
            border-radius: 50%;
            margin: 0 auto 20px;
        }

        .footer-tagline {
            text-transform: uppercase;
            letter-spacing: 0.4em;
            color: var(--accent);
            margin-bottom: 40px;
            font-size: 0.8rem;
        }

        .footer-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
            gap: 40px;
            text-align: left;
            max-width: 1000px;
            margin: 0 auto 60px;
        }

        .footer-col h4 {
            margin-bottom: 25px;
            font-size: 1.2rem;
            position: relative;
            padding-bottom: 10px;
        }

        .footer-col h4::after {
            content: '';
            position: absolute;
            bottom: 0;
            left: 0;
            width: 30px;
            height: 2px;
            background: var(--accent);
        }

        .footer-col ul {
            list-style: none;
        }

        .footer-col ul li {
            margin-bottom: 12px;
        }

        .footer-col ul li a {
            color: rgba(255,255,255,0.7);
            text-decoration: none;
            transition: var(--transition);
        }

        .footer-col ul li a:hover {
            color: var(--accent);
            padding-left: 5px;
        }

        .bottom-bar {
            padding-top: 40px;
            border-top: 1px solid rgba(255,255,255,0.1);
            color: rgba(255,255,255,0.5);
            font-size: 0.9rem;
        }

        /* WhatsApp Button */
        .whatsapp-fixed {
            position: fixed;
            bottom: 30px;
            right: 30px;
            width: 60px;
            height: 60px;
            background: #25D366;
            color: white;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            box-shadow: 0 5px 20px rgba(37, 211, 102, 0.4);
            z-index: 999;
            transition: var(--transition);
            text-decoration: none;
        }

        /* Project Modal */
        .modal {
            display: none;
            position: fixed;
            z-index: 9999;
            left: 0;
            top: 0;
            width: 100%;
            height: 100%;
            background-color: rgba(255, 255, 255, 0.95);
            backdrop-filter: blur(15px);
            -webkit-backdrop-filter: blur(15px);
            overflow-y: auto;
        }
        .modal-content {
            margin: 50px auto;
            width: 90%;
            max-width: 1100px;
            padding: 50px;
            position: relative;
            background: white;
            border-radius: 30px;
            box-shadow: 0 30px 100px rgba(0,0,0,0.1);
            border: 1px solid rgba(0,0,0,0.05);
            animation: modalIn 0.6s cubic-bezier(0.23, 1, 0.32, 1);
        }
        @keyframes modalIn {
            from { opacity: 0; transform: translateY(50px) scale(0.95); }
            to { opacity: 1; transform: translateY(0) scale(1); }
        }
        .close-modal {
            position: absolute;
            right: 30px;
            top: 20px;
            font-size: 30px;
            cursor: pointer;
            color: var(--navy);
            width: 40px;
            height: 40px;
            display: flex;
            align-items: center;
            justify-content: center;
            transition: 0.3s;
        }
        .close-modal:hover { transform: rotate(90deg); color: var(--accent); }
        .modal-body {
            display: grid;
            grid-template-columns: 1.2fr 1fr;
            gap: 50px;
        }
        .modal-gallery { width: 100%; }
        .main-modal-img { 
            width: 100%; 
            border-radius: 20px; 
            margin-bottom: 20px; 
            box-shadow: 0 15px 40px rgba(0,0,0,0.1);
            transition: 0.5s;
        }
        .thumbnail-row { display: flex; gap: 15px; }
        .modal-thumb { 
            width: 100px; 
            height: 70px; 
            object-fit: cover; 
            border-radius: 12px; 
            cursor: pointer; 
            border: 3px solid transparent; 
            transition: 0.3s;
            opacity: 0.6;
        }
        .modal-thumb:hover, .modal-thumb.active { opacity: 1; border-color: var(--accent); }
        .modal-info h3 { font-size: 2.5rem; margin-bottom: 20px; color: var(--navy); }
        .modal-info p { font-size: 1.1rem; color: var(--text-secondary); line-height: 1.8; margin-bottom: 35px; }

        @media (max-width: 850px) {
            .modal-body { grid-template-columns: 1fr; gap: 30px; }
            .modal-content { padding: 30px; margin: 20px auto; }
            .modal-info h3 { font-size: 1.8rem; }
        }

        /* Mobile Menu & Responsiveness */
        @media (max-width: 992px) {
            #hero {
                flex-direction: column;
                justify-content: center;
                padding: 120px 5% 50px;
                height: auto;
                min-height: 100vh;
            }

            #hero::after {
                height: 50px;
            }

            .hero-content {
                max-width: 100%;
                text-align: center;
                align-items: center;
                margin-bottom: 20px;
                z-index: 3;
            }

            .nav-links {
                position: fixed;
                top: 0;
                right: -100%;
                height: 100vh;
                width: 80%;
                max-width: 350px;
                background: var(--bg-primary); 
                backdrop-filter: blur(15px);
                -webkit-backdrop-filter: blur(15px);
                flex-direction: column;
                justify-content: center;
                transition: 0.5s cubic-bezier(0.77, 0, 0.175, 1);
                box-shadow: -20px 0 50px rgba(0,0,0,0.3);
                border-left: 1px solid var(--border-color);
                z-index: 2000;
            }

            .nav-links a {
                color: var(--text-main) !important;
                font-size: 1.3rem;
                padding: 15px 0;
                width: 100%;
                text-align: center;
                border-bottom: 1px solid var(--border-color);
            }

            .nav-links a:hover {
                color: var(--accent);
                background: rgba(255, 255, 255, 0.05);
            }

            .nav-links .btn {
                margin-top: 20px;
                width: 80%;
                align-self: center;
            }

            .nav-links.active {
                right: 0;
            }

            .close-menu {
                position: absolute;
                top: 25px;
                left: 25px;
                color: var(--text-main);
                cursor: pointer;
                display: block;
                padding: 10px;
                transition: 0.3s;
            }

        .hamburger {
            display: none;
            cursor: pointer;
            z-index: 2001;
            font-size: 1.5rem;
            color: var(--text-main);
        }

        .close-menu {
            display: none;
            cursor: pointer;
            transition: 0.3s;
        }

        .close-menu:hover {
            color: var(--accent);
            transform: scale(1.1);
        }
        }
        @media (max-width: 1200px) {
            #case-studies-grid {
                grid-template-columns: repeat(2, 1fr) !important;
                gap: 20px !important;
            }
        }
        /* Deleted redundant block start */
        /* Deleted redundant block middle */
            .services-grid, 
            #insights .container > div[style*="display: grid"], 
            #partnership .container > div[style*="display: grid"] {
                display: flex !important;
                overflow-x: auto !important;
                flex-wrap: nowrap !important;
                gap: 15px !important;
                padding-bottom: 20px !important;
                -webkit-overflow-scrolling: touch;
                scrollbar-width: none; /* Hide scrollbar */
            }
            .services-grid::-webkit-scrollbar, 
            #insights .container > div::-webkit-scrollbar, 
            #partnership .container > div::-webkit-scrollbar {
                display: none;
            }
            .service-card, article.glass-card, #partnership .glass-card {
                flex: 0 0 75% !important; /* Each card takes 75% width */
                padding: 25px !important;
                border-radius: 20px !important;
                text-align: left !important;
                background: var(--card-bg-glass) !important;
                backdrop-filter: blur(10px) !important;
                border: 1px solid var(--border-color) !important;
                position: relative !important;
                overflow: hidden !important;
                background-image: radial-gradient(circle at 2px 2px, rgba(0,0,0,0.03) 1px, transparent 0) !important;
                background-size: 20px 20px !important; /* Dot pattern */
            }
            /* Every 3rd card gets a subtle accent background */
            .service-card:nth-child(3n), article.glass-card:nth-child(3n), #partnership .glass-card:nth-child(3n) {
                background: linear-gradient(135deg, var(--card-bg) 0%, var(--bg-accent) 100%) !important;
                background-image: 
                    radial-gradient(at 0% 0%, var(--accent-glow) 0, transparent 50%), 
                    radial-gradient(at 100% 100%, var(--accent-glow) 0, transparent 50%) !important;
            }
            .service-icon, article.glass-card div[style*="height: 100px"], #partnership .glass-card div[style*="font-size: 2.5rem"] {
                width: 45px !important;
                height: 45px !important;
                font-size: 1.2rem !important;
                margin-bottom: 15px !important;
            }
            .service-card h3, article.glass-card h3, #partnership .glass-card h3 {
                font-size: 1.1rem !important;
                margin-bottom: 10px !important;
                line-height: 1.3 !important;
                word-break: normal !important;
            }
            .service-card p, article.glass-card p, article.glass-card a, article.glass-card span, #partnership .glass-card p {
                display: block !important; /* Showing text again since we have space now */
                font-size: 0.85rem !important;
                color: #64748b !important;
            }
            .service-card p, article.glass-card p, article.glass-card a, article.glass-card span, #partnership .glass-card p {
                display: none !important; 
            }
            .process-grid, .why-grid {
                grid-template-columns: repeat(2, 1fr) !important;
                gap: 15px !important;
            }
            .process-card div[style*="font-size: 5rem"] {
                font-size: 2.5rem !important;
                top: 5px !important;
                right: 5px !important;
            }
            .process-card div[style*="width: 50px"] {
                width: 35px !important;
                height: 35px !important;
                font-size: 1rem !important;
                margin-bottom: 15px !important;
            }
            .why-3d-img {
                width: 40px !important;
                height: 40px !important;
                margin-bottom: 10px !important;
            }
            section {
                padding: 60px 5% !important;
            }
        }

        @media (max-width: 768px) {
            /* Disable heavy custom cursor on mobile */
            .cursor-dot, .cursor-outline {
                display: none !important;
            }
            * {
                cursor: auto !important;
            }
            .services-grid, .portfolio-grid, .why-grid, .pricing-grid, .team-grid {
                grid-template-columns: 1fr !important;
            }
            .contact-flex {
                flex-direction: column !important;
                gap: 40px !important;
            }
            .pricing-card.popular {
                transform: scale(1) !important;
                margin: 20px 0;
            }
        }
        @media (max-width: 1200px) {
            #case-studies-grid {
                grid-template-columns: repeat(2, 1fr) !important;
                gap: 20px !important;
            }
        }
        @media (max-width: 600px) {
            #case-studies-grid {
                grid-template-columns: 1fr !important;
                gap: 20px !important;
            }

            .process-grid, .why-grid, #insights > .container > div, #partnership > .container > div {
                grid-template-columns: repeat(2, 1fr) !important;
                gap: 15px !important;
            }
            .process-card, .why-item, article.glass-card, #partnership .glass-card {
                padding: 20px 15px !important;
                border-radius: 20px !important;
            }
            .process-card h3, .why-item h3, article.glass-card h3, #partnership .glass-card h3 {
                font-size: 0.95rem !important;
                margin-bottom: 10px !important;
            }
            .process-card p, .why-item p, article.glass-card p, #partnership .glass-card p {
                font-size: 0.7rem !important;
                line-height: 1.4 !important;
            }
            article.glass-card div[style*="height: 200px"], #partnership .glass-card div[style*="font-size: 2.5rem"] {
                height: 100px !important;
                font-size: 1.5rem !important;
            }
            .process-card div[style*="font-size: 5rem"] {
                font-size: 2.5rem !important;
                top: 5px !important;
                right: 5px !important;
            }
            .process-card div[style*="width: 50px"] {
                width: 35px !important;
                height: 35px !important;
                font-size: 1rem !important;
                margin-bottom: 15px !important;
            }
            .why-3d-img {
                width: 40px !important;
                height: 40px !important;
                margin-bottom: 10px !important;
            }
            section {
                padding: 60px 5% !important;
            }
        }

        @media (max-width: 600px) {
            .hero-content h1 {
                font-size: 2.5rem;
                line-height: 1.2;
                letter-spacing: -1.5px;
                font-family: 'Outfit', sans-serif;
                text-shadow: 1px 1px 0px #e0f2fe, 2px 2px 5px rgba(0,0,0,0.05);
            }
            .hero-content h1 br {
                display: block; /* Keep breaks for mobile stacking */
            }
            .hero-logo-mark img {
                height: 60px !important;
            }
            .hero-badge {
                font-size: 0.7rem !important;
                padding: 6px 15px !important;
            }
            .hero-subtext {
                font-size: 0.95rem;
                margin-bottom: 30px;
            }
            .hero-actions, #hero-ctas {
                flex-direction: column !important;
                width: 100%;
                gap: 15px !important;
                padding: 0 10% !important;
            }
            .hero-actions .btn, #hero-ctas .btn {
                width: 100% !important;
                padding: 14px 25px !important;
                font-size: 0.95rem !important;
                justify-content: center !important;
            }
            .float-btn {
                width: 48px !important;
                height: 48px !important;
                font-size: 20px !important;
            }
            .floats, .floats-left {
                bottom: 15px !important;
                gap: 10px !important;
            }
            .floats { right: 15px !important; }
            .floats-left { left: 15px !important; }
        }
        /* Consolidated & Optimized Mobile View Fixes */
        @media (max-width: 992px) {
            section {
                padding: 80px 5% !important;
            }
            .hero-content {
                max-width: 100% !important;
                text-align: center !important;
                align-items: center !important;
                margin-top: 50px;
            }
            .hero-content h1 {
                font-size: 3.5rem !important;
            }
            .nav-links {
                position: fixed;
                top: 0;
                right: -100%;
                height: 100vh;
                width: 80%;
                max-width: 300px;
                background: var(--bg-primary);
                flex-direction: column;
                justify-content: center;
                align-items: center;
                padding: 100px 40px;
                box-shadow: -10px 0 30px rgba(0,0,0,0.1);
                transition: 0.5s cubic-bezier(0.16, 1, 0.3, 1);
                z-index: 2000;
                gap: 25px;
            }
            .nav-links.active {
                right: 0;
            }
            .nav-links a {
                font-size: 1.2rem;
                font-weight: 700;
            }
            .close-menu {
                display: block !important;
                position: absolute;
                top: 30px;
                right: 30px;
                font-size: 1.8rem;
                color: var(--text-main);
            }
            .hamburger {
                display: block !important;
                font-size: 1.5rem;
                cursor: pointer;
                color: var(--text-main);
            }
            .desktop-only {
                display: none !important;
            }
            .hero-video-container {
                display: none !important;
            }
            .services-grid, .portfolio-grid, .why-grid, .pricing-grid, #pipeline > .container > div {
                grid-template-columns: 1fr !important;
                gap: 20px !important;
            }
            .hero-actions .btn {
                width: 100%;
                max-width: 300px;
            }
            #featured-work {
                padding: 30px 4% !important;
            }
            #featured-work .container > div {
                gap: 15px !important;
            }
            #featured-work h2 {
                font-size: 1.4rem !important;
                line-height: 1.2 !important;
                margin: 10px 0 !important;
                overflow-wrap: break-word !important;
                word-wrap: break-word !important;
                hyphens: auto !important;
            }
            #featured-work p {
                font-size: 0.85rem !important;
                line-height: 1.4 !important;
                margin-bottom: 15px !important;
                overflow-wrap: break-word !important;
            }
            #featured-work .container > div > div {
                min-width: 100% !important;
                flex: 1 1 100% !important;
            }
            #featured-work div[style*="gap: 20px"] {
                gap: 8px !important;
                margin-bottom: 15px !important;
            }
            #featured-work div[style*="align-items: flex-start"] {
                gap: 10px !important;
                margin-bottom: 10px !important;
            }
            #featured-work h4 {
                font-size: 0.9rem !important;
            }
            #featured-work .btn-primary {
                padding: 10px 20px !important;
                font-size: 0.8rem !important;
                width: 100% !important;
                text-align: center !important;
            }
            #featured-work div[style*="height: 250px"], #featured-work .glass-card {
                padding: 5px !important;
                border-radius: 15px !important;
            }
        }
        
        @media (max-width: 600px) {
            .process-card div[style*="font-size: 5rem"] {
                font-size: 2.5rem !important;
            }
            /* About/Mission Mobile Fix */
            #about h2 {
                font-size: 2.2rem !important;
                line-height: 1.1 !important;
            }
            #about div[style*="min-width: 350px"] {
                min-width: 100% !important;
            }
            #about .glass-card {
                padding: 30px 20px !important;
            }
            .team-grid {
                grid-template-columns: 1fr !important;
            }
            #faq .glass-card {
                padding: 20px !important;
            }
            /* Services & Portfolio Mobile Fix */
            .partnership-grid, .portfolio-grid {
                grid-template-columns: 1fr !important;
                gap: 20px !important;
            }
            .partnership-card {
                padding: 35px 25px !important;
                transform: none !important;
            }
            .partnership-card h3 {
                font-size: 1.1rem !important;
            }
            .case-study-card div[style*="padding: 30px"] {
                padding: 20px !important;
            }
            .case-study-card img {
                height: 200px !important;
            }
            /* Stats Horizontal Fix */
            .stats-grid {
                grid-template-columns: repeat(4, 1fr) !important;
                gap: 10px !important;
            }
            .stat-item h2 {
                font-size: 1.5rem !important;
                margin-bottom: 5px !important;
            }
            .stat-item p {
                font-size: 0.6rem !important;
                letter-spacing: 0 !important;
            }
            /* Contact Form Mobile Fix */
            #contact .glass-card {
                padding: 20px 15px !important;
                border-radius: 20px !important;
            }
            #contact div[style*="grid-template-columns: 1fr 1fr"] {
                grid-template-columns: 1fr !important;
                gap: 10px !important;
            }
            #contact .form-group {
                margin-top: 10px !important;
                margin-bottom: 5px !important;
            }
            #contact label {
                font-size: 0.75rem !important;
                margin-bottom: 4px !important;
            }
            #contact .form-control {
                padding: 10px !important;
                font-size: 0.9rem !important;
                border-radius: 8px !important;
                margin-top: 4px !important;
            }
            #contact .btn-primary {
                margin-top: 20px !important;
                padding: 12px !important;
                font-size: 0.95rem !important;
            }
            #contact h2 {
                font-size: 1.6rem !important;
                line-height: 1.2 !important;
            }
            #contact p {
                font-size: 0.85rem !important;
            }
            .contact-flex {
                gap: 20px !important;
                margin-top: 30px !important;
            }
            .contact-info-item {
                padding: 15px !important;
                gap: 15px !important;
            }
            .info-icon {
                width: 40px !important;
                height: 40px !important;
                font-size: 1rem !important;
            }
            .info-content h4 {
                font-size: 0.7rem !important;
            }
            .info-content p {
                font-size: 0.85rem !important;
            }
            /* Disclaimer Mobile Fix */
            #disclaimer .glass-card {
                padding: 25px 15px !important;
            }
            #disclaimer div[style*="display: flex; gap: 30px"] {
                flex-direction: column !important;
                gap: 20px !important;
                align-items: center !important;
                text-align: center !important;
            }
            #disclaimer div[style*="min-width: 280px"] {
                min-width: unset !important;
                width: 100% !important;
            }
            #disclaimer div[style*="grid-template-columns: repeat(auto-fit, minmax(200px, 1fr))"] {
                grid-template-columns: 1fr !important;
                gap: 25px !important;
            }
        }
/* Lenis Smooth Scroll Base */
html.lenis, html.lenis body {
  height: auto;
}
.lenis.lenis-smooth {
  scroll-behavior: auto !important;
}
.lenis.lenis-smooth [data-lenis-prevent] {
  overscroll-behavior: contain;
}
.lenis.lenis-stopped {
  overflow: hidden;
}
.lenis.lenis-smooth iframe {
  pointer-events: none;
}

/* === STYLESHEET 2 (Helper/Dynamic Styles) === */
                .process-card {
                    background: var(--card-bg);
                    padding: 50px 40px;
                    border-radius: 30px;
                    border: 1px solid var(--border-color);
                    transition: 0.6s cubic-bezier(0.16, 1, 0.3, 1);
                    box-shadow: var(--card-shadow);
                    position: relative;
                    overflow: hidden;
                }
                .process-card:hover {
                    background: var(--bg-accent) !important;
                    border: 2px solid var(--accent) !important;
                    box-shadow: var(--shadow-accent-glow) !important;
                    transform: translateY(-20px) !important;
                }
                .process-card:hover h3 { color: var(--navy) !important; }
                .process-card:hover p { color: var(--text-main) !important; }
                .process-card:hover .process-step-num { color: var(--bg-primary) !important; opacity: 0.3 !important; }
                .process-card:hover .process-icon-box { background: var(--bg-primary) !important; box-shadow: 0 5px 15px rgba(0,0,0,0.2) !important; }
                
                .partnership-card {
                    background: var(--card-bg-white) !important;
                    transition: 0.4s !important;
                }
                .partnership-card:hover {
                    background: var(--bg-accent) !important;
                    border: 2px solid var(--accent) !important;
                    box-shadow: var(--shadow-accent-glow) !important;
                    transform: translateY(-10px) !important;
                }

                @media (max-width: 992px) {
                    .process-grid { grid-template-columns: repeat(2, 1fr) !important; }
                }
                @media (max-width: 600px) {
                    .process-grid { grid-template-columns: 1fr !important; }
                    .process-card:hover { transform: scale(1.05) !important; }
                }
        /* Desktop Team Grid Fix - Wrapped in Media Query */
        @media (min-width: 601px) {
            #team .team-grid {
                display: grid !important;
                grid-template-columns: repeat(3, 1fr) !important;
                gap: 30px !important;
                max-width: 1200px !important;
                margin: 0 auto !important;
            }
            #team .team-card {
                padding: 30px !important;
                text-align: center !important;
            }
            #team .team-img {
                width: 180px !important;
                height: 180px !important;
                border-radius: 50% !important;
                margin: 0 auto 20px !important;
                overflow: hidden !important;
                border: 4px solid var(--accent) !important;
            }
        }
        #team .team-img img {
            width: 100% !important;
            height: 100% !important;
            object-fit: cover !important;
        }

/* ════════════════════════════════════════
   COLORFUL BORDER SHIMMER ANIMATION
   (Thin rainbow gradient border on all cards & sections)
════════════════════════════════════════ */
@keyframes borderShimmer {
    0% { background-position: 0% 50%; }
    50% { background-position: 100% 50%; }
    100% { background-position: 0% 50%; }
}

@keyframes borderGlow {
    0% { opacity: 0.4; }
    50% { opacity: 0.8; }
    100% { opacity: 0.4; }
}

/* Shared shimmer border base */
.service-card,
.portfolio-card,
.pricing-card,
.team-card,
.glass-card,
.process-card,
.insight-card,
.stat-card,
.faq-item,
.partnership-card,
.case-study-card,
.why-item,
#hero,
section {
    position: relative;
}

.service-card::before,
.portfolio-card::before,
.pricing-card::before,
.team-card::before,
.glass-card::before,
.process-card::before,
.insight-card::before,
.partnership-card::before,
.case-study-card::before,
.why-item::before,
.faq-item::before {
    content: '';
    position: absolute;
    inset: -1px;
    border-radius: inherit;
    padding: 1.5px;
    background: linear-gradient(
        135deg,
        #ff5c00, #ff007a, #ffd700, #2D8CFF, #ff8a00, #ff5c00
    );
    background-size: 300% 300%;
    animation: borderShimmer 6s ease infinite;
    will-change: background-position;
    -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    pointer-events: none;
    z-index: 1;
    opacity: 0.85; /* Always visible premium shimmer (BBM-style) */
    transition: opacity 0.6s ease, filter 0.3s ease;
}

.service-card:hover::before,
.portfolio-card:hover::before,
.pricing-card:hover::before,
.team-card:hover::before,
.glass-card:hover::before,
.process-card:hover::before,
.insight-card:hover::before,
.partnership-card:hover::before,
.case-study-card:hover::before,
.why-item:hover::before,
.faq-item:hover::before {
    opacity: 1;
    filter: brightness(1.2); /* Enhance colorful neon glow on hover! */
}

/* Always-visible subtle shimmer on section dividers */
.section-header::after {
    content: '';
    display: block;
    width: 80px;
    height: 3px;
    margin: 15px auto 0;
    border-radius: 10px;
    background: linear-gradient(
        90deg,
        #ff6b6b, #feca57, #2D8CFF, #ffd700,
        #2D8CFF, #ff8a00, #ff6b6b
    );
    background-size: 300% 100%;
    animation: borderShimmer 4s ease infinite;
    will-change: background-position;
}

/* ════════════════════════════════════════
   GSAP SCROLL-TRIGGER ENTRANCE CLASSES
   (Initial hidden states overridden to show elements immediately)
   ════════════════════════════════════════ */
.gs-fade-up,
.gs-fade-left,
.gs-fade-right,
.gs-scale-in,
.gs-blur-in,
.gs-stagger > * {
    opacity: 1 !important;
    transform: none !important;
    filter: none !important;
}