/* Custom block spacing. nb_get_block_spacing() adds a class per side that is set (top/bottom),
   so an unset side keeps the block's own padding/margin.
   - !important + two classes beat block CSS; block rules that force a margin/padding with !important
     (element-04, 14, 15) exclude .has-custom-spacing instead.
   - Mobile (-m) falls back to the desktop value when only desktop is set. */

.has-custom-spacing.nb-pt { padding-top: var(--nb-padding-top) !important; }
.has-custom-spacing.nb-pb { padding-bottom: var(--nb-padding-bottom) !important; }
.has-custom-spacing.nb-mt { margin-top: var(--nb-margin-top) !important; }
.has-custom-spacing.nb-mb { margin-bottom: var(--nb-margin-bottom) !important; }

@media (max-width: 900px) {
  .has-custom-spacing.nb-pt-m { padding-top: var(--nb-padding-top-mobile) !important; }
  .has-custom-spacing.nb-pb-m { padding-bottom: var(--nb-padding-bottom-mobile) !important; }
  .has-custom-spacing.nb-mt-m { margin-top: var(--nb-margin-top-mobile) !important; }
  .has-custom-spacing.nb-mb-m { margin-bottom: var(--nb-margin-bottom-mobile) !important; }
}
