        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
            font-family: 'Manrope', system-ui, -apple-system, 'Segoe UI', sans-serif;
        }

        body {
            background: var(--brand-softer);
            color: var(--ink);
            overflow-x: hidden;
            min-height: 100vh;
        }

        .hero {
            min-height: 100vh;
            display: flex;
            align-items: center;
            justify-content: center;
            position: relative;
            isolation: isolate;
            padding: 6rem 1.5rem 3rem;
            overflow: hidden;
        }

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

        .gradient-blob {
            position: absolute;
            border-radius: 50%;
            filter: blur(70px);
            opacity: 0.6;
            animation: float 15s ease-in-out infinite;
        }

        .blob-1 {
            width: 500px;
            height: 500px;
            background: rgba(37, 99, 235, 0.22);
            top: -100px;
            left: -100px;
            animation-delay: 0s;
        }

        .blob-2 {
            width: 600px;
            height: 600px;
            background: rgba(29, 78, 216, 0.16);
            bottom: -150px;
            right: -100px;
            animation-delay: -5s;
        }

        .blob-3 {
            width: 400px;
            height: 400px;
            background: rgba(37, 99, 235, 0.14);
            top: 50%;
            left: 40%;
            animation-delay: -10s;
        }

        @keyframes float {
            0%, 100% {
                transform: translate(0, 0) scale(1);
            }
            33% {
                transform: translate(30px, -30px) scale(1.05);
            }
            66% {
                transform: translate(-20px, 20px) scale(0.95);
            }
        }

        .hero-content {
            display: flex;
            flex-direction: column;
            gap: 3rem;
            align-items: center;
            max-width: 1300px;
            width: 100%;
        }

        @media (min-width: 968px) {
            .hero-content {
                display: grid;
                grid-template-columns: 1.2fr 1fr;
                gap: 4rem;
                align-items: center;
            }
        }

        .hero-text {
            display: flex;
            flex-direction: column;
            gap: 1.5rem;
            text-align: center;
            order: 2;
        }

        @media (min-width: 968px) {
            .hero-text {
                text-align: left;
                order: 0;
            }
        }

        .hero-text h1 {
            font-size: 2.5rem;
            font-weight: 800;
            line-height: 1.2;
            color: var(--ink);
            letter-spacing: -0.02em;
        }

        @media (min-width: 768px) {
            .hero-text h1 {
                font-size: 3rem;
            }
        }

        @media (min-width: 968px) {
            .hero-text h1 {
                font-size: 3.5rem;
            }
        }

        .hero-text p {
            font-size: 1.1rem;
            line-height: 1.6;
            color: var(--muted);
            max-width: 100%;
        }

        @media (min-width: 968px) {
            .hero-text p {
                max-width: 90%;
                font-size: 1.2rem;
            }
        }

        .highlight {
            color: var(--brand);
            font-weight: 700;
        }

        .stats {
            display: flex;
            flex-direction: column;
            gap: 1.5rem;
            margin-top: 1rem;
        }

        @media (min-width: 480px) {
            .stats {
                flex-direction: row;
                gap: 2rem;
            }
        }

        .stat-item {
            display: flex;
            flex-direction: column;
            align-items: center;
        }

        @media (min-width: 968px) {
            .stat-item {
                align-items: flex-start;
            }
        }

        .stat-value {
            font-size: 2rem;
            font-weight: 800;
            color: var(--brand);
            letter-spacing: -0.02em;
        }

        @media (min-width: 768px) {
            .stat-value {
                font-size: 2.5rem;
            }
        }

        .stat-label {
            font-size: 0.9rem;
            color: var(--muted);
        }

        .cta-buttons {
            display: flex;
            flex-direction: column;
            gap: 1rem;
            margin-top: 1.5rem;
            width: 100%;
        }

        @media (min-width: 480px) {
            .cta-buttons {
                flex-direction: row;
                justify-content: center;
            }
        }

        @media (min-width: 968px) {
            .cta-buttons {
                justify-content: flex-start;
            }
        }

        .cta-btn {
            padding: 0.9rem 1.5rem;
            border-radius: 999px;
            font-weight: 600;
            font-size: 1rem;
            text-decoration: none;
            transition: all 0.3s ease;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 0.5rem;
            text-align: center;
        }

        @media (min-width: 480px) {
            .cta-btn {
                padding: 1rem 2rem;
            }
        }

        .cta-primary {
            background: var(--brand);
            color: #fff;
            box-shadow: 0 6px 16px rgba(37, 99, 235, 0.25);
        }

        .cta-primary:hover {
            background: var(--brand-deep);
            transform: translateY(-2px);
            box-shadow: 0 10px 22px rgba(37, 99, 235, 0.3);
        }

        .cta-secondary {
            background: var(--card);
            color: var(--brand-deep);
            border: 1px solid var(--line);
        }

        .cta-secondary:hover {
            border-color: var(--brand);
            color: var(--brand);
            transform: translateY(-2px);
        }

        /* .cta-secondary:hover {
            background: rgba(255, 255, 255, 1);
            transform: translateY(-3px);
            box-shadow: 0 10px 20px rgba(37, 99, 235, 0.2);
        } */

        .mockup-container {
            position: relative;
            display: flex;
            justify-content: center;
            align-items: center;
            perspective: 1000px;
            width: 100%;
            height: 400px;
            order: 1;
        }

        @media (min-width: 968px) {
            .mockup-container {
                height: auto;
                order: 0;
            }
        }

        .mockup {
            width: 220px;
            height: 400px;
            border-radius: 16px;
            box-shadow: 0 18px 36px rgba(15, 28, 63, 0.1);
            transform-style: preserve-3d;
            transition: transform 0.5s ease;
            background: white;
            border: 1px solid var(--line);
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            text-align: center;
            padding: 1.5rem;
        }

        @media (min-width: 768px) {
            .mockup {
                width: 280px;
                height: 400px;
            }
        }

        .mockup-1 {
            transform: rotateY(-10deg) translateZ(10px) translateX(-20px);
            animation: float-1 6s ease-in-out infinite;
            z-index: 2;
        }

        .mockup-2 {
            transform: rotateY(10deg) translateZ(10px) translateX(20px);
            animation: float-2 6s ease-in-out infinite;
        }

        @media (min-width: 968px) {
            .mockup-1 {
                transform: rotateY(-15deg) translateZ(20px) translateX(-30px);
            }
            
            .mockup-2 {
                transform: rotateY(15deg) translateZ(20px) translateX(30px);
            }
        }

        @keyframes float-1 {
            0%, 100% { transform: rotateY(-10deg) translateZ(10px) translateX(-20px) translateY(0); }
            50% { transform: rotateY(-10deg) translateZ(10px) translateX(-20px) translateY(-15px); }
        }

        @keyframes float-2 {
            0%, 100% { transform: rotateY(10deg) translateZ(10px) translateX(20px) translateY(0); }
            50% { transform: rotateY(10deg) translateZ(10px) translateX(20px) translateY(15px); }
        }

        @media (min-width: 968px) {
            @keyframes float-1 {
                0%, 100% { transform: rotateY(-15deg) translateZ(20px) translateX(-30px) translateY(0); }
                50% { transform: rotateY(-15deg) translateZ(20px) translateX(-30px) translateY(-20px); }
            }
            
            @keyframes float-2 {
                0%, 100% { transform: rotateY(15deg) translateZ(20px) translateX(30px) translateY(0); }
                50% { transform: rotateY(15deg) translateZ(20px) translateX(30px) translateY(20px); }
            }
        }

        .mockup i {
            font-size: 2.5rem;
            color: var(--brand);
            margin-bottom: 1rem;
        }

        @media (min-width: 768px) {
            .mockup i {
                font-size: 3rem;
            }
        }

        .mockup h3 {
            font-size: 1.2rem;
            color: var(--ink);
            margin-bottom: 0.5rem;
        }

        @media (min-width: 768px) {
            .mockup h3 {
                font-size: 1.5rem;
            }
        }

        .mockup p {
            color: var(--muted);
            font-size: 0.9rem;
            line-height: 1.4;
        }

        @media (min-width: 768px) {
            .mockup p {
                font-size: 1rem;
            }
        }

        .floating-card {
            position: absolute;
            background: rgba(255, 255, 255, 0.9);
            backdrop-filter: blur(12px);
            -webkit-backdrop-filter: blur(12px);
            border: 1px solid var(--line);
            border-radius: 12px;
            padding: 1rem;
            box-shadow: 0 10px 25px rgba(15, 28, 63, 0.1);
            z-index: 3;
            animation: float-card 8s ease-in-out infinite;
            width: 140px;
            display: none;
        }

        @media (min-width: 768px) {
            .floating-card {
                display: block;
                width: 160px;
                padding: 1.2rem;
            }
        }

        .card-1 {
            top: 20px;
            right: 10px;
            animation-delay: 0s;
        }

        .card-2 {
            bottom: -10px;
            left: 10px;
            width: 160px;
            animation-delay: -2s;
        }

        .card-3 {
            top: -10px;
            left: -10px;
            width: 130px;
            animation-delay: -4s;
        }

        @media (min-width: 968px) {
            .card-1 {
                top: 30px;
                right: 30px;
                width: 160px;
            }
            
            .card-2 {
                bottom: -20px;
                left: 20px;
                width: 180px;
            }
            
            .card-3 {
                top: -10px;
                left: -20px;
                width: 140px;
            }
        }

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

        .floating-card i {
            font-size: 1.2rem;
            margin-bottom: 0.5rem;
            color: var(--brand);
        }

        @media (min-width: 768px) {
            .floating-card i {
                font-size: 1.5rem;
            }
        }

        .floating-card p {
            font-size: 0.75rem;
            color: var(--muted);
        }

        @media (min-width: 768px) {
            .floating-card p {
                font-size: 0.85rem;
            }
        }

        /* Adjust blob sizes for mobile */
        @media (max-width: 768px) {
            .blob-1 {
                width: 300px;
                height: 300px;
                top: -50px;
                left: -50px;
            }
            
            .blob-2 {
                width: 350px;
                height: 350px;
                bottom: -80px;
                right: -80px;
            }
            
            .blob-3 {
                width: 250px;
                height: 250px;
                top: 40%;
                left: 30%;
            }
        }
        /* Two mockups side by side overflow their container on small phones */
        @media (max-width: 520px) {
            .mockup {
                width: 150px;
                height: 290px;
                padding: 1rem;
            }

            .mockup i {
                font-size: 2rem;
                margin-bottom: 0.75rem;
            }

            .mockup h3 {
                font-size: 1.05rem;
            }

            .mockup p {
                font-size: 0.8rem;
            }

            .mockup-container {
                height: 320px;
            }
        }
