*{
margin:0;
padding:0;
box-sizing:border-box;
}

body{

background:url("assets/winter.jpg") center center no-repeat;
background-size:cover;
background-attachment:fixed;

font-family:Arial,Helvetica,sans-serif;

min-height:100vh;

display:flex;
justify-content:center;
align-items:center;

position:relative;

overflow:hidden;

}

body::before{

content:"";

position:absolute;

inset:0;

background:linear-gradient(rgba(0,0,0,.20),rgba(0,0,0,.35));

}

.content{

position:relative;

z-index:10;

width:92%;

max-width:820px;

padding:50px;

background:rgba(255,255,255,.18);

backdrop-filter:blur(18px);

border:1px solid rgba(255,255,255,.30);

border-radius:30px;

box-shadow:0 20px 60px rgba(0,0,0,.35);

text-align:center;

color:white;

}

.logo{

width:230px;

margin-bottom:30px;

}

h1{

font-size:46px;

margin-bottom:20px;

font-weight:bold;

text-shadow:0 2px 10px rgba(0,0,0,.35);

}

.line{

width:100px;
height:5px;

margin:25px auto;

background:#d8b032;

border-radius:30px;

}

p{

font-size:21px;

line-height:1.8;

}

.social{

margin-top:40px;

}

.social a{

display:inline-block;

margin:0 15px;

transition:.3s;

}

.social img{

width:58px;

height:58px;

filter:drop-shadow(0 6px 12px rgba(0,0,0,.35));

}

.social a:hover{

transform:scale(1.15);

}

.mail{

margin-top:40px;

font-size:20px;

font-weight:bold;

}

.mail a{

color:white;

text-decoration:none;

}

.mail a:hover{

text-decoration:underline;

}

/* Schneeflocken */

.snow,
.snow:before,
.snow:after{

position:absolute;

top:-100%;

left:0;

right:0;

bottom:0;

content:"";

background-image:
radial-gradient(4px 4px at 120px 80px,#fff,transparent),
radial-gradient(3px 3px at 350px 250px,#fff,transparent),
radial-gradient(5px 5px at 800px 150px,#fff,transparent),
radial-gradient(3px 3px at 1200px 320px,#fff,transparent),
radial-gradient(4px 4px at 1500px 120px,#fff,transparent);

background-size:1600px 900px;

animation:snow 18s linear infinite;

opacity:.6;

}

.snow:before{

animation-duration:28s;

opacity:.4;

}

.snow:after{

animation-duration:38s;

opacity:.25;

}

@keyframes snow{

from{

transform:translateY(-100%);

}

to{

transform:translateY(100%);

}

}

@media(max-width:700px){

.content{

padding:35px;

}

.logo{

width:170px;

}

h1{

font-size:34px;

}

p{

font-size:18px;

}

.social img{

width:48px;

}

}