* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}
.flex-1 {flex: 1}
.flex-2 {flex: 2}

.d-flex { display: flex !important;}
.d-inline-flex { display: inline-flex !important;}

.d-none {
    display: none !important;
}

.flex-row {
    flex-direction: row !important;
}

.flex-column {
    flex-direction: column !important;
}

.flex-row-reverse {
    flex-direction: row-reverse !important;
}

.flex-column-reverse {
    flex-direction: column-reverse !important;
}

.flex-grow-0 {
    flex-grow: 0 !important;
}

.flex-grow-1 {
    flex-grow: 1 !important;
}

.flex-shrink-0 {
    flex-shrink: 0 !important;
}

.flex-shrink-1 {
    flex-shrink: 1 !important;
}

.flex-wrap {
    flex-wrap: wrap !important;
}

.flex-nowrap {
    flex-wrap: nowrap !important;
}

.flex-wrap-reverse {
    flex-wrap: wrap-reverse !important;
}

.justify-content-start {
    justify-content: flex-start !important;
}

.justify-content-end {
    justify-content: flex-end !important;
}

.justify-content-center {
    justify-content: center !important;
}

.justify-content-between {
    justify-content: space-between !important;
}

.justify-content-around {
    justify-content: space-around !important;
}

.justify-content-evenly {
    justify-content: space-evenly !important;
}

.align-items-start {
    align-items: flex-start !important;
}

.align-items-end {
    align-items: flex-end !important;
}

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

.align-items-baseline {
    align-items: baseline !important;
}

.align-items-stretch {
    align-items: stretch !important;
}

.align-content-start {
    align-content: flex-start !important;
}

.align-content-end {
    align-content: flex-end !important;
}

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

.align-content-between {
    align-content: space-between !important;
}

.align-content-around {
    align-content: space-around !important;
}

.align-content-stretch {
    align-content: stretch !important;
}

.align-self-auto {
    align-self: auto !important;
}

.align-self-start {
    align-self: flex-start !important;
}

.align-self-end {
    align-self: flex-end !important;
}

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

.align-self-baseline {
    align-self: baseline !important;
}

.align-self-stretch {
    align-self: stretch !important;
}

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

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

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

.text-nowrap {
    white-space: nowrap !important;
}

.white-space-nowrap,
.white-space-nowrap>button>span {
    white-space: nowrap !important;
}

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

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

.float-clear {
    clear: both !important;
}

.overflow-hidden {
    overflow: hidden !important;
}

.position-unset {
    position: unset !important;
}

.position-relative {
    position: relative !important;
}

.position-fixed {
    position: fixed !important;
}

.position-sticky {
    position: sticky !important;
}

.position-static {
    position: static !important;
}

.position-absolute {
    position: absolute !important;
}

.active {
    display: block !important;
}

.m-auto {
    margin: auto !important;
}

.mt-auto {
    margin-top: auto !important;
}

.mb-auto {
    margin-bottom: auto !important;
}

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

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

.m-0 {
    margin: 0 !important;
}

.mt-0 {
    margin-top: 0 !important;
}

.mb-0 {
    margin-bottom: 0 !important;
}

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

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

.w-auto {
    width: auto !important;
}

.w-25 {
    width: 25% !important;
}

.w-50 {
    width: 50% !important;
}

.w-70 {
    width: 70% !important;
}

.w-75 {
    width: 75% !important;
}

.w-80 {
    width: 75% !important;
}

.w-100 {
    width: 100% !important;
}

.h-100 {
    height: 100% !important;
}

.line-height-0 {
    line-height: 0;
}

.cursor-pointer {
    cursor: pointer;
}

.filter-color-white {
    filter: brightness(0) invert(1);
}

.gap-0 {gap: 0;}
.gap-medium { gap: var(--wp--preset--spacing--medium);}
.gap-l { gap: var(--wp--preset--spacing--large);}
.gap-xl { gap: var(--wp--preset--spacing--x-large);}
.gap-2xl { gap: var(--wp--preset--spacing--xx-large);}
.gap-3xl { gap: var(--wp--preset--spacing--xxx-large);}
.gap-4xl { gap: var(--wp--preset--spacing--xxxx-large);}

.vertical-margin-gap-medium>*:not(:first-child) {margin-top: var(--wp--preset--spacing--medium);}
.vertical-margin-gap-l>*:not(:first-child) {margin-top: var(--wp--preset--spacing--large);}
.vertical-margin-gap-xl>*:not(:first-child) {margin-top: var(--wp--preset--spacing--x-large);}
.vertical-margin-gap-2xl>*:not(:first-child) {margin-top: var(--wp--preset--spacing--xx-large);}
.vertical-margin-gap-3xl>*:not(:first-child) {margin-top: var(--wp--preset--spacing--xxx-large);}

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

.marquee-container { overflow: hidden !important;}
.marquee-content{ display: flex !important;animation: marquee-scroll 100s linear infinite;}
@keyframes marquee-scroll {
    from {
        transform: translateX(0);
    }
    
    to {
        transform: translateX(-50%);
    }
}

@media(max-width:767px) {
    .hidden-on-mobile {
        display: none !important
    }

    .m-flex-1 {flex: 1}
    .m-flex-2 {flex: 2}

    .m-w-45 { width: 45% !important;}
    .m-w-50 { width: 50% !important;}
    .m-w-90 { width: 90% !important;}
    .m-child-w-100>* { max-width: 100%;}
    .m-w-100, .m-w-100 .wp-block-button { width: 100% !important;}
    .m-w-auto { width: auto;flex-basis: auto;}

    .m-flex-row{ flex-direction: row !important;}
    .m-flex-col{ flex-direction: column !important;}
    .m-flex-wrap { flex-wrap: wrap !important;}
    .m-row-reverse { flex-direction: row-reverse;}
    .m-col-reverse { flex-direction: column-reverse;}
    .m-align-start { align-items: flex-start !important;}

    .m-gap-0 { gap: 0;}
    .m-gap-l { gap: var(--wp--preset--spacing--large);}
    .m-gap-xl { gap: var(--wp--preset--spacing--x-large);}
    .m-gap-3xl { gap: var(--wp--preset--spacing--xxx-large);}

    .m-text-align-left { text-align: left;}
    .m-text-align-center { text-align: center;}
	
    .m-b-0 { border: 0; }

	.m-p-0  { padding: 0 !important; }
	.m-pl-0 { padding-left: 0 !important; }
	.m-pr-0 { padding-right: 0 !important; }
	.m-pt-0 { padding-top: 0 !important; }
	.m-pb-0 { padding-bottom: 0 !important; }

	.m-ml-0 { margin-left: 0 !important; }
	.m-mr-0 { margin-right: 0 !important; }
	.m-mt-0 { margin-top: 0 !important; }
	.m-mb-0 { margin-bottom: 0 !important; }
	.m-mb-3xl { margin-bottom: var(--wp--preset--spacing--xxx-large) !important; }
	.m-mt-3xl { margin-top: var(--wp--preset--spacing--xxx-large) !important; }

    .m-vertical-margin-gap-medium>*:not(:first-child) {margin-top: var(--wp--preset--spacing--medium);}
    .m-vertical-margin-gap-l>*:not(:first-child) {margin-top: var(--wp--preset--spacing--large);}
    .m-vertical-margin-gap-xl>*:not(:first-child) {margin-top: var(--wp--preset--spacing--x-large);}
    .m-vertical-margin-gap-2xl>*:not(:first-child) {margin-top: var(--wp--preset--spacing--xx-large);}

    .m-order-0 { order: 0;}
    .m-order-1 { order: 1;}
    .m-order-2 { order: 2;}
    .m-order-3 { order: 3;}
    .m-order-4 { order: 4;}

    .m-grid-1 { grid-template-columns: repeat(1, minmax(0, 1fr)); }
    .m-grid-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .m-grid-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .m-grid-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }

    .m-overflow-x-scroll {
        overflow-x: scroll !important;
    }
    .m-overflow-x-scroll>*{
        min-width: 75% !important;
    }
    .m-overflow-scroll-hidden {
        overflow: hidden !important;
    }

    .remove-gutters {
        margin-right: -16px !important;
        margin-left: -16px !important;
        padding: 0 16px 10px;
    }

    .m-marquee-container { overflow: hidden !important;}
    .m-marquee-content{ display: flex !important;animation: marquee-scroll 100s linear infinite;}
}

@media(min-width:768px) and (max-width:1024px) {
    .hidden-on-tablet {
        display: none !important
    }
}

@media(min-width:1025px) {
    .hidden-on-desktop {
        display: none !important
    }

    /* All sides */
    .b-0 { border: 0; }

    /* Individual sides */
    .b-t-0 { border-top: 0; }
    .b-b-0 { border-bottom: 0; }
    .b-l-0 { border-left: 0; }
    .b-r-0 { border-right: 0; }

    /* Axis */
    .b-x-0 {
        border-left: 0;
        border-right: 0;
    }

    .b-y-0 {
        border-top: 0;
        border-bottom: 0;
    }

    .grid-1 { grid-template-columns: repeat(1, minmax(0, 1fr)); }
    .grid-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .grid-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .grid-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
    .grid-5 { grid-template-columns: repeat(5, minmax(0, 1fr)); }
    .grid-6 { grid-template-columns: repeat(6, minmax(0, 1fr)); }
    .grid-7 { grid-template-columns: repeat(7, minmax(0, 1fr)); }
    .grid-8 { grid-template-columns: repeat(8, minmax(0, 1fr)); }

}