@import url('https://fonts.googleapis.com/css2?family=Lato:wght@300;400;700;900&display=swap');

body {
	font-family: 'Lato', sans-serif;
    color: #e3e3e3;
	padding: 0;
	margin: 0;
    background-color: #262626;
}
a {
	text-decoration: none;
	transition: all 0.3s ease-out 0s;
}
h1, h2, h3, h4, h5, h6 {
	font-family: 'Lato', sans-serif;
	font-size: 100%;
}
h3 {
	font-size: 25px;
	color: #f7f7f7;
	margin:50px 0 0 0;
	font-weight:300;
}
h2 {
	color: #e3e3e3;
	font-size: 45px;
	font-weight: 300;
	margin:15px 0 0 0;
}
h1 {
	color: #e3e3e3;
	font-size: 60px;
	font-weight:300;
	margin: 0;
}
h1 span, h3 strong {
	color: #2991d6;
}
.header {
	background: url(img/demo-screens.jpg) no-repeat center top;
	background-size: cover;
	text-align: center;
	padding: 250px 0;
}
img {
    width: 100%;
}

@media screen and (max-width: 500px) {
    h1 {
        font-size: 45px;
    }
    h2 {
        font-size: 20px;
        margin: 25px 40px 0 40px;
    }
    .header {
        padding: 100px 0 0 0;
        height: 52vh;
    }
    .demo-title {
        font-size: 30px;
        margin-bottom: .8rem !important;
    }
}

/** TEMPLATES */
:root {
    --template-box-height: 300px;
}
.templates {
    cursor: pointer;
}

.box-template .img-template {
    height: var(--template-box-height);
    overflow: hidden;
    position: relative;
}

.box-template .template-name {
    font-size: 1.1em;
    padding-top: 5px;
}

.box-template .img-template a {
    color: transparent !important;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    font-size: 1.5em;
    transition: .3s all;
    z-index: 1;
    height: inherit;
    padding-top: calc(var(--template-box-height) / 2 - 20px);
}

.box-template .img-template img {
    transition: 3.5s all;
}

.box-template:hover .img-template img {
    transform: translateY(calc(-100% + var(--template-box-height)));
}

.box-template:hover .img-template a {
    color: #fff !important;
    background-color: #262626c9;
}