.service-page { background: #fff; }
.service-hero { position: relative; min-height: 690px; padding: 10rem 0 7rem; color: #fff; background: #0d1117; overflow: hidden; }
.service-hero::after { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(90deg, #0d1117 0%, rgba(13,17,23,.97) 39%, rgba(13,17,23,.54) 66%, rgba(13,17,23,.12) 100%); }
.service-hero-image { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.service-hero .container { position: relative; z-index: 2; }
.service-eyebrow, .service-kicker { color: #cc3333; font-size: .76rem; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; }
.service-hero .service-eyebrow { display: inline-flex; align-items: center; color: #ffb23e; }
.service-hero .service-eyebrow::before { content: ""; width: 28px; height: 2px; margin-right: .6rem; background: currentColor; }
.service-hero h1 { max-width: 800px; margin-top: 1.2rem; font-size: clamp(2.55rem, 5vw, 4.6rem); line-height: 1.03; letter-spacing: -.045em; }
.service-hero-copy { max-width: 680px; color: rgba(255,255,255,.76); font-size: 1.12rem; line-height: 1.72; }
.service-trust { display: flex; flex-wrap: wrap; gap: 1rem 1.5rem; margin-top: 1.5rem; color: rgba(255,255,255,.72); font-size: .86rem; }
.service-trust span { display: flex; align-items: center; gap: .45rem; }
.service-trust i { color: #ffb23e; }
.service-link { display: inline-flex; align-items: center; padding: .7rem .2rem; color: inherit; font-weight: 600; }
.service-link:hover { color: #ffb23e; text-decoration: none; }
.service-link i { margin-left: .55rem; transition: transform .2s ease; }
.service-link:hover i { transform: translateX(4px); }
.service-section { padding: 7rem 0; }
.service-section-soft { background: #f6f7fa; }
.service-heading { max-width: 820px; margin-top: .7rem; font-size: clamp(2rem, 4vw, 3.25rem); line-height: 1.09; letter-spacing: -.035em; }
.service-lead { max-width: 760px; color: #68707d; font-size: 1.08rem; line-height: 1.75; }
.service-benefit { height: 100%; padding: 2rem; border: 1px solid #e7e9ef; border-radius: 20px; background: #fff; box-shadow: 0 18px 45px rgba(17,24,39,.05); }
.service-benefit-icon { display: inline-flex; align-items: center; justify-content: center; width: 52px; height: 52px; margin-bottom: 1.4rem; color: #cc3333; border-radius: 15px; background: rgba(204,51,51,.09); font-size: 1.25rem; }
.service-benefit h3 { font-size: 1.16rem; }
.service-benefit p, .service-feature-copy p { color: #68707d; line-height: 1.7; }
.service-feature { padding: 4rem 0; }
.service-feature-photo { display: block; width: 100%; height: auto; border-radius: 26px; box-shadow: 0 26px 65px rgba(17,24,39,.14); }
.service-phone-panel { display: flex; align-items: center; justify-content: center; gap: 1rem; min-height: 590px; padding: 2rem; overflow: hidden; border-radius: 28px; background: #141a25; }
.service-phone { display: block; width: min(44%, 245px); height: auto; border: 7px solid #080b10; border-radius: 25px; box-shadow: 0 20px 55px rgba(0,0,0,.3); }
.service-points { display: grid; gap: 1rem; margin-top: 1.7rem; padding: 0; list-style: none; }
.service-points li { display: flex; gap: .85rem; color: #5f6876; line-height: 1.62; }
.service-points i { display: inline-flex; flex: 0 0 32px; align-items: center; justify-content: center; width: 32px; height: 32px; color: #fff; border-radius: 50%; background: #cc3333; }
.service-note { margin-top: 1.6rem; padding: 1.25rem 1.4rem; color: #343b49; border-left: 3px solid #cc3333; border-radius: 0 12px 12px 0; background: #f4f5f8; line-height: 1.65; }
.service-module-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; margin-top: 2rem; }
.service-module { padding: 1.35rem; border: 1px solid #e6e8ed; border-radius: 16px; background: #fff; }
.service-module h3 { margin-bottom: .45rem; font-size: 1rem; }
.service-module p { margin: 0; font-size: .9rem; }
.service-faq { max-width: 920px; margin: 3.5rem auto 0; border-top: 1px solid #dde1e8; }
.service-faq .list-group-item { padding: 1.5rem 0; border-color: #dde1e8; background: transparent; }
.service-faq .collapse-toggle { display: flex; gap: 1rem; width: 100%; padding: 0; color: #172033; text-align: left; line-height: 1.45; border: 0; background: transparent; }
.service-faq .collapse-toggle::after { color: #cc3333; }
.service-faq-answer { max-width: 810px; padding-top: 1rem; color: #606875; line-height: 1.75; }
@media (max-width: 991.98px) {
  .service-hero { min-height: 620px; padding: 9rem 0 5rem; }
  .service-hero::after { background: linear-gradient(90deg, rgba(13,17,23,.98), rgba(13,17,23,.78)); }
  .service-section { padding: 5rem 0; }
  .service-feature { padding: 3rem 0; }
}
@media (max-width: 767.98px) {
  .service-hero { min-height: 650px; }
  .service-hero-image { object-position: 62% center; opacity: .52; }
  .service-hero h1 { font-size: 2.65rem; }
  .service-module-grid { grid-template-columns: 1fr; }
  .service-phone-panel { min-height: 470px; padding: 1.15rem; }
  .service-phone { width: 47%; }
}
