/* About is a reading page: one introduction, two equal service paths, then company context. */
body.home-page:has(#services-guide) .site-shell { width: 100%; max-width: none; margin: 0; border: 0; border-radius: 0; background: none; box-shadow: none; }
body.home-page:has(#services-guide) .site-header { border-radius: 0; }
.home-page #main .company-hero:has(#services-guide) { padding-block: 64px 72px; background: none; }
.home-page #main .company-intro-header:has(+ #services-guide) { margin-bottom: 36px; }
.home-page #main .company-intro-header:has(+ #services-guide) h1 { font-size: clamp(32px, 3.2vw, 42px); font-weight: 500; line-height: 1.22; letter-spacing: -.02em; }
.home-page #main .company-intro-header:has(+ #services-guide) h1 > span:empty { display: none; }
.home-page #main .company-intro-header:has(+ #services-guide) .company-subtitle { margin-top: 12px; color: #aeb5be; font-size: 17px; font-weight: 400; line-height: 28px; }
#main #services-guide { margin: 0 0 64px; padding: 0; scroll-margin-top: 24px; }
#main #services-guide .service-guide-intro { margin-bottom: 20px; }
#main #services-guide .service-guide-intro h2 { margin: 0; font-size: 20px; line-height: 28px; font-weight: 500; letter-spacing: 0; color: #d5dbe2; }
/* The two destinations already explain the choice; avoid a second introductory paragraph. */
#main #services-guide .service-guide-intro p { display: none; }
#main #services-guide .service-guide-options { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0; border-top: 1px solid #343940; border-bottom: 1px solid #343940; }
#main #services-guide .service-guide-option {
  display: flex; flex-direction: column; min-width: 0; padding: 28px 36px 24px 0;
  border: 0; border-radius: 0; background: transparent; color: #f5f6f7;
  text-decoration: none; transition: color 180ms ease;
}
#main #services-guide .service-guide-option + .service-guide-option { padding: 28px 0 24px 36px; border-left: 1px solid #343940; }
#main #services-guide .service-guide-option:focus-visible { outline: 2px solid #9db8d1; outline-offset: 6px; }
#main #services-guide .service-guide-title { margin-bottom: 16px; }
#main #services-guide .service-guide-title h3 { margin: 0 0 6px; color: inherit; font-size: 26px; font-weight: 500; line-height: 34px; letter-spacing: -.01em; }
#main #services-guide .service-guide-title strong { display: block; color: #b6c8df; font-size: 17px; font-weight: 400; line-height: 26px; }
#main #services-guide .service-guide-description { max-width: 50ch; margin: 0 0 20px; font-size: 16px; font-weight: 400; line-height: 27px; color: #aeb5be; }
#main #services-guide .service-guide-link { display: flex; align-items: center; justify-content: space-between; gap: 18px; min-height: 44px; margin-top: auto; padding-top: 4px; border: 0; color: #e4eaf1; font-size: 15px; font-weight: 400; line-height: 24px; text-underline-offset: 5px; }
#main #services-guide .service-guide-link svg { display: block; flex: none; width: 22px; height: 22px; transition: transform 180ms ease; }
@media (hover: hover) { #main #services-guide .service-guide-option:hover .service-guide-link { color: #fff; text-decoration: underline; } #main #services-guide .service-guide-option:hover .service-guide-link svg { transform: translateX(4px); } }
/* Company details use ordinary reading sections instead of another tier of cards. */
.home-page #main #services-guide + .company-overview { display: grid; grid-template-columns: minmax(0, .76fr) minmax(0, 1.24fr); align-items: start; gap: 52px; padding: 0; }
.home-page #main #services-guide + .company-overview .company-space { position: relative; top: auto; width: 100%; max-width: none; min-height: 0; margin: 0; align-self: start; aspect-ratio: 4 / 5; border: 0; border-radius: 8px; background: #181a1d; }
.home-page #main #services-guide + .company-overview .company-space > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.home-page #main #services-guide + .company-overview .company-copy { display: block; min-width: 0; }
.home-page #main #services-guide + .company-overview .company-story { display: block; margin: 0; height: auto; }
.home-page #main #services-guide + .company-overview .company-story article { display: block; margin: 0; padding: 0; border: 0; border-radius: 0; background: none; box-shadow: none; }
.home-page #main #services-guide + .company-overview .company-story article + article { margin-top: 22px; padding-top: 22px; border-top: 1px solid #2b3036; }
.home-page #main #services-guide + .company-overview .company-story-heading { display: block; margin-bottom: 10px; }
.home-page #main #services-guide + .company-overview .company-story-number { display: none; }
.home-page #main #services-guide + .company-overview .company-story h2 { font-size: 20px; font-weight: 500; line-height: 28px; color: #f2f4f6; }
.home-page #main #services-guide + .company-overview .company-story p { font-size: 16px; font-weight: 400; line-height: 27px; text-align: left; text-indent: 0; }
.home-page #main #services-guide + .company-overview .company-story-lead { font-size: inherit; line-height: inherit; font-weight: 500; color: #e0e5eb; }
.home-page #main #services-guide + .company-overview .company-story-detail { color: #aeb5be; }
@media (max-width: 1000px) {
  #main #services-guide .service-guide-option { padding-right: 24px; }
  #main #services-guide .service-guide-option + .service-guide-option { padding-left: 24px; }
  #main #services-guide .service-guide-title h3 { font-size: 24px; line-height: 32px; }
  .home-page #main #services-guide + .company-overview { gap: 32px; grid-template-columns: minmax(0, .7fr) minmax(0, 1.3fr); }
}
@media (max-width: 760px) {
  html:has(#services-guide) { scroll-padding-bottom: 96px; }
  #services-guide .service-guide-option { scroll-margin-block: 16px 96px; }
  .home-page #main .company-hero:has(#services-guide) { padding-block: 32px 44px; }
  .home-page #main .company-hero:has(#services-guide) > .wrap { width: calc(100% - 40px); }
  .home-page #main .company-intro-header:has(+ #services-guide) { margin-bottom: 24px; }
  .home-page #main .company-intro-header:has(+ #services-guide) h1 { font-size: 28px; line-height: 36px; }
  .home-page #main .company-intro-header:has(+ #services-guide) .company-subtitle { font-size: 16px; line-height: 25px; }
  #main #services-guide { margin-bottom: 40px; }
  #main #services-guide .service-guide-intro { margin-bottom: 14px; }
  #main #services-guide .service-guide-intro h2 { font-size: 18px; line-height: 26px; }
  #main #services-guide .service-guide-options { grid-template-columns: 1fr; }
  #main #services-guide .service-guide-option, #main #services-guide .service-guide-option + .service-guide-option { padding: 20px 0 16px; border-left: 0; }
  #main #services-guide .service-guide-option + .service-guide-option { border-top: 1px solid #343940; }
  #main #services-guide .service-guide-title { margin-bottom: 12px; }
  #main #services-guide .service-guide-title h3 { font-size: 23px; line-height: 31px; margin-bottom: 4px; }
  #main #services-guide .service-guide-title strong { font-size: 16px; line-height: 25px; }
  #main #services-guide .service-guide-description { margin-bottom: 12px; font-size: 15px; line-height: 25px; }
  #main #services-guide .service-guide-link { padding-top: 0; font-size: 14px; }
  .home-page #main #services-guide + .company-overview { grid-template-columns: minmax(0, 1fr); gap: 28px; }
  .home-page #main #services-guide + .company-overview .company-copy { order: 0; }
  .home-page #main #services-guide + .company-overview .company-space { order: 1; aspect-ratio: 16 / 9; }
  .home-page #main #services-guide + .company-overview .company-space > img { object-position: center 42%; }
}
@media (prefers-reduced-motion: reduce) { #main #services-guide .service-guide-option, #main #services-guide .service-guide-link svg { transition: none; } }

/* Service destinations are explicit, self-contained actions on both sites. */
#main #services-guide .service-guide-link{display:inline-flex;align-self:flex-start;justify-content:center;gap:24px;min-height:46px;padding:11px 18px;border:1px solid #f1f3f4;border-radius:8px;background:#f1f3f4;color:#101214;font-size:15px;line-height:22px;text-decoration:none;transition:background 180ms,border-color 180ms}
#main #services-guide .service-guide-link svg{width:18px;height:18px}
#main #services-guide .service-guide-option:hover .service-guide-link{background:#fff;border-color:#fff;color:#000;text-decoration:none}
#main #services-guide .service-guide-option:focus-visible .service-guide-link{outline:2px solid #9db8d1;outline-offset:4px}
@media(max-width:760px){#main #services-guide .service-guide-link{font-size:14px;min-height:46px;padding:11px 16px;gap:20px}}
