/* Global Styles */
body { margin: 0; font-family: Arial, sans-serif; line-height: 1.6; color: #333; }
a { text-decoration: none; }
img { max-width: 100%; height: auto; }

/* Navbar */
.navbar { display: flex; justify-content: space-between; align-items: center; padding: 1rem 2rem; background: #004080; }
.nav-links { list-style: none; display: flex; gap: 1rem; margin: 0; }
.nav-links a { color: #fff; padding: 0.5rem; }
.btn-cta { background: #ff6600; color: #fff; padding: 0.75rem 1.5rem; border-radius: 4px; }

/* Hero */
.hero { height: 75vh; background-size: cover; background-position: center; position: relative; }
.hero-content { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); text-align: center; color: #fff; }
.btn { padding: 0.75rem 1.25rem; border: none; border-radius: 4px; cursor: pointer; }
.btn-primary { background: #ff6600; color: #fff; }
.btn-secondary { background: rgba(255,255,255,0.3); color: #fff; }

/* Services */
.services { padding: 4rem 2rem; background: #f4f4f4; text-align: center; }
.service-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 2rem; }
.service-card { background: #fff; padding: 1.5rem; border-radius: 8px; box-shadow: 0 2px 5px rgba(0,0,0,0.1); transition: transform 0.3s; }
.service-card:hover { transform: translateY(-5px); }

/* About */
.about { padding: 4rem 2rem; text-align: center; }

/* Testimonials */
.testimonials { padding: 4rem 2rem; background: #fff; text-align: center; overflow: hidden; }
.carousel { position: relative; width: 80%; margin: 0 auto; }
.slide { display: none; }
.slide.active { display: block; }
.author { margin-top: 0.5rem; font-weight: bold; }

/* Areas & Contact */
.areas, .contact { padding: 4rem 2rem; text-align: center; }
.contact form { max-width: 500px; margin: 0 auto; display: flex; flex-direction: column; gap: 1rem; }
.contact-info { margin-top: 1rem; }

/* Footer */
footer { background: #004080; color: #fff; text-align: center; padding: 2rem; }

/* Animations */
[data-animate] { opacity: 0; transform: translateY(20px); transition: all 0.6s ease-out; }
[data-animate].in-view { opacity: 1; transform: translateY(0); }

/* ===== About (polished) ===== */
.about-grid{
  display:grid;
  gap:1.5rem;
  grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
}
.about .lead{
  font-size:1.05rem;
  margin-bottom:.5rem;
}
.pillar{
  background:#fff;
  border-radius:8px;
  box-shadow:0 4px 14px rgba(0,0,0,.06);
  padding:1.2rem .9rem;
  transition:transform .3s;
}
.pillar:hover{transform:translateY(-4px)}
.pillar h3{font-size:1.05rem;margin-bottom:.4rem;display:flex;align-items:center;gap:.4rem}
.icon{font-size:1.25rem;line-height:1}
.about .accent{margin-top:.8rem;text-align:center;font-size:.9rem}

/* === Logo size tweak === */
.logo img { height: 96px; }

/* === Service card alignment === */
.service-grid{
  display:grid;
  gap:1.2rem;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
}
.service-grid .card{
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
}

.service-grid .card img {
  height: 120px;
  object-fit: contain;
  margin-bottom: 0.5rem;
}

.service-grid .card h3 {
  min-height: 2.2rem;
}
