/*
 * Corafter Phase 18 — service hero composition repair.
 * Shared by all eight service detail pages through includes/service_page.php.
 * Layout: 30% navy lead-in + 70% edge-to-edge poster with a soft blended seam.
 */
.service-page .service-hero {
  position:relative!important; isolation:isolate!important; display:flex!important; align-items:stretch!important;
  width:100%!important; height:calc(100vh - var(--cora-header-offset,72px))!important;
  height:calc(100svh - var(--cora-header-offset,72px))!important; min-height:640px!important; max-height:none!important;
  margin:0!important; padding:0!important; overflow:hidden!important;
  background:linear-gradient(115deg,#06183d 0%,#08275f 58%,#073e91 100%)!important;
}
.service-page .service-hero>.hero-orb,.service-page .service-hero>.hero-grid,.service-page .service-hero>.wave,
.service-page .service-hero .service-art-backdrop,.service-page .service-hero .service-hero-3d-stack,
.service-page .service-hero .service-main-3d,.service-page .service-hero .hero-mini-3d,
.service-page .service-hero .lottie-shell,.service-page .service-hero .service-float {display:none!important}
.service-page .service-hero>.service-hero-grid {
  position:relative!important; z-index:3!important; display:flex!important; align-items:center!important;
  box-sizing:border-box!important; width:100%!important; max-width:none!important; height:100%!important; min-height:0!important;
  margin:0!important; padding:clamp(28px,4vh,48px) max(24px,calc((100vw - 1236px)/2))!important;
}
.service-page .service-hero .service-hero-visual {
  position:absolute!important; inset:0!important; z-index:0!important; display:block!important; width:100%!important; height:100%!important;
  max-width:none!important; min-height:0!important; margin:0!important; padding:0!important; overflow:hidden!important;
  opacity:1!important; transform:none!important; pointer-events:none!important;
}
.service-page .service-hero .service-poster-frame {
  position:absolute!important; inset:0 0 0 30%!important; display:block!important; width:70%!important; height:100%!important;
  max-width:none!important; margin:0!important; padding:0!important; border:0!important; border-radius:0!important;
  overflow:hidden!important; box-shadow:none!important; background:transparent!important; transform:none!important;
}
.service-page .service-hero .service-poster-frame img {
  position:absolute!important; inset:0!important; display:block!important; width:100%!important; height:100%!important;
  max-width:none!important; max-height:none!important; margin:0!important; padding:0!important; border:0!important; border-radius:0!important;
  object-fit:cover!important; object-position:64% center!important; opacity:1!important;
  filter:saturate(1.04) contrast(1.02)!important; animation:none!important;
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.25) 7%,rgba(0,0,0,.82) 19%,#000 31%)!important;
  mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.25) 7%,rgba(0,0,0,.82) 19%,#000 31%)!important;
}
.service-page .service-hero .service-poster-frame::after {
  content:""!important; position:absolute!important; inset:0!important; z-index:1!important; display:block!important; pointer-events:none!important;
  background:linear-gradient(90deg,rgba(5,20,54,.98) 0%,rgba(5,22,60,.92) 12%,rgba(5,25,67,.72) 28%,rgba(5,25,67,.40) 45%,rgba(5,25,67,.12) 65%,rgba(5,25,67,0) 82%),
             linear-gradient(0deg,rgba(4,17,47,.24) 0%,transparent 36%,rgba(4,17,47,.08) 100%)!important;
}
.service-page .service-hero::before {
  content:""!important; position:absolute!important; inset:0!important; z-index:1!important; display:block!important; pointer-events:none!important;
  background:linear-gradient(90deg,#06183d 0%,#06183d 24%,rgba(6,24,61,.98) 30%,rgba(7,29,73,.88) 36%,rgba(7,29,73,.56) 45%,rgba(7,29,73,.18) 56%,rgba(7,29,73,0) 68%)!important;
}
.service-page .service-hero .service-hero-copy {
  position:relative!important; z-index:4!important; flex:0 1 500px!important; width:min(37vw,500px)!important;
  max-width:500px!important; min-width:0!important; margin:0!important; padding:0!important; color:#fff!important;
  text-shadow:0 1px 2px rgba(0,0,0,.14);
}
.service-page .service-hero .breadcrumb {
  display:flex!important; flex-wrap:wrap!important; align-items:center!important; gap:8px!important;
  margin:0 0 clamp(15px,2vh,23px)!important; color:rgba(211,228,255,.82)!important; font-size:.82rem!important; line-height:1.5!important;
}
.service-page .service-hero .breadcrumb a {color:inherit!important;text-decoration:none!important}
.service-page .service-hero .breadcrumb strong {color:rgba(239,246,255,.98)!important}
.service-page .service-hero .eyebrow {
  margin:0 0 12px!important; color:#8fc8ff!important; font-size:.78rem!important; font-weight:800!important;
  letter-spacing:.16em!important; line-height:1.5!important;
}
.service-page .service-hero h1 {
  max-width:10.8ch!important; margin:0 0 17px!important; color:#fff!important;
  font-family:var(--font-display,Manrope,sans-serif)!important; font-size:clamp(2.45rem,3.55vw,3.65rem)!important;
  font-weight:800!important; line-height:1.045!important; letter-spacing:-.052em!important; text-wrap:balance!important; overflow-wrap:normal!important;
}
.service-page .service-hero .service-hero-copy h1::after {display:none!important;content:none!important}
.service-page .service-hero .service-hero-lead {
  max-width:44ch!important; margin:0!important; color:rgba(232,241,255,.95)!important;
  font-size:clamp(.98rem,1.04vw,1.08rem)!important; line-height:1.7!important;
}
.service-page .service-hero .hero-actions {
  display:flex!important; flex-wrap:wrap!important; align-items:center!important; gap:12px!important; margin:22px 0 0!important;
}
.service-page .service-hero .hero-actions .btn {flex:0 0 auto!important;min-height:48px!important;white-space:nowrap!important}
.service-page .service-hero .service-hero-trust {
  display:flex!important; flex-wrap:wrap!important; gap:7px 14px!important; margin-top:16px!important;
  color:rgba(211,228,255,.94)!important; font-size:.78rem!important; line-height:1.55!important;
}
.service-page .service-hero .service-hero-trust span {white-space:normal!important}
.service-page .service-signature {position:relative!important;z-index:2!important;margin:0!important;padding:18px 0 12px!important;background:#fff!important}
.service-page .service-signature .container {display:flex!important;justify-content:center!important;flex-wrap:wrap!important;gap:10px!important}
.service-page .service-signature-chip {
  display:inline-flex!important;align-items:center!important;gap:8px!important;padding:9px 13px!important;
  border:1px solid #dce7fa!important;border-radius:999px!important;background:#f7faff!important;color:#15264a!important;
  box-shadow:0 8px 22px rgba(7,27,69,.05)!important;font-size:11px!important;font-weight:800!important;letter-spacing:.06em!important;line-height:1.3!important;
}
.service-page .service-signature-chip i {display:inline-block!important;width:7px!important;height:7px!important;flex:0 0 7px!important;border-radius:50%!important;background:linear-gradient(135deg,#2f6bff,#4b4cff)!important;box-shadow:0 0 0 4px rgba(47,107,255,.10)!important}
.service-page .service-stats-strip {position:relative!important;z-index:1!important;margin:0!important;background:#fff!important}
@media(max-width:1100px) and (min-width:761px) {
  .service-page .service-hero {min-height:620px!important}
  .service-page .service-hero>.service-hero-grid {padding-inline:36px!important}
  .service-page .service-hero .service-poster-frame {left:30%!important;width:70%!important}
  .service-page .service-hero .service-hero-copy {width:min(44vw,470px)!important;flex-basis:470px!important}
  .service-page .service-hero h1 {font-size:clamp(2.35rem,4.2vw,3.2rem)!important;max-width:10.5ch!important}
  .service-page .service-hero::before {background:linear-gradient(90deg,#06183d 0%,#06183d 25%,rgba(6,24,61,.97) 35%,rgba(7,29,73,.78) 47%,rgba(7,29,73,.18) 67%,transparent 78%)!important}
}
@media(max-width:760px) {
  .service-page .service-hero {height:auto!important;min-height:calc(100svh - var(--cora-header-offset,72px))!important}
  .service-page .service-hero .service-poster-frame {inset:0!important;width:100%!important;height:100%!important}
  .service-page .service-hero .service-poster-frame img {object-position:66% center!important;-webkit-mask-image:none!important;mask-image:none!important}
  .service-page .service-hero .service-poster-frame::after {background:linear-gradient(90deg,rgba(5,20,54,.96) 0%,rgba(5,22,60,.88) 52%,rgba(5,25,67,.62) 100%),linear-gradient(0deg,rgba(4,17,47,.44) 0%,rgba(4,17,47,.20) 50%,rgba(4,17,47,.42) 100%)!important}
  .service-page .service-hero::before {background:linear-gradient(90deg,rgba(6,24,61,.86) 0%,rgba(7,29,73,.62) 62%,rgba(7,29,73,.28) 100%)!important}
  .service-page .service-hero>.service-hero-grid {min-height:calc(100svh - var(--cora-header-offset,72px))!important;height:auto!important;padding:32px 24px 36px!important}
  .service-page .service-hero .service-hero-copy {flex:1 1 auto!important;width:100%!important;max-width:560px!important}
  .service-page .service-hero h1 {max-width:11.5ch!important;font-size:clamp(2.25rem,8vw,3.15rem)!important;line-height:1.04!important}
  .service-page .service-hero .service-hero-lead {max-width:43ch!important;font-size:1rem!important}
  .service-page .service-signature .container {justify-content:flex-start!important;overflow-x:auto!important;flex-wrap:nowrap!important;padding-bottom:5px!important}
  .service-page .service-signature-chip {flex:0 0 auto!important;white-space:nowrap!important}
}
@media(max-width:420px) {
  .service-page .service-hero>.service-hero-grid {padding-inline:19px!important}
  .service-page .service-hero h1 {font-size:clamp(2.05rem,9.6vw,2.55rem)!important}
  .service-page .service-hero .hero-actions .btn {min-height:46px!important;padding-inline:15px!important}
}
@media(max-height:760px) and (min-width:761px) {
  .service-page .service-hero {min-height:590px!important}
  .service-page .service-hero>.service-hero-grid {padding-block:22px!important}
  .service-page .service-hero .breadcrumb {margin-bottom:12px!important}
  .service-page .service-hero h1 {font-size:clamp(2.3rem,3.25vw,3.3rem)!important;margin-bottom:13px!important}
  .service-page .service-hero .hero-actions {margin-top:16px!important}
  .service-page .service-hero .service-hero-trust {margin-top:11px!important}
}
@media(prefers-reduced-motion:reduce) {
  .service-page .service-hero *, .service-page .service-hero *::before, .service-page .service-hero *::after {animation:none!important;transition:none!important}
}
