/* Narrowly scoped: no global card, section, link or typography overrides. */
.bs-home-ia-journeys-grid { grid-template-columns: minmax(0, 1fr); }
.bs-home-ia-services-grid { grid-template-columns: minmax(0, 1fr); }
.bs-home-ia-card {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  min-width: 0;
  padding: 1.75rem;
  border: 1px solid #d9e3db;
  border-radius: 1.25rem;
  text-decoration: none;
  overflow-wrap: break-word;
  transition: box-shadow .18s ease, transform .18s ease;
}
.bs-home-ia-card--journey {
  color: #103f30;
  background: #fff;
  box-shadow: 0 1px 3px #103f3010;
}
.bs-home-ia-card--service {
  color: #fff;
  background: #ffffff0d;
  border-color: #ffffff26;
}
.bs-home-ia-card:hover { box-shadow: 0 8px 24px #103f301c; transform: translateY(-2px); }
.bs-home-ia-card:focus-visible { outline: 3px solid #d7540a; outline-offset: 4px; }
.bs-home-ia-card h3 { margin: 0; font-family: var(--font-serif, Georgia, serif); font-size: 1.55rem; line-height: 1.25; }
.bs-home-ia-card p { margin: 0; font-size: .95rem; line-height: 1.6; }
.bs-home-ia-card--journey p { color: #476153; }
.bs-home-ia-card--service p { color: #e0eae3; }
.bs-home-ia-icon { align-self: flex-start; padding: .55rem .65rem; border-radius: .75rem; background: #edf3ee; color: #175b2b; font-weight: 800; }
.bs-home-ia-card .bs-home-ia-eyebrow { color: #ffb58a; font-size: .8rem; font-weight: 700; letter-spacing: .06em; }
.bs-home-ia-price { display: block; font-size: 1rem; font-weight: 700; line-height: 1.5; }
.bs-home-ia-card--journey .bs-home-ia-price { color: #175b2b; }
.bs-home-ia-card--service .bs-home-ia-price { color: #fff; }
.bs-home-ia-card .bs-home-ia-cta { margin-top: auto; padding-top: .25rem; font-size: .9rem; font-weight: 700; }
.bs-home-ia-card--journey .bs-home-ia-cta { color: #a53b0a; }
.bs-home-ia-card--service .bs-home-ia-cta { color: #fff; }
.bs-home-ia-card a.bs-home-ia-cta { display: inline-flex; align-items: center; min-height: 44px; text-decoration: none; }
.bs-home-ia-card a.bs-home-ia-cta:focus-visible { outline: 3px solid #ffb58a; outline-offset: 4px; border-radius: .25rem; }
.bs-home-portfolio-wrapper { padding-top: 1.5rem; padding-bottom: 1.5rem; }
.bs-home-portfolio-card { padding-top: 1.25rem; padding-bottom: 1.25rem; }
@media (max-width: 639px) {
  .bs-home-portfolio-card { padding-inline: 1.25rem; gap: 1.25rem; }
  .bs-home-portfolio-card > div { min-width: 0; max-width: 100%; }
  .bs-home-portfolio-card > div:last-child { gap: 1rem; }
  .bs-home-portfolio-card > div:last-child > strong { flex-shrink: 0; }
  .bs-home-portfolio-card > div:last-child > span { min-width: 0; }
}
@media (min-width: 640px) {
  .bs-home-ia-journeys-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .bs-home-ia-services-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .bs-home-portfolio-wrapper { padding-top: 2rem; padding-bottom: 2rem; }
  .bs-home-portfolio-card { padding-top: 1.5rem; padding-bottom: 1.5rem; }
}
@media (min-width: 1100px) {
  .bs-home-ia-journeys-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .bs-home-ia-services-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (prefers-reduced-motion: reduce) {
  .bs-home-ia-card { transition: none; }
  .bs-home-ia-card:hover { transform: none; }
}
