.static-intro { max-width: 780px; margin-bottom: 36px; }
.static-intro h1 { font-size: 40px; margin-bottom: 20px; }
.static-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 26px; }
.static-card { overflow: hidden; border: 1px solid var(--line, #dce4eb); border-radius: 18px; background: #fff; display: flex; flex-direction: column; }
.static-card > img { width: 100%; aspect-ratio: 16 / 10; object-fit: cover; }
.service-overview-card { --service-color: #124c80; --service-tint: #eaf2fa; border-top: 3px solid var(--service-color); transition: border-color .2s ease, box-shadow .2s ease; }
.service-overview-card--inclusion { --service-color: #8b4274; --service-tint: #f8edf5; }
.service-overview-card--strategy { --service-color: #246f66; --service-tint: #eaf5f1; }
.service-overview-card--compliance { --service-color: #635099; --service-tint: #f0edf8; }
.service-overview-card--enterprise { --service-color: #9b5c1d; --service-tint: #fff3e5; }
.service-overview-card--assistance { --service-color: #1d7187; --service-tint: #e9f5f8; }
.service-overview-top { display: flex; align-items: center; justify-content: space-between; padding: 28px 26px 0; }
.service-overview-icon { display: grid; place-items: center; width: 76px; height: 76px; flex-shrink: 0; border-radius: 22px; background: var(--service-tint); color: var(--service-color); font-size: 31px; }
.service-overview-number { color: var(--service-color); opacity: .3; font-size: 36px; font-weight: 700; letter-spacing: -.04em; line-height: 1; }
.service-overview-card .static-card-copy { padding-top: 24px; }
.service-overview-card .text-link { width: 100%; padding-top: 20px; border-top: 1px solid var(--line, #dce4eb); justify-content: space-between; }
.service-overview-card li::marker { color: var(--service-color); }
.service-overview-card:hover, .service-overview-card:focus-within { border-color: var(--service-color); box-shadow: 0 12px 32px #123b6310; }
@media (max-width: 700px) { .service-overview-top { padding: 24px 22px 0; } }
@media (prefers-reduced-motion: reduce) { .service-overview-card { transition: none; } }
.static-card-copy { padding: 26px; display: flex; flex-direction: column; flex: 1; align-items: flex-start; }
.static-card h2 { font-size: 24px; line-height: 1.3; margin-bottom: 14px; }
.static-card p { margin-bottom: 22px; }
.static-card .text-link { margin-top: auto; }
.static-card ul { padding-left: 20px; margin-bottom: 24px; list-style: disc; }
.static-card li { margin-bottom: 8px; }
.advisory-services .static-card h3 { font-size: 24px; line-height: 1.3; margin-bottom: 18px; color: var(--ink); }
.advisory-services .service-overview-card { --service-color: #124c80; --service-tint: #eaf3fc; }
.advisory-services .service-overview-card:nth-child(2n) { --service-color: #bc5018; --service-tint: #fff0e5; }
.advisory-detail .static-card { padding: 30px; gap: 20px; }
.advisory-detail .static-card h2 { margin: 0; }
.advisory-item-number { color: #bc5018; font-size: 15px; font-weight: 700; }
.advisory-back { margin-top: 30px; }
.static-reading { background: #f5f8fb; }
.static-article { max-width: 860px; margin: 0 auto 32px; padding: clamp(24px, 4vw, 48px); border: 1px solid #dce4eb; border-radius: 18px; background: white; scroll-margin-top: 110px; }
.static-article:last-child { margin-bottom: 0; }
.static-article h2 { font-size: clamp(25px, 3vw, 36px); margin-bottom: 22px; }
.static-article h3 { font-size: 21px; margin: 24px 0 12px; }
.static-article p + p { margin-top: 16px; }
.static-article .text-link { margin-top: 24px; }
.static-faq-layout { display: grid; grid-template-columns: 260px minmax(0, 1fr); gap: 48px; }
.static-topics { display: flex; flex-direction: column; gap: 12px; align-items: flex-start; }
.static-topics a { padding: 12px 18px; background: #edf3f8; border-radius: 8px; color: #124c80; }
.static-faq-group { margin-bottom: 40px; scroll-margin-top: 110px; }
.static-faq-group h2 { font-size: 28px; margin-bottom: 18px; }
.static-faq-group .faq-list p a { color: #124c80; text-decoration: underline; }
.static-pages a:focus-visible { outline: 3px solid #124c80; outline-offset: 5px; }
.static-pages .page-breadcrumb { flex-wrap: wrap; }
@media (max-width: 1050px) { .static-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 700px) {
  .static-grid, .static-faq-layout { grid-template-columns: 1fr; }
  .static-faq-layout { gap: 30px; }
  .static-topics { flex-direction: row; flex-wrap: wrap; }
  .static-card-copy { padding: 22px; }
}

/* Homepage: four cards above three full-width columns. */
#services .advisory-services {
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 24px;
}
#services .advisory-services > .static-card { grid-column: span 3; min-width: 0; }
#services .advisory-services > .static-card:nth-child(n + 5) { grid-column: span 4; }
#services .advisory-services .service-overview-top { padding: 24px 20px 0; }
#services .advisory-services .static-card-copy { padding: 22px 20px; }
#services .advisory-services .static-card h3 { font-size: 21px; overflow-wrap: break-word; }
#services .advisory-services > .static-card:nth-child(n + 5) .service-overview-top { padding: 28px 26px 0; }
#services .advisory-services > .static-card:nth-child(n + 5) .static-card-copy { padding: 24px 26px 26px; }
#services .advisory-services > .static-card:nth-child(n + 5) h3 { font-size: 24px; }
@media (max-width: 1100px) {
  #services .advisory-services { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  #services .advisory-services > .static-card:nth-child(n) { grid-column: span 2; }
  #services .advisory-services > .static-card:last-child { grid-column: 2 / span 2; }
}
@media (max-width: 700px) {
  #services .advisory-services { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  #services .advisory-services > .static-card:nth-child(n) { grid-column: auto; }
}
