        :root {
            --bs-primary: #007bff;
            --bs-success: #28a745;
            --bs-font-sans-serif: 'Poppins', sans-serif;
            --blue: #335DFF;
            --grey: #F5F5F5;
            --grey-d-1: #EEE;
            --grey-d-2: #DDD;
            --grey-d-3: #888;
            --white: #FFF;
            --dark: #222;
            --green: #25D366;
        }
        
        body {
            font-family: var(--bs-font-sans-serif);
            scroll-behavior: smooth;
        }
        
        .navbar-brand img {
            height: 40px;
        }
        
        .hero-gradient {
            background: linear-gradient(135deg, #e3eeff 0%, #f7faff 100%);
        }
        
        .hero-img {
            border-radius: 12px;
            box-shadow: 0 15px 30px rgba(0, 123, 255, 0.2);
        }
        
        .feature-card {
            transition: all 0.3s ease;
            border: none;
            box-shadow: 0 4px 15px rgba(0,0,0,0.05);
        }
        
        .feature-card:hover {
            transform: translateY(-10px);
            box-shadow: 0 12px 25px rgba(0,0,0,0.1);
        }
        
        .testimonial-card {
            border-left: 5px solid var(--bs-primary);
            transition: box-shadow 0.3s ease;
        }
        
        .testimonial-card:hover {
            box-shadow: 0 8px 20px rgba(0,0,0,0.08);
        }
        
        .price-card {
            transition: all 0.3s ease;
            border: none;
            box-shadow: 0 5px 20px rgba(0,0,0,0.05);
            cursor: pointer;
        }
        
        .price-card:hover,
        .price-card:active {
            transform: translateY(-15px) scale(1.02);
            box-shadow: 0 20px 40px rgba(0,0,0,0.15);
        }
        
        .price-card.featured {
            transform: scale(1.05);
            border: 2px solid var(--bs-primary);
        }
        
        .price-card.featured:hover,
        .price-card.featured:active {
            transform: scale(1.07) translateY(-15px);
            box-shadow: 0 25px 50px rgba(0,0,0,0.2);
        }
        

        .btn {
            border-radius: 25px !important;
        }
        

        section[id] {
            scroll-margin-top: 120px;
        }
        
        @media (max-width: 768px) {
            section[id] {
                scroll-margin-top: 200px;
            }
        }
        .accordion-button {
            font-weight: 600;
        }
        
        .accordion-body {
            font-weight: 400;
        }
        
        .final-cta {
            background: linear-gradient(135deg, var(--bs-primary) 0%, #0056b3 100%);
            border-radius: 20px;
        }
        
        .fade-in {
            opacity: 0;
            transform: translateY(30px);
            transition: opacity 0.6s ease-out, transform 0.6s ease-out;
        }
        
        .fade-in.visible {
            opacity: 1;
            transform: translateY(0);
        }
        
        .navbar-toggler {
            border: none;
            padding: 0.25rem 0.5rem;
        }
        
        .navbar-toggler:focus {
            box-shadow: none;
        }
        

        .logo-carousel {
            overflow: hidden;
            white-space: nowrap;
            position: relative;
        }
        
        .logo-track {
            display: inline-flex;
            animation: scroll-logos 15s linear infinite;
            gap: 2rem;
            align-items: center;
        }
        
        .logo-carousel:hover .logo-track {
            animation-play-state: paused;
        }
        
        .logo-track img {
            max-height: 100px;
            filter: grayscale(100%);
            opacity: 0.6;
            transition: all 0.4s ease;
            flex-shrink: 0;
        }
        
        .logo-track img:hover {
            filter: grayscale(0%);
            opacity: 1;
            transform: scale(1.1);
        }
        
        @keyframes scroll-logos {
            0% {
                transform: translateX(0);
            }
            100% {
                transform: translateX(-50%);
            }
        }
        
        .footer-bg {
            background-color: #0d1f33;
            color: #adb5bd;
        }
        
        .footer-bg a {
            color: #adb5bd;
            text-decoration: none;
            transition: color 0.3s;
        }
        
        .footer-bg a:hover {
            color: white;
        }
        
        @media (max-width: 768px) {
            .price-card.featured {
                transform: scale(1);
            }
            
            .price-card.featured:hover,
            .price-card.featured:active {
                transform: translateY(-15px) scale(1.02);
            }
            
            .price-card:hover,
            .price-card:active {
                transform: translateY(-15px) scale(1.02);
            }
        }


        .chatbox-wrapper {
            position: fixed;
            bottom: 2rem;
            right: 2rem;
            width: 4rem;
            height: 4rem;
            z-index: 9999;
        }
        .chatbox-toggle {
            width: 100%;
            height: 100%;
            background: var(--blue);
            color: var(--white);
            font-size: 2rem;
            display: flex;
            justify-content: center;
            align-items: center;
            border-radius: 50%;
            cursor: pointer;
            transition: .2s;
            box-shadow: 0 4px 15px rgba(51, 93, 255, 0.3);
        }
        .chatbox-toggle:active {
            transform: scale(.9);
        }
        .chatbox-message-wrapper {
            position: absolute;
            bottom: calc(100% + 1rem);
            right: 0;
            width: 420px;
            max-height: calc(100vh - 140px);
            border-radius: .5rem;
            overflow: hidden;
            box-shadow: .5rem .5rem 2rem rgba(0, 0, 0, .1);
            transform: scale(0);
            transform-origin: bottom right;
            transition: .2s;
            background: white;
        }
        .chatbox-message-wrapper.show {
            transform: scale(1);
        }


        .user-info-form {
            padding: 1.25rem;
            background: var(--white);
            border-radius: .5rem;
            max-height: calc(100vh - 180px);
            overflow-y: auto;
        }

        .user-info-form h4 {
            color: var(--blue);
            margin-bottom: 0.75rem;
            text-align: center;
            font-size: 1.1rem;
        }

        .user-info-form p {
            color: var(--grey-d-3);
            margin-bottom: 1rem;
            text-align: center;
            font-size: 0.85rem;
            line-height: 1.4;
        }

        .user-info-form .form-group {
            margin-bottom: 0.75rem;
        }

        .user-info-form label {
            font-weight: 600;
            color: var(--dark);
            margin-bottom: 0.4rem;
            display: block;
            font-size: 0.85rem;
        }

        .user-info-form input {
            width: 100%;
            padding: 0.6rem;
            border: 2px solid var(--grey-d-1);
            border-radius: 0.4rem;
            font-size: 0.85rem;
            transition: border-color 0.3s ease;
        }

        .user-info-form input:focus {
            outline: none;
            border-color: var(--blue);
            box-shadow: 0 0 0 3px rgba(51, 93, 255, 0.1);
        }

        .user-info-form input.error {
            border-color: #dc3545;
        }

        .user-info-form .error-message {
            color: #dc3545;
            font-size: 0.75rem;
            margin-top: 0.2rem;
            display: none;
        }

        .user-info-form .btn-start-chat {
            width: 100%;
            background: var(--blue);
            color: white;
            border: none;
            padding: 0.65rem;
            border-radius: 0.4rem;
            font-weight: 600;
            font-size: 0.9rem;
            transition: background-color 0.3s ease;
            cursor: pointer;
        }

        .user-info-form .btn-start-chat:hover {
            background: #2850e6;
        }

        .user-info-form .btn-start-chat:disabled {
            background: var(--grey-d-2);
            cursor: not-allowed;
        }

        .user-info-form .required-note {
            text-align: center;
            font-size: 0.75rem;
            color: var(--grey-d-3);
            margin-top: 0.75rem;
            line-height: 1.3;
        }

        .chatbox-message-header {
            display: flex;
            align-items: center;
            justify-content: space-between;
            background: var(--white);
            padding: .75rem 1.5rem;
        }
        .chatbox-message-profile {
            display: flex;
            align-items: center;
            grid-gap: .5rem;
        }
        .chatbox-message-image {
            width: 3rem;
            height: 3rem;
            object-fit: cover;
            border-radius: 50%;
        }
        .chatbox-message-name {
            font-size: 1.125rem;
            font-weight: 600;
        }
        .chatbox-message-status {
            font-size: .875rem;
            color: var(--grey-d-3);
        }

        .chatbox-message-content {
            background: var(--grey);
            padding: 1.5rem;
            display: flex;
            flex-direction: column;
            grid-row-gap: 1rem;
            max-height: 300px;
            overflow-y: auto;
        }
        .chatbox-message-item {
            width: 90%;
            padding: 1rem;
            word-wrap: break-word;
            position: relative;
        }
        .chatbox-message-item.sent {
            align-self: flex-end;
            background: var(--blue);
            color: var(--white);
            border-radius: .75rem 0 .75rem .75rem;
        }
        .chatbox-message-item.received {
            background: var(--white);
            border-radius: 0 .75rem .75rem .75rem;
            box-shadow: .25rem .25rem 1.5rem rgba(0, 0, 0, .05);
        }
        .chatbox-message-item-time {
            float: right;
            font-size: .75rem;
            margin-top: .5rem;
            display: inline-block;
        }
        

        .message-status {
            display: inline-flex;
            align-items: center;
            margin-left: 0.5rem;
            font-size: 0.7rem;
        }
        
        .message-status.sending {
            color: rgba(255, 255, 255, 0.7);
        }
        
        .message-status.sent {
            color: rgba(255, 255, 255, 0.8);
        }
        
        .message-status.error {
            color: #ff4444;
        }
        
        .chatbox-message-item.system-message {
            background: #fff3cd;
            border: 1px solid #ffeaa7;
            border-radius: .75rem;
            color: #856404;
            align-self: center;
            width: 95%;
            text-align: center;
            font-size: 0.9rem;
        }
        
        .chatbox-message-bottom {
            background: var(--white);
            padding: .75rem 1.5rem;
        }
        .chatbox-message-form {
            display: flex;
            align-items: center;
            background: var(--grey);
            border-radius: .5rem;
            padding: .5rem 1.25rem;
        }
        .chatbox-message-input {
            background: transparent;
            outline: none;
            border: none;
            resize: none;
            scrollbar-width: none;
            width: 100%;
        }
        .chatbox-message-input::-webkit-scrollbar {
            display: none;
        }
        .chatbox-message-submit {
            font-size: 20px;
            color: var(--blue);
            background: transparent;
            border: none;
            outline: none;
            cursor: pointer;
            transition: opacity 0.3s ease;
        }
        
        .chatbox-message-submit:disabled {
            opacity: 0.5;
            cursor: not-allowed;
        }
        
        .chatbox-message-no-message {
            font-size: 1rem;
            font-weight: 600;
            text-align: center;
        }

        .user-greeting {
            background: #e3f2fd;
            border: 1px solid #bbdefb;
            border-radius: .75rem;
            color: #1976d2;
            align-self: center;
            width: 95%;
            text-align: center;
            font-size: 0.9rem;
            padding: 1rem;
            margin-bottom: 1rem;
        }

        @media screen and (max-width: 576px) {
            .chatbox-message-wrapper {
                width: calc(100vw - 2rem);
                max-height: calc(100vh - 120px);
            }
            .chatbox-wrapper {
                bottom: 1rem;
                right: 1rem;
            }
            .user-info-form {
                padding: 1rem;
                max-height: calc(100vh - 140px);
            }
            .user-info-form h4 {
                font-size: 1rem;
            }
            .user-info-form p {
                font-size: 0.8rem;
            }
        }

        @media screen and (max-height: 600px) {
            .chatbox-message-wrapper {
                max-height: calc(100vh - 100px);
            }
            .user-info-form {
                padding: 1rem;
                max-height: calc(100vh - 120px);
            }
            .user-info-form h4 {
                margin-bottom: 0.5rem;
            }
            .user-info-form p {
                margin-bottom: 0.75rem;
            }
            .user-info-form .form-group {
                margin-bottom: 0.6rem;
            }
        }
