:root {
    --site-bg: #050505;
    --site-panel: #121212;
    --site-panel-soft: #1a1a1a;
    --site-border: rgba(255, 255, 255, 0.1);
    --site-text: #f3f3f3;
    --site-muted: #b9b9b9;
    --site-red: #c1121f;
    --site-gold: #f0c14b;
}

body {
    background-color: var(--site-bg);
    color: var(--site-text);
    font-family: 'Barlow', sans-serif;
}

a {
    color: #ffffff;
}

a:hover {
    color: var(--site-gold);
    text-decoration: none;
}

.navbar,
.site-footer,
.footer-banner {
    background-color: #090909;
}

.navbar-brand {
    max-width: 100%;
}

.site-logo {
    width: 64px;
    height: 64px;
    object-fit: cover;
    border-radius: 50%;
    border: 2px solid rgba(255, 255, 255, 0.15);
}

.brand-title {
    letter-spacing: 0.08em;
    font-size: 1rem;
}

.navbar-dark .navbar-nav .nav-link {
    color: rgba(255, 255, 255, 0.82);
    font-weight: 600;
    letter-spacing: 0.03em;
}

.navbar-dark .navbar-nav .nav-link:hover,
.navbar-dark .navbar-nav .active > .nav-link {
    color: var(--site-gold);
}

.hero-section {
    background:
        linear-gradient(135deg, rgba(0, 0, 0, 0.92), rgba(92, 8, 15, 0.78)),
        url('/assets/img/weapons.jpg') center/cover no-repeat;
}

.section-dark {
    background-color: var(--site-panel);
}

.section-soft {
    background-color: var(--site-panel-soft);
}

.rounded-panel {
    border: 1px solid var(--site-border);
    border-radius: 0.75rem;
}

.card {
    background-color: var(--site-panel);
    border-color: var(--site-border);
}

.card,
.card .text-muted,
.text-muted {
    color: var(--site-muted) !important;
}

.card-title,
.display-4,
.display-5,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
label,
strong,
.lead,
.list-group-item,
.table,
.table thead th {
    color: var(--site-text);
}

.display-5 {
    font-size: 2.6rem;
    font-weight: 700;
    line-height: 1.1;
}

.btn-brand {
    background-color: var(--site-red);
    border-color: var(--site-red);
    color: #fff;
}

.btn-brand:hover {
    background-color: #a80f1b;
    border-color: #a80f1b;
    color: #fff;
}

.btn-gold {
    background-color: var(--site-gold);
    border-color: var(--site-gold);
    color: #111;
}

.btn-gold:hover {
    background-color: #d9ab36;
    border-color: #d9ab36;
    color: #111;
}

.eyebrow {
    color: var(--site-gold);
    font-size: 0.9rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.stat-box,
.info-box,
.footer-social,
.sponsor-tile {
    background-color: rgba(255, 255, 255, 0.03);
    border: 1px solid var(--site-border);
    border-radius: 0.75rem;
}

.stat-box,
.info-box,
.sponsor-tile {
    padding: 1rem;
}

.footer-social {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 110px;
    padding: 0.6rem 0.9rem;
    color: #fff;
}

.list-group-item {
    background-color: transparent;
    border-color: var(--site-border);
}

.table-dark {
    background-color: transparent;
}

.table-dark td,
.table-dark th,
.table-dark thead th {
    border-color: var(--site-border);
}

.form-control,
.custom-select {
    background-color: #111;
    border-color: rgba(255, 255, 255, 0.15);
    color: #fff;
}

.form-control:focus,
.custom-select:focus {
    background-color: #111;
    border-color: var(--site-gold);
    box-shadow: 0 0 0 0.2rem rgba(240, 193, 75, 0.15);
    color: #fff;
}

.form-control::placeholder {
    color: #8e8e8e;
}

.rich-content,
.rich-content * {
    max-width: 100%;
}

.rich-content img {
    height: auto;
}

.rich-content table {
    width: 100%;
}

.video-thumb {
    border-radius: 0.75rem;
    overflow: hidden;
    border: 1px solid var(--site-border);
}

@media (max-width: 991.98px) {
    .navbar-brand {
        width: calc(100% - 56px);
    }

    .brand-title {
        font-size: 0.9rem;
    }

    .display-5 {
        font-size: 2.1rem;
    }
}
