/* NRGD additions on top of the shared D1MC product-story foundation. */

.ss-nrgd-main { --orange:#f58a32; --blue:#276c93; }
.ss-nrgd-hero__visual img { width:126%; }

.ss-nrgd-standard { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(340px,.68fr); align-items:center; gap:90px; }
.ss-nrgd-standard__copy h2 { margin-bottom:24px; font-size:clamp(35px,4vw,53px); font-weight:730; line-height:1.08; }
.ss-nrgd-standard__copy>p:not(.ss-d1mc-eyebrow) { max-width:680px; color:var(--muted); font-size:17px; }
.ss-nrgd-default-card { position:relative; padding:38px; overflow:hidden; border:2px solid var(--orange); border-radius:18px; background:#fff; box-shadow:0 18px 45px rgba(16,33,50,.1); }
.ss-nrgd-default-card>p { margin-bottom:8px; color:#6b7784; font-size:12px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.ss-nrgd-default-card h3 { margin-bottom:22px; font-size:30px; }
.ss-nrgd-default-card ul { margin:0; padding-left:20px; color:var(--muted); }
.ss-nrgd-default-card li { margin:8px 0; }
.ss-nrgd-recommended { position:absolute; top:0; right:0; padding:8px 13px; color:#111923; background:var(--orange); font-size:11px; font-weight:850; letter-spacing:.08em; text-transform:uppercase; }

.ss-nrgd-module-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.ss-nrgd-module-grid article { min-height:260px; padding:30px 27px; border:1px solid var(--line); border-radius:15px; background:#fff; }
.ss-nrgd-module-grid article>span { display:block; margin-bottom:34px; color:var(--orange); font-size:12px; font-weight:850; }
.ss-nrgd-module-grid h3 { margin-bottom:12px; font-size:25px; }
.ss-nrgd-module-grid p { margin:0; color:var(--muted); font-size:14px; }

.ss-nrgd-routes { color:#fff; background:var(--navy); }
.ss-nrgd-firmware-groups { display:grid; gap:42px; }
.ss-nrgd-firmware-group>header { display:grid; grid-template-columns:150px minmax(190px,.7fr) minmax(0,1.6fr); align-items:baseline; gap:20px; margin-bottom:16px; }
.ss-nrgd-firmware-group>header p { margin:0; color:var(--orange); font-size:10px; font-weight:850; letter-spacing:.12em; text-transform:uppercase; }
.ss-nrgd-firmware-group>header h3 { margin:0; color:#fff; font-size:25px; }
.ss-nrgd-firmware-group>header span { color:#afbdca; font-size:14px; }
.ss-nrgd-route-grid { display:grid; gap:12px; }
.ss-nrgd-route-grid--three { grid-template-columns:repeat(3,minmax(0,1fr)); }
.ss-nrgd-route-grid article { min-height:270px; display:flex; flex-direction:column; padding:28px 24px; border:1px solid rgba(255,255,255,.13); border-radius:14px; background:var(--navy-2); }
.ss-nrgd-route-grid article.is-default { border-color:var(--orange); box-shadow:inset 0 4px 0 var(--orange); }
.ss-nrgd-route-grid small { margin-bottom:26px; color:var(--orange); font-size:10px; font-weight:850; letter-spacing:.12em; text-transform:uppercase; }
.ss-nrgd-route-grid h4 { margin:0 0 12px; color:#fff; font-size:24px; }
.ss-nrgd-route-grid p { color:#afbdca; font-size:14px; }
.ss-nrgd-route-grid span { margin-top:auto; padding-top:16px; border-top:1px solid rgba(255,255,255,.1); color:#d9e1e8; font-size:12px; font-weight:750; }

.ss-nrgd-hardware .ss-d1mc-product-stage img { width:132%; mix-blend-mode:multiply; }
.ss-nrgd-hardware .ss-d1mc-copy h2 { margin-bottom:24px; }

@media (max-width:1080px) {
  .ss-nrgd-module-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media (max-width:980px) {
  .ss-nrgd-standard { grid-template-columns:1fr; gap:40px; }
}

@media (max-width:620px) {
  .ss-nrgd-hero__visual img { width:120%; }
  .ss-nrgd-firmware-group>header { grid-template-columns:1fr; gap:6px; }
  .ss-nrgd-route-grid--three,.ss-nrgd-module-grid { grid-template-columns:1fr; }
  .ss-nrgd-module-grid article,.ss-nrgd-route-grid article { min-height:0; }
  .ss-nrgd-default-card { padding:32px 25px; }
}
