*,
*:before,
*:after {
    box-sizing: border-box;
}
@font-face{
    font-family:"montserrat";
    src: url("../assets/fonts/Montserrat.ttf");
}

@font-face{
    font-family:"opensans";
    src: url("../assets/fonts/OpenSans.ttf");
}

html {
    font-size: 16px;
}
body {
    margin: 0;
    padding: 0;
}

/* Mobile View for the restaurant */
@media only screen and (max-width: 640px) {
    main {
        width: 100%;
        height: 100vh;
        margin: 0 auto;
        overflow: hidden;
    }

    /* positioning the reservation page */
    .reservation {
        position: absolute;
        top: 13%;
        right: 10%;
        left: 10%;
        width: 80%;
    }

    input::placeholder {
        color: #404058;
    }

    /* header of the reservation page */
    .hdrStyle {
        font-size: 2rem;
        text-align: center;
        font-weight: 700;
        font-family: "opensans";
        margin-bottom: .3rem;
        color: #ffffff;
        background-color: #e7e7e7;
        border-radius: 0.25rem;
    }

    /* instructions for the reservation page */
    h2{
        font: 1rem "montserrat";
    }

    /* required "*" styling for the reservation page */
    .reservation>p {
        font: 1rem "montserrat";
        color: rgb(196, 25, 25);
    }

    /* content of the reservation page */
    .reveal {
        margin-bottom: .1rem;
    }

    /* form styling for the reservation page */
    form {
        display: flex;
        flex-direction: column;
        margin-top: .1rem;
    }

    /* label styling of the reservation page */
    label{
        color: #000000;
        font: 1.1rem "opensans";
    }

    /* "*" color of the reservation page */
    span {
        color: rgb(196, 25, 25);
    }

    /* input value of the reservation page */
    input[type="text"],
    select,
    textarea {
        width: 100%;
        padding: 0.2rem;
        margin-top: 0.3rem;
        border: 1px solid #cccccc;
        border-radius: .5rem;
        font: 1rem "montserrat";
        color: #333;
        background-color: #fff;
    }

    /* submit button styling for the reservation page */
    .reserve {
        width: 100%;
        padding: 0.8rem;
        font-size: 1.1rem;
        background-color: #000000;
        color: #fff;
        border: none;
        border-radius: 4px;
        cursor: pointer;
        font-weight: bold;
        text-transform: uppercase;
        margin-top: .5rem;
    }
}

/* Destop View for the restaurant */
@media only screen and (min-width: 1024px) {
    main {
        width: 430px;
        height: 739px;
        margin: 1.4rem auto;
        overflow: hidden;
    }

    /* positioning the reservation page */
    .reservation {
        position: absolute;
        top: 13%;
        right: 10%;
        left: 10%;
        width: 80%;
    }

    input::placeholder {
        color: #404058;
    }

    /* header of the reservation page */
    .hdrStyle {
        font-size: 2rem;
        text-align: center;
        font-weight: 700;
        font-family: "opensans";
        margin-bottom: .3rem;
        color: #ffffff;
        background-color: #e7e7e7;
        border-radius: 0.25rem;
    }

    /* instructions for the reservation page */
    h2{
        font: 1rem "montserrat";
    }

    /* required "*" styling for the reservation page */
    .reservation>p {
        font: 1rem "montserrat";
        color: rgb(196, 25, 25);
    }

    /* content of the reservation page */
    .reveal {
        margin-bottom: .1rem;
    }

    /* form styling for the reservation page */
    form {
        display: flex;
        flex-direction: column;
        margin-top: .1rem;
    }

    /* label styling of the reservation page */
    label{
        color: #000000;
        font: 1.1rem "opensans";
    }

    /* "*" color of the reservation page */
    span {
        color: rgb(196, 25, 25);
    }

    /* input value of the reservation page */
    input[type="text"],
    select,
    textarea {
        width: 100%;
        padding: 0.2rem;
        margin-top: 0.3rem;
        border: 1px solid #cccccc;
        border-radius: .5rem;
        font: 1rem "montserrat";
        color: #333;
        background-color: #fff;
    }

    /* submit button styling for the reservation page */
    .reserve {
        width: 100%;
        padding: 0.8rem;
        font-size: 1.1rem;
        background-color: #000000;
        color: #fff;
        border: none;
        border-radius: 4px;
        cursor: pointer;
        font-weight: bold;
        text-transform: uppercase;
        margin-top: .5rem;
    }

    body{
        background: url(../assets/images/background.jpeg);
        background-size: cover;
    }
}