/* ? FLEX */
*[class*="flex"] {
    display: flex;
}
.flex-row {
    flex-direction: row;
}
.flex-column {
    flex-direction: column;
}
.flex-justify {
    justify-content: center;
}
.flex-align {
    align-items: center;
}

/* ? GRID */
*[class^="grid"] {
    display: grid !important;
}

/* ? DISPLAY */
.hidden {
    display: none;
}

/* ? Paddings */
.padding-side {
    padding-left: var(--default-padding-side);
    padding-right: var(--default-padding-side);
}
.padding-top-2 {
    padding-top: calc(var(--default-padding) * 2);
}
.padding-top-15 {
    padding-top: calc(var(--default-padding) * 1.5);
}
.padding-top-1 {
    padding-top: var(--default-padding);
}
.padding-top-05 {
    padding-top: calc(var(--default-padding) / 2);
}
.padding-top-025 {
    padding-top: calc(var(--default-padding) / 4);
}
.padding-bottom-2 {
    padding-bottom: calc(var(--default-padding) * 2);
}
.padding-bottom-15 {
    padding-bottom: calc(var(--default-padding) * 1.5);
}
.padding-bottom-1 {
    padding-bottom: var(--default-padding);
}
.padding-bottom-05 {
    padding-bottom: calc(var(--default-padding) / 2);
}
.padding-bottom-025 {
    padding-bottom: calc(var(--default-padding) / 4);
}


@media only screen and (min-width: 801px) {
    .collapse-mobile-reverse {
        display: none !important;
    }
}
@media only screen and (min-width: 1200px) {
    .collapse-tablet-reverse {
        display: none !important;
    }
}
@media only screen and (max-width: 800px) {
    .collapse-mobile {
        display: none !important;
    }
}
@media only screen and (max-width: 1199px) {
    .collapse-tablet {
        display: none !important;
    }
}
/* ? ANIMATIONS */
.gsap-animate-text div {
    overflow: hidden;
}

/* ? TEXT STYLING */
.uppercase {
    text-transform: uppercase;
}
.underline {
    text-decoration: underline;
}
.text-center {
    text-align: center;
}
.text-clamp {
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
}

/* ! Images */
.image-full {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}