/* LOGAHS Bootstrap theme — brand colors via CSS variables only (classes stay standard Bootstrap) */
:root {
    --navy: #0a1628;
    --navy-mid: #112040;
    --gold: #b8963e;
    --gold-light: #d4af6a;
    --gold-pale: #f0e4c4;
    --cream: #faf7f0;
    --parchment: #f4ede0;
    --stone: #8a8070;
    --charcoal: #2c2c2c;
    --ink: #1a1a2e;
    --white: #ffffff;

    --bs-blue: #112040;
    --bs-indigo: #1a1a2e;
    --bs-purple: #1a1a2e;
    --bs-pink: #b8963e;
    --bs-red: #8b1e1e;
    --bs-orange: #b8963e;
    --bs-yellow: #d4af6a;
    --bs-green: #3d6b4f;
    --bs-teal: #112040;
    --bs-cyan: #d4af6a;

    --bs-primary: #b8963e;
    --bs-secondary: #112040;
    --bs-success: #3d6b4f;
    --bs-info: #112040;
    --bs-warning: #d4af6a;
    --bs-danger: #8b1e1e;
    --bs-light: #faf7f0;
    --bs-dark: #0a1628;

    --bs-primary-rgb: 184, 150, 62;
    --bs-secondary-rgb: 17, 32, 64;
    --bs-success-rgb: 61, 107, 79;
    --bs-info-rgb: 17, 32, 64;
    --bs-warning-rgb: 212, 175, 106;
    --bs-danger-rgb: 139, 30, 30;
    --bs-light-rgb: 250, 247, 240;
    --bs-dark-rgb: 10, 22, 40;
    --bs-white-rgb: 255, 255, 255;
    --bs-black-rgb: 26, 26, 46;
    --bs-body-color-rgb: 44, 44, 44;
    --bs-body-bg-rgb: 250, 247, 240;

    --bs-body-font-family: "EB Garamond", Georgia, serif;
    --bs-body-font-size: 1.125rem;
    --bs-body-font-weight: 400;
    --bs-body-line-height: 1.7;
    --bs-body-color: #2c2c2c;
    --bs-body-bg: #faf7f0;

    --bs-emphasis-color: #0a1628;
    --bs-secondary-color: rgba(138, 128, 112, 0.85);
    --bs-secondary-bg: #f4ede0;
    --bs-tertiary-color: rgba(138, 128, 112, 0.65);
    --bs-tertiary-bg: #f0e4c4;

    --bs-heading-color: #0a1628;
    --bs-link-color: #b8963e;
    --bs-link-hover-color: #d4af6a;
    --bs-code-color: #112040;
    --bs-highlight-bg: #f0e4c4;

    --bs-border-color: rgba(184, 150, 62, 0.3);
    --bs-border-color-translucent: rgba(10, 22, 40, 0.12);

    --bs-focus-ring-color: rgba(184, 150, 62, 0.35);

    --bs-form-valid-color: #3d6b4f;
    --bs-form-valid-border-color: #3d6b4f;
    --bs-form-invalid-color: #8b1e1e;
    --bs-form-invalid-border-color: #8b1e1e;
}

body {
    font-family: var(--bs-body-font-family);
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
    font-family: "Cinzel", "Playfair Display", Georgia, serif;
    letter-spacing: 0.04em;
}

.display-1, .display-2, .display-3, .display-4, .display-5, .display-6,
.lead {
    font-family: "Playfair Display", Georgia, serif;
}

.btn,
.badge,
.form-label,
.navbar .btn {
    font-family: "Cormorant Garamond", Georgia, serif;
}

.navbar,
.navbar-brand,
.navbar .nav-link {
    font-family: "Cormorant Garamond", "EB Garamond", Georgia, serif;
    text-decoration: none !important;
}

.navbar-brand {
    font-family: "Playfair Display", "EB Garamond", Georgia, serif;
    font-weight: 600;
    letter-spacing: 0.02em;
}

.navbar .nav-link {
    letter-spacing: 0.08em;
    text-transform: uppercase;
    font-size: 1rem;
}

.navbar a,
.navbar a:hover,
.navbar a:focus,
.navbar a:active {
    text-decoration: none !important;
}

.btn {
    letter-spacing: 0.06em;
    text-transform: uppercase;
    font-size: 0.95rem;
}

.btn-primary {
    --bs-btn-color: #0a1628;
    --bs-btn-bg: #b8963e;
    --bs-btn-border-color: #b8963e;
    --bs-btn-hover-color: #0a1628;
    --bs-btn-hover-bg: #d4af6a;
    --bs-btn-hover-border-color: #d4af6a;
    --bs-btn-active-color: #0a1628;
    --bs-btn-active-bg: #d4af6a;
    --bs-btn-active-border-color: #d4af6a;
    --bs-btn-disabled-color: #0a1628;
    --bs-btn-disabled-bg: #b8963e;
    --bs-btn-disabled-border-color: #b8963e;
}

.btn-outline-primary {
    --bs-btn-color: #b8963e;
    --bs-btn-border-color: #b8963e;
    --bs-btn-hover-color: #0a1628;
    --bs-btn-hover-bg: #b8963e;
    --bs-btn-hover-border-color: #b8963e;
    --bs-btn-active-color: #0a1628;
    --bs-btn-active-bg: #b8963e;
    --bs-btn-active-border-color: #b8963e;
}

.btn-outline-light {
    --bs-btn-color: #f0e4c4;
    --bs-btn-border-color: rgba(240, 228, 196, 0.55);
    --bs-btn-hover-color: #0a1628;
    --bs-btn-hover-bg: #f0e4c4;
    --bs-btn-hover-border-color: #f0e4c4;
}

.btn-outline-warning {
    --bs-btn-color: #d4af6a;
    --bs-btn-border-color: #d4af6a;
    --bs-btn-hover-color: #0a1628;
    --bs-btn-hover-bg: #d4af6a;
    --bs-btn-hover-border-color: #d4af6a;
}

.btn-warning {
    --bs-btn-color: #0a1628;
    --bs-btn-bg: #d4af6a;
    --bs-btn-border-color: #d4af6a;
    --bs-btn-hover-color: #0a1628;
    --bs-btn-hover-bg: #f0e4c4;
    --bs-btn-hover-border-color: #f0e4c4;
}

.form-control, .form-select {
    --bs-body-bg: #ffffff;
    border-color: rgba(184, 150, 62, 0.35);
}

.form-control:focus, .form-select:focus {
    border-color: #b8963e;
    box-shadow: 0 0 0 0.25rem rgba(184, 150, 62, 0.25);
}

.list-group-item {
    --bs-list-group-bg: transparent;
    --bs-list-group-border-color: rgba(184, 150, 62, 0.2);
}

.badge.text-bg-primary {
    background-color: #b8963e !important;
    color: #0a1628 !important;
}

.navbar.bg-dark {
    border-bottom: 2px solid var(--gold);
}

.navbar-dark .navbar-brand,
.navbar-dark .nav-link {
    color: rgba(255, 255, 255, 0.9);
    text-decoration: none;
}

.navbar-dark .nav-link:hover,
.navbar-dark .nav-link:focus {
    color: var(--gold-light);
    text-decoration: none;
}

/* Top contact bar + footer chrome links */
.bg-dark a.link-warning,
.bg-dark a.link-light,
footer a {
    text-decoration: none !important;
}

.bg-dark a.link-warning:hover,
.bg-dark a.link-light:hover,
footer a:hover {
    text-decoration: underline !important;
    text-underline-offset: 0.2em;
}

.card {
    --bs-card-border-color: rgba(184, 150, 62, 0.25);
    --bs-card-bg: #ffffff;
}

.text-gold { color: var(--gold) !important; }
.text-gold-light { color: var(--gold-light) !important; }
.bg-cream { background-color: var(--cream) !important; }
.bg-parchment { background-color: var(--parchment) !important; }
.border-gold { border-color: var(--gold) !important; }

.site-hero {
    min-height: 78vh;
    background-color: var(--navy);
    background-size: cover;
    background-position: center;
    position: relative;
}

.site-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(120deg, rgba(10, 22, 40, 0.92) 0%, rgba(10, 22, 40, 0.72) 55%, rgba(17, 32, 64, 0.55) 100%);
}

.site-hero > .container {
    position: relative;
    z-index: 1;
}

.site-section-label {
    color: var(--gold);
    font-family: "Cinzel", serif;
    font-size: 0.75rem;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    margin-bottom: 0.5rem;
}

.site-quote {
    border-left: 3px solid var(--gold);
    padding-left: 1rem;
    font-family: "Cormorant Garamond", serif;
    font-style: italic;
    color: var(--stone);
}

.gallery-tile {
    aspect-ratio: 4 / 3;
    object-fit: cover;
}

.object-fit-cover {
    object-fit: cover;
}
