:root {
  --primary-color: #00ACEF;
}

body {

    .primary-color {
        color: var(--primary-color);
    }
    
    .primary-bg-color-faded {
        background: rgba(0, 172, 239, .85);
    }

    .section-spacer {
        padding: 32px 0;
    }

    /* Margin */
    .m-0 { margin: 0; }
    .m-1 { margin: 0.25rem; }
    .m-2 { margin: 0.5rem; }
    .m-3 { margin: 1rem; }
    .m-4 { margin: 1.5rem; }
    .m-5 { margin: 3rem; }
    .m-auto { margin: auto; }

    /* Margin Directions */
    .mt-1 { margin-top: 0.25rem; }
    .mb-1 { margin-bottom: 0.25rem; }
    .ms-1 { margin-left: 0.25rem; }
    .me-1 { margin-right: 0.25rem; }

    .mx-auto { margin-left: auto; margin-right: auto; }

    /* Padding */
    .p-0 { padding: 0; }
    .p-1 { padding: 0.25rem; }
    .p-2 { padding: 0.5rem; }
    .p-3 { padding: 1rem; }
    .p-4 { padding: 1.5rem; }
    .p-5 { padding: 3rem; }

    /* Padding Directions */
    .pt-1 { padding-top: 0.25rem; }
    .pb-1 { padding-bottom: 0.25rem; }
    .ps-1 { padding-left: 0.25rem; }
    .pe-1 { padding-right: 0.25rem; }

    .text-uppercase { text-transform: uppercase; }
    .text-lowercase { text-transform: lowercase; }
    .text-capitalize { text-transform: capitalize; }
    .text-decoration-none { text-decoration: none; }

    .text-center { text-align: center; }
    .text-start { text-align: left; }
    .text-end { text-align: right; }

    .fw-bold { font-weight: bold; }
    .fw-normal { font-weight: normal; }
    .fw-light { font-weight: 300; }
    .fw-medium { font-weight: 500; }

    .fst-italic { font-style: italic; }

    .d-none { display: none; }
    .d-block { display: block; }
    .d-inline { display: inline; }
    .d-inline-block { display: inline-block; }
    .d-flex { display: flex; }
    .d-grid { display: grid; }

    .w-100 { width: 100%; }
    .w-75 { width: 75%; }
    .w-50 { width: 50%; }
    .w-25 { width: 25%; }

    .h-100 { height: 100%; }

    .justify-start { justify-content: flex-start; }
    .justify-center { justify-content: center; }
    .justify-end { justify-content: flex-end; }
    .justify-between { justify-content: space-between; }

    .align-start { align-items: flex-start; }
    .align-center { align-items: center; }
    .align-end { align-items: flex-end; }

    .flex-column { flex-direction: column; }
    .flex-row { flex-direction: row; }

    .text-primary { color: #0d6efd; }
    .text-danger { color: #dc3545; }
    .text-success { color: #198754; }

    .bg-primary { background-color: #0d6efd; color: #fff; }
    .bg-danger { background-color: #dc3545; color: #fff; }
    .bg-success { background-color: #198754; color: #fff; }

    .border { border: 1px solid #dee2e6; }
    .border-0 { border: none; }

    .rounded { border-radius: 0.25rem; }
    .rounded-circle { border-radius: 50%; }

    .visible { visibility: visible; }
    .invisible { visibility: hidden; }

    .position-relative { position: relative; }
    .position-absolute { position: absolute; }
    .position-fixed { position: fixed; }

    .top-0 { top: 0; }
    .bottom-0 { bottom: 0; }
    .left-0 { left: 0; }
    .right-0 { right: 0; }

    .shadow { box-shadow: 0 0.5rem 1rem rgba(0,0,0,0.15); }

    .overflow-hidden { overflow: hidden; }
    .overflow-auto { overflow: auto; }
}