@import url(https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.3/font/bootstrap-icons.min.css);
@import url(https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css);

@import url(https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&family=Manrope:wght@400;600;700;800;900&display=swap);




 /* Base Transitions */
        * {
            transition: all 0.3s ease-in-out;
        }
        body {
            overflow-x: hidden;
        }
        img {
            max-width: 100%;
            height: auto;
            object-fit: cover;
        }
        .card, .card-solid, .card-glass, .eco-card, .stat-pill, .partner-logo, .learn-card, .quote-card {
            transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
        }
        .hover-lift:hover {
            transform: translateY(-6px) scale(1.01);
            box-shadow: 0 20px 40px rgba(0, 45, 107, 0.10) !important;
            border-color: rgba(251, 179, 6, 0.4) !important;
        }
        .hover-lift-dark:hover {
            transform: translateY(-6px) scale(1.01);
            box-shadow: 0 20px 40px rgba(0, 0, 0, 0.2) !important;
            border-color: rgba(255, 255, 255, 0.5) !important;
        }
        .icon-hover {
            transition: transform 0.3s ease, color 0.3s ease;
            display: inline-block;
        }
        .icon-hover:hover {
            transform: scale(1.15) rotate(4deg);
            color: #FBB306 !important;
        }
        .btn-hover-gold {
            transition: all 0.3s ease;
            background: #FBB306;
            color: #002D6B;
            border: 1px solid #FBB306;
        }
        .btn-hover-gold:hover {
            background: #e0a105;
            transform: scale(1.03);
            box-shadow: 0 8px 20px rgba(251, 179, 6, 0.3);
            color: #002D6B;
        }
        .btn-hover-outline {
            transition: all 0.3s ease;
            background: transparent;
            color: #fff;
            border: 1.5px solid rgba(255, 255, 255, 0.3);
        }
        .btn-hover-outline:hover {
            background: rgba(255, 255, 255, 0.1);
            transform: scale(1.03);
            border-color: #FBB306;
            color: #fff;
        }
        .btn-hover-navy {
            transition: all 0.3s ease;
            background: #002D6B;
            color: #fff;
            border: 1px solid #002D6B;
        }
        .btn-hover-navy:hover {
            background: #00408a;
            transform: scale(1.03);
            box-shadow: 0 8px 20px rgba(0, 45, 107, 0.3);
            color: #fff;
        }
        .btn-hover-white {
            transition: all 0.3s ease;
            background: #fff;
            color: #002D6B;
            border: 1px solid #fff;
        }
        .btn-hover-white:hover {
            background: #f0f4f8;
            transform: scale(1.03);
            box-shadow: 0 8px 20px rgba(0, 0, 0, 0.1);
            color: #002D6B;
        }

        /* Floating Animations */
        @keyframes float {
            0% { transform: translateY(0px) rotate(0deg); }
            50% { transform: translateY(-15px) rotate(2deg); }
            100% { transform: translateY(0px) rotate(0deg); }
        }
        .float-animation {
            animation: float 8s ease-in-out infinite;
        }
        .float-animation-delayed {
            animation: float 10s ease-in-out infinite 2s;
        }

        /* Marquee Trust Bar */
        @keyframes marquee {
            0% { transform: translateX(0); }
            100% { transform: translateX(-50%); }
        }
        .marquee-wrapper {
            overflow: hidden;
            white-space: nowrap;
            display: flex;
            flex-wrap: nowrap;
        }
        .marquee-content {
            display: flex;
            flex-wrap: nowrap;
            animation: marquee 25s linear infinite;
            width: max-content;
        }
        .marquee-content:hover {
            animation-play-state: paused;
        }
        .trust-item {
            display: inline-flex;
            align-items: center;
            gap: 0.5rem;
            padding: 0 1.5rem;
            color: #002D6B;
            font-size: 0.8rem;
            font-weight: 700;
            flex-shrink: 0;
        }

        /* Fix for overlapping images / cards */
        .no-overflow {
            overflow: hidden;
        }
        .card-img-top-fix {
            width: 100%;
            height: 180px;
            object-fit: cover;
            border-radius: 12px 12px 0 0;
        }
        .card-img-sm-fix {
            width: 100%;
            height: 120px;
            object-fit: cover;
            border-radius: 10px;
        }
        .card-img-eco {
            width: 100%;
            height: 70px;
            object-fit: cover;
            border-radius: 8px;
        }
        .mosaic-img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            border-radius: 16px;
        }
        .flex-equal-height {
            display: flex;
            flex-wrap: wrap;
        }
        .flex-equal-height > [class*='col-'] {
            display: flex;
        }

        /* Custom Glassmorphism */
        .glass {
            background: rgba(255, 255, 255, 0.04);
            backdrop-filter: blur(12px);
            -webkit-backdrop-filter: blur(12px);
            border: 1px solid rgba(255, 255, 255, 0.08);
        }
        .glass-gold {
            background: rgba(251, 179, 6, 0.08);
            backdrop-filter: blur(8px);
            -webkit-backdrop-filter: blur(8px);
            border: 1px solid rgba(251, 179, 6, 0.15);
        }

        /* Gold Top Border */
        .border-top-gold { border-top: 4px solid #FBB306 !important; }
        .border-top-blue { border-top: 4px solid #1369BD !important; }
        .border-top-green { border-top: 4px solid #10B981 !important; }
        .border-top-sky { border-top: 4px solid #7EC8E3 !important; }

        /* Fix Accordion */
        .accordion-button:not(.collapsed) {
            background: rgba(251, 179, 6, 0.05);
            color: #002D6B;
            box-shadow: none;
        }
        .accordion-button:focus {
            border-color: rgba(251, 179, 6, 0.4);
            box-shadow: 0 0 0 0.25rem rgba(251, 179, 6, 0.2);
        }

        /* Stat Counter Hover */
        .stat-pill:hover .stat-number {
            color: #FBB306;
        }

        /* Override Bootstrap link colors */
        a {
            text-decoration: none;
        }
        .text-gold {
            color: #FBB306 !important;
        }
        .bg-navy {
            background-color: #002D6B !important;
        }
        .text-navy {
            color: #002D6B !important;
        }

        /* Responsive fixes */
        @media (max-width: 767.98px) {
            .marquee-content {
                animation-duration: 15s;
            }
            .trust-item {
                font-size: 0.7rem;
                padding: 0 0.75rem;
            }
            .card-img-top-fix {
                height: 140px;
            }
        }