        :root {
            --coral: #FF6F61;
            --teal: #00C1B4;
            --dark-gray: #333333;
            --light-gray: #777777;
        }
        body {
            font-family: 'Inter', sans-serif;
            background-color: #FAFAFA;
            color: var(--dark-gray);
        }
        .font-poppins { font-family: 'Poppins', sans-serif; }
        .font-montserrat { font-family: 'Montserrat', sans-serif; }
        .font-roboto { font-family: 'Roboto', sans-serif; }
        .bg-gradient-soft { background: linear-gradient(135deg, #F2F4F7 0%, #EDEFF2 100%); }
        .bg-gradient-coral { background: linear-gradient(135deg, #FF6F61 0%, #FF8B7F 100%); }
        .btn {
            padding: 12px 28px;
            border-radius: 9999px;
            font-weight: 500;
            transition: all 0.3s ease;
            box-shadow: 0 4px 15px rgba(0,0,0,0.1);
        }
        .btn-coral {
            background-color: var(--coral);
            color: white;
        }
        .btn-coral:hover {
            transform: translateY(-2px) scale(1.05);
            box-shadow: 0 8px 25px rgba(255, 111, 97, 0.4);
        }
        .btn-teal-outline {
            background-color: transparent;
            color: var(--teal);
            border: 2px solid var(--teal);
        }
        .btn-teal-outline:hover {
            background-color: var(--teal);
            color: white;
            transform: translateY(-2px) scale(1.05);
            box-shadow: 0 8px 25px rgba(0, 193, 180, 0.4);
        }
        .pulse-animation {
            animation: pulse 2s infinite;
        }
        @keyframes pulse {
            0% { box-shadow: 0 0 0 0 rgba(255, 111, 97, 0.7); }
            70% { box-shadow: 0 0 0 15px rgba(255, 111, 97, 0); }
            100% { box-shadow: 0 0 0 0 rgba(255, 111, 97, 0); }
        }
        .glassmorphic {
            background: rgba(255, 255, 255, 0.1);
            backdrop-filter: blur(10px);
            -webkit-backdrop-filter: blur(10px);
            border: 1px solid rgba(255, 255, 255, 0.2);
        }
        .nav-link {
            position: relative;
            transition: color 0.3s ease;
        }
        .nav-link::after {
            content: '';
            position: absolute;
            width: 0;
            height: 2px;
            bottom: -5px;
            left: 50%;
            transform: translateX(-50%);
            background-color: var(--coral);
            transition: width 0.3s ease;
        }
        .nav-link:hover::after {
            width: 100%;
        }
        .card-hover {
            transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
        }
        .card-hover:hover {
            transform: translateY(-10px);
            box-shadow: 0 20px 40px rgba(0,0,0,0.1);
        }
        .modal {
            transition: opacity 0.3s ease, visibility 0.3s ease;
        }
        .modal-content {
            transition: transform 0.3s ease;
        }
        .modal.is-open {
            opacity: 1;
            visibility: visible;
        }
        .modal.is-open .modal-content {
            transform: translateY(0) scale(1);
        }
        .hamburger-line {
            transition: all 0.3s ease-in-out;
        }
        .hamburger.open .line-1 {
            transform: rotate(45deg) translate(5px, 5px);
        }
        .hamburger.open .line-2 {
            opacity: 0;
        }
        .hamburger.open .line-3 {
            transform: rotate(-45deg) translate(7px, -6px);
        }

        .hero-bg-image {
            animation: kenburns-top-left 25s ease-out infinite alternate;
        }

        @keyframes kenburns-top-left {
            0% {
                transform: scale(1) translate(0, 0);
                transform-origin: 10% 10%;
            }
            100% {
                transform: scale(1.15) translate(-5%, -5%);
                transform-origin: top left;
            }
        }
        
        /* FAQ Accordion */
        .accordion-content {
            max-height: 0;
            overflow: hidden;
            transition: max-height 0.5s ease-in-out, padding 0.5s ease-in-out;
        }

