﻿:root {
    --brand-blue: #1a3d7c;
    --brand-green: #8cbf3f;
    --brand-ink: #0f1e3d;
    --brand-muted: #6b7280;
    --brand-bg-soft: #f4f8fb;
    --brand-serif: "Playfair Display", Georgia, serif;
    --brand-sans: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;
}

body {
    font-family: var(--brand-sans);
    color: var(--brand-ink);
    background: #fff;
    margin: 0;
}

h1, h2, h3 {
    font-family: var(--brand-serif);
    color: var(--brand-blue);
    letter-spacing: -0.01em;
}

/* ---------------- Navbar ---------------- */
.site-header .navbar {
    padding-top: .9rem;
    padding-bottom: .9rem;
    border-bottom: 1px solid #eef1f5;
}
/* ================= NAV ACTIVE STATE ================= */
.site-header .nav-link {
    color: var(--brand-ink);
    font-weight: 500;
    padding-bottom: .35rem;
    position: relative;
    transition: color .15s ease;
}

    .site-header .nav-link:hover {
        color: var(--brand-blue);
    }

    .site-header .nav-link.active {
        color: var(--brand-blue);
        font-weight: 600;
    }

        .site-header .nav-link.active::after {
            content: "";
            position: absolute;
            left: 0;
            right: 0;
            bottom: 0;
            height: 2px;
            background: var(--brand-blue);
            border-radius: 2px;
        }
.brand-text {
    display: flex;
    flex-direction: column;
    line-height: 1.05;
}

    .brand-text strong {
        color: var(--brand-green);
        font-size: 1.15rem;
        letter-spacing: .04em;
    }

    .brand-text small {
        color: var(--brand-blue);
        font-size: .62rem;
        letter-spacing: .12em;
        text-transform: uppercase;
    }

        .brand-text small.text-muted {
            color: #9aa3b2 !important;
            letter-spacing: .08em;
        }

.site-header .nav-link {
    color: var(--brand-ink);
    font-weight: 500;
}

    .site-header .nav-link:hover {
        color: var(--brand-blue);
    }

.btn-brand {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px; /* Adds space between text and arrow */
    white-space: nowrap; /* Prevents the text from wrapping */


    background: var(--brand-blue);
    color: #fff;
    border-radius: 8px;
    padding: .55rem 1.1rem;
    font-weight: 600;
    border: 1px solid var(--brand-blue);
}

    .btn-brand:hover {
        background: #14315f;
        color: #fff;
    }

/* ---------------- Footer ---------------- */
.site-footer {
    background: var(--brand-bg-soft);
    color: var(--brand-muted);
    font-size: .92rem;
}

    .site-footer a {
        text-decoration: none;
    }

        .site-footer a:hover {
            color: var(--brand-blue);
        }
