.service-detail-page { background: var(--white); color: var(--black); }
.service-detail-page .site-header { position: relative; grid-template-columns: 160px 1fr; background: var(--white); color: var(--black); border-bottom-color: transparent; }
.service-detail-page .site-header.is-scrolled { background: rgba(245,243,239,.94); border-bottom-color: var(--line-light); }
.service-detail-page .primary-nav { background: rgba(255,255,255,.72); border-color: rgba(5,5,5,.08); box-shadow: 0 6px 18px rgba(5,5,5,.08), inset 0 1px 0 rgba(255,255,255,.8); }
.service-detail-page .nav-link { color: rgba(5,5,5,.82); }
.service-detail-page .nav-link:hover { color: var(--black); background: rgba(5,5,5,.06); }
.service-detail-page .nav-link.is-active { color: var(--black); border-color: rgba(5,5,5,.1); background: rgba(255,255,255,.9); box-shadow: 0 2px 8px rgba(5,5,5,.08); }
.service-detail-page .menu-toggle span { background: var(--black); }

.service-detail-main { overflow: hidden; background: var(--white); color: var(--black); }
.service-detail-hero { max-width: 1220px; margin: 0 auto; padding: clamp(88px, 10vw, 142px) 40px 60px; text-align: center; }
.service-detail-eyebrow { margin: 0; color: var(--black); font-size: clamp(17px, 1.8vw, 27px); font-weight: 500; letter-spacing: -.045em; }
.service-detail-line { width: min(760px, 76vw); height: 6px; margin: 21px auto 35px; background: linear-gradient(90deg, var(--cyan), var(--green) 50%, var(--yellow)); }
.service-detail-hero h1 { margin: 0; color: var(--black); font-size: clamp(58px, 8.3vw, 132px); font-weight: 800; line-height: .92; letter-spacing: -.085em; }
.service-detail-intro { display: grid; grid-template-columns: minmax(300px, 450px) minmax(0, 1fr); align-items: center; gap: clamp(40px, 7vw, 120px); max-width: 1180px; margin: 0 auto; padding: 0 40px 0; }
.service-detail-cover { overflow: hidden; aspect-ratio: 902 / 1080; border-radius: 38px; background: #ddd; }
.service-detail-cover img { width: 100%; height: 100%; object-fit: cover; }
.service-detail-copy { color: var(--black); font-size: clamp(15px, 1.35vw, 20px); line-height: 1.14; letter-spacing: -.035em; }
.service-detail-copy p { margin: 0 0 20px; }
.service-detail-copy p:last-child { margin-bottom: 0; }
.service-detail-copy strong { font-weight: 800; }
.service-detail-quote { width: 100vw; min-height: 270px; display: grid; place-items: center; margin: clamp(40px, 5vw, 72px) 0 0; padding: 70px 40px 88px; background: linear-gradient(90deg, var(--cyan) 0%, var(--green) 53%, var(--yellow) 100%); color: var(--pure-white); text-align: center; }
.service-detail-quote p { max-width: 970px; margin: 0; font-size: clamp(27px, 4vw, 57px); font-style: italic; font-weight: 500; line-height: .98; letter-spacing: -.065em; }
.service-detail-quote strong { font-weight: 800; }
.service-detail-wide { position: relative; z-index: 1; max-width: 1160px; margin: -36px auto 0; padding: 0 40px; }
.service-detail-wide img { width: 100%; aspect-ratio: 1920 / 778; object-fit: cover; border-radius: 38px; }
.service-detail-bottom { max-width: 1060px; margin: 0 auto; padding: 62px 40px 150px; color: var(--black); }
.service-detail-bottom p { max-width: 1000px; margin: 0; font-size: clamp(15px, 1.45vw, 21px); line-height: 1.16; letter-spacing: -.035em; }

@media (max-width: 850px) {
  .service-detail-page .site-header { grid-template-columns: 1fr auto; }
  .service-detail-hero { padding: 96px 24px 52px; }
  .service-detail-intro { grid-template-columns: minmax(0, 340px) minmax(0, 1fr); gap: 28px; padding-inline: 24px; }
  .service-detail-copy { font-size: 14px; }
  .service-detail-quote { padding-inline: 24px; }
  .service-detail-wide { padding-inline: 24px; }
  .service-detail-bottom { padding-inline: 24px; padding-bottom: 100px; }
}

@media (max-width: 600px) {
  .service-detail-page .site-header { padding: 16px 20px; }
  .service-detail-hero { padding: 82px 20px 48px; }
  .service-detail-eyebrow { font-size: 17px; }
  .service-detail-line { width: 76vw; height: 5px; margin-block: 16px 25px; }
  .service-detail-hero h1 { font-size: clamp(46px, 13vw, 70px); }
  .service-detail-intro { grid-template-columns: 1fr; gap: 28px; padding-inline: 20px; }
  .service-detail-cover { width: min(100%, 300px); margin-inline: auto; border-radius: 26px; }
  .service-detail-copy { font-size: 15px; line-height: 1.2; }
  .service-detail-quote { min-height: 220px; margin-top: 36px; padding: 58px 20px 70px; }
  .service-detail-quote p { font-size: clamp(27px, 8.2vw, 40px); }
  .service-detail-wide { margin-top: -34px; padding-inline: 20px; }
  .service-detail-wide img { aspect-ratio: 1.45 / 1; border-radius: 26px; }
  .service-detail-bottom { padding: 40px 20px 82px; }
  .service-detail-bottom p { font-size: 15px; }
}
