body, html {
    text-align: center;
    margin: 0;
    padding: 0;
    font-family: 'Cormorant Garamond', serif;
    font-size: 24px;
    height: auto !important;
    color: #313030;
}

h1, h2 {
    font-family: 'Scriptina';
    padding: 0;
    margin: 0;
    font-weight: 100;
    line-height:3;
}

h1 {
    font-size: 64px;
    transform: rotate(-10deg);
}

h2 {
    font-size: 72px;
    transform: rotate(-15deg);
}

h3 {
    font-size: 48px;
    font-weight: 100;
    padding: 50px 0 0 0;
    margin: 0;
}

.section-wrapper {
}

section {
    position: relative;
    overflow: hidden;
}

.section-content {
    position: relative;
    display:inline-block;
    vertical-align:top;
}

/*main***************************************************/
/*section#main::before {
    content: " ";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0,0,0,0.6);
}*/

section#main {
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 100vh;
    background-image: url('imgs/cover.jpg');
    background-position: center;
    background-size: cover;
    margin: 0;
    padding: 0;
}

    section#main .section-content {
        
        overflow: hidden;
        width: 800px;
        max-width: 90vw;
        min-height: unset;
        padding-top: 0;
    }

#main-blur {
    position: relative;
}

section#main .line {
    position: relative;
    font-size: 36px;
}

    section#main .line::before,
    section#main .line::after {
        content: " ";
        position: absolute;
        height: 1px;
        width: 1000px;
        top: 50%;
        background-color: rgba(255,255,255,0.3);
    }

    section#main .line::before {
        left: -1050px;
    }

    section#main .line::after {
        right: -1050px;
    }

    section#main .line img{
        width:32px;
        vertical-align:middle;
    }

    section#s1 {
        background: white;
    }

    section#s1 .section-content {
        display: inline-block;
    }



.timeline {
    margin: 0 auto;
    width: 340px;
    position: relative;
}

    .timeline:before {
        content: '';
        top: -40px;
        bottom: -40px;
        width: 1px;
        left: 50%;
        background-color: #313030;
        position: absolute;
    }

    .timeline .start, .timeline .end {
        content: '';
        left: calc(50% - 4px);
        border: 1px solid #313030;
        position: absolute;
        border-radius: 50%;
        width: 7px;
        height: 7px;
    }

    .timeline .start {
        top: -49px;
    }

    .timeline .end {
        bottom: -49px;
    }

    .timeline .item {
        margin-bottom: 50px;
        overflow: hidden;
    }

        .timeline .item > * {
            float: left;
            vertical-align: top;
            width: calc(50% - 30px);
        }

        .timeline .item > div:first-child {
            padding-right: 30px;
        }

        .timeline .item > div:last-child {
            padding-left: 30px;
        }

    .timeline .icon {
        text-align: right;
        position: relative;
    }

        .timeline .icon i {
            font-size: 64px;
        }

        .timeline .icon:last-child {
            text-align: left;
            position: relative;
        }

    .timeline .content span {
        font-size: 24px;
        display: block;
        border-bottom: 1px dashed #c5bdbd;
        margin: 0 -30px;
        padding: 0 30px;
    }

    .timeline .item:not(:last-child) .left:after {
        content: "";
        position: absolute;
        width: 2px;
        height: 30px;
        top: 70px;
        left: 23px;
        background-color: #bbb6b6;
    }

    .timeline .content {
        font-size: 36px;
        text-align: right;
    }

        .timeline .content:last-child {
            text-align: left;
        }

section#s2 {
    background: #efecea;
}

#gmap_canvas {
    width: 1000px;
    height: 400px;
    max-width:100%;
}

#parking {
    width: 1000px;
    height: 500px;
    max-width: 100%;
}

section#s3 .section-content {
    display: inline-block;
}

#form-wrapper {
    margin-top: 20px;
    background-color: #efecea;
    padding: 30px 0;
}

form {
   
}

    form > div {
        margin-bottom: 20px;
    }

    form label {
        display: block;
    }

    form input, form select, form textarea {
        padding: 5px;
        border: none;
        border-bottom: 1px solid;
        font-family: 'Cormorant Garamond', serif;
        font-size: 24px;
        background: transparent;
        width: 340px;
    }

        form input[type=number] {
            width: 50px;
        }

    form button {
        font-family: 'Cormorant Garamond', serif;
        border: none;
        background: #cbc8c6;
        font-size: 24px;
        padding: 5px 30px;
        cursor:pointer;
    }




    /*DRESSCODE************************************/
.dresscode-color {
    display: inline-block;
    width: 75px;
    height: 75px;
    margin: 5px;
    border-radius: 50%;
    border: 1px solid;
}

@media(max-width:767px) {
    h1 {
        font-size: 64px;
    }

    section {
        padding: 0 20px 20px 20px;
    }

    section#main .line {
        font-size: 24px;
    }

    section#s1 h2 {
        position: relative;
        top: -64px;
    }

    section#s3 {
        padding: 0;
    }

    .timeline {
        margin: 0 -20px;
    }
}

@media(min-width:768px) {
    h1 {
        font-size: 120px;
    }

    h2 {
        font-size: 135px;
        position: absolute;
        left: -100px;
        top: -140px;
        transform: rotate(-15deg);
    }


    section {
        padding: 0 50px 50px 50px;
    }

    .section-content {
        max-width: 600px;
        padding: 190px 50px 0 50px;
    }

    section#s1 h2 {
        left: -290px;
    }

    form {
        text-align: left;
        padding-right: 50px;
    }

        form label {
            width: 200px;
            text-align: right;
            display: inline-block;
        }

        form button {
            margin-left: 250px;
        }
}
