:root {
    --spacing-1: clamp(0.5rem, 0.52vw, 0.52vw);
    --spacing-2: clamp(1.0rem, 1.04vw, 1.04vw);
    --spacing-3: clamp(1.5rem, 1.56vw, 1.56vw);
    --spacing-4: clamp(2.0rem, 2.08vw, 2.08vw);
    --spacing-5: clamp(2.5rem, 2.6vw, 2.6vw);
    --spacing-6: clamp(3.0rem, 3.12vw, 3.12vw);
    --spacing-7: clamp(3.5rem, 3.64vw, 3.64vw);
    --spacing-8: clamp(4.0rem, 4.16vw, 4.16vw);
    --spacing-9: clamp(4.5rem, 4.68vw, 4.68vw);
    --spacing-10: clamp(5.0rem, 5.2vw, 5.2vw);
    --spacing-11: clamp(5.5rem, 5.72vw, 5.72vw);
    --spacing-12: clamp(6.0rem, 6.24vw, 6.24vw);
    --spacing-13: clamp(6.5rem, 6.76vw, 6.76vw);
    --spacing-14: clamp(7.0rem, 7.28vw, 7.28vw);
    --spacing-15: clamp(7.5rem, 7.8vw, 7.8vw);
}

.p-1 { padding: var(--spacing-1) !important; }
.p-2 { padding: var(--spacing-2) !important; }
.p-3 { padding: var(--spacing-3) !important; }
.p-4 { padding: var(--spacing-4) !important; }
.p-5 { padding: var(--spacing-5) !important; }
.p-6 { padding: var(--spacing-6) !important; }
.p-7 { padding: var(--spacing-7) !important; }
.p-8 { padding: var(--spacing-8) !important; }
.p-9 { padding: var(--spacing-9) !important; }
.p-10 { padding: var(--spacing-10) !important; }
.p-11 { padding: var(--spacing-11) !important; }
.p-12 { padding: var(--spacing-12) !important; }
.p-13 { padding: var(--spacing-13) !important; }
.p-14 { padding: var(--spacing-14) !important; }
.p-15 { padding: var(--spacing-15) !important; }

.px-1 { padding-left: var(--spacing-1) !important; padding-right: var(--spacing-1) !important; }
.px-2 { padding-left: var(--spacing-2) !important; padding-right: var(--spacing-2) !important; }
.px-3 { padding-left: var(--spacing-3) !important; padding-right: var(--spacing-3) !important; }
.px-4 { padding-left: var(--spacing-4) !important; padding-right: var(--spacing-4) !important; }
.px-5 { padding-left: var(--spacing-5) !important; padding-right: var(--spacing-5) !important; }
.px-6 { padding-left: var(--spacing-6) !important; padding-right: var(--spacing-6) !important; }
.px-7 { padding-left: var(--spacing-7) !important; padding-right: var(--spacing-7) !important; }
.px-8 { padding-left: var(--spacing-8) !important; padding-right: var(--spacing-8) !important; }
.px-9 { padding-left: var(--spacing-9) !important; padding-right: var(--spacing-9) !important; }
.px-10 { padding-left: var(--spacing-10) !important; padding-right: var(--spacing-10) !important; }
.px-11 { padding-left: var(--spacing-11) !important; padding-right: var(--spacing-11) !important; }
.px-12 { padding-left: var(--spacing-12) !important; padding-right: var(--spacing-12) !important; }
.px-13 { padding-left: var(--spacing-13) !important; padding-right: var(--spacing-13) !important; }
.px-14 { padding-left: var(--spacing-14) !important; padding-right: var(--spacing-14) !important; }
.px-15 { padding-left: var(--spacing-15) !important; padding-right: var(--spacing-15) !important; }

.py-1 { padding-top: var(--spacing-1) !important; padding-bottom: var(--spacing-1) !important; }
.py-2 { padding-top: var(--spacing-2) !important; padding-bottom: var(--spacing-2) !important; }
.py-3 { padding-top: var(--spacing-3) !important; padding-bottom: var(--spacing-3) !important; }
.py-4 { padding-top: var(--spacing-4) !important; padding-bottom: var(--spacing-4) !important; }
.py-5 { padding-top: var(--spacing-5) !important; padding-bottom: var(--spacing-5) !important; }
.py-6 { padding-top: var(--spacing-6) !important; padding-bottom: var(--spacing-6) !important; }
.py-7 { padding-top: var(--spacing-7) !important; padding-bottom: var(--spacing-7) !important; }
.py-8 { padding-top: var(--spacing-8) !important; padding-bottom: var(--spacing-8) !important; }
.py-9 { padding-top: var(--spacing-9) !important; padding-bottom: var(--spacing-9) !important; }
.py-10 { padding-top: var(--spacing-10) !important; padding-bottom: var(--spacing-10) !important; }
.py-11 { padding-top: var(--spacing-11) !important; padding-bottom: var(--spacing-11) !important; }
.py-12 { padding-top: var(--spacing-12) !important; padding-bottom: var(--spacing-12) !important; }
.py-13 { padding-top: var(--spacing-13) !important; padding-bottom: var(--spacing-13) !important; }
.py-14 { padding-top: var(--spacing-14) !important; padding-bottom: var(--spacing-14) !important; }
.py-15 { padding-top: var(--spacing-15) !important; padding-bottom: var(--spacing-15) !important; }

.pr-1 { padding-right: var(--spacing-1) !important; }
.pr-2 { padding-right: var(--spacing-2) !important; }
.pr-3 { padding-right: var(--spacing-3) !important; }
.pr-4 { padding-right: var(--spacing-4) !important; }
.pr-5 { padding-right: var(--spacing-5) !important; }
.pr-6 { padding-right: var(--spacing-6) !important; }
.pr-7 { padding-right: var(--spacing-7) !important; }
.pr-8 { padding-right: var(--spacing-8) !important; }
.pr-9 { padding-right: var(--spacing-9) !important; }
.pr-10 { padding-right: var(--spacing-10) !important; }
.pr-11 { padding-right: var(--spacing-11) !important; }
.pr-12 { padding-right: var(--spacing-12) !important; }
.pr-13 { padding-right: var(--spacing-13) !important; }
.pr-14 { padding-right: var(--spacing-14) !important; }
.pr-15 { padding-right: var(--spacing-15) !important; }

.pl-1 { padding-left: var(--spacing-1) !important; }
.pl-2 { padding-left: var(--spacing-2) !important; }
.pl-3 { padding-left: var(--spacing-3) !important; }
.pl-4 { padding-left: var(--spacing-4) !important; }
.pl-5 { padding-left: var(--spacing-5) !important; }
.pl-6 { padding-left: var(--spacing-6) !important; }
.pl-7 { padding-left: var(--spacing-7) !important; }
.pl-8 { padding-left: var(--spacing-8) !important; }
.pl-9 { padding-left: var(--spacing-9) !important; }
.pl-10 { padding-left: var(--spacing-10) !important; }
.pl-11 { padding-left: var(--spacing-11) !important; }
.pl-12 { padding-left: var(--spacing-12) !important; }
.pl-13 { padding-left: var(--spacing-13) !important; }
.pl-14 { padding-left: var(--spacing-14) !important; }
.pl-15 { padding-left: var(--spacing-15) !important; }

.pt-1 { padding-top: var(--spacing-1) !important; }
.pt-2 { padding-top: var(--spacing-2) !important; }
.pt-3 { padding-top: var(--spacing-3) !important; }
.pt-4 { padding-top: var(--spacing-4) !important; }
.pt-5 { padding-top: var(--spacing-5) !important; }
.pt-6 { padding-top: var(--spacing-6) !important; }
.pt-7 { padding-top: var(--spacing-7) !important; }
.pt-8 { padding-top: var(--spacing-8) !important; }
.pt-9 { padding-top: var(--spacing-9) !important; }
.pt-10 { padding-top: var(--spacing-10) !important; }
.pt-11 { padding-top: var(--spacing-11) !important; }
.pt-12 { padding-top: var(--spacing-12) !important; }
.pt-13 { padding-top: var(--spacing-13) !important; }
.pt-14 { padding-top: var(--spacing-14) !important; }
.pt-15 { padding-top: var(--spacing-15) !important; }

.pb-1 { padding-bottom: var(--spacing-1) !important; }
.pb-2 { padding-bottom: var(--spacing-2) !important; }
.pb-3 { padding-bottom: var(--spacing-3) !important; }
.pb-4 { padding-bottom: var(--spacing-4) !important; }
.pb-5 { padding-bottom: var(--spacing-5) !important; }
.pb-6 { padding-bottom: var(--spacing-6) !important; }
.pb-7 { padding-bottom: var(--spacing-7) !important; }
.pb-8 { padding-bottom: var(--spacing-8) !important; }
.pb-9 { padding-bottom: var(--spacing-9) !important; }
.pb-10 { padding-bottom: var(--spacing-10) !important; }
.pb-11 { padding-bottom: var(--spacing-11) !important; }
.pb-12 { padding-bottom: var(--spacing-12) !important; }
.pb-13 { padding-bottom: var(--spacing-13) !important; }
.pb-14 { padding-bottom: var(--spacing-14) !important; }
.pb-15 { padding-bottom: var(--spacing-15) !important; }

.m-1 { margin: var(--spacing-1) !important; }
.m-2 { margin: var(--spacing-2) !important; }
.m-3 { margin: var(--spacing-3) !important; }
.m-4 { margin: var(--spacing-4) !important; }
.m-5 { margin: var(--spacing-5) !important; }
.m-6 { margin: var(--spacing-6) !important; }
.m-7 { margin: var(--spacing-7) !important; }
.m-8 { margin: var(--spacing-8) !important; }
.m-9 { margin: var(--spacing-9) !important; }
.m-10 { margin: var(--spacing-10) !important; }
.m-11 { margin: var(--spacing-11) !important; }
.m-12 { margin: var(--spacing-12) !important; }
.m-13 { margin: var(--spacing-13) !important; }
.m-14 { margin: var(--spacing-14) !important; }
.m-15 { margin: var(--spacing-15) !important; }

.mx-1 { margin-left: var(--spacing-1) !important; margin-right: var(--spacing-1) !important; }
.mx-2 { margin-left: var(--spacing-2) !important; margin-right: var(--spacing-2) !important; }
.mx-3 { margin-left: var(--spacing-3) !important; margin-right: var(--spacing-3) !important; }
.mx-4 { margin-left: var(--spacing-4) !important; margin-right: var(--spacing-4) !important; }
.mx-5 { margin-left: var(--spacing-5) !important; margin-right: var(--spacing-5) !important; }
.mx-6 { margin-left: var(--spacing-6) !important; margin-right: var(--spacing-6) !important; }
.mx-7 { margin-left: var(--spacing-7) !important; margin-right: var(--spacing-7) !important; }
.mx-8 { margin-left: var(--spacing-8) !important; margin-right: var(--spacing-8) !important; }
.mx-9 { margin-left: var(--spacing-9) !important; margin-right: var(--spacing-9) !important; }
.mx-10 { margin-left: var(--spacing-10) !important; margin-right: var(--spacing-10) !important; }
.mx-11 { margin-left: var(--spacing-11) !important; margin-right: var(--spacing-11) !important; }
.mx-12 { margin-left: var(--spacing-12) !important; margin-right: var(--spacing-12) !important; }
.mx-13 { margin-left: var(--spacing-13) !important; margin-right: var(--spacing-13) !important; }
.mx-14 { margin-left: var(--spacing-14) !important; margin-right: var(--spacing-14) !important; }
.mx-15 { margin-left: var(--spacing-15) !important; margin-right: var(--spacing-15) !important; }

.my-1 { margin-top: var(--spacing-1) !important; margin-bottom: var(--spacing-1) !important; }
.my-2 { margin-top: var(--spacing-2) !important; margin-bottom: var(--spacing-2) !important; }
.my-3 { margin-top: var(--spacing-3) !important; margin-bottom: var(--spacing-3) !important; }
.my-4 { margin-top: var(--spacing-4) !important; margin-bottom: var(--spacing-4) !important; }
.my-5 { margin-top: var(--spacing-5) !important; margin-bottom: var(--spacing-5) !important; }
.my-6 { margin-top: var(--spacing-6) !important; margin-bottom: var(--spacing-6) !important; }
.my-7 { margin-top: var(--spacing-7) !important; margin-bottom: var(--spacing-7) !important; }
.my-8 { margin-top: var(--spacing-8) !important; margin-bottom: var(--spacing-8) !important; }
.my-9 { margin-top: var(--spacing-9) !important; margin-bottom: var(--spacing-9) !important; }
.my-10 { margin-top: var(--spacing-10) !important; margin-bottom: var(--spacing-10) !important; }
.my-11 { margin-top: var(--spacing-11) !important; margin-bottom: var(--spacing-11) !important; }
.my-12 { margin-top: var(--spacing-12) !important; margin-bottom: var(--spacing-12) !important; }
.my-13 { margin-top: var(--spacing-13) !important; margin-bottom: var(--spacing-13) !important; }
.my-14 { margin-top: var(--spacing-14) !important; margin-bottom: var(--spacing-14) !important; }
.my-15 { margin-top: var(--spacing-15) !important; margin-bottom: var(--spacing-15) !important; }

.mr-1 { margin-right: var(--spacing-1) !important; }
.mr-2 { margin-right: var(--spacing-2) !important; }
.mr-3 { margin-right: var(--spacing-3) !important; }
.mr-4 { margin-right: var(--spacing-4) !important; }
.mr-5 { margin-right: var(--spacing-5) !important; }
.mr-6 { margin-right: var(--spacing-6) !important; }
.mr-7 { margin-right: var(--spacing-7) !important; }
.mr-8 { margin-right: var(--spacing-8) !important; }
.mr-9 { margin-right: var(--spacing-9) !important; }
.mr-10 { margin-right: var(--spacing-10) !important; }
.mr-11 { margin-right: var(--spacing-11) !important; }
.mr-12 { margin-right: var(--spacing-12) !important; }
.mr-13 { margin-right: var(--spacing-13) !important; }
.mr-14 { margin-right: var(--spacing-14) !important; }
.mr-15 { margin-right: var(--spacing-15) !important; }

.ml-1 { margin-left: var(--spacing-1) !important; }
.ml-2 { margin-left: var(--spacing-2) !important; }
.ml-3 { margin-left: var(--spacing-3) !important; }
.ml-4 { margin-left: var(--spacing-4) !important; }
.ml-5 { margin-left: var(--spacing-5) !important; }
.ml-6 { margin-left: var(--spacing-6) !important; }
.ml-7 { margin-left: var(--spacing-7) !important; }
.ml-8 { margin-left: var(--spacing-8) !important; }
.ml-9 { margin-left: var(--spacing-9) !important; }
.ml-10 { margin-left: var(--spacing-10) !important; }
.ml-11 { margin-left: var(--spacing-11) !important; }
.ml-12 { margin-left: var(--spacing-12) !important; }
.ml-13 { margin-left: var(--spacing-13) !important; }
.ml-14 { margin-left: var(--spacing-14) !important; }
.ml-15 { margin-left: var(--spacing-15) !important; }

.mt-1 { margin-top: var(--spacing-1) !important; }
.mt-2 { margin-top: var(--spacing-2) !important; }
.mt-3 { margin-top: var(--spacing-3) !important; }
.mt-4 { margin-top: var(--spacing-4) !important; }
.mt-5 { margin-top: var(--spacing-5) !important; }
.mt-6 { margin-top: var(--spacing-6) !important; }
.mt-7 { margin-top: var(--spacing-7) !important; }
.mt-8 { margin-top: var(--spacing-8) !important; }
.mt-9 { margin-top: var(--spacing-9) !important; }
.mt-10 { margin-top: var(--spacing-10) !important; }
.mt-11 { margin-top: var(--spacing-11) !important; }
.mt-12 { margin-top: var(--spacing-12) !important; }
.mt-13 { margin-top: var(--spacing-13) !important; }
.mt-14 { margin-top: var(--spacing-14) !important; }
.mt-15 { margin-top: var(--spacing-15) !important; }

.mb-1 { margin-bottom: var(--spacing-1) !important; }
.mb-2 { margin-bottom: var(--spacing-2) !important; }
.mb-3 { margin-bottom: var(--spacing-3) !important; }
.mb-4 { margin-bottom: var(--spacing-4) !important; }
.mb-5 { margin-bottom: var(--spacing-5) !important; }
.mb-6 { margin-bottom: var(--spacing-6) !important; }
.mb-7 { margin-bottom: var(--spacing-7) !important; }
.mb-8 { margin-bottom: var(--spacing-8) !important; }
.mb-9 { margin-bottom: var(--spacing-9) !important; }
.mb-10 { margin-bottom: var(--spacing-10) !important; }
.mb-11 { margin-bottom: var(--spacing-11) !important; }
.mb-12 { margin-bottom: var(--spacing-12) !important; }
.mb-13 { margin-bottom: var(--spacing-13) !important; }
.mb-14 { margin-bottom: var(--spacing-14) !important; }
.mb-15 { margin-bottom: var(--spacing-15) !important; }
