@import url('https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;600&family=Playfair+Display:wght@700&display=swap');

:root {
  --navy: #1A2340;
  --gold: #D4AF37;
  --white: #FFFFFF;
  --burgundy: #B03A5B;
  --lightblue: #E6EEF8;
  --font-serif: 'Playfair Display', Georgia, serif;
  --font-sans: 'Open Sans', Arial, sans-serif;
}

body {
  background: var(--white);
  color: var(--navy);
  font-family: var(--font-sans);
  transition: background 0.3s, color 0.3s;
}

h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-serif);
  color: var(--navy);
}

.btn, .btn-gold, .btn-outline-dark {
  transition: transform 0.2s ease-in-out, box-shadow 0.2s ease-in-out, background 0.2s ease-in-out, color 0.2s ease-in-out;
  will-change: transform, box-shadow;
}

.btn:hover, .btn-outline-dark:hover {
  transform: translateY(-2px) scale(1.02);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

/* Specific styles for .btn-gold */
.btn-gold {
  background: var(--gold);
  color: var(--navy);
  border: none;
  border-radius: 4px;
  padding: 0.75rem 2rem;
  font-weight: 600;
  position: relative; /* Needed for z-index */
  z-index: 10; /* Ensure button is above other elements */
}

.btn-gold:hover {
  transform: translateY(-2px) scale(1.02);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  background: var(--burgundy);
  color: var(--white);
}

.btn-gold:active {
  transform: scale(0.98);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

/* General section padding */
section {
  padding: 6rem 0;
}

/* Adjusting card shadow for a softer look */
.card {
  border-radius: 0.75rem; /* Slightly less rounded */
  box-shadow: 0 4px 20px rgba(26,35,64,0.06); /* Softer shadow */
  background: var(--white);
  transition: transform 0.2s, box-shadow 0.2s;
  overflow: hidden; /* Prevents image overflow on border-radius */
}
.card:hover {
  transform: translateY(-4px) scale(1.01); /* More subtle lift */
  box-shadow: 0 8px 30px rgba(26,35,64,0.1); /* Slightly stronger hover shadow */
}

/* Dark mode */
body.dark-mode {
  background: var(--navy);
  color: var(--white);
}
body.dark-mode h1, body.dark-mode h2, body.dark-mode h3, body.dark-mode h4, body.dark-mode h5, body.dark-mode h6 {
  color: var(--gold);
}
body.dark-mode .card {
  background: #232b45;
  box-shadow: 0 4px 20px rgba(0,0,0,0.2);
}
body.dark-mode .card:hover {
   box-shadow: 0 8px 30px rgba(0,0,0,0.3);
}
body.dark-mode .btn-gold {
  background: var(--burgundy);
  color: var(--white);
}
body.dark-mode .btn-gold:hover {
  background: var(--gold);
  color: var(--navy);
}
body.dark-mode .text-muted {
  color: rgba(255,255,255,0.7) !important;
} 