 :root {
     --primary: #6C63FF;
     --primary-dark: #4F49C9;
     --ink: #1f2d3d;
     --muted: #6c7a89;
     --background: #f7f9fc;
 }

 * {
     scroll-behavior: smooth;
 }



 /* Custom Utilities */
 .btn-brand {
     background-color: var(--primary);
     border-color: var(--primary);
     color: white;
     padding: 12px 30px;
     font-weight: 600;
     border-radius: 6px;
     transition: all 0.3s ease;
 }

 .btn-brand:hover {
     background-color: var(--primary-dark);
     border-color: var(--primary-dark);
     color: white;
     transform: translateY(-2px);
     box-shadow: 0 4px 12px rgba(108, 99, 255, 0.3);
 }

 .btn-brand-outline {
     border: 2px solid var(--primary);
     color: var(--primary);
     padding: 12px 30px;
     font-weight: 600;
     border-radius: 6px;
     background: transparent;
     transition: all 0.3s ease;
 }

 .btn-brand-outline:hover {
     background-color: var(--primary);
     color: white;
     transform: translateY(-2px);
 }

 .shadow-soft {
     box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08) !important;
 }

 .rounded-2xl {
     border-radius: 16px !important;
 }

 .badge-soft {
     background-color: rgba(108, 99, 255, 0.1);
     color: var(--primary);
     padding: 6px 14px;
     border-radius: 20px;
     font-size: 0.875rem;
     font-weight: 500;
 }

 .tech-badge {
     display: inline-block;
     background: linear-gradient(135deg, rgba(108, 99, 255, 0.1) 0%, rgba(108, 99, 255, 0.05) 100%);
     color: var(--primary);
     padding: 8px 16px;
     border-radius: 20px;
     font-size: 0.875rem;
     font-weight: 500;
     margin: 4px;
     border: 1px solid rgba(108, 99, 255, 0.2);
     transition: all 0.2s ease;
 }

 .tech-badge:hover {
     background: var(--primary);
     color: white;
     transform: translateY(-2px);
 }

 .process-step {
     width: 60px;
     height: 60px;
     border-radius: 50%;
     background: linear-gradient(135deg, var(--primary) 0%, var(--primary-dark) 100%);
     color: white;
     display: flex;
     align-items: center;
     justify-content: center;
     font-size: 1.5rem;
     font-weight: bold;
     margin: 0 auto 1rem;
     box-shadow: 0 4px 12px rgba(108, 99, 255, 0.3);
 }

 .icon-lg {
     font-size: 2.5rem;
     color: var(--primary);
     margin-bottom: 1rem;
 }


 /* Hero Section */
 .hero-section {
     padding: 100px 0;
     background: linear-gradient(135deg, #f7f9fc 0%, #ffffff 100%);
 }

 .hero-headline {
     font-size: 3rem;
     font-weight: 700;
     color: var(--ink);
     margin-bottom: 1.5rem;
     line-height: 1.2;
 }

 .hero-subcopy {
     font-size: 1.25rem;
     color: var(--muted);
     margin-bottom: 2rem;
 }

 .hero-image {
     border-radius: 16px;
     box-shadow: 0 10px 40px rgba(0, 0, 0, 0.1);
     max-width: 100%;
     height: auto;
 }

 .kickoff-text {
     font-size: 0.875rem;
     color: var(--muted);
     margin-top: 1rem;
 }

 /* Trust Bar */
 .trust-bar {
     padding: 2rem 0;
     background: white;
     border-top: 1px solid rgba(0, 0, 0, 0.05);
     border-bottom: 1px solid rgba(0, 0, 0, 0.05);
 }

 .trust-item {
     text-align: center;
     color: var(--muted);
     font-size: 0.9rem;
     font-weight: 500;
 }

 /* Services Section */
 .services-section {
     padding: 80px 0;
     background: white;
 }

 .service-card {
     background: white;
     border-radius: 12px;
     padding: 2rem;
     height: 100%;
     transition: all 0.3s ease;
     border: 1px solid rgba(0, 0, 0, 0.05);
 }

 .service-card:hover {
     transform: translateY(-5px);
     box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
 }

 .service-card h4 {
     color: var(--ink);
     font-weight: 600;
     margin-bottom: 1rem;
 }

 .service-card ul {
     list-style: none;
     padding: 0;
 }

 .service-card ul li {
     padding: 0.5rem 0;
     color: var(--muted);
     position: relative;
     padding-left: 1.5rem;
 }

 .service-card ul li:before {
     content: "✓";
     position: absolute;
     left: 0;
     color: var(--primary);
     font-weight: bold;
 }

 /* Value Proposition Section */
 .value-section {
     padding: 80px 0;
     background: var(--background);
 }

 .value-item {
     display: flex;
     align-items: flex-start;
     margin-bottom: 1.5rem;
 }

 .value-item i {
     color: var(--primary);
     font-size: 1.5rem;
     margin-right: 1rem;
     margin-top: 0.25rem;
 }

 /* Process Section */
 .process-section {
     padding: 80px 0;
     background: white;
 }

 .process-card {
     text-align: center;
     padding: 1.5rem;
 }

 .process-card h5 {
     color: var(--ink);
     font-weight: 600;
     margin-bottom: 0.5rem;
 }

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

 /* Work Section */
 .work-section {
     padding: 80px 0;
     background: var(--background);
 }

 .work-card {
     background: white;
     border-radius: 12px;
     padding: 2rem;
     height: 100%;
     transition: all 0.3s ease;
     border: 1px solid rgba(0, 0, 0, 0.05);
 }

 .work-card:hover {
     transform: translateY(-5px);
     box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
 }

 .work-card h4 {
     color: var(--ink);
     font-weight: 600;
     margin-bottom: 1rem;
 }

 .work-card .badge {
     margin: 0.25rem;
 }

 /* Testimonials Section */
 .testimonials-section {
     padding: 80px 0;
     background: white;
 }

 .testimonial-card {
     background: var(--background);
     border-radius: 12px;
     padding: 2.5rem;
     text-align: center;
     border: none;
 }

 .testimonial-text {
     font-size: 1.1rem;
     font-style: italic;
     color: var(--ink);
     margin-bottom: 1.5rem;
 }

 .testimonial-author {
     font-weight: 600;
     color: var(--primary);
 }

 .testimonial-role {
     color: var(--muted);
     font-size: 0.9rem;
 }

 /* CTA Banner */
 .cta-banner {
     padding: 80px 0;
     background: linear-gradient(135deg, var(--primary) 0%, var(--primary-dark) 100%);
     color: white;
     text-align: center;
 }

 .cta-banner h2 {
     font-size: 2.5rem;
     font-weight: 700;
     margin-bottom: 1.5rem;
 }

 .cta-banner .btn {
     background: white;
     color: var(--primary);
     border: none;
     padding: 12px 40px;
     font-weight: 600;
     border-radius: 6px;
     transition: all 0.3s ease;
 }

 .cta-banner .btn:hover {
     transform: translateY(-2px);
     box-shadow: 0 6px 20px rgba(0, 0, 0, 0.2);
 }

 /* FAQ Section */
 .faq-section {
     padding: 80px 0;
     background: var(--background);
 }

 .faq-card {
     background: white;
     border: 1px solid rgba(0, 0, 0, 0.05);
     border-radius: 8px;
     margin-bottom: 1rem;
 }

 .faq-header {
     background: transparent;
     border: none;
     padding: 1.5rem;
     width: 100%;
     text-align: left;
     font-weight: 600;
     color: var(--ink);
     cursor: pointer;
     transition: all 0.3s ease;
 }

 .faq-header:hover {
     color: var(--primary);
 }

 .faq-header:not(.collapsed) {
     color: var(--primary);
 }

 .faq-body {
     padding: 0 1.5rem 1.5rem;
     color: var(--muted);
 }

 /* Contact Section */
 .contact-section {
     padding: 80px 0;
     background: white;
 }

 .contact-info h3 {
     color: var(--ink);
     font-weight: 600;
     margin-bottom: 1.5rem;
 }

 .contact-info p {
     color: var(--muted);
     margin-bottom: 1.5rem;
 }

 .contact-detail {
     display: flex;
     align-items: center;
     margin-bottom: 1rem;
 }

 .contact-detail i {
     color: var(--primary);
     font-size: 1.25rem;
     margin-right: 1rem;
     width: 24px;
 }

 .contact-form {
     background: var(--background);
     border-radius: 12px;
     padding: 2rem;
 }

 .form-control {
     border-radius: 6px;
     border: 1px solid rgba(0, 0, 0, 0.1);
     padding: 12px;
     margin-bottom: 1rem;
 }

 .form-control:focus {
     border-color: var(--primary);
     box-shadow: 0 0 0 0.2rem rgba(108, 99, 255, 0.25);
 }



 /* Responsive */
 @media (max-width: 768px) {
     .hero-headline {
         font-size: 2rem;
     }

     .hero-subcopy {
         font-size: 1.1rem;
     }

     .cta-banner h2 {
         font-size: 2rem;
     }
 }

 /* Smooth Scroll */
 html {
     scroll-behavior: smooth;
 }
