html,body{margin:0 !important; padding:0 !important;}
div.bg{position:fixed; top:0; left:0; width:100%; height:100%;z-index:-100;}
div.bg div{position:absolute; top:0; left:0; width:100%; height:100%; background-position:center; background-size:cover; background-repeat:no-repeat; opacity:0; transition: opacity 0.5s ease-in-out;}
div.bg div.overlay{background-color:#000000; opacity:0.5;}
div.bg div.active{opacity:1;}

div.main{display:flex; flex-direction: column; height: 100vh;}
div.main div.section{display:flex; flex-direction: column; justify-content:center; height:100%;}

div.main div.section div.content{margin:0 0 0 90px; position:relative;}
div.main div.section div.content h1{margin:0 0 10px 0; font-weight:500; color:#ffffff; font-size:28pt;}
div.main div.section div.content h2{margin:0 0 10px 0; font-weight:500; color:#ffffff; font-size:18pt;}
div.main div.section div.content p{margin:0 0 30px 0; font-size:15pt;}
div.main div.section div.content div{margin:0;}
div.main div.section div.content input#email{width:300px; margin:0 10px 0 0;}
div.main div.section div.content button.submit{}
div.main div.section div.content div.error{color:#ff0000; line-height:28px; min-height:28px;}
div.main div.section div.content div.thank-you{position:absolute; bottom:0; left:0; background-color:#00ff00CC; color:white; line-height:28px; min-height:28px; padding:0 15px 0 15px; opacity:0; transition: opacity 0.3s ease-in-out;}