/* ==========================================
   EC Framework v1.0
   Utilities
========================================== */

/* Layout */

.container{
    width:min(92%, 1400px);
    margin-inline:auto;
}

.flex{
    display:flex;
}

.flex-column{
    display:flex;
    flex-direction:column;
}

.flex-center{
    display:flex;
    align-items:center;
    justify-content:center;
}

.flex-between{
    display:flex;
    align-items:center;
    justify-content:space-between;
}

.grid{
    display:grid;
}

.grid-2{
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:32px;
}

.grid-3{
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:32px;
}

/* Text */

.text-center{
    text-align:center;
}

.text-left{
    text-align:left;
}

.text-right{
    text-align:right;
}

.text-gold{
    color:var(--accent);
}

.text-white{
    color:var(--white);
}

.text-gray{
    color:var(--gray);
}

/* Visibility */

.hidden{
    display:none !important;
}

/* Spacing */

.mt-1{margin-top:10px;}
.mt-2{margin-top:20px;}
.mt-3{margin-top:30px;}
.mt-4{margin-top:40px;}
.mt-5{margin-top:50px;}

.mb-1{margin-bottom:10px;}
.mb-2{margin-bottom:20px;}
.mb-3{margin-bottom:30px;}
.mb-4{margin-bottom:40px;}
.mb-5{margin-bottom:50px;}

.pt-1{padding-top:10px;}
.pt-2{padding-top:20px;}
.pt-3{padding-top:30px;}
.pt-4{padding-top:40px;}
.pt-5{padding-top:50px;}

.pb-1{padding-bottom:10px;}
.pb-2{padding-bottom:20px;}
.pb-3{padding-bottom:30px;}
.pb-4{padding-bottom:40px;}
.pb-5{padding-bottom:50px;}

/* Responsive Utilities */

@media (max-width:768px){

    .grid-2,
    .grid-3{
        grid-template-columns:1fr;
    }

}