/* 01. CSS Variables */

:root {
    --main-padding: 0.9375em;
    --gap-size: .7em;
    --ml-gap-size: 1em;
}
 
/* 02. Mobile */

.grid-con {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    max-width: 1200px;
    margin: 0 auto;
    width: 100%;
    grid-column-gap: 20px;
}

.full-width-grid-con {
    display: grid;
    margin: 0 auto;
    width: 100%; 
    grid-template-columns: 1fr minmax(0, 1200px) 1fr;  
    grid-column-gap: 20px;
}

.col-span-1  {grid-column: span 1 / span 1;}
.col-span-2  {grid-column: span 2 / span 2;}
.col-span-3  {grid-column: span 3 / span 3;}
.col-span-4  {grid-column: span 4 / span 4;}

.col-span-full {grid-column: 1 / -1;}

.col-start-1    {grid-column-start: 1;}
.col-start-2    {grid-column-start: 2;}
.col-start-3    {grid-column-start: 3;}
.col-start-4    {grid-column-start: 4;}

/* 03. Mobile Landscape */

@media screen and (min-width: 575px) {

    .grid-con { 
        display: grid;
        grid-template-columns: repeat(12, minmax(0, 1fr));
        grid-column-gap: 20px;
    }

    .sm-col-span-1     {grid-column: span 1 / span 1;}
    .sm-col-span-2     {grid-column: span 2 / span 2;}
    .sm-col-span-3     {grid-column: span 3 / span 3;}
    .sm-col-span-4     {grid-column: span 4 / span 4;}
    .sm-col-span-5	   {grid-column: span 5 / span 5;}
    .sm-col-span-6	   {grid-column: span 6 / span 6;}
    .sm-col-span-7	   {grid-column: span 7 / span 7;}
    .sm-col-span-8	   {grid-column: span 8 / span 8;}
    .sm-col-span-9	   {grid-column: span 9 / span 9;}
    .sm-col-span-10	   {grid-column: span 10 / span 10;}
    .sm-col-span-11	   {grid-column: span 11 / span 11;}
    .sm-col-span-12	   {grid-column: span 12 / span 12;}

    .sm-col-start-1    {grid-column-start: 1;}
    .sm-col-start-2    {grid-column-start: 2;}
    .sm-col-start-3    {grid-column-start: 3;}
    .sm-col-start-4    {grid-column-start: 4;}
    .sm-col-start-5	   {grid-column-start: 5;}
    .sm-col-start-6	   {grid-column-start: 6;}
    .sm-col-start-7    {grid-column-start: 7;}
    .sm-col-start-8	   {grid-column-start: 8;}
    .sm-col-start-9	   {grid-column-start: 9;}
    .sm-col-start-10   {grid-column-start: 10;}
    .sm-col-start-11   {grid-column-start: 11;}
    .sm-col-start-12   {grid-column-start: 12;}

}

/* 04. Tablet */

@media screen and (min-width: 768px) {

    .grid-con { 
        display: grid;
        grid-template-columns: repeat(12, minmax(0, 1fr));
        grid-column-gap: 20px;
    }

    .md-col-span-1	   {grid-column: span 1 / span 1;}
    .md-col-span-2	   {grid-column: span 2 / span 2;}
    .md-col-span-3	   {grid-column: span 3 / span 3;}
    .md-col-span-4	   {grid-column: span 4 / span 4;}
    .md-col-span-5	   {grid-column: span 5 / span 5;}
    .md-col-span-6	   {grid-column: span 6 / span 6;}
    .md-col-span-7	   {grid-column: span 7 / span 7;}
    .md-col-span-8	   {grid-column: span 8 / span 8;}
    .md-col-span-9	   {grid-column: span 9 / span 9;}
    .md-col-span-10	   {grid-column: span 10 / span 10;}
    .md-col-span-11	   {grid-column: span 11 / span 11;}
    .md-col-span-12	   {grid-column: span 12 / span 12;}

    .md-col-start-1	   {grid-column-start: 1;}
    .md-col-start-2	   {grid-column-start: 2;}
    .md-col-start-3    {grid-column-start: 3;}
    .md-col-start-4	   {grid-column-start: 4;}
    .md-col-start-5	   {grid-column-start: 5;}
    .md-col-start-6	   {grid-column-start: 6;}
    .md-col-start-7    {grid-column-start: 7;}
    .md-col-start-8	   {grid-column-start: 8;}
    .md-col-start-9	   {grid-column-start: 9;}
    .md-col-start-10   {grid-column-start: 10;}
    .md-col-start-11   {grid-column-start: 11;}
    .md-col-start-12   {grid-column-start: 12;}

}

/* 05. Small Desktop and Up */

@media screen and (min-width: 1000px) {

    .grid-con { 
        display: grid;
        grid-template-columns: repeat(12, minmax(0, 1fr));
        grid-column-gap: 20px;
    }

    .lg-col-span-1	   {grid-column: span 1 / span 1;}
    .lg-col-span-2	   {grid-column: span 2 / span 2;}
    .lg-col-span-3	   {grid-column: span 3 / span 3;}
    .lg-col-span-4	   {grid-column: span 4 / span 4;}
    .lg-col-span-5	   {grid-column: span 5 / span 5;}
    .lg-col-span-6	   {grid-column: span 6 / span 6;}
    .lg-col-span-7	   {grid-column: span 7 / span 7;}
    .lg-col-span-8	   {grid-column: span 8 / span 8;}
    .lg-col-span-9	   {grid-column: span 9 / span 9;}
    .lg-col-span-10	   {grid-column: span 10 / span 10;}
    .lg-col-span-11	   {grid-column: span 11 / span 11;}
    .lg-col-span-12	   {grid-column: span 12 / span 12;}

    .lg-col-start-1	   {grid-column-start: 1;}
    .lg-col-start-2	   {grid-column-start: 2;}
    .lg-col-start-3    {grid-column-start: 3;}
    .lg-col-start-4	   {grid-column-start: 4;}
    .lg-col-start-5	   {grid-column-start: 5;}
    .lg-col-start-6	   {grid-column-start: 6;}
    .lg-col-start-7    {grid-column-start: 7;}
    .lg-col-start-8	   {grid-column-start: 8;}
    .lg-col-start-9	   {grid-column-start: 9;}
    .lg-col-start-10   {grid-column-start: 10;}
    .lg-col-start-11   {grid-column-start: 11;}
    .lg-col-start-12   {grid-column-start: 12;}

}