
        :root {
            --primary: #002D62; /* Deep Trust Blue */
            --secondary: #1E824C; /* Growth Green */
            --accent: #D4AF37; /* Reliability Gold */
            --light: #F8FAFC;
            --dark: #1E293B;
            --white: #ffffff;
            --transition: all 0.3s ease;
        }

        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
            font-family: 'Inter', sans-serif;
        }

        html { scroll-behavior: smooth; }

        body {
            background-color: var(--light);
            color: var(--dark);
            line-height: 1.6;
            overflow-x: hidden;
        }

        /* --- Global Styles --- */
        .container { max-width: 1200px; margin: 0 auto; padding: 0 20px; }
        .btn {
            padding: 12px 28px;
            border-radius: 5px;
            text-decoration: none;
            font-weight: 600;
            transition: var(--transition);
            display: inline-block;
            cursor: pointer;
            border: none;
        }
        .btn-primary { background: var(--secondary); color: white; }
        .btn-primary:hover { background: #166534; transform: translateY(-2px); }
        .btn-outline { border: 2px solid var(--white); color: white; }
        .btn-outline:hover { background: var(--white); color: var(--primary); }

        section { padding: 80px 0; }
        .reveal { opacity: 0; transform: translateY(30px); transition: 0.8s all ease; }
        .reveal.active { opacity: 1; transform: translateY(0); }

        /* --- Header --- */
        header {
            position: fixed;
            width: 100%;
            top: 0;
            z-index: 1000;
            padding: 20px 0;
            transition: var(--transition);
        }
        header.sticky {
            background: var(--white);
            padding: 10px 0;
            box-shadow: 0 2px 10px rgba(0,0,0,0.1);
        }
        header.sticky .nav-link, header.sticky .logo { color: var(--primary); }

        nav { display: flex; justify-content: space-between; align-items: center; }
        .logo { font-size: 1.5rem; font-weight: 700; color: var(--white); text-decoration: none; }
        .logo span { color: var(--accent); }
        .nav-links { display: flex; list-style: none; gap: 20px; align-items: center; }
        .nav-link { color: var(--white); text-decoration: none; font-weight: 500; font-size: 0.9rem; }
        .nav-link:hover { color: var(--accent); }

        /* --- Hero Section --- */
        .hero {
            height: 100vh;
            background: linear-gradient(rgba(0,45,98,0.85), rgba(0,45,98,0.85)), url('https://images.unsplash.com/photo-1454165833767-027ffea9e77b?auto=format&fit=crop&q=80&w=2070') center/cover;
            display: flex;
            align-items: center;
            color: var(--white);
            text-align: center;
        }
        .hero-content h1 { font-size: 3.5rem; margin-bottom: 20px; animation: fadeInDown 1s ease; }
        .hero-content p { font-size: 1.2rem; margin-bottom: 30px; max-width: 700px; margin-inline: auto; }
        .hero-btns { display: flex; gap: 15px; justify-content: center; }

        /* --- Stats --- */
        .stats-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 20px; text-align: center; margin-top: 40px; }
        .stat-item h2 { font-size: 2.5rem; color: var(--secondary); }

        /* --- Services --- */
        .services-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(380px, 1fr)); gap: 25px; margin-top: 40px; }
        .service-card {
            background: var(--white);
            padding: 30px;
            border-radius: 10px;
            box-shadow: 0 5px 15px rgba(0,0,0,0.05);
            transition: var(--transition);
            border-bottom: 4px solid transparent;
        }
        .service-card:hover { transform: translateY(-10px); border-bottom: 4px solid var(--accent); }
        .service-card i { font-size: 2.5rem; color: var(--primary); margin-bottom: 15px; }
        .service-card h3 { margin-bottom: 15px; color: var(--primary); }
        .service-list { list-style: none; font-size: 0.85rem; }
        .service-list li { margin-bottom: 5px; }
        .service-list li::before { content: "→"; margin-right: 8px; color: var(--secondary); }

        /* --- FAQ Accordion --- */
        .faq-item { background: var(--white); margin-bottom: 10px; border-radius: 5px; overflow: hidden; }
        .faq-question { padding: 20px; cursor: pointer; display: flex; justify-content: space-between; font-weight: 600; background: #edf2f7; }
        .faq-answer { padding: 0 20px; max-height: 0; overflow: hidden; transition: 0.3s ease; }
        .faq-item.active .faq-answer { padding: 20px; max-height: 200px; }

        /* --- Contact & Newsletter --- */
        .contact-container { display: grid; grid-template-columns: 1fr 1fr; gap: 50px; }
        form { display: flex; flex-direction: column; gap: 15px; }
        input, select, textarea { padding: 12px; border: 1px solid #ddd; border-radius: 5px; width: 100%; }
        .newsletter { background: var(--primary); color: white; padding: 40px; border-radius: 15px; text-align: center; margin-top: 50px; }

        /* --- Footer --- */
        footer { background: var(--dark); color: #cbd5e1; padding: 60px 0 20px; }
        .footer-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 40px; margin-bottom: 40px; }
        .footer-links { list-style: none; }
        .footer-links li { margin-bottom: 10px; }
        .footer-links a { color: #cbd5e1; text-decoration: none; transition: var(--transition); }
        .footer-links a:hover { color: var(--accent); padding-left: 5px; }

        /* --- Modal --- */
        .modal { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.8); display: none; align-items: center; justify-content: center; z-index: 2000; }
        .modal-content { background: white; padding: 40px; border-radius: 10px; max-width: 600px; position: relative; }
        .close-modal { position: absolute; top: 10px; right: 20px; font-size: 2rem; cursor: pointer; }

        @keyframes fadeInDown {
            from { opacity: 0; transform: translateY(-20px); }
            to { opacity: 1; transform: translateY(0); }
        }

        @media (max-width: 768px) {
            .hero-content h1 { font-size: 2.2rem; }
            .nav-links { display: none; }
            .contact-container { grid-template-columns: 1fr; }
        }
    