/*
*  html5resetcss
*/
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent}
body{line-height:1}
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}
nav ul{list-style:none}
blockquote,q{quotes:none}
blockquote:before,blockquote:after,q:before,q:after{content:none}
a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent}
ins{background-color:#ff9;color:#000;text-decoration:none}
mark{background-color:#ff9;color:#000;font-style:italic;font-weight:bold}
del{text-decoration:line-through}
abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help}
table{border-collapse:collapse;border-spacing:0}
hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0}
input,select{vertical-align:middle}
/* FIN RESET */

/* VARIABLES */
:root {
    --main-bg-color: brown;
    --main-header-size: 8vh;
    --main-blocks-size: 100vh;
    --main-text-white: #ffffff;
    --main-bg-laorza: url(../img/bg/block_restaurante_la_orza.jpg);
    --main-bg-lacus: url(../img/bg/block_restaurante_lacus.jpg);
    --main-bg-maison: url(../img/bg/block_apartamento_maison.jpg);
    --main-opacity: 0.7;
    --main-site-font: 'Cinzel', serif;
} 
/* FIN VARIABLES */

body {
    font-family: var(--main-site-font);
  }

header {
    position: absolute;
    width: 100%;
    z-index: 1;
}

header .logo {
    padding: 15px;
    position: absolute;
}

header .logo img {
    width: 150px;
}

.blockHome {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    text-align: center;
}

.vertical-align {
    display: flex;
    justify-content: center;
    align-content: center;
    flex-direction: column;
    position: relative;
}

.block-img {
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    height: var(--main-blocks-size);
}

.block-img:hover figure.logo img{
    top: 45%;
    -webkit-transition: .5s ease-in-out;
	transition: .5s ease-in-out;
}

.block-img .logo img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 50%;
    max-height: 180px;
    height: auto;
    min-width: 150px;
    -webkit-transition: .5s ease-in-out;
	transition: .5s ease-in-out;
    z-index: 1;
}

.block-img h1 {
    opacity: 0;
    top: 60%;
    position: absolute;
    width: 80%;
    color: var(--main-text-white);
    text-decoration: none;
    left: 10%;
    z-index: 1;
    font-weight: lighter;
    -webkit-transition: .5s ease-in-out;
	transition: .5s ease-in-out;
}

.block-img:hover h1 {
    opacity: 1;
    -webkit-transition: .5s ease-in-out;
	transition: .5s ease-in-out;
    font-size: 1.2em;
    line-height: 1.2em;
}

.block-img:after {
    content: "";
    position: absolute;
    width: calc(100%);
    height: calc(100%);
    background: linear-gradient(to right, #fff 0%, #fff 100%), linear-gradient(to top, #fff 50%, transparent 50%), linear-gradient(to top, #fff 50%, transparent 50%), linear-gradient(to right, #fff 0%, #fff 100%), linear-gradient(to left, #fff 0%, #fff 100%);
    background-size: 100% 4px, 4px 200%, 4px 200%, 0% 4px, 0% 4px;
    background-position: 50% 100%, 0% 0%, 100% 0%, 100% 0%, 0% 0%;
    background-repeat: no-repeat, no-repeat;
    transition: transform 0.2s ease-in-out, background-position 0.2s ease-in-out, background-size 0.2s ease-in-out;
    transform: scaleX(0) rotate(180deg);
    transition-delay: 0.4s, 0.2s, 0s;
}

.block-img:hover:after {
    background-size: 200% 40px, 40px 400%, 40px 400%, 55% 40px, 55% 40px;
    background-position: 50% 100%, 0% 100%, 100% 100%, 100% 0%, 0% 0%;
    transform: scaleX(1) rotate(180deg);
    transition-delay: 0s, 0.2s, 0.4s;
}

.block-img:before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background-color: #222;
    opacity: var(--main-opacity);
}

.block_1 { background-image: var(--main-bg-laorza);}
.block_2 { background-image: var(--main-bg-lacus);}
.block_3 { background-image: var(--main-bg-maison);}

.bttnBlock {opacity: 0; position: absolute;}
.block-img:hover .bttnBlock {
    opacity: 1;
    top: 75%;
    position: absolute;
    width: 80%;
    color: var(--main-text-white);
    text-decoration: underline;
    left: 10%;
    z-index: 1;
    font-weight: lighter;
    -webkit-transition: .5s ease-in-out;
    transition: .5s ease-in-out;       
}

@media only screen and (max-width: 1024px) {
    header .logo img {
        width: 40px;
    }
    .blockHome {
        grid-template-columns: auto;
    }
    .block-img {
        height: calc(var(--vh, 1vh) * 100 / 3);
    }
    .block-img .logo img {
        width: 40%;
        max-height: 45%;
        min-width: auto;
    }
    .block-img:hover:after {
        background-size: 200% 10px, 10px 400%, 10px 400%, 55% 10px, 55% 10px;
    }
    .block-img h1 {
        top: 45%;
    }
    .block-img:hover figure.logo img { 
        top: 25%; 
        width: 30%;
        max-height: 35%;        
    }
    .block_3 h1 { top: 55%; }
    .block_3.block-img:hover figure.logo img { top: 30%; }
}