/* =====================================================================
   Деталь услуги v2 — макет «Шаблон 2 - Услуга - …» (NOIR).
   Дополняет services-v2.css (грузится вместе с ним). Всё под .nxp.
   ===================================================================== */
.nxp { --nx-accent-tint: rgba(231,60,79,.10); }

.nxp .nx-svcd-grid { display: grid; grid-template-columns: 1fr 340px; gap: 48px; align-items: start; }
.nxp .nx-svcd-lead { font-size: 17px; color: var(--nx-ink-2); line-height: 1.7; max-width: 640px; margin: 0 0 8px; }

.nxp .nx-svcd-features { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; background: var(--nx-line); box-shadow: 0 0 0 1px var(--nx-line); margin-top: 22px; }
.nxp .nx-svcd-feature { background: var(--nx-paper); padding: 24px; display: flex; gap: 16px; align-items: flex-start; }
.nxp .nx-svcd-feature .i { width: 40px; height: 40px; background: var(--nx-accent-tint); color: var(--nxa); display: grid; place-items: center; border-radius: var(--nx-r); flex-shrink: 0; }
.nxp .nx-svcd-feature .i svg { width: 20px; height: 20px; }
.nxp .nx-svcd-feature h4 { font-size: 15px; margin-bottom: 5px; }
.nxp .nx-svcd-feature p { margin: 0; font-size: 13.5px; color: var(--nx-ink-3); line-height: 1.55; }

.nxp .nx-svcd-aside .box { position: sticky; top: 96px; box-shadow: inset 0 0 0 1px var(--nx-line); background: var(--nx-paper); padding: 22px; border-radius: var(--nx-r); }
.nxp .nx-svcd-aside h3 { font-size: 15px; margin-bottom: 16px; }
.nxp .nx-svcd-rel { display: flex; align-items: center; gap: 12px; padding: 13px 0; border-top: 1px solid var(--nx-line-2); }
.nxp .nx-svcd-rel:first-of-type { border-top: 0; padding-top: 0; }
.nxp .nx-svcd-rel .i { width: 38px; height: 38px; background: var(--nx-bg); color: var(--nxa); display: grid; place-items: center; border-radius: var(--nx-r); flex-shrink: 0; }
.nxp .nx-svcd-rel .i svg { width: 19px; height: 19px; }
.nxp .nx-svcd-rel .nm { font-size: 13.5px; font-weight: 600; line-height: 1.3; }
.nxp .nx-svcd-rel:hover .nm { color: var(--nxa); }
.nxp .nx-svcd-aside .box .contact { margin-top: 20px; padding-top: 20px; border-top: 1px solid var(--nx-line); }
.nxp .nx-svcd-aside .box .contact .tel { display: block; font-family: var(--nx-display); font-size: 18px; font-weight: 700; }
.nxp .nx-svcd-aside .box .contact .tel:hover { color: var(--nxa); }
.nxp .nx-svcd-aside .box .contact span { display: block; font-size: 12px; color: var(--nx-ink-3); margin: 3px 0 14px; }
.nxp .btnx-block { width: 100%; }
.nxp .btnx-sm { height: 46px; padding: 0 20px; font-size: 14px; }

@media (max-width: 1000px) {
  .nxp .nx-svcd-grid { grid-template-columns: 1fr; }
  .nxp .nx-svcd-aside .box { position: static; }
}
@media (max-width: 680px) {
  .nxp .nx-svcd-features { grid-template-columns: 1fr; }
}
