body {
    margin:auto;
    position: relative;
    background: url(images/bg.png) no-repeat top center fixed;
    background-size:cover;
    display:flex;
    flex-direction:column;
    align-items:center;
    min-height:100vh;
    padding:20px;
}

* {
    box-sizing:border-box;
}

img {
    max-width:100%;
}

.bg {
    display:block;
    width: 100%;
    height: auto;
    opacity:0;
}
.rs {
    /* position:absolute; */
    margin:30px;
    z-index: 999999;
}

.rs a  {
    width:48px;
    height: 48px;
    display:inline-block;
    margin-left:10px;
    transition:0.3s;
}

.mail {
    background:url(images/mail.png) no-repeat center;
    background-size: 48px;
    border-radius:50%;
    right:20px;
    bottom:20px;
}

.rs a:hover {
    transform:scale(1.2)
}

.bx-controls {
    display: none;
}

.logo {
    right: 5vw;
    bottom: 50%;
    z-index: 999999;
    width: 42vw;
}

.image {
    width:65vw;
    padding:10px;
    border:2px solid;
    position:relative;
    z-index:999999;
}

.image img {
    border-radius:80px 80px 0px 0px;
}

.image:before {
    content:'';
    position:absolute;
    left:18px;
    height:10px;
    right:18px;
    border-top:2px solid;
    top:-12px;
}

.image:after {
    content:'';
    position:absolute;
    left:-10px;
    bottom:-10px;
    right:-10px;
    border:2px solid;
    top:16px;
    border-top:0px;
}

.image .left {
    content:'';
    position:absolute;
    left:-10px;
    width:17px;
    height:18px;
    border:2px solid;
    top:-12px;
}

.image .right {
    content:'';
    position:absolute;
    width:18px;
    height:18px;
    right:-10px;
    border:2px solid;
    top:-12px;
}

.image .left:before {
    content:'';
    position:absolute;
    left:-2px;
    height:26px;
    border:2px solid;
    top:-2px;
    width:26px;
    border-left:0px;
    border-top:0px;
}

.image .right:before {
    content:'';
    position:absolute;
    right:-2px;
    height:26px;
    border:2px solid;
    top:-2px;
    width:26px;
    border-right:0px;
    border-top:0px;
}

.image:before,
.image:after,
.image,
.image .right,
.image .left,
.image .left:before,
.image .right:before {
    border-color:rgb(186 84 0 / 30%)
}

.sentence {
    width: 60vw;
    position:
    relative;
    z-index:9999;
}

.text {
    padding:30px;
    text-align:center;
    font-size:12px;
    line-height:22px;
    color:#573e29;
    margin-bottom:40px;
    text-transform:uppercase;
    letter-spacing:1px;
    text-shadow:0px 0px 4px rgb(242 161 100 / 65%);
}

.text .left:before, .text .right:before {
    background:url(images/flowers.png);
    width:100px;
    height:140px;
    background-size:contain;
    border:none;
    left:-40px;
    top:-60px;
}

.text .right:before {
    left:auto;
    top:-60px;
    right:-40px;
}
            
.slide {
    width: 100vw;
    height: 120vh;
}

.slide1 {
    background: url(images/bg1.jpeg) no-repeat top center fixed;
    background-size:cover;
}

.slide2 {
    background: url(images/bg2.jpeg) no-repeat top center fixed;
    background-size:cover;
}

.slide3 {
    background: url(images/bg3.jpeg) no-repeat top center fixed;
    background-size:cover;
}

#slider {
    position:absolute;
    left:0px;
    top:0px;
    width:100%;
    height:100vh;
}


@media(max-width:1024px) {
    body {
        background-size:cover;
    }
    
    .rs {
        left:30px;
        text-align:center;
        bottom: 20px;
    }
    
    .rs a {
        width:32px;
        height: 32px;
        background-size: 32px;
    }
    
    .birthday {
        bottom: 50px;
    }

    .slide {
        width: 100vw;
        height: 100vh;
    }

    .image, .sentence, .logo {
        width:95%;
    }

    .text .left:before, .text .right:before {
        width:50px;
        height:80px;
        top:0px;
        background-repeat:no-repeat;
        left:-25px;
        top:-30px;
    }

    .text .right:before {
        left:auto;
        right:-25px;
        top:-30px;
    }

    .sentence {
    margin:20px 0px;
    }
}