*{
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
         box-sizing: border-box;
    padding: 0;
    margin: 0;
    font-family: system-ui, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
}

body{
    background-color: #0a0806;
    color: #f2e9de;
    font-size: 23px;
    font-weight: 400;
}

.header-container,
.links-container{
    display: flex;
    align-items: center;
}

.links-container{
    gap: 1em;
}

#sidebar-active,
.open-sidebar-button, .close-sidebar-button{
    display: none;
}

nav svg{
    fill: white;
}

ul{
    list-style-type: none;
    align-items: center;
    gap: 1em;
}

a{
    text-decoration: none;
    color: #f2e9de;
}

nav a{
    font-weight: 500;
}

.logo{
    font-size: 1.7em;
    font-weight: 500;
}

.header-logo{
    margin-right: auto;
}

a:hover{
    color: #ff8c00;
}

a.nav-item[aria-current="page"]{
    color: #ff8c00;
}

a.reservation,
button{
    background-color: #ff8c00;
    color:#0a0806;
    border: none;
    font-size: 1em;
    font-weight: 500;
    padding: 0.9em;
    border-radius: 7px;
    cursor: pointer;
}

.header-container.container{
    padding-block: 1em;
}

.container{
    display: flex;
    max-width: 1200px;
    margin: 0 auto;
    padding-inline: 2em;
    padding-block: 3em;
    justify-content: center;
}

.hero{
    background-image: linear-gradient(rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.3)), url("./img/welcome-normal.webp");
    background-repeat: no-repeat;
    background-size: 100vw 100%;
}

.hero-container{
    height: 800px;
}

.hero-content{
    align-self: flex-end;
    text-align: center;
}

.hero-title{
    font-size: 2.6em;
    font-weight: 500;
    text-shadow: 2px 2px 8px black;
    background-color: #ff8c00;
    border-radius: 7px;
    padding-block: 0.5em;
}

.hero-paragraph{
    text-shadow: 2px 2px 8px black;
    padding-block: 1.3em;
}

.services-main{
    display: flex;
    align-items: center;
    gap: 3em;
}

.content-title{
    font-size: 2em;
    text-align: center;
    margin-bottom: 1em;
}

.footer{
    background-color: #130f0b;
}

.footer-content{
    display:flex;
    justify-content: space-between;
    gap: 1em;
    width: 100%;
}

.footer-link-title{
    font-size: 1.4em;
    padding-bottom: 0.6em;
}

.footer-link{
    padding-bottom: 1em;
    font-weight: 300;
}

.title{
    font-size: 2.5em;
    font-weight: 500;
    text-shadow: 2px 2px 8px black;
    text-align: center;
    background-color: #ff8c00;
    padding-block: 1em;
}

.apps-container{
    padding-inline: 0.5em;
}

.apps-content{
    display:flex;
    flex-wrap: wrap;
    justify-content: center;
}

.app-box{
    display:flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 1.5em;
    max-width: 350px;
    background-color: #202121;
    padding-block: 2em;
    padding-inline: 1em;
    margin: 0.9em;
    text-align: center;
    border-radius: 7px;
}

.app-title{
    font-size: 1.1em;
    font-weight: 500;
}

.app-desc{
    font-size: 0.9em;
    font-weight: 300;
}

.app-link{
    color:#ff8c00;
}

.contact-information{
    display:flex;
    flex-direction: column;
    justify-content: space-between;
}

.info-box{
    background-color: #202121;
    padding: 2em;
    border-radius: 7px;
}

.form-title{
    font-size: 1.6em;
    font-weight: 500;
    text-align: center;
}

.info-title{
    font-size: 1.1em;
    font-weight: 500;
    padding-bottom: 0.5em;
}

.info{
    font-weight: 300;
}

.number1{
    margin-bottom: 0.3em;
}

.input-field{
    border: 0;
    font-size: 0.9em;
    width: 100%;
    padding: 0.8em;
    border-radius: 7px;
    background-color: #f2e9de;
}

.contact-container{
    display: block;
    padding-inline: 1em;
}

.contact-content{
    display:flex;
    justify-content: space-between;
    gap: 3em;
    margin-bottom: 3em;
}

.contact-form-content{
    display: flex;
    flex-direction: column;
    gap: 2em;
    background-color: #202121;
    border-radius: 7px;
    padding: 2em;
}

.full-name{
    display: flex;
    gap: 2em;
}

.input-content{
    display: flex;
    flex-direction: column;
    gap: 0.7em;
}

input:focus,
textarea:focus{
    outline: 3px solid #ff8c00;
}

iframe{
    width: 100%;
    height: 500px;
    border: none;
    border-radius: 7px;
}

@media screen and (max-width: 1400px){
    
    body{
        font-size: 20px;
    }

    .hero{
        background-image: linear-gradient(rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.3)), url("./img/welcome-medium.webp");
        background-repeat: no-repeat;
        background-size: 100vw 100%;
    }

    .hero-container{
        height: 600px;
    }
}

@media screen and (max-width: 1050px){
    
    body{
        font-size: 18px;
    }

    .contact-container{
        max-width: 600px;
    }
    
    .contact-content{
        flex-wrap: wrap-reverse;
        margin-inline: 1em;
    }

    .conact-form-content{
        margin-bottom: 3em;
    }

    .contact-form{
        width: 100%;
    }

    .full-name{
        flex-direction: column;
    }

    .submit-button-content{
        align-self: center;
    }

    .contact-information{
        text-align: center;
        width:100%;
        gap: 2em;
    }

    iframe{
        height: 400px;
    }

    .map{
        margin-inline: 1em;
    }
}

@media screen and (max-width: 900px){

    .links-container{
        flex-direction: column;
        align-items: center;
        position: fixed;
        top: 0;
        right: -100%;
        z-index: 10;
        width: 100%;
        height:100%;
        background-color: black;
        box-shadow: -5px 0 5px rgba(0, 0, 0, 0.25);
        transition: 0.50s ease-out;
        gap:5px;
        padding:20px;
    }

    nav a.nav-link{
        height: auto;
        margin-block: 0.7em;
        text-align: center;
        font-size: 1.4em;
    }

    a:hover{
        color:#ff8c00;
    }

    .open-sidebar-button, .close-sidebar-button{
        padding: 20px;
        display: block;
    }

    .close-sidebar-button{
        margin-left:auto;
    }

    #sidebar-active:checked ~ .links-container{
        right: 0;
    }

    #sidebar-active:checked ~ #overlay{
        height: 100%;
        width: 100%;
        position: fixed;
        top: 0;
        left: 0;
        z-index: 9;
    }

    nav{
        align-items: center;
    }

    .top{
        display:flex;
        width:100%;
        align-items: center;
    }

    .hero{
        background-image: linear-gradient(rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.3)), url("./img/welcome-small.webp");
        background-repeat: no-repeat;
        background-size: cover;
    }

    .hero-container{
        height: 600px;
    }

    .content{
        margin-inline: 1em;
    }

    .hero-content{
        align-self: center;
    }
    
    .hero-title{
        background-color: transparent;
    }

    .services-main{
        flex-wrap: wrap;
        justify-content: center;
    }

    .footer-content{
        flex-direction: column;
        gap: 2em;
    }
    
    .app-box{
        width: 90%;
    }
}

