/* Bootstrap utility extensions for FCPress */

:root {
    --fc-bootstrap-gap-0: 0;
    --fc-bootstrap-gap-1: 0.25rem;
    --fc-bootstrap-gap-2: 0.5rem;
    --fc-bootstrap-gap-3: 1rem;
    --fc-bootstrap-gap-4: 1.5rem;
    --fc-bootstrap-gap-5: 3rem;
    /* Extends Bootstrap spacing scale (0..5) with sane large steps. */
    --fc-space-6: 4rem;
    --fc-space-7: 5rem;
    --fc-space-8: 6rem;
    --fc-bootstrap-gap-6: var(--fc-space-6);
    --fc-bootstrap-gap-7: var(--fc-space-7);
    --fc-bootstrap-gap-8: var(--fc-space-8);
    --fc-bootstrap-offset-1: 0.25rem;
    --fc-bootstrap-offset-2: 0.5rem;
    --fc-bootstrap-offset-3: 1rem;
    --fc-bootstrap-offset-4: 1.5rem;
    --fc-bootstrap-offset-5: 3rem;
    --fc-bootstrap-offset-6: var(--fc-space-6);
    --fc-bootstrap-offset-7: var(--fc-space-7);
    --fc-bootstrap-offset-8: var(--fc-space-8);
    --fc-bootstrap-offset-9: 7rem;
    --fc-bootstrap-offset-10: 8rem;
    --fc-bootstrap-offset-11: 9rem;
    --fc-bootstrap-offset-12: 10rem;
    --fc-bootstrap-offset-13: 11rem;
    --fc-bootstrap-offset-14: 12rem;
    --fc-bootstrap-offset-15: 13rem;
    --fc-bootstrap-offset-16: 14rem;
    --fc-bootstrap-offset-17: 15rem;
    --fc-bootstrap-offset-18: 16rem;
    --fc-bootstrap-offset-19: 17rem;
    --fc-bootstrap-offset-20: 18rem;
}

/* Negative margin utility extensions matching the FCPress spacing scale. */
.m-n1 { margin: -0.25rem !important; }
.mt-n1, .my-n1 { margin-top: -0.25rem !important; }
.mr-n1, .mx-n1 { margin-right: -0.25rem !important; }
.mb-n1, .my-n1 { margin-bottom: -0.25rem !important; }
.ml-n1, .mx-n1 { margin-left: -0.25rem !important; }
.m-n2 { margin: -0.5rem !important; }
.mt-n2, .my-n2 { margin-top: -0.5rem !important; }
.mr-n2, .mx-n2 { margin-right: -0.5rem !important; }
.mb-n2, .my-n2 { margin-bottom: -0.5rem !important; }
.ml-n2, .mx-n2 { margin-left: -0.5rem !important; }
.m-n3 { margin: -1rem !important; }
.mt-n3, .my-n3 { margin-top: -1rem !important; }
.mr-n3, .mx-n3 { margin-right: -1rem !important; }
.mb-n3, .my-n3 { margin-bottom: -1rem !important; }
.ml-n3, .mx-n3 { margin-left: -1rem !important; }
.m-n4 { margin: -1.5rem !important; }
.mt-n4, .my-n4 { margin-top: -1.5rem !important; }
.mr-n4, .mx-n4 { margin-right: -1.5rem !important; }
.mb-n4, .my-n4 { margin-bottom: -1.5rem !important; }
.ml-n4, .mx-n4 { margin-left: -1.5rem !important; }
.m-n5 { margin: -3rem !important; }
.mt-n5, .my-n5 { margin-top: -3rem !important; }
.mr-n5, .mx-n5 { margin-right: -3rem !important; }
.mb-n5, .my-n5 { margin-bottom: -3rem !important; }
.ml-n5, .mx-n5 { margin-left: -3rem !important; }
.m-n6 { margin: calc(var(--fc-space-6) * -1) !important; }
.mt-n6, .my-n6 { margin-top: calc(var(--fc-space-6) * -1) !important; }
.mr-n6, .mx-n6 { margin-right: calc(var(--fc-space-6) * -1) !important; }
.mb-n6, .my-n6 { margin-bottom: calc(var(--fc-space-6) * -1) !important; }
.ml-n6, .mx-n6 { margin-left: calc(var(--fc-space-6) * -1) !important; }
.m-n7 { margin: calc(var(--fc-space-7) * -1) !important; }
.mt-n7, .my-n7 { margin-top: calc(var(--fc-space-7) * -1) !important; }
.mr-n7, .mx-n7 { margin-right: calc(var(--fc-space-7) * -1) !important; }
.mb-n7, .my-n7 { margin-bottom: calc(var(--fc-space-7) * -1) !important; }
.ml-n7, .mx-n7 { margin-left: calc(var(--fc-space-7) * -1) !important; }
.m-n8 { margin: calc(var(--fc-space-8) * -1) !important; }
.mt-n8, .my-n8 { margin-top: calc(var(--fc-space-8) * -1) !important; }
.mr-n8, .mx-n8 { margin-right: calc(var(--fc-space-8) * -1) !important; }
.mb-n8, .my-n8 { margin-bottom: calc(var(--fc-space-8) * -1) !important; }
.ml-n8, .mx-n8 { margin-left: calc(var(--fc-space-8) * -1) !important; }

@media (min-width: 576px) {
    .m-sm-n1 { margin: -0.25rem !important; }
    .mt-sm-n1, .my-sm-n1 { margin-top: -0.25rem !important; }
    .mr-sm-n1, .mx-sm-n1 { margin-right: -0.25rem !important; }
    .mb-sm-n1, .my-sm-n1 { margin-bottom: -0.25rem !important; }
    .ml-sm-n1, .mx-sm-n1 { margin-left: -0.25rem !important; }
    .m-sm-n2 { margin: -0.5rem !important; }
    .mt-sm-n2, .my-sm-n2 { margin-top: -0.5rem !important; }
    .mr-sm-n2, .mx-sm-n2 { margin-right: -0.5rem !important; }
    .mb-sm-n2, .my-sm-n2 { margin-bottom: -0.5rem !important; }
    .ml-sm-n2, .mx-sm-n2 { margin-left: -0.5rem !important; }
    .m-sm-n3 { margin: -1rem !important; }
    .mt-sm-n3, .my-sm-n3 { margin-top: -1rem !important; }
    .mr-sm-n3, .mx-sm-n3 { margin-right: -1rem !important; }
    .mb-sm-n3, .my-sm-n3 { margin-bottom: -1rem !important; }
    .ml-sm-n3, .mx-sm-n3 { margin-left: -1rem !important; }
    .m-sm-n4 { margin: -1.5rem !important; }
    .mt-sm-n4, .my-sm-n4 { margin-top: -1.5rem !important; }
    .mr-sm-n4, .mx-sm-n4 { margin-right: -1.5rem !important; }
    .mb-sm-n4, .my-sm-n4 { margin-bottom: -1.5rem !important; }
    .ml-sm-n4, .mx-sm-n4 { margin-left: -1.5rem !important; }
    .m-sm-n5 { margin: -3rem !important; }
    .mt-sm-n5, .my-sm-n5 { margin-top: -3rem !important; }
    .mr-sm-n5, .mx-sm-n5 { margin-right: -3rem !important; }
    .mb-sm-n5, .my-sm-n5 { margin-bottom: -3rem !important; }
    .ml-sm-n5, .mx-sm-n5 { margin-left: -3rem !important; }
    .m-sm-n6 { margin: calc(var(--fc-space-6) * -1) !important; }
    .mt-sm-n6, .my-sm-n6 { margin-top: calc(var(--fc-space-6) * -1) !important; }
    .mr-sm-n6, .mx-sm-n6 { margin-right: calc(var(--fc-space-6) * -1) !important; }
    .mb-sm-n6, .my-sm-n6 { margin-bottom: calc(var(--fc-space-6) * -1) !important; }
    .ml-sm-n6, .mx-sm-n6 { margin-left: calc(var(--fc-space-6) * -1) !important; }
    .m-sm-n7 { margin: calc(var(--fc-space-7) * -1) !important; }
    .mt-sm-n7, .my-sm-n7 { margin-top: calc(var(--fc-space-7) * -1) !important; }
    .mr-sm-n7, .mx-sm-n7 { margin-right: calc(var(--fc-space-7) * -1) !important; }
    .mb-sm-n7, .my-sm-n7 { margin-bottom: calc(var(--fc-space-7) * -1) !important; }
    .ml-sm-n7, .mx-sm-n7 { margin-left: calc(var(--fc-space-7) * -1) !important; }
    .m-sm-n8 { margin: calc(var(--fc-space-8) * -1) !important; }
    .mt-sm-n8, .my-sm-n8 { margin-top: calc(var(--fc-space-8) * -1) !important; }
    .mr-sm-n8, .mx-sm-n8 { margin-right: calc(var(--fc-space-8) * -1) !important; }
    .mb-sm-n8, .my-sm-n8 { margin-bottom: calc(var(--fc-space-8) * -1) !important; }
    .ml-sm-n8, .mx-sm-n8 { margin-left: calc(var(--fc-space-8) * -1) !important; }
}

@media (min-width: 768px) {
    .m-md-n1 { margin: -0.25rem !important; }
    .mt-md-n1, .my-md-n1 { margin-top: -0.25rem !important; }
    .mr-md-n1, .mx-md-n1 { margin-right: -0.25rem !important; }
    .mb-md-n1, .my-md-n1 { margin-bottom: -0.25rem !important; }
    .ml-md-n1, .mx-md-n1 { margin-left: -0.25rem !important; }
    .m-md-n2 { margin: -0.5rem !important; }
    .mt-md-n2, .my-md-n2 { margin-top: -0.5rem !important; }
    .mr-md-n2, .mx-md-n2 { margin-right: -0.5rem !important; }
    .mb-md-n2, .my-md-n2 { margin-bottom: -0.5rem !important; }
    .ml-md-n2, .mx-md-n2 { margin-left: -0.5rem !important; }
    .m-md-n3 { margin: -1rem !important; }
    .mt-md-n3, .my-md-n3 { margin-top: -1rem !important; }
    .mr-md-n3, .mx-md-n3 { margin-right: -1rem !important; }
    .mb-md-n3, .my-md-n3 { margin-bottom: -1rem !important; }
    .ml-md-n3, .mx-md-n3 { margin-left: -1rem !important; }
    .m-md-n4 { margin: -1.5rem !important; }
    .mt-md-n4, .my-md-n4 { margin-top: -1.5rem !important; }
    .mr-md-n4, .mx-md-n4 { margin-right: -1.5rem !important; }
    .mb-md-n4, .my-md-n4 { margin-bottom: -1.5rem !important; }
    .ml-md-n4, .mx-md-n4 { margin-left: -1.5rem !important; }
    .m-md-n5 { margin: -3rem !important; }
    .mt-md-n5, .my-md-n5 { margin-top: -3rem !important; }
    .mr-md-n5, .mx-md-n5 { margin-right: -3rem !important; }
    .mb-md-n5, .my-md-n5 { margin-bottom: -3rem !important; }
    .ml-md-n5, .mx-md-n5 { margin-left: -3rem !important; }
    .m-md-n6 { margin: calc(var(--fc-space-6) * -1) !important; }
    .mt-md-n6, .my-md-n6 { margin-top: calc(var(--fc-space-6) * -1) !important; }
    .mr-md-n6, .mx-md-n6 { margin-right: calc(var(--fc-space-6) * -1) !important; }
    .mb-md-n6, .my-md-n6 { margin-bottom: calc(var(--fc-space-6) * -1) !important; }
    .ml-md-n6, .mx-md-n6 { margin-left: calc(var(--fc-space-6) * -1) !important; }
    .m-md-n7 { margin: calc(var(--fc-space-7) * -1) !important; }
    .mt-md-n7, .my-md-n7 { margin-top: calc(var(--fc-space-7) * -1) !important; }
    .mr-md-n7, .mx-md-n7 { margin-right: calc(var(--fc-space-7) * -1) !important; }
    .mb-md-n7, .my-md-n7 { margin-bottom: calc(var(--fc-space-7) * -1) !important; }
    .ml-md-n7, .mx-md-n7 { margin-left: calc(var(--fc-space-7) * -1) !important; }
    .m-md-n8 { margin: calc(var(--fc-space-8) * -1) !important; }
    .mt-md-n8, .my-md-n8 { margin-top: calc(var(--fc-space-8) * -1) !important; }
    .mr-md-n8, .mx-md-n8 { margin-right: calc(var(--fc-space-8) * -1) !important; }
    .mb-md-n8, .my-md-n8 { margin-bottom: calc(var(--fc-space-8) * -1) !important; }
    .ml-md-n8, .mx-md-n8 { margin-left: calc(var(--fc-space-8) * -1) !important; }
}

@media (min-width: 992px) {
    .m-lg-n1 { margin: -0.25rem !important; }
    .mt-lg-n1, .my-lg-n1 { margin-top: -0.25rem !important; }
    .mr-lg-n1, .mx-lg-n1 { margin-right: -0.25rem !important; }
    .mb-lg-n1, .my-lg-n1 { margin-bottom: -0.25rem !important; }
    .ml-lg-n1, .mx-lg-n1 { margin-left: -0.25rem !important; }
    .m-lg-n2 { margin: -0.5rem !important; }
    .mt-lg-n2, .my-lg-n2 { margin-top: -0.5rem !important; }
    .mr-lg-n2, .mx-lg-n2 { margin-right: -0.5rem !important; }
    .mb-lg-n2, .my-lg-n2 { margin-bottom: -0.5rem !important; }
    .ml-lg-n2, .mx-lg-n2 { margin-left: -0.5rem !important; }
    .m-lg-n3 { margin: -1rem !important; }
    .mt-lg-n3, .my-lg-n3 { margin-top: -1rem !important; }
    .mr-lg-n3, .mx-lg-n3 { margin-right: -1rem !important; }
    .mb-lg-n3, .my-lg-n3 { margin-bottom: -1rem !important; }
    .ml-lg-n3, .mx-lg-n3 { margin-left: -1rem !important; }
    .m-lg-n4 { margin: -1.5rem !important; }
    .mt-lg-n4, .my-lg-n4 { margin-top: -1.5rem !important; }
    .mr-lg-n4, .mx-lg-n4 { margin-right: -1.5rem !important; }
    .mb-lg-n4, .my-lg-n4 { margin-bottom: -1.5rem !important; }
    .ml-lg-n4, .mx-lg-n4 { margin-left: -1.5rem !important; }
    .m-lg-n5 { margin: -3rem !important; }
    .mt-lg-n5, .my-lg-n5 { margin-top: -3rem !important; }
    .mr-lg-n5, .mx-lg-n5 { margin-right: -3rem !important; }
    .mb-lg-n5, .my-lg-n5 { margin-bottom: -3rem !important; }
    .ml-lg-n5, .mx-lg-n5 { margin-left: -3rem !important; }
    .m-lg-n6 { margin: calc(var(--fc-space-6) * -1) !important; }
    .mt-lg-n6, .my-lg-n6 { margin-top: calc(var(--fc-space-6) * -1) !important; }
    .mr-lg-n6, .mx-lg-n6 { margin-right: calc(var(--fc-space-6) * -1) !important; }
    .mb-lg-n6, .my-lg-n6 { margin-bottom: calc(var(--fc-space-6) * -1) !important; }
    .ml-lg-n6, .mx-lg-n6 { margin-left: calc(var(--fc-space-6) * -1) !important; }
    .m-lg-n7 { margin: calc(var(--fc-space-7) * -1) !important; }
    .mt-lg-n7, .my-lg-n7 { margin-top: calc(var(--fc-space-7) * -1) !important; }
    .mr-lg-n7, .mx-lg-n7 { margin-right: calc(var(--fc-space-7) * -1) !important; }
    .mb-lg-n7, .my-lg-n7 { margin-bottom: calc(var(--fc-space-7) * -1) !important; }
    .ml-lg-n7, .mx-lg-n7 { margin-left: calc(var(--fc-space-7) * -1) !important; }
    .m-lg-n8 { margin: calc(var(--fc-space-8) * -1) !important; }
    .mt-lg-n8, .my-lg-n8 { margin-top: calc(var(--fc-space-8) * -1) !important; }
    .mr-lg-n8, .mx-lg-n8 { margin-right: calc(var(--fc-space-8) * -1) !important; }
    .mb-lg-n8, .my-lg-n8 { margin-bottom: calc(var(--fc-space-8) * -1) !important; }
    .ml-lg-n8, .mx-lg-n8 { margin-left: calc(var(--fc-space-8) * -1) !important; }
}

@media (min-width: 1200px) {
    .m-xl-n1 { margin: -0.25rem !important; }
    .mt-xl-n1, .my-xl-n1 { margin-top: -0.25rem !important; }
    .mr-xl-n1, .mx-xl-n1 { margin-right: -0.25rem !important; }
    .mb-xl-n1, .my-xl-n1 { margin-bottom: -0.25rem !important; }
    .ml-xl-n1, .mx-xl-n1 { margin-left: -0.25rem !important; }
    .m-xl-n2 { margin: -0.5rem !important; }
    .mt-xl-n2, .my-xl-n2 { margin-top: -0.5rem !important; }
    .mr-xl-n2, .mx-xl-n2 { margin-right: -0.5rem !important; }
    .mb-xl-n2, .my-xl-n2 { margin-bottom: -0.5rem !important; }
    .ml-xl-n2, .mx-xl-n2 { margin-left: -0.5rem !important; }
    .m-xl-n3 { margin: -1rem !important; }
    .mt-xl-n3, .my-xl-n3 { margin-top: -1rem !important; }
    .mr-xl-n3, .mx-xl-n3 { margin-right: -1rem !important; }
    .mb-xl-n3, .my-xl-n3 { margin-bottom: -1rem !important; }
    .ml-xl-n3, .mx-xl-n3 { margin-left: -1rem !important; }
    .m-xl-n4 { margin: -1.5rem !important; }
    .mt-xl-n4, .my-xl-n4 { margin-top: -1.5rem !important; }
    .mr-xl-n4, .mx-xl-n4 { margin-right: -1.5rem !important; }
    .mb-xl-n4, .my-xl-n4 { margin-bottom: -1.5rem !important; }
    .ml-xl-n4, .mx-xl-n4 { margin-left: -1.5rem !important; }
    .m-xl-n5 { margin: -3rem !important; }
    .mt-xl-n5, .my-xl-n5 { margin-top: -3rem !important; }
    .mr-xl-n5, .mx-xl-n5 { margin-right: -3rem !important; }
    .mb-xl-n5, .my-xl-n5 { margin-bottom: -3rem !important; }
    .ml-xl-n5, .mx-xl-n5 { margin-left: -3rem !important; }
    .m-xl-n6 { margin: calc(var(--fc-space-6) * -1) !important; }
    .mt-xl-n6, .my-xl-n6 { margin-top: calc(var(--fc-space-6) * -1) !important; }
    .mr-xl-n6, .mx-xl-n6 { margin-right: calc(var(--fc-space-6) * -1) !important; }
    .mb-xl-n6, .my-xl-n6 { margin-bottom: calc(var(--fc-space-6) * -1) !important; }
    .ml-xl-n6, .mx-xl-n6 { margin-left: calc(var(--fc-space-6) * -1) !important; }
    .m-xl-n7 { margin: calc(var(--fc-space-7) * -1) !important; }
    .mt-xl-n7, .my-xl-n7 { margin-top: calc(var(--fc-space-7) * -1) !important; }
    .mr-xl-n7, .mx-xl-n7 { margin-right: calc(var(--fc-space-7) * -1) !important; }
    .mb-xl-n7, .my-xl-n7 { margin-bottom: calc(var(--fc-space-7) * -1) !important; }
    .ml-xl-n7, .mx-xl-n7 { margin-left: calc(var(--fc-space-7) * -1) !important; }
    .m-xl-n8 { margin: calc(var(--fc-space-8) * -1) !important; }
    .mt-xl-n8, .my-xl-n8 { margin-top: calc(var(--fc-space-8) * -1) !important; }
    .mr-xl-n8, .mx-xl-n8 { margin-right: calc(var(--fc-space-8) * -1) !important; }
    .mb-xl-n8, .my-xl-n8 { margin-bottom: calc(var(--fc-space-8) * -1) !important; }
    .ml-xl-n8, .mx-xl-n8 { margin-left: calc(var(--fc-space-8) * -1) !important; }
}

@media (min-width: 1400px) {
    .m-xxl-n1 { margin: -0.25rem !important; }
    .mt-xxl-n1, .my-xxl-n1 { margin-top: -0.25rem !important; }
    .mr-xxl-n1, .mx-xxl-n1 { margin-right: -0.25rem !important; }
    .mb-xxl-n1, .my-xxl-n1 { margin-bottom: -0.25rem !important; }
    .ml-xxl-n1, .mx-xxl-n1 { margin-left: -0.25rem !important; }
    .m-xxl-n2 { margin: -0.5rem !important; }
    .mt-xxl-n2, .my-xxl-n2 { margin-top: -0.5rem !important; }
    .mr-xxl-n2, .mx-xxl-n2 { margin-right: -0.5rem !important; }
    .mb-xxl-n2, .my-xxl-n2 { margin-bottom: -0.5rem !important; }
    .ml-xxl-n2, .mx-xxl-n2 { margin-left: -0.5rem !important; }
    .m-xxl-n3 { margin: -1rem !important; }
    .mt-xxl-n3, .my-xxl-n3 { margin-top: -1rem !important; }
    .mr-xxl-n3, .mx-xxl-n3 { margin-right: -1rem !important; }
    .mb-xxl-n3, .my-xxl-n3 { margin-bottom: -1rem !important; }
    .ml-xxl-n3, .mx-xxl-n3 { margin-left: -1rem !important; }
    .m-xxl-n4 { margin: -1.5rem !important; }
    .mt-xxl-n4, .my-xxl-n4 { margin-top: -1.5rem !important; }
    .mr-xxl-n4, .mx-xxl-n4 { margin-right: -1.5rem !important; }
    .mb-xxl-n4, .my-xxl-n4 { margin-bottom: -1.5rem !important; }
    .ml-xxl-n4, .mx-xxl-n4 { margin-left: -1.5rem !important; }
    .m-xxl-n5 { margin: -3rem !important; }
    .mt-xxl-n5, .my-xxl-n5 { margin-top: -3rem !important; }
    .mr-xxl-n5, .mx-xxl-n5 { margin-right: -3rem !important; }
    .mb-xxl-n5, .my-xxl-n5 { margin-bottom: -3rem !important; }
    .ml-xxl-n5, .mx-xxl-n5 { margin-left: -3rem !important; }
    .m-xxl-n6 { margin: calc(var(--fc-space-6) * -1) !important; }
    .mt-xxl-n6, .my-xxl-n6 { margin-top: calc(var(--fc-space-6) * -1) !important; }
    .mr-xxl-n6, .mx-xxl-n6 { margin-right: calc(var(--fc-space-6) * -1) !important; }
    .mb-xxl-n6, .my-xxl-n6 { margin-bottom: calc(var(--fc-space-6) * -1) !important; }
    .ml-xxl-n6, .mx-xxl-n6 { margin-left: calc(var(--fc-space-6) * -1) !important; }
    .m-xxl-n7 { margin: calc(var(--fc-space-7) * -1) !important; }
    .mt-xxl-n7, .my-xxl-n7 { margin-top: calc(var(--fc-space-7) * -1) !important; }
    .mr-xxl-n7, .mx-xxl-n7 { margin-right: calc(var(--fc-space-7) * -1) !important; }
    .mb-xxl-n7, .my-xxl-n7 { margin-bottom: calc(var(--fc-space-7) * -1) !important; }
    .ml-xxl-n7, .mx-xxl-n7 { margin-left: calc(var(--fc-space-7) * -1) !important; }
    .m-xxl-n8 { margin: calc(var(--fc-space-8) * -1) !important; }
    .mt-xxl-n8, .my-xxl-n8 { margin-top: calc(var(--fc-space-8) * -1) !important; }
    .mr-xxl-n8, .mx-xxl-n8 { margin-right: calc(var(--fc-space-8) * -1) !important; }
    .mb-xxl-n8, .my-xxl-n8 { margin-bottom: calc(var(--fc-space-8) * -1) !important; }
    .ml-xxl-n8, .mx-xxl-n8 { margin-left: calc(var(--fc-space-8) * -1) !important; }
}

/* Let flex-based block layouts size Bootstrap columns without gap forcing an early wrap. */

:where(.wp-block-columns, .is-layout-flex, .row, .d-flex)
    > :is(
        .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-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-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-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-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-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-xxxl-1, .col-xxxl-2, .col-xxxl-3, .col-xxxl-4, .col-xxxl-5, .col-xxxl-6, .col-xxxl-7, .col-xxxl-8, .col-xxxl-9, .col-xxxl-10, .col-xxxl-11, .col-xxxl-12,
        .col-xxxxl-1, .col-xxxxl-2, .col-xxxxl-3, .col-xxxxl-4, .col-xxxxl-5, .col-xxxxl-6, .col-xxxxl-7, .col-xxxxl-8, .col-xxxxl-9, .col-xxxxl-10, .col-xxxxl-11, .col-xxxxl-12
    ) {
    box-sizing: border-box;
    flex: 0 0 auto;
    flex-basis: auto !important;
    min-width: 0;
    max-width: 100%;
    width: 100%;
}

:where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-1 { --fc-bootstrap-span: 1; }
:where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-2 { --fc-bootstrap-span: 2; }
:where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-3 { --fc-bootstrap-span: 3; }
:where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-4 { --fc-bootstrap-span: 4; }
:where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-5 { --fc-bootstrap-span: 5; }
:where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-6 { --fc-bootstrap-span: 6; }
:where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-7 { --fc-bootstrap-span: 7; }
:where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-8 { --fc-bootstrap-span: 8; }
:where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-9 { --fc-bootstrap-span: 9; }
:where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-10 { --fc-bootstrap-span: 10; }
:where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-11 { --fc-bootstrap-span: 11; }
:where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-12 { --fc-bootstrap-span: 12; }

:where(.wp-block-columns, .is-layout-flex, .row, .d-flex)
    > :is(.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12) {
    flex-basis: calc((100% * var(--fc-bootstrap-span) / 12) - (var(--fc-bootstrap-parent-gap, 0px) * (1 - (var(--fc-bootstrap-span) / 12)))) !important;
    max-width: calc((100% * var(--fc-bootstrap-span) / 12) - (var(--fc-bootstrap-parent-gap, 0px) * (1 - (var(--fc-bootstrap-span) / 12))));
    width: calc((100% * var(--fc-bootstrap-span) / 12) - (var(--fc-bootstrap-parent-gap, 0px) * (1 - (var(--fc-bootstrap-span) / 12))));
}

@media (min-width: 576px) {
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex).gap-sm-0 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-0) !important; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex).gap-sm-1 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-1) !important; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex).gap-sm-2 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-2) !important; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex).gap-sm-3 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-3) !important; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex).gap-sm-4 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-4) !important; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex).gap-sm-5 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-5) !important; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex).gap-sm-6 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-6) !important; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex).gap-sm-7 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-7) !important; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex).gap-sm-8 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-8) !important; }

    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-sm-1 { --fc-bootstrap-span: 1; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-sm-2 { --fc-bootstrap-span: 2; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-sm-3 { --fc-bootstrap-span: 3; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-sm-4 { --fc-bootstrap-span: 4; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-sm-5 { --fc-bootstrap-span: 5; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-sm-6 { --fc-bootstrap-span: 6; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-sm-7 { --fc-bootstrap-span: 7; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-sm-8 { --fc-bootstrap-span: 8; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-sm-9 { --fc-bootstrap-span: 9; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-sm-10 { --fc-bootstrap-span: 10; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-sm-11 { --fc-bootstrap-span: 11; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-sm-12 { --fc-bootstrap-span: 12; }

    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex)
        > :is(.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) {
        flex-basis: calc((100% * var(--fc-bootstrap-span) / 12) - (var(--fc-bootstrap-parent-gap, 0px) * (1 - (var(--fc-bootstrap-span) / 12)))) !important;
        max-width: calc((100% * var(--fc-bootstrap-span) / 12) - (var(--fc-bootstrap-parent-gap, 0px) * (1 - (var(--fc-bootstrap-span) / 12))));
        width: calc((100% * var(--fc-bootstrap-span) / 12) - (var(--fc-bootstrap-parent-gap, 0px) * (1 - (var(--fc-bootstrap-span) / 12))));
    }
}

@media (min-width: 768px) {
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex).gap-md-0 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-0) !important; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex).gap-md-1 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-1) !important; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex).gap-md-2 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-2) !important; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex).gap-md-3 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-3) !important; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex).gap-md-4 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-4) !important; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex).gap-md-5 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-5) !important; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex).gap-md-6 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-6) !important; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex).gap-md-7 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-7) !important; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex).gap-md-8 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-8) !important; }

    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-md-1 { --fc-bootstrap-span: 1; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-md-2 { --fc-bootstrap-span: 2; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-md-3 { --fc-bootstrap-span: 3; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-md-4 { --fc-bootstrap-span: 4; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-md-5 { --fc-bootstrap-span: 5; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-md-6 { --fc-bootstrap-span: 6; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-md-7 { --fc-bootstrap-span: 7; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-md-8 { --fc-bootstrap-span: 8; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-md-9 { --fc-bootstrap-span: 9; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-md-10 { --fc-bootstrap-span: 10; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-md-11 { --fc-bootstrap-span: 11; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-md-12 { --fc-bootstrap-span: 12; }

    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex)
        > :is(.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) {
        flex-basis: calc((100% * var(--fc-bootstrap-span) / 12) - (var(--fc-bootstrap-parent-gap, 0px) * (1 - (var(--fc-bootstrap-span) / 12)))) !important;
        max-width: calc((100% * var(--fc-bootstrap-span) / 12) - (var(--fc-bootstrap-parent-gap, 0px) * (1 - (var(--fc-bootstrap-span) / 12))));
        width: calc((100% * var(--fc-bootstrap-span) / 12) - (var(--fc-bootstrap-parent-gap, 0px) * (1 - (var(--fc-bootstrap-span) / 12))));
    }
}

@media (min-width: 992px) {
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex).gap-lg-0 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-0) !important; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex).gap-lg-1 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-1) !important; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex).gap-lg-2 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-2) !important; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex).gap-lg-3 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-3) !important; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex).gap-lg-4 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-4) !important; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex).gap-lg-5 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-5) !important; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex).gap-lg-6 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-6) !important; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex).gap-lg-7 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-7) !important; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex).gap-lg-8 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-8) !important; }

    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-lg-1 { --fc-bootstrap-span: 1; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-lg-2 { --fc-bootstrap-span: 2; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-lg-3 { --fc-bootstrap-span: 3; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-lg-4 { --fc-bootstrap-span: 4; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-lg-5 { --fc-bootstrap-span: 5; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-lg-6 { --fc-bootstrap-span: 6; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-lg-7 { --fc-bootstrap-span: 7; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-lg-8 { --fc-bootstrap-span: 8; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-lg-9 { --fc-bootstrap-span: 9; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-lg-10 { --fc-bootstrap-span: 10; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-lg-11 { --fc-bootstrap-span: 11; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-lg-12 { --fc-bootstrap-span: 12; }

    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex)
        > :is(.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) {
        flex-basis: calc((100% * var(--fc-bootstrap-span) / 12) - (var(--fc-bootstrap-parent-gap, 0px) * (1 - (var(--fc-bootstrap-span) / 12)))) !important;
        max-width: calc((100% * var(--fc-bootstrap-span) / 12) - (var(--fc-bootstrap-parent-gap, 0px) * (1 - (var(--fc-bootstrap-span) / 12))));
        width: calc((100% * var(--fc-bootstrap-span) / 12) - (var(--fc-bootstrap-parent-gap, 0px) * (1 - (var(--fc-bootstrap-span) / 12))));
    }
}

@media (min-width: 1200px) {
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex).gap-xl-0 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-0) !important; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex).gap-xl-1 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-1) !important; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex).gap-xl-2 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-2) !important; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex).gap-xl-3 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-3) !important; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex).gap-xl-4 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-4) !important; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex).gap-xl-5 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-5) !important; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex).gap-xl-6 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-6) !important; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex).gap-xl-7 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-7) !important; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex).gap-xl-8 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-8) !important; }

    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-xl-1 { --fc-bootstrap-span: 1; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-xl-2 { --fc-bootstrap-span: 2; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-xl-3 { --fc-bootstrap-span: 3; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-xl-4 { --fc-bootstrap-span: 4; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-xl-5 { --fc-bootstrap-span: 5; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-xl-6 { --fc-bootstrap-span: 6; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-xl-7 { --fc-bootstrap-span: 7; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-xl-8 { --fc-bootstrap-span: 8; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-xl-9 { --fc-bootstrap-span: 9; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-xl-10 { --fc-bootstrap-span: 10; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-xl-11 { --fc-bootstrap-span: 11; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-xl-12 { --fc-bootstrap-span: 12; }

    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex)
        > :is(.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) {
        flex-basis: calc((100% * var(--fc-bootstrap-span) / 12) - (var(--fc-bootstrap-parent-gap, 0px) * (1 - (var(--fc-bootstrap-span) / 12)))) !important;
        max-width: calc((100% * var(--fc-bootstrap-span) / 12) - (var(--fc-bootstrap-parent-gap, 0px) * (1 - (var(--fc-bootstrap-span) / 12))));
        width: calc((100% * var(--fc-bootstrap-span) / 12) - (var(--fc-bootstrap-parent-gap, 0px) * (1 - (var(--fc-bootstrap-span) / 12))));
    }
}

@media (min-width: 1400px) {
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex).gap-xxl-0 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-0) !important; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex).gap-xxl-1 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-1) !important; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex).gap-xxl-2 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-2) !important; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex).gap-xxl-3 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-3) !important; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex).gap-xxl-4 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-4) !important; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex).gap-xxl-5 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-5) !important; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex).gap-xxl-6 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-6) !important; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex).gap-xxl-7 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-7) !important; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex).gap-xxl-8 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-8) !important; }

    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-xxl-1 { --fc-bootstrap-span: 1; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-xxl-2 { --fc-bootstrap-span: 2; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-xxl-3 { --fc-bootstrap-span: 3; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-xxl-4 { --fc-bootstrap-span: 4; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-xxl-5 { --fc-bootstrap-span: 5; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-xxl-6 { --fc-bootstrap-span: 6; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-xxl-7 { --fc-bootstrap-span: 7; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-xxl-8 { --fc-bootstrap-span: 8; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-xxl-9 { --fc-bootstrap-span: 9; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-xxl-10 { --fc-bootstrap-span: 10; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-xxl-11 { --fc-bootstrap-span: 11; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-xxl-12 { --fc-bootstrap-span: 12; }

    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex)
        > :is(.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) {
        flex-basis: calc((100% * var(--fc-bootstrap-span) / 12) - (var(--fc-bootstrap-parent-gap, 0px) * (1 - (var(--fc-bootstrap-span) / 12)))) !important;
        max-width: calc((100% * var(--fc-bootstrap-span) / 12) - (var(--fc-bootstrap-parent-gap, 0px) * (1 - (var(--fc-bootstrap-span) / 12))));
        width: calc((100% * var(--fc-bootstrap-span) / 12) - (var(--fc-bootstrap-parent-gap, 0px) * (1 - (var(--fc-bootstrap-span) / 12))));
    }
}

@media (min-width: 1600px) {
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-xxxl-1 { --fc-bootstrap-span: 1; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-xxxl-2 { --fc-bootstrap-span: 2; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-xxxl-3 { --fc-bootstrap-span: 3; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-xxxl-4 { --fc-bootstrap-span: 4; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-xxxl-5 { --fc-bootstrap-span: 5; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-xxxl-6 { --fc-bootstrap-span: 6; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-xxxl-7 { --fc-bootstrap-span: 7; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-xxxl-8 { --fc-bootstrap-span: 8; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-xxxl-9 { --fc-bootstrap-span: 9; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-xxxl-10 { --fc-bootstrap-span: 10; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-xxxl-11 { --fc-bootstrap-span: 11; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-xxxl-12 { --fc-bootstrap-span: 12; }

    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex)
        > :is(.col-xxxl-1, .col-xxxl-2, .col-xxxl-3, .col-xxxl-4, .col-xxxl-5, .col-xxxl-6, .col-xxxl-7, .col-xxxl-8, .col-xxxl-9, .col-xxxl-10, .col-xxxl-11, .col-xxxl-12) {
        flex-basis: calc((100% * var(--fc-bootstrap-span) / 12) - (var(--fc-bootstrap-parent-gap, 0px) * (1 - (var(--fc-bootstrap-span) / 12)))) !important;
        max-width: calc((100% * var(--fc-bootstrap-span) / 12) - (var(--fc-bootstrap-parent-gap, 0px) * (1 - (var(--fc-bootstrap-span) / 12))));
        width: calc((100% * var(--fc-bootstrap-span) / 12) - (var(--fc-bootstrap-parent-gap, 0px) * (1 - (var(--fc-bootstrap-span) / 12))));
    }
}

@media (min-width: 1920px) {
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-xxxxl-1 { --fc-bootstrap-span: 1; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-xxxxl-2 { --fc-bootstrap-span: 2; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-xxxxl-3 { --fc-bootstrap-span: 3; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-xxxxl-4 { --fc-bootstrap-span: 4; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-xxxxl-5 { --fc-bootstrap-span: 5; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-xxxxl-6 { --fc-bootstrap-span: 6; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-xxxxl-7 { --fc-bootstrap-span: 7; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-xxxxl-8 { --fc-bootstrap-span: 8; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-xxxxl-9 { --fc-bootstrap-span: 9; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-xxxxl-10 { --fc-bootstrap-span: 10; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-xxxxl-11 { --fc-bootstrap-span: 11; }
    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex) > .col-xxxxl-12 { --fc-bootstrap-span: 12; }

    :where(.wp-block-columns, .is-layout-flex, .row, .d-flex)
        > :is(.col-xxxxl-1, .col-xxxxl-2, .col-xxxxl-3, .col-xxxxl-4, .col-xxxxl-5, .col-xxxxl-6, .col-xxxxl-7, .col-xxxxl-8, .col-xxxxl-9, .col-xxxxl-10, .col-xxxxl-11, .col-xxxxl-12) {
        flex-basis: calc((100% * var(--fc-bootstrap-span) / 12) - (var(--fc-bootstrap-parent-gap, 0px) * (1 - (var(--fc-bootstrap-span) / 12)))) !important;
        max-width: calc((100% * var(--fc-bootstrap-span) / 12) - (var(--fc-bootstrap-parent-gap, 0px) * (1 - (var(--fc-bootstrap-span) / 12))));
        width: calc((100% * var(--fc-bootstrap-span) / 12) - (var(--fc-bootstrap-parent-gap, 0px) * (1 - (var(--fc-bootstrap-span) / 12))));
    }
}

/* Height utilities */
.h-10vh { min-height: calc(var(--fcpress-viewport-height, 100svh) * 0.10) !important; }
.h-20vh { min-height: calc(var(--fcpress-viewport-height, 100svh) * 0.20) !important; }
.h-25vh { min-height: calc(var(--fcpress-viewport-height, 100svh) * 0.25) !important; }
.h-30vh { min-height: calc(var(--fcpress-viewport-height, 100svh) * 0.30) !important; }
.h-33vh { min-height: calc(var(--fcpress-viewport-height, 100svh) * 0.33) !important; }
.h-40vh { min-height: calc(var(--fcpress-viewport-height, 100svh) * 0.40) !important; }
.h-45vh { min-height: calc(var(--fcpress-viewport-height, 100svh) * 0.45) !important; }
.h-50vh { min-height: calc(var(--fcpress-viewport-height, 100svh) * 0.50) !important; }
.h-55vh { min-height: calc(var(--fcpress-viewport-height, 100svh) * 0.55) !important; }
.h-60vh { min-height: calc(var(--fcpress-viewport-height, 100svh) * 0.60) !important; }
.h-65vh { min-height: calc(var(--fcpress-viewport-height, 100svh) * 0.65) !important; }
.h-70vh { min-height: calc(var(--fcpress-viewport-height, 100svh) * 0.70) !important; }
.h-75vh { min-height: calc(var(--fcpress-viewport-height, 100svh) * 0.75) !important; }
.h-80vh { min-height: calc(var(--fcpress-viewport-height, 100svh) * 0.80) !important; }
.h-85vh { min-height: calc(var(--fcpress-viewport-height, 100svh) * 0.85) !important; }
.h-90vh { min-height: calc(var(--fcpress-viewport-height, 100svh) * 0.90) !important; }
.h-95vh { min-height: calc(var(--fcpress-viewport-height, 100svh) * 0.95) !important; }
.h-100vh { min-height: var(--fcpress-viewport-height, 100svh) !important; }
.h-105vh { min-height: calc(var(--fcpress-viewport-height, 100svh) * 1.05) !important; }
.h-110vh { min-height: calc(var(--fcpress-viewport-height, 100svh) * 1.10) !important; }
.h-unset { height: unset !important; min-height: unset !important; }

.fc-height-managed {
    min-height: var(--fc-height-xs, unset);
}

.wp-block-image.fc-height-managed {
    overflow: hidden;
}

.wp-block-image.fc-height-managed > a,
.wp-block-image.fc-height-managed > picture,
.wp-block-image.fc-height-managed > a > picture {
    display: block;
    min-height: inherit;
}

.wp-block-image.fc-height-managed > img,
.wp-block-image.fc-height-managed > a > img,
.wp-block-image.fc-height-managed > picture > img,
.wp-block-image.fc-height-managed > a > picture > img {
    display: block;
    min-height: inherit;
    max-width: 100%;
    width: auto;
}

figure {
    margin: 0;
}

.wp-block-image:is(.rounded, .rounded-0, .rounded-1, .rounded-2, .rounded-3, .rounded-4, .rounded-5, .rounded-pill, .rounded-circle) {
    overflow: hidden;
}

.wp-block-image:is(.rounded, .rounded-0, .rounded-1, .rounded-2, .rounded-3, .rounded-4, .rounded-5, .rounded-pill, .rounded-circle) > a,
.wp-block-image:is(.rounded, .rounded-0, .rounded-1, .rounded-2, .rounded-3, .rounded-4, .rounded-5, .rounded-pill, .rounded-circle) > picture,
.wp-block-image:is(.rounded, .rounded-0, .rounded-1, .rounded-2, .rounded-3, .rounded-4, .rounded-5, .rounded-pill, .rounded-circle) > a > picture {
    display: block;
}

.wp-block-image:is(.rounded, .rounded-0, .rounded-1, .rounded-2, .rounded-3, .rounded-4, .rounded-5, .rounded-pill, .rounded-circle) > img,
.wp-block-image:is(.rounded, .rounded-0, .rounded-1, .rounded-2, .rounded-3, .rounded-4, .rounded-5, .rounded-pill, .rounded-circle) > a > img,
.wp-block-image:is(.rounded, .rounded-0, .rounded-1, .rounded-2, .rounded-3, .rounded-4, .rounded-5, .rounded-pill, .rounded-circle) > picture > img,
.wp-block-image:is(.rounded, .rounded-0, .rounded-1, .rounded-2, .rounded-3, .rounded-4, .rounded-5, .rounded-pill, .rounded-circle) > a > picture > img {
    border-radius: inherit;
    display: block;
}

/* Preserve Gutenberg row/column layout direction when Bootstrap card is applied. */
.card.is-layout-flex:not(.is-vertical) {
    flex-direction: row;
}

.card.is-layout-flex.is-vertical {
    flex-direction: column;
}

/* Positive inset utilities for positioned elements. */
.top-1 { top: var(--fc-bootstrap-offset-1) !important; }
.top-2 { top: var(--fc-bootstrap-offset-2) !important; }
.top-3 { top: var(--fc-bootstrap-offset-3) !important; }
.top-4 { top: var(--fc-bootstrap-offset-4) !important; }
.top-5 { top: var(--fc-bootstrap-offset-5) !important; }
.top-6 { top: var(--fc-bootstrap-offset-6) !important; }
.top-7 { top: var(--fc-bootstrap-offset-7) !important; }
.top-8 { top: var(--fc-bootstrap-offset-8) !important; }

.bottom-1 { bottom: var(--fc-bootstrap-offset-1) !important; }
.bottom-2 { bottom: var(--fc-bootstrap-offset-2) !important; }
.bottom-3 { bottom: var(--fc-bootstrap-offset-3) !important; }
.bottom-4 { bottom: var(--fc-bootstrap-offset-4) !important; }
.bottom-5 { bottom: var(--fc-bootstrap-offset-5) !important; }
.bottom-6 { bottom: var(--fc-bootstrap-offset-6) !important; }
.bottom-7 { bottom: var(--fc-bootstrap-offset-7) !important; }
.bottom-8 { bottom: var(--fc-bootstrap-offset-8) !important; }

.start-1,
.left-1 { left: var(--fc-bootstrap-offset-1) !important; }
.start-2,
.left-2 { left: var(--fc-bootstrap-offset-2) !important; }
.start-3,
.left-3 { left: var(--fc-bootstrap-offset-3) !important; }
.start-4,
.left-4 { left: var(--fc-bootstrap-offset-4) !important; }
.start-5,
.left-5 { left: var(--fc-bootstrap-offset-5) !important; }
.start-6,
.left-6 { left: var(--fc-bootstrap-offset-6) !important; }
.start-7,
.left-7 { left: var(--fc-bootstrap-offset-7) !important; }
.start-8,
.left-8 { left: var(--fc-bootstrap-offset-8) !important; }

.end-1,
.right-1 { right: var(--fc-bootstrap-offset-1) !important; }
.end-2,
.right-2 { right: var(--fc-bootstrap-offset-2) !important; }
.end-3,
.right-3 { right: var(--fc-bootstrap-offset-3) !important; }
.end-4,
.right-4 { right: var(--fc-bootstrap-offset-4) !important; }
.end-5,
.right-5 { right: var(--fc-bootstrap-offset-5) !important; }
.end-6,
.right-6 { right: var(--fc-bootstrap-offset-6) !important; }
.end-7,
.right-7 { right: var(--fc-bootstrap-offset-7) !important; }
.end-8,
.right-8 { right: var(--fc-bootstrap-offset-8) !important; }

/* Percent inset utilities for positioned elements. */
.top-p0 { top: 0% !important; }
.top-p10 { top: 10% !important; }
.top-p20 { top: 20% !important; }
.top-p30 { top: 30% !important; }
.top-p40 { top: 40% !important; }
.top-p50 { top: 50% !important; }
.top-p60 { top: 60% !important; }
.top-p70 { top: 70% !important; }
.top-p80 { top: 80% !important; }
.top-p90 { top: 90% !important; }
.top-p100 { top: 100% !important; }

.bottom-p0 { bottom: 0% !important; }
.bottom-p10 { bottom: 10% !important; }
.bottom-p20 { bottom: 20% !important; }
.bottom-p30 { bottom: 30% !important; }
.bottom-p40 { bottom: 40% !important; }
.bottom-p50 { bottom: 50% !important; }
.bottom-p60 { bottom: 60% !important; }
.bottom-p70 { bottom: 70% !important; }
.bottom-p80 { bottom: 80% !important; }
.bottom-p90 { bottom: 90% !important; }
.bottom-p100 { bottom: 100% !important; }

.start-p0,
.left-p0 { left: 0% !important; }
.start-p10,
.left-p10 { left: 10% !important; }
.start-p20,
.left-p20 { left: 20% !important; }
.start-p30,
.left-p30 { left: 30% !important; }
.start-p40,
.left-p40 { left: 40% !important; }
.start-p50,
.left-p50 { left: 50% !important; }
.start-p60,
.left-p60 { left: 60% !important; }
.start-p70,
.left-p70 { left: 70% !important; }
.start-p80,
.left-p80 { left: 80% !important; }
.start-p90,
.left-p90 { left: 90% !important; }
.start-p100,
.left-p100 { left: 100% !important; }

.end-p0,
.right-p0 { right: 0% !important; }
.end-p10,
.right-p10 { right: 10% !important; }
.end-p20,
.right-p20 { right: 20% !important; }
.end-p30,
.right-p30 { right: 30% !important; }
.end-p40,
.right-p40 { right: 40% !important; }
.end-p50,
.right-p50 { right: 50% !important; }
.end-p60,
.right-p60 { right: 60% !important; }
.end-p70,
.right-p70 { right: 70% !important; }
.end-p80,
.right-p80 { right: 80% !important; }
.end-p90,
.right-p90 { right: 90% !important; }
.end-p100,
.right-p100 { right: 100% !important; }

/* Negative inset utilities for offsetting positioned elements. */
.top-n1 { top: calc(var(--fc-bootstrap-offset-1) * -1) !important; }
.top-n2 { top: calc(var(--fc-bootstrap-offset-2) * -1) !important; }
.top-n3 { top: calc(var(--fc-bootstrap-offset-3) * -1) !important; }
.top-n4 { top: calc(var(--fc-bootstrap-offset-4) * -1) !important; }
.top-n5 { top: calc(var(--fc-bootstrap-offset-5) * -1) !important; }
.top-n6 { top: calc(var(--fc-bootstrap-offset-6) * -1) !important; }
.top-n7 { top: calc(var(--fc-bootstrap-offset-7) * -1) !important; }
.top-n8 { top: calc(var(--fc-bootstrap-offset-8) * -1) !important; }
.top-n9 { top: calc(var(--fc-bootstrap-offset-9) * -1) !important; }
.top-n10 { top: calc(var(--fc-bootstrap-offset-10) * -1) !important; }
.top-n11 { top: calc(var(--fc-bootstrap-offset-11) * -1) !important; }
.top-n12 { top: calc(var(--fc-bootstrap-offset-12) * -1) !important; }
.top-n13 { top: calc(var(--fc-bootstrap-offset-13) * -1) !important; }
.top-n14 { top: calc(var(--fc-bootstrap-offset-14) * -1) !important; }
.top-n15 { top: calc(var(--fc-bootstrap-offset-15) * -1) !important; }
.top-n16 { top: calc(var(--fc-bootstrap-offset-16) * -1) !important; }
.top-n17 { top: calc(var(--fc-bootstrap-offset-17) * -1) !important; }
.top-n18 { top: calc(var(--fc-bootstrap-offset-18) * -1) !important; }
.top-n19 { top: calc(var(--fc-bootstrap-offset-19) * -1) !important; }
.top-n20 { top: calc(var(--fc-bootstrap-offset-20) * -1) !important; }

.bottom-n1 { bottom: calc(var(--fc-bootstrap-offset-1) * -1) !important; }
.bottom-n2 { bottom: calc(var(--fc-bootstrap-offset-2) * -1) !important; }
.bottom-n3 { bottom: calc(var(--fc-bootstrap-offset-3) * -1) !important; }
.bottom-n4 { bottom: calc(var(--fc-bootstrap-offset-4) * -1) !important; }
.bottom-n5 { bottom: calc(var(--fc-bootstrap-offset-5) * -1) !important; }
.bottom-n6 { bottom: calc(var(--fc-bootstrap-offset-6) * -1) !important; }
.bottom-n7 { bottom: calc(var(--fc-bootstrap-offset-7) * -1) !important; }
.bottom-n8 { bottom: calc(var(--fc-bootstrap-offset-8) * -1) !important; }
.bottom-n9 { bottom: calc(var(--fc-bootstrap-offset-9) * -1) !important; }
.bottom-n10 { bottom: calc(var(--fc-bootstrap-offset-10) * -1) !important; }
.bottom-n11 { bottom: calc(var(--fc-bootstrap-offset-11) * -1) !important; }
.bottom-n12 { bottom: calc(var(--fc-bootstrap-offset-12) * -1) !important; }
.bottom-n13 { bottom: calc(var(--fc-bootstrap-offset-13) * -1) !important; }
.bottom-n14 { bottom: calc(var(--fc-bootstrap-offset-14) * -1) !important; }
.bottom-n15 { bottom: calc(var(--fc-bootstrap-offset-15) * -1) !important; }
.bottom-n16 { bottom: calc(var(--fc-bootstrap-offset-16) * -1) !important; }
.bottom-n17 { bottom: calc(var(--fc-bootstrap-offset-17) * -1) !important; }
.bottom-n18 { bottom: calc(var(--fc-bootstrap-offset-18) * -1) !important; }
.bottom-n19 { bottom: calc(var(--fc-bootstrap-offset-19) * -1) !important; }
.bottom-n20 { bottom: calc(var(--fc-bootstrap-offset-20) * -1) !important; }

.start-n1,
.left-n1 { left: calc(var(--fc-bootstrap-offset-1) * -1) !important; }
.start-n2,
.left-n2 { left: calc(var(--fc-bootstrap-offset-2) * -1) !important; }
.start-n3,
.left-n3 { left: calc(var(--fc-bootstrap-offset-3) * -1) !important; }
.start-n4,
.left-n4 { left: calc(var(--fc-bootstrap-offset-4) * -1) !important; }
.start-n5,
.left-n5 { left: calc(var(--fc-bootstrap-offset-5) * -1) !important; }
.start-n6,
.left-n6 { left: calc(var(--fc-bootstrap-offset-6) * -1) !important; }
.start-n7,
.left-n7 { left: calc(var(--fc-bootstrap-offset-7) * -1) !important; }
.start-n8,
.left-n8 { left: calc(var(--fc-bootstrap-offset-8) * -1) !important; }
.start-n9,
.left-n9 { left: calc(var(--fc-bootstrap-offset-9) * -1) !important; }
.start-n10,
.left-n10 { left: calc(var(--fc-bootstrap-offset-10) * -1) !important; }
.start-n11,
.left-n11 { left: calc(var(--fc-bootstrap-offset-11) * -1) !important; }
.start-n12,
.left-n12 { left: calc(var(--fc-bootstrap-offset-12) * -1) !important; }
.start-n13,
.left-n13 { left: calc(var(--fc-bootstrap-offset-13) * -1) !important; }
.start-n14,
.left-n14 { left: calc(var(--fc-bootstrap-offset-14) * -1) !important; }
.start-n15,
.left-n15 { left: calc(var(--fc-bootstrap-offset-15) * -1) !important; }
.start-n16,
.left-n16 { left: calc(var(--fc-bootstrap-offset-16) * -1) !important; }
.start-n17,
.left-n17 { left: calc(var(--fc-bootstrap-offset-17) * -1) !important; }
.start-n18,
.left-n18 { left: calc(var(--fc-bootstrap-offset-18) * -1) !important; }
.start-n19,
.left-n19 { left: calc(var(--fc-bootstrap-offset-19) * -1) !important; }
.start-n20,
.left-n20 { left: calc(var(--fc-bootstrap-offset-20) * -1) !important; }

.end-n1,
.right-n1 { right: calc(var(--fc-bootstrap-offset-1) * -1) !important; }
.end-n2,
.right-n2 { right: calc(var(--fc-bootstrap-offset-2) * -1) !important; }
.end-n3,
.right-n3 { right: calc(var(--fc-bootstrap-offset-3) * -1) !important; }
.end-n4,
.right-n4 { right: calc(var(--fc-bootstrap-offset-4) * -1) !important; }
.end-n5,
.right-n5 { right: calc(var(--fc-bootstrap-offset-5) * -1) !important; }
.end-n6,
.right-n6 { right: calc(var(--fc-bootstrap-offset-6) * -1) !important; }
.end-n7,
.right-n7 { right: calc(var(--fc-bootstrap-offset-7) * -1) !important; }
.end-n8,
.right-n8 { right: calc(var(--fc-bootstrap-offset-8) * -1) !important; }
.end-n9,
.right-n9 { right: calc(var(--fc-bootstrap-offset-9) * -1) !important; }
.end-n10,
.right-n10 { right: calc(var(--fc-bootstrap-offset-10) * -1) !important; }
.end-n11,
.right-n11 { right: calc(var(--fc-bootstrap-offset-11) * -1) !important; }
.end-n12,
.right-n12 { right: calc(var(--fc-bootstrap-offset-12) * -1) !important; }
.end-n13,
.right-n13 { right: calc(var(--fc-bootstrap-offset-13) * -1) !important; }
.end-n14,
.right-n14 { right: calc(var(--fc-bootstrap-offset-14) * -1) !important; }
.end-n15,
.right-n15 { right: calc(var(--fc-bootstrap-offset-15) * -1) !important; }
.end-n16,
.right-n16 { right: calc(var(--fc-bootstrap-offset-16) * -1) !important; }
.end-n17,
.right-n17 { right: calc(var(--fc-bootstrap-offset-17) * -1) !important; }
.end-n18,
.right-n18 { right: calc(var(--fc-bootstrap-offset-18) * -1) !important; }
.end-n19,
.right-n19 { right: calc(var(--fc-bootstrap-offset-19) * -1) !important; }
.end-n20,
.right-n20 { right: calc(var(--fc-bootstrap-offset-20) * -1) !important; }

@media (min-width: 576px) {
    .fc-height-managed {
        min-height: var(--fc-height-sm, var(--fc-height-xs, unset));
    }
}

@media (min-width: 768px) {
    .fc-height-managed {
        min-height: var(--fc-height-md, var(--fc-height-sm, var(--fc-height-xs, unset)));
    }
}

@media (min-width: 992px) {
    .fc-height-managed {
        min-height: var(--fc-height-lg, var(--fc-height-md, var(--fc-height-sm, var(--fc-height-xs, unset))));
    }
}

@media (min-width: 1200px) {
    .fc-height-managed {
        min-height: var(--fc-height-xl, var(--fc-height-lg, var(--fc-height-md, var(--fc-height-sm, var(--fc-height-xs, unset)))));
    }
}

@media (min-width: 1400px) {
    .fc-height-managed {
        min-height: var(--fc-height-xxl, var(--fc-height-xl, var(--fc-height-lg, var(--fc-height-md, var(--fc-height-sm, var(--fc-height-xs, unset))))));
    }
}

/* Spacing utilities: 6 */
.p-6 { padding: var(--fc-space-6) !important; }
.pt-6 { padding-top: var(--fc-space-6) !important; }
.pb-6 { padding-bottom: var(--fc-space-6) !important; }
.ps-6 { padding-left: var(--fc-space-6) !important; }
.pe-6 { padding-right: var(--fc-space-6) !important; }
.pl-6 { padding-left: var(--fc-space-6) !important; }
.pr-6 { padding-right: var(--fc-space-6) !important; }
.px-6 { padding-left: var(--fc-space-6) !important; padding-right: var(--fc-space-6) !important; }
.py-6 { padding-top: var(--fc-space-6) !important; padding-bottom: var(--fc-space-6) !important; }

.m-6 { margin: var(--fc-space-6) !important; }
.mt-6 { margin-top: var(--fc-space-6) !important; }
.mb-6 { margin-bottom: var(--fc-space-6) !important; }
.ms-6 { margin-left: var(--fc-space-6) !important; }
.me-6 { margin-right: var(--fc-space-6) !important; }
.ml-6 { margin-left: var(--fc-space-6) !important; }
.mr-6 { margin-right: var(--fc-space-6) !important; }
.mx-6 { margin-left: var(--fc-space-6) !important; margin-right: var(--fc-space-6) !important; }
.my-6 { margin-top: var(--fc-space-6) !important; margin-bottom: var(--fc-space-6) !important; }

/* Spacing utilities: 7 */
.p-7 { padding: var(--fc-space-7) !important; }
.pt-7 { padding-top: var(--fc-space-7) !important; }
.pb-7 { padding-bottom: var(--fc-space-7) !important; }
.ps-7 { padding-left: var(--fc-space-7) !important; }
.pe-7 { padding-right: var(--fc-space-7) !important; }
.pl-7 { padding-left: var(--fc-space-7) !important; }
.pr-7 { padding-right: var(--fc-space-7) !important; }
.px-7 { padding-left: var(--fc-space-7) !important; padding-right: var(--fc-space-7) !important; }
.py-7 { padding-top: var(--fc-space-7) !important; padding-bottom: var(--fc-space-7) !important; }

.m-7 { margin: var(--fc-space-7) !important; }
.mt-7 { margin-top: var(--fc-space-7) !important; }
.mb-7 { margin-bottom: var(--fc-space-7) !important; }
.ms-7 { margin-left: var(--fc-space-7) !important; }
.me-7 { margin-right: var(--fc-space-7) !important; }
.ml-7 { margin-left: var(--fc-space-7) !important; }
.mr-7 { margin-right: var(--fc-space-7) !important; }
.mx-7 { margin-left: var(--fc-space-7) !important; margin-right: var(--fc-space-7) !important; }
.my-7 { margin-top: var(--fc-space-7) !important; margin-bottom: var(--fc-space-7) !important; }

/* Spacing utilities: 8 */
.p-8 { padding: var(--fc-space-8) !important; }
.pt-8 { padding-top: var(--fc-space-8) !important; }
.pb-8 { padding-bottom: var(--fc-space-8) !important; }
.ps-8 { padding-left: var(--fc-space-8) !important; }
.pe-8 { padding-right: var(--fc-space-8) !important; }
.pl-8 { padding-left: var(--fc-space-8) !important; }
.pr-8 { padding-right: var(--fc-space-8) !important; }
.px-8 { padding-left: var(--fc-space-8) !important; padding-right: var(--fc-space-8) !important; }
.py-8 { padding-top: var(--fc-space-8) !important; padding-bottom: var(--fc-space-8) !important; }

.m-8 { margin: var(--fc-space-8) !important; }
.mt-8 { margin-top: var(--fc-space-8) !important; }
.mb-8 { margin-bottom: var(--fc-space-8) !important; }
.ms-8 { margin-left: var(--fc-space-8) !important; }
.me-8 { margin-right: var(--fc-space-8) !important; }
.ml-8 { margin-left: var(--fc-space-8) !important; }
.mr-8 { margin-right: var(--fc-space-8) !important; }
.mx-8 { margin-left: var(--fc-space-8) !important; margin-right: var(--fc-space-8) !important; }
.my-8 { margin-top: var(--fc-space-8) !important; margin-bottom: var(--fc-space-8) !important; }

/* Gap utilities: 0..8 */
.gap-0 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-0) !important; gap: var(--fc-bootstrap-gap-0) !important; }
.gap-1 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-1) !important; gap: var(--fc-bootstrap-gap-1) !important; }
.gap-2 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-2) !important; gap: var(--fc-bootstrap-gap-2) !important; }
.gap-3 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-3) !important; gap: var(--fc-bootstrap-gap-3) !important; }
.gap-4 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-4) !important; gap: var(--fc-bootstrap-gap-4) !important; }
.gap-5 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-5) !important; gap: var(--fc-bootstrap-gap-5) !important; }
.gap-6 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-6) !important; gap: var(--fc-bootstrap-gap-6) !important; }
.gap-7 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-7) !important; gap: var(--fc-bootstrap-gap-7) !important; }
.gap-8 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-8) !important; gap: var(--fc-bootstrap-gap-8) !important; }

/* sm (>= 576px) */
@media (min-width: 576px) {
    .p-sm-0 { padding: 0 !important; }
    .p-sm-1 { padding: 0.25rem !important; }
    .p-sm-2 { padding: 0.5rem !important; }
    .p-sm-3 { padding: 1rem !important; }
    .p-sm-4 { padding: 1.5rem !important; }
    .p-sm-5 { padding: 3rem !important; }
    .p-sm-6 { padding: var(--fc-space-6) !important; }
    .p-sm-7 { padding: var(--fc-space-7) !important; }
    .p-sm-8 { padding: var(--fc-space-8) !important; }
    .px-sm-0 { padding-left: 0 !important; padding-right: 0 !important; }
    .px-sm-1 { padding-left: 0.25rem !important; padding-right: 0.25rem !important; }
    .px-sm-2 { padding-left: 0.5rem !important; padding-right: 0.5rem !important; }
    .px-sm-3 { padding-left: 1rem !important; padding-right: 1rem !important; }
    .px-sm-4 { padding-left: 1.5rem !important; padding-right: 1.5rem !important; }
    .px-sm-5 { padding-left: 3rem !important; padding-right: 3rem !important; }
    .px-sm-6 { padding-left: var(--fc-space-6) !important; padding-right: var(--fc-space-6) !important; }
    .px-sm-7 { padding-left: var(--fc-space-7) !important; padding-right: var(--fc-space-7) !important; }
    .px-sm-8 { padding-left: var(--fc-space-8) !important; padding-right: var(--fc-space-8) !important; }
    .py-sm-0 { padding-top: 0 !important; padding-bottom: 0 !important; }
    .py-sm-1 { padding-top: 0.25rem !important; padding-bottom: 0.25rem !important; }
    .py-sm-2 { padding-top: 0.5rem !important; padding-bottom: 0.5rem !important; }
    .py-sm-3 { padding-top: 1rem !important; padding-bottom: 1rem !important; }
    .py-sm-4 { padding-top: 1.5rem !important; padding-bottom: 1.5rem !important; }
    .py-sm-5 { padding-top: 3rem !important; padding-bottom: 3rem !important; }
    .py-sm-6 { padding-top: var(--fc-space-6) !important; padding-bottom: var(--fc-space-6) !important; }
    .py-sm-7 { padding-top: var(--fc-space-7) !important; padding-bottom: var(--fc-space-7) !important; }
    .py-sm-8 { padding-top: var(--fc-space-8) !important; padding-bottom: var(--fc-space-8) !important; }
    .mx-sm-6 { margin-left: var(--fc-space-6) !important; margin-right: var(--fc-space-6) !important; }
    .mx-sm-7 { margin-left: var(--fc-space-7) !important; margin-right: var(--fc-space-7) !important; }
    .mx-sm-8 { margin-left: var(--fc-space-8) !important; margin-right: var(--fc-space-8) !important; }
    .my-sm-6 { margin-top: var(--fc-space-6) !important; margin-bottom: var(--fc-space-6) !important; }
    .my-sm-7 { margin-top: var(--fc-space-7) !important; margin-bottom: var(--fc-space-7) !important; }
    .my-sm-8 { margin-top: var(--fc-space-8) !important; margin-bottom: var(--fc-space-8) !important; }

    .gap-sm-0 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-0) !important; gap: var(--fc-bootstrap-gap-0) !important; }
    .gap-sm-1 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-1) !important; gap: var(--fc-bootstrap-gap-1) !important; }
    .gap-sm-2 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-2) !important; gap: var(--fc-bootstrap-gap-2) !important; }
    .gap-sm-3 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-3) !important; gap: var(--fc-bootstrap-gap-3) !important; }
    .gap-sm-4 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-4) !important; gap: var(--fc-bootstrap-gap-4) !important; }
    .gap-sm-5 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-5) !important; gap: var(--fc-bootstrap-gap-5) !important; }
    .gap-sm-6 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-6) !important; gap: var(--fc-bootstrap-gap-6) !important; }
    .gap-sm-7 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-7) !important; gap: var(--fc-bootstrap-gap-7) !important; }
    .gap-sm-8 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-8) !important; gap: var(--fc-bootstrap-gap-8) !important; }
}

/* md (>= 768px) */
@media (min-width: 768px) {
    .p-md-0 { padding: 0 !important; }
    .p-md-1 { padding: 0.25rem !important; }
    .p-md-2 { padding: 0.5rem !important; }
    .p-md-3 { padding: 1rem !important; }
    .p-md-4 { padding: 1.5rem !important; }
    .p-md-5 { padding: 3rem !important; }
    .p-md-6 { padding: var(--fc-space-6) !important; }
    .p-md-7 { padding: var(--fc-space-7) !important; }
    .p-md-8 { padding: var(--fc-space-8) !important; }
    .px-md-0 { padding-left: 0 !important; padding-right: 0 !important; }
    .px-md-1 { padding-left: 0.25rem !important; padding-right: 0.25rem !important; }
    .px-md-2 { padding-left: 0.5rem !important; padding-right: 0.5rem !important; }
    .px-md-3 { padding-left: 1rem !important; padding-right: 1rem !important; }
    .px-md-4 { padding-left: 1.5rem !important; padding-right: 1.5rem !important; }
    .px-md-5 { padding-left: 3rem !important; padding-right: 3rem !important; }
    .px-md-6 { padding-left: var(--fc-space-6) !important; padding-right: var(--fc-space-6) !important; }
    .px-md-7 { padding-left: var(--fc-space-7) !important; padding-right: var(--fc-space-7) !important; }
    .px-md-8 { padding-left: var(--fc-space-8) !important; padding-right: var(--fc-space-8) !important; }
    .py-md-0 { padding-top: 0 !important; padding-bottom: 0 !important; }
    .py-md-1 { padding-top: 0.25rem !important; padding-bottom: 0.25rem !important; }
    .py-md-2 { padding-top: 0.5rem !important; padding-bottom: 0.5rem !important; }
    .py-md-3 { padding-top: 1rem !important; padding-bottom: 1rem !important; }
    .py-md-4 { padding-top: 1.5rem !important; padding-bottom: 1.5rem !important; }
    .py-md-5 { padding-top: 3rem !important; padding-bottom: 3rem !important; }
    .py-md-6 { padding-top: var(--fc-space-6) !important; padding-bottom: var(--fc-space-6) !important; }
    .py-md-7 { padding-top: var(--fc-space-7) !important; padding-bottom: var(--fc-space-7) !important; }
    .py-md-8 { padding-top: var(--fc-space-8) !important; padding-bottom: var(--fc-space-8) !important; }
    .mx-md-6 { margin-left: var(--fc-space-6) !important; margin-right: var(--fc-space-6) !important; }
    .mx-md-7 { margin-left: var(--fc-space-7) !important; margin-right: var(--fc-space-7) !important; }
    .mx-md-8 { margin-left: var(--fc-space-8) !important; margin-right: var(--fc-space-8) !important; }
    .my-md-6 { margin-top: var(--fc-space-6) !important; margin-bottom: var(--fc-space-6) !important; }
    .my-md-7 { margin-top: var(--fc-space-7) !important; margin-bottom: var(--fc-space-7) !important; }
    .my-md-8 { margin-top: var(--fc-space-8) !important; margin-bottom: var(--fc-space-8) !important; }

    .gap-md-0 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-0) !important; gap: var(--fc-bootstrap-gap-0) !important; }
    .gap-md-1 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-1) !important; gap: var(--fc-bootstrap-gap-1) !important; }
    .gap-md-2 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-2) !important; gap: var(--fc-bootstrap-gap-2) !important; }
    .gap-md-3 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-3) !important; gap: var(--fc-bootstrap-gap-3) !important; }
    .gap-md-4 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-4) !important; gap: var(--fc-bootstrap-gap-4) !important; }
    .gap-md-5 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-5) !important; gap: var(--fc-bootstrap-gap-5) !important; }
    .gap-md-6 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-6) !important; gap: var(--fc-bootstrap-gap-6) !important; }
    .gap-md-7 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-7) !important; gap: var(--fc-bootstrap-gap-7) !important; }
    .gap-md-8 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-8) !important; gap: var(--fc-bootstrap-gap-8) !important; }
}

/* lg (>= 992px) */
@media (min-width: 992px) {
    .p-lg-0 { padding: 0 !important; }
    .p-lg-1 { padding: 0.25rem !important; }
    .p-lg-2 { padding: 0.5rem !important; }
    .p-lg-3 { padding: 1rem !important; }
    .p-lg-4 { padding: 1.5rem !important; }
    .p-lg-5 { padding: 3rem !important; }
    .px-lg-0 { padding-left: 0 !important; padding-right: 0 !important; }
    .px-lg-1 { padding-left: 0.25rem !important; padding-right: 0.25rem !important; }
    .px-lg-2 { padding-left: 0.5rem !important; padding-right: 0.5rem !important; }
    .px-lg-3 { padding-left: 1rem !important; padding-right: 1rem !important; }
    .px-lg-4 { padding-left: 1.5rem !important; padding-right: 1.5rem !important; }
    .px-lg-5 { padding-left: 3rem !important; padding-right: 3rem !important; }
    .py-lg-0 { padding-top: 0 !important; padding-bottom: 0 !important; }
    .py-lg-1 { padding-top: 0.25rem !important; padding-bottom: 0.25rem !important; }
    .py-lg-2 { padding-top: 0.5rem !important; padding-bottom: 0.5rem !important; }
    .py-lg-3 { padding-top: 1rem !important; padding-bottom: 1rem !important; }
    .py-lg-4 { padding-top: 1.5rem !important; padding-bottom: 1.5rem !important; }
    .py-lg-5 { padding-top: 3rem !important; padding-bottom: 3rem !important; }
    .p-lg-6 { padding: var(--fc-space-6) !important; }
    .pt-lg-6 { padding-top: var(--fc-space-6) !important; }
    .pb-lg-6 { padding-bottom: var(--fc-space-6) !important; }
    .ps-lg-6 { padding-left: var(--fc-space-6) !important; }
    .pe-lg-6 { padding-right: var(--fc-space-6) !important; }
    .pl-lg-6 { padding-left: var(--fc-space-6) !important; }
    .pr-lg-6 { padding-right: var(--fc-space-6) !important; }
    .px-lg-6 { padding-left: var(--fc-space-6) !important; padding-right: var(--fc-space-6) !important; }
    .py-lg-6 { padding-top: var(--fc-space-6) !important; padding-bottom: var(--fc-space-6) !important; }

    .m-lg-6 { margin: var(--fc-space-6) !important; }
    .mt-lg-6 { margin-top: var(--fc-space-6) !important; }
    .mb-lg-6 { margin-bottom: var(--fc-space-6) !important; }
    .ms-lg-6 { margin-left: var(--fc-space-6) !important; }
    .me-lg-6 { margin-right: var(--fc-space-6) !important; }
    .ml-lg-6 { margin-left: var(--fc-space-6) !important; }
    .mr-lg-6 { margin-right: var(--fc-space-6) !important; }
    .mx-lg-6 { margin-left: var(--fc-space-6) !important; margin-right: var(--fc-space-6) !important; }
    .my-lg-6 { margin-top: var(--fc-space-6) !important; margin-bottom: var(--fc-space-6) !important; }

    .p-lg-7 { padding: var(--fc-space-7) !important; }
    .pt-lg-7 { padding-top: var(--fc-space-7) !important; }
    .pb-lg-7 { padding-bottom: var(--fc-space-7) !important; }
    .ps-lg-7 { padding-left: var(--fc-space-7) !important; }
    .pe-lg-7 { padding-right: var(--fc-space-7) !important; }
    .pl-lg-7 { padding-left: var(--fc-space-7) !important; }
    .pr-lg-7 { padding-right: var(--fc-space-7) !important; }
    .px-lg-7 { padding-left: var(--fc-space-7) !important; padding-right: var(--fc-space-7) !important; }
    .py-lg-7 { padding-top: var(--fc-space-7) !important; padding-bottom: var(--fc-space-7) !important; }

    .m-lg-7 { margin: var(--fc-space-7) !important; }
    .mt-lg-7 { margin-top: var(--fc-space-7) !important; }
    .mb-lg-7 { margin-bottom: var(--fc-space-7) !important; }
    .ms-lg-7 { margin-left: var(--fc-space-7) !important; }
    .me-lg-7 { margin-right: var(--fc-space-7) !important; }
    .ml-lg-7 { margin-left: var(--fc-space-7) !important; }
    .mr-lg-7 { margin-right: var(--fc-space-7) !important; }
    .mx-lg-7 { margin-left: var(--fc-space-7) !important; margin-right: var(--fc-space-7) !important; }
    .my-lg-7 { margin-top: var(--fc-space-7) !important; margin-bottom: var(--fc-space-7) !important; }

    .p-lg-8 { padding: var(--fc-space-8) !important; }
    .pt-lg-8 { padding-top: var(--fc-space-8) !important; }
    .pb-lg-8 { padding-bottom: var(--fc-space-8) !important; }
    .ps-lg-8 { padding-left: var(--fc-space-8) !important; }
    .pe-lg-8 { padding-right: var(--fc-space-8) !important; }
    .pl-lg-8 { padding-left: var(--fc-space-8) !important; }
    .pr-lg-8 { padding-right: var(--fc-space-8) !important; }
    .px-lg-8 { padding-left: var(--fc-space-8) !important; padding-right: var(--fc-space-8) !important; }
    .py-lg-8 { padding-top: var(--fc-space-8) !important; padding-bottom: var(--fc-space-8) !important; }

    .m-lg-8 { margin: var(--fc-space-8) !important; }
    .mt-lg-8 { margin-top: var(--fc-space-8) !important; }
    .mb-lg-8 { margin-bottom: var(--fc-space-8) !important; }
    .ms-lg-8 { margin-left: var(--fc-space-8) !important; }
    .me-lg-8 { margin-right: var(--fc-space-8) !important; }
    .ml-lg-8 { margin-left: var(--fc-space-8) !important; }
    .mr-lg-8 { margin-right: var(--fc-space-8) !important; }
    .mx-lg-8 { margin-left: var(--fc-space-8) !important; margin-right: var(--fc-space-8) !important; }
    .my-lg-8 { margin-top: var(--fc-space-8) !important; margin-bottom: var(--fc-space-8) !important; }

    .gap-lg-0 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-0) !important; gap: var(--fc-bootstrap-gap-0) !important; }
    .gap-lg-1 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-1) !important; gap: var(--fc-bootstrap-gap-1) !important; }
    .gap-lg-2 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-2) !important; gap: var(--fc-bootstrap-gap-2) !important; }
    .gap-lg-3 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-3) !important; gap: var(--fc-bootstrap-gap-3) !important; }
    .gap-lg-4 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-4) !important; gap: var(--fc-bootstrap-gap-4) !important; }
    .gap-lg-5 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-5) !important; gap: var(--fc-bootstrap-gap-5) !important; }
    .gap-lg-6 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-6) !important; gap: var(--fc-bootstrap-gap-6) !important; }
    .gap-lg-7 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-7) !important; gap: var(--fc-bootstrap-gap-7) !important; }
    .gap-lg-8 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-8) !important; gap: var(--fc-bootstrap-gap-8) !important; }
}

/* xl (>= 1200px) */
@media (min-width: 1200px) {
    .p-xl-0 { padding: 0 !important; }
    .p-xl-1 { padding: 0.25rem !important; }
    .p-xl-2 { padding: 0.5rem !important; }
    .p-xl-3 { padding: 1rem !important; }
    .p-xl-4 { padding: 1.5rem !important; }
    .p-xl-5 { padding: 3rem !important; }
    .px-xl-0 { padding-left: 0 !important; padding-right: 0 !important; }
    .px-xl-1 { padding-left: 0.25rem !important; padding-right: 0.25rem !important; }
    .px-xl-2 { padding-left: 0.5rem !important; padding-right: 0.5rem !important; }
    .px-xl-3 { padding-left: 1rem !important; padding-right: 1rem !important; }
    .px-xl-4 { padding-left: 1.5rem !important; padding-right: 1.5rem !important; }
    .px-xl-5 { padding-left: 3rem !important; padding-right: 3rem !important; }
    .py-xl-0 { padding-top: 0 !important; padding-bottom: 0 !important; }
    .py-xl-1 { padding-top: 0.25rem !important; padding-bottom: 0.25rem !important; }
    .py-xl-2 { padding-top: 0.5rem !important; padding-bottom: 0.5rem !important; }
    .py-xl-3 { padding-top: 1rem !important; padding-bottom: 1rem !important; }
    .py-xl-4 { padding-top: 1.5rem !important; padding-bottom: 1.5rem !important; }
    .py-xl-5 { padding-top: 3rem !important; padding-bottom: 3rem !important; }
    .p-xl-6 { padding: var(--fc-space-6) !important; }
    .p-xl-7 { padding: var(--fc-space-7) !important; }
    .p-xl-8 { padding: var(--fc-space-8) !important; }
    .px-xl-6 { padding-left: var(--fc-space-6) !important; padding-right: var(--fc-space-6) !important; }
    .px-xl-7 { padding-left: var(--fc-space-7) !important; padding-right: var(--fc-space-7) !important; }
    .px-xl-8 { padding-left: var(--fc-space-8) !important; padding-right: var(--fc-space-8) !important; }
    .py-xl-6 { padding-top: var(--fc-space-6) !important; padding-bottom: var(--fc-space-6) !important; }
    .py-xl-7 { padding-top: var(--fc-space-7) !important; padding-bottom: var(--fc-space-7) !important; }
    .py-xl-8 { padding-top: var(--fc-space-8) !important; padding-bottom: var(--fc-space-8) !important; }
    .mx-xl-6 { margin-left: var(--fc-space-6) !important; margin-right: var(--fc-space-6) !important; }
    .mx-xl-7 { margin-left: var(--fc-space-7) !important; margin-right: var(--fc-space-7) !important; }
    .mx-xl-8 { margin-left: var(--fc-space-8) !important; margin-right: var(--fc-space-8) !important; }
    .my-xl-6 { margin-top: var(--fc-space-6) !important; margin-bottom: var(--fc-space-6) !important; }
    .my-xl-7 { margin-top: var(--fc-space-7) !important; margin-bottom: var(--fc-space-7) !important; }
    .my-xl-8 { margin-top: var(--fc-space-8) !important; margin-bottom: var(--fc-space-8) !important; }

    .gap-xl-0 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-0) !important; gap: var(--fc-bootstrap-gap-0) !important; }
    .gap-xl-1 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-1) !important; gap: var(--fc-bootstrap-gap-1) !important; }
    .gap-xl-2 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-2) !important; gap: var(--fc-bootstrap-gap-2) !important; }
    .gap-xl-3 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-3) !important; gap: var(--fc-bootstrap-gap-3) !important; }
    .gap-xl-4 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-4) !important; gap: var(--fc-bootstrap-gap-4) !important; }
    .gap-xl-5 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-5) !important; gap: var(--fc-bootstrap-gap-5) !important; }
    .gap-xl-6 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-6) !important; gap: var(--fc-bootstrap-gap-6) !important; }
    .gap-xl-7 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-7) !important; gap: var(--fc-bootstrap-gap-7) !important; }
    .gap-xl-8 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-8) !important; gap: var(--fc-bootstrap-gap-8) !important; }
}

/* xxl (>= 1400px) */
@media (min-width: 1400px) {
    .h-xxl-65vh { min-height: calc(var(--fcpress-viewport-height, 100svh) * 0.65) !important; }
    .h-xxl-75vh { min-height: calc(var(--fcpress-viewport-height, 100svh) * 0.75) !important; }
    .h-xxl-unset { height: unset !important; min-height: unset !important; }

    .p-xxl-0 { padding: 0 !important; }
    .p-xxl-1 { padding: 0.25rem !important; }
    .p-xxl-2 { padding: 0.5rem !important; }
    .p-xxl-3 { padding: 1rem !important; }
    .p-xxl-4 { padding: 1.5rem !important; }
    .p-xxl-5 { padding: 3rem !important; }
    .px-xxl-0 { padding-left: 0 !important; padding-right: 0 !important; }
    .px-xxl-1 { padding-left: 0.25rem !important; padding-right: 0.25rem !important; }
    .px-xxl-2 { padding-left: 0.5rem !important; padding-right: 0.5rem !important; }
    .px-xxl-3 { padding-left: 1rem !important; padding-right: 1rem !important; }
    .px-xxl-4 { padding-left: 1.5rem !important; padding-right: 1.5rem !important; }
    .px-xxl-5 { padding-left: 3rem !important; padding-right: 3rem !important; }
    .py-xxl-0 { padding-top: 0 !important; padding-bottom: 0 !important; }
    .py-xxl-1 { padding-top: 0.25rem !important; padding-bottom: 0.25rem !important; }
    .py-xxl-2 { padding-top: 0.5rem !important; padding-bottom: 0.5rem !important; }
    .py-xxl-3 { padding-top: 1rem !important; padding-bottom: 1rem !important; }
    .py-xxl-4 { padding-top: 1.5rem !important; padding-bottom: 1.5rem !important; }
    .py-xxl-5 { padding-top: 3rem !important; padding-bottom: 3rem !important; }
    .p-xxl-6 { padding: var(--fc-space-6) !important; }
    .p-xxl-7 { padding: var(--fc-space-7) !important; }
    .p-xxl-8 { padding: var(--fc-space-8) !important; }
    .px-xxl-6 { padding-left: var(--fc-space-6) !important; padding-right: var(--fc-space-6) !important; }
    .px-xxl-7 { padding-left: var(--fc-space-7) !important; padding-right: var(--fc-space-7) !important; }
    .px-xxl-8 { padding-left: var(--fc-space-8) !important; padding-right: var(--fc-space-8) !important; }
    .py-xxl-6 { padding-top: var(--fc-space-6) !important; padding-bottom: var(--fc-space-6) !important; }
    .py-xxl-7 { padding-top: var(--fc-space-7) !important; padding-bottom: var(--fc-space-7) !important; }
    .py-xxl-8 { padding-top: var(--fc-space-8) !important; padding-bottom: var(--fc-space-8) !important; }
    .mx-xxl-6 { margin-left: var(--fc-space-6) !important; margin-right: var(--fc-space-6) !important; }
    .mx-xxl-7 { margin-left: var(--fc-space-7) !important; margin-right: var(--fc-space-7) !important; }
    .mx-xxl-8 { margin-left: var(--fc-space-8) !important; margin-right: var(--fc-space-8) !important; }
    .my-xxl-6 { margin-top: var(--fc-space-6) !important; margin-bottom: var(--fc-space-6) !important; }
    .my-xxl-7 { margin-top: var(--fc-space-7) !important; margin-bottom: var(--fc-space-7) !important; }
    .my-xxl-8 { margin-top: var(--fc-space-8) !important; margin-bottom: var(--fc-space-8) !important; }
    .gap-xxl-0 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-0) !important; gap: var(--fc-bootstrap-gap-0) !important; }
    .gap-xxl-1 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-1) !important; gap: var(--fc-bootstrap-gap-1) !important; }
    .gap-xxl-2 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-2) !important; gap: var(--fc-bootstrap-gap-2) !important; }
    .gap-xxl-3 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-3) !important; gap: var(--fc-bootstrap-gap-3) !important; }
    .gap-xxl-4 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-4) !important; gap: var(--fc-bootstrap-gap-4) !important; }
    .gap-xxl-5 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-5) !important; gap: var(--fc-bootstrap-gap-5) !important; }
    .gap-xxl-6 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-6) !important; gap: var(--fc-bootstrap-gap-6) !important; }
    .gap-xxl-7 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-7) !important; gap: var(--fc-bootstrap-gap-7) !important; }
    .gap-xxl-8 { --fc-bootstrap-layout-gap: var(--fc-bootstrap-gap-8) !important; gap: var(--fc-bootstrap-gap-8) !important; }
    .m-xxl-6 { margin: var(--fc-space-6) !important; }
    .m-xxl-7 { margin: var(--fc-space-7) !important; }
    .m-xxl-8 { margin: var(--fc-space-8) !important; }
}

/* xxxl (>= 1600px) */
@media (min-width: 1600px) {
    .h-xxxl-65vh { min-height: calc(var(--fcpress-viewport-height, 100svh) * 0.65) !important; }
    .h-xxxl-75vh { min-height: calc(var(--fcpress-viewport-height, 100svh) * 0.75) !important; }
    .h-xxxl-85vh { min-height: calc(var(--fcpress-viewport-height, 100svh) * 0.85) !important; }
    .h-xxxl-100vh { min-height: var(--fcpress-viewport-height, 100svh) !important; }
    .h-xxxl-110vh { min-height: calc(var(--fcpress-viewport-height, 100svh) * 1.10) !important; }
    .h-xxxl-unset { height: unset !important; min-height: unset !important; }

    .p-xxxl-6 { padding: var(--fc-space-6) !important; }
    .pt-xxxl-6 { padding-top: var(--fc-space-6) !important; }
    .pb-xxxl-6 { padding-bottom: var(--fc-space-6) !important; }
    .ps-xxxl-6 { padding-left: var(--fc-space-6) !important; }
    .pe-xxxl-6 { padding-right: var(--fc-space-6) !important; }
    .pl-xxxl-6 { padding-left: var(--fc-space-6) !important; }
    .pr-xxxl-6 { padding-right: var(--fc-space-6) !important; }
    .px-xxxl-6 { padding-left: var(--fc-space-6) !important; padding-right: var(--fc-space-6) !important; }
    .py-xxxl-6 { padding-top: var(--fc-space-6) !important; padding-bottom: var(--fc-space-6) !important; }

    .m-xxxl-6 { margin: var(--fc-space-6) !important; }
    .mt-xxxl-6 { margin-top: var(--fc-space-6) !important; }
    .mb-xxxl-6 { margin-bottom: var(--fc-space-6) !important; }
    .ms-xxxl-6 { margin-left: var(--fc-space-6) !important; }
    .me-xxxl-6 { margin-right: var(--fc-space-6) !important; }
    .ml-xxxl-6 { margin-left: var(--fc-space-6) !important; }
    .mr-xxxl-6 { margin-right: var(--fc-space-6) !important; }
    .mx-xxxl-6 { margin-left: var(--fc-space-6) !important; margin-right: var(--fc-space-6) !important; }
    .my-xxxl-6 { margin-top: var(--fc-space-6) !important; margin-bottom: var(--fc-space-6) !important; }

    .p-xxxl-7 { padding: var(--fc-space-7) !important; }
    .pt-xxxl-7 { padding-top: var(--fc-space-7) !important; }
    .pb-xxxl-7 { padding-bottom: var(--fc-space-7) !important; }
    .ps-xxxl-7 { padding-left: var(--fc-space-7) !important; }
    .pe-xxxl-7 { padding-right: var(--fc-space-7) !important; }
    .pl-xxxl-7 { padding-left: var(--fc-space-7) !important; }
    .pr-xxxl-7 { padding-right: var(--fc-space-7) !important; }
    .px-xxxl-7 { padding-left: var(--fc-space-7) !important; padding-right: var(--fc-space-7) !important; }
    .py-xxxl-7 { padding-top: var(--fc-space-7) !important; padding-bottom: var(--fc-space-7) !important; }

    .m-xxxl-7 { margin: var(--fc-space-7) !important; }
    .mt-xxxl-7 { margin-top: var(--fc-space-7) !important; }
    .mb-xxxl-7 { margin-bottom: var(--fc-space-7) !important; }
    .ms-xxxl-7 { margin-left: var(--fc-space-7) !important; }
    .me-xxxl-7 { margin-right: var(--fc-space-7) !important; }
    .ml-xxxl-7 { margin-left: var(--fc-space-7) !important; }
    .mr-xxxl-7 { margin-right: var(--fc-space-7) !important; }
    .mx-xxxl-7 { margin-left: var(--fc-space-7) !important; margin-right: var(--fc-space-7) !important; }
    .my-xxxl-7 { margin-top: var(--fc-space-7) !important; margin-bottom: var(--fc-space-7) !important; }

    .p-xxxl-8 { padding: var(--fc-space-8) !important; }
    .pt-xxxl-8 { padding-top: var(--fc-space-8) !important; }
    .pb-xxxl-8 { padding-bottom: var(--fc-space-8) !important; }
    .ps-xxxl-8 { padding-left: var(--fc-space-8) !important; }
    .pe-xxxl-8 { padding-right: var(--fc-space-8) !important; }
    .pl-xxxl-8 { padding-left: var(--fc-space-8) !important; }
    .pr-xxxl-8 { padding-right: var(--fc-space-8) !important; }
    .px-xxxl-8 { padding-left: var(--fc-space-8) !important; padding-right: var(--fc-space-8) !important; }
    .py-xxxl-8 { padding-top: var(--fc-space-8) !important; padding-bottom: var(--fc-space-8) !important; }

    .m-xxxl-8 { margin: var(--fc-space-8) !important; }
    .mt-xxxl-8 { margin-top: var(--fc-space-8) !important; }
    .mb-xxxl-8 { margin-bottom: var(--fc-space-8) !important; }
    .ms-xxxl-8 { margin-left: var(--fc-space-8) !important; }
    .me-xxxl-8 { margin-right: var(--fc-space-8) !important; }
    .ml-xxxl-8 { margin-left: var(--fc-space-8) !important; }
    .mr-xxxl-8 { margin-right: var(--fc-space-8) !important; }
    .mx-xxxl-8 { margin-left: var(--fc-space-8) !important; margin-right: var(--fc-space-8) !important; }
    .my-xxxl-8 { margin-top: var(--fc-space-8) !important; margin-bottom: var(--fc-space-8) !important; }

    .col-xxxl { flex: 1 0 0%; }
    .col-xxxl-auto { flex: 0 0 auto; width: auto; }
    .col-xxxl-1 { flex: 0 0 auto; width: 8.33333333%; }
    .col-xxxl-2 { flex: 0 0 auto; width: 16.66666667%; }
    .col-xxxl-3 { flex: 0 0 auto; width: 25%; }
    .col-xxxl-4 { flex: 0 0 auto; width: 33.33333333%; }
    .col-xxxl-5 { flex: 0 0 auto; width: 41.66666667%; }
    .col-xxxl-6 { flex: 0 0 auto; width: 50%; }
    .col-xxxl-7 { flex: 0 0 auto; width: 58.33333333%; }
    .col-xxxl-8 { flex: 0 0 auto; width: 66.66666667%; }
    .col-xxxl-9 { flex: 0 0 auto; width: 75%; }
    .col-xxxl-10 { flex: 0 0 auto; width: 83.33333333%; }
    .col-xxxl-11 { flex: 0 0 auto; width: 91.66666667%; }
    .col-xxxl-12 { flex: 0 0 auto; width: 100%; }

    .row-cols-xxxl-auto > * { flex: 0 0 auto; width: auto; }
    .row-cols-xxxl-1 > * { flex: 0 0 auto; width: 100%; }
    .row-cols-xxxl-2 > * { flex: 0 0 auto; width: 50%; }
    .row-cols-xxxl-3 > * { flex: 0 0 auto; width: 33.33333333%; }
    .row-cols-xxxl-4 > * { flex: 0 0 auto; width: 25%; }
    .row-cols-xxxl-5 > * { flex: 0 0 auto; width: 20%; }
    .row-cols-xxxl-6 > * { flex: 0 0 auto; width: 16.66666667%; }

    .offset-xxxl-0 { margin-left: 0; }
    .offset-xxxl-1 { margin-left: 8.33333333%; }
    .offset-xxxl-2 { margin-left: 16.66666667%; }
    .offset-xxxl-3 { margin-left: 25%; }
    .offset-xxxl-4 { margin-left: 33.33333333%; }
    .offset-xxxl-5 { margin-left: 41.66666667%; }
    .offset-xxxl-6 { margin-left: 50%; }
    .offset-xxxl-7 { margin-left: 58.33333333%; }
    .offset-xxxl-8 { margin-left: 66.66666667%; }
    .offset-xxxl-9 { margin-left: 75%; }
    .offset-xxxl-10 { margin-left: 83.33333333%; }
    .offset-xxxl-11 { margin-left: 91.66666667%; }
}

/* xxxxl (>= 1920px) */
@media (min-width: 1920px) {
    .col-xxxxl { flex: 1 0 0%; }
    .col-xxxxl-auto { flex: 0 0 auto; width: auto; }
    .col-xxxxl-1 { flex: 0 0 auto; width: 8.33333333%; }
    .col-xxxxl-2 { flex: 0 0 auto; width: 16.66666667%; }
    .col-xxxxl-3 { flex: 0 0 auto; width: 25%; }
    .col-xxxxl-4 { flex: 0 0 auto; width: 33.33333333%; }
    .col-xxxxl-5 { flex: 0 0 auto; width: 41.66666667%; }
    .col-xxxxl-6 { flex: 0 0 auto; width: 50%; }
    .col-xxxxl-7 { flex: 0 0 auto; width: 58.33333333%; }
    .col-xxxxl-8 { flex: 0 0 auto; width: 66.66666667%; }
    .col-xxxxl-9 { flex: 0 0 auto; width: 75%; }
    .col-xxxxl-10 { flex: 0 0 auto; width: 83.33333333%; }
    .col-xxxxl-11 { flex: 0 0 auto; width: 91.66666667%; }
    .col-xxxxl-12 { flex: 0 0 auto; width: 100%; }

    .offset-xxxxl-0 { margin-left: 0; }
    .offset-xxxxl-1 { margin-left: 8.33333333%; }
    .offset-xxxxl-2 { margin-left: 16.66666667%; }
    .offset-xxxxl-3 { margin-left: 25%; }
    .offset-xxxxl-4 { margin-left: 33.33333333%; }
    .offset-xxxxl-5 { margin-left: 41.66666667%; }
    .offset-xxxxl-6 { margin-left: 50%; }
    .offset-xxxxl-7 { margin-left: 58.33333333%; }
    .offset-xxxxl-8 { margin-left: 66.66666667%; }
    .offset-xxxxl-9 { margin-left: 75%; }
    .offset-xxxxl-10 { margin-left: 83.33333333%; }
    .offset-xxxxl-11 { margin-left: 91.66666667%; }
}

/* Side-specific spacing completion for Bootstrap extension values */
@media (min-width: 576px) {
    .pt-sm-6 { padding-top: var(--fc-space-6) !important; }
    .pe-sm-6 { padding-right: var(--fc-space-6) !important; }
    .pb-sm-6 { padding-bottom: var(--fc-space-6) !important; }
    .ps-sm-6 { padding-left: var(--fc-space-6) !important; }
    .mt-sm-6 { margin-top: var(--fc-space-6) !important; }
    .me-sm-6 { margin-right: var(--fc-space-6) !important; }
    .mb-sm-6 { margin-bottom: var(--fc-space-6) !important; }
    .ms-sm-6 { margin-left: var(--fc-space-6) !important; }
    .pt-sm-7 { padding-top: var(--fc-space-7) !important; }
    .pe-sm-7 { padding-right: var(--fc-space-7) !important; }
    .pb-sm-7 { padding-bottom: var(--fc-space-7) !important; }
    .ps-sm-7 { padding-left: var(--fc-space-7) !important; }
    .mt-sm-7 { margin-top: var(--fc-space-7) !important; }
    .me-sm-7 { margin-right: var(--fc-space-7) !important; }
    .mb-sm-7 { margin-bottom: var(--fc-space-7) !important; }
    .ms-sm-7 { margin-left: var(--fc-space-7) !important; }
    .pt-sm-8 { padding-top: var(--fc-space-8) !important; }
    .pe-sm-8 { padding-right: var(--fc-space-8) !important; }
    .pb-sm-8 { padding-bottom: var(--fc-space-8) !important; }
    .ps-sm-8 { padding-left: var(--fc-space-8) !important; }
    .mt-sm-8 { margin-top: var(--fc-space-8) !important; }
    .me-sm-8 { margin-right: var(--fc-space-8) !important; }
    .mb-sm-8 { margin-bottom: var(--fc-space-8) !important; }
    .ms-sm-8 { margin-left: var(--fc-space-8) !important; }
}

@media (min-width: 768px) {
    .pt-md-6 { padding-top: var(--fc-space-6) !important; }
    .pe-md-6 { padding-right: var(--fc-space-6) !important; }
    .pb-md-6 { padding-bottom: var(--fc-space-6) !important; }
    .ps-md-6 { padding-left: var(--fc-space-6) !important; }
    .mt-md-6 { margin-top: var(--fc-space-6) !important; }
    .me-md-6 { margin-right: var(--fc-space-6) !important; }
    .mb-md-6 { margin-bottom: var(--fc-space-6) !important; }
    .ms-md-6 { margin-left: var(--fc-space-6) !important; }
    .pt-md-7 { padding-top: var(--fc-space-7) !important; }
    .pe-md-7 { padding-right: var(--fc-space-7) !important; }
    .pb-md-7 { padding-bottom: var(--fc-space-7) !important; }
    .ps-md-7 { padding-left: var(--fc-space-7) !important; }
    .mt-md-7 { margin-top: var(--fc-space-7) !important; }
    .me-md-7 { margin-right: var(--fc-space-7) !important; }
    .mb-md-7 { margin-bottom: var(--fc-space-7) !important; }
    .ms-md-7 { margin-left: var(--fc-space-7) !important; }
    .pt-md-8 { padding-top: var(--fc-space-8) !important; }
    .pe-md-8 { padding-right: var(--fc-space-8) !important; }
    .pb-md-8 { padding-bottom: var(--fc-space-8) !important; }
    .ps-md-8 { padding-left: var(--fc-space-8) !important; }
    .mt-md-8 { margin-top: var(--fc-space-8) !important; }
    .me-md-8 { margin-right: var(--fc-space-8) !important; }
    .mb-md-8 { margin-bottom: var(--fc-space-8) !important; }
    .ms-md-8 { margin-left: var(--fc-space-8) !important; }
}

@media (min-width: 992px) {
    .pt-lg-6 { padding-top: var(--fc-space-6) !important; }
    .pe-lg-6 { padding-right: var(--fc-space-6) !important; }
    .pb-lg-6 { padding-bottom: var(--fc-space-6) !important; }
    .ps-lg-6 { padding-left: var(--fc-space-6) !important; }
    .mt-lg-6 { margin-top: var(--fc-space-6) !important; }
    .me-lg-6 { margin-right: var(--fc-space-6) !important; }
    .mb-lg-6 { margin-bottom: var(--fc-space-6) !important; }
    .ms-lg-6 { margin-left: var(--fc-space-6) !important; }
    .pt-lg-7 { padding-top: var(--fc-space-7) !important; }
    .pe-lg-7 { padding-right: var(--fc-space-7) !important; }
    .pb-lg-7 { padding-bottom: var(--fc-space-7) !important; }
    .ps-lg-7 { padding-left: var(--fc-space-7) !important; }
    .mt-lg-7 { margin-top: var(--fc-space-7) !important; }
    .me-lg-7 { margin-right: var(--fc-space-7) !important; }
    .mb-lg-7 { margin-bottom: var(--fc-space-7) !important; }
    .ms-lg-7 { margin-left: var(--fc-space-7) !important; }
    .pt-lg-8 { padding-top: var(--fc-space-8) !important; }
    .pe-lg-8 { padding-right: var(--fc-space-8) !important; }
    .pb-lg-8 { padding-bottom: var(--fc-space-8) !important; }
    .ps-lg-8 { padding-left: var(--fc-space-8) !important; }
    .mt-lg-8 { margin-top: var(--fc-space-8) !important; }
    .me-lg-8 { margin-right: var(--fc-space-8) !important; }
    .mb-lg-8 { margin-bottom: var(--fc-space-8) !important; }
    .ms-lg-8 { margin-left: var(--fc-space-8) !important; }
}

@media (min-width: 1200px) {
    .pt-xl-6 { padding-top: var(--fc-space-6) !important; }
    .pe-xl-6 { padding-right: var(--fc-space-6) !important; }
    .pb-xl-6 { padding-bottom: var(--fc-space-6) !important; }
    .ps-xl-6 { padding-left: var(--fc-space-6) !important; }
    .mt-xl-6 { margin-top: var(--fc-space-6) !important; }
    .me-xl-6 { margin-right: var(--fc-space-6) !important; }
    .mb-xl-6 { margin-bottom: var(--fc-space-6) !important; }
    .ms-xl-6 { margin-left: var(--fc-space-6) !important; }
    .pt-xl-7 { padding-top: var(--fc-space-7) !important; }
    .pe-xl-7 { padding-right: var(--fc-space-7) !important; }
    .pb-xl-7 { padding-bottom: var(--fc-space-7) !important; }
    .ps-xl-7 { padding-left: var(--fc-space-7) !important; }
    .mt-xl-7 { margin-top: var(--fc-space-7) !important; }
    .me-xl-7 { margin-right: var(--fc-space-7) !important; }
    .mb-xl-7 { margin-bottom: var(--fc-space-7) !important; }
    .ms-xl-7 { margin-left: var(--fc-space-7) !important; }
    .pt-xl-8 { padding-top: var(--fc-space-8) !important; }
    .pe-xl-8 { padding-right: var(--fc-space-8) !important; }
    .pb-xl-8 { padding-bottom: var(--fc-space-8) !important; }
    .ps-xl-8 { padding-left: var(--fc-space-8) !important; }
    .mt-xl-8 { margin-top: var(--fc-space-8) !important; }
    .me-xl-8 { margin-right: var(--fc-space-8) !important; }
    .mb-xl-8 { margin-bottom: var(--fc-space-8) !important; }
    .ms-xl-8 { margin-left: var(--fc-space-8) !important; }
}

@media (min-width: 1400px) {
    .pt-xxl-6 { padding-top: var(--fc-space-6) !important; }
    .pe-xxl-6 { padding-right: var(--fc-space-6) !important; }
    .pb-xxl-6 { padding-bottom: var(--fc-space-6) !important; }
    .ps-xxl-6 { padding-left: var(--fc-space-6) !important; }
    .mt-xxl-6 { margin-top: var(--fc-space-6) !important; }
    .me-xxl-6 { margin-right: var(--fc-space-6) !important; }
    .mb-xxl-6 { margin-bottom: var(--fc-space-6) !important; }
    .ms-xxl-6 { margin-left: var(--fc-space-6) !important; }
    .pt-xxl-7 { padding-top: var(--fc-space-7) !important; }
    .pe-xxl-7 { padding-right: var(--fc-space-7) !important; }
    .pb-xxl-7 { padding-bottom: var(--fc-space-7) !important; }
    .ps-xxl-7 { padding-left: var(--fc-space-7) !important; }
    .mt-xxl-7 { margin-top: var(--fc-space-7) !important; }
    .me-xxl-7 { margin-right: var(--fc-space-7) !important; }
    .mb-xxl-7 { margin-bottom: var(--fc-space-7) !important; }
    .ms-xxl-7 { margin-left: var(--fc-space-7) !important; }
    .pt-xxl-8 { padding-top: var(--fc-space-8) !important; }
    .pe-xxl-8 { padding-right: var(--fc-space-8) !important; }
    .pb-xxl-8 { padding-bottom: var(--fc-space-8) !important; }
    .ps-xxl-8 { padding-left: var(--fc-space-8) !important; }
    .mt-xxl-8 { margin-top: var(--fc-space-8) !important; }
    .me-xxl-8 { margin-right: var(--fc-space-8) !important; }
    .mb-xxl-8 { margin-bottom: var(--fc-space-8) !important; }
    .ms-xxl-8 { margin-left: var(--fc-space-8) !important; }
}

/* Physical left/right aliases for Bootstrap 4 spacing utilities */
@media (min-width: 576px) {
    .pr-sm-6 { padding-right: var(--fc-space-6) !important; }
    .pl-sm-6 { padding-left: var(--fc-space-6) !important; }
    .mr-sm-6 { margin-right: var(--fc-space-6) !important; }
    .ml-sm-6 { margin-left: var(--fc-space-6) !important; }
    .pr-sm-7 { padding-right: var(--fc-space-7) !important; }
    .pl-sm-7 { padding-left: var(--fc-space-7) !important; }
    .mr-sm-7 { margin-right: var(--fc-space-7) !important; }
    .ml-sm-7 { margin-left: var(--fc-space-7) !important; }
    .pr-sm-8 { padding-right: var(--fc-space-8) !important; }
    .pl-sm-8 { padding-left: var(--fc-space-8) !important; }
    .mr-sm-8 { margin-right: var(--fc-space-8) !important; }
    .ml-sm-8 { margin-left: var(--fc-space-8) !important; }
}

@media (min-width: 768px) {
    .pr-md-6 { padding-right: var(--fc-space-6) !important; }
    .pl-md-6 { padding-left: var(--fc-space-6) !important; }
    .mr-md-6 { margin-right: var(--fc-space-6) !important; }
    .ml-md-6 { margin-left: var(--fc-space-6) !important; }
    .pr-md-7 { padding-right: var(--fc-space-7) !important; }
    .pl-md-7 { padding-left: var(--fc-space-7) !important; }
    .mr-md-7 { margin-right: var(--fc-space-7) !important; }
    .ml-md-7 { margin-left: var(--fc-space-7) !important; }
    .pr-md-8 { padding-right: var(--fc-space-8) !important; }
    .pl-md-8 { padding-left: var(--fc-space-8) !important; }
    .mr-md-8 { margin-right: var(--fc-space-8) !important; }
    .ml-md-8 { margin-left: var(--fc-space-8) !important; }
}

@media (min-width: 992px) {
    .pr-lg-6 { padding-right: var(--fc-space-6) !important; }
    .pl-lg-6 { padding-left: var(--fc-space-6) !important; }
    .mr-lg-6 { margin-right: var(--fc-space-6) !important; }
    .ml-lg-6 { margin-left: var(--fc-space-6) !important; }
    .pr-lg-7 { padding-right: var(--fc-space-7) !important; }
    .pl-lg-7 { padding-left: var(--fc-space-7) !important; }
    .mr-lg-7 { margin-right: var(--fc-space-7) !important; }
    .ml-lg-7 { margin-left: var(--fc-space-7) !important; }
    .pr-lg-8 { padding-right: var(--fc-space-8) !important; }
    .pl-lg-8 { padding-left: var(--fc-space-8) !important; }
    .mr-lg-8 { margin-right: var(--fc-space-8) !important; }
    .ml-lg-8 { margin-left: var(--fc-space-8) !important; }
}

@media (min-width: 1200px) {
    .pr-xl-6 { padding-right: var(--fc-space-6) !important; }
    .pl-xl-6 { padding-left: var(--fc-space-6) !important; }
    .mr-xl-6 { margin-right: var(--fc-space-6) !important; }
    .ml-xl-6 { margin-left: var(--fc-space-6) !important; }
    .pr-xl-7 { padding-right: var(--fc-space-7) !important; }
    .pl-xl-7 { padding-left: var(--fc-space-7) !important; }
    .mr-xl-7 { margin-right: var(--fc-space-7) !important; }
    .ml-xl-7 { margin-left: var(--fc-space-7) !important; }
    .pr-xl-8 { padding-right: var(--fc-space-8) !important; }
    .pl-xl-8 { padding-left: var(--fc-space-8) !important; }
    .mr-xl-8 { margin-right: var(--fc-space-8) !important; }
    .ml-xl-8 { margin-left: var(--fc-space-8) !important; }
}

@media (min-width: 1400px) {
    .pr-xxl-6 { padding-right: var(--fc-space-6) !important; }
    .pl-xxl-6 { padding-left: var(--fc-space-6) !important; }
    .mr-xxl-6 { margin-right: var(--fc-space-6) !important; }
    .ml-xxl-6 { margin-left: var(--fc-space-6) !important; }
    .pr-xxl-7 { padding-right: var(--fc-space-7) !important; }
    .pl-xxl-7 { padding-left: var(--fc-space-7) !important; }
    .mr-xxl-7 { margin-right: var(--fc-space-7) !important; }
    .ml-xxl-7 { margin-left: var(--fc-space-7) !important; }
    .pr-xxl-8 { padding-right: var(--fc-space-8) !important; }
    .pl-xxl-8 { padding-left: var(--fc-space-8) !important; }
    .mr-xxl-8 { margin-right: var(--fc-space-8) !important; }
    .ml-xxl-8 { margin-left: var(--fc-space-8) !important; }
}

/* Directional spacing overrides for the full Bootstrap scale */
.pt-0 { padding-top: 0 !important; }
.pr-0 { padding-right: 0 !important; }
.pb-0 { padding-bottom: 0 !important; }
.pl-0 { padding-left: 0 !important; }
.mt-0 { margin-top: 0 !important; }
.mr-0 { margin-right: 0 !important; }
.mb-0 { margin-bottom: 0 !important; }
.ml-0 { margin-left: 0 !important; }
.pt-1 { padding-top: 0.25rem !important; }
.pr-1 { padding-right: 0.25rem !important; }
.pb-1 { padding-bottom: 0.25rem !important; }
.pl-1 { padding-left: 0.25rem !important; }
.mt-1 { margin-top: 0.25rem !important; }
.mr-1 { margin-right: 0.25rem !important; }
.mb-1 { margin-bottom: 0.25rem !important; }
.ml-1 { margin-left: 0.25rem !important; }
.pt-2 { padding-top: 0.5rem !important; }
.pr-2 { padding-right: 0.5rem !important; }
.pb-2 { padding-bottom: 0.5rem !important; }
.pl-2 { padding-left: 0.5rem !important; }
.mt-2 { margin-top: 0.5rem !important; }
.mr-2 { margin-right: 0.5rem !important; }
.mb-2 { margin-bottom: 0.5rem !important; }
.ml-2 { margin-left: 0.5rem !important; }
.pt-3 { padding-top: 1rem !important; }
.pr-3 { padding-right: 1rem !important; }
.pb-3 { padding-bottom: 1rem !important; }
.pl-3 { padding-left: 1rem !important; }
.mt-3 { margin-top: 1rem !important; }
.mr-3 { margin-right: 1rem !important; }
.mb-3 { margin-bottom: 1rem !important; }
.ml-3 { margin-left: 1rem !important; }
.pt-4 { padding-top: 1.5rem !important; }
.pr-4 { padding-right: 1.5rem !important; }
.pb-4 { padding-bottom: 1.5rem !important; }
.pl-4 { padding-left: 1.5rem !important; }
.mt-4 { margin-top: 1.5rem !important; }
.mr-4 { margin-right: 1.5rem !important; }
.mb-4 { margin-bottom: 1.5rem !important; }
.ml-4 { margin-left: 1.5rem !important; }
.pt-5 { padding-top: 3rem !important; }
.pr-5 { padding-right: 3rem !important; }
.pb-5 { padding-bottom: 3rem !important; }
.pl-5 { padding-left: 3rem !important; }
.mt-5 { margin-top: 3rem !important; }
.mr-5 { margin-right: 3rem !important; }
.mb-5 { margin-bottom: 3rem !important; }
.ml-5 { margin-left: 3rem !important; }

@media (min-width: 576px) {
    .pt-sm-0 { padding-top: 0 !important; }
    .pr-sm-0 { padding-right: 0 !important; }
    .pb-sm-0 { padding-bottom: 0 !important; }
    .pl-sm-0 { padding-left: 0 !important; }
    .mt-sm-0 { margin-top: 0 !important; }
    .mr-sm-0 { margin-right: 0 !important; }
    .mb-sm-0 { margin-bottom: 0 !important; }
    .ml-sm-0 { margin-left: 0 !important; }
    .pt-sm-1 { padding-top: 0.25rem !important; }
    .pr-sm-1 { padding-right: 0.25rem !important; }
    .pb-sm-1 { padding-bottom: 0.25rem !important; }
    .pl-sm-1 { padding-left: 0.25rem !important; }
    .mt-sm-1 { margin-top: 0.25rem !important; }
    .mr-sm-1 { margin-right: 0.25rem !important; }
    .mb-sm-1 { margin-bottom: 0.25rem !important; }
    .ml-sm-1 { margin-left: 0.25rem !important; }
    .pt-sm-2 { padding-top: 0.5rem !important; }
    .pr-sm-2 { padding-right: 0.5rem !important; }
    .pb-sm-2 { padding-bottom: 0.5rem !important; }
    .pl-sm-2 { padding-left: 0.5rem !important; }
    .mt-sm-2 { margin-top: 0.5rem !important; }
    .mr-sm-2 { margin-right: 0.5rem !important; }
    .mb-sm-2 { margin-bottom: 0.5rem !important; }
    .ml-sm-2 { margin-left: 0.5rem !important; }
    .pt-sm-3 { padding-top: 1rem !important; }
    .pr-sm-3 { padding-right: 1rem !important; }
    .pb-sm-3 { padding-bottom: 1rem !important; }
    .pl-sm-3 { padding-left: 1rem !important; }
    .mt-sm-3 { margin-top: 1rem !important; }
    .mr-sm-3 { margin-right: 1rem !important; }
    .mb-sm-3 { margin-bottom: 1rem !important; }
    .ml-sm-3 { margin-left: 1rem !important; }
    .pt-sm-4 { padding-top: 1.5rem !important; }
    .pr-sm-4 { padding-right: 1.5rem !important; }
    .pb-sm-4 { padding-bottom: 1.5rem !important; }
    .pl-sm-4 { padding-left: 1.5rem !important; }
    .mt-sm-4 { margin-top: 1.5rem !important; }
    .mr-sm-4 { margin-right: 1.5rem !important; }
    .mb-sm-4 { margin-bottom: 1.5rem !important; }
    .ml-sm-4 { margin-left: 1.5rem !important; }
    .pt-sm-5 { padding-top: 3rem !important; }
    .pr-sm-5 { padding-right: 3rem !important; }
    .pb-sm-5 { padding-bottom: 3rem !important; }
    .pl-sm-5 { padding-left: 3rem !important; }
    .mt-sm-5 { margin-top: 3rem !important; }
    .mr-sm-5 { margin-right: 3rem !important; }
    .mb-sm-5 { margin-bottom: 3rem !important; }
    .ml-sm-5 { margin-left: 3rem !important; }
}

@media (min-width: 768px) {
    .pt-md-0 { padding-top: 0 !important; }
    .pr-md-0 { padding-right: 0 !important; }
    .pb-md-0 { padding-bottom: 0 !important; }
    .pl-md-0 { padding-left: 0 !important; }
    .mt-md-0 { margin-top: 0 !important; }
    .mr-md-0 { margin-right: 0 !important; }
    .mb-md-0 { margin-bottom: 0 !important; }
    .ml-md-0 { margin-left: 0 !important; }
    .pt-md-1 { padding-top: 0.25rem !important; }
    .pr-md-1 { padding-right: 0.25rem !important; }
    .pb-md-1 { padding-bottom: 0.25rem !important; }
    .pl-md-1 { padding-left: 0.25rem !important; }
    .mt-md-1 { margin-top: 0.25rem !important; }
    .mr-md-1 { margin-right: 0.25rem !important; }
    .mb-md-1 { margin-bottom: 0.25rem !important; }
    .ml-md-1 { margin-left: 0.25rem !important; }
    .pt-md-2 { padding-top: 0.5rem !important; }
    .pr-md-2 { padding-right: 0.5rem !important; }
    .pb-md-2 { padding-bottom: 0.5rem !important; }
    .pl-md-2 { padding-left: 0.5rem !important; }
    .mt-md-2 { margin-top: 0.5rem !important; }
    .mr-md-2 { margin-right: 0.5rem !important; }
    .mb-md-2 { margin-bottom: 0.5rem !important; }
    .ml-md-2 { margin-left: 0.5rem !important; }
    .pt-md-3 { padding-top: 1rem !important; }
    .pr-md-3 { padding-right: 1rem !important; }
    .pb-md-3 { padding-bottom: 1rem !important; }
    .pl-md-3 { padding-left: 1rem !important; }
    .mt-md-3 { margin-top: 1rem !important; }
    .mr-md-3 { margin-right: 1rem !important; }
    .mb-md-3 { margin-bottom: 1rem !important; }
    .ml-md-3 { margin-left: 1rem !important; }
    .pt-md-4 { padding-top: 1.5rem !important; }
    .pr-md-4 { padding-right: 1.5rem !important; }
    .pb-md-4 { padding-bottom: 1.5rem !important; }
    .pl-md-4 { padding-left: 1.5rem !important; }
    .mt-md-4 { margin-top: 1.5rem !important; }
    .mr-md-4 { margin-right: 1.5rem !important; }
    .mb-md-4 { margin-bottom: 1.5rem !important; }
    .ml-md-4 { margin-left: 1.5rem !important; }
    .pt-md-5 { padding-top: 3rem !important; }
    .pr-md-5 { padding-right: 3rem !important; }
    .pb-md-5 { padding-bottom: 3rem !important; }
    .pl-md-5 { padding-left: 3rem !important; }
    .mt-md-5 { margin-top: 3rem !important; }
    .mr-md-5 { margin-right: 3rem !important; }
    .mb-md-5 { margin-bottom: 3rem !important; }
    .ml-md-5 { margin-left: 3rem !important; }
}

@media (min-width: 992px) {
    .pt-lg-0 { padding-top: 0 !important; }
    .pr-lg-0 { padding-right: 0 !important; }
    .pb-lg-0 { padding-bottom: 0 !important; }
    .pl-lg-0 { padding-left: 0 !important; }
    .mt-lg-0 { margin-top: 0 !important; }
    .mr-lg-0 { margin-right: 0 !important; }
    .mb-lg-0 { margin-bottom: 0 !important; }
    .ml-lg-0 { margin-left: 0 !important; }
    .pt-lg-1 { padding-top: 0.25rem !important; }
    .pr-lg-1 { padding-right: 0.25rem !important; }
    .pb-lg-1 { padding-bottom: 0.25rem !important; }
    .pl-lg-1 { padding-left: 0.25rem !important; }
    .mt-lg-1 { margin-top: 0.25rem !important; }
    .mr-lg-1 { margin-right: 0.25rem !important; }
    .mb-lg-1 { margin-bottom: 0.25rem !important; }
    .ml-lg-1 { margin-left: 0.25rem !important; }
    .pt-lg-2 { padding-top: 0.5rem !important; }
    .pr-lg-2 { padding-right: 0.5rem !important; }
    .pb-lg-2 { padding-bottom: 0.5rem !important; }
    .pl-lg-2 { padding-left: 0.5rem !important; }
    .mt-lg-2 { margin-top: 0.5rem !important; }
    .mr-lg-2 { margin-right: 0.5rem !important; }
    .mb-lg-2 { margin-bottom: 0.5rem !important; }
    .ml-lg-2 { margin-left: 0.5rem !important; }
    .pt-lg-3 { padding-top: 1rem !important; }
    .pr-lg-3 { padding-right: 1rem !important; }
    .pb-lg-3 { padding-bottom: 1rem !important; }
    .pl-lg-3 { padding-left: 1rem !important; }
    .mt-lg-3 { margin-top: 1rem !important; }
    .mr-lg-3 { margin-right: 1rem !important; }
    .mb-lg-3 { margin-bottom: 1rem !important; }
    .ml-lg-3 { margin-left: 1rem !important; }
    .pt-lg-4 { padding-top: 1.5rem !important; }
    .pr-lg-4 { padding-right: 1.5rem !important; }
    .pb-lg-4 { padding-bottom: 1.5rem !important; }
    .pl-lg-4 { padding-left: 1.5rem !important; }
    .mt-lg-4 { margin-top: 1.5rem !important; }
    .mr-lg-4 { margin-right: 1.5rem !important; }
    .mb-lg-4 { margin-bottom: 1.5rem !important; }
    .ml-lg-4 { margin-left: 1.5rem !important; }
    .pt-lg-5 { padding-top: 3rem !important; }
    .pr-lg-5 { padding-right: 3rem !important; }
    .pb-lg-5 { padding-bottom: 3rem !important; }
    .pl-lg-5 { padding-left: 3rem !important; }
    .mt-lg-5 { margin-top: 3rem !important; }
    .mr-lg-5 { margin-right: 3rem !important; }
    .mb-lg-5 { margin-bottom: 3rem !important; }
    .ml-lg-5 { margin-left: 3rem !important; }
}

@media (min-width: 1200px) {
    .pt-xl-0 { padding-top: 0 !important; }
    .pr-xl-0 { padding-right: 0 !important; }
    .pb-xl-0 { padding-bottom: 0 !important; }
    .pl-xl-0 { padding-left: 0 !important; }
    .mt-xl-0 { margin-top: 0 !important; }
    .mr-xl-0 { margin-right: 0 !important; }
    .mb-xl-0 { margin-bottom: 0 !important; }
    .ml-xl-0 { margin-left: 0 !important; }
    .pt-xl-1 { padding-top: 0.25rem !important; }
    .pr-xl-1 { padding-right: 0.25rem !important; }
    .pb-xl-1 { padding-bottom: 0.25rem !important; }
    .pl-xl-1 { padding-left: 0.25rem !important; }
    .mt-xl-1 { margin-top: 0.25rem !important; }
    .mr-xl-1 { margin-right: 0.25rem !important; }
    .mb-xl-1 { margin-bottom: 0.25rem !important; }
    .ml-xl-1 { margin-left: 0.25rem !important; }
    .pt-xl-2 { padding-top: 0.5rem !important; }
    .pr-xl-2 { padding-right: 0.5rem !important; }
    .pb-xl-2 { padding-bottom: 0.5rem !important; }
    .pl-xl-2 { padding-left: 0.5rem !important; }
    .mt-xl-2 { margin-top: 0.5rem !important; }
    .mr-xl-2 { margin-right: 0.5rem !important; }
    .mb-xl-2 { margin-bottom: 0.5rem !important; }
    .ml-xl-2 { margin-left: 0.5rem !important; }
    .pt-xl-3 { padding-top: 1rem !important; }
    .pr-xl-3 { padding-right: 1rem !important; }
    .pb-xl-3 { padding-bottom: 1rem !important; }
    .pl-xl-3 { padding-left: 1rem !important; }
    .mt-xl-3 { margin-top: 1rem !important; }
    .mr-xl-3 { margin-right: 1rem !important; }
    .mb-xl-3 { margin-bottom: 1rem !important; }
    .ml-xl-3 { margin-left: 1rem !important; }
    .pt-xl-4 { padding-top: 1.5rem !important; }
    .pr-xl-4 { padding-right: 1.5rem !important; }
    .pb-xl-4 { padding-bottom: 1.5rem !important; }
    .pl-xl-4 { padding-left: 1.5rem !important; }
    .mt-xl-4 { margin-top: 1.5rem !important; }
    .mr-xl-4 { margin-right: 1.5rem !important; }
    .mb-xl-4 { margin-bottom: 1.5rem !important; }
    .ml-xl-4 { margin-left: 1.5rem !important; }
    .pt-xl-5 { padding-top: 3rem !important; }
    .pr-xl-5 { padding-right: 3rem !important; }
    .pb-xl-5 { padding-bottom: 3rem !important; }
    .pl-xl-5 { padding-left: 3rem !important; }
    .mt-xl-5 { margin-top: 3rem !important; }
    .mr-xl-5 { margin-right: 3rem !important; }
    .mb-xl-5 { margin-bottom: 3rem !important; }
    .ml-xl-5 { margin-left: 3rem !important; }
}

@media (min-width: 1400px) {
    .pt-xxl-0 { padding-top: 0 !important; }
    .pr-xxl-0 { padding-right: 0 !important; }
    .pb-xxl-0 { padding-bottom: 0 !important; }
    .pl-xxl-0 { padding-left: 0 !important; }
    .mt-xxl-0 { margin-top: 0 !important; }
    .mr-xxl-0 { margin-right: 0 !important; }
    .mb-xxl-0 { margin-bottom: 0 !important; }
    .ml-xxl-0 { margin-left: 0 !important; }
    .pt-xxl-1 { padding-top: 0.25rem !important; }
    .pr-xxl-1 { padding-right: 0.25rem !important; }
    .pb-xxl-1 { padding-bottom: 0.25rem !important; }
    .pl-xxl-1 { padding-left: 0.25rem !important; }
    .mt-xxl-1 { margin-top: 0.25rem !important; }
    .mr-xxl-1 { margin-right: 0.25rem !important; }
    .mb-xxl-1 { margin-bottom: 0.25rem !important; }
    .ml-xxl-1 { margin-left: 0.25rem !important; }
    .pt-xxl-2 { padding-top: 0.5rem !important; }
    .pr-xxl-2 { padding-right: 0.5rem !important; }
    .pb-xxl-2 { padding-bottom: 0.5rem !important; }
    .pl-xxl-2 { padding-left: 0.5rem !important; }
    .mt-xxl-2 { margin-top: 0.5rem !important; }
    .mr-xxl-2 { margin-right: 0.5rem !important; }
    .mb-xxl-2 { margin-bottom: 0.5rem !important; }
    .ml-xxl-2 { margin-left: 0.5rem !important; }
    .pt-xxl-3 { padding-top: 1rem !important; }
    .pr-xxl-3 { padding-right: 1rem !important; }
    .pb-xxl-3 { padding-bottom: 1rem !important; }
    .pl-xxl-3 { padding-left: 1rem !important; }
    .mt-xxl-3 { margin-top: 1rem !important; }
    .mr-xxl-3 { margin-right: 1rem !important; }
    .mb-xxl-3 { margin-bottom: 1rem !important; }
    .ml-xxl-3 { margin-left: 1rem !important; }
    .pt-xxl-4 { padding-top: 1.5rem !important; }
    .pr-xxl-4 { padding-right: 1.5rem !important; }
    .pb-xxl-4 { padding-bottom: 1.5rem !important; }
    .pl-xxl-4 { padding-left: 1.5rem !important; }
    .mt-xxl-4 { margin-top: 1.5rem !important; }
    .mr-xxl-4 { margin-right: 1.5rem !important; }
    .mb-xxl-4 { margin-bottom: 1.5rem !important; }
    .ml-xxl-4 { margin-left: 1.5rem !important; }
    .pt-xxl-5 { padding-top: 3rem !important; }
    .pr-xxl-5 { padding-right: 3rem !important; }
    .pb-xxl-5 { padding-bottom: 3rem !important; }
    .pl-xxl-5 { padding-left: 3rem !important; }
    .mt-xxl-5 { margin-top: 3rem !important; }
    .mr-xxl-5 { margin-right: 3rem !important; }
    .mb-xxl-5 { margin-bottom: 3rem !important; }
    .ml-xxl-5 { margin-left: 3rem !important; }
}

/* Side-specific border radius utilities */
.rounded-top,
.rounded-top-2 {
    border-top-left-radius: var(--bs-border-radius, 0.25rem) !important;
    border-top-right-radius: var(--bs-border-radius, 0.25rem) !important;
}
.rounded-top-1 {
    border-top-left-radius: var(--bs-border-radius-sm, 0.2rem) !important;
    border-top-right-radius: var(--bs-border-radius-sm, 0.2rem) !important;
}
.rounded-top-0 {
    border-top-left-radius: 0 !important;
    border-top-right-radius: 0 !important;
}
.rounded-top-3 {
    border-top-left-radius: var(--bs-border-radius-lg, 0.3rem) !important;
    border-top-right-radius: var(--bs-border-radius-lg, 0.3rem) !important;
}
.rounded-top-4 {
    border-top-left-radius: var(--bs-border-radius-xl, 0.5rem) !important;
    border-top-right-radius: var(--bs-border-radius-xl, 0.5rem) !important;
}
.rounded-top-5 {
    border-top-left-radius: var(--bs-border-radius-xxl, 1rem) !important;
    border-top-right-radius: var(--bs-border-radius-xxl, 1rem) !important;
}

.rounded-end,
.rounded-end-2 {
    border-top-right-radius: var(--bs-border-radius, 0.25rem) !important;
    border-bottom-right-radius: var(--bs-border-radius, 0.25rem) !important;
}
.rounded-end-1 {
    border-top-right-radius: var(--bs-border-radius-sm, 0.2rem) !important;
    border-bottom-right-radius: var(--bs-border-radius-sm, 0.2rem) !important;
}
.rounded-end-0 {
    border-top-right-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
}
.rounded-end-3 {
    border-top-right-radius: var(--bs-border-radius-lg, 0.3rem) !important;
    border-bottom-right-radius: var(--bs-border-radius-lg, 0.3rem) !important;
}
.rounded-end-4 {
    border-top-right-radius: var(--bs-border-radius-xl, 0.5rem) !important;
    border-bottom-right-radius: var(--bs-border-radius-xl, 0.5rem) !important;
}
.rounded-end-5 {
    border-top-right-radius: var(--bs-border-radius-xxl, 1rem) !important;
    border-bottom-right-radius: var(--bs-border-radius-xxl, 1rem) !important;
}

.rounded-right,
.rounded-right-2 {
    border-top-right-radius: var(--bs-border-radius, 0.25rem) !important;
    border-bottom-right-radius: var(--bs-border-radius, 0.25rem) !important;
}
.rounded-right-1 {
    border-top-right-radius: var(--bs-border-radius-sm, 0.2rem) !important;
    border-bottom-right-radius: var(--bs-border-radius-sm, 0.2rem) !important;
}
.rounded-right-0 {
    border-top-right-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
}
.rounded-right-3 {
    border-top-right-radius: var(--bs-border-radius-lg, 0.3rem) !important;
    border-bottom-right-radius: var(--bs-border-radius-lg, 0.3rem) !important;
}
.rounded-right-4 {
    border-top-right-radius: var(--bs-border-radius-xl, 0.5rem) !important;
    border-bottom-right-radius: var(--bs-border-radius-xl, 0.5rem) !important;
}
.rounded-right-5 {
    border-top-right-radius: var(--bs-border-radius-xxl, 1rem) !important;
    border-bottom-right-radius: var(--bs-border-radius-xxl, 1rem) !important;
}

.rounded-bottom,
.rounded-bottom-2 {
    border-bottom-right-radius: var(--bs-border-radius, 0.25rem) !important;
    border-bottom-left-radius: var(--bs-border-radius, 0.25rem) !important;
}
.rounded-bottom-1 {
    border-bottom-right-radius: var(--bs-border-radius-sm, 0.2rem) !important;
    border-bottom-left-radius: var(--bs-border-radius-sm, 0.2rem) !important;
}
.rounded-bottom-0 {
    border-bottom-right-radius: 0 !important;
    border-bottom-left-radius: 0 !important;
}
.rounded-bottom-3 {
    border-bottom-right-radius: var(--bs-border-radius-lg, 0.3rem) !important;
    border-bottom-left-radius: var(--bs-border-radius-lg, 0.3rem) !important;
}
.rounded-bottom-4 {
    border-bottom-right-radius: var(--bs-border-radius-xl, 0.5rem) !important;
    border-bottom-left-radius: var(--bs-border-radius-xl, 0.5rem) !important;
}
.rounded-bottom-5 {
    border-bottom-right-radius: var(--bs-border-radius-xxl, 1rem) !important;
    border-bottom-left-radius: var(--bs-border-radius-xxl, 1rem) !important;
}

.rounded-start,
.rounded-start-2 {
    border-top-left-radius: var(--bs-border-radius, 0.25rem) !important;
    border-bottom-left-radius: var(--bs-border-radius, 0.25rem) !important;
}
.rounded-start-1 {
    border-top-left-radius: var(--bs-border-radius-sm, 0.2rem) !important;
    border-bottom-left-radius: var(--bs-border-radius-sm, 0.2rem) !important;
}
.rounded-start-0 {
    border-top-left-radius: 0 !important;
    border-bottom-left-radius: 0 !important;
}
.rounded-start-3 {
    border-top-left-radius: var(--bs-border-radius-lg, 0.3rem) !important;
    border-bottom-left-radius: var(--bs-border-radius-lg, 0.3rem) !important;
}
.rounded-start-4 {
    border-top-left-radius: var(--bs-border-radius-xl, 0.5rem) !important;
    border-bottom-left-radius: var(--bs-border-radius-xl, 0.5rem) !important;
}
.rounded-start-5 {
    border-top-left-radius: var(--bs-border-radius-xxl, 1rem) !important;
    border-bottom-left-radius: var(--bs-border-radius-xxl, 1rem) !important;
}

.rounded-left,
.rounded-left-2 {
    border-top-left-radius: var(--bs-border-radius, 0.25rem) !important;
    border-bottom-left-radius: var(--bs-border-radius, 0.25rem) !important;
}
.rounded-left-1 {
    border-top-left-radius: var(--bs-border-radius-sm, 0.2rem) !important;
    border-bottom-left-radius: var(--bs-border-radius-sm, 0.2rem) !important;
}
.rounded-left-0 {
    border-top-left-radius: 0 !important;
    border-bottom-left-radius: 0 !important;
}
.rounded-left-3 {
    border-top-left-radius: var(--bs-border-radius-lg, 0.3rem) !important;
    border-bottom-left-radius: var(--bs-border-radius-lg, 0.3rem) !important;
}
.rounded-left-4 {
    border-top-left-radius: var(--bs-border-radius-xl, 0.5rem) !important;
    border-bottom-left-radius: var(--bs-border-radius-xl, 0.5rem) !important;
}
.rounded-left-5 {
    border-top-left-radius: var(--bs-border-radius-xxl, 1rem) !important;
    border-bottom-left-radius: var(--bs-border-radius-xxl, 1rem) !important;
}

.fc-border-style-solid {
    border-style: solid !important;
}

.fc-border-style-dashed {
    border-style: dashed !important;
}

.fc-border-style-dotted {
    border-style: dotted !important;
}

.fc-border-style-double {
    border-style: double !important;
}

.fc-border-style-none {
    border-style: none !important;
}

.fc-border-top,
.fc-border-top-1,
.fc-border-top-2,
.fc-border-top-3,
.fc-border-top-4,
.fc-border-top-5 {
    border-top-style: solid !important;
    border-top-color: var(--bs-border-color) !important;
}

.fc-border-end,
.fc-border-end-1,
.fc-border-end-2,
.fc-border-end-3,
.fc-border-end-4,
.fc-border-end-5 {
    border-right-style: solid !important;
    border-right-color: var(--bs-border-color) !important;
}

.fc-border-bottom,
.fc-border-bottom-1,
.fc-border-bottom-2,
.fc-border-bottom-3,
.fc-border-bottom-4,
.fc-border-bottom-5 {
    border-bottom-style: solid !important;
    border-bottom-color: var(--bs-border-color) !important;
}

.fc-border-start,
.fc-border-start-1,
.fc-border-start-2,
.fc-border-start-3,
.fc-border-start-4,
.fc-border-start-5 {
    border-left-style: solid !important;
    border-left-color: var(--bs-border-color) !important;
}

.fc-border-top {
    border-top-width: var(--bs-border-width) !important;
}

.fc-border-end {
    border-right-width: var(--bs-border-width) !important;
}

.fc-border-bottom {
    border-bottom-width: var(--bs-border-width) !important;
}

.fc-border-start {
    border-left-width: var(--bs-border-width) !important;
}

.fc-border-top-0 {
    border-top-width: 0 !important;
}

.fc-border-end-0 {
    border-right-width: 0 !important;
}

.fc-border-bottom-0 {
    border-bottom-width: 0 !important;
}

.fc-border-start-0 {
    border-left-width: 0 !important;
}

.fc-border-top-1 {
    border-top-width: 1px !important;
}

.fc-border-end-1 {
    border-right-width: 1px !important;
}

.fc-border-bottom-1 {
    border-bottom-width: 1px !important;
}

.fc-border-start-1 {
    border-left-width: 1px !important;
}

.fc-border-top-2 {
    border-top-width: 2px !important;
}

.fc-border-end-2 {
    border-right-width: 2px !important;
}

.fc-border-bottom-2 {
    border-bottom-width: 2px !important;
}

.fc-border-start-2 {
    border-left-width: 2px !important;
}

.fc-border-top-3 {
    border-top-width: 3px !important;
}

.fc-border-end-3 {
    border-right-width: 3px !important;
}

.fc-border-bottom-3 {
    border-bottom-width: 3px !important;
}

.fc-border-start-3 {
    border-left-width: 3px !important;
}

.fc-border-top-4 {
    border-top-width: 4px !important;
}

.fc-border-end-4 {
    border-right-width: 4px !important;
}

.fc-border-bottom-4 {
    border-bottom-width: 4px !important;
}

.fc-border-start-4 {
    border-left-width: 4px !important;
}

.fc-border-top-5 {
    border-top-width: 5px !important;
}

.fc-border-end-5 {
    border-right-width: 5px !important;
}

.fc-border-bottom-5 {
    border-bottom-width: 5px !important;
}

.fc-border-start-5 {
    border-left-width: 5px !important;
}

.fc-border-top-style-solid {
    border-top-style: solid !important;
}

.fc-border-end-style-solid {
    border-right-style: solid !important;
}

.fc-border-bottom-style-solid {
    border-bottom-style: solid !important;
}

.fc-border-start-style-solid {
    border-left-style: solid !important;
}

.fc-border-top-style-dashed {
    border-top-style: dashed !important;
}

.fc-border-end-style-dashed {
    border-right-style: dashed !important;
}

.fc-border-bottom-style-dashed {
    border-bottom-style: dashed !important;
}

.fc-border-start-style-dashed {
    border-left-style: dashed !important;
}

.fc-border-top-style-dotted {
    border-top-style: dotted !important;
}

.fc-border-end-style-dotted {
    border-right-style: dotted !important;
}

.fc-border-bottom-style-dotted {
    border-bottom-style: dotted !important;
}

.fc-border-start-style-dotted {
    border-left-style: dotted !important;
}

.fc-border-top-style-double {
    border-top-style: double !important;
}

.fc-border-end-style-double {
    border-right-style: double !important;
}

.fc-border-bottom-style-double {
    border-bottom-style: double !important;
}

.fc-border-start-style-double {
    border-left-style: double !important;
}

.fc-border-top-style-none {
    border-top-style: none !important;
}

.fc-border-end-style-none {
    border-right-style: none !important;
}

.fc-border-bottom-style-none {
    border-bottom-style: none !important;
}

.fc-border-start-style-none {
    border-left-style: none !important;
}

.fc-border-top-primary {
    border-top-color: var(--bs-primary) !important;
}

.fc-border-end-primary {
    border-right-color: var(--bs-primary) !important;
}

.fc-border-bottom-primary {
    border-bottom-color: var(--bs-primary) !important;
}

.fc-border-start-primary {
    border-left-color: var(--bs-primary) !important;
}

.fc-border-top-secondary {
    border-top-color: var(--bs-secondary) !important;
}

.fc-border-end-secondary {
    border-right-color: var(--bs-secondary) !important;
}

.fc-border-bottom-secondary {
    border-bottom-color: var(--bs-secondary) !important;
}

.fc-border-start-secondary {
    border-left-color: var(--bs-secondary) !important;
}

.fc-border-top-success {
    border-top-color: var(--bs-success) !important;
}

.fc-border-end-success {
    border-right-color: var(--bs-success) !important;
}

.fc-border-bottom-success {
    border-bottom-color: var(--bs-success) !important;
}

.fc-border-start-success {
    border-left-color: var(--bs-success) !important;
}

.fc-border-top-danger {
    border-top-color: var(--bs-danger) !important;
}

.fc-border-end-danger {
    border-right-color: var(--bs-danger) !important;
}

.fc-border-bottom-danger {
    border-bottom-color: var(--bs-danger) !important;
}

.fc-border-start-danger {
    border-left-color: var(--bs-danger) !important;
}

.fc-border-top-warning {
    border-top-color: var(--bs-warning) !important;
}

.fc-border-end-warning {
    border-right-color: var(--bs-warning) !important;
}

.fc-border-bottom-warning {
    border-bottom-color: var(--bs-warning) !important;
}

.fc-border-start-warning {
    border-left-color: var(--bs-warning) !important;
}

.fc-border-top-info {
    border-top-color: var(--bs-info) !important;
}

.fc-border-end-info {
    border-right-color: var(--bs-info) !important;
}

.fc-border-bottom-info {
    border-bottom-color: var(--bs-info) !important;
}

.fc-border-start-info {
    border-left-color: var(--bs-info) !important;
}

.fc-border-top-light {
    border-top-color: var(--bs-light) !important;
}

.fc-border-end-light {
    border-right-color: var(--bs-light) !important;
}

.fc-border-bottom-light {
    border-bottom-color: var(--bs-light) !important;
}

.fc-border-start-light {
    border-left-color: var(--bs-light) !important;
}

.fc-border-top-dark {
    border-top-color: var(--bs-dark) !important;
}

.fc-border-end-dark {
    border-right-color: var(--bs-dark) !important;
}

.fc-border-bottom-dark {
    border-bottom-color: var(--bs-dark) !important;
}

.fc-border-start-dark {
    border-left-color: var(--bs-dark) !important;
}

.fc-border-top-black {
    border-top-color: var(--bs-black) !important;
}

.fc-border-end-black {
    border-right-color: var(--bs-black) !important;
}

.fc-border-bottom-black {
    border-bottom-color: var(--bs-black) !important;
}

.fc-border-start-black {
    border-left-color: var(--bs-black) !important;
}

.fc-border-top-white {
    border-top-color: var(--bs-white) !important;
}

.fc-border-end-white {
    border-right-color: var(--bs-white) !important;
}

.fc-border-bottom-white {
    border-bottom-color: var(--bs-white) !important;
}

.fc-border-start-white {
    border-left-color: var(--bs-white) !important;
}

.fc-scroll-direction-horizontal {
    display: block !important;
    position: relative;
    overflow: visible;
}

.fc-scroll-direction-horizontal > .fc-horizontal-scroll-sticky {
    display: flex;
    align-items: center;
    position: sticky;
    top: var(--fc-horizontal-scroll-sticky-top, 0);
    width: 100%;
    height: 100svh;
    overflow: hidden;
}

.fc-scroll-direction-horizontal .fc-horizontal-scroll-pinned {
    display: flex;
    flex-wrap: nowrap;
    align-items: stretch;
    position: absolute;
    inset: 0;
    width: 100%;
    max-width: 100%;
    pointer-events: none;
    z-index: 1;
}

.fc-scroll-direction-horizontal .fc-horizontal-scroll-pinned > * {
    flex: 0 0 auto;
    pointer-events: auto;
}

.fc-scroll-direction-horizontal .fc-horizontal-scroll-track {
    display: flex;
    flex-wrap: nowrap;
    align-items: stretch;
    width: max-content;
    max-width: none;
    will-change: transform;
}

.fc-scroll-direction-horizontal .fc-horizontal-scroll-track > * {
    flex: 0 0 auto;
}
