/* Service-page grounds. Reference: merch-hero.svg; foreground materials stay local. */
.nf-page {
  --nf-ground-start: #EEF4F8;
  --nf-ground-middle: #DAE7F0;
  --nf-ground-end: #AACAE3;
  --nf-ground: linear-gradient(135deg, var(--nf-ground-start), var(--nf-ground-middle) 58%, var(--nf-ground-end));
  --nf-ground-mobile: linear-gradient(135deg, #EEF4F8, #BAD3E6);
  background: #fff;
}
.nf-page :is(.nf-art-stage, .ds-photo-scene, .nf-small-scene, .nf-os-concept,
  .nf-consult-growth, .nf-collab-stage, .nf-os-base, .nf-diagnosis-main) {
  background: var(--nf-ground);
}
.nf-page :is(.os-scene, .os-canvas, .rh-glow) { background: var(--nf-ground); }
.nf-page .ds-photo-inset { background: transparent; }
.nf-page .nf-tint { background: #F5F8FB; }
/* A local blue halo must not recolor the otherwise shared backdrop. */
.nf-page :is(#bf-desktop-halo, #bf-mobile-halo) stop { stop-opacity: 0; }
@media (max-width: 700px) {
  .nf-page :is(.nf-art-stage, .ds-photo-scene, .nf-small-scene, .nf-os-concept,
    .nf-consult-growth, .nf-collab-stage, .nf-os-base, .nf-diagnosis-main,
    .os-scene, .os-canvas, .rh-glow) { background: var(--nf-ground-mobile); }
}

/* Shared ground: one background undertone, matching merchandising's pale lime light.
   Native SVG uses identical normalized ellipse geometry. Foreground is untouched. */
body{
 --nf-lime-wash:radial-gradient(ellipse 29% 47% at 90% 70%,rgb(241 245 200 / .65),rgb(241 245 200 / 0) 100%);
 --nf-lime-ground:var(--nf-lime-wash),linear-gradient(135deg,#EEF4F8,#DAE7F0 58%,#AACAE3);
 --nf-lime-mobile:var(--nf-lime-wash),linear-gradient(135deg,#EEF4F8,#BAD3E6);
}
:is(body.nf-page,body[data-dress="home"]) :is(.nf-art-stage,.ds-photo-scene,.nf-small-scene,.nf-os-concept,
 .nf-consult-growth,.nf-collab-stage,.nf-os-base,.nf-diagnosis-main,
 .os-scene,.os-canvas,.rh-glow,.rh-home-lab,.rh-content,.rh-marketing,.nf-cta){background:var(--nf-lime-ground)}
/* Keep rh-concept-halo transparent at its edges; its local radial light is not a scene ground. */
@media(max-width:700px){
 :is(body.nf-page,body[data-dress="home"]) :is(.nf-art-stage,.ds-photo-scene,.nf-small-scene,.nf-os-concept,
 .nf-consult-growth,.nf-collab-stage,.nf-os-base,.nf-diagnosis-main,
 .os-scene,.os-canvas,.rh-glow,.rh-home-lab,.rh-content,.rh-marketing,.nf-cta){background:var(--nf-lime-mobile)}
}

/* Home process artwork: the frame owns the ground, never the inset halo. */
body[data-dress="home"] .flow .step>.rh-scene{
 background:var(--nf-lime-ground);border:1px solid #D7E4EF;
 border-radius:22px;overflow:hidden;
}
body[data-dress="home"] .flow .rh-concept-halo{background:none}
@media(max-width:700px){body[data-dress="home"] .flow .step>.rh-scene{background:var(--nf-lime-mobile);border-radius:18px}}
