    * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }

        :root {
            --primary: #0091ff;
            --dark: #000000;
            --light: #ffffff;
            --gray: #666;
            --card-bg: #fafafa;
        }

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

        body {
            font-family: 'Inter Tight', sans-serif;
            overflow-x: hidden;
            width: 100%;
            max-width: 100vw;
            position: relative;
        }

        /* Mobile scroll fix - allow normal scrolling when ScrollSmoother is disabled */
        /* #smooth-wrapper.mobile-scroll {
            height: auto;
            overflow: visible;
            overflow-x: hidden;
        }

        #smooth-wrapper.mobile-scroll #smooth-content {
            position: relative;
            transform: none !important;
        } */

        /* Header */
        header {
            position: fixed;
            top: 0;
            left: 0;
            right: 0;
            z-index: 1000;
            background:black;
            padding: 1.2rem 5%;
            display: flex;
            justify-content: space-between;
            align-items: center;
            height:80px;
        }

        .logo {
            font-size: 1.5rem;
            color: var(--light);
            font-weight: 600;
            letter-spacing: 0.5px;
            display: flex;
            align-items: center;
            gap: 0.5rem;
            overflow: visible;
            cursor: pointer;
        }

        .logo img {
            height: 280px;
            position: absolute;
            width: auto;
        }

        nav {
            display: flex;
            gap: 3rem;
            align-items: center;
            position: absolute;
            left: 50%;
            transform: translateX(-50%);
        }

        nav a {
            font-family: "Bebas Neue", sans-serif;
            color: var(--light);
            text-decoration: none;
            font-weight: 500;
            font-size: 1.2rem;
            transition: color 0.3s;
            position: relative;
        }

        /* Dropdown Menu Styles */
        .nav-dropdown {
            position: relative;
        }

        .nav-dropdown > .service-link {
            display: flex;
            align-items: center;
            gap: 0.3rem;
            cursor: pointer;
        }

        .dropdown-arrow {
            transition: transform 0.3s ease;
            margin-top: 2px;
        }

        .nav-dropdown.active .dropdown-arrow {
            transform: rotate(180deg);
        }

        .dropdown-menu {
            position: absolute;
            top: calc(100% + 20px);
            left: 50%;
            transform: translateX(-50%);
            background: linear-gradient(45deg, rgb(0, 0, 0) 0%, rgb(3, 3, 3) 45%, #242638 100%);
            border-radius: 18px;
            min-width: 240px;
            padding: 0;
            opacity: 0;
            visibility: hidden;
            transition: all 0.3s ease;
            box-shadow: 0 10px 40px rgba(0, 0, 0, 0.3);
            overflow:hidden;
        }

        .nav-dropdown.active .dropdown-menu {
            opacity: 1;
            visibility: visible;
            top: calc(100% + 10px);
        }

        .dropdown-item {
            display: flex;
            gap: 0.75rem;
            padding: 0.85rem 1.5rem;
            color: rgba(255, 255, 255, 0.9);
            text-decoration: none;
            font-family: 'Inter Tight', sans-serif;
            font-size: 0.95rem;
            font-weight: 500;
            text-align: left;
            justify-content: flex-start;
        }

        .dropdown-item:hover {
            background:rgba(255, 255, 255, 0.1) !important;
        }

        .dropdown-item svg {
            flex-shrink: 0;
            opacity: 0.8;
            transition: opacity 0.2s ease;
        }


        .header-cta {
            display: flex;
            align-items: center;
            gap: 1rem;
        }

  /*      .services-overlay {
            min-height: 100vh;
            width: 100%;
            position: fixed;
            inset:0;
            top:80px;
            background:rgba(0,0,0,0.2);
            backdrop-filter: blur(5px);
            opacity:0;
            will-change:opacity, transform;
            transition: opacity 0.3s;
        }

        .services-overlay.active {
            animation: fade-in-overlay 300ms linear forwards;
        }
        @keyframes fade-in-overlay {
            from {
                opacity: 0;
            } to {
            opacity: 1;
                  }
        }*/

        .services-menu {
            height:500px;
            min-width: 100%;
            background:var(--dark);
            position:absolute;
        }

        .phone {
            background: transparent;
            color: var(--light);
            font-weight: 600;
            border: 2px solid var(--light);
            padding: 0.7rem 1.8rem;
            border-radius: 50px;
            text-decoration: none;
            font-size: 0.9rem;
            display: flex;
            justify-content: space-between;
            align-items: center;
            gap: 10px;
            transition: all 400ms ease;
            white-space: nowrap;
        }

        .phone svg {
            transition: transform 400ms ease;
        }

        .phone:hover {
            background: var(--light);
            color: black;
        }

        .phone:hover > svg {
            fill: black;
            transform: translateX(15px);
        }

        .mobile-menu {
            display: flex;
            justify-content: space-between;
            align-items: center;
        }

        /* Mobile Menu */
        .mobile-menu-toggle {
            display: none;
            flex-direction: column;
            gap: 6px;
            cursor: pointer;
            z-index: 1001;
            position: relative;
            width: 30px;
            height: 24px;
            justify-content: center;
        }

        .mobile-menu-toggle span {
            width: 100%;
            height: 3px;
            background: var(--light);
            transition: all 0.3s ease;
            border-radius: 2px;
            position: absolute;
        }

        .getQuoteBtn{
            cursor: pointer;

        }

        .mobile-menu-toggle span:nth-child(1) {
            top: 0;
        }

        .mobile-menu-toggle span:nth-child(2) {
            top: 50%;
            transform: translateY(-50%);
        }

        .mobile-menu-toggle span:nth-child(3) {
            bottom: 0;
        }

        .mobile-menu-toggle.active span:nth-child(1) {
            top: 50%;
            transform: translateY(-50%) rotate(45deg);
        }

        .mobile-menu-toggle.active span:nth-child(2) {
            opacity: 0;
        }

        .mobile-menu-toggle.active span:nth-child(3) {
            bottom: 50%;
            transform: translateY(50%) rotate(-45deg);
        }

        .mobile-menu {
            position: fixed;
            top: -100%;
            left: 0;
            width: 100%;
            height: 100vh;
            background: var(--dark);
            z-index: 999;
            display: flex;
            flex-direction: column;
            justify-content: center;
            align-items: center;
            gap: 3rem;
            transition: top 0.6s cubic-bezier(0.68, -0.55, 0.265, 1.55);
        }

        .mobile-menu.active {
            top: 0;
        }

        .mobile-menu nav {
            position: static;
            transform: none;
            flex-direction: column;
            gap: 2.5rem;
            align-items: center;
            display: flex;
            margin-top: 50px;
        }

        .mobile-menu nav a {
            font-size: 2.5rem;
            font-weight: 400;
            color: rgb(240, 234, 234) !important;
            text-transform: uppercase;
            letter-spacing: 2px;
            opacity: 0;
            transform: translateY(-30px);
            transition: all 0.3s ease;
            text-decoration: none;
            display: block;
        }

        .mobile-menu.active nav a {
            opacity: 1;
            transform: translateY(0);
        }

        .mobile-menu.active nav > a:nth-child(1) { transition-delay: 0.1s; }
        .mobile-menu.active .mobile-menu-dropdown { transition-delay: 0.2s; }
        .mobile-menu.active .mobile-menu-dropdown .mobile-services-toggle { 
            opacity: 1;
            transform: translateY(0);
            transition-delay: 0.2s;
        }
        .mobile-menu.active nav > a:nth-child(3) { transition-delay: 0.3s; }

        .mobile-menu nav a::after {
            display: none;
        }

        .mobile-menu .phone {
            opacity: 0;
            transform: translateY(-30px);
            transition: all 0.3s ease 0.6s;
            font-size: 1.2rem;
            padding: 1rem 2.5rem;
        }

        .mobile-menu.active .phone {
            opacity: 1;
            transform: translateY(0);
        }

        /* Mobile Submenu Styles */
        .mobile-menu-dropdown {
            display: flex;
            flex-direction: column;
            align-items: center;
            width: 100%;
        }

        .mobile-services-toggle {
            display: flex;
            align-items: center;
            gap: 0.5rem;
            cursor: pointer;
        }

        .mobile-dropdown-arrow {
            transition: transform 0.3s ease;
        }

        .mobile-menu-dropdown.active .mobile-dropdown-arrow {
            transform: rotate(180deg);
        }

        .mobile-submenu {
            max-height: 0;
            overflow: hidden;
            transition: max-height 0.4s ease;
            display: flex;
            flex-direction: column;
            width: 100%;
            gap: 0;
        }

        .mobile-menu-dropdown.active .mobile-submenu {
            max-height: 500px;
            margin-top: 1rem;
        }

        .mobile-submenu-link {
            display: flex;
            align-items: center;
            gap:10px;
            font-size: 1.5rem !important;
            font-weight: 400 !important;
            color: rgba(255, 255, 255, 0.5) !important;
            text-transform: none !important;
            letter-spacing: 1px !important;
            padding: 0.75rem 2rem;
            text-decoration: none;
            opacity: 0;
            transform: translateY(-20px);
            transition: all 0.3s ease;
            width: auto;
        }

        .mobile-menu-dropdown.active .mobile-submenu-link {
            opacity: 1;
            transform: translateY(0);
        }

        .mobile-menu-dropdown.active .mobile-submenu-link:nth-child(1) { transition-delay: 0.1s; }
        .mobile-menu-dropdown.active .mobile-submenu-link:nth-child(2) { transition-delay: 0.2s; }
        .mobile-menu-dropdown.active .mobile-submenu-link:nth-child(3) { transition-delay: 0.3s; }
        .mobile-menu-dropdown.active .mobile-submenu-link:nth-child(4) { transition-delay: 0.4s; }
        .mobile-menu-dropdown.active .mobile-submenu-link:nth-child(5) { transition-delay: 0.5s; }

        .mobile-submenu-link svg {
            flex-shrink: 0;
            opacity: 0.8;
            margin-right:5px;
        }

        /* Hero Section */
        .hero {
            height: 100vh;
            background: var(--dark);
            background-image: 
            radial-gradient(circle at center, transparent 0%, var(--dark) 70%),
            linear-gradient(rgba(41, 43, 41, 0.7) .1em, transparent .1em), 
            linear-gradient(90deg, rgba(40, 43, 40, 0.7) .1em, transparent .1em);
            background-size: 100% 100%, 3em 3em, 3em 3em;
            display: flex;
            align-items: center;
            justify-content: center;
            color: var(--light);
            position: relative;
            overflow: hidden;
        }

        .hero-content {
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            text-align: center;
            position: relative;
            z-index: 2;
            max-width: 900px;
            padding: 0 5%;
        }

        .hero-subtitle {
            font-family: "Bebas Neue", sans-serif;
            font-size: 1.5rem;
            font-weight: 300;
            letter-spacing: 2px;
            color: var(--light);
            margin-bottom: 1rem;
        }

        .hero-tagline {
            font-size: 5rem;
            line-height: 1.1;
            margin-bottom: 0.5rem;
            font-weight: 400;
            letter-spacing: -1px;
        }

        .hero-subtext {
            font-size: 1.2rem;
            font-weight: 400;
            color: rgba(255, 255, 255, 0.9);
            max-width: 700px;
            margin-block: 1.5rem;
            line-height: 1.5;
        }

        .hero-description {
            font-size: 1.1rem;
            font-weight: 400;
            line-height: 1.7;
            margin-bottom: 2.5rem;
            max-width: 550px;
        }

        .hero-image {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            z-index: 0;
        }

        .hero-slide {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
        }

        .hero-slide img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            object-position: center;
        }

        .hero-slide::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            background: rgba(0, 0, 0, 0.5);
            z-index: 1;
        }

        .hero-slide.active {
            z-index: 1;
        }


        .hero-cta {
            display: flex;
            gap: 1.5rem;
            position: relative;
            z-index: 3;
        }

        .btn {
            padding: 1rem 2rem;
            font-size: 1rem;
            font-weight: 500;
            text-decoration: none;
            border-radius: 50px;
            transition: all 0.3s ease;
            font-family: 'Inter Tight', sans-serif;
            display: inline-block;
            position: relative;
            overflow: hidden;
        }

        .btn .arrow {
            display: inline-block;
            transition: transform 0.3s ease;
            margin-left: 0.3rem;
        }

        .btn-primary {
            background: var(--light);
            color: var(--dark);
            border: 2px solid var(--light);
            display: flex; justify-content: center; align-items: center;
        }

        .btn-primary:hover .arrow {
            transform: translateX(5px);
        }

        .btn-secondary {
            background: transparent;
            color: var(--light);
            border: 2px solid var(--light);
            display: flex; justify-content: center; align-items: center; gap:10px;
            position: relative;
            transition: color 1s ease;
        }

        .btn-secondary::before {
            content: '';
            inset: 0;
            height: 100%;
            width: 100%;
            background: white;
            position: absolute;
            clip-path: circle(0% at 50% 50%);
            transition: clip-path 1s ease;
            z-index: -1;
        }

        .btn-secondary:hover::before {
                clip-path: circle(100% at 50% 50%);
            }
        .btn-secondary:hover {
            color:black;
        }

        .btn-secondary > svg {
            transition: fill 1s ease;
        }

        .btn-secondary:hover > svg {
            fill: black;
        } 

        @keyframes animate-svg {
            0%, 100% {
                transform: translateY(0);
            }
            50% {
                transform: translateY(-10px); /* adjust distance as needed */
            }
}

        .scroll-indicator {
            position: absolute;
            bottom: 3rem;
            left: 50%;
            transform: translateX(-50%);
            opacity: 0;
        }

        .scroll-indicator span {
            display: block;
            width: 24px;
            height: 40px;
            border: 2px solid var(--light);
            border-radius: 20px;
            position: relative;
        }

        .scroll-indicator span::before {
            content: '';
            position: absolute;
            top: 8px;
            left: 50%;
            transform: translateX(-50%);
            width: 4px;
            height: 8px;
            background: var(--light);
            border-radius: 2px;
            animation: scroll 2s infinite;
        }

        @keyframes scroll {
            0% { opacity: 1; transform: translateX(-50%) translateY(0); }
            100% { opacity: 0; transform: translateX(-50%) translateY(15px); }
        }

        /* Reviews Section */
        .reviews-section {
            background: var(--light);
            padding: 8rem 5%;
            position: relative;
            overflow: hidden;
        }

        .reviews-heading {
            font-size: 4rem;
            font-weight: 500;
            color: var(--dark);
            text-align: center;
            margin-bottom: 4rem;
            line-height: 1.2;
        }

        .reviews-container {
            max-width: 1200px;
            margin: 0 auto;
            position: relative;
            overflow: hidden;
            height: 600px;
            user-select: none;
            -webkit-user-select: none;
            -moz-user-select: none;
            -ms-user-select: none;
            touch-action: pan-y; /* Allow vertical scrolling but capture horizontal swipes */
            cursor: url('./images/hand-shake-cursor.svg') 32 32, auto;
        }

        .reviews-track {
            display: flex;
            gap: 3rem;
            height: 100%;
            position: relative;
        }

        .review-card {
            min-width: 100%;
            height: 100%;
            background: var(--card-bg);
            padding: 3rem;
            border-radius: 20px;
            box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
            display: flex;
            flex-direction: column;
            justify-content: space-between;
            opacity: 0;
            filter: blur(10px);
            position: absolute;
            will-change:opacity filter;
            top: 0;
            left: 0;
        }

        .review-card.active {
            opacity: 1;
            filter: blur(0px);
            position: relative;
            will-change:opacity filter;
        }

        .review-stars {
            font-size: 1.5rem;
            color: #FFD700;
            margin-bottom: 1.5rem;
            letter-spacing: 2px;
        }

        .review-text {
            font-size: 2.0rem;
            line-height: 1.8;
            color: var(--dark);
            margin-bottom: 2rem;
            font-weight: 400;
            flex-grow: 1;
            overflow: hidden;
            display: -webkit-box;
            -webkit-line-clamp: 8;
            line-clamp: 8;
            -webkit-box-orient: vertical;
        }

        .review-author {
            border-top: 1px solid #e0e0e0;
            padding-top: 1.5rem;
            display: flex;
            align-items: center;
            gap: 1rem;
        }

        .review-author-avatar {
            width: 60px;
            height: 60px;
            border-radius: 50%;
            overflow: hidden;
            flex-shrink: 0;
            background: #f5f5f5;
        }

        .review-author-avatar img {
            width: 100%;
            height: 100%;
            object-fit: cover;
        }

        .review-author-info {
            flex: 1;
        }

        /* Fallback for reviews without avatar wrapper */
        .review-author > .review-author-name {
            flex: 1;
        }

        .review-author-name {
            font-size: 1.1rem;
            font-weight: 600;
            color: var(--dark);
            margin-bottom: 0.3rem;
        }

        .review-author-company {
            font-family: "Bebas Neue", sans-serif;
            font-size: 0.95rem;
            color: var(--gray);
            font-weight: 400;
        }

        .reviews-controls {
            display: flex;
            justify-content: space-between;
            align-items: center;
            max-width: 1200px;
            margin: 3rem auto 0;
            padding: 0 5%;
        }

        .reviews-dots {
            display: flex;
            gap: 0.8rem;
        }

        .review-dot {
            width: 12px;
            height: 12px;
            border-radius: 50%;
            background: rgba(0, 0, 0, 0.2);
            cursor: pointer;
            transition: all 0.3s ease;
        }

        .review-dot:hover {
            background: rgba(0, 0, 0, 0.4);
            transform: scale(1.2);
        }

        .review-dot.active {
            background: var(--primary);
            width: 30px;
            border-radius: 6px;
        }

        .reviews-nav {
            display: flex;
            gap: 1rem;
        }

        .review-nav-btn {
            width: 50px;
            height: 50px;
            border-radius: 50%;
            border: 2px solid var(--dark);
            background: transparent;
            cursor: pointer;
            display: flex;
            align-items: center;
            justify-content: center;
            transition: all 0.3s ease;
        }

        .review-nav-btn:hover {
            background: var(--dark);
        }

        .review-nav-btn:hover svg {
            fill: var(--light);
        }

        .review-nav-btn svg {
            transition: fill 0.3s ease;
        }

        /* Get In Touch Section */
        .get-in-touch-section {
            background: var(--dark);
            padding: 8rem 5%;
            position: relative;
        }

        .get-in-touch-wrapper {
            max-width: 1400px;
            margin: 0 auto;
        }

        .get-in-touch-hero {
            font-size: 6rem;
            font-weight: 400;
            color: var(--light);
            text-align: center;
            margin-bottom: 6rem;
            line-height: 1.1;
            letter-spacing: -2px;
            position: relative;
            display: inline-block;
            width: 100%;
        }

        .hero-arrow-indicator {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 60px;
            height: 60px;
            border-radius: 50%;
            background: var(--primary);
            margin-left: 1rem;
            vertical-align: middle;
            cursor: pointer;
            transition: all 0.3s ease;
            position: relative;
            z-index: 10;
        }

        .hero-arrow-indicator svg {
            transition: transform 0.5s cubic-bezier(0.68, -0.55, 0.265, 1.55);
            transform: rotate(45deg);
        }

        .hero-arrow-indicator:hover {
            background: var(--light);
            transform: scale(1.1);
        }

        .hero-arrow-indicator:hover svg {
            fill: var(--dark);
            transform: rotate(0deg);
        }


        .get-in-touch-content {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 6rem;
            align-items: start;
        }

        .get-in-touch-left {
            color: var(--light);
        }

        .get-in-touch-description {
            font-size: 1.2rem;
            color: rgba(255, 255, 255, 0.8);
            line-height: 1.8;
            margin-bottom: 3rem;
        }

        .get-in-touch-email-alt {
            font-size: 1.1rem;
            color: rgba(255, 255, 255, 0.7);
            line-height: 1.6;
            margin-bottom: 1rem;
        }

        .get-in-touch-phone-alt {
            font-size: 1.1rem;
            color: rgba(255, 255, 255, 0.7);
            line-height: 1.6;
            margin-bottom: 1rem;
        }

        .get-in-touch-hours {
            font-size: 1.1rem;
            color: rgba(255, 255, 255, 0.7);
            line-height: 1.8;
        }

        .email-link {
            color: var(--primary);
            text-decoration: none;
            border-bottom: 2px solid var(--primary);
            transition: all 0.3s ease;
        }

        .email-link:hover {
            color: var(--light);
            border-bottom-color: var(--light);
        }

        .get-in-touch-right {
            background: transparent;
        }

        .get-in-touch-form {
            display: flex;
            flex-direction: column;
            gap: 1.5rem;
        }

        .form-field-group {
            position: relative;
        }

        textarea {
            resize: none !important;
        }

        .form-field-group input,
        .form-field-group textarea,
        .form-field-group select {
            width: 100%;
            padding: 1rem 0;
            border: none;
            border-bottom: 2px solid rgba(255, 255, 255, 0.2);
            background: transparent;
            font-size: 1rem;
            font-family: 'Inter Tight', sans-serif;
            color: var(--light);
            transition: all 0.3s ease;
            outline: none;
        }

        .form-field-group input::placeholder,
        .form-field-group textarea::placeholder {
            color: rgba(255, 255, 255, 0.5);
        }

        .form-field-group select {
            cursor: pointer;
            appearance: none;
            background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24px' viewBox='0 -960 960 960' width='24px' fill='%23ffffff'%3E%3Cpath d='M480-344 240-584l56-56 184 184 184-184 56 56-240 240Z'/%3E%3C/svg%3E");
            background-repeat: no-repeat;
            background-position: right center;
            background-size: 24px;
            padding-right: 2rem;
        }

        .form-field-group select option {
            background: var(--dark);
            color: var(--light);
        }

        .form-field-group input:focus,
        .form-field-group textarea:focus,
        .form-field-group select:focus {
            border-bottom-color: var(--primary);
        }

        .form-field-group textarea {
            resize: vertical;
            min-height: 120px;
            font-family: 'Inter Tight', sans-serif;
        }

        .btn-touch-submit {
            background: var(--light);
            color: var(--dark);
            border: none;
            padding: 1.2rem 2.5rem;
            border-radius: 50px;
            font-size: 1rem;
            font-weight: 600;
            font-family: 'Inter Tight', sans-serif;
            cursor: pointer;
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 0.8rem;
            transition: all 0.3s ease;
            margin-top: 1rem;
            width: fit-content;
        }

        .btn-touch-submit:hover {
            background: rgba(255, 255, 255, 0.9);
            color: var(--dark);
            box-shadow: 0 4px 12px rgba(255, 255, 255, 0.2);
        }

        .btn-touch-submit:hover svg {
            fill: var(--dark);
            transform: translateX(5px);
        }

        .btn-touch-submit svg {
            transition: all 0.3s ease;
            fill: var(--dark);
        }

        /* Services Section */
        .services-section {
            background: var(--dark);
            min-height: 500vh;
            position: relative;
            padding: 0;
        }

        .services-container {
            position: sticky;
            top: 0;
            height: 100vh;
            display: flex;
            align-items: center;
            justify-content: center;
            overflow: hidden;
        }

        .services-content {
            max-width: 1200px;
            width: 100%;
            padding: 0 5%;
            position: relative;
            display: flex;
            align-items: center;
            justify-content: center;
            flex-direction: column;
        }

        .services-heading {
            max-width: 600px;
            width: 80%;
            height: auto;
            color: var(--light);
            position: absolute;
            top: 200px;
            left: 50%;
            transform: translateX(-50%);
            z-index: 1;
            overflow: visible;
        }

        .services-strokes {
            stroke: var(--light);
        }

        .service-item {
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            width: 100%;
            max-width: 900px;
            text-align: left;
            opacity: 0;
            visibility: hidden;
        }

    .mobile-learn-more-btn {
        margin-top: 2rem;
        cursor: pointer;
        font-size: 1.4rem;
        border-radius: 16px;
        border: none;
        padding: 2px;
        background: radial-gradient(circle 80px at 80% -10%, #ffffff, #181b1b);
        position: relative;
        min-width:300px;
    }
    .mobile-learn-more-btn::after {
        content: "";
        position: absolute;
        width: 65%;
        height: 60%;
        border-radius: 120px;
        top: 0;
        right: 0;
        box-shadow: 0 0 20px #ffffff38;
        z-index: -1;
    }

        .blob1 {
            position: absolute;
            width: 70px;
            height: 100%;
            border-radius: 16px;
            bottom: 0;
            left: 0;
            background: radial-gradient(
                    circle 60px at 0% 100%,
                    #3fe9ff,
                    #0000ff80,
                    transparent
            );
            box-shadow: -10px 10px 30px #0051ff2d;
        }

        .inner {
            padding: 14px 25px;
            border-radius: 14px;
            color: #fff;
            z-index: 3;
            position: relative;
            background: radial-gradient(circle 80px at 80% -50%, #777777, #0f1111);
        }
        .inner::before {
            content: "";
            width: 100%;
            height: 100%;
            left: 0;
            top: 0;
            border-radius: 14px;
            background: radial-gradient(
                    circle 60px at 0% 100%,
                    #00e1ff1a,
                    #0000ff11,
                    transparent
            );
            position: absolute;
        }


    .service-item.active {
            opacity: 1;
            visibility: visible;
        }

        .service-number {
            font-size: 8rem;
            font-weight: 700;
            color: rgba(255, 255, 255, 0.05);
            line-height: 1;
            margin-bottom: 1rem;
            font-family: 'Inter Tight', sans-serif;
            letter-spacing: -3px;
            text-align: left;
        }


        .service-title {
            font-family: "Bebas Neue", sans-serif;
            font-size: 4.5rem;
            font-weight: 400;
            color: var(--light);
            margin-bottom: 2rem;
            line-height: 1.2;
            letter-spacing: -2px;
            text-align: left;
        }

        .service-description {
            font-size: 1.3rem;
            color: rgba(255, 255, 255, 0.7);
            line-height: 1.8;
            max-width: 700px;
            font-weight: 400;
            text-align: left;
            margin-bottom: 2.5rem;
        }

        .service-features {
            list-style: none;
            padding: 0;
            margin: 0;
            max-width: 700px;
            counter-reset: feature-counter;
        }

        .service-feature-item {
            font-size: 1.1rem;
            color: var(--gray);
            line-height: 1.8;
            margin-bottom: 1rem;
            padding-left: 2.5rem;
            position: relative;
            font-weight: 400;
            counter-increment: feature-counter;
        }

        .service-feature-item:last-child {
            margin-bottom: 0;
        }

        .service-feature-item::before {
            content: counter(feature-counter);
            position: absolute;
            left: 0;
            color: rgba(255, 255, 255, 0.5);
            font-weight: 600;
            font-size: 0.9rem;
            width: 2rem;
            display: flex;
            align-items: center;
            justify-content: flex-start;
            transition: color 0.3s ease;
        }

        .service-feature-item:hover::before {
            color: rgba(255, 255, 255, 1);
        }

        /* Stats Section */
        .stats-section {
            background: var(--light);
            padding: 8rem 5%;
            display: grid;
            grid-template-columns: 1fr 1.5fr;
            gap: 5rem;
            align-items: center;
            place-items: center;
            overflow-x: hidden;
            width: 100%;
            max-width: 100vw;
            position: relative;
        }

        .stats-section > .marquee-wrapper {
            grid-column: 1 / -1;
            width: 100%;
            margin-top: 4rem;
        }

        .stats-left {
            display: flex;
            flex-direction: column;
            gap: 4rem;
            background: #f6f6f6;
            padding: 4rem 3rem;
            z-index: 100;
            min-width:450px;
        }

        .stat-item {
            border-bottom: 1px solid #e0e0e0;
            padding-bottom: 2rem;
        }

        .stat-item:last-child {
            border-bottom: none;
            padding-bottom: 0;
        }

        .stat-number {
            font-size: 4rem;
            font-weight: 700;
            color: var(--dark);
            margin-bottom: 0.5rem;
            line-height: 1;
        }

        .stat-label {
            font-family: "Bebas Neue", sans-serif;
            font-size: 1.1rem;
            color: var(--gray);
            font-weight: 400;
        }

        .stats-right {
            display: flex;
            flex-direction: column;
            gap: 3rem;
            z-index: 100;
        }

        .stats-image {
            background: #f5f5f5;
            overflow: hidden;
            width: 100%;
            aspect-ratio: 4/3;
            max-width: 600px;
            height:500px;
            overflow: hidden;

            box-shadow:  5px 5px 10px #bebebe,
             -5px -5px 10px #ffffff;
        }
        .stats-image img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: transform 400ms ease;
            object-position: top;
            filter: grayscale(50%);
        }

        .stats-image img:hover {
                transform: scale(1.05);
        }
        .stats-content h2 {
            font-size: 4rem;
            font-weight: 500;
            color: var(--dark);
            margin-bottom: 1.5rem;
            line-height: 1.2;
        }

        .stats-content p {
            font-size: 1.1rem;
            color: var(--gray);
            line-height: 1.8;
            margin-bottom: 2.5rem;
        }

        .stats-cta {
            display: flex;
            gap: 1.5rem;
        }

        .btn-dark {
            background: var(--dark);
            color: var(--light);
            border: 2px solid var(--dark);
        }

        .btn-dark:hover {
            background: transparent;
            color: var(--dark);
            transform: translateY(-2px);
        }

        .btn-light {
            background: transparent;
            color: var(--dark);
            border: 2px solid var(--dark);
        }

        .btn-light:hover {
            background: var(--dark);
            color: var(--light);
            transform: translateY(-2px);
        }

        /* Trusted By Bar */
        .trusted-bar {
            background: #fafafa;
            padding: 2rem 5%;
            display: flex;
            align-items: center;
            gap: 3rem;
            border-top: 1px solid #e0e0e0;
            border-bottom: 1px solid #e0e0e0;
        }

        .trusted-bar span {
            color: var(--gray);
            font-weight: 500;
            text-transform: uppercase;
        }

        .trusted-logos {
            display: flex;
            gap: 3rem;
            align-items: center;
            flex: 1;
        }

        .trusted-logo {
            color: var(--gray);
            font-weight: 600;
            font-size: 0.95rem;
            display: flex;
            align-items: center;
            gap: 0.5rem;
            will-change:opacity;
        }

        /* Location Bar */
        .location-bar {
            background: var(--dark);
            color: var(--light);
            padding: 1.5rem 5%;
            text-align: center;
            font-size: 0.9rem;
        }

        /* Contact Form Overlay */
        .contact-overlay {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100vh;
            z-index: 10000;
            pointer-events: none;
            opacity: 0;
            background: rgba(0, 0, 0, 0.7);
            backdrop-filter: blur(5px);
        }

        .contact-overlay.active {
            pointer-events: all;
        }

        .contact-form-panel {
            position: absolute;
            top: 0;
            right: 0;
            width: 50%;
            height: 100vh;
            background: var(--light);
            box-shadow: -10px 0 50px rgba(0, 0, 0, 0.5);
            transform: translateX(100%);
            display: flex;
            flex-direction: column;
            overflow-y: auto;
            overflow-x: hidden;
        }

        .contact-form-panel::-webkit-scrollbar {
            width: 8px;
        }

        .contact-form-panel::-webkit-scrollbar-track {
            background: rgba(255, 255, 255, 0.1);
        }

        .contact-form-panel::-webkit-scrollbar-thumb {
            background: rgba(255, 255, 255, 0.3);
            border-radius: 4px;
        }

        .contact-form-panel::-webkit-scrollbar-thumb:hover {
            background: rgba(255, 255, 255, 0.5);
        }

        .contact-close-btn {
            position: absolute;
            top: 2rem;
            right: 2rem;
            width: 48px;
            height: 48px;
            background: var(--dark);
            border: none;
            border-radius: 50%;
            cursor: pointer;
            display: flex;
            align-items: center;
            justify-content: center;
            z-index: 10001;
            transition: all 0.3s ease;
        }

        .contact-close-btn:hover {
            background: rgba(0, 0, 0, 0.8);
            transform: rotate(90deg);
        }

        .contact-form-content {
            padding: 6rem 4rem 4rem;
            margin: 0 auto;
            width: 100%;
        }

        .contact-form-title {
            font-size: 3.5rem;
            font-weight: 400;
            color: var(--dark);
            margin-bottom: 3rem;
            line-height: 1.2;
            letter-spacing: -1px;
        }

        .contact-form-subtitle {
            font-size: 1.1rem;
            color: rgba(255, 255, 255, 0.7);
            margin-bottom: 3rem;
            line-height: 1.6;
            display: none;
        }

        .contact-form {
            display: flex;
            flex-direction: column;
            gap: 2rem;
        }

        .form-row {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 1.5rem;
        }

        .form-group {
            display: flex;
            flex-direction: column;
            gap: 0.8rem;
        }

        .form-group label {
            font-size: 0.95rem;
            font-weight: 600;
            color: var(--dark);
            letter-spacing: 0.5px;
        }

        .form-group input,
        .form-group textarea {
            width: 100%;
            padding: 1rem 1.5rem;
            background: #f5f5f5;
            border: 2px solid transparent;
            border-radius: 12px;
            color: var(--dark);
            font-size: 1rem;
            font-family: 'Inter Tight', sans-serif;
            transition: all 0.3s ease;
        }

        .form-group input::placeholder,
        .form-group textarea::placeholder {
            color: rgba(0, 0, 0, 0.4);
        }

        .form-group input:focus,
        .form-group textarea:focus {
            outline: none;
            border-color: var(--dark);
            background: #fff;
        }

        .form-group textarea {
            resize: vertical;
            min-height: 150px;
        }

        .contact-form-footer {
            display: flex;
            justify-content: space-between;
            align-items: center;
            margin-top: 1rem;
        }

        .contact-email-text {
            font-size: 0.95rem;
            color: rgba(0, 0, 0, 0.6);
            margin: 0;
            font-family: "Bebas Neue", sans-serif; 
            
        }

        .contact-email-link {
            color: var(--primary);
            text-decoration: none;
            font-weight: 600;
            transition: color 0.3s ease;
            margin-left: 1rem;
            font-family: 'Inter Tight', sans-serif;
        }

        .btn-submit {
            background: var(--dark);
            color: var(--light);
            border: 2px solid var(--dark);
            padding: 1.2rem 2.5rem;
            font-size: 1rem;
            font-weight: 600;
            margin-top: 0;
            cursor: pointer;
            transition: all 0.3s ease;
            display: flex;
            align-items: center;
            gap: 0.8rem;
            border-radius: 50px;
        }

        /* Mobile Responsive */
        @media (max-width: 943px) {
            .contact-form-panel {
                width: 100%;
            }

            .contact-form-content {
                padding: 5rem 2rem 3rem;
            }

            .contact-form-title {
                font-size: 2.5rem;
            }

            .contact-close-btn {
                top: 1.5rem;
                right: 1.5rem;
                width: 40px;
                height: 40px;
            }

            .form-row {
                grid-template-columns: 1fr;
                gap: 2rem;
            }

            .contact-form-footer {
                flex-direction: column;
                gap: 1.5rem;
                align-items: flex-start;
            }

            .contact-email-text {
                font-size: 0.9rem;
            }

            .btn-submit {
                width: 100%;
                justify-content: center;
            }
        }

        /* Responsive */
        @media (max-width: 943px) {
            header {
                padding: 1rem 5%;
                overflow: hidden;
            }

            nav {
                display: none;
            }

            .mobile-menu-toggle {
                display: flex;
            }

            .header-cta .phone {
                display: none;
            }

            .hero {
                height: auto;
                min-height: 100vh;
                padding: 8rem 5% 4rem;
            }

            .hero-content {
                padding: 2rem 5%;
            }

            .hero-subtitle {
                font-size: 0.9rem;
            }

            .hero-tagline {
                font-size: 2.5rem;
                margin-bottom: 1rem;
            }

            .hero-subtext {
                font-size: 1rem;
                margin-bottom: 2rem;
            }

            .hero-description {
                font-size: 1rem;
                margin-bottom: 2rem;
            }

            .hero-cta {
                flex-direction: column;
                gap: 1rem;
                width: 100%;
            }

            .btn {
                width: 100%;
                text-align: center;
            }

            .scroll-indicator {
                display: none;
            }

            .stats-section {
                grid-template-columns: 1fr;
                gap: 3rem;
                padding: 4rem 5%;
            }

            .stats-section > .marquee-wrapper {
                margin-top: 2rem;
                padding: 2rem 0;
                overflow-x: hidden;
                width: 100%;
                max-width: 100vw;
                z-index: 100;
            }

            .marquee {
                width: 100%;
                max-width: 100%;
            }

            .marquee__item {
                width: 100px;
                margin-inline-end: 2rem;
            }

            .marquee__item img {
                height: 50px;
            }

            .stats-left {
                padding: 2rem 1.5rem;
                gap: 2rem;
                min-width: 100%;
            }

            .stat-number {
                font-size: 3rem;
            }

            .stats-content h2 {
                font-size: 2rem;
            }

            .stats-content p {
                font-size: 1rem;
            }

            .stats-cta {
                flex-direction: column;
            }

            .reviews-section {
                padding: 4rem 5%;
            }

            .reviews-heading {
                font-size: 2.5rem;
                margin-bottom: 3rem;
            }

            .reviews-container {
                height: 500px;
            }

            .review-card {
                padding: 2rem 1.5rem;
            }

            .review-text {
                font-size: 1.2rem;
            }

            .reviews-nav {
                display: none;
            }

            .review-author-name {
                font-size: 1rem;
            }

            .review-author-company {
                font-size: 0.9rem;
            }

            .get-in-touch-section {
                padding: 4rem 5%;
            }

            .get-in-touch-hero {
                font-size: 3rem;
                margin-bottom: 3rem;
            }

            .hero-arrow-indicator {
                width: 50px;
                height: 50px;
                margin-left: 0.5rem;
            }

            .hero-arrow-indicator svg {
                width: 20px;
                height: 20px;
            }

            .get-in-touch-content {
                grid-template-columns: 1fr;
                gap: 3rem;
            }

            .get-in-touch-description {
                font-size: 1rem;
            }

            .get-in-touch-email-alt {
                font-size: 1rem;
            }

            .btn-touch-submit {
                width: 100%;
            }

            .trusted-bar {
                flex-direction: column;
                gap: 1rem;
                align-items: flex-start;
            }

            .trusted-logos {
                flex-wrap: wrap;
                gap: 1.5rem;
            }

            .services-section {
                min-height: auto;
                padding: 4rem 0;
            }

            .services-container {
                position: relative;
                height: auto;
                padding: 2rem 0;
            }

            .service-item {
                position: relative;
                transform: none;
                top: auto;
                left: auto;
                margin-bottom: 4rem;
                opacity: 1;
                visibility: visible;
            }

            .service-item:last-child {
                margin-bottom: 0;
            }

            .service-number {
                font-size: 5rem;
            }

            .service-title {
                font-size: 2.5rem;
            }

            .service-description {
                font-size: 1.1rem;
            }

            .service-features {
                margin-top: 1.5rem;
            }

            .service-feature-item {
                font-size: 1rem;
                margin-bottom: 0.8rem;
            }

            .services-section{
                padding-top: 150px;
            }

            .services-heading {
                top:50px;
            }
        }
        @media(max-width:643px) {
            .stats-image {
                max-width: calc(100vw - 50px);
            }

            .service-title {
                font-size: 2rem;
            }

            .service-number {
                font-size: 4rem;
            }

            .services-heading {
                max-width: 600px;
            }
        }

        /* FAQ Section - Bento Box Style */
        .faq-section {
            background: #f8f9fa;
            padding: 8rem 5%;
            position: relative;
        }

        .faq-wrapper {
            max-width: 1400px;
            margin: 0 auto;
        }

        .faq-header {
            position: relative;
            border-radius: 20px;
            overflow: hidden;
            margin-bottom: 4rem;
            min-height: 500px;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .faq-header-background {
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            background-image: url('./images/office_compressed.jpeg');
            background-size: cover;
            background-position: center;
            filter:blur(5px) brightness(0.8);
            clip-path: circle(0% at 50% 50%);
            transition:clip-path 1s ease;
            z-index: 1;
            will-change:clip-path;
        }

        .faq-header-background::after {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            z-index: 2;
        }

        .faq-header-content {
            position: relative;
            z-index: 3;
            text-align: center;
            padding: 4rem 5%;
            width: 100%;
            max-width: 900px;
            margin: 0 auto;
        }

        .faq-title {
            font-size: 6rem;
            font-weight: 400;
            color: var(--light);
            margin-bottom: 2rem;
            line-height: 1.2;
            letter-spacing: -1px;
        }

        .faq-subtext {
            font-size: 1.2rem;
            color: var(--light);
            line-height: 1.8;
            margin: 0 auto;
            font-weight: 400;
        }

        .faq-bento-grid {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            grid-template-rows: repeat(3, 320px);
            gap: 1.5rem;
            width: 100%;

        }

        .faq-bento-card {
            border-radius: 24px;
            padding: 2.5rem;
            display: flex;
            flex-direction: column;
            position: relative;
            overflow: hidden;
            transition: all 500ms ease;
            box-shadow: inset 5px -5px 5px #d6d6d6,
            inset 5px -5px 5px #ffffff;
            border:1px solid #e1e1e1;
            will-change:opacity;
        }

        /* .faq-card-1::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background-image: url('./images/gradient-abstract-borders-min.png');
            background-size: cover;
            background-position: bottom left;
            z-index: 0;
            filter: grayscale(100%) opacity(0.05);
            border-radius: 24px;
        } */

        .faq-bento-card > * {
            position: relative;
            z-index: 1;
        }

        /* Card 1 - Timeline - 2 rows × 1 column */
        .faq-card-1 {
            grid-column: 1 / 2;
            grid-row: 1 / 3;
            background: #fafafa;
        }

        /* Card 2 - Technologies - 1 row × 2 columns */
        .faq-card-2 {
            grid-column: 2 / 4;
            grid-row: 1 / 2;
            background: #fafafa;
        }

        /* Card 3 - Support - 1 row × 1 column */
        .faq-card-3 {
            grid-column: 2 / 3;
            grid-row: 2 / 3;
            background: #fafafa;
        }

        /* Card 4 - Investment - 1 row × 1 column */
        .faq-card-4 {
            grid-column: 3 / 4;
            grid-row: 2 / 3;
            background: #fafafa;
        }

        /* Card 5 - Integration - 1 row × 3 columns */
        .faq-card-5 {
            grid-column: 1 / 4;
            grid-row: 3 / 4;
            background: #fafafa;
        }

        .faq-card-icon {
            width: 80px;
            height: 80px;
            margin-bottom: 1.5rem;
            display: flex;
            align-items: center;
            justify-content: center;
            background: rgba(255, 255, 255, 0.3);
            border-radius: 16px;
            backdrop-filter: blur(10px);
        }

        .faq-card-icon img {
            width: 50px;
            height: 50px;
            object-fit: contain;
            filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.1));
        }

        .faq-card-title {
            font-size: 2rem;
            font-weight: 600;
            color: rgba(0, 0, 0, 0.9);
            margin-bottom: 0.5rem;
            line-height: 1.2;
            font-family: "Bebas Neue", sans-serif;        }

        .faq-card-subtitle {
            font-size: 1rem;
            font-weight: 500;
            color: rgba(0, 0, 0, 0.7);
            margin-bottom: 1rem;
            line-height: 1.4;
        }

        .faq-card-description {
            font-size: 0.95rem;
            color: rgba(0, 0, 0, 0.7);
            line-height: 1.6;
            flex-grow: 1;
            font-weight: 400;
        }

        /* FAQ Responsive */
        @media (max-width: 1200px) {
            .faq-bento-grid {
                grid-template-columns: repeat(2, 1fr);
                grid-template-rows: auto;
            }

            .faq-card-1,
            .faq-card-2,
            .faq-card-3,
            .faq-card-4,
            .faq-card-5 {
                grid-column: auto;
                grid-row: auto;
            }
        }

        @media (max-width: 943px) {
            .faq-section {
                padding: 4rem 5%;
            }

            .faq-header {
                min-height: 400px;
                margin-bottom: 3rem;
            }

            .faq-header-content {
                padding: 3rem 5%;
            }

            .faq-title {
                font-size: 3rem;
                margin-bottom: 1.5rem;
            }

            .faq-subtext {
                font-size: 1rem;
            }

            .faq-bento-grid {
                grid-template-columns: 1fr;
                grid-template-rows: auto;
                gap: 1rem;
            }

            .faq-bento-card {
                padding: 2rem;
                min-height: 280px;
            }

            .faq-card-title {
                font-size: 1.5rem;
            }

            .faq-card-subtitle {
                font-size: 0.9rem;
            }

            .faq-card-description {
                font-size: 0.9rem;
            }
        }

        @media (max-width: 643px) {
            .faq-title {
                font-size: 2rem;
            }

            .faq-bento-card {
                padding: 1.5rem;
                min-height: 260px;
            }

            .faq-card-title {
                font-size: 1.3rem;
            }
        }

        /* Footer Section */
        .footer-section {
            background: var(--dark);
            padding: 3rem 5%;
            border-top: 1px solid rgba(255, 255, 255, 0.1);
        }

        .footer-wrapper {
            max-width: 1400px;
            margin: 0 auto;
            display: flex;
            justify-content: space-between;
            align-items: center;
            flex-wrap: wrap;
            gap: 1.5rem;
        }

        .footer-copyright {
            color: rgba(255, 255, 255, 0.7);
            font-size: 0.95rem;
            margin: 0;
            font-weight: 400;
        }

        .footer-links {
            display: flex;
            gap: 2rem;
            align-items: center;
        }

        .footer-link {
            color: rgba(255, 255, 255, 0.7);
            text-decoration: none;
            font-family: "Bebas Neue", sans-serif;
            font-size: 0.95rem;
            font-weight: 400;
            transition: all 0.3s ease;
            position: relative;
        }

        .footer-link::after {
            content: '';
            position: absolute;
            bottom: -4px;
            left: 0;
            width: 0;
            height: 2px;
            background: var(--primary);
            transition: width 0.3s ease;
        }

        .footer-link:hover {
            color: var(--light);
        }

        .footer-link:hover::after {
            width: 100%;
        }

        /* Footer Responsive */
        @media (max-width: 943px) {
            .footer-section {
                padding: 2.5rem 5%;
            }

            .footer-wrapper {
                flex-direction: column;
                text-align: center;
                gap: 1.5rem;
            }

            .footer-links {
                gap: 1.5rem;
            }

            .footer-copyright {
                font-size: 0.9rem;
            }

            .footer-link {
                font-size: 0.9rem;
        }
    }

    /* Marquee Styles */
    .marquee-wrapper {
        width: 100%;
        padding: 3rem 0;
        overflow-x: hidden;
        position: relative;
    }

    .marquee {
        overflow: hidden;
        position: relative;
        width: 100%;
        mask-image: linear-gradient(
            to right,
            hsl(0 0% 0% / 0),
            hsl(0 0% 0% / 1) 10%,
            hsl(0 0% 0% / 1) 90%,
            hsl(0 0% 0% / 0)
        );
    }

    .marquee__ctn {
        display: flex;
        width: fit-content;
    }

    .marquee__track {
        display: flex;
    }

    @supports (-webkit-touch-callout: none) {
        .marquee__ctn {
            transform: translate3d(0, 0, 0) scale(1);
            perspective: 1px;
        }
    }

    .marquee__item {
        display: flex;
        align-items: center;
        justify-content: center;
        flex-shrink: 0;
        width: 120px;
        margin-inline-end: 3rem;
    }

    .marquee__item img {
        height: 60px;
        width: 100%;
        object-fit: contain;
        backface-visibility: hidden;
        filter: brightness(100%);
    }

    /* From Uiverse.io by xXJollyHAKERXx */

    .spinner-container {
        display: flex;
        justify-content: center;
        align-items: center;
        min-height: 100vh;
        width: 100%;
        position: fixed;
        inset:0;
        background: var(--dark);
        z-index:10000;
        overflow: hidden;
        /* GPU acceleration and optimization */
        transform: translateZ(0);
        backface-visibility: hidden;
        will-change: opacity;
        -webkit-font-smoothing: antialiased;
    }
    .spinner-container::-webkit-scrollbar {
        display: none;
    }

    .spinner-container.disabled {
        animation: hide-loader 500ms linear forwards;
    }
    @keyframes hide-loader {
        from {
            opacity: 1;
        } to {
            opacity: 0;
        }
    }
    .spinner {
        background-image: linear-gradient(rgb(186, 66, 255) 35%,rgb(0, 225, 255));
        width: 100px;
        height: 100px;
        animation: spinning82341 1.7s linear infinite;
        text-align: center;
        border-radius: 50px;
        filter: blur(1px);
        box-shadow: 0px -5px 20px 0px rgb(186, 66, 255), 0px 5px 20px 0px rgb(0, 225, 255);
    }

    .spinner1 {
        background-color: rgb(36, 36, 36);
        width: 100px;
        height: 100px;
        border-radius: 50px;
        filter: blur(10px);
    }

    @keyframes spinning82341 {
        to {
            transform: rotate(360deg);
        }
    }

    .social-links {display: flex; gap: 10px;}

    .social-icon {
        height:40px;
        width:40px;
    }

        .webgl-section {
        width: 100%;
        min-height: 100vh;
        display: flex;
        flex-direction: column;
        align-items: center;
        }

        .webgl-header {
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            text-align: center;
            max-width: 800px;
            z-index: 10;
            padding: 2rem;
            pointer-events: none;
        }

        @media (max-width: 943px) {
            .webgl-header {
                position: absolute;
                top: 50%;
                left: 5%;
                transform: translateY(-50%);
                text-align: left;
                max-width: 90%;
                padding: 1.5rem;
            }

            .webgl-title {
                font-size: 2.5rem;
            }

            .webgl-subtitle {
                font-size: 1rem;
            }
        }



        .webgl-title {
            font-family: 'Bebas Neue', sans-serif;
            font-size: 4rem;
            color: var(--light);
            margin-bottom: 1rem;
            letter-spacing: 2px;
        }

        .webgl-title span {
            color:var(--primary);
            font-style: italic;
            text-shadow: 0 0 25px rgba(0, 0, 0, 0.5);
        }

        .webgl-subtitle {
            font-size: 1.2rem;
            color: var(--light);
            line-height: 1.8;
        }

    .webgl-container {
        width: 100%;
        height:100%;
        position: relative;
        overflow: hidden;
        background: var(--dark);
        background-image: 
            radial-gradient(circle at center, transparent 0%, var(--dark) 70%),
            linear-gradient(rgba(18, 19, 18, 0.7) .1em, transparent .1em), 
            linear-gradient(90deg, rgba(18,19,18, .7) .1em, transparent .1em);
        background-size: 100% 100%, 3em 3em, 3em 3em;
    }

    .webgl-content {
        width: 100%;
        height: 100%;
        position: relative;
    
    }

      .loader-absolute {
        position: absolute;
      }
      
      .inline-block {
        display: inline-block;
        /* GPU acceleration for each letter */
        transform: translateZ(0);
        backface-visibility: hidden;
        will-change: transform;
      }
      
      .loader {
        display: flex;
        margin: 0.25em 0;
        /* GPU acceleration */
        transform: translateZ(0);
        backface-visibility: hidden;
      }
      
      .w-2 {
        width: 0.5em;
      }
      
      .dash {
        animation: dashArray 2s ease-in-out infinite,
          dashOffset 2s linear infinite;
        /* GPU acceleration for smoother animation */
        transform: translateZ(0);
        will-change: stroke-dasharray, stroke-dashoffset;
      }
      
      .spin {
        animation: spinDashArray 2s ease-in-out infinite,
          spin 8s ease-in-out infinite,
          dashOffset 2s linear infinite;
        transform-origin: center;
        /* GPU acceleration for smoother animation */
        will-change: stroke-dasharray, stroke-dashoffset, transform;
        backface-visibility: hidden;
      }
      
      @keyframes dashArray {
        0% {
          stroke-dasharray: 0 1 359 0;
        }
      
        50% {
          stroke-dasharray: 0 359 1 0;
        }
      
        100% {
          stroke-dasharray: 359 1 0 0;
        }
      }
      
      @keyframes spinDashArray {
        0% {
          stroke-dasharray: 270 90;
        }
      
        50% {
          stroke-dasharray: 0 360;
        }
      
        100% {
          stroke-dasharray: 270 90;
        }
      }
      
      @keyframes dashOffset {
        0% {
          stroke-dashoffset: 365;
        }
      
        100% {
          stroke-dashoffset: 5;
        }
      }
      
      @keyframes spin {
        0% {
          rotate: 0deg;
        }
      
        12.5%,
        25% {
          rotate: 270deg;
        }
      
        37.5%,
        50% {
          rotate: 540deg;
        }
      
        62.5%,
        75% {
          rotate: 810deg;
        }
      
        87.5%,
        100% {
          rotate: 1080deg;
        }
      }
      


      .spinner2 {
        position: relative;
        width: 60px;
        height: 60px;
        display: flex;
        justify-content: center;
        align-items: center;
        border-radius: 50%;
        margin-left: -75px;
      }
      
      .spinner2 span {
        position: absolute;
        top: 50%;
        left: var(--left);
        width: 35px;
        height: 7px;
        background: #ffff;
        animation: dominos 1s ease infinite;
        box-shadow: 2px 2px 3px 0px black;
      }
      
      .spinner2 span:nth-child(1) {
        --left: 80px;
        animation-delay: 0.125s;
      }
      
      .spinner2 span:nth-child(2) {
        --left: 70px;
        animation-delay: 0.3s;
      }
      
      .spinner2 span:nth-child(3) {
        left: 60px;
        animation-delay: 0.425s;
      }
      
      .spinner2 span:nth-child(4) {
        animation-delay: 0.54s;
        left: 50px;
      }
      
      .spinner2 span:nth-child(5) {
        animation-delay: 0.665s;
        left: 40px;
      }
      
      .spinner2 span:nth-child(6) {
        animation-delay: 0.79s;
        left: 30px;
      }
      
      .spinner2 span:nth-child(7) {
        animation-delay: 0.915s;
        left: 20px;
      }
      
      .spinner2 span:nth-child(8) {
        left: 10px;
      }
      
      @keyframes dominos {
        50% {
          opacity: 0.7;
        }
      
        75% {
          -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
        }
      
        80% {
          opacity: 1;
        }
      }
      
      @media(max-width:700px) {
        .mobile-learn-more-btn {
            min-width: 100%;
        }
      }