 /* 1. Animated Mesh Gradient Background */
 body {
     background: #020617;
     background-image:
         radial-gradient(at 0% 0%, hsla(222, 47%, 11%, 1) 0, transparent 50%),
         radial-gradient(at 100% 0%, hsla(217, 91%, 60%, 0.15) 0, transparent 50%);
 }

 :root {
     /* Brand */
     --vf-primary: #5057ea;
     --vf-primary-dark: #3e44c4;
     --vf-primary-50: #eef0fe;
     --vf-primary-100: #dde0fd;
     --vf-accent: #ff6b4a;
     --vf-accent-soft: #ffe5dd;
     --vf-success: #16a34a;
     --vf-warning: #f59e0b;
     --vf-dark: #0f1729;
     --vf-body: #1f2937;
     --vf-muted: #6b7280;
     --vf-soft: #f6f7fb;
     --vf-border: #e6e8f0;
     /* Override Bootstrap */
     --bs-primary: var(--vf-primary);
     --bs-primary-rgb: 80, 87, 234;
     --bs-body-color: var(--vf-body);
     --bs-body-font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
     --bs-body-bg: #ffffff;
     --bs-border-radius: 12px;
     --bs-border-radius-lg: 18px;
     --bs-border-radius-xl: 24px;
 }


 h1,
 h2,
 h3,
 h4,
 h5,
 h6 {
     font-family: 'Inter', sans-serif;
     font-weight: 700;
     letter-spacing: -0.025em;
     color: var(--vf-dark);
 }

 h1 {
     font-size: clamp(1.5rem, 5.5vw, 3.5rem) !important;
     line-height: 1.1;
     font-weight: 800 !important;
 }

 h2 {
     font-size: clamp(1.4rem, 4vw, 2.4rem) !important;
     line-height: 1.2;
 }

 h3 {
     font-size: clamp(1.25rem, 2.5vw, 1.5rem) !important;
 }

 h4 {
     font-size: 1.15rem !important;
 }


 /* ===== HERO ===== */
 .hero-vf {
     background: linear-gradient(180deg, #eef0fe 0%, #f6f7fb 100%);
     padding: 56px 0 80px;
     position: relative;
     overflow: hidden;
 }

 .hero-vf::before {
     content: '';
     position: absolute;
     top: -20%;
     right: -10%;
     width: 480px;
     height: 480px;
     background: radial-gradient(circle, rgba(80, 87, 234, 0.18), transparent 70%);
     border-radius: 50%;
     pointer-events: none;
 }

 .hero-vf::after {
     content: '';
     position: absolute;
     bottom: -30%;
     left: -10%;
     width: 380px;
     height: 380px;
     background: radial-gradient(circle, rgba(255, 107, 74, 0.13), transparent 70%);
     border-radius: 50%;
     pointer-events: none;
 }

 .hero-vf .hero-pill {
     display: inline-flex;
     align-items: center;
     gap: 8px;
     background: white;
     border: 1px solid var(--vf-border);
     padding: 6px 14px;
     border-radius: 999px;
     font-size: 0.82rem;
     font-weight: 600;
     color: var(--vf-primary);
     margin-bottom: 20px;
     box-shadow: 0 2px 8px rgba(15, 23, 41, 0.04);
 }

 .hero-pill-dot {
     width: 6px;
     height: 6px;
     border-radius: 50%;
     background: var(--vf-success);
     box-shadow: 0 0 8px var(--vf-success);
 }

 .hero-vf h1 {
     margin-bottom: 18px;
     position: relative;
     z-index: 2;
 }

 .hero-vf h1 .accent-word {

     font-weight: 700 !important;
 }

 .hero-vf .lead {
     font-size: 1.15rem;
     color: var(--vf-muted);
     max-width: 560px;
     margin-bottom: 30px;
     position: relative;
     z-index: 2;
 }

 /* Visa search card */
 .search-card-vf {
     background: white;
     border-radius: 20px;
     padding: 22px;
     box-shadow: 0 14px 40px rgba(15, 23, 41, 0.08);
     border: 1px solid var(--vf-border);
     position: relative;
     z-index: 2;
 }

 .search-card-vf .form-label {
     font-size: 0.75rem;
     font-weight: 600;
     text-transform: uppercase;
     letter-spacing: 0.06em;
     color: var(--vf-muted);
     margin-bottom: 6px;
 }

 .search-card-vf .form-control,
 .search-card-vf .form-select {
     border: 1.5px solid var(--vf-border);
     border-radius: 12px;
     padding: 13px 16px;
     font-weight: 500;
     font-size: 0.98rem;
     background: var(--vf-soft);
 }

 .search-card-vf .form-control:focus,
 .search-card-vf .form-select:focus {
     border-color: var(--vf-primary);
     box-shadow: 0 0 0 4px rgba(80, 87, 234, 0.15);
     background: white;
 }

 /* Trust chips */
 .trust-chips {
     display: grid;
     grid-template-columns: auto auto;
     gap: 10px;
     margin-top: 22px;
     position: relative;
     /*z-index: 2;*/
 }

 .trust-chip {
     display: inline-flex;
     align-items: center;
     gap: 8px;
     background: white;
     border: 1px solid var(--vf-border);
     padding: 8px 14px;
     border-radius: 999px;
     font-size: 0.85rem;
     font-weight: 500;
     color: var(--vf-body);
 }

 .trust-chip i {
     color: var(--vf-primary);
     font-size: 1rem;
 }

 /* Hero phone illustration */
 .hero-phone {
     background: linear-gradient(135deg, #333ff4 0%, #5057ea 100%);
     border-radius: 28px;
     padding: 16px;
     box-shadow: 0 20px 50px rgba(80, 87, 234, 0.35);
     max-width: 320px;
     margin: 0 auto;
     position: relative;
     z-index: 2;
 }

 .hero-phone-screen {
     background: white;
     border-radius: 18px;
     padding: 18px;
     min-height: 480px;
 }

 .phone-status {
     font-size: 0.7rem;
     color: var(--vf-muted);
     text-align: center;
     margin-bottom: 14px;
 }

 .phone-greeting {
     font-size: 0.85rem;
     color: var(--vf-muted);
 }

 .phone-name {
     font-weight: 700;
     font-size: 1.2rem;
     margin-bottom: 16px;
 }

 .phone-card {
     background: var(--vf-primary-50);
     border-radius: 14px;
     padding: 14px;
     margin-bottom: 12px;
     display: flex;
     align-items: center;
     gap: 12px;
 }

 .phone-card-flag {
     width: 38px;
     height: 38px;
     border-radius: 50%;
     background: white;
     display: grid;
     place-items: center;
     font-size: 1.4rem;
     flex-shrink: 0;
 }

 .phone-card-body {
     flex: 1;
     min-width: 0;
 }

 .phone-card-title {
     font-weight: 700;
     font-size: 0.92rem;
 }

 .phone-card-meta {
     font-size: 0.75rem;
     color: var(--vf-muted);
 }

 .phone-card-status {
     font-size: 0.7rem;
     font-weight: 600;
     padding: 3px 8px;
     border-radius: 999px;
     background: #d1fae5;
     color: #065f46;
     white-space: nowrap;
 }

 .phone-card-status.pending {
     background: #fef3c7;
     color: #92400e;
 }

 .text-balance {
     text-wrap: balance;
 }

 /* 2. Floating Starfield / Particles */
 .stars {
     position: fixed;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
     background: url('https://www.transparenttextures.com/patterns/stardust.png');
     opacity: 0.4;
     z-index: -1;
     animation: move-it 20s linear infinite;
 }

 @keyframes move-it {
     from {
         background-position: 0 0;
     }

     to {
         background-position: 1000px 1000px;
     }
 }

 /* 3. The "Running" Airplane Path (Curved) */
 @keyframes flight-path {
     0% {
         transform: translate(-100px, 100px) rotate(45deg);
         opacity: 0;
     }

     10% {
         opacity: 1;
     }

     90% {
         opacity: 1;
     }

     100% {
         transform: translate(1200px, -600px) rotate(45deg);
         opacity: 0;
     }
 }

 .plane-streak {
     position: absolute;
     animation: flight-path 8s linear infinite;
 }

 /* 4. Glass Morphism Pro */
 .glass-heavy {
     background: rgba(15, 23, 42, 0.6);
     backdrop-filter: blur(24px);
     border: 1px solid rgba(255, 255, 255, 0.1);
     box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.5);
 }

 /* 5. Live Ticker Animation */
 @keyframes ticker {
     0% {
         transform: translateY(0);
     }

     100% {
         transform: translateY(-50%);
     }
 }

 .ticker-track {
     animation: ticker 80s linear infinite;
 }

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

 /* 6. Scan Line Pro */
 .scan-glow {
     background: linear-gradient(to bottom, transparent, #3b82f6, transparent);
     height: 100px;
     width: 100%;
     position: absolute;
     left: 0px;
     animation: scanning 6s ease-in-out infinite;
     opacity: 0.4;
 }

 @keyframes scanning {

     0%,
     100% {
         top: -100px;
     }

     50% {
         top: 100%;
     }
 }

 :root {
     --royal-blue: #1E3D73;
     --royal-gold: #C5A059;
     --light-gold: #F4EFE6;

 }

 /* --- Testimonials Section --- */
 .testimonial-section {
     background: linear-gradient(180deg, #f8fafc 0%, #ffffff 100%);
     padding: 80px 0;
 }

 .star {
     color: var(--royal-gold);
     font-size: 1.5rem;
     margin: 0 2px;
 }

 .testi-card {
     background: white;
     border-radius: 20px;
     padding: 30px;
     transition: all 0.4s ease;
     border: 1px solid rgba(0, 0, 0, 0.05) !important;
     box-shadow: 0 10px 30px rgba(0, 0, 0, 0.03);
     margin: 10px;
 }

 .testi-card:hover {
     transform: translateY(-10px);
     box-shadow: 0 20px 40px rgba(30, 61, 115, 0.1);
     border-color: var(--royal-gold) !important;
 }

 .testi-card p {
     font-style: italic;
     line-height: 1.7;
     color: #555;
 }

 .stars-inner {
     color: var(--royal-gold);
     font-size: 0.9rem;
     margin-bottom: 15px;
 }

 .client-img {
     border: 2px solid var(--royal-gold);
     padding: 3px;
     background: #fff;
 }

 /* Custom Swiper Buttons */
 .custom-nav {
     color: var(--royal-blue) !important;
     background: white;
     width: 45px !important;
     height: 45px !important;
     border-radius: 50%;
     box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
 }

 .custom-nav:after {
     font-size: 1.2rem !important;
     font-weight: bold;
 }

 /* --- USP Section --- */
 .card-bg {
     background: var(--royal-blue);
     color: white !important;
     border-radius: 18px;
     padding: 25px;
     transition: 0.3s;
     position: relative;
     overflow: hidden;
 }

 .card-bg::after {
     content: "";
     position: absolute;
     top: -50%;
     right: -50%;
     width: 100%;
     height: 100%;
     background: rgba(255, 255, 255, 0.05);
     transform: rotate(45deg);
 }

 .card-bg:hover {
     background: #152c52;
     transform: scale(1.05);
 }

 /* --- Process Section --- */
 .step-item {
     display: flex;
     align-items: center;
     margin-bottom: 25px;
     padding: 20px;
     border-radius: 15px;
     background: white;
     transition: 0.3s;
     border-left: 5px solid transparent;
 }

 .step-item:hover {
     border-left-color: var(--royal-gold);
     box-shadow: 0 10px 20px rgba(0, 0, 0, 0.05);
     transform: translateX(10px);
 }

 .step-number {
     min-width: 45px;
     height: 45px;
     background: var(--light-gold);
     color: var(--royal-gold);
     border-radius: 50%;
     display: flex;
     align-items: center;
     justify-content: center;
     font-weight: 800;
     margin-right: 20px;
 }

 /* --- Search CTA Section --- */
 .ft-top {
     background: white;
     border-radius: 30px;
     border: 1px solid #f1f5f9;
     box-shadow: 0 30px 60px rgba(0, 0, 0, 0.05);
 }

 .ft-highlight {
     background: var(--light-gold);
     color: var(--royal-blue);
     padding: 10px 20px;
     border-radius: 50px;
     font-size: 0.85rem;
     display: inline-block;
     margin: 5px;
     width: 100%;
     text-align: center;
 }

 .search-box .form-control {
     height: 60px;
     border-radius: 50px;
     border: 2px solid #eee;
     padding-left: 60px;
     transition: 0.3s;
 }

 .search-box .form-control:focus {
     border-color: var(--royal-gold);
     box-shadow: 0 0 0 5px rgba(197, 160, 89, 0.1);
 }

 /* Responsive Fixes */
 @media (max-width: 768px) {
     .display-6 {
         font-size: 1.8rem;
     }

     .testi-card {
         padding: 20px;
     }

     .premium-video {
         width: 100%;
         max-width: 250px;
     }
 }

 /*    mobile Device ------*/
 /* --- COMPREHENSIVE RESPONSIVE OVERRIDES --- */
 /* --- GLOBAL FIXES --- */
 html,
 body {
     max-width: 100%;
     overflow-x: hidden;
     position: relative;
 }

 /* Base Desktop-Only Utility */
 .desktop-only {
     display: none !important;
 }

 @media (min-width: 1024px) {
     .desktop-only {
         display: block !important;
     }
 }

 /* --- TABLET (Under 1024px) --- */
 @media (max-width: 1024px) {
     section.container {
         display: flex;
         /* Simpler than grid for stacking */
         flex-direction: column;
         padding-left: 2rem;
         padding-right: 2rem;
         gap: 3rem;
         text-align: center;
     }

     /* Force full width for hero columns */
     .lg:col-span-5,
     .lg:col-span-4,
     .lg:col-span-3 {
         width: 100%;
     }

     h1 {
         font-size: 4.5rem !important;
         /* Slightly smaller for tablet */
         margin-left: auto;
         margin-right: auto;
     }

     p.max-w-md {
         margin-left: auto;
         margin-right: auto;
     }

     .flex.flex-wrap {
         justify-content: center;
     }

     /* Reduce ticker height for tablet */
     .lg:col-span-3 {
         height: 300px !important;
     }
 }

 /* --- MOBILE (Under 768px) --- */
 @media (max-width: 767.98px) {

     /* 1. Header & Section Spacing */
     section.container {
         padding-top: 2rem;
         min-height: auto;
     }

     /* 2. Typography */
     h1 {
         font-size: 3rem !important;
         /* Standardized for mobile */
         line-height: 1.1 !important;
     }

     .text-7xl {
         font-size: 2.5rem !important;
     }

     /* 3. Layout: Stack Search & Tabs */
     .d-flex.flex-wrap.align-items-center {
         flex-direction: column !important;
         align-items: stretch !important;
     }

     .w-50 {
         width: 100% !important;
         margin-bottom: 20px;
     }



     .lg:col-span-3 .glass-heavy {
         min-width: 260px;
         flex-shrink: 0;
     }

     /* 5. Buttons & Cards */
     .btn-gold,
     .btn_more {
         width: 100%;
         justify-content: center;
     }

     .step-item {
         flex-direction: column;
         text-align: center;
     }

     .plane-streak {
         display: none !important;
     }

     .btn_mobileauto_ {
         display: none;
     }
 }

 /* --- SMALL PHONES (Under 480px) --- */
 @media (max-width: 479.98px) {
     h1 {
         font-size: 2.4rem !important;
     }

     .display-6 {
         font-size: 1.5rem;
     }

     .premium-video {
         max-width: 100% !important;
         /* Let it breathe on small screens */
     }

     /* Center active user count badge */
     .flex.items-center.gap-4.bg-slate-800\/40 {
         width: 100%;
         justify-content: center;

     }

     .btn_mobileauto_ {
         display: none;
     }
 }

 @media (max-width: 767.98px) {

     /* 1. Limit the height of the ticker area so it doesn't push the footer down forever */
     .lg:col-span-3 {
         height: 300px !important;
         overflow-y: auto !important;
         /* Enable vertical scroll */
         padding: 10px 0;
         position: relative;
     }

     .autoscrolll-monile {
         display: none !important;
     }

     /* 2. Style the scrollbar to keep it "Royal" and hidden */
     .lg:col-span-3::-webkit-scrollbar {
         display: none;
         /* Keeps the UI clean */
     }

     /* 3. Ensure the track stacks items correctly */
     .ticker-track {
         display: flex !important;
         flex-direction: column !important;
         /* Stack vertically as per your screenshot */
         gap: 12px !important;
         width: 100% !important;
     }

     /* 4. Card Adjustments */
     .glass-heavy {
         width: 100% !important;
         margin-bottom: 0 !important;
         border-radius: 15px !important;
         border-left: 4px solid #3b82f6 !important;
         /* Matching your blue accent */
     }

     .btn_mobileauto_ {
         display: none;
     }
 }


 @media (max-width: 767.98px) {
     .mobile-responsive-maincard {
         border-radius: 5px !important;
     }

     .mobile-responsive-maincard-img {
         height: 140px !important;
     }

     .mobile-responsive-maincard-p {
         font-size: 12px !important;
     }

     .mobile-responsive-maincard-btn {
         padding: 2px !important;
         font-size: 10px !important;
     }

     .search-box .form-control {
         font-size: .6rem !important;
         height: 40px !important;
         border-radius: 8px !important;
         text-align: left !important;
         padding-left: 40px !important;
     }

     .row_card {
         padding-right: calc(var(--bs-gutter-x) * 0) !important;
         padding-left: calc(var(--bs-gutter-x) * .2) !important;
     }
 }

 /* Premium Royal Aesthetic */
 .glass-card {
     background: rgba(255, 255, 255, 0.85);
     backdrop-filter: blur(20px);
     -webkit-backdrop-filter: blur(20px);
     border: 1px solid rgba(255, 255, 255, 0.4);
 }

 /* Floating Animation for the Timer */
 .timer-glow {
     box-shadow: 0 0 15px rgba(37, 99, 235, 0.2);
     animation: pulse-border 2s infinite;
 }

 @keyframes pulse-border {

     0%,
     100% {
         border-color: rgba(37, 99, 235, 0.2);
     }

     50% {
         border-color: rgba(37, 99, 235, 0.6);
     }
 }

 /* Mobile Typography Adjustments */
 @media (max-width: 480px) {
     .royal-title {
         font-size: 1.5rem !important;
     }

     .royal-text {
         font-size: 0.875rem !important;
     }

     #popup-content {
         margin: 1rem;
         width: calc(100% - 2rem) !important;
     }
 }

 /* ===== FINAL TOUCH — Hero Polish ===== */

 /* Slightly deeper gradient so the hero feels more "premium" */
 .hero-vf {
     background: linear-gradient(160deg, #eaecfd 0%, #f0f1fe 45%, #f6f7fb 100%);
     padding: 72px 0 96px;
 }

 /* Give the pill a very light shimmer border */
 .hero-vf .hero-pill {
     background: linear-gradient(white, white) padding-box,
         linear-gradient(135deg, #c7c9f8, #e0e1fd) border-box;
     border: 1.5px solid transparent;
     letter-spacing: 0.02em;
 }

 /* Sharpen the headline — tighter tracking, gradient accent word */
 .hero-vf h1 .accent-word {
     background: linear-gradient(135deg, #333ff4 0%, #333ff4 100%);
     ;
     -webkit-background-clip: text;
     -webkit-text-fill-color: transparent;
     background-clip: text;
 }

 /* Search card — lift it just a touch more */
 .search-card-vf {
     box-shadow: 0 20px 60px rgba(80, 87, 234, 0.10),
         0 2px 8px rgba(15, 23, 41, 0.04);
     border-color: rgba(80, 87, 234, 0.12);
 }

 /* Primary button inside the card — gradient instead of flat */
 .search-card-vf .btn-primary {
     background: linear-gradient(135deg, #333ff4 0%, #5057ea 100%);
     border: none;
     padding: 14px 24px;
     font-weight: 600;
     letter-spacing: 0.01em;
     box-shadow: 0 6px 20px rgba(80, 87, 234, 0.35);
     transition: all 0.25s ease;
 }

 .search-card-vf .btn-primary:hover {
     transform: translateY(-2px);
     box-shadow: 0 10px 28px rgba(80, 87, 234, 0.45);
 }

 /* Trust chips — subtle hover state */
 .trust-chip {
     transition: all 0.2s ease;
     box-shadow: 0 1px 4px rgba(15, 23, 41, 0.04);
 }

 .trust-chip:hover {
     border-color: var(--vf-primary);
     color: var(--vf-primary);
     box-shadow: 0 2px 12px rgba(80, 87, 234, 0.12);
 }

 /* Phone mockup — stronger glow, subtle rotation for depth */
 .hero-phone {
     transform: perspective(1000px) rotateY(-4deg) rotateX(2deg);
     box-shadow: 0 32px 80px rgba(80, 87, 234, 0.40),
         0 8px 24px rgba(15, 23, 41, 0.12);
     transition: transform 0.4s ease;
 }

 .hero-phone:hover {
     transform: perspective(1000px) rotateY(0deg) rotateX(0deg);
 }

 /* Status badges inside phone — sharper */
 .phone-card-status {
     font-size: 0.72rem;
     letter-spacing: 0.02em;
 }

 /* Small note below the CTA */
 .hero-vf .text-muted-2 {
     color: #9ca3af;
     font-size: 0.8rem;
     letter-spacing: 0.01em;
 }

 .text-muted-2 {
     color: var(--vf-muted) !important;
 }

 @media (min-width: 1200px) {
     .container {
         max-width: 1140px !important;
     }
 }

 @keyframes ticker-scroll {
     0% {
         transform: translateY(0);
     }

     100% {
         transform: translateY(-50%);
     }
 }

 .animate-ticker {
     animation: ticker-scroll 125s linear infinite;
 }

 .animate-ticker:hover {
     animation-play-state: paused;
 }

 /* ── Hero Phone Ticker ── */
 @keyframes hero-tick {
     0% {
         transform: translateY(0);
     }

     100% {
         transform: translateY(-50%);
     }
 }

 .hero-ticker-track {
     animation: hero-tick 18s linear infinite;
     display: flex;
     flex-direction: column;
     gap: 6px;
 }

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

 .hero-ticker-item {
     background: white;
     border-radius: 10px;
     padding: 10px 12px;
     border: 1px solid var(--vf-border);
     border-left: 3px solid var(--vf-primary);
     flex-shrink: 0;
 }

 .tab-button:hover {
     background: #f3f4f6 !important;
     border-color: #d1d5db !important;
     color: #111827 !important;
 }

 .tab-button.active {
     background: #333ff4 !important;
     color: white !important;
     border-color: #333ff4 !important;
 }

 /* ===== END FINAL TOUCH ===== */
 /* ===== FEATURE / VALUE CARDS ===== */
 .feature-card {
     padding: 28px;
     background: white;
     border: 1px solid var(--vf-border);
     border-radius: 18px;
     height: 100%;
     transition: all 0.3s;
 }

 .feature-card:hover {
     border-color: var(--vf-primary);
     transform: translateY(-3px);
     box-shadow: 0 10px 26px rgba(15, 23, 41, 0.06);
 }

 .feature-icon {
     width: 48px;
     height: 48px;
     border-radius: 12px;
     background: var(--vf-primary-50);
     color: var(--vf-primary);
     display: grid;
     place-items: center;
     font-size: 1.4rem;
     margin-bottom: 16px;
 }

 .feature-card h4 {
     margin-bottom: 8px;
     font-size: 1.15rem;
 }

 .feature-card p {
     color: var(--vf-muted);
     margin: 0;
     font-size: 0.95rem;
 }

 /* ===== STEP CARDS ===== */
 .step-card {
     background: white;
     border: 1px solid var(--vf-border);
     border-radius: 18px;
     padding: 26px;
     height: 100%;
     position: relative;
 }

 .step-num {
     display: inline-flex;
     align-items: center;
     justify-content: center;
     width: 36px;
     height: 36px;
     border-radius: 50%;
     background: #333ff4 !important;
     color: white;
     font-weight: 700;
     font-size: 0.95rem;
     margin-bottom: 18px;
 }

 .step-card h4 {
     margin-bottom: 8px;
 }

 .step-card p {
     color: var(--vf-muted);
     margin: 0;
 }

 /* ===== TESTIMONIALS ===== */
 .testimonial-card {
     height: 100% !important;
     background: white !important;
     border: 1px solid var(--vf-border) !important;
     border-radius: 18px !important;
     padding: 26px !important;
 }

 .testimonial-stars {
     color: #fbbf24;
     font-size: 0.95rem;
     letter-spacing: 1px;
     margin-bottom: 14px;
 }

 .testimonial-text {
     font-size: 1rem;
     color: var(--vf-body);
     line-height: 1.6;
     margin-bottom: 18px;
 }

 .testimonial-author {
     display: flex;
     align-items: center;
     gap: 12px;
 }

 .testimonial-avatar {
     width: 42px;
     height: 42px;
     border-radius: 50%;
     background: linear-gradient(135deg, #333ff4 0%, #5057ea 100%);
     color: white;
     display: grid;
     place-items: center;
     font-weight: 700;
     font-size: 1rem;
 }

 .testimonial-name {
     font-weight: 700;
     font-size: 0.92rem;
     line-height: 1.2;
 }

 .testimonial-meta {
     font-size: 0.8rem;
     color: var(--vf-muted);
 }

 /* ===== STATS ===== */
 .stats-row {
     background: #4e54cb;
     color: white;
     border-radius: 24px;
     padding: 48px 32px;

 }

 .stat-block {
     text-align: center;
     padding: 12px 0;
 }

 .stat-number {
     font-size: clamp(2.2rem, 5vw, 3.2rem);
     font-weight: 800;
     color: white;
     line-height: 1;
     margin-bottom: 8px;
     letter-spacing: -0.03em;
 }

 .stat-number .accent {
     color: #fd8c00;
 }

 .stat-label {
     font-size: 0.92rem;
     color: rgba(255, 255, 255, 0.7);
 }

 /* ===== FAQ ===== */
 .faq-accordion .accordion-item {
     border: 1px solid var(--vf-border);
     border-radius: 14px !important;
     margin-bottom: 12px;
     overflow: hidden;
 }

 .faq-accordion .accordion-button {
     font-weight: 600;
     font-size: 1rem;
     padding: 18px 20px;
     color: var(--vf-dark);
     background: white;
 }

 .faq-accordion .accordion-button:not(.collapsed) {
     background: var(--vf-primary-50);
     color: var(--vf-primary);
     box-shadow: none;
 }

 .faq-accordion .accordion-button:focus {
     box-shadow: none;
     border-color: var(--vf-primary);
 }

 .faq-accordion .accordion-body {
     padding: 0 20px 22px;
     color: var(--vf-muted);
     font-size: 0.96rem;
 }

 /* ===== CTA BANNER ===== */
 .cta-banner {
     background: linear-gradient(135deg, #333ff4 0%, #2530D9 100%);
     color: white;
     border-radius: 24px;
     padding: 48px 32px;
     text-align: center;
     position: relative;
     overflow: hidden;
 }

 .cta-banner::before {
     content: '';
     position: absolute;
     top: -50%;
     right: -10%;
     width: 280px;
     height: 280px;
     border-radius: 50%;
 }

 .cta-banner h2 {
     color: white;
     margin-bottom: 12px;
     position: relative;
     z-index: 2;
 }

 .cta-banner p {
     color: rgba(255, 255, 255, 0.88);
     position: relative;
     z-index: 2;
     margin-bottom: 24px;
     max-width: 540px;
     margin-left: auto;
     margin-right: auto;
 }

 .bg-soft {
     background: var(--vf-soft);
     padding: 64px 0px !important;
 }

 .section-label {
     display: inline-block !important;
     font-size: 0.78rem !important;
     font-weight: 700 !important;
     text-transform: uppercase !important;
     letter-spacing: 0.1em !important;
     color: #333ff4 !important;
     margin-bottom: 10px !important;
 }

 .section-sub {
     color: var(--vf-muted) !important;
     font-size: 0.9rem !important;
     max-width: 620px !important;
 }

 /* ===== MOBILE BOTTOM NAV ===== */
 .mobile-bottom-nav {
     position: fixed;
     bottom: 0;
     left: 0;
     right: 0;
     background: white;
     border-top: 1px solid var(--vf-border);
     padding: 8px 0 12px;
     z-index: 1040;
     display: none;
     box-shadow: 0 -4px 20px rgba(15, 23, 41, 0.06);
 }

 .mobile-bottom-nav .container {
     display: flex;
     justify-content: space-around;
     align-items: center;
 }

 .mob-nav-item {
     display: flex;
     flex-direction: column;
     align-items: center;
     gap: 2px;
     color: var(--vf-muted);
     font-size: 0.7rem;
     font-weight: 500;
     text-decoration: none;
     padding: 4px 8px;
     flex: 1;
     text-align: center;
 }

 .mob-nav-item i {
     font-size: 1.3rem;
 }

 .mob-nav-item.active {
     color: var(--vf-primary);
 }

 .mob-nav-item.cta {
     background: var(--vf-primary);
     color: white;
     border-radius: 50%;
     width: 52px;
     height: 52px;
     margin-top: -16px;
     padding: 0;
     justify-content: center;
     box-shadow: 0 6px 14px rgba(80, 87, 234, 0.4);
     flex: 0 0 auto;
 }

 .mob-nav-item.cta i {
     font-size: 1.5rem;
 }

 .mob-nav-item.cta span {
     display: none;
 }

 .faq-accordion .accordion-body {
     padding: 0 20px 22px;
     color: var(--vf-muted) !important;
     /* add !important */
     font-size: 0.96rem;
 }

 .faq-accordion .accordion-button {
     font-weight: 600;
     font-size: 1rem;
     padding: 18px 20px;
     color: var(--vf-dark) !important;
     /* add !important */
     background: white;
 }

 .faq-accordion .accordion-collapse {
     transition: none !important;
 }

 /* FORCE FAQ answers to be visible */
 .faq-accordion .accordion-collapse.show {
     display: block !important;
     height: auto !important;
     visibility: visible !important;
 }

 .faq-accordion .accordion-body {
     display: block !important;
     padding: 0 20px 22px !important;
     color: #6b7280 !important;
     font-size: 0.96rem !important;
     line-height: 1.6 !important;
     opacity: 1 !important;
     visibility: visible !important;
 }

 .faq-accordion .accordion-body a {
     color: var(--vf-primary) !important;
     text-decoration: underline !important;
 }

 @media (max-width : 400px) {
     .trust-chip {
         font-size: 0.7rem !important;
     }

     .hero-vf {
         padding: 25px 0 25px!important;
     }
     .step-num-heading{
         font-size: 14px!important;
     }
     .step-num-para{
        font-size: 10px!important;
     }
     .feature-card-heading{
           font-size: 14px!important;
     }
          .feature-card-para{
        font-size: 10px!important;
     }
     

 }