.main-site .landing-hero { min-height: 470px; }
.main-site .landing-hero-copy { max-width: 535px; padding-block: 40px; }
.main-site .landing-hero .kicker { font-size: 14px; }
.main-site .landing-hero .lead { font-size: 21px; line-height: 1.55; }
.entry-paths { display: grid; gap: 2px; margin-top: 22px; max-width: 355px; }
.entry-paths a { display: flex; align-items: center; justify-content: space-between; gap: 18px; min-height: 44px; color: #fff; font-size: 16px; line-height: 1.5; text-decoration: none; border-bottom: 1px solid #ffffff40; padding-block: 8px; }
.entry-paths a:hover { color: #f4b6b7; border-color: #f4b6b7; }
.entry-paths svg { width: 20px; height: 20px; flex: 0 0 20px; }
.entry-paths a:focus-visible { outline: 2px solid #fff; outline-offset: 4px; }
.main-site .coverage-strip { background: #f4f5f6; padding-block: 30px; border-bottom: 1px solid var(--line); }
.coverage-strip > .container { display: flex; gap: 20px; align-items: flex-start; }
.coverage-strip > .container > svg { color: var(--red); flex: 0 0 25px; width: 25px; height: 25px; margin-top: 3px; }
.coverage-strip strong { display: block; font-size: 18px; margin-bottom: 6px; }
.coverage-strip p { max-width: 860px; font-size: 16px; line-height: 1.7; color: var(--muted); margin-bottom: 6px; }
.coverage-strip a { display: inline-flex; gap: 10px; align-items: center; min-height: 36px; font-size: 14px; font-weight: 600; text-decoration: none; }
.coverage-strip a svg { width: 17px; height: 17px; }
.main-site .bureau-location { font-size: 15px; line-height: 1.7; }
.main-site .landing-hero[data-image="work"] .hero-visual { width: 82%; }
.main-site .landing-hero[data-image="work"] .hero-visual img { object-position: right center; }
.review-partners { padding-block: 45px; border-block: 1px solid var(--line); }
.review-partners h2 { font-size: 25px; margin-bottom: 28px; }
.review-notice { padding: 12px 16px; border-left: 3px solid #be292e; background: #f4f5f6; font-size: 14px; line-height: 1.65; margin-bottom: 28px; }
.review-logo-list { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 32px; list-style: none; padding: 0; margin: 0; }
.review-logo-list li { display: flex; align-items: center; justify-content: center; height: 80px; }
.review-logo-list img { width: auto; height: auto; max-width: 190px; max-height: 62px; object-fit: contain; }
.review-logo-list .review-symbol { width: 62px; height: 62px; }
.review-system-list { display: flex; align-items: center; flex-wrap: wrap; gap: 36px 54px; margin-top: 25px; }
.review-system-list figure { margin: 0; width: 185px; min-height: 65px; display: flex; flex-direction: column; justify-content: center; gap: 10px; }
.review-system-list img { max-width: 175px; height: 34px; object-fit: contain; object-position: left center; }
.review-system-list figcaption { font-size: 12px; color: var(--muted); }
.review-partners details { margin-top: 25px; font-size: 14px; }
.review-partners summary { cursor: pointer; min-height: 44px; }
.review-partners details p { font-size: 14px; line-height: 1.7; }
@media (max-width: 900px) {
  .main-site .landing-hero-copy { max-width: 455px; }
  .main-site .landing-hero .lead { font-size: 19px; }
}
@media (max-width: 640px) {
  .main-site .landing-hero { min-height: 0; padding-top: 135px; padding-bottom: 28px; }
  .main-site .landing-hero-copy { padding: 0; max-width: none; }
  .main-site .landing-hero .lead { font-size: 18px; }
  .main-site .landing-hero .kicker { font-size: 12px; }
  .main-site .landing-hero .actions { margin-top: 20px; }
  .entry-paths { max-width: 100%; margin-top: 18px; }
  .entry-paths a { font-size: 15px; }
  .coverage-strip > .container { gap: 14px; }
  .main-site .coverage-strip { padding-block: 26px; }
  .coverage-strip p { font-size: 15px; }
  .main-site .landing-hero[data-image="work"] .hero-visual { width: 100%; height: 245px; }
  .main-site .landing-hero[data-image="work"] .hero-visual img { object-position: 85% 35%; }
  .review-logo-list { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; }
  .review-logo-list img { max-width: 125px; max-height: 52px; }
  .review-system-list { gap: 24px; }
}
@media (max-width: 640px) and (max-height: 750px) {
  .main-site .landing-hero { padding-top: 92px; padding-bottom: 24px; }
  .main-site .landing-hero .hero-visual,
  .main-site .landing-hero[data-image="work"] .hero-visual { height: 198px; }
}
