
/* NS Electrical — dedicated service pages */
.service-detail-page { background:#f7f9fc; color:#172033; }
.service-detail-hero { position:relative; min-height:560px; display:flex; align-items:center; overflow:hidden; background:#07162e; color:#fff; }
.service-detail-hero::before { content:""; position:absolute; inset:0; background:linear-gradient(90deg, rgba(4,16,38,.94) 0%, rgba(4,16,38,.76) 48%, rgba(4,16,38,.28) 100%), var(--service-image) center/cover no-repeat; transform:scale(1.02); }
.service-detail-hero .container { position:relative; z-index:1; padding-top:110px; padding-bottom:90px; }
.service-detail-kicker { display:inline-flex; align-items:center; gap:10px; margin:0 0 18px; font-size:12px; font-weight:800; letter-spacing:.18em; text-transform:uppercase; color:#9dc4ff; }
.service-detail-kicker::before { content:""; width:38px; height:2px; background:currentColor; }
.service-detail-hero h1 { max-width:850px; margin:0 0 20px; font-size:clamp(42px,6vw,76px); line-height:1.02; letter-spacing:-.04em; }
.service-detail-hero .lead { max-width:720px; margin:0; color:rgba(255,255,255,.82); font-size:clamp(17px,2vw,21px); line-height:1.75; }
.service-detail-main { padding:90px 0; }
.service-intro-grid { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr); gap:70px; align-items:start; }
.service-detail-main h2 { margin:0 0 18px; font-size:clamp(30px,4vw,48px); line-height:1.1; letter-spacing:-.03em; }
.service-detail-main p { color:#586579; line-height:1.8; }
.service-points { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin-top:34px; }
.service-point { padding:24px; border:1px solid #e4e9f1; border-radius:18px; background:#fff; box-shadow:0 12px 35px rgba(18,35,65,.06); transition:transform .3s ease, box-shadow .3s ease; }
.service-point:hover { transform:translateY(-5px); box-shadow:0 18px 45px rgba(18,35,65,.11); }
.service-point span { display:block; margin-bottom:9px; color:#2867c7; font-size:12px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.service-point h3 { margin:0 0 8px; font-size:19px; }
.service-point p { margin:0; font-size:14px; }
.service-side { padding:34px; border-radius:24px; background:#0a1d3a; color:#fff; box-shadow:0 22px 55px rgba(7,25,55,.18); }
.service-side h3 { margin:0 0 16px; font-size:25px; }
.service-side p { color:rgba(255,255,255,.72); }
.service-side ul { margin:24px 0 0; padding:0; list-style:none; }
.service-side li { padding:13px 0; border-bottom:1px solid rgba(255,255,255,.12); color:rgba(255,255,255,.86); }
.service-side li:last-child { border-bottom:0; }
.service-cta { margin-top:80px; padding:55px; border-radius:28px; background:linear-gradient(135deg,#0b2245,#123f79); color:#fff; display:flex; align-items:center; justify-content:space-between; gap:30px; }
.service-cta h2 { margin:0 0 10px; color:#fff; }
.service-cta p { margin:0; color:rgba(255,255,255,.74); }
.service-cta .cta-btn { flex:0 0 auto; display:inline-flex; align-items:center; justify-content:center; padding:15px 24px; border-radius:999px; background:#fff; color:#10294c; font-weight:800; text-decoration:none; transition:transform .25s ease, box-shadow .25s ease; }
.service-cta .cta-btn:hover { transform:translateY(-3px); box-shadow:0 12px 25px rgba(0,0,0,.18); }
@media (max-width:800px) {
 .service-detail-hero { min-height:500px; }
 .service-detail-hero .container { padding-top:90px; padding-bottom:65px; }
 .service-intro-grid { grid-template-columns:1fr; gap:35px; }
 .service-points { grid-template-columns:1fr; }
 .service-detail-main { padding:65px 0; }
 .service-cta { margin-top:55px; padding:35px 25px; flex-direction:column; align-items:flex-start; }
}
@media (prefers-reduced-motion:reduce) { .service-point,.service-cta .cta-btn { transition:none; } }

/* ===== Services dropdown hover bridge fix ===== */
.nav-services::after{
  content:"";
  position:absolute;
  left:-12px;
  right:-12px;
  top:100%;
  height:22px;
  background:transparent;
  z-index:1099;
}
.services-dropdown{
  top:calc(100% + 18px) !important;
}
