/* Homepage recommendations — isolated styles to preserve existing layout */


#recommendations.recommendations-section { 
  padding: 90px 0 95px; 
  background: #fff;
  border-bottom: 2px solid #eeebf1; 
}


#recommendations .recommendations-heading { 
  text-align: center; 
  margin: 0 auto 42px; 
  max-width: 900px; 
}


#recommendations .recommendations-eyebrow { 
  color: #81A4FF; 
  font-size: 13px; 
  letter-spacing: .18em; 
  font-weight: 700; 
  text-transform: uppercase; 
  margin: 50px 0 12px; 
}


#recommendations .recommendations-heading h2 { 
  margin: 0 0 14px; 
}


#recommendations .recommendations-intro { 
  color: #090f33; 
  font-family: Bricolage Grotesque,"Helvetica Neue",Helvetica,Arial,sans-serif;
  font-size: 18px;
  font-weight: 300;
  line-height: 22px;
  letter-spacing: 0.05em
  margin: 0; 
}


#recommendations .recommendations-grid { 
  display: grid; 
  grid-template-columns: repeat(3, minmax(0,1fr)); 
  gap: 20px; 
  align-items: stretch; 
}


#recommendations .recommendation-card { 
  display: flex; 
  flex-direction: column; 
  min-width: 0; 
  padding: 28px 28px 26px; 
  border: 1px solid #e6e3e9; 
  border-radius: 8px; 
  background: #fdfcfe; 
  box-shadow: 0 4px 18px rgba(33,24,52,.025); 
}


#recommendations .recommendation-quote-mark { 
  display: block; 
  height: 32px; 
  color: #81A4FF; 
  font: 700 56px/.9 Georgia,serif; 
}


#recommendations .recommendation-quote { 
  margin: 12px 0 18px; 
  font-size: 14px;
  font-weight: 300; 
  line-height: 1.5; 
  color: #090f33; 
  overflow-wrap: break-word; 
}


#recommendations .recommendation-person { 
  margin-top: auto; 
  display: flex; 
  align-items: center; 
  gap: 14px; 
  padding-top: 18px; 
  border-top: 1px solid #eeebf1; 
}


#recommendations .recommendation-person img { 
  display: block; 
  flex: 0 0 52px; 
  width: 52px; 
  height: 52px; 
  object-fit: cover; 
  border-radius: 50%; 
}


#recommendations .recommendation-person strong { 
  font-size: 15px; 
  line-height: 1.35; 
  color: #090f33;
}


#recommendations .recommendation-person-details { 
  display: flex; 
  flex-direction: column; 
  gap: 2px; min-width: 0; 
}


#recommendations .recommendation-person-title { 
  display: block; 
  color: #090f33;
  font-size: 13px; 
  font-weight: 300;
  line-height: 1.45; 
}



/* Keep each recommendation's name and title in separate rows,
   even when legacy theme styles target inline text elements. */
#recommendations .recommendation-person .recommendation-person-details {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  grid-auto-flow: row !important;
  align-content: center;
  justify-items: start;
  row-gap: 1px;
  flex: 1 1 auto;
  min-width: 0;
}
#recommendations .recommendation-person .recommendation-person-details > strong,
#recommendations .recommendation-person .recommendation-person-details > .recommendation-person-title {
  display: block !important;
  grid-column: 1 / -1 !important;
  width: 100%;
  float: none !important;
  clear: both;
  margin: 0;
  text-align: left;
}


#recommendations .recommendations-footer { 
  margin-top: 36px; 
  text-align: center; 
}


@media (max-width: 991px) { 
  #recommendations .recommendations-grid { 
    grid-template-columns: repeat(2,minmax(0,1fr)); 
  } 
  #recommendations .recommendation-card:last-child { 
    grid-column: 1 / -1; 
  } 
}


@media (max-width: 767px) { 
  #recommendations.recommendations-section { 
    padding: 65px 0; 
  } 
  #recommendations .recommendations-heading { 
    margin-bottom: 30px; 
  } 
  #recommendations .recommendations-grid { 
    grid-template-columns: 1fr; 
    gap: 16px; 
  } 
  #recommendations .recommendation-card:last-child { 
    grid-column: auto; 
  } 
  #recommendations .recommendation-card { 
    padding: 24px; 
  } 
  #recommendations .recommendation-quote { 
    font-size: 15px; 
  } 
}




