@charset "utf-8";
/* CSS Document */

/******************************

[Table of Contents]

1. 1600px
2. 1440px
3. 1280px
4. 1199px
5. 1024px
6. 991px
7. 959px
8. 880px
9. 768px
10. 767px
11. 539px
12. 479px
13. 400px

******************************/

/************
1. 1600px
************/

@media only screen and (max-width: 1600px)
{
	
}

/************
2. 1440px
************/

@media only screen and (max-width: 1440px)
{
	
}

/************
3. 1380px
************/

@media only screen and (max-width: 1380px)
{
	
}

/************
3. 1280px
************/

@media only screen and (max-width: 1280px)
{
	.room_content
	{
		width: 542px;
	}
	.room_image
	{
		left: 542px;
		width: calc(100% - 542px);
	}
	.room_list ul li > div:first-child > div
	{
		width: 208px;
	}
}

/************
4. 1199px
************/

@media only screen and (max-width: 1199px)
{
	.logo
	{
		position: relative;
		left: auto;
		top: auto;
		-webkit-transform: translateY(5px);
		-moz-transform: translateY(5px);
		-ms-transform: translateY(5px);
		-o-transform: translateY(5px);
		transform: translateY(5px);
	}
	.main_nav
	{
		margin-left: 80px;
	}
	.main_nav ul li:not(:last-of-type)
	{
		margin-right: 20px;
	}
	.main_nav ul li a
	{
		font-size: 15px;
	}
	.book_button
	{
		width: 121px;
	}
	.phone
	{
		font-size: 14px;
	}
	.phone i
	{
		font-size: 20px;
	}
	.search_box_container
	{
		padding-left: 45px;
		padding-right: 40px;
	}
	.contact_map_container
	{
		padding-right: 0;
	}
	.contact > .container
	{
		max-width: 960px;
		padding-left: 15px;
		padding-right: 15px;
	}
	.contact > .container > .row
	{
		margin-left: -15px;
		margin-right: -15px;
	}
	.contact > .container > .row > div[class^='col']
	{
		padding-left: 15px;
		padding-right: 15px;
	}
	.contact_form_container
	{
		padding-left: 0;
		padding-right: 0;
	}
	.contact_col
	{
		margin-top: 98px;
	}
	.contact
	{
		padding-bottom: 98px;
	}
}

/************
4. 1100px
************/

@media only screen and (max-width: 1100px)
{
	
}

/************
5. 1024px
************/

@media only screen and (max-width: 1024px)
{
	
}

/************
6. 991px
************/

@media only screen and (max-width: 991px)
{
	.main_nav,
	.header_extra
	{
		display: none !important;
	}
	.hamburger
	{
		display: block;
	}
	.search_box_container
	{
		height: auto;
		padding: 16px;
		border-radius: 24px;
	}
	.search_form_list
	{
		width: 100%;
	}
	.hero_search_box
	{
		bottom: 32px;
	}
	.home_container
	{
		padding-top: 110px;
		padding-bottom: 250px;
	}
	.booking_search_layout
	{
		flex-direction: column;
		gap: 14px;
	}
	.booking_search_list
	{
		width: 100%;
		max-width: none;
		border-radius: 18px;
	}
	.booking_search_item
	{
		width: 50%;
		margin-bottom: 0;
	}
	.booking_search_item:not(:last-child)
	{
		border-right: solid 2px #d1d1d1;
	}
	.booking_search_item:nth-child(odd)
	{
		border-right: solid 2px #d1d1d1;
	}
	.booking_search_form .search_button
	{
		width: 100%;
		height: 72px !important;
		min-height: 72px !important;
		max-height: 72px !important;
		line-height: normal !important;
		padding-top: 0 !important;
		padding-bottom: 0 !important;
		margin-top: 0;
		margin-left: 0;
	}
	.intro_col
	{
		margin-top: 90px;
	}
	.dining_feature_card
	{
		min-height: 360px;
	}
	.dining_feature_panel
	{
		position: relative;
		left: auto;
		right: auto;
		bottom: auto;
		margin: -70px 24px 0;
	}
	.dining_preview .intro_col
	{
		margin-top: 36px;
	}
	.dining_spacer_col
	{
		display: none;
	}
	.dining_popup_grid
	{
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	.room .container
	{
		max-width: 720px;
		padding-left: 15px;
		padding-right: 15px;
	}
	.room .container .row
	{
		margin-left: -15px;
		margin-right: -15px;
	}
	.room .container .row .col
	{
		padding-left: 15px;
		padding-right: 15px;
	}
	.room_content
	{
		width: 100%;
		padding-left: 0px;
		padding-right: 0px;
		padding-top: 80px;
	}
	.room_image
	{
		position: relative;
		width: 100%;
		height: 500px;
		top: auto;
		left: auto;
	}
	.room_list ul li > div:first-child > div
	{
		width: 308px;
	}
	.icon_box_row > div[class^='col']:not(:last-child)
	{
		margin-bottom: 80px;
	}
	.newsletter_col
	{
		margin-top: 70px;
	}
	.contact > .container
	{
		max-width: 720px;
	}
}

/************
7. 959px
************/

@media only screen and (max-width: 959px)
{
	
}

/************
8. 880px
************/

@media only screen and (max-width: 880px)
{
	
}

/************
9. 768px
************/

@media only screen and (max-width: 768px)
{
	
}

/************
10. 767px
************/

@media only screen and (max-width: 767px)
{
	.home
	{
		min-height: 88svh;
	}
	.home_container
	{
		padding-top: 104px;
		padding-bottom: 300px;
	}
	.hero_search_box
	{
		bottom: 20px;
	}
	.home_eyebrow
	{
		font-size: 11px;
		letter-spacing: 0.12em;
	}
	.home_title h1
	{
		font-size: 48px;
	}
	.home_text
	{
		font-size: 15px;
		max-width: 100%;
	}
	.search_box_container
	{
		padding: 14px;
		border-radius: 20px;
	}
	.booking_search_list
	{
		border-radius: 16px;
	}
	.room .container
	{
		max-width: 540px;
	}
	.room_list ul li > div:first-child > div
	{
		width: 248px;
	}
	.contact > .container
	{
		max-width: 540px;
	}
	.footer_content
	{
		height: auto;
		padding-top: 60px;
		padding-bottom: 60px;
	}
	.footer
	{
		padding-top: 60px;
	}
	.footer_brand h3
	{
		font-size: 36px;
	}
	.footer_nav_group
	{
		gap: 28px 20px;
	}
	.footer_logo
	{
		position: relative;
		top: auto;
		left: auto;
		-webkit-transform: none;
		-moz-transform: none;
		-ms-transform: none;
		-o-transform: none;
		transform: none;
		margin-top: 50px;
	}
	.footer_button
	{
		margin-top: 60px;
	}
}

/************
11. 575px
************/

@media only screen and (max-width: 575px)
{
	p
	{
		font-size: 14px;
	}
	.home
	{
		min-height: 76svh;
		contain: none;
		overflow: visible;
	}
	.hero_booking
	{
		overflow: visible;
		z-index: 6;
	}
	.search_box,
	.hero_search_box
	{
		contain: none;
	}
	.home_container
	{
		padding-top: 96px;
		padding-bottom: 188px;
	}
	.menu_nav_list li a
	{
		font-size: 36px;
	}
	.section_title h1
	{
		font-size: 36px;
	}
	.section_text
	{
		font-size: 14px;
	}
	.button
	{
		width: 140px;
		height: 50px;
	}
	.button a
	{
		font-size: 12px;
		line-height: 50px;
	}
	.home_title h1
	{
		font-size: 40px;
	}
	.hero_search_box
	{
		position: absolute;
		left: 0;
		right: 0;
		bottom: -248px;
		transform: none;
		z-index: 9;
		margin-top: 0;
		margin-bottom: 0;
	}
	.intro
	{
		margin-top: 0;
		padding-top: 340px;
		position: relative;
		z-index: 0;
	}
	.search_box_container
	{
		padding: 12px;
		border-radius: 18px;
	}
	.booking_search_layout
	{
		gap: 12px;
	}
	.booking_search_item
	{
		width: 100%;
		height: auto;
		min-height: 72px;
		padding-top: 10px;
		padding-bottom: 10px;
		justify-content: center;
	}
	.booking_search_item span
	{
		margin-bottom: 4px;
	}
	.booking_search_item:not(:last-child)
	{
		border-right: none;
		border-bottom: solid 1px #e3e7ec;
	}
	.booking_search_list
	{
		flex-direction: column !important;
	}
	.booking_search_input
	{
		min-height: 30px;
		width: 100%;
		padding-top: 2px;
		padding-bottom: 2px;
	}
	.booking_search_input[type="date"]
	{
		line-height: normal;
	}
	.booking_search_form .search_button
	{
		margin-left: 0;
	}
	.booking_search_item:nth-child(odd)
	{
		border-right: none;
	}
	.search_button
	{
		width: 152px;
		height: 53px;
		font-size: 12px;
		margin-top: 6px;
	}
	.hero_search_box .search_button
	{
		width: 100%;
		height: 72px;
		margin-top: 0;
		font-size: 12px;
	}
	.booking_search_form .search_button
	{
		width: 100%;
		height: 72px !important;
		min-height: 72px !important;
		max-height: 72px !important;
		line-height: normal !important;
		padding-top: 0 !important;
		padding-bottom: 0 !important;
		margin-top: 0;
		font-size: 12px;
	}
	.intro_text p
	{
		font-size: 16px;
	}
	.dining_feature_card
	{
		min-height: 300px;
		border-radius: 22px;
	}
	.dining_feature_panel
	{
		margin: -54px 16px 0;
	}
	.dining_feature_inner
	{
		padding: 22px 20px;
		border-radius: 18px;
	}
	.dining_feature_inner .section_title h1
	{
		font-size: 34px;
	}
	.dining_feature_text
	{
		font-size: 14px;
	}
	.dining_feature_subtext
	{
		font-size: 13px;
	}
	.dining_popup_grid
	{
		grid-template-columns: 1fr;
	}
	.dining_popup_item img
	{
		height: 240px;
	}
	.intro_author_name
	{
		font-size: 14px;
	}
	.contact-info
	{
		padding: 48px 24px;
	}
	.contact-content h2
	{
		font-size: 32px;
	}
	.contact-actions
	{
		flex-direction: column;
	}
	.footer
	{
		padding-top: 48px;
		padding-bottom: 22px;
	}
	.footer_brand h3
	{
		font-size: 30px;
	}
	.footer_nav_group
	{
		grid-template-columns: 1fr;
	}
	.footer_bottom
	{
		gap: 16px;
	}
	.footer_meta_links
	{
		gap: 14px;
	}
	.room .container
	{
		max-width: 100%;
	}
	.room_list ul li > div:first-child > div
	{
		width: auto;
	}
	.room_list
	{
		padding-right: 13px;
	}
	.room_list ul li > div:last-child
	{
		margin-left: auto;
	}
	.contact > .container
	{
		max-width: 100%;
	}
	.contact_info_box
	{
		right: auto;
		left: 50%;
		-webkit-transform: translateX(-50%);
		-moz-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
		-o-transform: translateX(-50%);
		transform: translateX(-50%);
	}
	.google_map
	{
		width: 100%;
		height: 500px;
	}
}

/************
11. 539px
************/

@media only screen and (max-width: 539px)
{
	
}

/************
12. 480px
************/

@media only screen and (max-width: 480px)
{
	
}

/************
13. 479px
************/

@media only screen and (max-width: 479px)
{
	
}

/************
14. 400px
************/

@media only screen and (max-width: 400px)
{
	
}
