:root {
  --brand-blue: #004080;
  --brand-orange: #ff6600;
  --brand-dark: #1a1a1a;
}
body {
  font-family: 'Segoe UI', system-ui, -apple-system, sans-serif;
  background-color: #f8f9fa;
  -webkit-font-smoothing: antialiased;
}
.navbar-brand {
  font-weight: 800;
  font-size: 1.5rem;
  color: var(--brand-blue) !important;
}
.bg-brand-blue { background-color: var(--brand-blue) !important; color: #fff; }
.text-brand-blue { color: var(--brand-blue) !important; }
.text-orange { color: var(--brand-orange) !important; }

.btn-orange { 
  background-color: var(--brand-orange); 
  color: #fff; 
  font-weight: 600; 
  border: none; 
  padding: 10px 24px;
}
.btn-orange:hover { 
  background-color: #e55c00; 
  color: #fff; 
}
.btn-outline-primary {
  border-color: var(--brand-blue);
  color: var(--brand-blue);
  font-weight: 600;
}
.btn-outline-primary:hover {
  background-color: var(--brand-blue);
  color: #fff;
}

.hero-section {
  background: linear-gradient(rgba(0, 32, 64, 0.75), rgba(0, 32, 64, 0.75)), url('https://images.unsplash.com/photo-1593359677879-a4bb92f829d1?auto=format&fit=crop&w=1920&q=80') no-repeat center center/cover;
  color: white;
  padding: 140px 0;
}
.inner-header {
  background: var(--brand-blue);
  color: white;
  padding: 60px 0;
  text-align: center;
}

.section-padding { padding: 80px 0; }
.card-service { 
  transition: transform 0.3s ease, box-shadow 0.3s ease; 
  border: none; 
  border-radius: 12px; 
  box-shadow: 0 4px 6px rgba(0,0,0,0.04); 
  height: 100%;
}
.card-service:hover { 
  transform: translateY(-5px); 
  box-shadow: 0 12px 24px rgba(0,0,0,0.1); 
}
.card-service .icon-wrapper { 
  font-size: 2.5rem; 
  color: var(--brand-orange); 
  margin-bottom: 1.2rem; 
}

.footer { 
  background-color: var(--brand-dark); 
  color: #ccc; 
  padding: 70px 0 30px; 
}
.footer h5 { 
  color: #fff; 
  font-weight: 600; 
  margin-bottom: 1.5rem; 
}
.footer a { 
  color: #aaa; 
  text-decoration: none; 
  transition: color 0.3s; 
}
.footer a:hover { 
  color: var(--brand-orange); 
}

.emergency-banner { 
  background-color: #dc3545; 
  color: white; 
  padding: 50px 0; 
  text-align: center; 
}

.testimonial-card { 
  background: white; 
  border-radius: 12px; 
  padding: 30px; 
  box-shadow: 0 5px 15px rgba(0,0,0,0.05); 
  margin-bottom: 30px;
  height: 100%;
}
.star-rating { color: #ffc107; margin-bottom: 15px; }

.accordion-button:not(.collapsed) { 
  background-color: #e6f0fa; 
  color: var(--brand-blue); 
  font-weight: bold;
}
.accordion-button:focus {
  box-shadow: none;
  border-color: rgba(0, 64, 128, 0.2);
}
