/* Whiter neutral canvas, shared by both light editions. Dark derivatives append
   their scoped theme after this layer; original photographs stay unchanged. */
body.light.v22-home:not(.v22-dark):where(:not(.nh, .nh *, .nh-home, .nh-home > body)){
  --bg: #fcfcfd;
  --soft: #f4f5f7;
  --header: #fcfcfdf2;
  background-color: #fcfcfd;
  background-image: linear-gradient(
    180deg,
    #f7f9fc 0%,
    #fafbfd 54%,
    #fcfcfd 100%
  );
  background-size: 100% 820px;
  background-repeat: no-repeat;
}
body.light.v22-home:not(.v22-dark).v22-detail-active:where(:not(.nh, .nh *, .nh-home, .nh-home > body)){
  --bg: #fff;
  --header: #fff;
  background: #fff;
  background-image: none;
}
body.light.v22-home:not(.v22-dark) .header:where(:not(.nh, .nh *, .nh-home, .nh-home > body)){
  background: var(--header);
}
body.light.v22-home:not(.v22-dark) #products:where(:not(.nh, .nh *, .nh-home, .nh-home > body)):before,body.light.v22-home:not(.v22-dark) .ending:where(:not(.nh, .nh *, .nh-home, .nh-home > body)):before,body.light.v22-home:not(.v22-dark) .footer:where(:not(.nh, .nh *, .nh-home, .nh-home > body)),body.light.v22-home:not(.v22-dark) .footer:where(:not(.nh, .nh *, .nh-home, .nh-home > body)):before{
  background: var(--bg);
}
body.light.v22-home:not(.v22-dark)
  .v22-detail-page
  :is(.proof-grid, .scene-grid, .sol-case-grid, .sol-pain-grid)
  > div:where(:not(.nh, .nh *, .nh-home, .nh-home > body)){
  background: #f8f9fb;
}
