/* Luzke Custom Styles */
:root {
  --color-primary: #0B3D5E;
  --color-accent: #F07B2A;
  --color-bg: #F5F2EC;
  --color-card: #FFFFFF;
  --color-text: #1A1A1A;
  --color-muted: #5C6660;
  --color-border: #DDD7C8;
}

body {
  font-family: 'Inter', system-ui, -apple-system, sans-serif;
  background-color: var(--color-bg);
  color: var(--color-text);
  overflow-x: hidden;
}

.font-tabular {
  font-variant-numeric: tabular-nums;
}

/* Custom Utilities */
.bg-luzke-navy { background-color: #0B3D5E; }
.text-luzke-navy { color: #0B3D5E; }
.bg-luzke-amber { background-color: #F07B2A; }
.text-luzke-amber { color: #F07B2A; }
.border-luzke-border { border-color: #DDD7C8; }

/* Components */
.btn-primary {
  @apply bg-luzke-navy text-white px-6 py-3 rounded-md font-medium transition-colors hover:bg-[#114d75] inline-flex items-center;
}

.btn-accent {
  @apply bg-luzke-amber text-white px-6 py-3 rounded-md font-medium transition-colors hover:bg-[#f28c46] inline-flex items-center;
}

.btn-secondary {
  @apply border border-luzke-navy text-luzke-navy px-6 py-3 rounded-md font-medium transition-colors hover:bg-[#0B3D5E]/5 inline-flex items-center;
}

.card {
  @apply bg-white border border-luzke-border rounded-lg overflow-hidden;
}

/* Accordion */
.accordion-content {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease-out;
}

.accordion-active .accordion-content {
  max-height: 500px;
}

.accordion-active .chevron {
  transform: rotate(180deg);
}

/* Form Styles */
input, select, textarea {
  @apply border border-luzke-border rounded-md px-3 py-2 focus:outline-none focus:border-[#0B3D5E] bg-white transition-colors;
}

/* Mobile Menu */
#mobile-menu {
  transform: translateX(100%);
  transition: transform 0.3s ease-in-out;
}

#mobile-menu.active {
  transform: translateX(0);
}
