.home-services { margin: 0 15px 56px; }
.home-services-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; margin-bottom: 22px; }
.home-services-eyebrow { display: flex; align-items: center; gap: 10px; font-size: 10px; line-height: 1.4; font-weight: 700; letter-spacing: .12em; color: #62758a; }
.home-services-eyebrow::before { content: ''; width: 22px; height: 2px; background: #df911e; }
.home-services h2 { margin: 8px 0 0; color: #003a70; font-size: 30px; line-height: 1.2; letter-spacing: -.035em; }
.home-services-heading p { margin: 0 0 3px; color: #62758a; font-size: 13px; line-height: 1.5; }
.service-browser { display: grid; grid-template-columns: minmax(250px, 30%) minmax(0, 1fr); border: 1px solid #dfe7ef; border-radius: 12px; overflow: hidden; background: #fff; }
.service-menu { display: flex; flex-direction: column; gap: 6px; padding: 20px; border-right: 1px solid #e3eaf0; }
.service-choice { scroll-margin: 130px 0 20px; position: relative; display: flex; align-items: center; gap: 16px; min-height: 74px; padding: 18px; border-radius: 7px; color: #36516e; font-size: 15px; line-height: 1.45; font-weight: 600; transition: background 180ms ease, color 180ms ease; }
.service-choice > span:nth-child(2) { flex: 1; min-width: 0; overflow-wrap: anywhere; }
.service-choice-icon { display: flex; flex: 0 0 26px; }
.service-choice-icon svg { display: block; width: 26px; height: 26px; }
.service-choice-arrow { color: #8a9caf; font-size: 20px; font-weight: 400; }
.service-choice[aria-selected="true"] { color: #fff; background: #003a70; }
.service-choice[aria-selected="true"]::before { content: ''; position: absolute; left: 0; top: 20px; bottom: 20px; width: 3px; border-radius: 2px; background: #f2a43a; }
.service-choice[aria-selected="true"] .service-choice-arrow { color: #f2b34f; }
.service-panel { scroll-margin-top: 130px; display: flex; flex-direction: column; align-items: flex-start; min-height: 520px; height: 100%; padding: 38px 44px; background: #f8fafc; }
.service-panel[hidden], .service-picker[hidden] { display: none; }
.service-panel-heading { display: flex; align-items: center; gap: 14px; margin-bottom: 24px; }
.service-panel-icon { display: grid; place-items: center; width: 48px; height: 48px; background: #eaf0f6; border-radius: 10px; color: #003a70; }
.service-panel-icon svg { width: 28px; height: 28px; }
.service-panel-kicker { color: #62758a; font-size: 12px; }
.service-panel h3 { margin: 0 0 20px; max-width: 28ch; color: #003a70; font-size: 30px; line-height: 1.25; letter-spacing: -.035em; overflow-wrap: anywhere; }
.service-panel-content { width: 100%; min-width: 0; max-width: 72ch; margin-bottom: 28px; color: #52677d; font-size: 14px; line-height: 1.75; overflow-wrap: anywhere; }
.service-panel-content p { margin: 0 0 12px; font-size: inherit; line-height: inherit; color: inherit; }
.service-panel-content strong { font-weight: 600; color: #243f5c; }
.service-panel-content ul, .service-panel-content ol { margin: 18px 0 0; padding-left: 20px; }
.service-panel-content li { padding: 5px 0 5px 4px; }
.service-panel-content li::marker { color: #bc7a22; }
.service-panel-content > :last-child { margin-bottom: 0; }
.service-panel-content img, .service-panel-content iframe { max-width: 100%; }
.service-panel-content img { height: auto; }
.service-panel-content table { display: block; max-width: 100%; overflow-x: auto; }
.service-detail-link { display: inline-flex; align-items: center; justify-content: space-between; gap: 32px; min-height: 46px; padding: 12px 18px; margin-top: auto; border-radius: 6px; background: #003a70; color: #fff; font-size: 13px; font-weight: 600; line-height: 1.4; }
.service-detail-link > span { color: #f2b34f; font-size: 20px; line-height: 1; }
.service-choice:focus-visible, .service-detail-link:focus-visible, .service-picker select:focus-visible, .service-panel:focus-visible { outline: 3px solid #c7801e; outline-offset: -3px; }
.service-picker { display: none; }
.home-services-empty { margin: 0; padding: 28px; border-radius: 12px; background: #fff; color: #62758a; font-size: 15px; }
@media (hover: hover) {
  .service-choice:not([aria-selected="true"]):hover { background: #f0f4f8; color: #003a70; }
  .service-detail-link:hover { color: #fff; background: #002d58; }
}
@media (min-width: 768px) and (max-width: 1199.98px) {
  .service-browser { grid-template-columns: minmax(250px, 34%) minmax(0, 1fr); }
  .service-menu { padding: 14px; }
  .service-choice { gap: 12px; padding: 16px 12px; font-size: 14px; }
  .service-panel { padding: 30px; }
  .service-panel h3 { font-size: 27px; }
}
@media (max-width: 767.98px) {
  .home-services { margin-bottom: 40px; }
  .home-services-heading { display: block; margin-bottom: 18px; }
  .home-services h2 { font-size: 27px; }
  .home-services-heading p { margin-top: 10px; font-size: 12px; }
  .service-browser { grid-template-columns: minmax(0, 1fr); }
  .service-menu { border-right: 0; padding: 14px; }
  .service-browser[data-ready] .service-menu { display: none; }
  .service-picker { display: block; padding: 22px 22px 24px; border-bottom: 1px solid #e3eaf0; background: #fff; }
  .service-picker label { display: block; margin-bottom: 10px; color: #52677d; font-size: 12px; }
  .service-picker-control { position: relative; }
  .service-picker-control::after { content: ''; position: absolute; right: 17px; top: 18px; width: 8px; height: 8px; border-right: 2px solid #003a70; border-bottom: 2px solid #003a70; transform: rotate(45deg); pointer-events: none; }
  .service-picker select { appearance: none; display: block; width: 100%; min-width: 0; min-height: 48px; border: 1px solid #b4c4d4; border-radius: 6px; padding: 10px 38px 10px 12px; background: #fff; color: #003a70; font: inherit; font-size: 16px; }
  .service-panel { min-height: 0; height: auto; padding: 26px 22px; }
  .service-panel-heading { margin-bottom: 20px; }
  .service-panel h3 { font-size: 26px; }
  .service-panel-content { font-size: 14px; }
  .service-detail-link { width: 100%; gap: 16px; }
}
@media (prefers-reduced-motion: reduce) { .service-choice { transition: none; } }
