:root {
  --brand-primary: #F6BE43;
  --brand-primary-rgb: 246, 190, 67;
  --brand-primary-hover: #D4A33A;
  --brand-primary-soft: #342708;
  --brand-primary-contrast: #111111;
  --brand-secondary: #B7C9D7;
  --brand-secondary-rgb: 183, 201, 215;
  --brand-secondary-hover: #9DADB9;
  --brand-secondary-soft: #2D281A;
  --brand-secondary-contrast: #111111;
  --brand-accent: #7D4A00;
  --brand-accent-rgb: 125, 74, 0;
  --brand-accent-hover: #6C4000;
  --brand-accent-soft: #261900;
  --brand-accent-contrast: #FFFFFF;
  --brand-body-bg: #1A1200;
  --brand-section-bg: #1A1200;
  --brand-section-alt-bg: #271E0B;
  --brand-card-bg: #433D2E;
  --brand-card-border: #342B16;
  --brand-navbar-bg: #2C2514;
  --brand-footer-bg: #181100;
  --brand-body-text: #F3E1B9;
  --brand-heading-text: #FFF4D2;
  --brand-muted-text: #D6C49B;
  --brand-light-text: #FFFFFF;
  --brand-link: #F6BE43;
  --brand-link-hover: #D4A33A;
  --font-body: Manrope, system-ui, sans-serif;
  --font-heading: Noto Serif, Georgia, serif;
  --brand-heading-weight: 700;
  --brand-h1-size: clamp(2.5rem, 5vw, 4.5rem);
  --brand-h2-size: clamp(2rem, 4vw, 3.5rem);
  --brand-h3-size: clamp(1.5rem, 3vw, 2.25rem);
  --brand-lead-size: 1.25rem;
  --brand-small-size: 0.875rem;
  --brand-line-height-heading: 1.15;
  --brand-line-height-body: 1.7;
  --brand-button-primary-bg: #F6BE43;
  --brand-button-primary-text: #111111;
  --brand-button-primary-border: #F6BE43;
  --brand-button-primary-hover-bg: #D4A33A;
  --brand-button-primary-hover-text: #111111;
  --brand-button-primary-hover-border: #D4A33A;
  --brand-button-secondary-bg: #B7C9D7;
  --brand-button-secondary-text: #111111;
  --brand-button-secondary-border: #B7C9D7;
  --brand-button-secondary-hover-bg: #9DADB9;
  --brand-button-secondary-hover-text: #111111;
  --brand-button-secondary-hover-border: #9DADB9;
  --brand-button-accent-bg: #7D4A00;
  --brand-button-accent-text: #FFFFFF;
  --brand-button-accent-border: #7D4A00;
  --brand-button-accent-hover-bg: #6C4000;
  --brand-button-accent-hover-text: #FFFFFF;
  --brand-button-accent-hover-border: #6C4000;
  --brand-button-radius: 999px;
  --brand-button-padding-x: 1.5rem;
  --brand-button-padding-y: 0.75rem;
  --brand-button-font-weight: 600;
  --brand-card-radius: 0.75rem;
  --brand-card-shadow: 0 2px 8px rgba(0,0,0,0.06);
  --brand-input-bg: #FFFFFF;
  --brand-input-text: #F3E1B9;
  --brand-input-border: #413721;
  --brand-input-focus-border: #F6BE43;
  --brand-input-radius: 0.5rem;
  --brand-navbar-text: #FFF4D2;
  --brand-navbar-link: #F3E1B9;
  --brand-navbar-link-hover: #F6BE43;
  --brand-footer-text: #FFFFFF;
  --brand-footer-muted: #D1D5DB;
  --brand-footer-link: #F6BE43;
  --brand-footer-link-hover: #FFFFFF;
  --brand-radius-sm: 0.25rem;
  --brand-radius-md: 0.5rem;
  --brand-radius-lg: 0.75rem;
  --brand-radius-xl: 1rem;
  --brand-radius-pill: 999px;
  --brand-shadow-sm: 0 2px 8px rgba(0,0,0,0.06);
  --brand-shadow-md: 0 8px 24px rgba(0,0,0,0.08);
  --brand-shadow-lg: 0 16px 40px rgba(0,0,0,0.12);
  --bs-primary: var(--brand-primary);
  --bs-primary-rgb: var(--brand-primary-rgb);
  --bs-secondary: var(--brand-secondary);
  --bs-secondary-rgb: var(--brand-secondary-rgb);
  --bs-body-bg: var(--brand-body-bg);
  --bs-body-color: var(--brand-body-text);
  --bs-link-color: var(--brand-link);
  --bs-link-hover-color: var(--brand-link-hover);
  --bs-border-color: var(--brand-card-border);
  --bs-secondary-color: var(--brand-muted-text);
  --bs-secondary-bg: var(--brand-section-alt-bg);
  --bs-tertiary-bg: var(--brand-card-bg);
  --bs-body-font-family: var(--font-body);
}

html { background: var(--brand-body-bg); }
body { min-height: 100vh; background-color: var(--brand-body-bg); color: var(--brand-body-text); font-family: var(--font-body); -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
a { color: var(--brand-link); }
a:hover, a:focus { color: var(--brand-link-hover); }
.text-brand-primary { color: var(--brand-primary) !important; }
.text-brand-secondary { color: var(--brand-secondary) !important; }
.text-brand-accent { color: var(--brand-accent) !important; }
.text-brand-body { color: var(--brand-body-text) !important; }
.text-brand-heading { color: var(--brand-heading-text) !important; }
.text-brand-muted { color: var(--brand-muted-text) !important; }
.text-brand-light { color: var(--brand-light-text) !important; }
.text-brand-inverse { color: var(--brand-light-text) !important; }
.bg-brand-primary { background-color: var(--brand-primary) !important; }
.bg-brand-secondary { background-color: var(--brand-secondary) !important; }
.bg-brand-accent { background-color: var(--brand-accent) !important; }
.bg-brand-primary-soft { background-color: var(--brand-primary-soft) !important; }
.bg-brand-secondary-soft { background-color: var(--brand-secondary-soft) !important; }
.bg-brand-accent-soft { background-color: var(--brand-accent-soft) !important; }
.bg-brand-body { background-color: var(--brand-body-bg) !important; }
.bg-brand-section { background-color: var(--brand-section-bg) !important; }
.bg-brand-section-alt { background-color: var(--brand-section-alt-bg) !important; }
.bg-brand-card { background-color: var(--brand-card-bg) !important; }
.bg-brand-navbar { background-color: var(--brand-navbar-bg) !important; }
.bg-brand-footer { background-color: var(--brand-footer-bg) !important; }
.border-brand-primary { border-color: var(--brand-primary) !important; }
.border-brand-secondary { border-color: var(--brand-secondary) !important; }
.border-brand-accent { border-color: var(--brand-accent) !important; }
.border-brand-muted { border-color: var(--brand-muted-text) !important; }
.border-brand-light { border-color: var(--brand-card-border) !important; }
.font-brand-body { font-family: var(--font-body) !important; }
.font-brand-heading { font-family: var(--font-heading) !important; }
h1, h2, h3, h4, h5, h6, .heading-brand-xl, .heading-brand-lg, .heading-brand-md, .heading-brand-sm { color: var(--brand-heading-text); font-family: var(--font-heading); letter-spacing: 0; }
.heading-brand-xl { font-size: var(--brand-h1-size); line-height: var(--brand-line-height-heading); font-weight: var(--brand-heading-weight); }
.heading-brand-lg { font-size: var(--brand-h2-size); line-height: var(--brand-line-height-heading); font-weight: var(--brand-heading-weight); }
.heading-brand-md { font-size: var(--brand-h3-size); line-height: var(--brand-line-height-heading); font-weight: var(--brand-heading-weight); }
.heading-brand-sm { font-size: 1.25rem; line-height: var(--brand-line-height-heading); font-weight: var(--brand-heading-weight); }
.text-brand-lead { font-size: var(--brand-lead-size); line-height: var(--brand-line-height-body); }
.text-brand-small { font-size: var(--brand-small-size); }
.eyebrow-brand { font-family: var(--font-heading); font-size: .75rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.btn-brand-primary, .btn-brand-secondary, .btn-brand-accent, .btn-brand-outline-primary, .btn-brand-outline-secondary, .btn-brand-outline-accent { border-radius: var(--brand-button-radius); padding: var(--brand-button-padding-y) var(--brand-button-padding-x); font-weight: var(--brand-button-font-weight); }
.btn-brand-primary { --bs-btn-color: var(--brand-button-primary-text); --bs-btn-bg: var(--brand-button-primary-bg); --bs-btn-border-color: var(--brand-button-primary-border); --bs-btn-hover-color: var(--brand-button-primary-hover-text); --bs-btn-hover-bg: var(--brand-button-primary-hover-bg); --bs-btn-hover-border-color: var(--brand-button-primary-hover-border); --bs-btn-active-color: var(--brand-button-primary-hover-text); --bs-btn-active-bg: var(--brand-button-primary-hover-bg); --bs-btn-active-border-color: var(--brand-button-primary-hover-border); background-color: var(--bs-btn-bg); border-color: var(--bs-btn-border-color); color: var(--bs-btn-color); }
.btn-brand-primary:hover, .btn-brand-primary:focus { background-color: var(--brand-button-primary-hover-bg); border-color: var(--brand-button-primary-hover-border); color: var(--brand-button-primary-hover-text); }
.btn-brand-secondary { --bs-btn-color: var(--brand-button-secondary-text); --bs-btn-bg: var(--brand-button-secondary-bg); --bs-btn-border-color: var(--brand-button-secondary-border); --bs-btn-hover-color: var(--brand-button-secondary-hover-text); --bs-btn-hover-bg: var(--brand-button-secondary-hover-bg); --bs-btn-hover-border-color: var(--brand-button-secondary-hover-border); --bs-btn-active-color: var(--brand-button-secondary-hover-text); --bs-btn-active-bg: var(--brand-button-secondary-hover-bg); --bs-btn-active-border-color: var(--brand-button-secondary-hover-border); background-color: var(--bs-btn-bg); border-color: var(--bs-btn-border-color); color: var(--bs-btn-color); }
.btn-brand-secondary:hover, .btn-brand-secondary:focus { background-color: var(--brand-button-secondary-hover-bg); border-color: var(--brand-button-secondary-hover-border); color: var(--brand-button-secondary-hover-text); }
.btn-brand-accent { --bs-btn-color: var(--brand-button-accent-text); --bs-btn-bg: var(--brand-button-accent-bg); --bs-btn-border-color: var(--brand-button-accent-border); --bs-btn-hover-color: var(--brand-button-accent-hover-text); --bs-btn-hover-bg: var(--brand-button-accent-hover-bg); --bs-btn-hover-border-color: var(--brand-button-accent-hover-border); --bs-btn-active-color: var(--brand-button-accent-hover-text); --bs-btn-active-bg: var(--brand-button-accent-hover-bg); --bs-btn-active-border-color: var(--brand-button-accent-hover-border); background-color: var(--bs-btn-bg); border-color: var(--bs-btn-border-color); color: var(--bs-btn-color); }
.btn-brand-accent:hover, .btn-brand-accent:focus { background-color: var(--brand-button-accent-hover-bg); border-color: var(--brand-button-accent-hover-border); color: var(--brand-button-accent-hover-text); }
.btn-brand-outline-primary { --bs-btn-color: var(--brand-primary); --bs-btn-bg: transparent; --bs-btn-border-color: var(--brand-primary); --bs-btn-hover-color: var(--brand-primary-contrast); --bs-btn-hover-bg: var(--brand-primary); --bs-btn-hover-border-color: var(--brand-primary); --bs-btn-active-color: var(--brand-primary-contrast); --bs-btn-active-bg: var(--brand-primary); --bs-btn-active-border-color: var(--brand-primary); background-color: var(--bs-btn-bg); border-color: var(--bs-btn-border-color); color: var(--bs-btn-color); }
.btn-brand-outline-primary:hover, .btn-brand-outline-primary:focus { background-color: var(--brand-primary); border-color: var(--brand-primary); color: var(--brand-primary-contrast); }
.btn-brand-outline-secondary { --bs-btn-color: var(--brand-secondary); --bs-btn-bg: transparent; --bs-btn-border-color: var(--brand-secondary); --bs-btn-hover-color: var(--brand-secondary-contrast); --bs-btn-hover-bg: var(--brand-secondary); --bs-btn-hover-border-color: var(--brand-secondary); --bs-btn-active-color: var(--brand-secondary-contrast); --bs-btn-active-bg: var(--brand-secondary); --bs-btn-active-border-color: var(--brand-secondary); background-color: var(--bs-btn-bg); border-color: var(--bs-btn-border-color); color: var(--bs-btn-color); }
.btn-brand-outline-secondary:hover, .btn-brand-outline-secondary:focus { background-color: var(--brand-secondary); border-color: var(--brand-secondary); color: var(--brand-secondary-contrast); }
.btn-brand-outline-accent { --bs-btn-color: var(--brand-accent); --bs-btn-bg: transparent; --bs-btn-border-color: var(--brand-accent); --bs-btn-hover-color: var(--brand-accent-contrast); --bs-btn-hover-bg: var(--brand-accent); --bs-btn-hover-border-color: var(--brand-accent); --bs-btn-active-color: var(--brand-accent-contrast); --bs-btn-active-bg: var(--brand-accent); --bs-btn-active-border-color: var(--brand-accent); background-color: var(--bs-btn-bg); border-color: var(--bs-btn-border-color); color: var(--bs-btn-color); }
.btn-brand-outline-accent:hover, .btn-brand-outline-accent:focus { background-color: var(--brand-accent); border-color: var(--brand-accent); color: var(--brand-accent-contrast); }
.radius-brand-sm { border-radius: var(--brand-radius-sm) !important; }
.radius-brand-md { border-radius: var(--brand-radius-md) !important; }
.radius-brand-lg { border-radius: var(--brand-radius-lg) !important; }
.radius-brand-xl { border-radius: var(--brand-radius-xl) !important; }
.radius-brand-pill { border-radius: var(--brand-radius-pill) !important; }
.shadow-brand-sm { box-shadow: var(--brand-shadow-sm) !important; }
.shadow-brand-md { box-shadow: var(--brand-shadow-md) !important; }
.shadow-brand-lg { box-shadow: var(--brand-shadow-lg) !important; }
.section-brand { background-color: var(--brand-section-bg); color: var(--brand-body-text); }
.section-brand-alt { background-color: var(--brand-section-alt-bg); color: var(--brand-body-text); }
.card-brand { background-color: var(--brand-card-bg); color: var(--brand-body-text); border: 1px solid var(--brand-card-border); border-radius: var(--brand-card-radius); box-shadow: var(--brand-card-shadow); }
.card-brand-soft { background-color: var(--brand-section-alt-bg); color: var(--brand-body-text); border-radius: var(--brand-card-radius); }
.card-brand-bordered { background-color: var(--brand-card-bg); border: 1px solid var(--brand-card-border); border-radius: var(--brand-card-radius); }
.section-brand .table, .section-brand-alt .table, .card-brand .table, .card-brand-soft .table, .card-brand-bordered .table { --bs-table-color: var(--brand-body-text); --bs-table-bg: transparent; --bs-table-border-color: var(--brand-card-border); --bs-table-striped-color: var(--brand-body-text); --bs-table-striped-bg: var(--brand-section-alt-bg); --bs-table-hover-color: var(--brand-body-text); --bs-table-hover-bg: var(--brand-primary-soft); color: var(--brand-body-text); border-color: var(--brand-card-border); }
.section-brand .table > :not(caption) > * > *, .section-brand-alt .table > :not(caption) > * > *, .card-brand .table > :not(caption) > * > *, .card-brand-soft .table > :not(caption) > * > *, .card-brand-bordered .table > :not(caption) > * > * { color: var(--bs-table-color); background-color: var(--bs-table-bg); border-color: var(--bs-table-border-color); }
.section-brand .table-light, .section-brand-alt .table-light, .card-brand .table-light, .card-brand-soft .table-light, .card-brand-bordered .table-light { --bs-table-color: var(--brand-primary); --bs-table-bg: var(--brand-primary-soft); --bs-table-border-color: var(--brand-card-border); color: var(--brand-primary); }
.toast-brand { background-color: var(--brand-card-bg); color: var(--brand-body-text); border: 1px solid var(--brand-card-border); border-radius: var(--brand-card-radius); box-shadow: var(--brand-shadow-md); }
.toast-brand-success { background-color: var(--brand-primary-soft); color: var(--brand-heading-text); border-color: var(--brand-primary); }
.toast-brand-error { background-color: var(--brand-accent-soft); color: var(--brand-heading-text); border-color: var(--brand-accent); }
.navbar-brand-style { background-color: var(--brand-navbar-bg); color: var(--brand-navbar-text); }
.navbar-brand-style .nav-link { color: var(--brand-navbar-link); font-weight: 600; }
.navbar-brand-style .nav-link:hover, .navbar-brand-style .nav-link:focus, .navbar-brand-style .nav-link.active { color: var(--brand-navbar-link-hover) !important; }
.navbar-brand-style .dropdown-menu, .section-brand .dropdown-menu, .section-brand-alt .dropdown-menu { background-color: var(--brand-card-bg); border-color: var(--brand-card-border); box-shadow: var(--brand-card-shadow); }
.navbar-brand-style .dropdown-item, .section-brand .dropdown-item, .section-brand-alt .dropdown-item { color: var(--brand-body-text); }
.navbar-brand-style .dropdown-item:hover, .navbar-brand-style .dropdown-item:focus, .section-brand .dropdown-item:hover, .section-brand .dropdown-item:focus, .section-brand-alt .dropdown-item:hover, .section-brand-alt .dropdown-item:focus { background-color: var(--brand-section-alt-bg); color: var(--brand-primary); }
.navbar-brand-style .dropdown-item.active, .navbar-brand-style .dropdown-item:active, .section-brand .dropdown-item.active, .section-brand .dropdown-item:active, .section-brand-alt .dropdown-item.active, .section-brand-alt .dropdown-item:active { background-color: var(--brand-primary); color: var(--brand-primary-contrast); }
@media (hover:hover) and (pointer:fine) { .sw-hover-dropdown:hover > .dropdown-menu, .sw-hover-dropdown:focus-within > .dropdown-menu { display: block; margin-top: 0; } }
.footer-brand-style { background-color: var(--brand-footer-bg); color: var(--brand-footer-text); }
.footer-brand-style h1, .footer-brand-style h2, .footer-brand-style h3, .footer-brand-style h4, .footer-brand-style h5, .footer-brand-style h6 { color: var(--brand-footer-text); }
.footer-brand-style .text-brand-muted { color: var(--brand-footer-muted) !important; }
.footer-brand-style .text-brand-body, .footer-brand-style .text-brand-primary, .footer-brand-style .text-brand-secondary { color: var(--brand-footer-link) !important; }
.footer-brand-style a:not(.btn) { color: var(--brand-footer-link) !important; text-decoration-color: color-mix(in srgb, var(--brand-footer-link) 70%, transparent); text-underline-offset: .18em; }
.footer-brand-style a:not(.btn):hover, .footer-brand-style a:not(.btn):focus { color: var(--brand-footer-link-hover) !important; text-decoration-color: currentColor; }
.footer-brand-style .card-brand, .footer-brand-style .card-brand-soft, .footer-brand-style .card-brand-bordered { color: var(--brand-body-text); }
.footer-brand-style .card-brand h1, .footer-brand-style .card-brand h2, .footer-brand-style .card-brand h3, .footer-brand-style .card-brand h4, .footer-brand-style .card-brand h5, .footer-brand-style .card-brand h6,
.footer-brand-style .card-brand-soft h1, .footer-brand-style .card-brand-soft h2, .footer-brand-style .card-brand-soft h3, .footer-brand-style .card-brand-soft h4, .footer-brand-style .card-brand-soft h5, .footer-brand-style .card-brand-soft h6,
.footer-brand-style .card-brand-bordered h1, .footer-brand-style .card-brand-bordered h2, .footer-brand-style .card-brand-bordered h3, .footer-brand-style .card-brand-bordered h4, .footer-brand-style .card-brand-bordered h5, .footer-brand-style .card-brand-bordered h6 { color: var(--brand-heading-text); }
.footer-brand-style .card-brand .text-brand-muted, .footer-brand-style .card-brand-soft .text-brand-muted, .footer-brand-style .card-brand-bordered .text-brand-muted { color: var(--brand-muted-text) !important; }
.footer-brand-style .card-brand .text-brand-body, .footer-brand-style .card-brand-soft .text-brand-body, .footer-brand-style .card-brand-bordered .text-brand-body { color: var(--brand-body-text) !important; }
.footer-brand-style .card-brand .text-brand-primary, .footer-brand-style .card-brand-soft .text-brand-primary, .footer-brand-style .card-brand-bordered .text-brand-primary { color: var(--brand-primary) !important; }
.footer-brand-style .card-brand .text-brand-secondary, .footer-brand-style .card-brand-soft .text-brand-secondary, .footer-brand-style .card-brand-bordered .text-brand-secondary { color: var(--brand-secondary) !important; }
.footer-brand-style .card-brand a:not(.btn), .footer-brand-style .card-brand-soft a:not(.btn), .footer-brand-style .card-brand-bordered a:not(.btn) { color: var(--brand-link) !important; }
.footer-brand-style .card-brand a:not(.btn):hover, .footer-brand-style .card-brand a:not(.btn):focus,
.footer-brand-style .card-brand-soft a:not(.btn):hover, .footer-brand-style .card-brand-soft a:not(.btn):focus,
.footer-brand-style .card-brand-bordered a:not(.btn):hover, .footer-brand-style .card-brand-bordered a:not(.btn):focus { color: var(--brand-link-hover) !important; }
.form-control-brand, .form-select.form-control-brand { background-color: var(--brand-input-bg); color: var(--brand-input-text); border-color: var(--brand-input-border); border-radius: var(--brand-input-radius); }
.form-control-brand:focus, .form-select.form-control-brand:focus { border-color: var(--brand-input-focus-border); box-shadow: 0 0 0 .25rem rgba(13,110,253,.18); }
.brand-focus:focus-visible, .btn:focus-visible, a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline: 3px solid var(--brand-accent); outline-offset: 3px; }
.brand-object-fit { width: 100%; height: 100%; object-fit: cover; }
.brand-card-lift { transition: transform 180ms ease, box-shadow 180ms ease; }
.brand-card-lift:hover { transform: translateY(-3px); box-shadow: var(--brand-shadow-md); }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; scroll-behavior: auto !important; transition-duration: .01ms !important; } .gn-ticker-track { animation-duration: var(--gn-ticker-duration, 22s) !important; animation-iteration-count: infinite !important; } }
