@font-face {
    font-family: 'Roboto';
    src: url(../fonts/Roboto-Regular.ttf) format('truetype');
    font-weight: normal;
}

@font-face {
    font-family: 'RobotoBold';
    src: url(../fonts/Roboto-Bold.ttf) format('truetype');
}

@font-face {
    font-family: 'RobotoBlack';
    src: url(../fonts/Roboto-Black.ttf) format('truetype');
}

@font-face {
    font-family: 'RobotoLight';
    src: url(../fonts/Roboto-Light.ttf) format('truetype');
}

@font-face {
    font-family: 'RobotoLightItalic';
    src: url(../fonts/Roboto-LightItalic.ttf) format('truetype');
    font-style: italic;
}

body {
    font-family: 'Roboto', sans-serif;
    font-weight: normal;
    font-size: 18px;
    margin: 0%;
}

a:hover {
    color: #D49B35;
}

a {
    color: #3882F6;
    text-decoration: none;
}

h2,
h3 {
    font-size: 36px;
    font-family: 'RobotoBlack', sans-serif;
    text-align: center;
    color: #1F2937;
}

/* ============ ALL PAGES HERO SECTION ============ */
.skiplink_box {
    background-color: #1F2937;
}

.skiplink_box a {
    color: #1F2937;
    padding: 1%;
    text-decoration: none;
    border-radius: 5px;
}

.skiplink_box a:focus {
    background-color: #D49B35;
    color: #F9FAF8;
}

.skiplink_box a:hover {
    background-color: #D49B35;
    color: #F9FAF8;
}

.skip_link {
    position: absolute;
    left: 0;
}

.hero_box {
    background-color: #1F2937;
    padding-left: 10%;
    padding-right: 10%;
}

#logo {
    height: 50px;
}

.logo_font {
    font-size: 48px;
    font-family: 'RobotoBlack', sans-serif;
    font-weight: bold;
    color: #F9FAF8;
}

.hero_h1 {
    font-size: 22px;
    font-family: 'RobotoLight', sans-serif;
    font-weight: unset;
    margin: 16px 0px 16px 20px;
}

.intro_h2 {
    color: #F9FAF8;
    background-color: #1F2937;
    text-align: left;
    padding-bottom: 2%;
}

.logo_box {
    color: #F9FAF8;
    display: flex;
    align-items: center;
    text-align: center;
}

.logo_box p {
    font-size: 24px;
    position: sticky;
    margin-left: 20px;
    font-family: 'RobotoLight' !important;
    font-weight: lighter;
}

.logo_text {
    font-size: 14px;
}

.logo_seperator {
    font-size: 36px;
}

.logo_flex {
    background-color: #1F2937;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.nav_link {
    margin-right: 10px;
    color: #F9FAF8;
    text-decoration: none;
}

.menu_font_adjust a span {
    font-size: 1.3dvw;
}

.menu_font_adjust a p {
    font-size: 2dvw;
}

.menu_font_adjust nav {
    font-size: 1.5dvw;
}

#hero {
    background-color: #1F2937;
    display: flex;
    justify-content: space-around;
    align-items: center;
    color: #E5E7EB;
}

.center_hero {
    margin-left: 12%;
}


.hero_image {
    max-width: 45vw;
    padding-top: 5%;
    padding-bottom: 5%;
    margin-right: 10%;
    object-fit: cover;
}

.scale {
    aspect-ratio: 2.08 / 1;
}

.hero_button {
    background-color: #3882F6;
    color: #F9FAF8;
    border: 0;
    border-radius: 5px;
    padding: 15px 25px;
}

button:hover {
    background-color: #D49B35;
}

.hero_text {
    margin-top: -30px;
    width: 60%;
}

.extend {
    width: 80%;
}

/* =============================================== */


/* ========== HOME PAGE | INFO SECTION ========== */

.info {
    display: flex;
    padding-left: 10%;
    padding-right: 10%;
    text-align: center;
    color: #1F2937;
    font-family: 'RobotoLight', sans-serif;
}

/* =============================================== */


/* ========== HOME PAGE | QUOTE SECTION ========== */

.quote {
    font-size: 36px;
    font-family: 'RobotoLightItalic', sans-serif;
    margin-top: 10px;
    background-color: #E5E7EB;
    padding: 5%;
    text-align: center;
    color: #1F2937;
}

.quote_caption {
    font-family: 'RobotoBold', sans-serif;
    font-size: 24px;
    color: #1F2937;
    text-align: right;
}

/* =============================================== */


/* ===== HOME PAGE | CALL-TO-ACTION SECTION ===== */

.calltoaction {
    background-color: #3882F6;
    display: flex;
    justify-content: space-between;
    padding-left: 5%;
    padding-right: 5%;
    margin: 3% 20% 3% 20%;
    border-radius: 5px;
    color: #E5E7EB;
}

.calltoaction_button {
    background-color: #3882F6;
    color: #F9FAF8;
    border-color: #F9FAF8;
    border-radius: 5px;
    border: solid;
    padding: 0% 5%;
    margin: 30px;

}

.calltoaction_header {
    font-size: 24px;
    margin-bottom: -15px;
}

/* =============================================== */


/* ========== CONCEPT PAGE | INFO SECTION ========== */

.concept_details {
    flex-direction: column;
    display: flex;
    margin: 4% 0%;
    background-color: #E5E7EB;
    margin-left: 20%;
    text-align: center;
    color: #1F2937;
    font-style: italic;
    font-size: 2dvw;
}

.concept_par_details {
    display: flex;
    justify-content: left;
    flex-direction: column;
    font-size: .8 dvw;
    text-align: left;
    word-wrap: normal;
    width: 80%;
}


.concept_box {
    justify-content: space-between;
    display: flex;
    align-items: center;
    padding: 0%;
    text-align: center;
    color: #1F2937;
    margin: 0 5% 5% 5%;
}

.concept_div {
    display: flex;
    justify-content: center;
    flex-direction: column;
    font-size: 1.5dvw;
    width: 50%;
    margin-inline-start: 5%;
}

.concept_title {
    font-size: 4dvw;
}

.concept_unit {
    object-fit: cover;
    aspect-ratio: 1.2 / 1;
}

.c1_width {
    max-width: 75%;
}

.c2_width {
    max-width: 95%;
}

.concept_image {
    max-width: 100%;
    width: 100%;
    height: 20%;
    aspect-ratio: 4 / 1;
    object-fit: fill;
    margin-bottom: 2%;
}

#width_adjustment {
    overflow-wrap: break-word;
    margin: 2.5% 30%;
}

@media screen and (max-width: 900px) {
    #width_adjustment {
        margin: 10px 15%;
    }
}

.concept_main h2 {
    margin-bottom: -20px !important;
}

.concept_book_details p {
    padding: 2% 10%;
}

#move_left {
    display: flex;
    flex-direction: column;
    align-items: center;
    position: absolute;
    top: 20px;
    right: 0;
    padding: 0 3%;
}

#concept_span {
    font-weight: bold;
}

.concept_button {
    background-color: #1F2937;
    color: #F9FAF8;
    border: 0;
    border-radius: .5vw;
    padding: 3%;
    font-size: 1.2dvw;
}

.style_concept_deets h3 {
    font-size: 2.5dvw;
}

.style_concept_deets p {
    margin: 2% 12%;
    font-size: 1.8dvw;
    font-style: italic;
}

.container {
    position: relative;
}

.concept_photo_details {
    background-color: #E5E7EB;
    display: flex;
    flex-direction: column;
    margin: 4% 0%;
    padding: 3% 3%;
    text-align: center;
    font-size: 2dvw;
    color: #1F2937;
    font-style: italic;
    margin-right: -12.5%;
}

/* =============================================== */

/* ========== STAY PAGE | INFO SECTION ========== */

.stay_main h2 {
    margin-bottom: -30px !important;
}

.stay_details {
    flex-direction: column;
    display: flex;
    margin: 3% 10%;
    color: #1F2937;
}

.stay_image {
    object-fit: cover;
    aspect-ratio: 1 / 1;
    margin: 0%;
    width: 100%;
}

.rooms {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    margin-top: 2%;
    gap: 10%;
}

.room_details {
    display: flex;
    flex-direction: column;
    text-align: center;
    background-color: #E5E7EB;
}

@media screen and ((max-width: 700px)) {
    .room_details {
        font-size: 60%;
    }
}

#font_fancy {
    font-family: 'RobotoLightItalic';
}

#left_orientation {
    text-align: left;
}

/* =============================================== */


/* ===== CONTACT PAGE | MAIN + LOCATION SECTION ===== */

#contact_title {
    justify-content: space-evenly;
    display: flex;
    align-items: center;
    background-color: #E5E7EB;
    padding: 1%;
    text-align: center;
    color: #1F2937;
    margin-right: 25%;
}

.location_details {
    justify-content: space-between;
    display: flex;
    align-items: center;
    padding: 0% 5%;
    text-align: center;
    color: #1F2937;
    margin-right: 20%;
    margin-bottom: 5%;
}

.contact_details {
    display: flex;
    justify-content: center;
    flex-direction: column;
    font-size: 1.5dvw;
}

.contact_deet_heading {
    font-size: 2dvw;
}

.newsletter_text {
    text-align: left;
    margin-left: 5% 0;
    display: flex;
    flex-direction: column;
}

.location_newsletter h2 {
    text-align: left;
    font-size: 3dvw;
}

.location_newsletter p {
    text-align: left;
    font-size: 1.5dvw;
    margin-top: 5%;
    width: 90%;
}

.location_image {
    max-width: 60%;
    object-fit: cover;
    aspect-ratio: 1 / 1;
}

.location_newsletter {
    justify-content: space-between;
    flex-direction: row-reverse;
    display: flex;
    align-items: center;
    background-color: #E5E7EB;
    color: #1F2937;
    margin-left: 13%;
    padding: 2% 3%;
}

.subscribe_button {
    background-color: #1F2937;
    color: #F9FAF8;
    border: 0;
    border-radius: .5vw;
    padding: 4%;
    max-width: 15vw;
    min-width: 2.5vw;
    min-height: auto;
    font-size: 1.5dvw;
}

.contact_image {
    max-width: 80%;
    padding-top: 5%;
    padding-bottom: 5%;
    margin-left: 25px;
    object-fit: contain;
}

/* =============================================== */


/* ===== CONTACT PAGE | FORM SECTION ===== */

.form_box {
    display: flex;
    background-color: #3882F6;
    color: #F9FAF8;
    align-items: center;
    margin: 5% 13% 5% 13%;
    text-align: center;
    padding: 2% 2%;
    align-items: center;
}

.form {
    display: flex;
    flex-direction: row;
    justify-content: space-around;
    align-items: center;
    width: 90%;
    min-width: 30%;

}

.form_box h3 {
    font-size: 2.5vw;
    font-family: 'RobotoBlack', sans-serif;
    color: #F9FAF8;
}

.input_box {
    display: flex;
    flex-direction: column;
    padding: 5%;
    min-width: 30%;
    min-height: auto;
    max-width: fit-content;
}

.message_box {
    padding: 3%;
    display: flex;
    flex-direction: column;
    min-width: 30%;
    min-height: auto;
    max-width: fit-content;
}

.label {
    font-family: 'RobotoLight';
    margin-bottom: 1.5vw;
    font-size: 1.8vw;
    font-weight: bolder;
}

.form input,
textarea {
    border: 0px;
    border-radius: 5px;
    margin-bottom: 3.5vw;
}

.form input {
    height: 2.5vw;
}

textarea {
    min-width: 50%;
    min-height: auto;
    resize: none;
}

#form_button {
    background-color: #3882F6;
    color: #F9FAF8;
    border: 0;
    border-radius: 5px;
    padding: 3% 0;
    height: auto;
    border-color: #F9FAF8;
    border: solid;
    min-width: 30%;
}

#form_button:hover {
    background-color: #D49B35;
}

/* =============================================== */



/* =========== ALL PAGES FOOTER SECTION =========== */

footer {
    text-align: center;
    padding: 1%;
    background-color: #1F2937;
    color: #E5E7EB;
}

.backtotop {
    position: absolute;
    margin-top: 1%;
    border: #F9FAF8 solid;
    border-radius: .5vw;
    padding: 0.5% 1%;
}

.top_shortcut {
    color: #F9FAF8;
    text-decoration: none;
}

.backtotop:hover {
    background-color: #D49B35;
}

.backtotop a:hover {
    color: #F9FAF8;
}

/* =============================================== */