.pointer {
    cursor: pointer;
}

.noevents {
    pointer-events: none;
}

/*------------------------------------	  Text   -------------------------------------*/
.bold {
    font-weight: bold;
}

.uppercase {
    text-transform: uppercase;
}

.text-3d {
    text-shadow: 0 0.2px hsl(0,0%,85%), 0 0.4px hsl(0,0%,80%),0 0.6px hsl(0,0%,75%),0 0.8px hsl(0,0%,70%),0 1px hsl(0,0%,65%),0 5px 10px black;
}

.text-3d-small {
    text-shadow: 0 0.5px hsl(0,0%,85%), 0 1px hsl(0,0%,80%),0 1.5px hsl(0,0%,75%),0 2px hsl(0,0%,70%),0 2.5px hsl(0,0%,65%),0 2.5px 5px black;
}

.text-nowrap {
    white-space: nowrap;
}
/*------------------------------------	  Aspect ratio   -------------------------------------*/
.ratio-16-9,
.ratio-4-1,
.ratio-1-1 {
    width: 100%;
    position: relative;
}

.ratio-16-9 {
    padding-bottom: 56.25%;
}
.ratio-4-1 {
    padding-bottom: 25%;
}
.ratio-1-1 {
    padding-bottom: 100%;
}

.ratio {
    width: 100%;
    height: 100%;
    position: absolute;
    overflow: hidden;
}

/*------------------------------------	  Layout  -------------------------------------*/
.noscroll-y {
    overflow-y: hidden;
}
.top {
    top: 0;
}
.bottom {
    bottom: 0;
}
.left {
    left: 0 !important;
}
.right {
    right: 0;
}
.d-flex-center{
    display: flex;
    justify-content: center;
    align-items: center;
}

.d-flex-between {
    display: flex;
    justify-content: space-between;
}

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

.flex-fix-100 {
    flex-basis: 100%;
}
.flex-fix-75 {
    flex-basis: 75%;
}
.flex-fix-50 {
    flex-basis: 50%;
}
.flex-fix-25 {
    flex-basis: 25%;
}

.w-10 {
    width: 10%;
}

.d-grid {
    display: grid;
}
.grid-col-1 {
    grid-template-columns: repeat(1,1fr);
}
.grid-col-2 {
    grid-template-columns: repeat(2,1fr);
}
.grid-col-3 {
    grid-template-columns: repeat(3,1fr);
}
.grid-col-4 {
    grid-template-columns: repeat(4,1fr);
}

.grid-gap-05 {
    gap: .25rem;
}

.grid-gap-1 {
    gap: .5rem;
}

.grid-gap-2 {
    gap: .1rem;
}

.grid-gap-3 {
    gap: 1.5rem;
}

.grid-gap-4 {
    gap: 2rem;
}

.rounded-0 {
    border-radius: 0;
}
.rounded-1 {
    border-radius: 0.25rem;
}

.rounded-full {
    border-radius: 100%;
}

.content-box {
    box-sizing: content-box;
}

.p-05 {
    padding: 0.25rem;
}
.pe-05 {
    padding-right: 0.25rem;
}
.pe-2 {
    padding-right: 0.5rem;
}
.pt-05 {
    padding-top: 0.25rem;
}
/*------------------------------------	  Responsive  -------------------------------------*/
/*
h0 {
    display: block;
    font-size: 3rem;
    line-height: 3rem;
}

h1 {
    font-size: 1.75rem;
    line-height: 1.75rem;
}

h2 {
    font-size: 1.5rem;
    line-height: 1.75rem;
}

h3 {
    font-size: 1.25rem;
    line-height: 1.5rem;
}

h4 {
    font-size: 1.1rem;
    line-height: 1.25rem;
}

h5 {
    font-size: 1rem;
    line-height: 1.25rem;
}

h6 {
    font-size: 0.9rem;
    line-height: 1rem;
}

p, a {
    font-size: 0.85rem;
    line-height: 0.9rem;
}
 */

@media (max-width : 1920px) {
    .grid-col-1-1920 {
        grid-template-columns: repeat(1,1fr);
    }
    .grid-col-2-1920 {
        grid-template-columns: repeat(2,1fr);
    }
    .grid-col-3-1920 {
        grid-template-columns: repeat(3,1fr);
    }
    .grid-col-4-1920 {
        grid-template-columns: repeat(4,1fr);
    }
}

@media (max-width : 1680px) {
    .d-none-1680{
        display: none;
    }
    .d-flex-1680{
        display: flex !important;
    }
    .grid-col-1-1680 {
        grid-template-columns: repeat(1,1fr);
    }
    .grid-col-2-1680 {
        grid-template-columns: repeat(2,1fr);
    }
    .grid-col-3-1680 {
        grid-template-columns: repeat(3,1fr);
    }
    .grid-col-4-1680 {
        grid-template-columns: repeat(4,1fr);
    }

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


@media (max-width : 1380px) {
    .w-100-1380 {
        width: 100% !important;
        max-width: 100%;
    }
    .w-75-1380 {
        width: 75% !important;
        max-width: 75%;
    }
    .order-0-1380 {
        order: 0;
    }
    .order-1-1380 {
        order: 1;
    }
    .d-none-1380 {
        display: none !important;
    }

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

    .d-block-1380 {
        display: block !important;
    }

    .order-0-1380 {
        order: 0;
    }

    .flex-wrap-1380 {
        flex-wrap: wrap;
        width: 100%;
        max-width: 100%;
    }

    .flex-100-1380 {
        flex: 0 0 100%;
    }

    .flex-75-1380 {
        flex: 0 0 75%;
    }
    .flex-50-1380 {
        flex: 0 0 50%;
    }

    .grid-col-1-1380 {
        grid-template-columns: repeat(1,1fr);
    }
    .grid-col-2-1380 {
        grid-template-columns: repeat(2,1fr);
    }
    .grid-col-3-1380 {
        grid-template-columns: repeat(3,1fr);
    }
    .grid-col-4-1380 {
        grid-template-columns: repeat(4,1fr);
    }

    .w-50-1380 {
        width: 50% !important;
        max-width: 50%;
    }
    .mt-4-1380{
        margin-top: 2rem !important;
    }
    .me-0-1380 {
        margin-right: 0 !important;
    }
    .ms-0-1380 {
        margin-left: 0 !important;
    }

    .mb-05-1380 {
        margin-bottom: 0.25rem !important;
    }
    .left-25per-1380 {
        left: 25% !important;
    }
}

@media (max-width: 1199px){
    .grid-col-1-1199 {
        grid-template-columns: repeat(1,1fr);
    }
    .grid-col-2-1199 {
        grid-template-columns: repeat(2,1fr);
    }
    .grid-col-3-1199 {
        grid-template-columns: repeat(3,1fr);
    }
    .grid-col-4-1199 {
        grid-template-columns: repeat(4,1fr);
    }

    .ps-0-1199 {
        padding-left: 0 !important;
    }
}

@media (max-width : 991px) {
    .d-none-991 {
        display: none !important;
    }

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

    .d-block-991 {
        display: block !important;
    }

    .order-0-991 {
        order: 0;
    }

    .flex-fill-991 {
        flex: 1 1 auto;
    }
    .flex-wrap-991 {
        flex-wrap: wrap;
        width: 100%;
        max-width: 100%;
    }

    .flex-100-991 {
        flex: 0 0 100%;
    }

    .flex-75-991 {
        flex: 0 0 75%;
    }

    .flex-50-991 {
        flex: 0 0 50% !important;
    }

    .grid-col-1-991 {
        grid-template-columns: repeat(1,1fr);
    }
    .grid-col-2-991 {
        grid-template-columns: repeat(2,1fr);
    }
    .grid-col-3-991 {
        grid-template-columns: repeat(3,1fr);
    }
    .grid-col-4-991 {
        grid-template-columns: repeat(4,1fr);
    }

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

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

    .p-2-991 {
        padding: 1rem !important;
    }
    .pe-0-991 {
        padding-right: 0 !important;
    }
    .ps-0-991 {
        padding-left: 0 !important;
    }
    .pb-0-991 {
        padding-bottom: 0 !important;
    }
    .mt-2-991 {
        margin-top: 1rem !important;
    }
    .mb-0-991 {
        margin-bottom: 0 !important;
    }

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

    .pm-0-991,
    .p-0-991 {
        padding: 0;
    }

    .pm-0-991,
    .m-0-991 {
        margin: 0;
    }

    .p-2-991 {
        margin: 0.5rem;
    }
    .my-0-991 {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }
    .mb-0-991 {
        margin-bottom: 0 !important;
    }

    .b-0-991 {
        border-radius: 0;
    }
/*
    h1 {
        font-size: 1.5rem;
        line-height: 1.75rem;
    }

    h2 {
        font-size: 1.25rem;
        line-height: 1.5rem;
    }

    h3 {
        font-size: 1.1rem;
        line-height: 1.25rem;
    }

    h4 {
        font-size: 1rem;
        line-height: 1.1rem;
    }

    h5 {
        font-size: .9rem;
        line-height: 1rem;
    }

    h6 {
        font-size: .85rem;
        line-height: .9rem;
    }

    p, a {
        font-size: .7rem;
        line-height: .85rem;
    }
 */
}

@media (max-width: 768px) {
    .left-0-768 {
        left:0 !important;
    }
    .order-0-768 {
        order: 0;
    }
    .order-1-768 {
        order: 1;
    }
    .d-none-768 {
        display: none !important;
    }

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

    .d-block-768 {
        display: block !important;
    }

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

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

    .w-50-768 {
        width: 50%;
        max-width: 50%;
    }

    .w-25-768 {
        width: 25%;
        max-width: 25%;
    }

    .order-0-768{
        order: 0;
    }

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

    .flex-wrap-768 {
        flex-wrap: wrap;
        width: 100%;
        max-width: 100%;
    }
    .flex-fill-768 {
        flex: 1;
    }
    .flex-100-768 {
        flex: 0 0 100%;
    }

    .flex-75-768 {
        flex: 0 0 75%;
    }
    .grid-col-1-768 {
        grid-template-columns: repeat(1,1fr);
    }
    .grid-col-2-768 {
        grid-template-columns: repeat(2,1fr);
    }
    .grid-col-3-768 {
        grid-template-columns: repeat(3,1fr);
    }
    .grid-col-4-768 {
        grid-template-columns: repeat(4,1fr);
    }
    .p-0-768 {
        padding: 0 !important;
    }
    .p-05-768 {
        padding: 0.25rem !important;
    }
    .p-2-768 {
        padding: 1rem;
    }

    .mt-4-768 {
        margin-top: 2rem !important;
    }

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

    .me-0-768{
        margin-right: 0 !important;
    }

    .ms-1-768 {
        margin-left: 0.5rem !important;
    }

    .ms-2-768 {
        margin-left: 1rem !important;
    }

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

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

    .pm-0-768,
    .p-0-768 {
        padding: 0;
    }

    .p-3-768 {
        padding: 1.5rem !important;
    }

    .p-1-768 {
        padding: .5rem !important;
    }

    .pm-0-768,
    .m-0-768 {
        margin: 0;
    }

    .fa-2x {
        width: 1.25em !important;
        height: 1.25em !important;
        padding: 10px;
    }

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

@media (max-width: 512px) {
    .bottom-512 {
        bottom: 0;
    }
    .position-absolute-512 {
        position: absolute;
    }
    .position-fixed-512 {
        position: fixed;
    }
    .d-none-512 {
        display: none !important;
    }

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

    .d-block-512 {
        display: block !important;
    }

    .order-0-512 {
        order: 0;
    }

    .grid-gap-05-512 {
        gap: .25rem;
    }

    .flex-wrap-512 {
        flex-wrap: wrap;
        width: 100%;
        max-width: 100%;
    }

    .flex-100-512 {
        flex: 0 0 100% !important;
    }

    .flex-75-512 {
        flex: 0 0 75%;
    }
    .grid-col-1-512 {
        grid-template-columns: repeat(1,1fr);
    }
    .grid-col-2-512 {
        grid-template-columns: repeat(2,1fr);
    }
    .grid-col-3-512 {
        grid-template-columns: repeat(3,1fr);
    }
    .grid-col-4-512 {
        grid-template-columns: repeat(4,1fr);
    }
    .w-100-512 {
        width: 100% !important;
        max-width: 100% !important;
    }

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

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

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

    .pm-0-512,
    .p-0-512 {
        padding: 0 !important;
    }
    .p-3-512 {
        padding: 1.5rem !important;
    }
    .p-2-512 {
        padding: 1rem !important;
    }
    .p-1-512 {
        padding: 0.5rem !important;
    }

    .pb-0-512 {
        padding-bottom: 0 !important;
    }

    .pm-0-512,
    .m-0-512 {
        margin: 0 !important;
    }

    .px-1-512 {
        padding-left: 0.5rem !important;
        padding-right: 0.5rem !important;
    }

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

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

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