﻿/*
Bootstrap 4 compatibility layer for Bootstrap 5.3.x
---------------------------------------------------

Purpose:

* Temporary shim to keep legacy Bootstrap 4 markup working
* Intended for short-term use until redesign
* Utilities ONLY (no JS-dependent components)

IMPORTANT:

* Load AFTER bootstrap.min.css
* Do not add new rules unless strictly necessary
  */

/* ==========================================
   Bootstrap 4 Margin Utilities Compatibility
   ml-* / mr-*
   ========================================== */

/* --- Base --- */
.ml-0 {
    margin-left: 0 !important;
}

.ml-1 {
    margin-left: .25rem !important;
}

.ml-2 {
    margin-left: .5rem !important;
}

.ml-3 {
    margin-left: 1rem !important;
}

.ml-4 {
    margin-left: 1.5rem !important;
}

.ml-5 {
    margin-left: 3rem !important;
}

.mr-0 {
    margin-right: 0 !important;
}

.mr-1 {
    margin-right: .25rem !important;
}

.mr-2 {
    margin-right: .5rem !important;
}

.mr-3 {
    margin-right: 1rem !important;
}

.mr-4 {
    margin-right: 1.5rem !important;
}

.mr-5 {
    margin-right: 3rem !important;
}

.mx-0 {
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.mx-1 {
    margin-left: .25rem !important;
    margin-right: .25rem !important;
}

.mx-2 {
    margin-left: .5rem !important;
    margin-right: .5rem !important;
}

.mx-3 {
    margin-left: 1rem !important;
    margin-right: 1rem !important;
}

.mx-4 {
    margin-left: 1.5rem !important;
    margin-right: 1.5rem !important;
}

.mx-5 {
    margin-left: 3rem !important;
    margin-right: 3rem !important;
}

/* --- SM (≥576px) --- */
@media (min-width: 576px) {
    .ml-sm-0 {
        margin-left: 0 !important;
    }

    .ml-sm-1 {
        margin-left: .25rem !important;
    }

    .ml-sm-2 {
        margin-left: .5rem !important;
    }

    .ml-sm-3 {
        margin-left: 1rem !important;
    }

    .ml-sm-4 {
        margin-left: 1.5rem !important;
    }

    .ml-sm-5 {
        margin-left: 3rem !important;
    }

    .mr-sm-0 {
        margin-right: 0 !important;
    }

    .mr-sm-1 {
        margin-right: .25rem !important;
    }

    .mr-sm-2 {
        margin-right: .5rem !important;
    }

    .mr-sm-3 {
        margin-right: 1rem !important;
    }

    .mr-sm-4 {
        margin-right: 1.5rem !important;
    }

    .mr-sm-5 {
        margin-right: 3rem !important;
    }

    .mx-sm-0 {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    .mx-sm-1 {
        margin-left: .25rem !important;
        margin-right: .25rem !important;
    }

    .mx-sm-2 {
        margin-left: .5rem !important;
        margin-right: .5rem !important;
    }

    .mx-sm-3 {
        margin-left: 1rem !important;
        margin-right: 1rem !important;
    }

    .mx-sm-4 {
        margin-left: 1.5rem !important;
        margin-right: 1.5rem !important;
    }

    .mx-sm-5 {
        margin-left: 3rem !important;
        margin-right: 3rem !important;
    }
}

/* --- MD (≥768px) --- */
@media (min-width: 768px) {
    .ml-md-0 {
        margin-left: 0 !important;
    }

    .ml-md-1 {
        margin-left: .25rem !important;
    }

    .ml-md-2 {
        margin-left: .5rem !important;
    }

    .ml-md-3 {
        margin-left: 1rem !important;
    }

    .ml-md-4 {
        margin-left: 1.5rem !important;
    }

    .ml-md-5 {
        margin-left: 3rem !important;
    }

    .mr-md-0 {
        margin-right: 0 !important;
    }

    .mr-md-1 {
        margin-right: .25rem !important;
    }

    .mr-md-2 {
        margin-right: .5rem !important;
    }

    .mr-md-3 {
        margin-right: 1rem !important;
    }

    .mr-md-4 {
        margin-right: 1.5rem !important;
    }

    .mr-md-5 {
        margin-right: 3rem !important;
    }

    .mx-md-0 {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    .mx-md-1 {
        margin-left: .25rem !important;
        margin-right: .25rem !important;
    }

    .mx-md-2 {
        margin-left: .5rem !important;
        margin-right: .5rem !important;
    }

    .mx-md-3 {
        margin-left: 1rem !important;
        margin-right: 1rem !important;
    }

    .mx-md-4 {
        margin-left: 1.5rem !important;
        margin-right: 1.5rem !important;
    }

    .mx-md-5 {
        margin-left: 3rem !important;
        margin-right: 3rem !important;
    }
}

/* --- LG (≥992px) --- */
@media (min-width: 992px) {
    .ml-lg-0 {
        margin-left: 0 !important;
    }

    .ml-lg-1 {
        margin-left: .25rem !important;
    }

    .ml-lg-2 {
        margin-left: .5rem !important;
    }

    .ml-lg-3 {
        margin-left: 1rem !important;
    }

    .ml-lg-4 {
        margin-left: 1.5rem !important;
    }

    .ml-lg-5 {
        margin-left: 3rem !important;
    }

    .mr-lg-0 {
        margin-right: 0 !important;
    }

    .mr-lg-1 {
        margin-right: .25rem !important;
    }

    .mr-lg-2 {
        margin-right: .5rem !important;
    }

    .mr-lg-3 {
        margin-right: 1rem !important;
    }

    .mr-lg-4 {
        margin-right: 1.5rem !important;
    }

    .mr-lg-5 {
        margin-right: 3rem !important;
    }

    .mx-lg-0 {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    .mx-lg-1 {
        margin-left: .25rem !important;
        margin-right: .25rem !important;
    }

    .mx-lg-2 {
        margin-left: .5rem !important;
        margin-right: .5rem !important;
    }

    .mx-lg-3 {
        margin-left: 1rem !important;
        margin-right: 1rem !important;
    }

    .mx-lg-4 {
        margin-left: 1.5rem !important;
        margin-right: 1.5rem !important;
    }

    .mx-lg-5 {
        margin-left: 3rem !important;
        margin-right: 3rem !important;
    }
}

/* --- XL (≥1200px) --- */
@media (min-width: 1200px) {
    .ml-xl-0 {
        margin-left: 0 !important;
    }

    .ml-xl-1 {
        margin-left: .25rem !important;
    }

    .ml-xl-2 {
        margin-left: .5rem !important;
    }

    .ml-xl-3 {
        margin-left: 1rem !important;
    }

    .ml-xl-4 {
        margin-left: 1.5rem !important;
    }

    .ml-xl-5 {
        margin-left: 3rem !important;
    }

    .mr-xl-0 {
        margin-right: 0 !important;
    }

    .mr-xl-1 {
        margin-right: .25rem !important;
    }

    .mr-xl-2 {
        margin-right: .5rem !important;
    }

    .mr-xl-3 {
        margin-right: 1rem !important;
    }

    .mr-xl-4 {
        margin-right: 1.5rem !important;
    }

    .mr-xl-5 {
        margin-right: 3rem !important;
    }

    .mx-xl-0 {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    .mx-xl-1 {
        margin-left: .25rem !important;
        margin-right: .25rem !important;
    }

    .mx-xl-2 {
        margin-left: .5rem !important;
        margin-right: .5rem !important;
    }

    .mx-xl-3 {
        margin-left: 1rem !important;
        margin-right: 1rem !important;
    }

    .mx-xl-4 {
        margin-left: 1.5rem !important;
        margin-right: 1.5rem !important;
    }

    .mx-xl-5 {
        margin-left: 3rem !important;
        margin-right: 3rem !important;
    }
}

.ml-auto {
    margin-left: auto !important;
}

.mr-auto {
    margin-right: auto !important;
}

/* Responsive variants */
@media (min-width: 576px) {
    .ml-sm-auto {
        margin-left: auto !important;
    }

    .mr-sm-auto {
        margin-right: auto !important;
    }
}

@media (min-width: 768px) {
    .ml-md-auto {
        margin-left: auto !important;
    }

    .mr-md-auto {
        margin-right: auto !important;
    }
}

@media (min-width: 992px) {
    .ml-lg-auto {
        margin-left: auto !important;
    }

    .mr-lg-auto {
        margin-right: auto !important;
    }
}

@media (min-width: 1200px) {
    .ml-xl-auto {
        margin-left: auto !important;
    }

    .mr-xl-auto {
        margin-right: auto !important;
    }
}

/* ==========================================
   Bootstrap 4 Negative Margin Utilities Shim
   Full coverage for BS5
   ========================================== */

/* ---------------- Base (no breakpoint) ---------------- */
.m-n1 {
    margin: -0.25rem !important;
}

.m-n2 {
    margin: -0.5rem !important;
}

.m-n3 {
    margin: -1rem !important;
}

.m-n4 {
    margin: -1.5rem !important;
}

.m-n5 {
    margin: -3rem !important;
}

.mt-n1 {
    margin-top: -0.25rem !important;
}

.mt-n2 {
    margin-top: -0.5rem !important;
}

.mt-n3 {
    margin-top: -1rem !important;
}

.mt-n4 {
    margin-top: -1.5rem !important;
}

.mt-n5 {
    margin-top: -3rem !important;
}

.mb-n1 {
    margin-bottom: -0.25rem !important;
}

.mb-n2 {
    margin-bottom: -0.5rem !important;
}

.mb-n3 {
    margin-bottom: -1rem !important;
}

.mb-n4 {
    margin-bottom: -1.5rem !important;
}

.mb-n5 {
    margin-bottom: -3rem !important;
}

.ml-n1 {
    margin-left: -0.25rem !important;
}

.ml-n2 {
    margin-left: -0.5rem !important;
}

.ml-n3 {
    margin-left: -1rem !important;
}

.ml-n4 {
    margin-left: -1.5rem !important;
}

.ml-n5 {
    margin-left: -3rem !important;
}

.mr-n1 {
    margin-right: -0.25rem !important;
}

.mr-n2 {
    margin-right: -0.5rem !important;
}

.mr-n3 {
    margin-right: -1rem !important;
}

.mr-n4 {
    margin-right: -1.5rem !important;
}

.mr-n5 {
    margin-right: -3rem !important;
}

.mx-n1 {
    margin-left: -0.25rem !important;
    margin-right: -0.25rem !important;
}

.mx-n2 {
    margin-left: -0.5rem !important;
    margin-right: -0.5rem !important;
}

.mx-n3 {
    margin-left: -1rem !important;
    margin-right: -1rem !important;
}

.mx-n4 {
    margin-left: -1.5rem !important;
    margin-right: -1.5rem !important;
}

.mx-n5 {
    margin-left: -3rem !important;
    margin-right: -3rem !important;
}

.my-n1 {
    margin-top: -0.25rem !important;
    margin-bottom: -0.25rem !important;
}

.my-n2 {
    margin-top: -0.5rem !important;
    margin-bottom: -0.5rem !important;
}

.my-n3 {
    margin-top: -1rem !important;
    margin-bottom: -1rem !important;
}

.my-n4 {
    margin-top: -1.5rem !important;
    margin-bottom: -1.5rem !important;
}

.my-n5 {
    margin-top: -3rem !important;
    margin-bottom: -3rem !important;
}

/* ---------------- SM (≥576px) ---------------- */
@media (min-width: 576px) {
    .m-sm-n1 {
        margin: -0.25rem !important;
    }

    .m-sm-n2 {
        margin: -0.5rem !important;
    }

    .m-sm-n3 {
        margin: -1rem !important;
    }

    .m-sm-n4 {
        margin: -1.5rem !important;
    }

    .m-sm-n5 {
        margin: -3rem !important;
    }

    .mt-sm-n1 {
        margin-top: -0.25rem !important;
    }

    .mt-sm-n2 {
        margin-top: -0.5rem !important;
    }

    .mt-sm-n3 {
        margin-top: -1rem !important;
    }

    .mt-sm-n4 {
        margin-top: -1.5rem !important;
    }

    .mt-sm-n5 {
        margin-top: -3rem !important;
    }

    .mb-sm-n1 {
        margin-bottom: -0.25rem !important;
    }

    .mb-sm-n2 {
        margin-bottom: -0.5rem !important;
    }

    .mb-sm-n3 {
        margin-bottom: -1rem !important;
    }

    .mb-sm-n4 {
        margin-bottom: -1.5rem !important;
    }

    .mb-sm-n5 {
        margin-bottom: -3rem !important;
    }

    .ml-sm-n1 {
        margin-left: -0.25rem !important;
    }

    .ml-sm-n2 {
        margin-left: -0.5rem !important;
    }

    .ml-sm-n3 {
        margin-left: -1rem !important;
    }

    .ml-sm-n4 {
        margin-left: -1.5rem !important;
    }

    .ml-sm-n5 {
        margin-left: -3rem !important;
    }

    .mr-sm-n1 {
        margin-right: -0.25rem !important;
    }

    .mr-sm-n2 {
        margin-right: -0.5rem !important;
    }

    .mr-sm-n3 {
        margin-right: -1rem !important;
    }

    .mr-sm-n4 {
        margin-right: -1.5rem !important;
    }

    .mr-sm-n5 {
        margin-right: -3rem !important;
    }

    .mx-sm-n1 {
        margin-left: -0.25rem !important;
        margin-right: -0.25rem !important;
    }

    .mx-sm-n2 {
        margin-left: -0.5rem !important;
        margin-right: -0.5rem !important;
    }

    .mx-sm-n3 {
        margin-left: -1rem !important;
        margin-right: -1rem !important;
    }

    .mx-sm-n4 {
        margin-left: -1.5rem !important;
        margin-right: -1.5rem !important;
    }

    .mx-sm-n5 {
        margin-left: -3rem !important;
        margin-right: -3rem !important;
    }

    .my-sm-n1 {
        margin-top: -0.25rem !important;
        margin-bottom: -0.25rem !important;
    }

    .my-sm-n2 {
        margin-top: -0.5rem !important;
        margin-bottom: -0.5rem !important;
    }

    .my-sm-n3 {
        margin-top: -1rem !important;
        margin-bottom: -1rem !important;
    }

    .my-sm-n4 {
        margin-top: -1.5rem !important;
        margin-bottom: -1.5rem !important;
    }

    .my-sm-n5 {
        margin-top: -3rem !important;
        margin-bottom: -3rem !important;
    }
}

/* ---------------- MD (≥768px) ---------------- */
@media (min-width: 768px) {
    .m-md-n1 {
        margin: -0.25rem !important;
    }

    .m-md-n2 {
        margin: -0.5rem !important;
    }

    .m-md-n3 {
        margin: -1rem !important;
    }

    .m-md-n4 {
        margin: -1.5rem !important;
    }

    .m-md-n5 {
        margin: -3rem !important;
    }

    .mt-md-n1 {
        margin-top: -0.25rem !important;
    }

    .mt-md-n2 {
        margin-top: -0.5rem !important;
    }

    .mt-md-n3 {
        margin-top: -1rem !important;
    }

    .mt-md-n4 {
        margin-top: -1.5rem !important;
    }

    .mt-md-n5 {
        margin-top: -3rem !important;
    }

    .mb-md-n1 {
        margin-bottom: -0.25rem !important;
    }

    .mb-md-n2 {
        margin-bottom: -0.5rem !important;
    }

    .mb-md-n3 {
        margin-bottom: -1rem !important;
    }

    .mb-md-n4 {
        margin-bottom: -1.5rem !important;
    }

    .mb-md-n5 {
        margin-bottom: -3rem !important;
    }

    .ml-md-n1 {
        margin-left: -0.25rem !important;
    }

    .ml-md-n2 {
        margin-left: -0.5rem !important;
    }

    .ml-md-n3 {
        margin-left: -1rem !important;
    }

    .ml-md-n4 {
        margin-left: -1.5rem !important;
    }

    .ml-md-n5 {
        margin-left: -3rem !important;
    }

    .mr-md-n1 {
        margin-right: -0.25rem !important;
    }

    .mr-md-n2 {
        margin-right: -0.5rem !important;
    }

    .mr-md-n3 {
        margin-right: -1rem !important;
    }

    .mr-md-n4 {
        margin-right: -1.5rem !important;
    }

    .mr-md-n5 {
        margin-right: -3rem !important;
    }

    .mx-md-n1 {
        margin-left: -0.25rem !important;
        margin-right: -0.25rem !important;
    }

    .mx-md-n2 {
        margin-left: -0.5rem !important;
        margin-right: -0.5rem !important;
    }

    .mx-md-n3 {
        margin-left: -1rem !important;
        margin-right: -1rem !important;
    }

    .mx-md-n4 {
        margin-left: -1.5rem !important;
        margin-right: -1.5rem !important;
    }

    .mx-md-n5 {
        margin-left: -3rem !important;
        margin-right: -3rem !important;
    }

    .my-md-n1 {
        margin-top: -0.25rem !important;
        margin-bottom: -0.25rem !important;
    }

    .my-md-n2 {
        margin-top: -0.5rem !important;
        margin-bottom: -0.5rem !important;
    }

    .my-md-n3 {
        margin-top: -1rem !important;
        margin-bottom: -1rem !important;
    }

    .my-md-n4 {
        margin-top: -1.5rem !important;
        margin-bottom: -1.5rem !important;
    }

    .my-md-n5 {
        margin-top: -3rem !important;
        margin-bottom: -3rem !important;
    }
}

/* ---------------- LG (≥992px) ---------------- */
@media (min-width: 992px) {
    .m-lg-n1 {
        margin: -0.25rem !important;
    }

    .m-lg-n2 {
        margin: -0.5rem !important;
    }

    .m-lg-n3 {
        margin: -1rem !important;
    }

    .m-lg-n4 {
        margin: -1.5rem !important;
    }

    .m-lg-n5 {
        margin: -3rem !important;
    }

    .mt-lg-n1 {
        margin-top: -0.25rem !important;
    }

    .mt-lg-n2 {
        margin-top: -0.5rem !important;
    }

    .mt-lg-n3 {
        margin-top: -1rem !important;
    }

    .mt-lg-n4 {
        margin-top: -1.5rem !important;
    }

    .mt-lg-n5 {
        margin-top: -3rem !important;
    }

    .mb-lg-n1 {
        margin-bottom: -0.25rem !important;
    }

    .mb-lg-n2 {
        margin-bottom: -0.5rem !important;
    }

    .mb-lg-n3 {
        margin-bottom: -1rem !important;
    }

    .mb-lg-n4 {
        margin-bottom: -1.5rem !important;
    }

    .mb-lg-n5 {
        margin-bottom: -3rem !important;
    }

    .ml-lg-n1 {
        margin-left: -0.25rem !important;
    }

    .ml-lg-n2 {
        margin-left: -0.5rem !important;
    }

    .ml-lg-n3 {
        margin-left: -1rem !important;
    }

    .ml-lg-n4 {
        margin-left: -1.5rem !important;
    }

    .ml-lg-n5 {
        margin-left: -3rem !important;
    }

    .mr-lg-n1 {
        margin-right: -0.25rem !important;
    }

    .mr-lg-n2 {
        margin-right: -0.5rem !important;
    }

    .mr-lg-n3 {
        margin-right: -1rem !important;
    }

    .mr-lg-n4 {
        margin-right: -1.5rem !important;
    }

    .mr-lg-n5 {
        margin-right: -3rem !important;
    }

    .mx-lg-n1 {
        margin-left: -0.25rem !important;
        margin-right: -0.25rem !important;
    }

    .mx-lg-n2 {
        margin-left: -0.5rem !important;
        margin-right: -0.5rem !important;
    }

    .mx-lg-n3 {
        margin-left: -1rem !important;
        margin-right: -1rem !important;
    }

    .mx-lg-n4 {
        margin-left: -1.5rem !important;
        margin-right: -1.5rem !important;
    }

    .mx-lg-n5 {
        margin-left: -3rem !important;
        margin-right: -3rem !important;
    }

    .my-lg-n1 {
        margin-top: -0.25rem !important;
        margin-bottom: -0.25rem !important;
    }

    .my-lg-n2 {
        margin-top: -0.5rem !important;
        margin-bottom: -0.5rem !important;
    }

    .my-lg-n3 {
        margin-top: -1rem !important;
        margin-bottom: -1rem !important;
    }

    .my-lg-n4 {
        margin-top: -1.5rem !important;
        margin-bottom: -1.5rem !important;
    }

    .my-lg-n5 {
        margin-top: -3rem !important;
        margin-bottom: -3rem !important;
    }
}

/* ---------------- XL (≥1200px) ---------------- */
@media (min-width: 1200px) {
    .m-xl-n1 {
        margin: -0.25rem !important;
    }

    .m-xl-n2 {
        margin: -0.5rem !important;
    }

    .m-xl-n3 {
        margin: -1rem !important;
    }

    .m-xl-n4 {
        margin: -1.5rem !important;
    }

    .m-xl-n5 {
        margin: -3rem !important;
    }

    .mt-xl-n1 {
        margin-top: -0.25rem !important;
    }

    .mt-xl-n2 {
        margin-top: -0.5rem !important;
    }

    .mt-xl-n3 {
        margin-top: -1rem !important;
    }

    .mt-xl-n4 {
        margin-top: -1.5rem !important;
    }

    .mt-xl-n5 {
        margin-top: -3rem !important;
    }

    .mb-xl-n1 {
        margin-bottom: -0.25rem !important;
    }

    .mb-xl-n2 {
        margin-bottom: -0.5rem !important;
    }

    .mb-xl-n3 {
        margin-bottom: -1rem !important;
    }

    .mb-xl-n4 {
        margin-bottom: -1.5rem !important;
    }

    .mb-xl-n5 {
        margin-bottom: -3rem !important;
    }

    .ml-xl-n1 {
        margin-left: -0.25rem !important;
    }

    .ml-xl-n2 {
        margin-left: -0.5rem !important;
    }

    .ml-xl-n3 {
        margin-left: -1rem !important;
    }

    .ml-xl-n4 {
        margin-left: -1.5rem !important;
    }

    .ml-xl-n5 {
        margin-left: -3rem !important;
    }

    .mr-xl-n1 {
        margin-right: -0.25rem !important;
    }

    .mr-xl-n2 {
        margin-right: -0.5rem !important;
    }

    .mr-xl-n3 {
        margin-right: -1rem !important;
    }

    .mr-xl-n4 {
        margin-right: -1.5rem !important;
    }

    .mr-xl-n5 {
        margin-right: -3rem !important;
    }

    .mx-xl-n1 {
        margin-left: -0.25rem !important;
        margin-right: -0.25rem !important;
    }

    .mx-xl-n2 {
        margin-left: -0.5rem !important;
        margin-right: -0.5rem !important;
    }

    .mx-xl-n3 {
        margin-left: -1rem !important;
        margin-right: -1rem !important;
    }

    .mx-xl-n4 {
        margin-left: -1.5rem !important;
        margin-right: -1.5rem !important;
    }

    .mx-xl-n5 {
        margin-left: -3rem !important;
        margin-right: -3rem !important;
    }

    .my-xl-n1 {
        margin-top: -0.25rem !important;
        margin-bottom: -0.25rem !important;
    }

    .my-xl-n2 {
        margin-top: -0.5rem !important;
        margin-bottom: -0.5rem !important;
    }

    .my-xl-n3 {
        margin-top: -1rem !important;
        margin-bottom: -1rem !important;
    }

    .my-xl-n4 {
        margin-top: -1.5rem !important;
        margin-bottom: -1.5rem !important;
    }

    .my-xl-n5 {
        margin-top: -3rem !important;
        margin-bottom: -3rem !important;
    }
}

/* ---------------- XXL (≥1400px) ---------------- */
@media (min-width: 1400px) {
    .m-xxl-n1 {
        margin: -0.25rem !important;
    }

    .m-xxl-n2 {
        margin: -0.5rem !important;
    }

    .m-xxl-n3 {
        margin: -1rem !important;
    }

    .m-xxl-n4 {
        margin: -1.5rem !important;
    }

    .m-xxl-n5 {
        margin: -3rem !important;
    }

    .mt-xxl-n1 {
        margin-top: -0.25rem !important;
    }

    .mt-xxl-n2 {
        margin-top: -0.5rem !important;
    }

    .mt-xxl-n3 {
        margin-top: -1rem !important;
    }

    .mt-xxl-n4 {
        margin-top: -1.5rem !important;
    }

    .mt-xxl-n5 {
        margin-top: -3rem !important;
    }

    .mb-xxl-n1 {
        margin-bottom: -0.25rem !important;
    }

    .mb-xxl-n2 {
        margin-bottom: -0.5rem !important;
    }

    .mb-xxl-n3 {
        margin-bottom: -1rem !important;
    }

    .mb-xxl-n4 {
        margin-bottom: -1.5rem !important;
    }

    .mb-xxl-n5 {
        margin-bottom: -3rem !important;
    }

    .ml-xxl-n1 {
        margin-left: -0.25rem !important;
    }

    .ml-xxl-n2 {
        margin-left: -0.5rem !important;
    }

    .ml-xxl-n3 {
        margin-left: -1rem !important;
    }

    .ml-xxl-n4 {
        margin-left: -1.5rem !important;
    }

    .ml-xxl-n5 {
        margin-left: -3rem !important;
    }

    .mr-xxl-n1 {
        margin-right: -0.25rem !important;
    }

    .mr-xxl-n2 {
        margin-right: -0.5rem !important;
    }

    .mr-xxl-n3 {
        margin-right: -1rem !important;
    }

    .mr-xxl-n4 {
        margin-right: -1.5rem !important;
    }

    .mr-xxl-n5 {
        margin-right: -3rem !important;
    }

    .mx-xxl-n1 {
        margin-left: -0.25rem !important;
        margin-right: -0.25rem !important;
    }

    .mx-xxl-n2 {
        margin-left: -0.5rem !important;
        margin-right: -0.5rem !important;
    }

    .mx-xxl-n3 {
        margin-left: -1rem !important;
        margin-right: -1rem !important;
    }

    .mx-xxl-n4 {
        margin-left: -1.5rem !important;
        margin-right: -1.5rem !important;
    }

    .mx-xxl-n5 {
        margin-left: -3rem !important;
        margin-right: -3rem !important;
    }

    .my-xxl-n1 {
        margin-top: -0.25rem !important;
        margin-bottom: -0.25rem !important;
    }

    .my-xxl-n2 {
        margin-top: -0.5rem !important;
        margin-bottom: -0.5rem !important;
    }

    .my-xxl-n3 {
        margin-top: -1rem !important;
        margin-bottom: -1rem !important;
    }

    .my-xxl-n4 {
        margin-top: -1.5rem !important;
        margin-bottom: -1.5rem !important;
    }

    .my-xxl-n5 {
        margin-top: -3rem !important;
        margin-bottom: -3rem !important;
    }
}




/* ==========================================
   Bootstrap 4 Padding Utilities Compatibility
   ========================================== */

/* --- Base (no breakpoint) --- */
.pl-0 {
    padding-left: 0 !important;
}

.pl-1 {
    padding-left: .25rem !important;
}

.pl-2 {
    padding-left: .5rem !important;
}

.pl-3 {
    padding-left: 1rem !important;
}

.pl-4 {
    padding-left: 1.5rem !important;
}

.pl-5 {
    padding-left: 3rem !important;
}

.pr-0 {
    padding-right: 0 !important;
}

.pr-1 {
    padding-right: .25rem !important;
}

.pr-2 {
    padding-right: .5rem !important;
}

.pr-3 {
    padding-right: 1rem !important;
}

.pr-4 {
    padding-right: 1.5rem !important;
}

.pr-5 {
    padding-right: 3rem !important;
}

/* --- SM (≥576px) --- */
@media (min-width: 576px) {
    .pl-sm-0 {
        padding-left: 0 !important;
    }

    .pl-sm-1 {
        padding-left: .25rem !important;
    }

    .pl-sm-2 {
        padding-left: .5rem !important;
    }

    .pl-sm-3 {
        padding-left: 1rem !important;
    }

    .pl-sm-4 {
        padding-left: 1.5rem !important;
    }

    .pl-sm-5 {
        padding-left: 3rem !important;
    }

    .pr-sm-0 {
        padding-right: 0 !important;
    }

    .pr-sm-1 {
        padding-right: .25rem !important;
    }

    .pr-sm-2 {
        padding-right: .5rem !important;
    }

    .pr-sm-3 {
        padding-right: 1rem !important;
    }

    .pr-sm-4 {
        padding-right: 1.5rem !important;
    }

    .pr-sm-5 {
        padding-right: 3rem !important;
    }
}

/* --- MD (≥768px) --- */
@media (min-width: 768px) {
    .pl-md-0 {
        padding-left: 0 !important;
    }

    .pl-md-1 {
        padding-left: .25rem !important;
    }

    .pl-md-2 {
        padding-left: .5rem !important;
    }

    .pl-md-3 {
        padding-left: 1rem !important;
    }

    .pl-md-4 {
        padding-left: 1.5rem !important;
    }

    .pl-md-5 {
        padding-left: 3rem !important;
    }

    .pr-md-0 {
        padding-right: 0 !important;
    }

    .pr-md-1 {
        padding-right: .25rem !important;
    }

    .pr-md-2 {
        padding-right: .5rem !important;
    }

    .pr-md-3 {
        padding-right: 1rem !important;
    }

    .pr-md-4 {
        padding-right: 1.5rem !important;
    }

    .pr-md-5 {
        padding-right: 3rem !important;
    }
}

/* --- LG (≥992px) --- */
@media (min-width: 992px) {
    .pl-lg-0 {
        padding-left: 0 !important;
    }

    .pl-lg-1 {
        padding-left: .25rem !important;
    }

    .pl-lg-2 {
        padding-left: .5rem !important;
    }

    .pl-lg-3 {
        padding-left: 1rem !important;
    }

    .pl-lg-4 {
        padding-left: 1.5rem !important;
    }

    .pl-lg-5 {
        padding-left: 3rem !important;
    }

    .pr-lg-0 {
        padding-right: 0 !important;
    }

    .pr-lg-1 {
        padding-right: .25rem !important;
    }

    .pr-lg-2 {
        padding-right: .5rem !important;
    }

    .pr-lg-3 {
        padding-right: 1rem !important;
    }

    .pr-lg-4 {
        padding-right: 1.5rem !important;
    }

    .pr-lg-5 {
        padding-right: 3rem !important;
    }
}

/* --- XL (≥1200px) --- */
@media (min-width: 1200px) {
    .pl-xl-0 {
        padding-left: 0 !important;
    }

    .pl-xl-1 {
        padding-left: .25rem !important;
    }

    .pl-xl-2 {
        padding-left: .5rem !important;
    }

    .pl-xl-3 {
        padding-left: 1rem !important;
    }

    .pl-xl-4 {
        padding-left: 1.5rem !important;
    }

    .pl-xl-5 {
        padding-left: 3rem !important;
    }

    .pr-xl-0 {
        padding-right: 0 !important;
    }

    .pr-xl-1 {
        padding-right: .25rem !important;
    }

    .pr-xl-2 {
        padding-right: .5rem !important;
    }

    .pr-xl-3 {
        padding-right: 1rem !important;
    }

    .pr-xl-4 {
        padding-right: 1.5rem !important;
    }

    .pr-xl-5 {
        padding-right: 3rem !important;
    }
}

/* ==========================================
   Bootstrap 4 .btn-block compatibility
   ========================================== */

.btn-block {
    display: block !important;
    width: 100% !important;
}

    /* preserve spacing between stacked buttons */
    .btn-block + .btn-block {
        margin-top: .5rem;
    }

    /* Centered full-width buttons (BS4 behavior) */
    .btn-block.mx-auto {
        display: block !important; /* ensure block */
        width: auto !important; /* shrink to content */
        margin-left: auto !important; /* horizontal centering */
        margin-right: auto !important;
    }

/* =============================
TEXT ALIGNMENT
============================= */

.text-left {
    text-align: left !important;
}

.text-right {
    text-align: right !important;
}

@media (min-width: 576px) {
    .text-sm-left {
        text-align: left !important;
    }

    .text-sm-right {
        text-align: right !important;
    }
}

@media (min-width: 768px) {
    .text-md-left {
        text-align: left !important;
    }

    .text-md-right {
        text-align: right !important;
    }
}

@media (min-width: 992px) {
    .text-lg-left {
        text-align: left !important;
    }

    .text-lg-right {
        text-align: right !important;
    }
}

@media (min-width: 1200px) {
    .text-xl-left {
        text-align: left !important;
    }

    .text-xl-right {
        text-align: right !important;
    }
}

/* =============================
FLOATS
============================= */

.float-left {
    float: left !important;
}

.float-right {
    float: right !important;
}

@media (min-width: 576px) {
    .float-sm-left {
        float: left !important;
    }

    .float-sm-right {
        float: right !important;
    }
}

@media (min-width: 768px) {
    .float-md-left {
        float: left !important;
    }

    .float-md-right {
        float: right !important;
    }
}

@media (min-width: 992px) {
    .float-lg-left {
        float: left !important;
    }

    .float-lg-right {
        float: right !important;
    }
}

@media (min-width: 1200px) {
    .float-xl-left {
        float: left !important;
    }

    .float-xl-right {
        float: right !important;
    }
}

/* =============================
FONT WEIGHT & STYLE
============================= */

.font-weight-light {
    font-weight: 300 !important;
}

.font-weight-normal {
    font-weight: 400 !important;
}

.font-weight-bold {
    font-weight: 700 !important;
}

.font-italic {
    font-style: italic !important;
}

.text-uppercase {
    text-transform: uppercase !important;
}

/* Legacy monospace helper */
.text-monospace {
    font-family: var(--bs-font-monospace) !important;
}

/* =============================
BORDERS (LTR aliases)
============================= */

.border-left {
    border-left: 1px solid var(--bs-border-color) !important;
}

.border-right {
    border-right: 1px solid var(--bs-border-color) !important;
}

.border-left-0 {
    border-left: 0 !important;
}

.border-right-0 {
    border-right: 0 !important;
}

/* =============================
VISIBILITY / ACCESSIBILITY
============================= */

/* Bootstrap 4 sr-only replacement */
.sr-only {
    position: absolute;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

/* Legacy text-hide helper */
.text-hide {
    font-size: 0 !important;
    line-height: 0 !important;
    color: transparent !important;
    text-shadow: none !important;
    background-color: transparent;
    border: 0;
}

.sr-only-focusable:active,
.sr-only-focusable:focus {
    position: static !important;
    width: auto !important;
    height: auto !important;
    overflow: visible !important;
    clip: auto !important;
    white-space: normal !important;
}

/* =============================
EMBEDS (legacy helper)
============================= */

.embed-responsive {
    position: relative;
    display: block;
    width: 100%;
    padding: 0;
    overflow: hidden;
}

    .embed-responsive::before {
        display: block;
        content: "";
    }

.embed-responsive-16by9::before {
    padding-top: 56.25%;
}

.embed-responsive-4by3::before {
    padding-top: 75%;
}

.embed-responsive > iframe,
.embed-responsive > embed,
.embed-responsive > object,
.embed-responsive > video {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

/* =============================
GUTTERS (legacy)
============================= */

.no-gutters {
    margin-right: 0;
    margin-left: 0;
}

    .no-gutters > .col,
    .no-gutters > [class*="col-"] {
        padding-right: 0;
        padding-left: 0;
    }

/* ==========================================
   BS4 Padding Utilities Shim for .row.no-gutters
   Covers all breakpoints and pl-/pr-0..5
   ========================================== */

/* ---------------- Base ---------------- */
.row.no-gutters > [class*="col-"].pl-0 {
    padding-left: 0 !important;
}

.row.no-gutters > [class*="col-"].pl-1 {
    padding-left: .25rem !important;
}

.row.no-gutters > [class*="col-"].pl-2 {
    padding-left: .5rem !important;
}

.row.no-gutters > [class*="col-"].pl-3 {
    padding-left: 1rem !important;
}

.row.no-gutters > [class*="col-"].pl-4 {
    padding-left: 1.5rem !important;
}

.row.no-gutters > [class*="col-"].pl-5 {
    padding-left: 3rem !important;
}

.row.no-gutters > [class*="col-"].pr-0 {
    padding-right: 0 !important;
}

.row.no-gutters > [class*="col-"].pr-1 {
    padding-right: .25rem !important;
}

.row.no-gutters > [class*="col-"].pr-2 {
    padding-right: .5rem !important;
}

.row.no-gutters > [class*="col-"].pr-3 {
    padding-right: 1rem !important;
}

.row.no-gutters > [class*="col-"].pr-4 {
    padding-right: 1.5rem !important;
}

.row.no-gutters > [class*="col-"].pr-5 {
    padding-right: 3rem !important;
}

/* ---------------- SM (≥576px) ---------------- */
@media (min-width: 576px) {
    .row.no-gutters > [class*="col-"].pl-sm-0 {
        padding-left: 0 !important;
    }

    .row.no-gutters > [class*="col-"].pl-sm-1 {
        padding-left: .25rem !important;
    }

    .row.no-gutters > [class*="col-"].pl-sm-2 {
        padding-left: .5rem !important;
    }

    .row.no-gutters > [class*="col-"].pl-sm-3 {
        padding-left: 1rem !important;
    }

    .row.no-gutters > [class*="col-"].pl-sm-4 {
        padding-left: 1.5rem !important;
    }

    .row.no-gutters > [class*="col-"].pl-sm-5 {
        padding-left: 3rem !important;
    }

    .row.no-gutters > [class*="col-"].pr-sm-0 {
        padding-right: 0 !important;
    }

    .row.no-gutters > [class*="col-"].pr-sm-1 {
        padding-right: .25rem !important;
    }

    .row.no-gutters > [class*="col-"].pr-sm-2 {
        padding-right: .5rem !important;
    }

    .row.no-gutters > [class*="col-"].pr-sm-3 {
        padding-right: 1rem !important;
    }

    .row.no-gutters > [class*="col-"].pr-sm-4 {
        padding-right: 1.5rem !important;
    }

    .row.no-gutters > [class*="col-"].pr-sm-5 {
        padding-right: 3rem !important;
    }
}

/* ---------------- MD (≥768px) ---------------- */
@media (min-width: 768px) {
    .row.no-gutters > [class*="col-"].pl-md-0 {
        padding-left: 0 !important;
    }

    .row.no-gutters > [class*="col-"].pl-md-1 {
        padding-left: .25rem !important;
    }

    .row.no-gutters > [class*="col-"].pl-md-2 {
        padding-left: .5rem !important;
    }

    .row.no-gutters > [class*="col-"].pl-md-3 {
        padding-left: 1rem !important;
    }

    .row.no-gutters > [class*="col-"].pl-md-4 {
        padding-left: 1.5rem !important;
    }

    .row.no-gutters > [class*="col-"].pl-md-5 {
        padding-left: 3rem !important;
    }

    .row.no-gutters > [class*="col-"].pr-md-0 {
        padding-right: 0 !important;
    }

    .row.no-gutters > [class*="col-"].pr-md-1 {
        padding-right: .25rem !important;
    }

    .row.no-gutters > [class*="col-"].pr-md-2 {
        padding-right: .5rem !important;
    }

    .row.no-gutters > [class*="col-"].pr-md-3 {
        padding-right: 1rem !important;
    }

    .row.no-gutters > [class*="col-"].pr-md-4 {
        padding-right: 1.5rem !important;
    }

    .row.no-gutters > [class*="col-"].pr-md-5 {
        padding-right: 3rem !important;
    }
}

/* ---------------- LG (≥992px) ---------------- */
@media (min-width: 992px) {
    .row.no-gutters > [class*="col-"].pl-lg-0 {
        padding-left: 0 !important;
    }

    .row.no-gutters > [class*="col-"].pl-lg-1 {
        padding-left: .25rem !important;
    }

    .row.no-gutters > [class*="col-"].pl-lg-2 {
        padding-left: .5rem !important;
    }

    .row.no-gutters > [class*="col-"].pl-lg-3 {
        padding-left: 1rem !important;
    }

    .row.no-gutters > [class*="col-"].pl-lg-4 {
        padding-left: 1.5rem !important;
    }

    .row.no-gutters > [class*="col-"].pl-lg-5 {
        padding-left: 3rem !important;
    }

    .row.no-gutters > [class*="col-"].pr-lg-0 {
        padding-right: 0 !important;
    }

    .row.no-gutters > [class*="col-"].pr-lg-1 {
        padding-right: .25rem !important;
    }

    .row.no-gutters > [class*="col-"].pr-lg-2 {
        padding-right: .5rem !important;
    }

    .row.no-gutters > [class*="col-"].pr-lg-3 {
        padding-right: 1rem !important;
    }

    .row.no-gutters > [class*="col-"].pr-lg-4 {
        padding-right: 1.5rem !important;
    }

    .row.no-gutters > [class*="col-"].pr-lg-5 {
        padding-right: 3rem !important;
    }
}

/* ---------------- XL (≥1200px) ---------------- */
@media (min-width: 1200px) {
    .row.no-gutters > [class*="col-"].pl-xl-0 {
        padding-left: 0 !important;
    }

    .row.no-gutters > [class*="col-"].pl-xl-1 {
        padding-left: .25rem !important;
    }

    .row.no-gutters > [class*="col-"].pl-xl-2 {
        padding-left: .5rem !important;
    }

    .row.no-gutters > [class*="col-"].pl-xl-3 {
        padding-left: 1rem !important;
    }

    .row.no-gutters > [class*="col-"].pl-xl-4 {
        padding-left: 1.5rem !important;
    }

    .row.no-gutters > [class*="col-"].pl-xl-5 {
        padding-left: 3rem !important;
    }

    .row.no-gutters > [class*="col-"].pr-xl-0 {
        padding-right: 0 !important;
    }

    .row.no-gutters > [class*="col-"].pr-xl-1 {
        padding-right: .25rem !important;
    }

    .row.no-gutters > [class*="col-"].pr-xl-2 {
        padding-right: .5rem !important;
    }

    .row.no-gutters > [class*="col-"].pr-xl-3 {
        padding-right: 1rem !important;
    }

    .row.no-gutters > [class*="col-"].pr-xl-4 {
        padding-right: 1.5rem !important;
    }

    .row.no-gutters > [class*="col-"].pr-xl-5 {
        padding-right: 3rem !important;
    }
}

/* =============================
CLEARFIX
============================= */
.clearfix::after {
    display: block;
    clear: both;
    content: "";
}

/* =============================
DEPRECATED HELPERS (INTENTIONAL NO-OPS)
============================= */

/* These are included only to avoid layout explosions.
They should be removed during redesign. */

.form-group {
    margin-bottom: 1rem;
}

.form-inline {
    display: flex !important;
    flex-flow: row wrap !important;
    align-items: center !important;
}

/* ==========================
   Dropdown alignment shim
   ========================== */

/* Right/left alignment */
.dropdown-menu-right {
    right: 0 !important;
    left: auto !important;
}

.dropdown-menu-left {
    left: 0 !important;
    right: auto !important;
}

/* Dropup / dropright / dropleft variants */
.dropup .dropdown-menu-right,
.dropright .dropdown-menu-right,
.dropleft .dropdown-menu-right {
    right: 0 !important;
    left: auto !important;
}

/* Scrollable dropdown helper (BS4 used .dropdown-menu-scrollable) */
.dropdown-menu-scrollable {
    max-height: 300px;
    overflow-y: auto;
}

/* Optional: overflow-viewport helper */
.dropdown-menu-overflow {
    overflow: visible !important;
}

/* Dropdown item text wrapper (BS4 style) */
.dropdown-item .name,
.dropdown-item .location {
    display: inline-block;
}

/* Optional spacing / padding tweaks if needed */
.dropdown-menu ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

/* ==========================
   Navbar spacing & alignment
   ========================== */

/* Restore BS4 navbar padding */
.navbar {
    padding: 0.5rem 1rem; /* top/bottom, left/right */
    flex-wrap: nowrap; /* prevent unexpected wrap */
}

/* Restore BS4 brand padding and vertical alignment */
.navbar-brand {
    padding-top: 0.3125rem;
    padding-bottom: 0.3125rem;
    display: inline-block; /* prevent flex stretch issues */
}

/* Container around brand */
.navbar-brand-container {
    display: block;
    align-items: center; 
    justify-content: center; 
    width: 100%;
    max-width: 1563px; 
    padding-left: 15px; 
    padding-right: 15px;
    height: 100%;
    margin-left: auto;
    margin-right: auto;
}

@media (max-width: 1274.98px) {
    .navbar-brand-container {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
}

    .navbar-brand-container.container {
        display: block;
        align-items: center; 
        justify-content: center; 
        padding-left: 15px;
        padding-right: 15px;
        max-width: 1563px; 
        margin-left: auto;
        margin-right: auto;
    }

    .navbar-brand-container .navbar-brand {
        max-width: 131px;
        margin-bottom: 0;
        margin-top: 10px;
        margin-right: 1rem;
    }

@media (min-width: 1275px) {
    .navbar-brand-container .navbar-brand {
        max-width: 258px;
        margin-top: 20px;
        margin-left: -15px;
    }
}

/* Dropdowns inside navbar */
.navbar .dropdown-item .name, .navbar .dropdown-item .location {
    display: inline-block;
}

/* -------------------------------
   Restore BS4 row/col gutters
   ------------------------------- */
.row.no-gutters {
    margin-left: 0 !important;
    margin-right: 0 !important;
}

    .row.no-gutters > .col,
    .row.no-gutters > [class*="col-"] {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

.row {
    margin-left: -15px;
    margin-right: -15px;
}

.col,
.col-*,
.col-sm,
.col-sm-*,
.col-md,
.col-md-*,
.col-lg,
.col-lg-*,
.col-xl,
.col-xl-*,
.col-xxl,
.col-xxl-* {
    padding-left: 15px;
    padding-right: 15px;
}

    /* -------------------------------
   Ensure card-container pseudo-elements work
   ------------------------------- */
    .col.card-container,
    .col-md.card-container,
    .col-sm.card-container,
    .col-lg.card-container,
    .col-xl.card-container,
    .col-xxl.card-container {
        position: relative !important;
    }

/* -------------------------------
   3. Offset shim for non-column elements
   ------------------------------- */

/* Mobile / xs offsets */
.offset-1 {
    margin-left: 8.333333% !important;
}

.offset-2 {
    margin-left: 16.666667% !important;
}

.offset-3 {
    margin-left: 25% !important;
}

.offset-4 {
    margin-left: 33.333333% !important;
}

.offset-5 {
    margin-left: 41.666667% !important;
}

.offset-6 {
    margin-left: 50% !important;
}

.offset-7 {
    margin-left: 58.333333% !important;
}

.offset-8 {
    margin-left: 66.666667% !important;
}

.offset-9 {
    margin-left: 75% !important;
}

.offset-10 {
    margin-left: 83.333333% !important;
}

.offset-11 {
    margin-left: 91.666667% !important;
}

/* Sm breakpoint */
@media (min-width: 576px) {
    .offset-sm-1 {
        margin-left: 8.333333% !important;
    }

    .offset-sm-2 {
        margin-left: 16.666667% !important;
    }

    .offset-sm-3 {
        margin-left: 25% !important;
    }

    .offset-sm-4 {
        margin-left: 33.333333% !important;
    }

    .offset-sm-5 {
        margin-left: 41.666667% !important;
    }

    .offset-sm-6 {
        margin-left: 50% !important;
    }

    .offset-sm-7 {
        margin-left: 58.333333% !important;
    }

    .offset-sm-8 {
        margin-left: 66.666667% !important;
    }

    .offset-sm-9 {
        margin-left: 75% !important;
    }

    .offset-sm-10 {
        margin-left: 83.333333% !important;
    }

    .offset-sm-11 {
        margin-left: 91.666667% !important;
    }
}

/* Md breakpoint */
@media (min-width: 768px) {
    .offset-md-1 {
        margin-left: 8.333333% !important;
    }

    .offset-md-2 {
        margin-left: 16.666667% !important;
    }

    .offset-md-3 {
        margin-left: 25% !important;
    }

    .offset-md-4 {
        margin-left: 33.333333% !important;
    }

    .offset-md-5 {
        margin-left: 41.666667% !important;
    }

    .offset-md-6 {
        margin-left: 50% !important;
    }

    .offset-md-7 {
        margin-left: 58.333333% !important;
    }

    .offset-md-8 {
        margin-left: 66.666667% !important;
    }

    .offset-md-9 {
        margin-left: 75% !important;
    }

    .offset-md-10 {
        margin-left: 83.333333% !important;
    }

    .offset-md-11 {
        margin-left: 91.666667% !important;
    }
}

/* Lg breakpoint */
@media (min-width: 992px) {
    .offset-lg-1 {
        margin-left: 8.333333% !important;
    }

    .offset-lg-2 {
        margin-left: 16.666667% !important;
    }

    .offset-lg-3 {
        margin-left: 25% !important;
    }

    .offset-lg-4 {
        margin-left: 33.333333% !important;
    }

    .offset-lg-5 {
        margin-left: 41.666667% !important;
    }

    .offset-lg-6 {
        margin-left: 50% !important;
    }

    .offset-lg-7 {
        margin-left: 58.333333% !important;
    }

    .offset-lg-8 {
        margin-left: 66.666667% !important;
    }

    .offset-lg-9 {
        margin-left: 75% !important;
    }

    .offset-lg-10 {
        margin-left: 83.333333% !important;
    }

    .offset-lg-11 {
        margin-left: 91.666667% !important;
    }
}

/* Xl breakpoint */
@media (min-width: 1200px) {
    .offset-xl-1 {
        margin-left: 8.333333% !important;
    }

    .offset-xl-2 {
        margin-left: 16.666667% !important;
    }

    .offset-xl-3 {
        margin-left: 25% !important;
    }

    .offset-xl-4 {
        margin-left: 33.333333% !important;
    }

    .offset-xl-5 {
        margin-left: 41.666667% !important;
    }

    .offset-xl-6 {
        margin-left: 50% !important;
    }

    .offset-xl-7 {
        margin-left: 58.333333% !important;
    }

    .offset-xl-8 {
        margin-left: 66.666667% !important;
    }

    .offset-xl-9 {
        margin-left: 75% !important;
    }

    .offset-xl-10 {
        margin-left: 83.333333% !important;
    }

    .offset-xl-11 {
        margin-left: 91.666667% !important;
    }
}

/* Xxl breakpoint */
@media (min-width: 1400px) {
    .offset-xxl-1 {
        margin-left: 8.333333% !important;
    }

    .offset-xxl-2 {
        margin-left: 16.666667% !important;
    }

    .offset-xxl-3 {
        margin-left: 25% !important;
    }

    .offset-xxl-4 {
        margin-left: 33.333333% !important;
    }

    .offset-xxl-5 {
        margin-left: 41.666667% !important;
    }

    .offset-xxl-6 {
        margin-left: 50% !important;
    }

    .offset-xxl-7 {
        margin-left: 58.333333% !important;
    }

    .offset-xxl-8 {
        margin-left: 66.666667% !important;
    }

    .offset-xxl-9 {
        margin-left: 75% !important;
    }

    .offset-xxl-10 {
        margin-left: 83.333333% !important;
    }

    .offset-xxl-11 {
        margin-left: 91.666667% !important;
    }
}

/* ----------------------------------------
   4. Special fix for anchor-container inside row
   ---------------------------------------- */

/* BS4-style mobile centering for anchor-container */
@media (max-width: 575.98px) {
    .row > .anchor-container {
        width: auto !important; /* 🔑 critical */
        display: inline-flex; /* shrink to content */
        margin-left: auto !important;
        margin-right: auto !important;
    }
}

/* lg+ screens: normal flow */
@media (min-width: 992px) {
    .row > .anchor-container {
        display: block;
        width: auto;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
}


/* ==========================================
   BS4 List / Nav Shim
   Restores ul/ol spacing, padding, and alignment
   ========================================== */

/* Base: apply to all lists */
ul,
ol {
    padding-left: 2.5rem; /* BS4 default ~40px */
    margin-top: 0 !important;
    margin-bottom: 1rem !important;
}

    ul.list-unstyled, ul.list-inline {
        padding-left: 0 !important;
        list-style: none;
    }

    /* Horizontal text alignment helpers for menus */
    .text-left {
        text-align: left !important;
    }

.text-center {
    text-align: center !important;
}

.text-right {
    text-align: right !important;
}

/* Responsive alignment for menus */
@media (min-width: 576px) {
    .text-sm-left {
        text-align: left !important;
    }

    .text-sm-center {
        text-align: center !important;
    }

    .text-sm-right {
        text-align: right !important;
    }
}

@media (min-width: 768px) {
    .text-md-left {
        text-align: left !important;
    }

    .text-md-center {
        text-align: center !important;
    }

    .text-md-right {
        text-align: right !important;
    }
}

@media (min-width: 992px) {
    .text-lg-left {
        text-align: left !important;
    }

    .text-lg-center {
        text-align: center !important;
    }

    .text-lg-right {
        text-align: right !important;
    }
}

@media (min-width: 1200px) {
    .text-xl-left {
        text-align: left !important;
    }

    .text-xl-center {
        text-align: center !important;
    }

    .text-xl-right {
        text-align: right !important;
    }
}

@media (min-width: 1400px) {
    .text-xxl-left {
        text-align: left !important;
    }

    .text-xxl-center {
        text-align: center !important;
    }

    .text-xxl-right {
        text-align: right !important;
    }
}

/* Optional: preserve horizontal nav spacing inside nav menus */
.navbar-nav,
.nav,
[role="menubar"] {
    padding-left: 0; /* override Bootstrap 5 reset if needed */
    margin-left: 0;
    margin-right: 0;
}

/* BS4-style container padding */
.container,
.container-fluid,
.container-sm,
.container-md,
.container-lg,
.container-xl {
    padding-left: 15px;
    padding-right: 15px;
}

.col, .col-1, .col-2, .col-3, .col-4, .col-5, .col-6,
.col-7, .col-8, .col-9, .col-10, .col-11, .col-12,
.col-auto,
.col-sm, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6,
.col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-auto,
.col-md, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6,
.col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md-auto,
.col-lg, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6,
.col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-auto,
.col-xl, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6,
.col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl-auto,
.col-xxl, .col-xxl-1, .col-xxl-2, .col-xxl-3, .col-xxl-4, .col-xxl-5, .col-xxl-6,
.col-xxl-7, .col-xxl-8, .col-xxl-9, .col-xxl-10, .col-xxl-11, .col-xxl-12, .col-xxl-auto {
    padding-left: 15px;
    padding-right: 15px;
}

/* ==========================================
    THIS PART IS SPECIFIC FOR MACERICH SITE
   ========================================== */

/* MAIN MENU SHIM
   Restores ul/ol spacing, padding, and alignment */

ul#menu-menu {
    padding-left: 0 !important;
    margin-bottom: 0 !important;
}

    ul#menu-menu .nav-item a.nav-link {
        color: #231f20;
    }
        ul#menu-menu .nav-item a.nav-link:active, ul#menu-menu .nav-item a.nav-link.active {
            color: #00818f;
        }

        ul#menu-menu .nav-item a.nav-link:focus-visible {
            outline: none;
            box-shadow:none;
        }


body.mobile-is-active ul#menu-menu .nav-item a.nav-link[aria-expanded="true"] {
    font-size: 22px;
    font-weight: 600;
    line-height: 1em;
    color: #00818f;
}

header .navbar-brand-container.container.stuck {
    text-align: left;
    position: fixed;
    z-index: 2;
}

    @media screen and (min-width: 1275px) {
        ul #menu-menu .nav-item a.nav-link[aria-expanded=false]:after {
        transform: scaleX(0) !important;
    }
    ul#menu-menu .nav-item a.nav-link[aria-expanded=false]:focus:after {
        transform: scaleX(1) !important;
    }
    ul#menu-menu .nav-item a.nav-link[aria-expanded=true]:after {
        transform: scaleX(1) !important;
    }
}

body.mobile-is-active .navbar .dropdown-menu.show {
    position: relative !important;
    margin-top: 0 !important;
    height: auto !important;
    padding: 0 !important;
}

    body.mobile-is-active .navbar .dropdown-menu.show .container {
        margin-top: 1rem !important;
        background-color: #fff;
    }
@media screen and (max-width: 1274.98px) {
    body.mobile-is-active .navbar .dropdown-menu.show .container {
        padding-left: 20px !important;
    }
}

body.mobile-is-active .properties-dropdown .btn[aria-expanded="true"] {
    margin-top: 0 !important;
}

body.mobile-is-active .properties-dropdown .dropdown-menu.show {
    margin-top: 0 !important;
    padding-top: 0 !important;
} 

/*  CLOSE BUTTON
    Removes BS5 styling for .button-close */
.btn-close, .btn-close:hover {
    opacity: 1;
    background-image: none !important;
    padding: 4px 5px 2px 5px !important;
    width: auto;
    height: auto;
}

    .custom-block.properties-map-block form.properties-map-search .btn-close,
    .custom-block.dialog-block.leadership .btn-close {
        width: auto;
        height: auto;
        padding: 4px 5px 2px 5px;
    }

    div[role=radiogroup] .row > * {
        width: auto;
    }

.custom-block.hero-cover-block.hero-cover-block-form .form-container::before {
    content: unset !important;
    background-color: unset !important;
    position: unset !important;
    z-index: unset !important;
    width: unset !important;
}

@media (max-width: 767.98px) {
    .custom-block.hero-cover-block.hero-cover-block-form .form-container {
        padding-left: 50px !important;
    }
}
