/* ==========================================================================
   NMD SERVICE PAGE MASTER STYLESHEET
   Government Testimonials section - 2026-09-28
   Load via <link rel="stylesheet" href="/wp-content/uploads/nmd-service-master.css">
   Scope: every class prefixed .nmd-svc- to avoid theme/Elementor collision.
   ========================================================================== */
.nmd-svc-testimonials{font-family:Poppins,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:#f2f6fc;padding:96px 32px;color:#0a1f3d;-webkit-font-smoothing:antialiased;box-sizing:border-box}
.nmd-svc-testimonials *{box-sizing:border-box}
.nmd-svc-stars{text-align:center;font-size:24px;color:#D4A857;letter-spacing:14px;margin:0 0 22px;line-height:1;text-shadow:0 2px 14px rgba(212,168,87,0.35)}
.nmd-svc-title{text-align:center;font-family:Poppins,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:clamp(28px,3.6vw,46px);font-weight:700;letter-spacing:0.16em;text-transform:uppercase;margin:0 0 56px;color:#000;line-height:1.15}
.nmd-svc-grid{max-width:1240px;margin:0 auto 64px;display:grid;grid-template-columns:1fr 1fr;gap:32px}
.nmd-svc-card{background:#fff;border:1px solid #dde3ee;border-radius:16px;padding:40px 32px;text-align:center;transition:transform .2s ease, box-shadow .2s ease}
.nmd-svc-card:hover{transform:translateY(-3px);box-shadow:0 16px 40px rgba(10,31,61,0.08)}
.nmd-svc-avatar{width:96px;height:96px;border-radius:50%;background:#0D558F;color:#fff;font-size:32px;font-weight:700;line-height:96px;margin:0 auto 18px;letter-spacing:0.04em;font-family:Poppins,system-ui,sans-serif;overflow:hidden;display:flex;align-items:center;justify-content:center}
.nmd-svc-avatar img{width:100%;height:100%;object-fit:cover;display:block;border-radius:50%}
.nmd-svc-name{font-size:22px;font-weight:700;margin:0 0 4px;color:#0a1f3d;font-family:Poppins,system-ui,sans-serif;line-height:1.2}
.nmd-svc-org{font-size:12px;color:#6e7e94;margin:0 0 22px;text-transform:uppercase;letter-spacing:0.12em;font-weight:500}
.nmd-svc-quote{font-family:Lora,Georgia,serif;font-size:16px;line-height:1.7;color:#34465e;margin:0 0 24px;font-style:italic;border-left:3px solid #FF7800;padding-left:16px;text-align:left}
.nmd-svc-feats{list-style:none;padding:18px 0 0;margin:0;text-align:left;border-top:1px solid #dde3ee;display:grid;grid-template-columns:1fr 1fr;gap:14px 18px}
.nmd-svc-feats li{font-size:13px;color:#34465e;line-height:1.45;font-family:Poppins,system-ui,sans-serif}
.nmd-svc-feats li strong{display:flex;align-items:center;gap:8px;color:#36454F;font-weight:700;font-size:14px;letter-spacing:0.02em;margin-bottom:3px;text-transform:capitalize}
.nmd-svc-feats li span{color:#6e7e94;font-size:12px;line-height:1.45;display:block}
.nmd-svc-feat-icon{width:18px;height:18px;flex-shrink:0;color:#FF7800;display:block}
.nmd-svc-feat-icon svg{width:100%;height:100%;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.nmd-svc-stats{max-width:1240px;margin:0 auto;background:linear-gradient(135deg,#0D558F 0%,#0a4a7a 55%,#063a66 100%);border-radius:24px;padding:64px 40px;color:#fff;text-align:center;box-shadow:0 24px 60px -20px rgba(10,31,61,0.45),inset 0 1px 0 rgba(255,255,255,0.08);position:relative;overflow:hidden}
.nmd-svc-stats::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 88% 12%,rgba(255,255,255,0.10),transparent 45%),radial-gradient(circle at 12% 88%,rgba(255,214,107,0.08),transparent 45%),linear-gradient(180deg,rgba(255,255,255,0.04) 0%,transparent 30%);pointer-events:none;border-radius:inherit;z-index:0}
.nmd-svc-stats>*{position:relative;z-index:1}
.nmd-svc-stats-eyebrow{font-size:13px;letter-spacing:0.22em;text-transform:uppercase;color:rgba(255,255,255,0.7);margin:0 0 8px;font-weight:600}
.nmd-svc-stats-title{font-size:clamp(22px,2.2vw,30px);font-weight:700;margin:0 0 40px;color:#fff;font-family:Poppins,system-ui,sans-serif;line-height:1.2;letter-spacing:0.04em;text-transform:uppercase}
.nmd-svc-stats-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,0.18);border-bottom:1px solid rgba(255,255,255,0.18)}
.nmd-svc-stat{padding:32px 18px;border-right:1px solid rgba(255,255,255,0.18);display:flex;flex-direction:column;align-items:center;gap:6px}
.nmd-svc-stat:last-child{border-right:none}
.nmd-svc-stat-icon{width:56px;height:56px;border-radius:50%;background:rgba(255,255,255,0.10);border:1px solid rgba(255,255,255,0.18);display:flex;align-items:center;justify-content:center;color:#FFD66B;margin:0 auto 14px;box-shadow:0 4px 18px rgba(0,0,0,0.12)}
.nmd-svc-stat-icon svg{width:26px;height:26px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.nmd-svc-stat-v{font-family:Poppins,system-ui,sans-serif;font-size:64px;font-weight:700;color:#FFFFFF;line-height:1;letter-spacing:-0.03em;text-shadow:0 2px 20px rgba(0,0,0,0.18)}
.nmd-svc-stat-v sup{font-size:24px;vertical-align:super;font-weight:500}
.nmd-svc-stat-l{font-size:13px;color:rgba(255,255,255,0.85);max-width:240px;line-height:1.45;font-weight:500}
@media (max-width:900px){.nmd-svc-testimonials{padding:64px 20px}.nmd-svc-grid{grid-template-columns:1fr;gap:24px;margin-bottom:48px}.nmd-svc-feats{grid-template-columns:1fr}.nmd-svc-stats{padding:40px 20px;border-radius:14px}.nmd-svc-stats-grid{grid-template-columns:1fr}.nmd-svc-stat{border-right:none;border-bottom:1px solid rgba(255,255,255,0.18);gap:8px;padding:24px 18px}.nmd-svc-stat:last-child{border-bottom:none}.nmd-svc-stat-icon{width:48px;height:48px}.nmd-svc-stat-icon svg{width:22px;height:22px}.nmd-svc-stat-v{font-size:44px}}

/* ======================================================================
   ICONS 2026-09-28 — duotone brand tiles (reuses mega-menu stat-icon palette)
   Fixes: `.nmd-svc-feat-icon svg` never matched (the <svg> IS the icon), so
   feature icons rendered as solid black fills.
   ====================================================================== */
.nmd-svc-feats li strong{gap:10px}
svg.nmd-svc-feat-icon{
  --ic:#1555c1;--ic-bg:rgba(21,85,193,.10);
  width:30px;height:30px;padding:7px;box-sizing:border-box;flex-shrink:0;
  border-radius:9px;color:var(--ic);background:var(--ic-bg);
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ic) 22%,transparent);
  stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;
  transition:transform .4s cubic-bezier(.22,1,.36,1);
}
svg.nmd-svc-feat-icon :is(rect,circle,polygon,path[d$="z"],path[d$="Z"]){fill:currentColor;fill-opacity:.2}
.nmd-svc-feats li:nth-child(4n+2) svg.nmd-svc-feat-icon{--ic:#1f8a4f;--ic-bg:rgba(97,206,112,.18)}
.nmd-svc-feats li:nth-child(4n+3) svg.nmd-svc-feat-icon{--ic:#c45a00;--ic-bg:rgba(255,120,0,.14)}
.nmd-svc-feats li:nth-child(4n+4) svg.nmd-svc-feat-icon{--ic:#1B3360;--ic-bg:rgba(27,51,96,.09)}
.nmd-svc-card:hover svg.nmd-svc-feat-icon{transform:translateY(-2px) rotate(-6deg)}
.nmd-svc-feats li:nth-child(2) svg.nmd-svc-feat-icon{transition-delay:.05s}
.nmd-svc-feats li:nth-child(3) svg.nmd-svc-feat-icon{transition-delay:.1s}
.nmd-svc-feats li:nth-child(4) svg.nmd-svc-feat-icon{transition-delay:.15s}

/* Stats panel (navy): gradient squircle tiles, one brand color per stat */
.nmd-svc-stat-icon{
  --ic:#FF9A3D;
  width:64px;height:64px;border-radius:18px;margin:0 auto 16px;color:var(--ic);
  background:linear-gradient(145deg,color-mix(in srgb,var(--ic) 34%,transparent),color-mix(in srgb,var(--ic) 8%,transparent));
  border:1px solid color-mix(in srgb,var(--ic) 55%,transparent);
  box-shadow:0 0 0 6px color-mix(in srgb,var(--ic) 8%,transparent);
  transition:transform .45s cubic-bezier(.22,1,.36,1);
}
.nmd-svc-stat-icon svg{width:28px;height:28px}
.nmd-svc-stat-icon svg :is(rect,circle,polygon,path[d$="z"],path[d$="Z"]){fill:currentColor;fill-opacity:.22}
.nmd-svc-stat:nth-child(3n+2) .nmd-svc-stat-icon{--ic:#7EE08A}
.nmd-svc-stat:nth-child(3n+3) .nmd-svc-stat-icon{--ic:#8CC2FF}
.nmd-svc-stat:hover .nmd-svc-stat-icon{transform:translateY(-4px) rotate(-6deg)}
@media (max-width:900px){.nmd-svc-stat-icon{width:52px;height:52px;border-radius:15px}.nmd-svc-stat-icon svg{width:24px;height:24px}}
@media (prefers-reduced-motion:reduce){svg.nmd-svc-feat-icon,.nmd-svc-stat-icon{transition:none}.nmd-svc-card:hover svg.nmd-svc-feat-icon,.nmd-svc-stat:hover .nmd-svc-stat-icon{transform:none}}
/* Orange stat tile: brighter so it doesn't read brown on navy (2026-09-29) */
.nmd-svc-stat:nth-child(3n+1) .nmd-svc-stat-icon{--ic:#FFB25C;background:linear-gradient(145deg,rgba(255,178,92,.45),rgba(255,178,92,.16));border-color:rgba(255,178,92,.7)}
