/* ==================================================
   NX SPACING SYSTEM (EXPLICIT FLEX GAP)
================================================== */

/* 1. SECTION PADDING (TOP, BOTTOM, LEFT, RIGHT) */
.nx-section-xl {
  padding: clamp(5rem, 3.5rem + 7.5vw, 10rem) clamp(1rem, 0.8rem + 2vw, 3rem) !important;
}

.nx-section-lg {
  padding: clamp(4rem, 2.8rem + 6vw, 7.5rem) clamp(1rem, 0.8rem + 2vw, 3rem) !important;
}

.nx-section-md {
  padding: clamp(3rem, 2.2rem + 4vw, 5rem) clamp(1rem, 0.8rem + 2vw, 3rem) !important;
}

.nx-section-sm {
  padding: clamp(2rem, 1.6rem + 2vw, 3.25rem) clamp(1rem, 0.8rem + 2vw, 3rem) !important;
}

.nx-pad-x {
  padding-left: clamp(1rem, 0.8rem + 2vw, 3rem) !important;
  padding-right: clamp(1rem, 0.8rem + 2vw, 3rem) !important;
}


/* 3. MARGIN BOTTOM UTILITIES (UNTUK ELEMEN INDIVIDUAL/TEKS) */
.nx-mb-xl { margin-bottom: clamp(2.5rem, 1.8rem + 3.5vw, 4.5rem) !important; }
.nx-mb-lg { margin-bottom: clamp(2rem, 1.5rem + 2.5vw, 3rem) !important; }
.nx-mb-md { margin-bottom: clamp(1.25rem, 1rem + 1.2vw, 2rem) !important; }
.nx-mb-sm { margin-bottom: clamp(0.75rem, 0.65rem + 0.5vw, 1.25rem) !important; }
.nx-mb-xs { margin-bottom: clamp(0.375rem, 0.35rem + 0.15vw, 0.5rem) !important; }

/* 4. ATOMIC ZERO UTILITIES */
.nx-p-0 { padding: 0 !important; }
.nx-m-0 { margin: 0 !important; }