:root{
    --primary-color: white;
    --phlay-color: black;
    --accent-color: black;
}

html, body, .main{
    width: 100%;
    height: 100%;
    overflow: hidden;
    margin: 0;
    background-color: var(--accent-color);
    font-family: 'Arial', sans-serif;
}

.main{
    display: grid;
    grid-template-rows: 100%;
    background: url(img/VISIT_LAZIO_WEBPAGE_BKG.jpg);
    background-size: cover;
    background-repeat: no-repeat;
}

.container{
    display: grid;
    grid-template-columns: 33% 34% 33%;
    grid-template-rows: 100%;
}

.content-center{
    display: table;
    width: 100%;
    height: 100%;
    align-self: center;
}
.center-cell{
    display: table-cell;
    margin: auto;
    vertical-align: top;
    height:100%;
}


.content-right{
    background-size: cover;
    display: grid;
    align-items: start;
    justify-items: center;
    margin-top: 2%;
}
.content-left{
    display: flex;
    flex-direction: column;
    margin-left: 5%;
    margin-top: 2%;
}

.content-left .logo-top{
    width: 50%;
    margin-top: 2%;
}
.content-left .claim{
    width: 100%;
    margin-top: 5%;
}
.content-left .demo{
    width: 60%;
    margin-top: 50%;
}
.content-left .logo-bottom{
    width: 22%;
    margin-top: 2%;
    margin-left: 18%;
}

.content-right img{
    margin-top: 5%;
}
.side-img{
    width: 90%;
}

.pack-header{
    width: 100%;
    display: grid;
    text-align: center;
    align-items: start;
}
.header-logo{
    width: 30%;
    margin: 10% auto 0 auto;
}

.pack-footer{
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: row;
    margin-top: 15%;
}
.pack-footer .qrcode{
    width: 30%;   
}

.banner-mobile{
    width: 3%;
    margin: 0 auto 0 auto;
}

.phlay-container{
    align-self: start;
    justify-self: center;
    max-width: 580px;
    width: 100%;
    height: 100%;
    display: grid;
    margin: 15% auto 0 auto;
}

.frame{
    align-self: center;
    justify-self: center;
    margin: auto;
    border: none;
    width: 100%;
    height: 100%;
}

.header{
    display: flex;
    width: 100%;
    background-color: var(--phlay-color);
    color: var(--primary-color);
    font-family: 'Arial', sans-serif;
    text-align: center;
    font-weight: 400;
    align-items: center;
    justify-content: center;
}

.header-img{
    width: 80%;
    margin: 0 auto;
}

.content-img{
    height: 100%;
}

.footer{
    width: 100%;
    display: none;
    align-items: center;
    justify-items: center;
}


/* MOBILE PORTRAIT */
@media only screen and (max-width: 480px){
	body{
        background: #0883ce;
	}
	
    .content-right, .content-left, .header, .pack-header, .countdown, #info-container, .pack-footer{
        display: none;
    }
    
    .phlay-container{
        height: 100%;
        width: 100%;
        margin: 0 auto;
    }

    .frame{
        width: 100%;
        height: 100%;
    }
    
    .footer{
		display: none;
	}
    .banner-mobile{
        display: block;
        width: 30%;
        margin-top: 8%;
    }
    
    .main{
        display: grid;
        grid-template-rows: 100%;
        overflow-y: auto;
        background: var(--accent-color);
    }
    .container{
        display: grid;
        grid-template-columns: 100%;
        grid-template-rows: 100%;
        overflow-y: scroll;
        padding-top: 0;
    }

    @media only screen and (min-height: 670px){
        .main{
            grid-template-rows: 82% 18%;
            overflow-y: auto;
        }   
        .footer{
            display: grid;
            align-items: start;
            background-color: #0883ce;
        }
        .banner-mobile{
            width: 40%;
            z-index: 100;
            align-self: start;
        }
	}

}


/* MOBILE LANDSCAPE */
@media only screen and (max-width: 840px) and (orientation: landscape){

    .main, .container{
        display: grid;
        grid-template-columns: 100%;
        grid-template-rows: 100%;
        padding-top: 0;
        background: var(--accent-color);
    }
    
    .content-right, .content-left, .footer, .header, .pack-header, #info-container, .pack-footer{
        display: none;
    }
    
    .center-cell{
    	vertical-align: center;
    }
    
    .frame{
        width: 100%;
        height: 100%;
    }
    
    .phlay-container{
        width: 100%;
    	height: 100% !important;
        max-width: 1000px;
    	margin: auto;
    }
}


/* TABLET PORTRAIT */
@media only screen and (min-width: 481px) and (max-width: 1024px) and (orientation: portrait){
    .content-right, .content-left, .header, .pack-header, .countdown, #info-container, .pack-footer{
        display: none;
    }
  
    .main{
        grid-template-rows: 100%;
        overflow-y: auto;
        background: var(--accent-color);
    }

    .phlay-container{
        width: 100%;
    	height: 100%;
    	margin: auto;
    }
    
    .frame{
        width: 100%;
        height: 100%;
    }
    
    .container{
        display: grid;
        grid-template-columns: 100%;
        grid-template-rows: 100%;
    }

    @media only screen and (min-height: 670px){
        .main{
            grid-template-rows: 82% 18%;
            overflow-y: auto;
        }   
        .footer{
            display: grid;
            align-items: start;
            max-width: 580px;
            margin: 0 auto;
            background-color: #0883ce;
        }
        .banner-mobile{
            width: 30%;
            z-index: 100;
        }
	}

}


/* TABLET LANDSCAPE */
@media only screen and (min-width: 880px) and (max-width: 1366px) and (orientation: landscape){
    
    .content-right, .content-left, .header, .pack-header, .countdown, #info-container, .pack-footer{
        display: none;
    }
  
    .main{
        grid-template-rows: 100%;
        overflow-y: auto;
        justify-content: center;
    }

    .container{
        display: grid;
        grid-template-columns: 100%;
        grid-template-rows: 100%;
    }

    .phlay-container{
        width: 50%;
    	height: 100%;
        margin: auto;
    }
    
    .frame{
        width: 100%;
        height: 100%;
    }

    .footer{
        display: grid !important;
    }
    .banner-mobile{
        display: block;
        width: 10%;
        margin-top: 10%;
    }
    
}