        /* Contact and Scheduler Grid */
        .contact-scheduler-grid {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 30px;
            margin-bottom: 40px;
        }
        
        .meeting-scheduler {
            background-color: #ffffff;
            border-radius: 8px;
            box-shadow: 0 4px 12px rgba(0,0,0,0.08);
            padding: 20px;
        }
        
        .scheduler-header {
            margin-bottom: 20px;
            text-align: center;
        }
        
        .scheduler-header h3 {
            font-size: 1.5rem;
            margin-bottom: 8px;
            color: #5B3A8B;
        }
        
        .scheduler-header p {
            color: #64748b;
            font-size: 0.95rem;
        }
        
        /* Contact Details Section */
        .contact-details-section {
            margin-top: 40px;
            padding-top: 30px;
            border-top: 1px solid #e5e7eb;
        }
        
        .contact-details {
            padding: 20px 0;
        }
        
        .contact-details h3 {
            font-size: 1.5rem;
            color: #1f2937;
            margin-bottom: 25px;
            font-weight: 600;
        }
        
        .meeting-scheduler-centered {
            max-width: 600px;
            margin: 0 auto 40px auto;
            text-align: center;
            scroll-margin-top: 100px;
        }
        
        #book-session {
            scroll-margin-top: 100px;
        }
        
        .meeting-scheduler-centered .scheduler-header {
            margin-bottom: 30px;
        }
        
        /* Trusted Partners Section */
        .trusted-partners {
            background-color: #f8fafc;
            padding: 80px 0;
        }
        
        .partners-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
            gap: 30px;
            margin-top: 50px;
        }
        
        .partner-category {
            background: white;
            padding: 30px 25px;
            border-radius: 12px;
            box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
            transition: transform 0.3s ease, box-shadow 0.3s ease;
            text-align: center;
        }
        
        .partner-category:hover {
            transform: translateY(-5px);
            box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
        }
        
        .partner-icon {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 64px;
            height: 64px;
            background: linear-gradient(135deg, var(--primary) 0%, var(--secondary) 100%);
            border-radius: 50%;
            margin-bottom: 20px;
            color: white;
        }
        
        .partner-category h3 {
            font-size: 1.5rem;
            font-weight: 600;
            color: var(--text-dark);
            margin-bottom: var(--spacing-md);
        }
        
        .partner-category ul {
            list-style: none;
            padding: 0;
            margin: 0;
            text-align: left;
        }
        
        .partner-category li {
            padding: 8px 0;
            color: var(--text-muted);
            font-size: 0.95rem;
            position: relative;
            padding-left: 20px;
        }
        
        .partner-category li:before {
            content: "✓";
            position: absolute;
            left: 0;
            color: var(--primary);
            font-weight: bold;
        }
        
        .partners-cta {
            text-align: center;
            margin-top: 50px;
            padding: 40px 30px;
            background: white;
            border-radius: 12px;
            box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
            max-width: 600px;
            margin-left: auto;
            margin-right: auto;
        }
        
        .partners-cta p {
            font-size: 1.1rem;
            color: var(--text-dark);
            margin: 0;
            line-height: 1.6;
        }
        
        /* Events Section */
        .events {
            padding: 80px 0;
            color: var(--text-dark);
        }
        
        .event-number {
            font-size: 4rem;
            font-weight: 700;
            line-height: 1;
            color: var(--primary);
        }
        
        .event-text h3 {
            font-size: 1.5rem;
            font-weight: 600;
            margin-bottom: 8px;
        }
        
        .event-text p {
            margin: 0;
            opacity: 0.9;
        }
        
        .event-features {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 30px;
        }
        
        .event-feature {
            display: flex;
            gap: 15px;
            align-items: flex-start;
        }
        
        .feature-icon {
            display: flex;
            align-items: center;
            justify-content: center;
            width: 48px;
            height: 48px;
            background: #f8fafc;
            border-radius: 12px;
            color: var(--primary);
            flex-shrink: 0;
        }
        
        .feature-content h4 {
            font-size: 1.1rem;
            font-weight: 600;
            color: var(--text-dark);
            margin-bottom: 8px;
        }
        
        .feature-content p {
            font-size: 0.95rem;
            color: var(--text-muted);
            margin: 0;
            line-height: 1.5;
        }
        
        .events-cta {
            position: sticky;
            top: 100px;
        }
        
        .cta-box {
            background: #f8fafc;
            padding: 40px 30px;
            border-radius: 16px;
            text-align: center;
            border: 2px solid #e2e8f0;
        }
        
        .cta-box h3 {
            font-size: 1.5rem;
            font-weight: 600;
            color: var(--text-dark);
            margin-bottom: 15px;
        }
        
        .cta-box p {
            color: var(--text-muted);
            margin-bottom: 25px;
            line-height: 1.5;
        }
        
        .cta-box .btn {
            width: 100%;
        }
        
        /* Urgency Indicator Styling */
        .btn-urgency {
            display: block;
            font-size: 0.75rem;
            font-weight: 500;
            margin-top: 4px;
            opacity: 0.9;
            animation: pulse 2s infinite;
        }
        
        @keyframes pulse {
            0%, 100% { opacity: 0.9; }
            50% { opacity: 1; }
        }
        
        .contact-info {
            display: -webkit-box;
            display: -webkit-flex;
            display: -ms-flexbox;
            display: flex;
            -webkit-box-orient: horizontal;
            -webkit-box-direction: normal;
            -webkit-flex-direction: row;
            -ms-flex-direction: row;
            flex-direction: row;
            -webkit-box-pack: center;
            -webkit-justify-content: center;
            -ms-flex-pack: center;
            justify-content: center;
            -webkit-box-align: stretch;
            -webkit-align-items: stretch;
            -ms-flex-align: stretch;
            align-items: stretch;
            -webkit-flex-wrap: nowrap;
            -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
            gap: 30px;
            margin: 0 auto;
            max-width: 1000px;
        }
        
        .contact-card {
            display: -webkit-box;
            display: -webkit-flex;
            display: -ms-flexbox;
            display: flex;
            -webkit-box-orient: vertical;
            -webkit-box-direction: normal;
            -webkit-flex-direction: column;
            -ms-flex-direction: column;
            flex-direction: column;
            -webkit-box-align: center;
            -webkit-align-items: center;
            -ms-flex-align: center;
            align-items: center;
            text-align: center;
            padding: 20px;
            background-color: #ffffff;
            border-radius: 8px;
            box-shadow: 0 2px 8px rgba(0,0,0,0.05);
            flex: 1;
            min-width: 0;
        }
        
        .contact-icon {
            display: flex;
            align-items: center;
            justify-content: center;
            width: 48px;
            height: 48px;
            background-color: #eef2ff;
            border-radius: 50%;
            color: #5B3A8B;
            margin-bottom: 12px;
        }
        
        .contact-label {
            font-size: 1.1rem;
            font-weight: 600;
            margin-bottom: 5px;
            color: #1f2937;
        }
        
        .contact-value {
            color: #4b5563;
            font-size: 0.95rem;
        }
        
        @media (max-width: 1200px) {
            .contact-scheduler-grid {
                grid-template-columns: 1fr 1fr;
            }
        }
        
        @media (max-width: 768px) {
            .contact-scheduler-grid {
                grid-template-columns: 1fr;
            }
            
            .meeting-scheduler {
                margin-top: 30px;
            }
            
            .contact-info {
                -webkit-box-orient: horizontal;
                -webkit-box-direction: normal;
                -webkit-flex-direction: row;
                -ms-flex-direction: row;
                flex-direction: row;
                -webkit-flex-wrap: wrap;
                -ms-flex-wrap: wrap;
                flex-wrap: wrap;
                gap: 20px;
            }
            
            .contact-card {
                flex: 1 1 calc(33% - 20px);
                min-width: 200px;
            }
        }
        
        @media (max-width: 576px) {
            .contact-info {
                -webkit-box-orient: vertical;
                -webkit-box-direction: normal;
                -webkit-flex-direction: column;
                -ms-flex-direction: column;
                flex-direction: column;
                -webkit-box-align: center;
                -webkit-align-items: center;
                -ms-flex-align: center;
                align-items: center;
            }
            
            .contact-card {
                width: 100%;
                max-width: 300px;
                margin-bottom: 15px;
            }
        }
        
        /* Dropdown menu styles */
        .nav-links .dropdown {
            position: relative;
        }
        
        .dropdown-toggle {
            position: relative;
            display: flex;
            flex-direction: column;
            align-items: center;
            padding-bottom: 5px;
        }
        
        .dropdown-toggle::after {
            content: '';
            position: relative;
            margin-top: 5px;
            width: 0;
            height: 0;
            border-left: 5px solid transparent;
            border-right: 5px solid transparent;
            border-top: 5px solid currentColor;
            transition: transform 0.2s ease;
        }
        
        .dropdown-menu {
            position: absolute;
            top: 100%;
            left: 0;
            background-color: white;
            min-width: 200px;
            box-shadow: 0 8px 16px rgba(0,0,0,0.1);
            border-radius: 4px;
            padding: 8px 0;
            opacity: 0;
            visibility: hidden;
            transform: translateY(10px);
            transition: all 0.2s ease;
            z-index: 100;
        }
        
        .dropdown:hover .dropdown-menu {
            opacity: 1;
            visibility: visible;
            transform: translateY(0);
        }
        
        .dropdown:hover .dropdown-toggle::after {
            transform: rotate(180deg);
        }
        
        .dropdown-menu li {
            display: block;
            width: 100%;
        }
        
        .dropdown-menu a {
            display: block;
            padding: 8px 16px;
            color: #333;
            text-decoration: none;
            transition: background-color 0.2s ease;
        }
        
        .dropdown-menu a:hover {
            background-color: #f5f5f5;
            color: #5B3A8B;
        }
        
        /* Responsive adjustments for dropdown */
        @media (max-width: 992px) {
            .dropdown-menu {
                position: static;
                display: none;
                opacity: 1;
                visibility: visible;
                transform: none;
                box-shadow: none;
                background-color: #f5f5f5;
                border-radius: 0;
                padding: 0 0 0 20px;
                margin: 8px 0;
            }
            
            .dropdown.active .dropdown-menu {
                display: block;
            }
            
            .dropdown-toggle {
                flex-direction: row;
                justify-content: center;
                padding-bottom: 0;
            }
            
            .dropdown-toggle::after {
                margin-top: 0;
                margin-left: 8px;
            }
            
            .dropdown.active .dropdown-toggle::after {
                transform: rotate(180deg);
            }
            
            .dropdown-menu a {
                padding: 10px 16px;
            }
        }
        /* Pricing Highlight Section */
        .pricing-highlight {
            background: linear-gradient(135deg, #f0f9f4 0%, #f7fef9 100%);
            border: 2px solid #22c55e;
            border-radius: 12px;
            padding: 30px;
            margin: 40px auto;
            text-align: center;
            max-width: 800px;
        }
        
        .pricing-highlight h3 {
            color: #16a34a;
            font-size: 1.5rem;
            margin-bottom: 15px;
            font-weight: 700;
        }
        
        .pricing-highlight p {
            color: #4b5563;
            font-size: 1.1rem;
            line-height: 1.6;
            margin: 0;
        }
        
        @media (max-width: 768px) {
            .pricing-highlight {
                padding: 20px;
                margin: 30px 0;
            }
            
            .pricing-highlight h3 {
                font-size: 1.3rem;
            }
            
            .pricing-highlight p {
                font-size: 1rem;
            }
        }
        
        /* Social Icons Styling */
        .social-icons {
            display: flex;
            gap: 15px;
            margin-top: 15px;
            justify-content: flex-start;
            flex-wrap: wrap;
        }
        
        .social-icons a {
            display: flex;
            align-items: center;
            justify-content: center;
            width: 36px;
            height: 36px;
            border-radius: 50%;
            background-color: #eef2ff;
            color: #5B3A8B;
            border: 1px solid #e5e7eb;
            transition: all 0.3s ease;
            text-decoration: none;
        }
        
        .social-icons a:hover {
            background-color: #5B3A8B;
            color: white;
            transform: translateY(-3px);
        }
        
        .social-icons i {
            font-size: 18px;
        }
        
        @media (max-width: 576px) {
            .social-icons {
                margin-top: 12px;
                gap: 12px;
            }
            
            .social-icons a {
                width: 32px;
                height: 32px;
            }
            
            .social-icons i {
                font-size: 16px;
            }
        }
        
        /* Hero CTA Improvements */
        .hero-cta-container {
            text-align: center;
            margin: 40px 0 20px 0;
        }
        
        .hero-cta-buttons {
            display: flex;
            gap: 16px;
            justify-content: center;
            align-items: center;
            flex-wrap: wrap;
            margin-bottom: 16px;
        }
        
        .hero-primary-cta,
        .hero-primary-cta:link,
        .hero-primary-cta:visited,
        .hero-primary-cta:active {
            display: inline-block;
            padding: 15px 34px;
            font-size: 1rem;
            font-weight: 600;
            background: linear-gradient(135deg, #5b3a8b 0%, #7c3aed 55%, #a855f7 100%) !important;
            color: #ffffff !important;
            border: none;
            border-radius: 14px;
            box-shadow: 0 1px 2px rgba(28, 22, 48, 0.05), 0 18px 40px -20px rgba(91, 58, 139, 0.5);
            transition: filter 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
        }

        .hero-primary-cta:hover {
            color: #ffffff !important;
            filter: brightness(1.05);
            transform: translateY(-1px);
            box-shadow: 0 1px 2px rgba(28, 22, 48, 0.05), 0 24px 50px -22px rgba(124, 58, 237, 0.6);
        }

        .hero-primary-cta .cta-main,
        .hero-primary-cta span {
            color: #ffffff !important;
        }

        .hero-secondary-cta,
        .hero-secondary-cta:link,
        .hero-secondary-cta:visited,
        .hero-secondary-cta:active {
            display: inline-block;
            padding: 14px 26px;
            font-size: 0.95rem;
            font-weight: 600;
            background: rgba(255, 255, 255, 0.12) !important;
            color: #ffffff !important;
            border: 1px solid rgba(255, 255, 255, 0.4) !important;
            border-radius: 14px;
            box-shadow: none;
            backdrop-filter: blur(6px);
            transition: background 0.2s ease, border-color 0.2s ease, transform 0.2s ease;
        }

        .hero-secondary-cta:hover {
            background: rgba(255, 255, 255, 0.2) !important;
            color: #ffffff !important;
            border-color: rgba(255, 255, 255, 0.6) !important;
            transform: translateY(-1px);
        }
        
        @media (max-width: 768px) {
            .hero-cta-buttons {
                flex-direction: column;
                gap: 12px;
            }
            
            .hero-primary-cta,
            .hero-secondary-cta {
                width: 100%;
                max-width: 320px;
            }
        }
        
        .cta-main {
            font-weight: 600;
            font-size: 1.05rem;
            color: #ffffff !important;
        }
        
        .cta-subtext {
            margin-top: 12px;
            text-align: center;
        }
        
        .cta-subtext p {
            font-size: 0.95rem;
            color: #374151;
            margin: 0;
            font-weight: 500;
        }
        
        .btn-outline-secondary {
            background: transparent;
            border: 2px solid #6b7280;
            color: #6b7280;
            padding: 12px 24px;
            font-weight: 600;
            transition: all 0.3s ease;
        }
        
        .btn-outline-secondary:hover {
            background: #6b7280;
            color: white;
            transform: translateY(-1px);
        }
        
        @media (max-width: 768px) {
            .hero-primary-cta {
                padding: 14px 28px;
                font-size: 1rem;
            }
        }
        
        /* Pricing Summary Styles */
        .pricing-summary {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 30px;
            margin: 50px 0;
            max-width: 800px;
            margin-left: auto;
            margin-right: auto;
        }
        
        .pricing-path {
            background: white;
            border: 1px solid #e5e7eb;
            border-radius: 8px;
            padding: 30px;
            text-align: center;
            position: relative;
            transition: border-color 0.2s ease;
        }
        
        .pricing-path:hover {
            border-color: #5B3A8B;
        }
        
        .pricing-path.featured {
            border-color: #5B3A8B;
            border-width: 2px;
        }
        
        .path-icon {
            font-size: 2.5rem;
            margin-bottom: 15px;
        }
        
        .pricing-path h3 {
            font-size: 1.5rem;
            font-weight: 700;
            margin-bottom: 10px;
            color: #1f2937;
        }
        
        .path-price {
            font-size: 2.5rem;
            font-weight: 800;
            color: #5B3A8B;
            margin-bottom: 15px;
        }
        
        .pricing-path p {
            color: #6b7280;
            font-size: 1rem;
            margin: 0;
        }
        
        .popular-badge {
            position: absolute;
            top: -12px;
            left: 50%;
            transform: translateX(-50%);
            background: #5B3A8B;
            color: white;
            padding: 6px 20px;
            border-radius: 7px;
            font-size: 0.85rem;
            font-weight: 600;
        }
        
        /* Process Flow Styles */
        .process-flow {
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 20px;
            margin: 60px 0 40px 0;
            flex-wrap: wrap;
        }
        
        .flow-step {
            background: white;
            border: 2px solid #e5e7eb;
            border-radius: 12px;
            padding: 25px 20px;
            text-align: center;
            min-width: 180px;
            flex: 1;
            max-width: 200px;
        }
        
        .step-number {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 40px;
            height: 40px;
            background: #5B3A8B;
            color: white;
            border-radius: 50%;
            font-weight: 700;
            font-size: 1.2rem;
            margin-bottom: 15px;
        }
        
        .flow-step h4 {
            font-size: 1.1rem;
            font-weight: 600;
            margin-bottom: 8px;
            color: #1f2937;
        }
        
        .flow-step p {
            color: #6b7280;
            font-size: 0.9rem;
            margin: 0;
        }
        
        .flow-arrow {
            font-size: 1.5rem;
            color: #9ca3af;
            font-weight: bold;
        }
        
        @media (max-width: 768px) {
            .pricing-summary {
                grid-template-columns: 1fr;
                gap: 20px;
                margin: 40px 0;
            }
            
            .process-flow {
                flex-direction: column;
                gap: 15px;
            }
            
            .flow-arrow {
                transform: rotate(90deg);
                font-size: 1.2rem;
            }
            
            .flow-step {
                min-width: auto;
                max-width: none;
                width: 100%;
            }
        }
        
        /* Founder Profiles Styles */
        .founders-section {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 40px;
            margin: 50px 0;
        }
        
        .founder-card {
            background: white;
            border-radius: 8px;
            padding: 30px;
            box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
            border: 1px solid #e5e7eb;
            text-align: center;
            transition: box-shadow 0.2s ease;
        }
        
        .founder-card:hover {
            box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
        }
        
        .founder-image {
            margin-bottom: 20px;
        }
        
        .founder-photo {
            width: 120px;
            height: 120px;
            border-radius: 50%;
            object-fit: cover;
            border: 4px solid #e5e7eb;
            background: #f3f4f6;
        }
        
        .founder-monogram {
            display: flex;
            align-items: center;
            justify-content: center;
            background: linear-gradient(135deg, #6a5b8c, #5B3A8B);
            color: #ffffff;
            font-size: 2.6rem;
            font-weight: 700;
            letter-spacing: 0.02em;
        }
        
        .founder-info h3 {
            font-size: 1.5rem;
            font-weight: 700;
            margin-bottom: 5px;
            color: #1f2937;
        }
        
        .founder-title {
            color: #5B3A8B;
            font-weight: 600;
            font-size: 1rem;
            margin-bottom: 15px;
        }
        
        .founder-info p {
            color: #6b7280;
            line-height: 1.6;
            margin-bottom: 20px;
            text-align: left;
        }
        
        .founder-credentials {
            display: flex;
            gap: 10px;
            justify-content: center;
            margin-bottom: 20px;
            flex-wrap: wrap;
        }
        
        .credential {
            background: #f3ecfb;
            border: 1px solid #e0d8ef;
            border-radius: 7px;
            padding: 6px 12px;
            font-size: 0.85rem;
            font-weight: 600;
            color: #4a2d75;
        }
        
        .social-links a {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 40px;
            height: 40px;
            background: #5B3A8B;
            color: white;
            border-radius: 50%;
            transition: all 0.3s ease;
        }
        
        .social-links a:hover {
            background: #4A2D75;
            transform: translateY(-2px);
        }
        
        /* Authority Section Styles */
        .authority-section {
            margin-top: 60px;
            text-align: center;
        }
        
        .authority-section h3 {
            font-size: 1.5rem;
            font-weight: 600;
            margin-bottom: 30px;
            color: #1f2937;
        }
        
        .authority-badges {
            display: flex;
            justify-content: center;
            gap: 40px;
            margin-bottom: 30px;
            flex-wrap: wrap;
        }
        
        .authority-badge {
            text-align: center;
            padding: 20px;
        }
        
        .authority-logo {
            height: 60px;
            width: auto;
            margin-bottom: 10px;
            filter: grayscale(20%);
            transition: filter 0.3s ease;
        }
        
        .authority-badge:hover .authority-logo {
            filter: grayscale(0%);
        }
        
        .authority-badge p {
            font-size: 0.9rem;
            font-weight: 600;
            color: #6b7280;
            margin: 0;
        }
        
        .business-credentials {
            background: #f8fafc;
            border: 1px solid #e5e7eb;
            border-radius: 8px;
            padding: 15px;
            margin-top: 20px;
        }
        
        .business-credentials p {
            font-size: 0.9rem;
            color: #6b7280;
            margin: 0;
        }
        
        @media (max-width: 768px) {
            .founders-section {
                grid-template-columns: 1fr;
                gap: 30px;
            }
            
            .founder-card {
                padding: 25px;
            }
            
            .founder-photo {
                width: 100px;
                height: 100px;
            }
            
            .authority-badges {
                gap: 20px;
            }
            
            .authority-logo {
                height: 50px;
            }
        }
        
        /* FAQ Section Styles */
        .faq {
            background: #f8fafc;
        }
        
        .faq-grid {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 30px;
            margin-top: 50px;
        }
        
        .faq-item {
            background: white;
            border-radius: 8px;
            padding: 25px;
            box-shadow: 0 1px 4px rgba(0, 0, 0, 0.04);
            border: 1px solid #e5e7eb;
        }
        
        .faq-question {
            font-size: 1.1rem;
            font-weight: 600;
            color: #1f2937;
            margin-bottom: 15px;
            line-height: 1.4;
        }
        
        .faq-answer p {
            color: #6b7280;
            line-height: 1.6;
            margin: 0;
        }
        
        /* Enhanced CTA Section */
        .cta-buttons {
            text-align: center;
        }
        
        .cta-guarantee {
            display: flex;
            justify-content: center;
            gap: 20px;
            margin-top: 20px;
            flex-wrap: wrap;
        }
        
        .guarantee-badge {
            background: rgba(255, 255, 255, 0.12);
            border: 1px solid rgba(255, 255, 255, 0.25);
            border-radius: 7px;
            padding: 8px 16px;
            font-size: 0.85rem;
            font-weight: 600;
            color: #ffffff;
        }
        
        @media (max-width: 768px) {
            .faq-grid {
                grid-template-columns: 1fr;
                gap: 20px;
            }
            
            .faq-item {
                padding: 20px;
            }
            
            .cta-guarantee {
                gap: 12px;
            }
        }
        
        /* Eligibility Checker Styles */
        .eligibility-checker {
            background: linear-gradient(135deg, #f0f9ff 0%, #e0f2fe 100%);
        }
        
        .eligibility-form {
            max-width: 600px;
            margin: 0 auto;
            background: white;
            border-radius: 16px;
            padding: 40px;
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
        }
        
        .form-step {
            display: none;
            text-align: center;
        }
        
        .form-step.active {
            display: block;
        }
        
        .form-step h3 {
            font-size: 1.5rem;
            font-weight: 600;
            margin-bottom: 15px;
            color: #1f2937;
        }
        
        .form-step p {
            color: #6b7280;
            margin-bottom: 30px;
            line-height: 1.6;
        }
        
        .form-buttons {
            display: flex;
            gap: 15px;
            justify-content: center;
            flex-wrap: wrap;
        }
        
        .form-buttons .btn {
            min-width: 180px;
            padding: 12px 24px;
        }
        
        .btn-outline {
            background: transparent;
            border: 2px solid #d1d5db;
            color: #6b7280;
            transition: all 0.3s ease;
        }
        
        .btn-outline:hover {
            border-color: #9ca3af;
            color: #4b5563;
        }
        
        .result-content {
            text-align: center;
            padding: 20px;
            border-radius: 12px;
        }
        
        .result-content.success {
            background: #f0fdf4;
            border: 2px solid #22c55e;
        }
        
        .result-content.warning {
            background: #fffbeb;
            border: 2px solid #f59e0b;
        }
        
        .result-content h3 {
            margin-bottom: 15px;
        }
        
        .result-content p {
            margin-bottom: 25px;
        }
        
        .result-note {
            font-size: 0.9rem;
            color: #6b7280;
            margin-top: 15px;
            margin-bottom: 0;
        }
        
        @media (max-width: 768px) {
            .eligibility-form {
                padding: 30px 25px;
            }
            
            .form-buttons {
                flex-direction: column;
                align-items: center;
            }
            
            .form-buttons .btn {
                min-width: 200px;
            }
        }
        
        /* Enhanced Testimonials Styles */
        .success-stats {
            display: flex;
            justify-content: center;
            gap: 60px;
            margin: 50px 0;
            padding: 30px 0;
            background: transparent;
        }
        
        .stat-item {
            text-align: center;
        }
        
        .stat-number {
            font-size: 2.5rem;
            font-weight: 700;
            color: #5B3A8B;
            line-height: 1;
            margin-bottom: 8px;
        }
        
        .stat-label {
            font-size: 0.875rem;
            font-weight: 500;
            color: #6b7280;
        }
        
        .case-cards {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
            gap: 30px;
            margin: 50px 0;
        }
        
        .case-card {
            background: white;
            border-radius: 8px;
            padding: 25px;
            box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
            transition: box-shadow 0.2s ease;
            border: 1px solid #e5e7eb;
        }
        
        .case-card:hover {
            box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
        }
        
        .case-header {
            display: flex;
            align-items: center;
            gap: 15px;
            margin-bottom: 20px;
        }
        
        .case-avatar {
            flex-shrink: 0;
        }
        
        .avatar-img {
            width: 60px;
            height: 60px;
            border-radius: 50%;
            object-fit: cover;
            border: 3px solid #e5e7eb;
            background: #f3f4f6;
        }
        
        .case-info {
            flex: 1;
        }
        
        .case-info h4 {
            font-size: 1.1rem;
            font-weight: 600;
            margin-bottom: 4px;
            color: #1f2937;
        }
        
        .case-info p {
            font-size: 0.9rem;
            color: #6b7280;
            margin-bottom: 8px;
        }
        
        .case-journey {
            font-size: 0.85rem;
            color: #9ca3af;
            font-weight: 500;
        }
        
        .case-result {
            flex-shrink: 0;
        }
        
        .result-badge {
            background: #f0fdf4;
            color: #16a34a;
            border: 1px solid #22c55e;
            padding: 4px 12px;
            border-radius: 12px;
            font-size: 0.8rem;
            font-weight: 600;
        }
        
        .case-content p {
            color: #4b5563;
            line-height: 1.6;
            margin-bottom: 20px;
            font-style: italic;
        }
        
        .case-metrics {
            display: flex;
            gap: 20px;
            padding-top: 15px;
            border-top: 1px solid #f3f4f6;
        }
        
        .metric {
            display: flex;
            flex-direction: column;
            gap: 4px;
        }
        
        .metric-label {
            font-size: 0.8rem;
            color: #9ca3af;
            font-weight: 500;
        }
        
        .metric-value {
            font-size: 0.9rem;
            color: #1f2937;
            font-weight: 600;
        }
        
        .social-proof {
            text-align: center;
            margin-top: 50px;
            padding: 30px;
            background: #f8fafc;
            border-radius: 12px;
        }
        
        .social-proof p {
            font-size: 1.1rem;
            color: #1f2937;
            margin-bottom: 25px;
        }
        
        .proof-badges {
            display: flex;
            justify-content: center;
            gap: 30px;
            flex-wrap: wrap;
        }
        
        .proof-badge {
            display: flex;
            align-items: center;
            gap: 8px;
            font-size: 0.9rem;
            font-weight: 600;
            color: #6b7280;
        }
        
        .badge-icon {
            font-size: 1.2rem;
        }
        
        @media (max-width: 768px) {
            .success-stats {
                flex-direction: column;
                gap: 25px;
                padding: 20px;
            }
            
            .stat-number {
                font-size: 2rem;
            }
            
            .case-cards {
                grid-template-columns: 1fr;
                gap: 20px;
            }
            
            .case-header {
                flex-direction: column;
                text-align: center;
                gap: 10px;
            }
            
            .case-metrics {
                justify-content: center;
            }
            
            .proof-badges {
                flex-direction: column;
                gap: 15px;
            }
        }
        
        /* Simplified Pricing Styles */
        .simple-pricing {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
            gap: 30px;
            margin: 50px 0;
        }
        
        .pricing-step {
            background: white;
            border: 2px solid #e5e7eb;
            border-radius: 16px;
            padding: 30px 25px;
            text-align: center;
            transition: all 0.3s ease;
        }
        
        .pricing-step:hover {
            transform: translateY(-5px);
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
            border-color: var(--primary);
        }
        
        .pricing-step .step-number {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 50px;
            height: 50px;
            background: var(--primary);
            color: white;
            border-radius: 50%;
            font-weight: 700;
            font-size: 1.3rem;
            margin-bottom: 20px;
        }
        
        .pricing-step h3 {
            font-size: 1.4rem;
            font-weight: 600;
            margin-bottom: 15px;
            color: #1f2937;
        }
        
        .step-price {
            font-size: 2.5rem;
            font-weight: 800;
            color: var(--primary);
            margin-bottom: 15px;
        }
        
        .pricing-step p {
            color: #6b7280;
            line-height: 1.5;
            margin: 0;
        }
        
        .pricing-note {
            text-align: center;
            background: #f0f9ff;
            border: 2px solid #e0f2fe;
            border-radius: 12px;
            padding: 20px;
            margin: 40px 0;
        }
        
        .pricing-note p {
            color: #0369a1;
            font-size: 1.1rem;
            margin: 0;
        }
        
        @media (max-width: 768px) {
            .simple-pricing {
                grid-template-columns: 1fr;
                gap: 20px;
            }
            
            .step-price {
                font-size: 2rem;
            }
        }
        
        /* Lead Capture Styles */
        .lead-capture {
            background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);
            padding: 60px 0;
        }
        
        .lead-capture-content {
            max-width: 600px;
            margin: 0 auto;
            text-align: center;
        }
        
        .lead-capture h3 {
            font-size: 1.8rem;
            font-weight: 600;
            color: #1f2937;
            margin-bottom: 15px;
        }
        
        .lead-capture p {
            color: #6b7280;
            font-size: 1.1rem;
            margin-bottom: 30px;
            line-height: 1.6;
        }
        
        .lead-form {
            background: white;
            padding: 30px;
            border-radius: 12px;
            box-shadow: 0 8px 25px rgba(0, 0, 0, 0.08);
        }
        
        .form-fields {
            display: flex;
            gap: 15px;
            align-items: end;
        }
        
        .form-fields input {
            flex: 1;
            padding: 12px 16px;
            border: 2px solid #e5e7eb;
            border-radius: 8px;
            font-size: 1rem;
            transition: border-color 0.3s ease;
        }
        
        .form-fields input:focus {
            outline: none;
            border-color: var(--primary);
        }
        
        .form-fields button {
            white-space: nowrap;
            padding: 12px 24px;
        }
        
        @media (max-width: 768px) {
            .form-fields {
                flex-direction: column;
                align-items: stretch;
            }
            
            .form-fields button {
                margin-top: 10px;
            }
        }
        
        /* Sticky CTA Bar */
        .sticky-cta-bar {
            position: fixed;
            bottom: 0;
            left: 0;
            right: 0;
            background: white;
            border-top: 2px solid #e5e7eb;
            box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.1);
            z-index: 1000;
            transform: translateY(100%);
            transition: transform 0.3s ease;
        }
        
        .sticky-cta-bar.show {
            transform: translateY(0);
        }
        
        .sticky-cta-content {
            display: flex;
            align-items: center;
            justify-content: space-between;
            padding: 15px 20px;
            max-width: 1200px;
            margin: 0 auto;
        }
        
        .sticky-cta-text {
            display: flex;
            flex-direction: column;
        }
        
        .sticky-cta-title {
            font-weight: 600;
            color: #1f2937;
            font-size: 1rem;
        }
        
        .sticky-cta-subtitle {
            font-size: 0.85rem;
            color: #6b7280;
        }
        
        .sticky-cta-btn {
            padding: 12px 20px;
            font-size: 0.9rem;
            white-space: nowrap;
        }
        
        @media (max-width: 768px) {
            .sticky-cta-content {
                flex-direction: column;
                gap: 10px;
                text-align: center;
                padding: 12px 15px;
            }
            
            .sticky-cta-btn {
                width: 100%;
                max-width: 300px;
            }
        }
        
        @media (min-width: 1200px) {
            .sticky-cta-bar {
                bottom: 20px;
                right: 20px;
                left: auto;
                width: 400px;
                border-radius: 12px;
                border: 2px solid var(--primary);
            }
            
            .sticky-cta-content {
                padding: 20px;
            }
        }

        /* ===== Lead Magnet (free checklist) ===== */
        .lead-magnet {
            padding: 72px 0;
            background: #f4f2f8;
        }

        .lead-magnet-card {
            display: grid;
            grid-template-columns: 1fr 1fr;
            max-width: 940px;
            margin: 0 auto;
            background: #ffffff;
            border-radius: 16px;
            overflow: hidden;
            box-shadow: 0 20px 50px rgba(74, 45, 117, 0.15);
        }

        .lead-magnet-copy {
            background: linear-gradient(155deg, #4a2d75 0%, #5b3a8b 55%, #3a3f5c 100%);
            color: #ffffff;
            padding: 48px 44px;
            display: flex;
            flex-direction: column;
            justify-content: center;
        }

        .lead-magnet-kicker {
            align-self: flex-start;
            background: rgba(255, 255, 255, 0.15);
            color: #ffffff;
            font-size: 0.72rem;
            font-weight: 700;
            letter-spacing: 0.09em;
            text-transform: uppercase;
            padding: 5px 12px;
            border-radius: 6px;
            margin-bottom: 18px;
        }

        .lead-magnet-copy h2 {
            color: #ffffff;
            font-size: 1.7rem;
            line-height: 1.2;
            letter-spacing: -0.01em;
            margin: 0 0 14px;
        }

        .lead-magnet-copy p {
            color: rgba(255, 255, 255, 0.85);
            font-size: 0.98rem;
            line-height: 1.55;
            margin: 0 0 22px;
        }

        .lead-magnet-points {
            list-style: none;
            padding: 0;
            margin: 0;
            display: flex;
            flex-direction: column;
            gap: 11px;
        }

        .lead-magnet-points li {
            position: relative;
            padding-left: 28px;
            color: rgba(255, 255, 255, 0.92);
            font-size: 0.95rem;
            line-height: 1.35;
        }

        .lead-magnet-points li::before {
            content: "";
            position: absolute;
            left: 2px;
            top: 3px;
            width: 7px;
            height: 12px;
            border: solid #ffffff;
            border-width: 0 2px 2px 0;
            transform: rotate(45deg);
            opacity: 0.9;
        }

        .lead-magnet-form {
            padding: 48px 44px;
            display: flex;
            flex-direction: column;
            justify-content: center;
        }

        .lm-title {
            font-size: 1.4rem;
            font-weight: 700;
            color: #1b1e2b;
            letter-spacing: -0.01em;
            margin: 0 0 6px;
        }

        .lm-sub {
            font-size: 0.92rem;
            color: #6b7280;
            line-height: 1.45;
            margin: 0 0 24px;
        }

        .lm-fields {
            display: flex;
            flex-direction: column;
            gap: 16px;
            margin-bottom: 16px;
        }

        .lm-field {
            display: flex;
            flex-direction: column;
            gap: 7px;
        }

        .lm-field label {
            font-size: 0.82rem;
            font-weight: 600;
            color: #374151;
        }

        .lm-field input {
            width: 100%;
            padding: 13px 15px;
            border: 1px solid #d7d9e0;
            border-radius: 10px;
            font-size: 1rem;
            font-family: inherit;
            color: #1b1e2b;
            background: #fbfbfd;
            transition: border-color 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
        }

        .lm-field input::placeholder { color: #9ca3af; }

        .lm-field input:focus {
            outline: none;
            background: #ffffff;
            border-color: #5b3a8b;
            box-shadow: 0 0 0 3px rgba(91, 58, 139, 0.14);
        }

        .lm-hp {
            position: absolute;
            left: -9999px;
            width: 1px;
            height: 1px;
            opacity: 0;
        }

        .lm-consent {
            display: flex;
            align-items: flex-start;
            gap: 10px;
            font-size: 0.8rem;
            color: #6b7280;
            line-height: 1.45;
            margin-bottom: 18px;
            cursor: pointer;
        }

        .lm-consent input {
            width: 16px;
            height: 16px;
            margin: 2px 0 0;
            flex-shrink: 0;
            accent-color: #5b3a8b;
            cursor: pointer;
        }

        .lm-submit {
            width: 100%;
            padding: 15px 20px;
            background: #5b3a8b;
            color: #ffffff;
            border: none;
            border-radius: 10px;
            font-size: 1rem;
            font-weight: 600;
            font-family: inherit;
            letter-spacing: 0.01em;
            cursor: pointer;
            transition: background 0.15s ease, transform 0.05s ease;
        }

        .lm-submit:hover { background: #4a2d75; }
        .lm-submit:active { transform: translateY(1px); }
        .lm-submit:disabled { opacity: 0.6; cursor: default; }

        .lm-trust {
            margin: 12px 0 0;
            font-size: 0.78rem;
            color: #9ca3af;
            text-align: center;
        }

        .lm-status {
            margin: 10px 0 0;
            font-size: 0.85rem;
            min-height: 1em;
        }

        .lm-status.lm-error { color: #b91c1c; }
        .lm-status.lm-success { color: #15803d; }
        .lm-download { color: #5b3a8b; font-weight: 600; }

        @media (max-width: 768px) {
            .lead-magnet { padding: 40px 0; }
            .lead-magnet-card { grid-template-columns: 1fr; max-width: 440px; }
            .lead-magnet-copy { padding: 32px 28px; }
            .lead-magnet-form { padding: 32px 28px; }
        }

        /* Events CTA: separate the box from the feature cards above it */
        .events-cta { margin-top: 52px; }
        .events-cta .cta-box p { margin-bottom: 20px; }
        .events-cta .cta-box .btn { margin-top: 4px; }

        /* ===== Footer tidy-up ===== */
        .footer-links ul {
            list-style: none;
            margin: 0;
            padding: 0;
        }
        .footer-links li {
            margin-bottom: 11px;
        }
        .footer-links li:last-child {
            margin-bottom: 0;
        }
        .footer-links h3 {
            margin-bottom: 16px;
        }
        /* two even columns instead of a 3-track grid with an empty column */
        .footer-links {
            grid-template-columns: 1fr 1fr;
            gap: 40px;
        }
        .footer-legal {
            display: flex;
            flex-wrap: wrap;
            gap: 6px 22px;
            margin-top: 12px;
        }
        @media (min-width: 768px) {
            /* give the two link columns real room so labels stop wrapping */
            .footer-content {
                grid-template-columns: 1.6fr 2fr;
                gap: 60px;
            }
        }
        @media (max-width: 767px) {
            .footer-legal {
                justify-content: center;
            }
        }

        /* ===== Full-viewport sections (each section fills one screen) ===== */
        html {
            scroll-padding-top: 96px;
            scroll-snap-type: y proximity;
        }
        section {
            min-height: 100vh;
            display: flex;
            flex-direction: column;
            justify-content: center;
            scroll-snap-align: start;
        }
        section > .container {
            width: 100%;
        }
        /* hero: balanced vertical space so the headline clears the fixed header */
        .hero {
            padding-top: 90px;
            padding-bottom: 90px;
        }

        /* Space under the "6 Events Per Year / Bi-monthly..." block */
        .event-highlight { margin-bottom: 44px; }

        /* ===== Events sign-up form (inside Join the Community) ===== */
        .events-form { text-align: left; }
        .events-form-row { display: flex; gap: 12px; }
        .events-form-row input {
            flex: 1;
            min-width: 0;
            padding: 12px 14px;
            border: 1px solid #d7d9e0;
            border-radius: 10px;
            font-size: 0.98rem;
            font-family: inherit;
            color: #1b1e2b;
            background: #ffffff;
            transition: border-color 0.15s ease, box-shadow 0.15s ease;
        }
        .events-form-row input::placeholder { color: #9ca3af; }
        .events-form-row input:focus {
            outline: none;
            border-color: #5b3a8b;
            box-shadow: 0 0 0 3px rgba(91, 58, 139, 0.14);
        }
        .ev-hp { position: absolute; left: -9999px; width: 1px; height: 1px; opacity: 0; }
        .events-consent {
            display: flex;
            align-items: flex-start;
            gap: 9px;
            margin: 14px 0 16px;
            font-size: 0.8rem;
            color: #64748b;
            line-height: 1.4;
            cursor: pointer;
        }
        .events-consent input {
            width: 16px;
            height: 16px;
            margin: 2px 0 0;
            flex-shrink: 0;
            accent-color: #5b3a8b;
            cursor: pointer;
        }
        .events-submit {
            width: 100%;
            padding: 14px 20px;
            background: #5b3a8b;
            color: #ffffff;
            border: none;
            border-radius: 10px;
            font-size: 1rem;
            font-weight: 600;
            font-family: inherit;
            cursor: pointer;
            transition: background 0.15s ease, transform 0.05s ease;
        }
        .events-submit:hover { background: #4a2d75; }
        .events-submit:active { transform: translateY(1px); }
        .events-submit:disabled { opacity: 0.6; cursor: default; }
        .events-status { margin: 10px 0 0; font-size: 0.85rem; min-height: 1em; text-align: center; }
        .events-status.ev-error { color: #b91c1c; }
        .events-status.ev-success { color: #15803d; }
        @media (max-width: 560px) {
            .events-form-row { flex-direction: column; }
        }

/* ============================================================
   LEGAL / POLICY PAGES  (Privacy Policy, Website & Booking Terms)
   Added: standalone styling for .page-content / .policy-content,
   which previously had no CSS at all.
   ============================================================ */
.page-content {
    padding: 140px 0 80px;
    background: var(--background);
}
.page-content .container {
    max-width: 860px;
}
.page-content h1 {
    font-family: 'Inter', sans-serif;
    font-size: 2.4rem;
    line-height: 1.15;
    color: var(--dark-text);
    margin-bottom: 0.5rem;
}
.page-content .last-updated {
    color: var(--light-text);
    font-size: 0.95rem;
    margin-bottom: 0.5rem;
}
.page-content .legal-lead {
    font-size: 1.08rem;
    color: var(--gray-dark);
    line-height: 1.7;
    margin: 1.25rem 0 2rem;
    padding-bottom: 1.75rem;
    border-bottom: 1px solid var(--divider-medium);
}
.policy-content {
    color: var(--text);
    font-size: 1rem;
    line-height: 1.75;
}
.policy-content h2 {
    font-family: 'Inter', sans-serif;
    font-size: 1.4rem;
    color: var(--primary);
    margin: 2.5rem 0 0.75rem;
    scroll-margin-top: 110px;
}
.policy-content h3 {
    font-size: 1.1rem;
    color: var(--dark-text);
    margin: 1.5rem 0 0.5rem;
}
.policy-content p { margin-bottom: 1rem; }
.policy-content ul,
.policy-content ol { margin: 0 0 1.25rem 1.25rem; }
.policy-content li { margin-bottom: 0.5rem; }
.policy-content a { color: var(--primary); text-decoration: underline; }
.policy-content a:hover { color: var(--primary-dark); }
.policy-content strong { color: var(--dark-text); }

/* On-page table of contents */
.legal-toc {
    background: var(--white);
    border: 1px solid var(--gray-light);
    border-radius: var(--radius-md);
    padding: 1.25rem 1.5rem;
    margin: 0 0 2.5rem;
    box-shadow: var(--shadow-sm);
}
.legal-toc h2 {
    font-size: 0.85rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--light-text);
    margin: 0 0 0.75rem;
}
.legal-toc ol {
    margin: 0;
    padding-left: 1.25rem;
    columns: 2;
    column-gap: 2rem;
    font-size: 0.95rem;
}
.legal-toc li { margin-bottom: 0.35rem; }
.legal-toc a { color: var(--secondary); text-decoration: none; }
.legal-toc a:hover { color: var(--primary); text-decoration: underline; }

/* Identity / summary card */
.legal-identity {
    background: var(--white);
    border: 1px solid var(--gray-light);
    border-left: 4px solid var(--primary);
    border-radius: var(--radius-md);
    padding: 1.25rem 1.5rem;
    margin: 1.25rem 0 1.5rem;
    box-shadow: var(--shadow-sm);
}
.legal-identity p { margin-bottom: 0.35rem; }

/* Callout / note box */
.legal-note {
    background: #f4f1f8;
    border: 1px solid #e3dcef;
    border-radius: var(--radius-md);
    padding: 1rem 1.25rem;
    margin: 1.25rem 0;
    font-size: 0.97rem;
    color: var(--gray-dark);
}
.legal-note strong { color: var(--primary-dark); }

/* Data tables (purposes & legal bases, retention) */
.legal-table-wrap { overflow-x: auto; margin: 1rem 0 1.75rem; }
.legal-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.95rem;
    min-width: 520px;
    background: var(--white);
    border-radius: var(--radius-md);
    overflow: hidden;
    box-shadow: var(--shadow-sm);
}
.legal-table th,
.legal-table td {
    text-align: left;
    padding: 0.75rem 1rem;
    border-bottom: 1px solid var(--gray-light);
    vertical-align: top;
}
.legal-table thead th {
    background: var(--primary);
    color: var(--white);
    font-weight: 600;
    font-size: 0.9rem;
}
.legal-table tbody tr:last-child td { border-bottom: none; }
.legal-table tbody tr:nth-child(even) { background: #faf9fc; }

@media (max-width: 640px) {
    .page-content { padding: 110px 0 60px; }
    .page-content h1 { font-size: 1.9rem; }
    .legal-toc ol { columns: 1; }
}

/* ================= Compact density: Pricing + Process (fit ~1 screen) ================= */
.section-title { font-size: 2.05rem; margin-bottom: 1rem; padding-bottom: 0.5rem; }
.section-subtitle { font-size: 1.02rem; margin-bottom: 1.75rem; }

/* Pricing */
.pricing { padding: 2.5rem 0 2.75rem; }
.pricing-cards { gap: 1.5rem; margin-bottom: 0; align-items: stretch; }
.pricing-card { padding: 1.5rem 1.6rem; border-top-width: 3px; }
.pricing-card h3 { font-size: 1.9rem; margin-bottom: 0.15rem; }
.pricing-card h4 { font-size: 1.08rem; margin-bottom: 0.5rem; }
.pricing-card p { font-size: 0.9rem; line-height: 1.45; }
.pricing-card > * + * { margin-top: 0.35rem; }
.pricing-card ul { margin: 0.5rem 0 0; padding-left: 1.15rem; list-style: disc; }
.pricing-card li { font-size: 0.86rem; line-height: 1.4; margin-bottom: 0.28rem; color: var(--text); }
.pricing-card p em { font-size: 0.82rem; }
.pricing-note { font-size: 0.9rem; margin-top: 1.75rem; background: none; border: none; padding: 0; max-width: 760px; margin-left: auto; margin-right: auto; color: var(--light-text); font-style: italic; }
.pricing-note p { color: inherit; font-size: inherit; }

/* Process / Services 3-phase */
.services { padding: 2.5rem 0 2.75rem; }
.services-grid { gap: 1.25rem; }
.service-card { padding: 1.5rem 1.4rem; }
.service-icon { margin-bottom: 0.6rem; }
.service-icon svg { width: 34px; height: 34px; }
.service-card h3 { font-size: 1.12rem; margin-bottom: 0.45rem; }
.service-card p { font-size: 0.88rem; line-height: 1.4; margin-bottom: 0.35rem; }
.service-card ul { margin: 0.35rem 0; padding-left: 1.15rem; }
.service-card li { font-size: 0.84rem; line-height: 1.35; margin-bottom: 0.22rem; }

/* ===== Program-deck alignment: featured pricing card + process card graphics ===== */
.price-meta { text-transform: uppercase; letter-spacing: 0.08em; font-size: 0.72rem; }
.pricing-card .card-foot { margin-top: auto; padding-top: 0.75rem; color: var(--light-text); font-size: 0.82rem; }
.pricing-card.featured {
    background: linear-gradient(160deg, #4a2d75 0%, #5b3a8b 58%, #6b3fae 100%);
    border-top-color: #a855f7;
    color: #ffffff;
    box-shadow: var(--shadow-lg);
}
.pricing-card.featured h3,
.pricing-card.featured h4 { color: #ffffff; }
.pricing-card.featured p { color: rgba(255,255,255,0.85); }
.pricing-card.featured li { color: rgba(255,255,255,0.92); }
.pricing-card.featured .price-meta { color: #d8b4fe; }
.pricing-card.featured .equity-line { color: #ffffff; margin-top: auto; padding-top: 0.75rem; }
.pricing-card.featured .card-hedge { color: rgba(255,255,255,0.62); font-size: 0.76rem; font-style: italic; line-height: 1.4; margin-top: 0.5rem; }

/* Process cards: icon inside a soft lavender circle + phase kicker (deck slide 6) */
.service-icon {
    width: 46px;
    height: 46px;
    background: #f3ecfb;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 0.85rem;
    color: var(--primary);
}
.service-icon svg { width: 24px; height: 24px; }
.phase-label {
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-size: 0.7rem;
    font-weight: 700;
    color: var(--primary);
    margin-bottom: 0.2rem;
}

/* ===== Journey / stages flow (deck slide 7 style) ===== */
.journey { background: #faf7ff; padding: 2.75rem 0 3rem; }
.journey-flow {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1.1rem;
}
.journey-stage {
    background: #ffffff;
    border: 1px solid var(--line);
    border-radius: var(--radius-md);
    padding: 1.5rem 1.3rem;
    position: relative;
    text-align: left;
    box-shadow: var(--shadow-sm);
}
.stage-num {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: var(--primary);
    color: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 0.95rem;
    margin-bottom: 0.85rem;
}
.journey-stage h3 {
    font-size: 1.05rem;
    color: var(--dark-text);
    margin-bottom: 0.4rem;
    font-weight: 600;
}
.journey-stage p {
    font-size: 0.85rem;
    line-height: 1.42;
    color: var(--light-text);
    margin: 0;
}
.journey-stage:not(:last-child)::after {
    content: '\2192';
    position: absolute;
    right: -0.8rem;
    top: 2rem;
    color: var(--accent);
    font-size: 1.15rem;
    font-weight: 700;
    z-index: 2;
}
@media (max-width: 900px) {
    .journey-flow { grid-template-columns: 1fr 1fr; }
    .journey-stage:not(:last-child)::after { display: none; }
}
@media (max-width: 560px) {
    .journey-flow { grid-template-columns: 1fr; }
}

/* ===== Compact remaining sections (tighter vertical rhythm) ===== */
.journey { padding: 2.25rem 0 2.5rem; }
.about { padding: 2.75rem 0; }
.faq { padding: 2.75rem 0; }
.events { padding: 2.75rem 0; }
.trusted-partners { padding: 2.75rem 0; }
.lead-magnet { padding: 2.75rem 0; }
.official-partners { padding: 2rem 0; }
.eligibility-checker { padding: 2.75rem 0; }
.contact { padding: 2.75rem 0; }

/* ===== Fit about / faq / events content within one snap-screen ===== */
.founders-section { gap: 1.5rem; }
.founder-card { padding: 1.5rem 1.5rem; }
.founder-photo { width: 84px; height: 84px; border-width: 3px; }
.founder-monogram { font-size: 1.9rem; }
.founder-info p { font-size: 0.88rem; line-height: 1.45; }
.authority-section { margin-top: 1.5rem; padding-top: 1.25rem; }
.authority-section h3 { font-size: 1.05rem; margin-bottom: 1rem; }
.authority-logo { max-height: 34px; }
.authority-badge p { font-size: 0.8rem; margin-top: 0.4rem; }

.faq-grid { gap: 1rem; margin-top: 1.5rem; }
.faq-item { padding: 1rem 1.25rem; }
.faq-question { font-size: 1rem; }
.faq-answer p { font-size: 0.88rem; line-height: 1.45; }

.event-features { gap: 1.1rem; margin-top: 1rem; }
.event-feature { gap: 0.75rem; }
.feature-icon { width: 40px; height: 40px; }
.feature-content h4 { font-size: 1rem; margin-bottom: 0.25rem; }
.feature-content p { font-size: 0.85rem; line-height: 1.4; }
.event-number { font-size: 3rem; }
.cta-box { padding: 1.75rem 1.5rem; }

/* Icon-in-circle for the How We Support Founders cards (deck slide 3) */
.case-icon {
    width: 46px;
    height: 46px;
    background: #f3ecfb;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--primary);
    margin-bottom: 0.85rem;
}
.case-icon svg { width: 24px; height: 24px; }

/* How We Support Founders: three across, like the deck */
.case-cards { grid-template-columns: repeat(3, 1fr); gap: 1.25rem; margin: 1.5rem 0 0; }
.case-card { padding: 1.4rem 1.4rem; }
.case-content h4 { font-size: 1.1rem; margin-bottom: 0.4rem; }
.case-content p { font-size: 0.88rem; line-height: 1.45; }

/* Journey stages: art-icon badge + stage kicker (deck slide 6 style) */
.stage-icon {
    width: 46px;
    height: 46px;
    border-radius: 50%;
    background: linear-gradient(135deg, #5b3a8b, #7c3aed);
    color: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 0.7rem;
    box-shadow: 0 6px 16px -8px rgba(124, 58, 237, 0.6);
}
.stage-icon svg { width: 22px; height: 22px; }
.stage-kicker {
    text-transform: uppercase;
    letter-spacing: 0.09em;
    font-size: 0.66rem;
    font-weight: 700;
    color: var(--primary);
    margin-bottom: 0.15rem;
}

/* ============================================================
   Design pass: natural content flow instead of forced
   full-screen scroll-snap sections (kills the dead whitespace)
   ============================================================ */
html { scroll-snap-type: none; }
section { min-height: 0; scroll-snap-align: none; padding-top: 3.5rem; padding-bottom: 3.5rem; }
.about { min-height: 0; }

/* Cleaner headers: drop the dated gradient underline bar */
.section-title:after { display: none; }
.section-title { padding-bottom: 0; }

/* Official partners: a clean, uniform trust strip (not a full screen) */
.official-partners { padding: 2.5rem 0; }
.partners-header h3 { font-size: 1rem; font-weight: 600; color: var(--light-text); margin-bottom: 1.25rem; }
.partners-logos { display: flex; justify-content: center; align-items: center; gap: 3.5rem; flex-wrap: wrap; }
.partner-logo { background: none; box-shadow: none; padding: 0; }
.partner-img { height: 34px; width: auto; max-width: 140px; object-fit: contain; filter: grayscale(1); opacity: 0.6; transition: opacity 0.2s ease, filter 0.2s ease; }
.partner-img:hover { filter: grayscale(0); opacity: 1; }

/* Vetted provider network grid (deck slide 9) */
.provider-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; max-width: 960px; margin: 1.5rem auto 0; }
.provider-item { display: flex; gap: 0.85rem; align-items: flex-start; background: #ffffff; border: 1px solid var(--line); border-radius: var(--radius-md); padding: 1.1rem 1.15rem; box-shadow: var(--shadow-sm); text-align: left; }
.provider-icon { width: 40px; height: 40px; flex: 0 0 auto; border-radius: 50%; background: #f3ecfb; color: var(--primary); display: flex; align-items: center; justify-content: center; }
.provider-icon svg { width: 20px; height: 20px; }
.provider-item h4 { font-size: 0.98rem; margin: 0 0 0.15rem; color: var(--dark-text); font-weight: 600; }
.provider-item p { font-size: 0.82rem; line-height: 1.35; color: var(--light-text); margin: 0; }
.provider-note { text-align: center; margin-top: 1.5rem; color: var(--light-text); font-size: 0.92rem; }
@media (max-width: 820px) { .provider-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 560px) { .provider-grid { grid-template-columns: 1fr; } }

/* Warm section backgrounds into the lavender theme (was cool gray) */
.about { background-color: #f6f2fc; }
.trusted-partners { background-color: #ffffff; }

/* ============================================================
   Responsive fixes
   ============================================================ */

/* 1. Hero must clear the fixed header (was overlapping) */
.hero { padding-top: 145px; padding-bottom: 60px; }

/* 2. Switch to hamburger nav before the desktop nav wraps (~820px) */
@media (max-width: 960px) {
    .header-content { padding: 0.75rem 0; }
    .logo-img { height: 40px; width: auto; }
    .nav {
        display: none;
        position: fixed;
        top: 64px;
        left: 0;
        width: 100%;
        height: calc(100vh - 64px);
        background-color: #ffffff;
        box-shadow: var(--shadow-md);
        z-index: 100;
        padding: 1.25rem;
        overflow-y: auto;
    }
    .nav.active { display: flex; flex-direction: column; }
    .nav-links { flex-direction: column; margin: 0 0 1rem 0; width: 100%; }
    .nav-links li { margin: 0.25rem 0; padding: 0.4rem 0; border-bottom: 1px solid var(--line); }
    .nav-links li:last-child { border-bottom: none; }
    .nav-links a { display: block; padding: 0.4rem 0; font-size: 1.1rem; }
    .nav .btn-secondary { width: 100%; margin-top: 0.75rem; text-align: center; }
    .mobile-menu-btn { display: block; z-index: 101; padding: 0.5rem; }
    .hero { padding-top: 132px; padding-bottom: 52px; }
}

/* 3. Grids that must collapse on smaller screens */
@media (max-width: 820px) { .case-cards { grid-template-columns: 1fr 1fr; } }
@media (max-width: 560px) { .case-cards { grid-template-columns: 1fr; } }

/* 4. Hero CTA text must not overflow its button on mobile */
@media (max-width: 767px) {
    .hero-cta-buttons { width: 100%; padding: 0 12px; }
    .hero-primary-cta, .hero-secondary-cta { width: 100%; max-width: 360px; white-space: normal; }
    .hero-primary-cta .cta-main, .hero-primary-cta span { font-size: 0.95rem; }
}

/* Keep the 3 agency logos on one row down to mobile */
.partners-logos { gap: 2rem; }
.partner-img { max-width: 110px; }
@media (max-width: 420px) { .partners-logos { gap: 1.25rem; } .partner-img { max-width: 88px; height: 28px; } }

/* Event features stack on narrow screens */
@media (max-width: 620px) { .event-features { grid-template-columns: 1fr; } }

/* Card body copy should be normal weight, not italic (consistency + readability) */
.case-content p { font-style: normal; }

/* ============================================================
   Restore: each section fills and snaps to one page view
   (keeps all the content/style improvements since)
   ============================================================ */
html { scroll-snap-type: y proximity; }
section {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    justify-content: center;
    scroll-snap-align: start;
}
.about { min-height: 100vh; }

/* Hero "trusted by" agency bar (folded in from the old logo strip) */
.hero-agencies { position: absolute; bottom: 2.25rem; left: 0; right: 0; z-index: 1; text-align: center; padding: 0 1rem; }
.hero-agencies-label { display: block; color: rgba(255,255,255,0.72); font-size: 0.76rem; letter-spacing: 0.06em; text-transform: uppercase; margin-bottom: 0.85rem; }
.hero-agencies-logos { display: flex; justify-content: center; align-items: center; gap: 0.85rem; flex-wrap: wrap; }
.agency-chip { background: #ffffff; border-radius: 8px; padding: 7px 14px; display: inline-flex; align-items: center; height: 40px; box-shadow: 0 8px 20px -12px rgba(0,0,0,0.5); }
.agency-chip img { height: 22px; width: auto; max-width: 92px; object-fit: contain; display: block; }
@media (max-width: 767px) {
    .hero { justify-content: flex-start; }
    .hero-agencies { position: static; bottom: auto; margin-top: 1.75rem; padding-bottom: 0.5rem; }
    .hero-agencies-label { font-size: 0.7rem; margin-bottom: 0.6rem; }
    .agency-chip { height: 34px; padding: 5px 10px; }
    .agency-chip img { height: 18px; max-width: 72px; }
}

/* ==========================================================================
   Language switcher (startup visa locales)
   ========================================================================== */
.lang-switcher {
    position: relative;
    display: inline-flex;
    align-items: center;
    margin: 0 12px 0 8px;
    z-index: 40;
    font-family: inherit;
}

.lang-switcher-toggle {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    border-radius: 999px;
    border: 1px solid rgba(91, 58, 139, 0.28);
    background: #fff;
    color: #5B3A8B;
    font: inherit;
    font-size: 0.875rem;
    font-weight: 600;
    line-height: 1;
    cursor: pointer;
    transition: background 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
    white-space: nowrap;
}

.lang-switcher-toggle:hover,
.lang-switcher.is-open .lang-switcher-toggle {
    background: rgba(91, 58, 139, 0.08);
    border-color: #5B3A8B;
}

.lang-switcher-toggle:focus-visible {
    outline: 2px solid #5B3A8B;
    outline-offset: 2px;
}

.lang-switcher-globe {
    display: inline-flex;
    width: 16px;
    height: 16px;
    flex-shrink: 0;
    color: currentColor;
}

.lang-switcher-globe svg {
    width: 16px;
    height: 16px;
    display: block;
}

.lang-switcher-current {
    max-width: 9rem;
    overflow: hidden;
    text-overflow: ellipsis;
}

.lang-switcher-code {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 1.75rem;
    padding: 2px 6px;
    border-radius: 999px;
    background: rgba(91, 58, 139, 0.12);
    font-size: 0.75rem;
    letter-spacing: 0.02em;
}

.lang-switcher-chevron {
    width: 12px;
    height: 12px;
    flex-shrink: 0;
    transition: transform 0.15s ease;
}

.lang-switcher.is-open .lang-switcher-chevron {
    transform: rotate(180deg);
}

.lang-switcher-menu {
    position: absolute;
    top: calc(100% + 8px);
    right: 0;
    min-width: 14rem;
    margin: 0;
    padding: 6px;
    list-style: none;
    background: #fff;
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 12px;
    box-shadow: 0 12px 32px rgba(15, 23, 42, 0.14);
    z-index: 50;
}

html[dir="rtl"] .lang-switcher-menu {
    right: auto;
    left: 0;
}

.lang-switcher-menu[hidden] {
    display: none;
}

.lang-switcher-menu a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 10px 12px;
    border-radius: 8px;
    color: #1f2937;
    text-decoration: none;
    font-size: 0.9rem;
    font-weight: 500;
    transition: background 0.12s ease;
}

.lang-switcher-menu a:hover,
.lang-switcher-menu a:focus-visible {
    background: rgba(91, 58, 139, 0.08);
    color: #5B3A8B;
    outline: none;
}

.lang-switcher-menu a[aria-current="page"] {
    background: rgba(91, 58, 139, 0.12);
    color: #5B3A8B;
    font-weight: 600;
}

.lang-switcher-menu .lang-option-code {
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    color: #64748b;
}

.lang-switcher-menu a[aria-current="page"] .lang-option-code {
    color: #5B3A8B;
}

.footer-lang-note {
    color: var(--gray-light, #cbd5e1);
    font-size: 0.9rem;
    margin: 0 0 12px;
    line-height: 1.4;
}

/* Footer / dark surfaces */
.footer .lang-switcher {
    margin: 0;
    display: block;
}

.footer .lang-switcher-toggle {
    width: 100%;
    justify-content: space-between;
    background: rgba(255, 255, 255, 0.08);
    border-color: rgba(255, 255, 255, 0.28);
    color: #fff;
}

.footer .lang-switcher-toggle:hover,
.footer .lang-switcher.is-open .lang-switcher-toggle {
    background: rgba(255, 255, 255, 0.14);
    border-color: rgba(255, 255, 255, 0.55);
}

.footer .lang-switcher-code {
    background: rgba(255, 255, 255, 0.16);
    color: #fff;
}

.footer .lang-switcher-menu {
    right: auto;
    left: 0;
    top: auto;
    bottom: calc(100% + 8px);
}

html[dir="rtl"] .footer .lang-switcher-menu {
    left: auto;
    right: 0;
}

@media (max-width: 992px) {
    .header .lang-switcher {
        margin: 10px 0 0;
        width: 100%;
        order: 10;
    }

    .header .lang-switcher-toggle {
        width: 100%;
        justify-content: center;
    }

    .header .lang-switcher-menu {
        right: 0;
        left: 0;
        min-width: 0;
        width: 100%;
    }
}
