.expertise-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 30px;
  margin-top: 40px; /* Space between intro para and grid */
}

.expertise-item {
  border: 1px solid gainsboro;
  background-color: var(
    --light-gray
  ); /* Or var(--white) if section bg is gray */
  padding: 30px;
  border-radius: 8px;
  text-align: center; /* Center align content within card */
  transition: var(--transition);
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.05); /* Lighter shadow */
}

.expertise-item:hover {
  transform: translateY(-8px);
  box-shadow: var(--box-shadow); /* Use existing shadow */
}

.expertise-icon {
  width: 60px;
  height: 60px;
  margin: 0 auto 20px auto;
  display: flex;
  align-items: center;
  justify-content: center;
}

.expertise-icon img {
  border-radius: 12px;
  max-width: 100%;
  max-height: 100%;
}

.expertise-item h3 {
  text-align: left;
  margin-bottom: 10px;
  color: var(--secondary-color);
  font-size: 1.25rem;
}

.expertise-item p {
  text-align: left;
  font-size: 0.95rem;
  line-height: 1.5;
}

/* Region List Styles should largely remain the same, just verify */
.region-list {
  margin-bottom: 60px; /* Keep or adjust */
  margin-top: 40px; /* Add space after H2 */
}

.region-card {
  height: auto; /* Let content determine height */
  min-height: 150px; /* Optional: Ensure a minimum height */
}

.region-card p {
  /* Style the new paragraph */
  margin-top: 15px;
  padding-left: 0; /* Remove padding if ul is gone */
  line-height: 1.6;
}

.firstsection {
  background: var(--light-gray);
}

.key-service-regions {
  padding: 80px 0;
}

.key-service-regions .region-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr); /* Creates a 2-column grid */
  gap: 0;
  border: 1px solid var(--medium-gray); /* Optional: border around the whole grid */
  border-radius: 8px; /* Optional: rounded corners for the grid block */
  overflow: hidden; /* Important if using border-radius on the parent grid */
}

.key-service-regions .region-item {
  padding: 25px; /* Padding inside each grid cell */
  /* border-bottom: none; /* Remove previous border */
}

/* Alternating backgrounds */
.key-service-regions .region-item:nth-child(odd) {
  background-color: var(--white);
}
.key-service-regions .region-item:nth-child(even) {
  background-color: var(
    --light-gray
  ); /* Or var(--medium-gray) for slightly more contrast */
}

 
.key-service-regions .region-item:nth-child(1), /* Top-left */
.key-service-regions .region-item:nth-child(4)  /* Bottom-right */ {
  background-color: var(--white);
}
.key-service-regions .region-item:nth-child(2), /* Top-right */
.key-service-regions .region-item:nth-child(3)  /* Bottom-left */ {
  background-color: var(--light-gray);
}

.key-service-regions .region-item h3 {
  /* Styles remain similar - no ::before underline needed here */
  font-size: 1.5rem; /* Might need to adjust size for grid cells */
  color: var(--secondary-color);
  margin-top: 0;
  margin-bottom: 0.75rem;
}
.key-service-regions .region-item h3::before {
  display: none;
} /* Ensure no accent line */

.key-service-regions .region-item p {
  font-size: 1.05rem; /* Make paragraph text slightly larger */
  line-height: 1.8;
  color: var(--text-color);
  margin-bottom: 0;
}

.section-intro-text-extra-space {
  margin-bottom: 2rem !important;
}
