/* ==========================================================================
   Vidyalay 2.4 — Wind UI Design Tokens & Styles
   Tokens copied exactly from frontend/src/styles.css (light & dark)
   ========================================================================== */

:root {
  /* Wind UI Core Palette */
  --wind-accent: #46178F;
  --wind-accent-soft: #efe7f7;
  --wind-accent-ink: #2d0f5c;
  --wind-surface: #ffffff;
  --wind-surface-2: #f7f8fb;
  --wind-page: #f4f6fa;
  --wind-line: #e5e8ef;
  --wind-ink: #0f172a;
  --wind-ink-2: #475569;
  --wind-ink-3: #64748b;
  --wind-alert: #b42318;
  --wind-ok: #0e9f6e;
  --wind-warn: #b45309;
  --wind-shadow: 0 1px 2px rgba(15, 23, 42, 0.04), 0 14px 32px -22px rgba(15, 23, 42, 0.28);
  --wind-spectrum: linear-gradient(180deg, #f1a041, #e31fdf 30%, #46178F 50%, #1f6feb 68%, #09bcf8 84%, #1ece4f);

  /* Wind UI Corner Radii Scale */
  --radius-wind: 22px;        /* outer containers, cards, panels, dialogs */
  --radius-wind-inner: 14px;  /* inner elements, icon tiles, inputs, inset blocks */
  --radius-wind-sm: 8px;      /* badges, small tags, indicators */
  --radius-wind-pill: 9999px; /* action buttons, pills, chips, search inputs */

  /* Typography */
  --font-sans: 'Poppins', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
}

body.dark,
[data-theme='dark'] {
  --wind-accent: #a78bfa;
  --wind-accent-soft: rgba(167, 139, 250, 0.16);
  --wind-accent-ink: #cdbbea;
  --wind-surface: #1e293b;
  --wind-surface-2: #172033;
  --wind-page: #0f172a;
  --wind-line: rgba(255, 255, 255, 0.09);
  --wind-ink: #f1f5f9;
  --wind-ink-2: #cbd5e1;
  --wind-ink-3: #94a3b8;
  --wind-alert: #fca5a5;
  --wind-ok: #6ee7b7;
  --wind-warn: #fcd34d;
  --wind-shadow: 0 1px 2px rgba(0, 0, 0, 0.3), 0 18px 36px -24px rgba(0, 0, 0, 0.7);
}

/* Base Typography Overrides for Vidyalay 2.4 */
body {
  font-family: var(--font-sans);
  font-weight: 400;
  line-height: 1.6;
  color: var(--wind-ink);
  background-color: var(--wind-page);
  margin: 0;
  padding: 0;
  -webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-sans);
  font-weight: 600;
  color: var(--wind-ink);
  margin: 0 0 15px 0;
  line-height: 1.25;
}

p, span, li {
  font-family: var(--font-sans);
  font-weight: 400;
  font-size: 16px;
  color: var(--wind-ink-2);
}

.desc {
  font-weight: 400;
  font-size: 14px;
  color: var(--wind-ink-3);
}

.body_wrapper {
  background-size: cover;
  background: var(--wind-page);
}

/* ==========================================================================
   Landing Page Styles (Extracted from index.html & Refactored to Wind UI)
   ========================================================================== */

        /* Base body styles managed by Wind UI Poppins */

        /* Base headings managed by Wind UI Poppins */

        /* Base text managed by Wind UI Poppins */

        /* Optional: smaller description style */
        .desc {
            font-weight: 300;
            /* light weight for subtle text */
            font-size: 14px;
            color: #555;
        }

        /* best one */
        .body_wrapper {
            background-size: cover;
            background: #ffffff;
        }

        .payment_banner_area_two {
            background: transparent;
        }

        .full-gradient {

            background: linear-gradient(rgba(255, 255, 255, 0.6));
            background-color: white;
            color: black;
        }

        .gradient-fade {
            height: 200px;
            /* Adjust the height as needed */
            width: 100%;
            /* Adjust the width as needed */
        }

        .hosting_service_item {
            border-radius: var(--radius-wind-inner);
            border: 1px #BBBBBB solid;
        }

        .hosting_service_item:hover {
            border: 1px solid var(--wind-accent);
            box-shadow: 0px 20px 30px -10px rgba(70, 23, 143, 0.25);
            transition: all 0.3s ease-in-out;
        }

        a .h_head:hover {
            color: var(--wind-accent);
        }

        .s_service_item {
            background: linear-gradient(40deg, #1e293b 0%, #f8fafc 100%);
            padding: 0;
            width: 85%;
        }

        .s_service_item p {
            padding: 0 5px;
            font-weight: normal;
            font-size: 0.5em;
        }

        .case_studies_slider .owl-item {
            width: 1000px !important;
        }

        .case_studies_slider .owl-item.cloned {
            width: 1000px !important;
            height: 500px !important;
        }

        .owl-stage-outer {
            height: 700px !important;
        }

        .owl-stage {
            width: 9000px !important;
            height: 700px !important;
        }

        .feedback_area_two {
            background: transparent;

        }

        .feedback_slider_two .shap_one,
        .feedback_slider_two .shap_two {
            background-image: linear-gradient(40deg, var(--wind-accent) 54%, #6366f1 100%)
        }

        .payment_subscribe_info {

            background: linear-gradient(135deg, #0f172a 0%, #1e1b4b 100%);

        }

        .faq_content .tab-pane .card .card-header .btn {
            color: var(--wind-accent);
        }

        .payment_content_two h2 {
            position: relative;

            /* botttop: -60px;om: -250px; */
        }

        .payment_content_two h2 {
            font-size: 15px !important;
        }

        .payment_content_two h2 span {
            font-size: 30px;
            font-weight: 100;
            /* margin-top: 200px; */
        }

        /* responsive */
        @media (max-width: 576px) {
            .payment_content_two h2 {
                font-size: 16px !important;
                line-height: 2rem;

            }

            .payment_content_two h2 span {
                font-weight: 700;
                font-size: 2rem;
            }

        }

        @media (min-width: 400px) {
            .restext {
                margin-top: 400px;
                margin: auto;
            }

        }

        .payment_img {
            margin-top: 25px !important;
        }

        h2 {
            font-size: 1.5rem;
            /* Default for large screens */
            text-align: center;
            margin-bottom: 0;
            line-height: 1.4;
            font-weight: 700;
        }

        h2 span {
            font-weight: 800;
            font-size: 3rem;
            /* Larger emphasis */
        }

        /* Large Screens (1200px and below) */
        @media (max-width: 1200px) {
            h2 {
                font-size: 2rem;
                line-height: 1.3;
            }

            h2 span {
                font-size: 2.5rem;
            }
        }

        /* Tablets (934px and below) */
        @media (max-width: 934px) {
            h2 {
                font-size: 1.8rem;
                line-height: 1;
            }

            h2 span {
                font-size: 2rem;
            }

            .logodivider {
                height: 50vh;
            }
        }

        /* Mobile devices (576px and below) */
        @media (max-width: 576px) {
            h2 {
                font-size: 0.5rem;
                line-height: 1.2;
            }

            h2 span {
                font-size: 0.5rem;
            }
        }

        /* Small mobile devices (400px and below) */
        @media (max-width: 400px) {
            h2 {
                font-size: 1.6rem;
                line-height: 1.1;
            }

            h2 span {
                font-size: 1.5rem;
            }
        }

        @media (max-width: 650px) {
            .seo_sec_title h2 {
                font-size: 1.6rem;
                line-height: 40px;
            }
        }

        .case_studies_area {
            padding: 40px 0;
            overflow-x: hidden;
            width: 100%;
        }

        #crouselwidth {
            max-width: 100%;
            padding: 0;
            width: 100%;
        }

        .custom-carousel {
            position: relative;
            width: 100%;
            overflow: hidden;
            box-sizing: border-box;
        }

        .carousel-container {
            display: flex;
            transition: transform 0.6s ease-in-out;
            width: 100%;
            margin: 0 auto;
        }

        .carousel-slide {
            min-width: 100%;
            flex: 0 0 100%;
            padding: 0 10px;
            opacity: 0.5;
            transition: all 0.6s ease;
            display: flex;

        }

        .carousel-slide img {
            border: 0px #DCDCDC solid;
        }

        .carousel-slide.active {
            opacity: 1;
            z-index: 10;
        }

        .carousel-slide.prev,
        .carousel-slide.next {
            opacity: 0.8;
        }

        /* Control container - now positioned at the bottom */
        .carousel-controls {
            display: flex;
            justify-content: center;
            align-items: center;
            margin-top: 30px;
            gap: 15px;
        }

        .carousel-nav {
            display: flex;
            gap: 10px;
        }

        .carousel-nav button {
            width: 40px;
            height: 40px;
            border-radius: 50%;
            background: white;
            border: 1px solid #ddd;
            cursor: pointer;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 18px;
            box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
            transition: all 0.3s ease;
        }

        .carousel-nav button:hover {
            background: #f0f0f0;
        }

        /* Line-style progress indicator */
        .carousel-progress {
            display: flex;
            align-items: center;
            width: 50%;
            max-width: 600px;
            min-width: 100px;
            height: 40px;
            margin: 0 10px;
            position: relative;
        }

        .progress-bar {
            width: 100%;
            height: 4px;
            background: #ddd;
            position: relative;
            cursor: pointer;
            border-radius: 2px;
        }

        .progress-fill {
            position: absolute;
            left: 0;
            top: 0;
            height: 100%;
            background: #6e6ed3;
            transition: width 0.3s ease;
            border-radius: 2px;
        }

        /* Click area for progress bar */
        .progress-segment {
            position: absolute;
            top: -10px;
            height: 24px;
            background: transparent;
            cursor: pointer;
        }

        /* Enhanced styling for your existing elements */
        .studies_item {
            background: white;
            border-radius: var(--radius-wind-inner);
            box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
            height: 100%;
            display: flex;
            flex-direction: column;
            overflow: hidden;
            width: 100%;
            border: 1px #BBBBBB solid;
        }

        .studies_item .text {
            padding: 25px;
            flex-grow: 1;
        }

        .studies_item h4 {
            font-size: 22px;
            margin-bottom: 15px;
            color: #222;
        }

        .studies_item p {
            font-size: 16px;
            color: #003c46;
            line-height: 1.6;
        }

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

        /* Responsive settings */
        @media (max-width: 576px) {
            .carousel-controls {
                flex-direction: column;
                gap: 10px;
            }

            .carousel-progress {
                width: 80%;
                max-width: none;
            }

            .carousel-nav button {
                width: 35px;
                height: 35px;
                font-size: 14px;
            }

            .studies_item .text {
                padding: 15px;
            }

            .studies_item h4 {
                font-size: 18px;
                margin-bottom: 10px;
            }

            .studies_item p {
                font-size: 14px;
            }
        }

        @media (min-width: 577px) and (max-width: 767px) {
            .carousel-slide {
                min-width: 90%;
                flex: 0 0 90%;
            }
        }

        @media (min-width: 768px) and (max-width: 991px) {
            .carousel-slide {
                min-width: 70%;
                flex: 0 0 70%;
            }
        }

        @media (min-width: 992px) and (max-width: 1199px) {
            .carousel-slide {
                min-width: 60%;
                flex: 0 0 60%;
            }
        }

        @media (min-width: 1200px) {
            .carousel-slide {
                min-width: 45%;
                flex: 0 0 45%;
            }
        }
    

        .symbols-pulse {
            top: 230px;
            left: 50%;
            transform: translateX(-50%);
        }

        /* Ambient soft blurred aura circles - light theme aura */
        .symbols-pulse > div {
            border-radius: 50% !important;
            background: radial-gradient(circle, rgba(70, 23, 143, 0.14) 0%, rgba(139, 92, 246, 0.08) 45%, rgba(221, 214, 254, 0.03) 70%, transparent 100%) !important;
            filter: blur(35px);
            pointer-events: none;
            will-change: transform, filter, opacity;
        }

        .symbols-pulse .pulse-1 {
            filter: blur(20px);
        }

        .symbols-pulse .pulse-2 {
            filter: blur(30px);
        }

        .symbols-pulse .pulse-3 {
            filter: blur(45px);
        }

        .symbols-pulse .pulse-4 {
            filter: blur(60px);
        }

        .symbols-pulse .pulse-x {
            filter: blur(35px);
        }

        .symbols-pulse img.vidyalay_hero_icon {
            filter: drop-shadow(0 15px 35px rgba(70, 23, 143, 0.2)) drop-shadow(0 4px 12px rgba(15, 23, 42, 0.1));
            max-height: 200px;
            width: auto;
            position: relative;
            z-index: 10;
        }

        .partner_logo_area_three {
            background: #ffffff;
            padding: 20px 0 0 0;
        }

        .payment_content_two h2 {
            color: #0f172a;
            text-shadow: none;
        }

        .payment_content_two p {
            color: #475569;
            text-shadow: none;
        }

        /* Section titles with gradient backgrounds */
        .seo_sec_title h2 {
            color: black;

        }

        .seo_sec_title p {
            color: #333;

        }

        /* Hosting section with gradient background */
        .hosting_title h2 {
            color: black;
            font-family: 'Inter', sans-serif;
        }

        .hosting_title p {
            color: black;
        }

        .h_head {
            color: black;
            font-weight: 600;
        }

        .hosting_service_item p {
            color: #555;
            font-weight: 350;

        }

        /* Testimonials section */
        .feedback_area_two .sec_title h2.w_color {
            color: #003c46;
            text-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
        }

        .feedback_area_two .sec_title p {
            color: #003c46;
            text-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
        }

        .feedback_item_two p {
            color: #333333;
            /* Darker text for testimonial content */

        }

        .feedback_item_two .feed_back_author h5 {
            color: #222222;
            /* Dark color for names */
        }

        .feedback_item_two .feed_back_author h6 {
            color: #555555;
            /* Medium dark for positions */
        }

        /* Email form placeholder text */
        .subcribes .form-control::placeholder,
        .subscribe-form .form-control::placeholder {
            color: #999999;
        }

        .faq_content .tab-pane .card .card-body,
        .faq_content .tab-pane .card .card-header .btn.collapsed,
        .faq_content .tab-pane .card .card-header .btn {
            color: black;
            /* White text for FAQ content */
        }

        /* Mega Dropdown Styling */

        /* Search Bar */
        .search-container {
            display: flex;
            align-items: center;
            background: rgba(255, 255, 255, 0.205);
            border-radius: var(--radius-wind-pill);
            padding: 8px 12px;
            backdrop-filter: blur(10px);
            border: 1px solid rgba(255, 255, 255, 0.2);
            box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
            width: 400px;
            max-width: 90%;
            margin: auto;
            margin-top: -60px;

        }

        .search-input {
            flex: 1;
            border: none;
            outline: none;
            background: transparent;
            font-size: 16px;
            color: #fff;
            padding: 10px;
        }

        .search-input::placeholder {
            color: rgba(255, 255, 255, 0.8);
        }

        .mic-btn {
            width: 40px;
            height: 40px;
            border-radius: 50%;
            border: none;
            background: linear-gradient(135deg, var(--wind-accent) 0%, #6366f1 100%);
            display: flex;
            align-items: center;
            justify-content: center;
            cursor: pointer;
            box-shadow: 0 4px 12px rgba(70, 23, 143, 0.3);
            transition: transform 0.2s ease, box-shadow 0.2s ease;
        }

        .mic-btn:hover {
            transform: scale(1.05);
            box-shadow: 0 6px 18px rgba(255, 75, 43, 0.4);
        }

        .mic-btn:active {
            transform: scale(0.95);
        }

        .mic-icon {
            width: 20px;
            height: 20px;
            fill: white;
        }

        /* Main Content */
        .header-section {
            text-align: center;
            padding: 2rem 0;
        }

        .header-title {
            font-size: 40px;
            font-weight: 700;
            margin-bottom: 1rem;
            color: black;
        }

        .header-description {
            font-size: 16px;
            color: var(--gray-600);
            max-width: 48rem;
            margin: 0 auto;
        }

        /* Responsive: 2 columns for tablet, 1 for mobile */
        @media (max-width: 992px) {
            .solutions-nav .dropdown-menu.solutions-dropdown {
                grid-template-columns: repeat(2, 1fr);
                width: 90%;
            }
        }

        @media (max-width: 576px) {
        }

        .section-title {
            font-size: 1.8rem;
            font-weight: 600;
            margin-bottom: 10px;
            color: black;

        }

        .payment_content_two h2 span {
            font-weight: 700;
            font-size: 40px;
        }

        .section-subtitle {
            font-size: 1rem;
            color: #555;
            max-width: 600px;
            margin: 0 auto 40px;
            text-align: center;
        }

        @media (max-width: 600px) {
            .section-title {
                font-size: 1.5rem;
            }
        }

        .hosting_service_item {
            background: #fff;
            border: 1px solid #eee;
            border-radius: var(--radius-wind-inner);
            padding: 25px;
            text-align: center;
            transition: all 0.3s ease;
            box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
        }

        .hosting_service_item:hover {
            transform: translateY(-5px) scale(1.02);
            box-shadow: 0 6px 18px rgba(0, 0, 0, 0.1);
            border-color: var(--wind-accent);

        }

        /* Icon style */
        .hosting_service_item .icon {
            font-size: 2.2rem;
            color: var(--wind-accent);
            margin-bottom: 15px;
            transition: all 0.3s ease;
        }

        /* Icon hover */
        .hosting_service_item:hover .icon {
            transform: scale(1.1);
        }

        /* Heading */
        .h_head {
            font-size: 1.1rem;
            font-weight: 600;
            margin: 10px 0;
            font-family: 'Inter', sans-serif;
            color: #222;
            transition: color 0.3s ease;
        }

        /* Heading hover → change to var(--wind-accent) */
        .hosting_service_item:hover .h_head {
            color: var(--wind-accent);
        }

        /* Paragraph */
        .hosting_service_item p {
            font-size: 0.9rem;
            color: #555;
            font-family: 'Inter', sans-serif;
            line-height: 1.5;
        }

        .payment_clients_area .payment_clients_inner .clients_item {
            border-width: 5px;
            border-color: rgb(246, 246, 250);
            border-style: solid;
            border-radius: var(--radius-wind-inner);
            background-color: rgb(255, 255, 255);
            box-shadow: 0px 1px 30px 0px rgba(250, 70, 22, 0.2);

            position: absolute;
            text-align: center;
        }

        .payment_clients_area {
            padding: 0px !important;
        }

        .testimonial-section {
            max-width: none;
            /* was 1200px */
            width: 100vw;
            margin-left: 50%;
            transform: translateX(-50%);
            /* break out of parent width */
            padding-left: 0;
            padding-right: 0;
            /* if you kept overflow:hidden earlier, remove it */
            overflow: visible;
        }

        .section-title {
            font-size: 2.75rem;
            font-weight: 600;
            color: black;
            margin-bottom: 16px;
            letter-spacing: -0.025em;
            padding-top: 60px;
        }

        .section-subtitle {
            font-size: 1.25rem;
            color: #333;
            margin-bottom: 64px;
            font-weight: 400;
        }

        .carousel-container {
            width: 100%;
            padding: 0;
        }

        .carousel-track {
            display: flex;
            gap: 24px;
            /* keep your spacing */
            width: max-content;
            animation: marquee 30s linear infinite;
        }

        .carousel-track:hover {
            animation-play-state: paused;
        }

        @keyframes marquee {
            from {
                transform: translateX(0);
            }

            to {
                transform: translateX(-50%);
            }

            /* move by one full copy */
        }

        .testimonial-card {
            background: #ffffff;
            border-radius: var(--radius-wind);
            padding: 40px 32px;
            box-shadow: 0 4px 10px -2px rgba(0, 0, 0, 0.05);

            border: 1px solid #f3f4f6;
            text-align: left;
            transition: transform 0.3s ease, box-shadow 0.3s ease;
            width: 380px;
            flex-shrink: 0;
            height: 480px;
            border: 1px solid grey;
        }

        .testimonial-card:hover {
            /* transform: translateY(-8px); */
            box-shadow: 0 20px 40px -4px rgba(0, 0, 0, 0.15), 0 8px 16px -4px rgba(0, 0, 0, 0.1);
        }

        .stars {
            display: flex;
            gap: 4px;
            margin-bottom: 24px;
        }

        .star {
            width: 20px;
            height: 20px;
            fill: #fbbf24;
        }

        .testimonial-text {
            font-size: 1.125rem;
            line-height: 1.7;
            color: #374151;
            margin-bottom: 32px;
            font-style: italic;
            quotes: "" " " "";
        }

        .testimonial-text::before {
            content: open-quote;
            font-size: 1.5em;
            color: #6b7280;
        }

        .testimonial-text::after {
            content: close-quote;
            font-size: 1.5em;
            color: #6b7280;
        }

        .author-info {
            border-top: 1px solid #e5e7eb;
            padding-top: 24px;
            display: flex;
            align-items: center;
            gap: 16px;
        }

        .profile-pic {
            width: 60px;
            height: 60px;
            border-radius: 50%;
            object-fit: cover;
            border: 3px solid #f3f4f6;
            flex-shrink: 0;
        }

        .author-details {
            flex: 1;
        }

        .author-name {
            font-size: 1.125rem;
            font-weight: 600;
            color: #111827;
            margin-bottom: 6px;
        }

        .author-title {
            font-size: 1rem;
            color: #6b7280;
            margin-bottom: 4px;
            font-weight: 500;
        }

        .author-organization {
            font-size: 1rem;
            color: #ea580c;
            font-weight: 600;
        }

        @keyframes infiniteScroll {
            0% {
                transform: translateX(0);
            }

            100% {
                transform: translateX(-808px);
                /* 2 cards * (380px width + 24px gap) to show 3 at a time */
            }
        }

        /* Message Input Container - REPLACE EXISTING */
        .message-input-container {
            position: relative;
            max-width: 300px;
            width: 90%;
            margin: 20px auto;
            z-index: 1000;

        }

        /* Main Button Wrapper */
        .message-input-wrapper {
            position: relative;
            display: flex;
            align-items: center;
            justify-content: center;
            background-color: var(--wind-accent);
            backdrop-filter: blur(30px);
            border-radius: var(--radius-wind-pill);
            padding: 20px 30px;
            box-shadow: 0 10px 40px rgba(0, 0, 0, 0.1);
            border: 1px solid rgba(255, 255, 255, 0.678);
            transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
            cursor: pointer;
            min-height: 75px;
            overflow: hidden;
        }

        .message-input-wrapper::before {
            content: '';
            position: absolute;
            inset: 0;
            border-radius: var(--radius-wind-pill);
            padding: 2px;

            /* Standard */
            mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
            mask-composite: exclude;
            /* = WebKit 'xor' */

            /* Safari/WebKit */
            -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
            -webkit-mask-composite: xor;

            opacity: 0;
            transition: opacity .4s ease;
        }

        .message-input-wrapper:hover {
            transform: translateY(-4px);
            box-shadow: 0 15px 50px rgba(0, 0, 0, 0.15);
        }

        .message-input-wrapper:hover::before {
            opacity: 1;
        }

        /* Status Text */
        .status-text {
            font-size: 18px;
            color: #eaecee;
            font-weight: 500;
            text-align: center;
            letter-spacing: 0.1px;
            z-index: 2;
            position: relative;
            transition: all 0.3s ease;
        }

        /* ===== LISTENING STATE ===== */
        .message-input-wrapper.listening {
            background-color: var(--wind-accent);
            border-color: rgba(165, 180, 252, 0.4);
            box-shadow: 0 0 0 4px rgba(70, 23, 143, 0.2),
                0 15px 50px rgba(70, 23, 143, 0.4);
        }

        .message-input-wrapper.listening .status-text {
            color: #ffffff;
        }

        /* ===== SPEAKING STATE ===== */
        .message-input-wrapper.speaking {
            background-color: rgba(52, 211, 153, 0.671);
            border-color: rgba(52, 211, 153, 0.671);
            box-shadow: 0 0 0 4px rgba(52, 211, 153, 0.1),
                0 15px 50px rgba(52, 211, 153, 0.61);
        }

        .message-input-wrapper.speaking .status-text {
            color: white;
        }

        /* ===== VOICE WAVES ===== */
        .voice-waves-container {
            position: absolute;
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 8px;
            height: 40px;
            opacity: 0;
            transform: scale(0.8);
            transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
        }

        .voice-waves-container.active {
            opacity: 1;
            transform: scale(1);
        }

        /* Left waves */
        .voice-waves-left {
            left: 50px;
        }

        /* Right waves */
        .voice-waves-right {
            right: 50px;
        }

        /* Individual wave bars */
        .wave {
            width: 4px;
            height: 14px;
            border-radius: 4px;
            animation: waveMotion 1.2s infinite ease-in-out;
        }

        /* Listening waves - Indigo/Violet gradient */
        .message-input-wrapper.listening .wave {
            background: linear-gradient(180deg, #c7d2fe 0%, #e0e7ff 100%);
            box-shadow: 0 0 12px rgba(70, 23, 143, 0.5);
        }

        /* Speaking waves - Colorful gradient */
        .message-input-wrapper.speaking .wave {
            background: linear-gradient(180deg, #10b981 0%, #34d399 50%, #6ee7b7 100%);
            box-shadow: 0 0 12px rgba(52, 211, 153, 0.5);
        }

        /* Staggered wave animation */
        .wave:nth-child(1) {
            animation-delay: 0s;
            height: 14px;
        }

        .wave:nth-child(2) {
            animation-delay: 0.1s;
            height: 18px;
        }

        .wave:nth-child(3) {
            animation-delay: 0.2s;
            height: 24px;
        }

        .wave:nth-child(4) {
            animation-delay: 0.3s;
            height: 18px;
        }

        .wave:nth-child(5) {
            animation-delay: 0.4s;
            height: 14px;
        }

        /* Wave Animation */
        @keyframes waveMotion {

            0%,
            100% {
                transform: scaleY(0.5);
                opacity: 0.7;
            }

            50% {
                transform: scaleY(1.5);
                opacity: 1;
            }
        }

        /* Pause Icon */
        .pause-icon {
            position: absolute;
            right: 50px;
            display: none;
            gap: 5px;
            opacity: 0;
            transition: opacity 0.3s ease;
        }

        .pause-icon.active {
            display: flex;
            opacity: 1;
        }

        .pause-icon span {
            width: 4px;
            height: 24px;
            background: linear-gradient(180deg, #10b981 0%, #34d399 100%);
            border-radius: 3px;
            box-shadow: 0 0 10px rgba(52, 211, 153, 0.4);
            animation: pausePulse 1.5s infinite ease-in-out;
        }

        .pause-icon span:nth-child(2) {
            animation-delay: 0.2s;
        }

        @keyframes pausePulse {

            0%,
            100% {
                opacity: 0.6;
                transform: scaleY(0.9);
            }

            50% {
                opacity: 1;
                transform: scaleY(1.1);
            }
        }

        .status-text {
            transition: opacity 0.3s ease, color 0.3s ease !important;
        }

        /* On small screens keep it tidy */
        @media (max-width: 480px) {
            .voice-waves {
                right: 8px;
                height: 20px;
                gap: 3px;
            }

            .voice-waves .wave {
                width: 2.5px;
            }

            .stop-icon {
                right: 6px;
                width: 22px;
                height: 22px;
            }
        }

        .message-input {
            flex: 1;
            border: none;
            outline: none;
            text-align: center;
            background: transparent;
            font-size: 16px;
            color: white;
            padding: 8px 16px;
            resize: none;
            min-height: 40px;
            max-height: 120px;
        }

        .message-input::placeholder {
            color: rgba(255, 255, 255, 0.8);
        }

        .workflows-button {
            background: linear-gradient(45deg, var(--wind-accent), #6366f1, #8b5cf6);
            background-size: 300% 300%;
            border: none;
            color: white;
            padding: 12px;
            border-radius: 50%;
            cursor: pointer;
            font-size: 14px;
            font-weight: 600;
            margin-right: 12px;
            animation: gradientShift 3s ease-in-out infinite;
        }

        @keyframes gradientShift {

            0%,
            100% {
                background-position: 0% 50%;
            }

            50% {
                background-position: 100% 50%;
            }
        }

        .action-button {
            background: linear-gradient(135deg, var(--wind-accent) 0%, #6366f1 100%);
            border: none;
            border-radius: 50%;
            width: 48px;
            height: 48px;
            cursor: pointer;
            display: flex;
            align-items: center;
            justify-content: center;
            margin-right: 5px;
            transition: all 0.3s ease;
        }

        .conversation-button {
            width: 48px;
            height: 48px;
            border-radius: 50%;
            border: none;
            cursor: pointer;
            display: flex;
            align-items: center;
            justify-content: center;
            transition: all 0.3s ease;
            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
        }

        .conversation-button.listening {
            background: linear-gradient(135deg, #00a8ff 0%, #0084ff 100%);
            animation: conversationListeningPulse 2s infinite;
        }

        .conversation-button.speaking {
            background: linear-gradient(135deg, #00ff88 0%, #00cc6a 100%);
            animation: conversationSpeakingPulse 1s infinite;
        }

        /* Chat Container Styles */
        .chat-container {
            position: fixed;
            top: 80px;
            left: 50%;
            transform: translateX(-50%);
            width: 90%;
            max-width: 1200px;
            height: calc(100vh - 180px);
            overflow-y: auto;
            padding: 20px;
            opacity: 0;
            visibility: hidden;
            transition: all 0.5s ease;
            z-index: 998;
            background: rgba(255, 255, 255, 0.9);
            backdrop-filter: blur(16px);
            border-radius: var(--radius-wind);
            border: 1px solid rgba(0, 0, 0, 0.08);
            box-shadow: 0 20px 50px rgba(15, 23, 42, 0.12);
        }

        .chat-container.active {
            opacity: 1;
            visibility: visible;
        }

        .chat-message {
            margin-bottom: 20px;
            display: flex;
            flex-direction: column;
            animation: messageSlideIn 0.3s ease-out;
        }

        .message-bubble {
            max-width: 70%;
            padding: 12px 18px;
            border-radius: 18px;
            color: #0f172a;
            word-wrap: break-word;
            line-height: 1.4;
        }

        .user-message .message-bubble {
            background: var(--wind-accent);
            color: #ffffff;
            align-self: flex-end;
            margin-left: auto;
        }

        .ai-message .message-bubble {
            background: #f1f5f9;
            backdrop-filter: blur(10px);
            border: 1px solid #e2e8f0;
            align-self: flex-start;
            color: #0f172a !important;
        }

        /* Rest of the required styles... */

        /* Responsive Design */
        @media (max-width: 1024px) {
            .testimonial-card {
                width: 350px;
            }

            .section-title {
                font-size: 2.25rem;
            }

            @keyframes infiniteScroll {
                0% {
                    transform: translateX(0);
                }

                100% {
                    transform: translateX(-748px);
                    /* Adjusted for smaller cards */
                }
            }
        }

        @media (max-width: 768px) {

            .section-title {
                font-size: 40px;
                margin-bottom: 12px;
            }

            .section-subtitle {
                font-size: 15px;
                margin-bottom: 48px;
            }

            .testimonial-card {
                padding: 32px 24px;
                border-radius: var(--radius-wind-inner);
                width: 320px;
            }

            .testimonial-text {
                font-size: 1rem;
                margin-bottom: 24px;
            }

            .profile-pic {
                width: 50px;
                height: 50px;
            }

            .carousel-track {
                gap: 20px;
            }

            .message-input-wrapper {
                padding: 20px 50px;
                min-height: 70px;
            }

            .status-text {
                font-size: 20px;
            }

            .voice-waves-left {
                left: 30px;
            }

            .voice-waves-right {
                right: 30px;
            }

            .pause-icon {
                right: 30px;
            }

            .wave {
                width: 3px;
            }

            @keyframes infiniteScroll {
                0% {
                    transform: translateX(0);
                }

                100% {
                    transform: translateX(-680px);
                    /* Show 1 card at a time on mobile */
                }
            }
        }

        @media (max-width: 480px) {
            .testimonial-section {
                padding-top: 40px;
            }

            .section-title {
                font-size: 1.75rem;
            }

            .section-subtitle {
                font-size: 1rem;
                text-align: center;
            }

            .testimonial-card {
                padding: 24px 20px;
                width: 300px;
            }

            .author-info {
                gap: 12px;
            }

            .profile-pic {
                width: 45px;
                height: 45px;
            }

            .carousel-track {
                gap: 16px;
            }

            .message-input-container {
                max-width: 75%;
            }

            .message-input-wrapper {
                padding: 18px 40px;
                min-height: 60px;
            }

            .status-text {
                font-size: 18px;
            }

            .voice-waves-left {
                left: 20px;
            }

            .voice-waves-right {
                right: 20px;
            }

            .pause-icon {
                right: 20px;
            }

            @keyframes infiniteScroll {
                0% {
                    transform: translateX(0);
                }

                100% {
                    transform: translateX(-632px);
                    /* Single card view on small mobile */
                }
            }
        }

        .pillars-section {

            background: linear-gradient(to bottom, #1e1b4b 0%, #1e293b 35%, #ffffff 100%);

            text-align: center;
        }

        .pillars-section h2 {
            font-size: 2.5rem;
            font-weight: 700;
            color: white;
            margin-bottom: 20px;
        }

        .pillars-section p.sub-text {
            font-size: 1.1rem;
            color: whitesmoke;
            max-width: 700px;
            margin: 0 auto 60px;
        }

        .pillars-container {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
            gap: 25px;
            max-width: 1100px;
            margin: 0 auto;
        }

        .pillar-card {
            background: #fff;
            border-radius: var(--radius-wind);
            padding: 40px 25px;
            box-shadow: 0 10px 25px rgba(0, 0, 0, 0.08);
            transition: transform 0.3s ease, box-shadow 0.3s ease;
            text-align: left;
            position: relative;
            overflow: hidden;
            border: 1px solid #e2e8f0;
        }

        .pillar-card::before {
            content: "";
            position: absolute;
            top: 0;
            left: 0;
            height: 5px;
            width: 100%;
            background: var(--wind-accent);
        }

        .pillar-card:hover {
            transform: translateY(-8px);
            box-shadow: 0 15px 35px rgba(0, 0, 0, 0.12);

        }

        .pillar-icon {
            font-size: 2.8rem;
            color: var(--wind-accent);
            margin-bottom: 20px;
        }

        .pillar-card h3 {
            font-size: 1.4rem;
            font-weight: 700;
            color: #222;
            margin-bottom: 10px;
        }

        .pillar-card p {
            font-size: 1rem;
            color: #555;
            line-height: 1.6;
            margin: 0;
        }

        @media (max-width: 768px) {
            .pillars-section h2 {
                font-size: 2rem;
            }

            .pillar-card {
                padding: 30px 20px;
            }
        }

        @media (max-width: 600px) {
            .pillars-section {
                padding: 40px 15px;
            }

            .pillars-container {
                grid-template-columns: 1fr;
                /* One card per row */
                justify-items: center;
                /* Center the cards */
                gap: 30px;
            }

            .pillar-card {
                max-width: 340px;
                /* Prevent too-wide cards */
                width: 100%;
                padding: 25px 20px;
                text-align: center;
                /* Looks better on narrow screens */
            }

            .pillar-icon {
                font-size: 2.2rem;
                /* Slightly smaller icons */
                margin-bottom: 15px;
            }

            .pillar-card h3 {
                font-size: 1.2rem;
            }

            .pillar-card p {
                font-size: 0.95rem;
                line-height: 1.5;
            }
        }

        .feature-video-section {
            max-width: 1000px;
            margin: 0px auto;
            text-align: center;
        }

        .video-heading {
            font-size: 3rem;
            font-weight: 600;
            color: #1c1f25;
            margin-bottom: 30px;
            letter-spacing: 1px;
            line-height: 1.3;
        }

        .video-container {
            width: 100%;
            aspect-ratio: 16/9;
            /* remove border, radius, shadow */
            border: none;
            border-radius: 0;
            overflow: hidden;
            box-shadow: none;
            border: 3px solid rgb(49, 48, 48);
            border-radius: 8px;
        }

        .video-container video {
            width: 100%;
            height: 100%;
            object-fit: cover;
            /* ensures no white space */
            display: block;
        }

        @media (max-width: 768px) {
            .video-heading {
                font-size: 2.2rem;
            }
        }

        @media (max-width: 480px) {
            .video-heading {
                font-size: 1.8rem;
            }
        }

        @media (max-width: 600px) {

            .video-container {
                max-width: 100%;
                /* ensure it scales down */
                margin: 0 auto;
                /* center it */
                border-width: 3px;
                /* slightly thinner border */
                border-radius: 15px;
                /* smaller radius looks better on small screens */
            }

            .video-heading {
                font-size: 1.6rem;
                line-height: 1.4;
                margin-bottom: 20px;
                /* tighter spacing */
            }
        }

        .hosting_service_item {
            background: #fff;
            border: 1px solid #e2e8f0;
            border-radius: var(--radius-wind-inner);
            padding: 25px;
            text-align: center;
            transition: all 0.3s ease;
            box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
        }

        .hosting_service_item:hover {
            transform: translateY(-5px) scale(1.02);
            box-shadow: 0 6px 18px rgba(0, 0, 0, 0.1);
            border-color: var(--wind-accent);

        }

        /* Icon style */
        .hosting_service_item .icon {
            font-size: 2.2rem;
            color: var(--wind-accent);
            margin-bottom: 15px;
            transition: all 0.3s ease;
        }

        /* Icon hover */
        .hosting_service_item:hover .icon {
            transform: scale(1.1);
        }

        /* Heading */
        .h_head {
            font-size: 1.1rem;
            font-weight: 600;
            margin: 10px 0;
            font-family: 'Inter', sans-serif;
            color: #222;
            transition: color 0.3s ease;
        }

        /* Heading hover → change to var(--wind-accent) */
        .hosting_service_item:hover .h_head {
            color: var(--wind-accent);
        }

        /* Paragraph */
        .hosting_service_item p {
            font-size: 0.9rem;
            color: #555;
            font-family: 'Inter', sans-serif;
            line-height: 1.5;
        }

        @media (max-width: 768px) {
            .scroll-wrapper {
                position: relative;
                overflow: hidden;
                margin: 0 -10px;
                padding-bottom: 20px;
            }

            .scroll-row {
                display: flex !important;
                flex-wrap: nowrap !important;
                overflow-x: auto;
                scroll-behavior: smooth;
                gap: 15px;
                padding: 0 10px;
                -webkit-overflow-scrolling: touch;
            }

            .scroll-row::-webkit-scrollbar {
                display: none;
                /* clean look */
            }

            .scroll-row .col-sm-6 {
                flex: 0 0 80%;
                /* each card takes 80% of screen width */
                max-width: 80%;
            }

            /* arrow buttons */
            .scroll-btn {
                position: absolute;
                top: 40%;
                transform: translateY(-50%);
                background: rgba(70, 23, 143, 0.9);
                color: #fff;
                border: none;
                border-radius: 50%;
                width: 34px;
                height: 34px;
                font-size: 1.2rem;
                cursor: pointer;
                z-index: 10;
            }

            .scroll-btn.left {
                left: 5px;
            }

            .scroll-btn.right {
                right: 5px;
            }
        }

        .sec_pad {
            padding: 0px;
        }

        .responsive-heading {
            font-size: 2.2rem;
            /* default desktop size */
            line-height: 1.3;
            text-align: center;
            /* center align looks better on mobile */
            word-break: break-word;
        }

        @media (max-width: 768px) {
            .responsive-heading {
                font-size: 1.4rem;
                /* smaller font on mobile */
                padding: 0 10px;
                /* give side padding */
            }
        }

        .section {
            text-align: center;
            padding-top: 60px;
            background: #fefefe;
        }

        .section h2 {
            font-size: 1.6 rem;
            font-weight: 600;
            margin-bottom: 10px;
            color: #1a1a1a;
        }

        .section p {
            margin-top: 8px;
            color: #333;
            font-size: 16px;
        }

        /* Tabs */
        .tabs {
            display: flex;
            justify-content: center;
            margin: 30px 0;
            flex-wrap: wrap;
            gap: 12px;
        }

        .tab {
            padding: 12px 22px;
            border-radius: 8px;
            background: #f3f3f3;
            cursor: pointer;
            font-weight: 600;
            transition: all 0.3s ease;
            border: 1px solid #ddd;
        }

        .tab:hover {
            background: var(--wind-accent);
            color: #fff;
        }

        .tab.active {
            background: var(--wind-accent);
            border-color: var(--wind-accent);
            color: #fff;
            font-weight: bold;
            box-shadow: 0 6px 18px rgba(70, 23, 143, 0.35);
        }

        /* Content container */
        .content-box {
            max-width: 1100px;
            margin: auto;
            display: flex;
            gap: 40px;
            align-items: flex-start;
            padding: 40px;
            border-radius: var(--radius-wind);
            background: #fff;
            box-shadow: 0 6px 18px rgba(255, 126, 78, 0.4);
            overflow: visible;
            transition: transform 0.3s ease, box-shadow 0.3s ease;
        }

        .content-box:hover {
            transform: translateY(-5px);
            box-shadow: 0 6px 18px rgba(255, 126, 78, 0.4);
        }

        /* Text side */
        .text-side {
            flex: 1 1 500px;
            text-align: left;
        }

        .text-side h3 {
            margin-bottom: 15px;
            font-size: 24px;
            color: #000000cf;
            line-height: 1.3;
        }

        .text-side p {
            font-size: 16px;
            color: #555;
            line-height: 1.6;
            margin-bottom: 20px;
        }

        .text-side ul {
            padding-left: 20px;
            margin-top: 15px;
        }

        .text-side ul li {
            margin: 12px 0;
            position: relative;
            font-size: 16px;
            color: #444;
        }

        /* Image side */
        .image-side {
            flex: 1 1 450px;
            text-align: center;
        }

        .image-side img {
            max-width: 100%;
            border-radius: var(--radius-wind);
            box-shadow: 0 8px 20px rgba(0, 0, 0, 0.1);
            transition: transform 0.3s ease, box-shadow 0.3s ease;
        }

        /* Hover effect on image */
        .image-side img:hover {
            transform: scale(1.03);
            box-shadow: 0 12px 28px rgba(0, 0, 0, 0.12);
        }

        /* Responsive */
        @media (max-width: 1024px) {
            .content-box {
                flex-direction: column;
                padding: 30px 20px;
                gap: 30px;
            }

            .text-side,
            .image-side {
                flex: 1 1 100%;
                text-align: center;
            }

            .text-side ul {
                text-align: left;
                display: inline-block;
            }
        }

        /* Removed forced Nunito !important override to respect Wind UI Poppins */

        /* Mobile view: scrollable tab row */
        @media (max-width: 768px) {
            .tabs {
                display: flex;
                flex-wrap: nowrap;
                /* no wrapping */
                overflow-x: auto;
                /* enable horizontal scroll */
                -webkit-overflow-scrolling: touch;
                scrollbar-width: none;
                padding-left: 425px;
            }

            .tabs::-webkit-scrollbar {
                display: none;
                /* hide scrollbar Chrome/Safari */
            }

            .tab {
                flex: 0 0 auto;
                /* prevent shrinking */
                white-space: nowrap;
                font-size: 14px;
                /* slightly smaller text for mobile */
                padding: 10px 16px;
            }

            .content-box {
                flex-direction: column;
                padding: 20px;
                gap: 20px;
            }

            .text-side {
                text-align: center;
            }

            #imageContent {
                width: 100% !important;
                max-width: 320px;
                margin: 0 auto;
            }
        }

        .image-container {
            width: 100%;
            max-width: 100%;
            height: auto;
        }

        .image-container img {
            width: 100%;
            height: auto;
            /* Keeps aspect ratio */
            display: block;
            /* Removes extra space below image */
            border-radius: var(--radius-wind-inner);

        }

        .my-image-wrapper {
            max-width: 100%;
            display: flex;
            justify-content: center;
            align-items: center;
            padding: 20px;
        }

        .my-responsive-image {
            max-width: 100%;
            height: auto;
            border-radius: var(--radius-wind-inner);
            /* optional */
        }

        @media (max-width: 991px) {
            .menu {
                padding: 10px 30px;
                background: #fff;
                margin-top: 0px;
            }
        }

        @media (max-width: 991px) {
            .menu {
                padding: 10px 30px;
                background: #fff;
                margin-top: 0px;
            }
        }

        img {
            user-select: none;
            /* block text/image selection */
            -webkit-user-drag: none;
            /* block drag in Chrome/Safari */
            -moz-user-select: none;
            /* block selection in Firefox */
            -ms-user-select: none;
            /* block selection in old Edge/IE */
        }

        /* header text responsiveness */

        .heading-section {
            text-align: center;
            color: #0f172a !important;
            white-space: nowrap;
            /* Prevents line breaks */
            overflow: hidden;
            text-overflow: ellipsis;
            padding: 10px 5px;
        }

        .heading-section p {
            color: #0f172a !important;
            margin: 5px 0;
            font-weight: 700;
            line-height: 1.2;
        }

        /* Default size for small screens (300px - 480px) */
        .heading-section p span {
            font-size: 16px;
        }

        /* Medium devices (481px - 768px) */
        @media (min-width: 481px) {
            .heading-section p span {
                font-size: 20px;
            }

        }

        /* Tablets (769px - 1024px) */
        @media (min-width: 769px) {
            .heading-section p span {
                font-size: 28px;
            }

        }

        /* Laptops (1025px - 1440px) */
        @media (min-width: 1025px) {
            .heading-section p span {
                font-size: 32px;
            }
        }

        /* Large desktops (1441px and above) */
        @media (min-width: 1441px) {
            .heading-section p span {
                font-size: 48px;
            }
        }

        #hero-section {
            margin-top: -100px;
            transition: margin-top 0.3s ease;
        }

        /* Tablets and smaller laptops */
        @media (max-width: 1024px) {
            #hero-section {
                margin-top: -80px;
            }

            .heading-section p span {
                font-size: 48px;
            }
        }

        /* Base (default for mobile-first) */
        .gradient-background {
            background: radial-gradient(100% 70% at 50% 0%, #f1f5f9 0%, #f8fafc 45%, #ffffff 100%);
            position: relative;
            overflow: hidden;
        }

        /* Small devices (≥576px) */
        @media (min-width: 576px) {
            .gradient-background {
                margin-top: 20px;
                /* adjust if needed */
            }
        }

        /* Medium devices (≥768px) */
        @media (min-width: 768px) {
            .gradient-background {
                /* margin-top: 40px; */
                /* adjust if needed */
            }
        }

        /* Large devices (≥992px) */
        @media (min-width: 992px) {
            .gradient-background {
                /* margin-top: 60px; */
                /* adjust if needed */
            }
        }

        /* Extra Large devices (≥1200px) */
        @media (min-width: 1200px) {
            .gradient-background {

                /* adjust if needed */
            }
        }

        /* Very Large screens (≥1600px) */
        @media (min-width: 1600px) {
            .gradient-background {
                margin-top: 120px;
            }
        }

        /* Small devices (around 600px and below) */
        @media (max-width: 600px) {
            #hero-section {
                margin-top: -30px;
            }

            .heading-section p span {
                font-size: 20px;
            }

        }

        @media (max-width: 800px) {
            #hidder {
                display: none;
            }

        }

        /* Very small screens (300px and below) */
        @media (max-width: 400px) {
            #hero-section {
                margin-top: 20px;

            }

            .heading-section p span {
                font-size: 20px;
            }

        }

        .section h2 {
            font-size: 1.6 rem;
            font-weight: 600;
            margin-bottom: 10px;
            color: #1a1a1a;
        }

        /* Mobile-only: hide desktop mega, show collapsible list */
        @media (max-width: 991.98px) {
            .solutions-dropdown {
                display: none !important;
            }

            .solutions-toggle {
                display: flex;
                align-items: center;
                gap: 6px;
            }

            .solutions-caret {
                display: inline-block;
                width: 8px;
                height: 8px;
                border-right: 2px solid #000;
                border-bottom: 2px solid #000;
                transform: rotate(45deg);
                transition: transform .2s ease;
                margin-top: 2px;
            }

            .solutions-nav.open .solutions-caret {
                transform: rotate(225deg);
            }

            .mob-submenu {
                list-style: none;
                padding: 6px 0 0 0;
                margin: 0;
                display: none;
            }

            .solutions-nav.open .mob-submenu {
                display: block;
            }

            .mob-submenu li a {
                display: block;
                padding: 10px 12px;
                border-radius: 8px;
                text-decoration: none;
                color: #000;
                background: #f6f7f9;
                margin-bottom: 8px;
            }

            .mob-submenu li a:active,
            .mob-submenu li a:hover {
                background: #fff;
                box-shadow: 0 2px 8px rgba(0, 0, 0, .08);
            }
        }

        /* Desktop keeps hover mega menu */
        @media (min-width: 992px) {
            .mob-submenu {
                display: none !important;
            }
        }

        html,
        body {
            overflow: auto;
            scrollbar-width: none;
            /* Firefox */
        }

        /* For Chrome, Safari, Edge */
        html::-webkit-scrollbar,
        body::-webkit-scrollbar {
            display: none;
        }

        /* --- Responsive layout --- */
        @media (max-width: 992px) {
            .footer_top_six .row {
                justify-content: center;
                text-align: center;
            }

            .f_widget {
                min-width: 45%;
            }

            .f_social_icon {
                justify-content: center;
            }
        }

        @media (max-width: 576px) {
        }

        @media (max-width: 991px) {
        }

        @media (max-width: 576px) {
        }

        /* --- Mobile View: Compact Footer with Tight List Spacing --- */
        @media (max-width: 576px) {
            .footer_all_row {
                flex-direction: column !important;
                align-items: flex-start !important;
                text-align: left !important;
                gap: 12px !important;
                padding-top: 40px !important;
            }

            /* Logo section */
            .footer_all_row>div:first-child {
                width: 100% !important;
                margin-bottom: 10px !important;
            }

            /* Inner footer stack */
            .innerFooter {
                display: flex !important;
                flex-direction: column !important;
                align-items: flex-start !important;
                gap: 8px !important;
                width: 100% !important;
            }

            .innerFooter>div {
                width: 100% !important;
                text-align: left !important;
                margin-bottom: 5px !important;
            }

            /* Titles */
            .f_widget .f-title {
                font-size: 15px !important;
                margin-bottom: 4px !important;
                font-weight: 600 !important;
            }

            /* List and links */
            .f_widget ul {
                padding-left: 0 !important;
                margin: 0 !important;
            }

            .f_widget ul li {
                margin-bottom: 3px !important;
                /* reduced from 6px → tighter spacing */
                list-style: none !important;
                line-height: 1.4 !important;
            }

            .f_widget ul li a {
                font-size: 14px !important;
                color: #333 !important;
                text-decoration: none !important;
            }

            /* Social icons */
            .f_social_icon {
                justify-content: flex-start !important;
                gap: 8px !important;
                margin-top: 5px !important;
            }

            /* Copyright */
            .footer_bottom {
                border-top: 1px solid #eee;
                margin-top: 8px !important;
                padding-top: 6px !important;
                font-size: 13px !important;
                text-align: left !important;
            }
        }

        @media (max-width: 576px) {

            /* Responsive adjustments */
            @media (max-width: 992px) {
                .footer_all_row {
                    flex-wrap: wrap;
                    justify-content: flex-start;
                    gap: 40px;
                    text-align: left;
                }

                .footer_all_row>div {
                    min-width: 45%;
                }
            }

            @media (max-width: 576px) {
                .footer_all_row {
                    flex-direction: column;
                    align-items: flex-start;
                    padding-top: 100px !important;
                }

                .footer_all_row>div {
                    width: 100%;
                    margin-bottom: 20px;
                }
            }

            /* ====== FOOTER RESPONSIVENESS (1200px → 500px) ====== */

            /* Desktop (≥1200px) */
            @media (min-width: 1200px) {
                .footer_all_row {
                    display: flex;
                    justify-content: space-between;
                    align-items: flex-start;
                    gap: 40px;
                    padding-top: 100px;
                }

                .footer_all_row>div {
                    flex: 1;
                    min-width: 220px;
                }

                .innerFooter {
                    display: flex;
                    flex-direction: row;
                    justify-content: space-between;
                    flex-wrap: nowrap;
                    gap: 40px;
                }
            }

            /* Large tablets & small desktops (≤1199px and ≥992px) */
            @media (max-width: 1199px) and (min-width: 992px) {
                .footer_all_row {
                    flex-wrap: wrap;
                    justify-content: space-between;
                    gap: 30px;
                    padding-top: 90px;
                }

                .innerFooter {
                    display: flex;
                    flex-wrap: wrap;
                    gap: 30px;
                }

                .innerFooter>div {
                    flex: 1 1 45%;
                    min-width: 250px;
                }
            }

            /* Tablets (≤991px and ≥768px) → Two columns layout */
            @media (max-width: 991px) and (min-width: 768px) {
                .footer_all_row {
                    flex-wrap: wrap;
                    justify-content: space-between;
                    align-items: flex-start;
                    gap: 25px;
                    padding-top: 70px;
                }

                .footer_all_row>div {
                    flex: 1 1 45%;
                }

                .innerFooter {
                    display: flex;
                    flex-wrap: wrap;
                    gap: 25px;
                }

                .innerFooter>div {
                    flex: 1 1 45%;
                }

                .f_widget .f-title {
                    font-size: 15px;
                    margin-bottom: 8px;
                }

                .f_widget ul li {
                    margin-bottom: 5px;
                }
            }

            /* Small Tablets & Large Mobiles (≤767px and ≥501px) → Two stacked columns */
            @media (max-width: 767px) and (min-width: 501px) {
                .footer_all_row {
                    flex-direction: column;
                    align-items: flex-start;
                    gap: 20px;
                    padding-top: 60px;
                }

                .footer_all_row>div:first-child {
                    width: 100%;
                }

                .innerFooter {
                    display: flex;
                    flex-wrap: wrap;
                    gap: 15px;
                    width: 100%;
                }

                .innerFooter>div {
                    width: 48%;
                }

                .f_widget .f-title {
                    font-size: 15px;
                    margin-bottom: 6px;
                }

                .f_widget ul li {
                    margin-bottom: 4px;
                }
            }

            /* Small Mobiles (≤500px) → Single column stack */
            @media (max-width: 500px) {
                .footer_all_row {
                    flex-direction: column !important;
                    align-items: flex-start !important;
                    text-align: left !important;
                    gap: 12px !important;
                    padding-top: 40px !important;
                }

                .footer_all_row>div:first-child {
                    width: 100% !important;
                    margin-bottom: 10px !important;
                }

                .innerFooter {
                    display: flex !important;
                    flex-direction: column !important;
                    align-items: flex-start !important;
                    gap: 8px !important;
                    width: 100% !important;
                }

                .innerFooter>div {
                    width: 100% !important;
                    margin-bottom: 4px !important;
                }

                .f_widget .f-title {
                    font-size: 15px !important;
                    margin-bottom: 4px !important;
                }

                .f_widget ul li {
                    margin-bottom: 3px !important;
                    line-height: 1.4 !important;
                }

                .f_social_icon {
                    justify-content: flex-start !important;
                    gap: 8px !important;
                    margin-top: 5px !important;
                }

                .footer_bottom {
                    margin-top: 8px !important;
                    padding-top: 6px !important;
                    font-size: 13px !important;
                    text-align: left !important;
                }
            }

            /* --- Hide desktop dropdown on small screens --- */
            @media (max-width: 991px) {
                .solutions-dropdown {
                    display: none !important;
                }
            }

            /* ===== VIDYALAY TYPOGRAPHY SYSTEM ===== */
            :root {
                --text-color: #13161A;
                --heading-font: 'Nunito Sans', sans-serif;
                --body-font: 'Nunito Sans', "Poppins";
            }

            /* Apply Nunito Sans globally */
            /* Removed forced global body-font override to respect Wind UI Poppins */

            /* Headings (based on your sample: 32px Nunito Sans) */
            h1,
            h2,
            h3,
            h4,
            h5,
            h6 {
                font-family: var(--heading-font) !important;
                font-weight: 700;
                color: var(--text-color);
                margin-bottom: 10px;
            }

            /* Font sizes hierarchy */
            h1 {
                font-size: 28px !important;
            }

            h2 {
                font-size: 24px !important;
            }

            h3 {
                font-size: 20px !important;
            }

            h4 {
                font-size: 18px !important;
            }

            p,
            li,
            a,
            span,
            button,
            input,
            label {
                font-size: 14px !important;
            }

            /* Links */
            a {
                color: var(--text-color);
                text-decoration: none;
                transition: color 0.3s ease;
            }

            /* Adjust headings for mobile */
            @media (max-width: 768px) {
                h1 {
                    font-size: 26px !important;
                }

                h2 {
                    font-size: 22px !important;
                }

                h3 {
                    font-size: 20px !important;
                }

                p,
                li,
                a,
                span {
                    font-size: 13px !important;
                }
            }

            .btn_four {
                color: white !important;
            }

            .payment_subscribe_info .subscribe-form .btn_four:hover {
                background: #fff;
                color: var(--wind-accent) !important;
            }
        }

        /* Fixed WhatsApp Button with SVG */
        .fixed-whatsapp {
            position: fixed;
            bottom: 25px;
            right: 25px;
            z-index: 3000;
            background-color: #25D366;
            /* WhatsApp green */
            padding: 14px;
            border-radius: 50%;
            box-shadow: 0px 0px 11px rgba(0, 0, 0, 0.5);
            display: flex;
            align-items: center;
            justify-content: center;
            width: 60px;
            height: 60px;
            cursor: pointer;
            transition: all 0.3s ease;
        }

        /* Hover effect */
        .fixed-whatsapp:hover {
            transform: scale(1.1);
            box-shadow: 0px 0px 18px rgba(0, 0, 0, 0.6);
            background-color: #20c65a;
        }

        .fixed-whatsapp svg {
            width: 38px;
            height: 38px;
            fill: #ffffff;
            /* white icon */
            transition: fill 0.3s ease;
        }

        /* Mobile view */
        @media (max-width: 600px) {
            .fixed-whatsapp {
                bottom: 15px;
                right: 10px;
                width: 50px;
                height: 50px;
                padding: 10px;
            }
        }

        @media (max-width: 1199px) {

            .perfect_solution_area .perfect_solution_right,
            .perfect_solution_area .perfect_solution_left {

                display: inline;

            }
        }
    

/* Partner Logos and Mobile Tab Snapping */
.partner-logo {
                        width: 200px;
                        transition: transform 0.3s ease, box-shadow 0.3s ease;
                        cursor: pointer;
                    }

                    .partner-logo:hover {
                        transform: scale(1.05);

                    }

                    .partner_info_two {
                        display: flex;
                        flex-wrap: wrap;
                        justify-content: center;
                        gap: 30px;
                    }

                    /* ✅ Responsive Adjustments */
                    @media (max-width: 992px) {
                        .partner-logo {
                            width: 160px;
                        }

                        .partner_info_two {
                            gap: 25px;
                        }
                    }

                    @media (max-width: 768px) {
                        .partner-logo {
                            width: 200px;
                        }

                        .partner_info_two {
                            gap: 20px;
                        }
                    }

                    @media (max-width: 480px) {
                        .partner-logo {
                            width: 180px;
                        }

                        .partner_info_two {
                            gap: 16px;
                        }
                    }

                    /* ---------- Mobile View Fix for Tabs ---------- */
                    @media (max-width: 768px) {
                        .tabs {
                            display: flex;
                            justify-content: flex-start;
                            overflow-x: auto;
                            /* enable horizontal scroll */
                            white-space: nowrap;
                            /* keep tabs in one line */
                            padding: 10px 0;
                            gap: 10px;
                            scroll-snap-type: x mandatory;
                            /* smooth snapping */
                        }

                        .tab {
                            flex: 0 0 48%;
                            /* show ~2 tabs per screen width */
                            min-width: 160px;
                            text-align: center;
                            scroll-snap-align: start;
                            font-size: 10px;
                            padding: 10px 18px;
                        }

                        .tabs::-webkit-scrollbar {
                            display: none;
                            /* hide scrollbar for clean look */
                        }

                        /* Adjust content layout for smaller devices */
                        .content-box {
                            flex-direction: column;
                            padding: 20px 15px;
                            text-align: center;
                        }

                        .text-side,
                        .image-side {
                            flex: 1 1 100%;
                            text-align: center;
                        }

                        .text-side ul {
                            text-align: left;
                            display: inline-block;
                        }
                    }

                    @media (max-width: 600px) {
                        .feature-video-section {
                            padding: 0px 15px;
                        }
                    }
