body {
  font-family: 'Manrope', sans-serif;
  color: #121212;
  background: #fff9f9;
}

/* === General Section Titles === */
.section-title {
  font-family: 'Domine', serif;
  font-size: 40px;
  font-weight: 700;
  color: #121212;
}

.section-desc {
  font-size: 18px;
  max-width: 800px;
  margin: 0 auto;
}

/* === About Cards === */
.about-card {
  background: #ffffff;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 2px 8px rgba(0,0,0,0.05);
  height: 100%;
}
.about-card-body {
  padding: 20px;
}
.about-card h3 {
  font-family: 'Domine', serif;
  font-size: 28px;
  font-weight: 700;
  margin-bottom: 10px;
}
.about-card p {
  font-size: 16px;
  line-height: 1.6;
}

/* === Our Presence === */
.presence-section {
  font-family: 'Manrope', sans-serif;
  font-size: 24px;
  font-style: regular;
  background: rgba(2, 103, 177, 0.1);
}
.map-placeholder {
  width: 100%;
  max-width: 1760px;
  height: 800px;
  background: url('../images/about-us/presence.png');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  padding-bottom: 20px;
}
.stat-box {
  background: #ffffff;
  color: #0267B1;
  border-radius: 8px;
  padding: 30px 0px;
}
.shadow-blue {
  box-shadow: 5px 5px 0px #0267B1;
}
.stat-box h3 {
  font-size: 36px;
  font-weight: 700;
}
.stat-box p {
  font-size: 18px;
  margin: 0;
}

/* === Group Companies === */
.company-card {
  background: #0267B1;
  color: #fff9f9;
  border-radius: 4px;
  padding: 20px;
  height: 100%;
}
.company-card h3 {
  font-family: 'Domine', serif;
  font-size: 22px;
  margin-bottom: 10px;
}
.company-card p {
  font-size: 16px;
}

/* === Infrastructure === */
.infra-card img {
  width: 100%;
  height: 200px;
  object-fit: cover;
}
.infra-card p {
  font-family: 'Manrope', sans-serif;
  color: #000000;
  font-style: Medium;
  font-size: 24px;
  margin-top: 8px;
}
.company-card {
  background: #0267B1;
  color: #fff9f9;
  border-radius: 4px;
  padding: 20px;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-start; /* ✅ true left alignment */
  justify-content: flex-start;
  text-align: left;
}

/* Fixed logo container for consistent sizing */
.company-card img {
  height: 80px;           /* fixed logo height */
  width: auto;            /* width adjusts automatically */
  object-fit: contain;    /* maintain original proportions */
  margin-bottom: 20px;
  align-self: flex-start; /* keeps it left aligned */
  display: block;
}



/* === Awards === */
.award-card p {
  font-family: 'Domine', serif;
  font-style: bold;
  font-size: 16px;
  margin: 0;
  color: #121212;
}

/* ================== ANIMATIONS ================== */

/* ================== IMAGE HOVER ANIMATIONS ================== */

/* Generic selector for all card images */
.about-card img,
.company-card img,
.infra-card img,
.award-card img {
  transition: transform 0.35s ease, box-shadow 0.35s ease;
  border-radius: 8px;
  display: block;
  width: 100%;
  object-fit: cover;
}

/* Hover effect only on the image */
.about-card img:hover,
.company-card img:hover,
.infra-card img:hover,
.award-card img:hover {
  transform: scale(1.05);
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.15);
  z-index: 5;
}

/* ================== PAGE FADE-IN ================== */
body {
  opacity: 0;
  animation: pageFadeIn 0.9s ease-in-out forwards;
}

@keyframes pageFadeIn {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
