/* Retro Medical Modern Theme
 * Inspired by Swiss International Typographic Style + 1960s-70s NYC design agencies
 * Massimo Vignelli, Pentagram, Josef Muller-Brockmann
 * Warm medical palette: rust orange, burnt sienna, terracotta
 * European rationalism humanized through warm color and confident scale
 */

/* Typography: Inter (modern Helvetica successor) + Source Serif 4 (rational serif) */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Source+Serif+4:opsz,wght@8..60,400;8..60,600&display=swap');

/* ==========================================================================
   1. ROOT VARIABLES - Bootstrap 5.3+ CSS Custom Properties
   ========================================================================== */

:root {
  /* === COLOR PALETTE === */
  /* Warm medical retro - not cold clinical */

  /* Primary: Rust Orange - 1970s NYC public health poster pigment */
  --bs-primary: #C2552D;
  --bs-primary-rgb: 194, 85, 45;

  /* Secondary: Charcoal - warm ink black */
  --bs-secondary: #4A4A4A;
  --bs-secondary-rgb: 74, 74, 74;

  /* Success: 1970s institutional green */
  --bs-success: #2D6A4F;
  --bs-success-rgb: 45, 106, 79;

  /* Info: Deep navy - Vignelli secondary */
  --bs-info: #264653;
  --bs-info-rgb: 38, 70, 83;

  /* Warning: Burnt sienna */
  --bs-warning: #A0522D;
  --bs-warning-rgb: 160, 82, 45;

  /* Danger: 1960s EXIT sign brick red */
  --bs-danger: #9B2335;
  --bs-danger-rgb: 155, 35, 53;

  /* Light: Terracotta light / kraft paper */
  --bs-light: #F0E6DA;
  --bs-light-rgb: 240, 230, 218;

  /* Dark: Ink black (not pure black - Vignelli never used #000) */
  --bs-dark: #1A1A1A;
  --bs-dark-rgb: 26, 26, 26;

  /* Body */
  --bs-body-color: #1A1A1A;
  --bs-body-color-rgb: 26, 26, 26;
  --bs-body-bg: #FAF7F2;
  --bs-body-bg-rgb: 250, 247, 242;

  /* Headings */
  --bs-heading-color: #1A1A1A;
  --bs-heading-color-rgb: 26, 26, 26;

  /* Custom palette extensions */
  --retro-rust: #C2552D;
  --retro-rust-rgb: 194, 85, 45;
  --retro-sienna: #A0522D;
  --retro-sienna-rgb: 160, 82, 45;
  --retro-cream: #FAF7F2;
  --retro-cream-rgb: 250, 247, 242;
  --retro-sand: #F0E6DA;
  --retro-sand-rgb: 240, 230, 218;
  --retro-charcoal: #4A4A4A;
  --retro-warm-gray: #D4D0CB;
  --retro-ink: #1A1A1A;

  /* === TYPOGRAPHY === */
  /* Headers: Inter - modern successor to Helvetica's Swiss role */
  --bs-heading-font-family: 'Inter', -apple-system, 'Helvetica Neue', Arial, sans-serif;

  /* Body: Source Serif 4 - rational serif, Pentagram formula */
  --bs-body-font-family: 'Source Serif 4', Georgia, 'Times New Roman', serif;
  --bs-body-font-size: 1rem;
  --bs-body-font-weight: 400;
  --bs-body-line-height: 1.65;

  /* === BORDERS === */
  /* Sharp corners: non-negotiable for Swiss style */
  --bs-border-color: #D4D0CB;
  --bs-border-color-rgb: 212, 208, 203;
  --bs-border-width: 1px;
  --bs-border-radius: 0;
  --bs-border-radius-sm: 0;
  --bs-border-radius-lg: 0;
  --bs-border-radius-xl: 0;
  --bs-border-radius-xxl: 0;
  --bs-border-radius-2xl: 0;
  --bs-border-radius-pill: 0;

  /* === NO SHADOWS === */
  /* Swiss design uses rules for depth, not shadows */
  --bs-box-shadow: none;
  --bs-box-shadow-sm: none;
  --bs-box-shadow-lg: none;
  --bs-box-shadow-inset: none;

  /* === LINKS === */
  --bs-link-color: #C2552D;
  --bs-link-hover-color: #A0522D;
  --bs-link-decoration: none;

  /* === FOCUS === */
  --bs-focus-ring-width: 2px;
  --bs-focus-ring-color: rgba(194, 85, 45, 0.3);
}


/* ==========================================================================
   2. GLOBAL RESETS
   ========================================================================== */

/* Kill all shadows. This single change is the most impactful for Swiss look. */
* {
  box-shadow: none !important;
}

/* Re-add for focus accessibility only */
*:focus-visible {
  outline: 2px solid var(--retro-rust) !important;
  outline-offset: 2px !important;
}

body {
  font-family: var(--bs-body-font-family);
  background-color: var(--bs-body-bg);
  color: var(--bs-body-color);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}


/* ==========================================================================
   3. TYPOGRAPHY - Swiss Precision
   ========================================================================== */

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  font-family: var(--bs-heading-font-family);
  color: var(--bs-heading-color);
  margin-bottom: 0.75rem;
}

/* Large headings: bold, tight tracking (Vignelli technique) */
h1, .h1 {
  font-size: 2.75rem;
  font-weight: 700;
  letter-spacing: -0.03em;
  line-height: 1.08;
}

h2, .h2 {
  font-size: 2rem;
  font-weight: 700;
  letter-spacing: -0.02em;
  line-height: 1.12;
}

h3, .h3 {
  font-size: 1.5rem;
  font-weight: 600;
  letter-spacing: -0.01em;
  line-height: 1.2;
}

h4, .h4 {
  font-size: 1.125rem;
  font-weight: 600;
  letter-spacing: 0;
  line-height: 1.3;
}

/* h5/h6 become uppercase tracked labels - this is how Swiss design works */
h5, .h5 {
  font-size: 0.875rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  line-height: 1.4;
}

h6, .h6 {
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  line-height: 1.5;
}

/* Display classes - even larger, even tighter */
.display-1, .display-2, .display-3, .display-4 {
  font-family: var(--bs-heading-font-family);
  font-weight: 700;
  letter-spacing: -0.04em;
  line-height: 1.05;
}

.display-4 {
  font-size: 3rem;
}

/* Paragraphs */
p {
  margin-bottom: 0.75rem;
}

/* Lead text uses sans-serif for contrast */
.lead {
  font-family: var(--bs-heading-font-family);
  font-weight: 400;
  font-size: 1.125rem;
  line-height: 1.5;
  letter-spacing: -0.01em;
}

/* Small/muted text */
.text-muted {
  color: var(--retro-charcoal) !important;
}

.small, small {
  font-size: 0.875rem;
}


/* ==========================================================================
   4. NAVIGATION - Wayfinding System
   ========================================================================== */

.navbar {
  background-color: #FFFFFF !important;
  border-bottom: 3px solid var(--retro-ink);
  padding: 0;
  border-radius: 0;
}

.navbar-brand {
  font-family: var(--bs-heading-font-family);
  font-weight: 700;
  font-size: 1.125rem;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: var(--retro-ink) !important;
  padding: 1rem 1.5rem;
  border-right: 1px solid var(--retro-warm-gray);
  margin-right: 0;
}

.navbar-nav .nav-link {
  font-family: var(--bs-heading-font-family);
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--retro-charcoal) !important;
  padding: 1rem 1.25rem !important;
  border-bottom: 3px solid transparent;
  margin-bottom: -3px;
  transition: color 0.15s ease, border-color 0.15s ease;
}

.navbar-nav .nav-link:hover,
.navbar-nav .nav-link.active {
  color: var(--retro-rust) !important;
  border-bottom-color: var(--retro-rust);
}

.navbar-toggler {
  border: 2px solid var(--retro-ink);
  border-radius: 0;
  padding: 0.5rem 0.75rem;
}

/* Dropdown menus */
.dropdown-menu {
  border: 1px solid var(--retro-warm-gray);
  border-radius: 0;
  padding: 0;
  margin-top: 0;
}

.dropdown-item {
  font-family: var(--bs-heading-font-family);
  font-size: 0.8125rem;
  padding: 0.625rem 1.25rem;
  letter-spacing: 0.02em;
}

.dropdown-item:hover,
.dropdown-item:focus {
  background-color: var(--retro-sand);
  color: var(--retro-rust);
}


/* ==========================================================================
   5. CARDS - Poster Panel Approach
   ========================================================================== */

.card {
  background: #FFFFFF;
  border: 1px solid var(--retro-warm-gray);
  border-radius: 0;
  transition: border-color 0.2s ease;
  /* No shadows. No gradients. No rounded corners. */
}

.card:hover {
  border-color: var(--retro-rust);
  transform: none;
  /* Swiss design does not float. */
}

.card-header {
  font-family: var(--bs-heading-font-family);
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  background-color: var(--retro-sand);
  border-bottom: 1px solid var(--retro-warm-gray);
  border-radius: 0;
  padding: 0.75rem 1rem;
}

.card-body {
  padding: 1.25rem;
}

.card-title {
  font-family: var(--bs-heading-font-family);
  font-weight: 600;
  letter-spacing: -0.01em;
}

.card-title a {
  color: var(--retro-ink);
  text-decoration: none;
}

.card-title a:hover {
  color: var(--retro-rust);
}


/* ==========================================================================
   6. PRACTICE CARDS - Directory Entries
   ========================================================================== */

.practice-card {
  border: 1px solid var(--retro-warm-gray);
  border-radius: 0;
  position: relative;
  transition: border-color 0.2s ease;
}

/* Rust accent bar on top - Swiss poster "color bar" motif */
.practice-card::before {
  content: '';
  display: block;
  height: 3px;
  background: var(--retro-rust);
}

.practice-card:hover {
  border-color: var(--retro-rust);
  transform: none;
}

/* Left accent that reveals on hover */
.practice-card::after {
  content: '';
  position: absolute;
  top: 3px; /* below the top bar */
  left: 0;
  width: 3px;
  height: calc(100% - 3px);
  background: var(--retro-rust);
  transform: scaleY(0);
  transform-origin: top;
  transition: transform 0.25s ease;
}

.practice-card:hover::after {
  transform: scaleY(1);
}


/* ==========================================================================
   7. BUTTONS - "Stamp" Aesthetic
   ========================================================================== */

.btn {
  font-family: var(--bs-heading-font-family);
  font-weight: 600;
  font-size: 0.8125rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border-radius: 0;
  padding: 0.625rem 1.5rem;
  border-width: 2px;
  transition: background-color 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}

/* No hover lift. Period. */
.btn:hover {
  transform: none;
}

.btn-sm {
  font-size: 0.6875rem;
  padding: 0.375rem 1rem;
  letter-spacing: 0.06em;
}

.btn-lg {
  font-size: 0.875rem;
  padding: 0.75rem 2rem;
}

.btn-primary {
  background-color: var(--retro-rust);
  border-color: var(--retro-rust);
  color: #FFFFFF;
}

.btn-primary:hover,
.btn-primary:focus {
  background-color: var(--retro-sienna);
  border-color: var(--retro-sienna);
  color: #FFFFFF;
}

.btn-outline-primary {
  background-color: transparent;
  border-color: var(--retro-rust);
  color: var(--retro-rust);
}

.btn-outline-primary:hover,
.btn-outline-primary:focus {
  background-color: var(--retro-rust);
  border-color: var(--retro-rust);
  color: #FFFFFF;
}

.btn-secondary {
  background-color: var(--retro-ink);
  border-color: var(--retro-ink);
  color: #FFFFFF;
}

.btn-secondary:hover {
  background-color: var(--retro-charcoal);
  border-color: var(--retro-charcoal);
}

.btn-link {
  color: var(--retro-rust);
  text-decoration: none;
  letter-spacing: normal;
  text-transform: none;
  font-weight: 500;
  padding: 0;
  border: none;
}

.btn-link:hover {
  color: var(--retro-sienna);
  text-decoration: underline;
}


/* ==========================================================================
   8. BADGES - Category Label Treatment
   ========================================================================== */

.badge {
  font-family: var(--bs-heading-font-family);
  font-weight: 600;
  font-size: 0.6875rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border-radius: 0;
  padding: 0.375em 0.75em;
}

/* Outlined badges instead of filled - more refined */
.badge.bg-success {
  background-color: transparent !important;
  color: var(--bs-success) !important;
  border: 1px solid var(--bs-success);
}

.badge.bg-info {
  background-color: transparent !important;
  color: var(--bs-info) !important;
  border: 1px solid var(--bs-info);
}

.badge.bg-secondary {
  background-color: transparent !important;
  color: var(--retro-charcoal) !important;
  border: 1px solid var(--retro-warm-gray);
}

.badge.bg-primary {
  background-color: transparent !important;
  color: var(--retro-rust) !important;
  border: 1px solid var(--retro-rust);
}

.badge.bg-light {
  background-color: transparent !important;
  color: var(--retro-charcoal) !important;
  border: 1px solid var(--retro-warm-gray);
}


/* ==========================================================================
   9. FORMS - Blueprint Precision
   ========================================================================== */

.form-control,
.form-select {
  font-family: var(--bs-heading-font-family);
  font-size: 0.9375rem;
  border-radius: 0;
  border: 2px solid var(--retro-warm-gray);
  padding: 0.75rem 1rem;
  background-color: #FFFFFF;
  transition: border-color 0.15s ease;
}

.form-control:focus,
.form-select:focus {
  border-color: var(--retro-rust);
  box-shadow: none !important;
  outline: 2px solid rgba(194, 85, 45, 0.2);
  outline-offset: 2px;
}

.form-control-lg,
.form-select-lg {
  font-size: 1rem;
  padding: 0.875rem 1.25rem;
}

.form-label {
  font-family: var(--bs-heading-font-family);
  font-size: 0.6875rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--retro-charcoal);
  margin-bottom: 0.375rem;
}

.form-text {
  font-size: 0.75rem;
  color: var(--retro-charcoal);
}


/* ==========================================================================
   10. SECTION STYLES - Architectural Zones
   ========================================================================== */

/* Hero section */
.hero-section {
  background-color: var(--retro-cream);
  padding: 0;
  border-bottom: 1px solid var(--retro-warm-gray);
}

/* Data bar - dark strip for stats */
.data-bar {
  background-color: var(--retro-ink);
  color: var(--retro-cream);
  border-bottom: 1px solid var(--retro-charcoal);
}

.data-bar .info-secondary {
  color: var(--retro-cream);
  opacity: 0.8;
}

.data-bar a {
  color: var(--retro-cream);
  opacity: 0.8;
}

.data-bar a:hover {
  color: #FFFFFF;
  opacity: 1;
}

/* Practices section */
.practices-section {
  background-color: #FFFFFF;
  padding: 4rem 0;
}

/* Browse section */
.browse-section {
  background-color: var(--retro-sand);
  padding: 3rem 0;
  border-top: 3px solid var(--retro-ink);
}


/* ==========================================================================
   11. CUSTOM UTILITY CLASSES - Swiss Design System
   ========================================================================== */

/* Section label - small uppercase rust annotation above sections */
.section-label {
  font-family: var(--bs-heading-font-family);
  font-size: 0.625rem;
  font-weight: 600;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: var(--retro-rust);
  margin-bottom: 1rem;
  padding-bottom: 0.5rem;
  border-bottom: 1px solid var(--retro-warm-gray);
  display: inline-block;
}

/* Stat numbers - large Inter bold in rust */
.stat-number {
  font-family: var(--bs-heading-font-family);
  font-size: 2.5rem;
  font-weight: 700;
  letter-spacing: -0.03em;
  color: var(--retro-rust);
  line-height: 1;
}

.stat-label {
  font-family: var(--bs-heading-font-family);
  font-size: 0.6875rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--retro-charcoal);
  margin-top: 0.25rem;
}

/* Three-tier info hierarchy */
.info-primary {
  font-family: var(--bs-heading-font-family);
  font-size: 1.125rem;
  font-weight: 600;
  color: var(--retro-ink);
}

.info-secondary {
  font-family: var(--bs-heading-font-family);
  font-size: 0.6875rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--retro-charcoal);
}

.info-tertiary {
  font-family: var(--bs-body-font-family);
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--retro-charcoal);
}

/* Section dividers - rules replace decorative elements */
.section-divider {
  border: none;
  border-top: 1px solid var(--retro-warm-gray);
  margin: 0;
  opacity: 1;
}

.section-divider--heavy {
  border-top-width: 3px;
  border-top-color: var(--retro-ink);
}

.section-divider--accent {
  border-top-width: 2px;
  border-top-color: var(--retro-rust);
}

/* Replace warm-divider with architectural divider */
.warm-divider {
  border: none;
  border-top: 3px solid var(--retro-ink);
  margin: 0;
  opacity: 1;
  background: none;
  height: auto;
}

/* Price display */
.price-display {
  font-family: var(--bs-heading-font-family);
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--retro-rust);
}

/* Specialty badge */
.specialty-badge {
  font-family: var(--bs-heading-font-family) !important;
  font-size: 0.75rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  background-color: transparent !important;
  color: var(--retro-ink) !important;
  border: 1px solid var(--retro-warm-gray) !important;
  padding: 0.5rem 0.875rem !important;
  border-radius: 0 !important;
  transition: border-color 0.15s ease, color 0.15s ease;
}

.specialty-badge:hover {
  border-color: var(--retro-rust) !important;
  color: var(--retro-rust) !important;
}

.specialty-badge .badge {
  font-size: 0.625rem;
  background-color: var(--retro-sand) !important;
  color: var(--retro-charcoal) !important;
  border: none;
}


/* ==========================================================================
   12. TABLES
   ========================================================================== */

.table {
  font-size: 0.875rem;
}

.table th {
  font-family: var(--bs-heading-font-family);
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  font-size: 0.75rem;
  border-top: 2px solid var(--retro-ink);
  border-bottom: 1px solid var(--retro-warm-gray);
}

.table td {
  border-bottom: 1px solid var(--retro-warm-gray);
  padding: 0.625rem 0.75rem;
}


/* ==========================================================================
   13. PAGINATION
   ========================================================================== */

.pagination .page-link {
  font-family: var(--bs-heading-font-family);
  font-size: 0.8125rem;
  font-weight: 500;
  border-radius: 0;
  border: 1px solid var(--retro-warm-gray);
  color: var(--retro-ink);
  padding: 0.5rem 0.875rem;
}

.pagination .page-item.active .page-link {
  background-color: var(--retro-rust);
  border-color: var(--retro-rust);
  color: #FFFFFF;
}

.pagination .page-link:hover {
  background-color: var(--retro-sand);
  border-color: var(--retro-warm-gray);
  color: var(--retro-rust);
}


/* ==========================================================================
   14. ALERTS
   ========================================================================== */

.alert {
  border-radius: 0;
  border: none;
  border-left: 4px solid transparent;
  font-size: 0.9375rem;
}

.alert-primary { border-left-color: var(--retro-rust); background-color: rgba(194, 85, 45, 0.06); }
.alert-success { border-left-color: var(--bs-success); background-color: rgba(45, 106, 79, 0.06); }
.alert-danger { border-left-color: var(--bs-danger); background-color: rgba(155, 35, 53, 0.06); }
.alert-warning { border-left-color: var(--retro-sienna); background-color: rgba(160, 82, 45, 0.06); }
.alert-info { border-left-color: var(--bs-info); background-color: rgba(38, 70, 83, 0.06); }


/* ==========================================================================
   15. BREADCRUMBS
   ========================================================================== */

.breadcrumb {
  font-family: var(--bs-heading-font-family);
  font-size: 0.6875rem;
  font-weight: 500;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.breadcrumb-item + .breadcrumb-item::before {
  content: "\2192";  /* arrow */
}

.breadcrumb-item a {
  color: var(--retro-charcoal);
}

.breadcrumb-item a:hover {
  color: var(--retro-rust);
}


/* ==========================================================================
   16. ACCORDION / COLLAPSE
   ========================================================================== */

.accordion-button {
  font-family: var(--bs-heading-font-family);
  font-weight: 600;
  font-size: 0.875rem;
  letter-spacing: 0.02em;
  border-radius: 0;
}

.accordion-button:not(.collapsed) {
  color: var(--retro-rust);
  background-color: rgba(194, 85, 45, 0.04);
}

.accordion-button:focus {
  box-shadow: none !important;
  border-color: var(--retro-rust);
}

.accordion-item {
  border-radius: 0;
  border: 1px solid var(--retro-warm-gray);
}


/* ==========================================================================
   17. FOOTER - Rule-Based, Architectural
   ========================================================================== */

footer, .bd-footer {
  border-top: 3px solid var(--retro-ink);
  background-color: var(--retro-cream) !important;
  padding: 2.5rem 0;
}

footer a,
.bd-footer a {
  color: var(--retro-charcoal);
}

footer a:hover,
.bd-footer a:hover {
  color: var(--retro-rust);
}


/* ==========================================================================
   18. EDUCATION BLOCK (details/summary)
   ========================================================================== */

.education-block summary {
  cursor: pointer;
  list-style: none;
}

.education-block summary::-webkit-details-marker {
  display: none;
}

.education-block summary::after {
  content: ' +';
  font-family: var(--bs-heading-font-family);
  font-weight: 700;
}

.education-block[open] summary::after {
  content: ' \2212';  /* minus */
}


/* ==========================================================================
   19. LIST GROUPS
   ========================================================================== */

.list-group-item {
  border-radius: 0;
  border-color: var(--retro-warm-gray);
  font-size: 0.9375rem;
}


/* ==========================================================================
   20. MODALS
   ========================================================================== */

.modal-content {
  border-radius: 0;
  border: 2px solid var(--retro-ink);
}

.modal-header {
  border-bottom: 1px solid var(--retro-warm-gray);
}

.modal-footer {
  border-top: 1px solid var(--retro-warm-gray);
}


/* ==========================================================================
   21. RESPONSIVE ADJUSTMENTS
   ========================================================================== */

@media (max-width: 991.98px) {
  h1, .h1 { font-size: 2rem; }
  .display-4 { font-size: 2.25rem; }
  .stat-number { font-size: 2rem; }

  .navbar-brand {
    border-right: none;
    padding: 0.75rem 1rem;
  }

  .navbar-nav .nav-link {
    padding: 0.75rem 1rem !important;
    border-bottom: none;
    margin-bottom: 0;
    border-left: 3px solid transparent;
  }

  .navbar-nav .nav-link:hover,
  .navbar-nav .nav-link.active {
    border-left-color: var(--retro-rust);
    border-bottom-color: transparent;
  }
}

@media (max-width: 575.98px) {
  h1, .h1 { font-size: 1.75rem; }
  .display-4 { font-size: 1.875rem; }
  .stat-number { font-size: 1.75rem; }

  .btn {
    padding: 0.5rem 1rem;
    font-size: 0.75rem;
  }
}


/* ==========================================================================
   22. ACCESSIBILITY
   ========================================================================== */

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
  * {
    transition: none !important;
    animation: none !important;
  }
}

/* High contrast mode */
@media (prefers-contrast: high) {
  :root {
    --retro-rust: #B5431A;
    --retro-ink: #000000;
    --retro-warm-gray: #999999;
    --bs-body-bg: #FFFFFF;
  }

  .card {
    border-width: 2px;
    border-color: #000000;
  }
}

/* Print styles */
@media print {
  .navbar, footer, .data-bar {
    display: none;
  }

  body {
    background: #FFFFFF;
    color: #000000;
  }

  .card {
    border: 1px solid #000000;
  }
}


/* ==========================================================================
   23. DARK MODE SUPPORT (future)
   ========================================================================== */
/*
[data-bs-theme="dark"] {
  --bs-body-color: #E8E4DF;
  --bs-body-color-rgb: 232, 228, 223;
  --bs-body-bg: #1A1715;
  --bs-body-bg-rgb: 26, 23, 21;
  --retro-cream: #1A1715;
  --retro-sand: #2A2520;
  --retro-ink: #E8E4DF;
  --retro-charcoal: #B0AAA2;
  --retro-warm-gray: #3D3830;
  --bs-heading-color: #E8E4DF;
}
*/
