html {
  scroll-behavior: smooth;
}
a {
    text-decoration: none;
}

/*Font face handling*/
@font-face {
    font-family: 'Alumni Sans';
    src: url('Fonts/AlumniSans-VariableFont_wght.woff2') format('woff2');
}
@font-face {
    font-family: 'Special Gothic Condensed One';
    src: url('Fonts/SpecialGothicCondensedOne-Regular.woff2') format('woff2');
}
@font-face {
    font-family: 'Imperial Script';
    src: url('Fonts/ImperialScript-Regular.woff2') format('woff2');
}
@font-face {
    font-family: 'EB Garamond';
    src: url('Fonts/EBGaramond-VariableFont_wght.woff2') format('woff2');
}
@font-face {
    font-family: 'Poppins';
    src: url('Poppins-Regular.woff2') format('woff2');
}
@font-face {
    font-family: 'Inter';
    src: url('Inter-VariableFont_opsz_wght.woff2') format('woff2');
}
@font-face {
    font-family: 'Indie Flower';
    src: url('IndieFlower-Regular.woff2') format('woff2');
}

.loading_area {
    display: flex;
    align-items: center;
    justify-content: center;
    background: #000000;
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 2;
    font-size: 20px;
}
.main_content {
    position: relative;
    height: 550px;
    width: 100%;
}
.main_overlay {
    filter: brightness(0.5);
}
.main_overlay2 {
    filter: brightness(0.8);
}
.main_overlay3 {
    filter: brightness(0.7);
}
.main_overlay3 {
    filter: brightness(0.9);
}
.main_overlay5 {
    filter: brightness(0.6);
}
.main_img {
    height: 550px;
    width: 100%;
    position: absolute;
}
.menu_bar {
    top: 0;
    left: 0;
    width: 100%;
    z-index: 3;
    padding-left: 10px;
}
.logo_section {
    width: 250px;
}
.menu_section {
   width: auto;
   text-align: centjer;
   transition: border 2s;
   padding-left: 8%;
}
.menu_section a:link {
    text-decoration: none;
}
.menu_section a:hover {
    border-bottom: 2px solid #ffffff;
}
.icon_section {
    width: 70px;
    padding-right: 5px;
}
.menu_section .menu_items {
    padding: 0 5px;
    font-size: 28px;
    color: #ffffff;
    text-shadow: -1px 1px #02511b;
    font-family: 'Alumni Sans', sans-serif;
}
.more_menu_dropdown {
    background-color: #000000;
}
.menu_items_visiblity {
    display: inline;
}
.menu_items_visiblity2 {
    display: none;
}
.menu_items_visiblity3 {
    display: inline;
}
.menu_items_visiblity4 {
    display: none;
}
.menu_items_visiblity5 {
    display: inline;
}
.menu_items_visiblity6 {
    display: none;
}
.inline_block_display {
    display: inline-block;
}
.menu_table {
    width: 100%;
}
.logo {
    color: #ffffff;
    text-shadow: -1px 1px #0b441d;
    font-size: 45px;
    font-family: 'Imperial Script', sans-serif;
    font-weight: bold;
}
.slogan_area {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    width: 100%;
}
.slogan_text {
    font-size: 80px;
    color: #ffffff;
    text-shadow: -1px 1px #02511b;
    margin: 0;
    font-family: 'Special Gothic Condensed One', sans-serif;
}
.slogan_text2 {
    font-size: 70px;
    color: #ffffff;
    text-shadow: -1px 1px #02511b;
    margin: 0;
    font-family: 'Alumni Sans', sans-serif;
}
.header_right_menu {
    display: flex;
    align-items: center;
}
.login_indicator_container {
    margin-right: 20px;
    background-color: transparent !important;
}
.login_indicator {
    width: 25px;
    height: 25px;
    border-radius: 50%;
    background-color: #0099af;
    color: #ffffff;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    vertical-align: middle;
}
.user_menu {
    position: absolute;
    top: 23px;
    right: 0px;
    background-color: #ffffff;
    border: 1px solid #dfdfdf;
    border-radius: 5px;
    width: 300px;
    flex-direction: column;
    box-shadow: 0 0 2px#dfdfdf;
    padding: 0 5px;
}
.user_menu_options {
    padding: 10px 8px;
    font-size: 13px;
}
.user_menu .user_menu_options {
    border-bottom: 1px solid #dfdfdf;
    cursor: pointer;
}
.user_menu .user_menu_options:last-child {
    border-bottom: none;
}
.menu_icon {
    vertical-align: middle;
}
/* The loader container */
.loader_circle {
    border: 5px solid #cfcfcf; /* Light gray background ring */
    border-top: 5px solid #05c251; /* Blue spinning accent segment */
    border-radius: 50%; /* Transforms the square into a circle */
    width: 40px; /* Width of the circle */
    height: 40px; /* Height of the circle */
    animation: spin 2s linear infinite; /* Infinite spinning loop */
}

/* The rotation animation */
@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}
.main_gallery_left_navigation_button {
   position: absolute;
   top: 50%;
   left: 20px;
   transform: translate(0, -50%);
   background-color: #ffffff;
   width: 45px;
   height: 45px;
   border-radius: 50%;
   display: flex;
   justify-content: center;
   align-items: center;
   font-size: 20px;
   color: #222222;
}
.package_gallery_left_navigation_button {
   position: absolute;
   top: 50%;
   left: 20px;
   transform: translate(0, -50%);
   background-color: #ffffff;
   width: 30px;
   height: 30px;
   border-radius: 50%;
   display: flex;
   justify-content: center;
   align-items: center;
   font-size: 15px;
   color: #222222;
}

.gallery_left_navigation_button {
   position: absolute;
   top: calc(50% - 30px);
   left: 20px;
   transform: translate(0, -50%);
   background-color: #ffffff;
   width: 30px;
   height: 30px;
   border-radius: 50%;
   display: flex;
   justify-content: center;
   align-items: center;
   font-size: 18px;
   color: #222222;
}
.main_gallery_right_navigation_button {
   position: absolute;
   top: 50%;
   right: 20px;
   transform: translate(0, -50%);
   background-color: #ffffff;
   width: 45px;
   height: 45px;
   border-radius: 50%;
   display: flex;
   justify-content: center;
   align-items: center;
   font-size: 20px;
   color: #222222;
}
.package_gallery_right_navigation_button {
   position: absolute;
   top: 50%;
   right: 20px;
   transform: translate(0, -50%);
   background-color: #ffffff;
   width: 30px;
   height: 30px;
   border-radius: 50%;
   display: flex;
   justify-content: center;
   align-items: center;
   font-size: 15px;
   color: #222222;
}
.gallery_right_navigation_button {
   position: absolute;
   top: calc(50% - 30px);
   right: 20px;
   transform: translate(0, -50%);
   background-color: #ffffff;
   width: 30px;
   height: 30px;
   border-radius: 50%;
   display: flex;
   justify-content: center;
   align-items: center;
   font-size: 18px;
   color: #222222;
}
.hide_content {
    display: none;
}
.hide_content2 {
    display: none !important;
}
.opacity_hide {
    opacity: 0;
}
.show_content {
    display: block;
}
.show_content2 {
    display: inline;
}
.opacity_show {
    opacity: 1;
}
.black_color {
    background-color: #000000;
}
.white_color {
    background-color: #ffffff;
}
.white_text_color {
   color: #ffffff; 
}
.black_text_color {
   color: #000000; 
}
.book_header {
    background-color: #000000;
    padding: 45px;
    color: #ffffff;
    font-size: 40px;
    font-family: 'Special Gothic Condensed One', sans-serif;
    text-align: center;
    font-weight: bold;
}
.booking_content {
    width: 33.33333333333333%;
    padding: 20px;
    text-align: center;
    display: inline-block;
    vertical-align: top;
    height: 350px;
    margin: 0;
}
.booking_content_overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.suit_images {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    border-radius: 15px;
}
.booking_content_heading {
    font-size: 30px;
    font-family: 'Alumni Sans', sans-serif;
}
.booking_content_heading2 {
    font-size: 25px;
    font-family: Poppins, sans-serif;
    margin-bottom: 15px;
    font-weight: bold;
}
.booking_content_text {
    font-family: 'EB Garamond', sans-serif;
    font-size: 20px;
}
.booking_content_text2 {
    font-family: 'EB Garamond', sans-serif;
    font-size: 25px;
    margin-bottom: 10px;
    margin-top: 10px;
    font-weight: bold;
}
.booking_button {
   margin-top: 10px;
   font-family: 'EB Garamond', sans-serif;
   font-size: 18px;
}
.booking_button2 {
   margin-top: 10px;
   font-family: 'EB Garamond', sans-serif;
   font-size: 17px;
   font-weight: bold;
   padding-left: 30px;
   padding-right: 30px;
}
.description_section {
    width: 100%;
    padding: 25px 100px 25px;
    position: relative;
    background-color: #169e24;
}
.main_description_section {
    width: 100%;
    margin: 0;
    text-align: justify;
}
.notify_section {
    width: 100%;
    padding: 50px 200px 80px;
    background-color: #FFE84A;
    text-align: center;
}
.description_section_left_content {
    width: 50%;
    vertical-align: top;
    text-align: center;
}
.description_section_right_content {
    position: absolute;
    top: 17%;
    left: 55%;
    display: flex;
    flex-direction: column;
    width: 55%;
}
.section2_header_text {
    font-size: 18px;
    font-weight: bold;
    font-family: Poppins, sans-serif;
    margin-bottom: 0px;
}
.section2_header_text2 {
    font-size: 40px;
    font-weight:bolder;
    font-family: Poppins, sans-serif;
    margin-top: 25px;
    margin-bottom: 25px;
}
.section2_text {
    font-size: 23px;
    font-family: 'EB Garamond', sans-serif;
    margin-top: 20px;
}
.section2_text2 {
    font-size: 18px;
    font-family: Poppins, sans-serif;
    margin-top: 25px;
    font-weight: bold;
}
.description_section_right_content_image {
    width: 70%;
    height: 300px;
    position: static;
    top: 0px;
    right: 210px;
}
.description_section_right_content_image2 {
    width: 70%;
    height: 300px;
    position: static;
    top: 70px;
    right: 85px;
}
.notify_text {
    font-size: 28px;
    font-family: 'Inter', sans-serif;
    margin-bottom: 5px;
    font-weight: bold;
}
.notify_text2 {
    font-size: 30px;
    font-family: 'EB Garamond', sans-serif;
    margin-bottom: 50px;
    font-weight: lighter;
}
.notify_email {
    width: 60%;
    max-width: 400px;
    padding: 10px 15px;
    vertical-align: middle;
    border-radius: 0;
    border-top: 1px solid #FFE84A;
    border-left: 1px solid #FFE84A;
    border-bottom: 1px solid #FFE84A;
    border-right: none;
    font-family: 'EB Garamond', sans-serif;
    font-size: 18px;
}
.notify_btn {
    padding: 12px 50px;
    vertical-align: middle;
    position: relative;
    top: 1px;
    font-family: 'EB Garamond', sans-serif;
    font-size: 18px;
}
.contact_header {
    font-family: 'EB Garamond', sans-serif;
    font-size: 26px;
}
.footer_text {
    font-family: 'EB Garamond', sans-serif;
    font-size: 17px;
}
.footer_text2 {
    font-family: 'Inter', sans-serif;
}
.extra_bottom_margin {
    margin-bottom: 15px;
}
.contact_area { 
    background-color: #000000;
    padding: 100px 30px;
    color: #ffffff;
}
.package_include_area {
    margin-bottom: 10px;
}
.package_includes {
    text-align: center;
    display: inline-block;
}
.package_includes li {
    font-family: Poppins, sans-serif;
    text-align: left;
    font-size: 15px;
    font-weight: bold;
}
.start_booking_section {
    font-family: 'EB Garamond', sans-serif;
    font-size: 18px;
    padding: 10px 0;
    display: none;
}
.booking_main_content {
    vertical-align: top;
    display: inline-block;
}
.booking_main_content_width {
    width: 70% !important;
}
.booking_main_content_width2 {
    width: 100% !important;
}
.booking_title {
    font-size: 17px;
    font-family: 'Poppins', sans-serif;
    font-weight: bold;
    text-align: center;
    margin-bottom: 30px;
}
.top_booking_price {
    font-family: 'EB Garamond', sans-serif;
    font-size: 17px;
    display: none;
    text-align: center;
    font-family: 'Poppins', sans-serif;
    margin-bottom: 10px;
}
.booking_labels {
    display: block;
    margin-bottom: 5px;
    font-size: 15px;
    font-family: 'Inter', sans-serif;
}
.booking_labels_margin_top {
    margin-top: 25px;
}
.booking_service_areas {
    width: 50%;
    vertical-align: top;
    display: inline-block;
}
.booking_subtitle {
    font-size: 16px;
    font-weight: bold;
    margin-top: 0;
    margin-bottom: 0;
}
.type_radio_label {
    font-size: 14px;
    margin-right: 5px;
}
.booking_type {
    vertical-align: middle;
}
.additional_services {
    padding: 0;
    margin-top: 5px;
}
.additional_services li {
    list-style-type: none;
    padding: 5px 0;
    font-size: 14px;
    padding-bottom: 0;
    margin-top: 0;
}
.booking_type_list {
    width: 400px;
    padding: 0;
    columns: 2;
    -webkit-columns: 2;
    -moz-columns: 2;
}
.booking_type_list li {
    list-style-type: none;
}
.additional_services_checkbox {
    vertical-align: middle;
}
.days_text_field {
    font-size: 14px;
    border: 1px solid #5f5f5f;
    padding: 3px 10px;
    border-radius: 3px;
}
.book_button_area {
    width: 350px;
    text-align: center;
    margin-top: 35px;
}
.book_button {
    border: 1px solid #6f6f6f;
    border-radius: 3px;
}
.booking_content_area {
    text-align: center;
    padding: 20px 0;
    width: 100%;
    max-width: 1250px;
}
.suit_packages {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.package_content {
    width: calc(50% - 30px);
    max-width: 600px;
    padding: 20px;
    text-align: center;
    display: inline-block;
    vertical-align: top;
    height: 400px;
    margin: 0;
    border-radius: 20px;
}
.content_space_left {
    margin-left: 2px;
}
.content_space_right {
    margin-right: 2px;
}
.content_space_right2 {
    margin-right: 10px;
}
.package_images_section {
    width: 100%;
}
.booking_content_image {
    width: calc(50% - 5px);
    height: 250px;
    vertical-align: top;
    float: left;
}
.booking_content_image2 {
    width: calc(25% - 5px);
    height: calc(125px - 2.5px);
    vertical-align: top;
}
.image_spacer_right {
    margin-right: 5px;
}
.image_spacer_bottom {
    margin-bottom: 5px;
}
.border_radius_start {
    border-radius: 10px 0 0 10px;
}
.border_radius_end {
    border-radius: 0 10px 10px 0;
}
.suite_detail {
    padding: 0 5px;
    margin-top: 5px;
}
.suite_detail li {
    display: inline-block;
    font-family: 'Inter', sans-serif;
    vertical-align: middle;
    font-size: 14px;
    font-weight: bold;
}
.suite_details_separator {
    vertical-align: middle;
    font-size: 11px;
    margin-left: 5px;
    margin-right: 5px;
}
.suite_details_icon {
    font-size: 11px;
    vertical-align: middle;
    margin-right: 5px;
    position: relative;
    top: -0.5px;
}
.suite_detail_heading {
    font-size: 28px;
    font-weight: bold;
}
.suite_descriptions {
    font-size: 19px;
    font-family: 'Poppins', sans-serif;
    overflow: auto;
    display: inline-block;
    line-height: 35px;
}
.suite_descriptions2 {
    font-size: 19px;
    font-family: 'EB Garamond', sans-serif;
    padding-right: 5px;
    display: inline-block;
    line-height: 35px;
}
.main_suite_descriptions {
    font-size: 19px;
    font-family: 'EB Garamond', sans-serif;
    overflow: auto;
    padding: 50px 15% 5px 15%;
    display: inline-block;
    line-height: 35px;
}
.description_heading {
    font-size: 19px;
    font-weight: bold;
    display: block;
    margin-top: 20px;
    margin-bottom: 20px;
}
.description_list {
    font-size: 17px;
    overflow: auto;
    display: inline-block;
    line-height: 35px;
}
.show_more_btn {
    font-family: 'EB Garamond', sans-serif;
    font-size: 17px;
    background-color: #bfbfbf;
    padding: 3px 20px;
    border: 1px solid #bababa;
    border-radius: 5px;
}
.show_more_btn:hover {
    background-color: #aaaaaa;
    border: 1px solid #afafaf;
}
.show_more_btn_area {
    text-align: right;
    margin-right: 0px;
}
.show_more_amenities_btn_area {
    margin-top: 15px;
    margin-left: 5px;
}
.booking_separator {
    border-top: none;
    margin-top: 0;
    display: none;
}
.booking_detail_area {
     padding: 0 20px 0;
}
.booking_details_section {
    margin-top: 15px;
    width: 50%;
    max-width: 50%;
    display: inline-block;
    padding-left: 15%;
    left: 50%;
    z-index: 2;
    transform: none;
    padding-top: 0;
}
.custom_events_details_section {
    width: calc(47% + 7px);
    display: none;
    padding-left: calc(15% - 30px);
    position: absolute;
    top: 350px;
    left: 53%;
    z-index: 1;
}
.custom_events_details_section_margin_top {
    margin-top: 0;
}
.custom_events_details_section2 {
    display: none;
    vertical-align: top;
    position: relative;
    left: 10%;
    top: 30px;
    margin-bottom: 50px;
    width: 45%;
}
.custom_booking_descriptions_container {
    display: none;
}
.custom_booking_descriptions_container_margin_bottom {
    margin-bottom: 0;
}
.booking_details_section_custom_booking {
    width: 80%;
    display: inline-block;
    left: 25%;
}
.booking_details_section_absolute_position_top {
    top: 350px;
}
.booking_details_section_fixed_position_bottom {
    bottom: 0px;
}
.booking_details_area {
    width: 90%;
    display: inline-block;
    border: 1px solid #bfbfbf;
    box-shadow: 0.5px 0.5px 10px 3px #dfdfdf, -0.5px -0px 10px -3px #dfdfdf;
    border-radius: 5px;
    text-align: center;
    background-color: #ffffff;
    padding: 0 20px;
}
.booking_bottom_area {
    display: none !important;
}
.booking_details_section_position {
    position: absolute;
}
.booking_details_section_position2 {
    position: fixed;
}
.custom_events_details_area {
    width: 100%;
    display: inline-block;
    border: 1px solid #bfbfbf;
    box-shadow: 0.5px 0.5px 10px 3px #dfdfdf, -0.5px -0px 10px -3px #dfdfdf;
    border-radius: 5px;
    text-align: center;
    background-color: #ffffff;
}
.custom_events_details_text {
    font-family: 'EB Garamond', sans-serif;
    font-size: 18px;
    margin-top: 20px;
}
.custom_events_amenities_heading {
    font-family: 'EB Garamond', sans-serif;
    font-size: 18px;
    font-weight: bold;
    margin-top: 20px;
}
.events_check_area {
    display: inline-block;
}
.booking_details_area_custom_booking {
    width: 90%;
}
.booking_details {
    text-align: left;
    display: inline-block;
    width: 90%;
}
.booking_details_custom_booking {
    width: 45%;
}
.booking_price_header {
    font-size: 25px;
    font-weight: bold;
    margin-top: 10px;
    margin-bottom: 20px;
    display: inline-block;
    text-align: center;
    width: 100%;
}
.booking_date_area {
    width: 100%;
    position: relative;
}
.booking_date_error_area {
    display: none;
    position: absolute;
    background-color: #ffffff !important;
    color: #ec0f0f;
    border: 1px solid #afafaf;
    font-family: 'Poppins', sans-serif;
    font-size: 14px;
    width: 250px;
    bottom: -35px;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 3;
    padding: 5px 10px;
    border-radius: 0px;
    font-weight: bold;
    text-align: center;
}
.booking_from_area {
    width: 50%;
    display: inline-block;
    border: 1px solid #afafaf;
    padding: 8px 15px;
    border-radius: 5px 0 0 0;
    font-family: 'Poppins', sans-serif;
    font-size: 14px;
    font-weight: bold;
}
.check_date_range {
    font-weight: lighter;
}
.booking_to_area {
    width: 50%;
    display: inline-block;
    border: 1px solid #afafaf;
    padding: 8px 15px;
    border-radius: 0 5px 0 0;
    font-family: 'Poppins', sans-serif;
    font-size: 14px;
    font-weight: bold;
}
.booking_guest_area_container {
    font-family: 'Poppins', sans-serif;
    font-size: 14px;
}

.booking_guest_area {
    width: 100%;
    border: 1px solid #afafaf;
    padding: 5px 15px 8px;
    border-radius: 0 0 5px 5px;
}
.guest_text, .guest_text_caret {
    font-size: 14px;
    font-weight: bold;
}
.guest_text_caret {
    margin-top: 10px;
    font-size: 18px;
}
.guest_count_text {
    font-size: 14px;
    display: block;
}
.guest_detail_text {
    font-size: 14px;
     display: inline-block;
}
.guest_detail_text_container {
    text-align: center;
    width: 100%;
}
.booking_guest_selection_container {
    position: absolute;
    min-height: 50px;
    background-color: #ffffff;
    width: 100%;
    border-radius: 5px;
    border: 1px solid #afafaf;
    padding: 10px 20px;
}
.booking_guest_selection_option_outer_area {
    display: flex;
    align-items: center;
    margin-bottom: 20px;
}
.booking_guest_selection_option_area {
    flex: 1;
}
.booking_guest_selection_option_area2 {
    display: flex;
}
.booking_guest_selection_option_header {
    font-size: 17px;
    font-weight: 700;
    margin-bottom: 5px;
    margin-top: 0;
}
.booking_guest_selection_option_subtext {
    font-size: 14px;
    color: #6f6f6f;
    font-weight: 400;
}
.book_btn {
    width: 100%;
    padding: 5px 10px;
    background-color: #0755f0;
    color: #ffffff;
    margin-top: 20px;
    border: 1px solid #043eb1;
    border-radius: 5px;
    transition: background-color 0.3s;
}
.disable_book_btn {
    background-color: #5978b5;
    pointer-events: none;
    border: 1px solid #486db7;
}

.book_btn:hover {
    background-color: #0644c0;
    color: #ffffff;
}
.book_prices_section {
    margin-top: 40px;
    width: 100%;
    font-family: 'Inter', sans-serif;
}
.book_prices {
    font-size: 16px;
}
.custom_events_area {
    display: inline-block;
    width: 100%;
    text-align: left;
    padding-left: 20px;
}
.custom_event_heading {
    font-size: 20px;
    font-weight: bold;
    text-align: center;
}
.custom_events_content_header_text {
    font-size: 15px;
    margin-bottom: 10px;
}
.events_main_label {
    font-family: 'EB Garamond', sans-serif;
    font-size: 19px;
    font-weight: bold;
    display: block;
    margin-top: 25px;
    margin-bottom: 8px;
}
.events_label {
    font-family: 'EB Garamond', sans-serif;
    font-size: 17px;
    line-height: 30px;
}
.custom_events_checkout_btn_container {
    text-align: center;
    margin-bottom: 20px;
    margin-top: 10px;;
}
.custom_events_checkout_btn {
    padding: 8px 20px;
    font-size: 14px;
    background-color: #bfbfbf;
}
.custom_events_services_heading {
    font-size: 16px;
    font-weight: bold;
}
.custom_events_services {
    text-align: left;
}
.custom_event_contact_statement {
    font-family: 'EB Garamond', sans-serif;
    font-size: 19px;
}
.book_contact_text, .book_contact_text2 {
    font-family: 'EB Garamond', sans-serif;
    font-size: 18px;
    display: none;
    color: #26618e;
    text-align: center;
    margin-top: 0;
    margin-bottom: 20px;
}
.book_contact_text2 {
    display: block;
    margin-bottom: 0;
}
.custom_events_main_heading {
    font-family: 'EB Garamond', sans-serif;
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 15px;
}
.custom_events_main_images {
    width: calc(50% - 3px);
    max-width: 300px;
    height: 140px;
    max-height: 150px;
}
.last_custom_events_main_images_visibility {
    display: inline;
}
.amenities_area {
    margin-top: 30px;
    border-top: 1px solid #9f9f9f;
}
.amenities_heading {
    font-size: 20px;
    font-weight: bold;
}
.amenities_dialog_sub_header {
    font-size: 17px;
    font-weight: bold;
    padding-left: 15px;
}
.amenities_dialog_sub_header2 {
    font-family: 'EB Garamond', sans-serif;
    font-size: 19px;
    font-weight: bold;
    padding-left: 15px;
    padding: 10px;
    border-bottom: 1px solid #bfbfbf;
    border-top: 1px solid #bfbfbf;
    background-color: #dfdfdf;
}
.amenities_list {
    padding: 0;
    columns: 2;
}
.amenities_list_container {
    width: calc(100% - 40px);
    height: calc(100% - 60px);
    position: absolute;
}
.description_container {
    width: calc(100% - 40px);
    height: calc(100% - 60px);
}
.amenities_content_area {
    padding: 30px;
}
.amenities_list2 {
    padding: 0;
}
/*
.amenities_list li {
    list-style-type: none;
    font-size: 13px;
    padding: 5px 0;
}*/
.amenities_list2 li {
    list-style-type: none;
    font-size: 13px;
    padding: 20px 15px 20px;
    border-bottom: 1px solid #bfbfbf;
}
.amedities_container {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}
.coustom_events_amenities_section {
    width: calc(50% - 5px);
    text-align: left;
    padding: 5px 10px;
    display: inline-block;
}
.selected_event_border_bottom {
    border-bottom: 2px solid #4f4f4f;
}
.amenities {
    font-size: 13px;
    width: auto;
    padding: 15px 10px;
    display: flex;
    flex-direction: row;
    align-items: center;
}
.amenities_icon {
    margin-left: 5px;
    margin-right: 5px;
}
.amenities_icon_images {
    width: 20px;
    height: 20px;
    margin: 0 5px;
    vertical-align: middle;
}
.amenities_icon_images2 {
    width: 25px;
    height: 25px;
    margin: 0 5px;
    vertical-align: middle;
}
.amenities_icon_images3 {
    width: 35px;
    height: 35px;
    margin: 0 5px;
    vertical-align: middle;
}
.custom_events_amenities_icon_images {
    width: 25px;
    height: 25px;
    margin: 0 5px;
}
.custom_events_amenities_icon_images_container {
    text-align: center;
}
.amenities_sub_headings {
    font-family: 'EB Garamond', sans-serif;
    font-size: 17px;
    display: block;
    margin: 0;
    margin-left: 10px;
}
.custom_events_amenities_sub_headings {
    font-family: 'EB Garamond', sans-serif;
    font-size: 17px;
    display: block;
    margin: 0;
    margin-left: 0px;
}
.amenities_sub_text {
    font-family: 'EB Garamond', sans-serif;
    font-size: 16px;
    display: block;
    margin: 10px 0px 0 10px;
    color: #6f6f6f;
}
.amenities_subs_area {
    display: inline-block;
    vertical-align: middle;
}
.amenities_slashed_text {
    text-decoration: line-through;
}
.dialogs {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 5;
}
.dialog_overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
}
.dialog_content {
    position: absolute;
    top: calc(50% + 17px);
    left: 50%;
    transform: translate(-50%, -50%);
    width: 600px;
    height: calc(100% - 60px);
    padding: 0 20px;
    background-color: #ffffff;
    border-radius: 10px;
}
.dialog_content2 {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 0 20px;
    background-color: #ffffff;
}
.dialog_content3 {
    position: absolute;
    top: calc(50% + 17px);
    left: 50%;
    transform: translate(-50%, -50%);
    width: auto;
    max-width: auto;
    height: auto;
    padding: 0 20px;
    background-color: #ffffff;
    border-radius: 10px;
}
.dialog_content4 {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 0 20px;
    background-color: #ffffff;
    border-radius: 10px;
}
.dialog_header_area {
    padding: 0 10px 0 0;
}
.dialog_header_area_addon {
    padding: 0px;
}
.dialog_header_area2 {
    padding: 0px 10px;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
}
.dialog_header {
    font-size: 20px;
    font-weight: bold;
    font-family: 'EB Garamond', sans-serif;
}
.description_header {
    font-size: 40px;
    font-weight: bold;
    padding: 45px;
    background-color: #000000;
    color: #ffffff;
    text-align: center;
    margin-top: 0;
    border-top: 1px solid #0aa32e;
    font-family: 'Indie Flower', sans-serif;
    text-align: center;
    font-weight: bold;
}
.dialog_close_btn {
    font-size: 20px;
    position: absolute;
    top: 10px;
    right: 20px;
}
.dialog_close_btn2 {
    font-size: 16px;
    position: absolute;
    top: -10px;
    right: -10px;
    width: 25px;
    height: 25px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #ffffff;
    border: 1px solid #bfbfbf;
    border-radius: 50%;
}
.dialog_close_btn_add_on {
    background-color: #ffffff;
    color: #2f2f2f;
    padding: 3px 5px;
    border-radius: 50%;
    top: 5px;
    right: 10px;
    border: 1px solid #afafaf;
    font-size: 18px;
}
.calendar {
    position: absolute;
    top: -10px;
    right: calc(10% - 10px);
    min-width: 150px;
    min-height: 150px;
    width: auto;
    border: 1px solid #cfcfcf;
    border-radius: 5px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
    display: none;
    padding: 0 10px 10px 5px;
}
.disable_calendar_btn {
    color: #bfbfbf;
    pointer-events: none;
}
/* Container adjustments */
.flatpickr-calendar {
    background: transparent !important;
    box-shadow: none !important;
    border: none !important;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    width: auto !important; /* Expands container width to comfortably sit side-by-side */
}
/* Header Month & Navigation styling */
.flatpickr-months .flatpickr-month {
    color: #222222 !important;
    fill: #222222 !important;
}
.flatpickr-current-month {
    font-size: 16px !important;
    font-weight: 600 !important;
}
.flatpickr-months .flatpickr-prev-month, 
.flatpickr-months .flatpickr-next-month {
    color: #222222 !important;
    font-size: 28px;
    padding: 0px 10px;
    position:relative;
    top: 2px;
}
/* Weekday header formatting (S M T W T F S) */
span.flatpickr-weekday {
    color: #717171 !important;
    font-weight: 500 !important;
    font-size: 12px !important;
}
/* Styling for Individual Days */
.flatpickr-day {
    color: #222222 !important;
    font-weight: 500 !important;
    border-radius: 50% !important; /* Forces circular shapes */
    border: none !important;
}
/* Disabled and past dates styling */
.flatpickr-day.flatpickr-disabled, 
.flatpickr-day.flatpickr-disabled:hover,
.flatpickr-day.prevMonthDay, 
.flatpickr-day.nextMonthDay {
    color: #b0b0b0 !important;
    text-decoration: line-through; /* Striking through unavailable historical days */
    background: transparent !important;
}
/* Selected Start & End range date dots */
.flatpickr-day.selected, 
.flatpickr-day.startRange, 
.flatpickr-day.endRange,
.flatpickr-day.selected:hover,
.flatpickr-day.startRange:hover,
.flatpickr-day.endRange:hover {
    background: #222222 !important; /* Jet black circular bubble active backgrounds */
    color: #ffffff !important;
    border-radius: 50% !important;
}
/* Hide previous month days */
.flatpickr-day.prevMonthDay {
    visibility: hidden;
}

/* Hide next month days */
.flatpickr-day.nextMonthDay {
    visibility: hidden;
}

/* Date range path bridging selected dates together */
.flatpickr-day.inRange {
    background: #efefef !important; /* Soft light gray background strip between range */
    box-shadow: none !important;
    border-radius: 50% !important;
}



/* 1. Ensure the container holding the calendar day blocks allows multiple columns */
.flatpickr-days {
    display: flex !important;
    flex-direction: row !important;
    width: auto !important; /* Overrides the previous strict 280px lock */
    pointer-events: none;
}

/* 2. Target both active day grids explicitly inside the container wrapper */
.flatpickr-calendar.multiMonth .dayContainer {
    display: flex !important;
    flex-wrap: wrap !important;
    width: auto !important;
    min-width: 280px !important;
    padding: 0 15px;
}

/* 3. Fix the element overflow to prevent the second grid from clipping to 0px height */
.flatpickr-calendar.multiMonth .flatpickr-innerContainer {
    overflow: visible !important;
    display: flex !important;
}

.booking_guest_selection_button_area {
    display: flex;
    justify-content: center;
    align-items: center;
    border: none;
    border-radius: 50%;
    width: 27px;
    height: 27px;
    background-color: #dfdfdf;
    cursor: pointer;
    border: 1px solid #afafaf;
    font-size: 12px;
}
.booking_guest_count {
    width: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 14px;
}
.gallery {
    padding: 20px 40px 60px;
}
.gallery_heading {
    padding-bottom: 30px;
    text-align: center;
}
.gallery_heading_list {
    columns: 2;
    display: inline-block;
    list-style-type: none;
    padding: 0;
    font-weight: lighter;
}
.gallery_heading_list li {
    padding: 5px 10px;
    border: 1px solid #bfbfbf;
    border-radius: 5px;
}
.gallery_heading_list_active {
    background-color: #dfdfdf !important;
}
.gallery_nav_section {
    display: inline-block;
}
.gallery_nav_area {
    display: inline-block;
    margin-right: 15px;
    margin-bottom: 15px;
    vertical-align: top;
}
.gallery_nav_heading {
    font-family: 'EB Garamond', sans-serif;
    font-size: 19px;
    font-weight: 600;
}
.gallery_area {
    display: flex;
    flex-wrap: wrap;
}
.gallery_images {
    width: calc(33.33% - 20px);
    max-width: 500px;
    height: 200px;
    margin-bottom: 15px;
    margin-right: 20px;
}
.gallery_heading {
    font-family: 'EB Garamond', sans-serif;
    font-size: 22px;
    font-weight: 600;
}
.gallery_heading_extra_margin_top {
    padding-top: 30px;
}
.gallery_nav_images {
    width: 150px;
    height: 100px;
}
.gallery_photo {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 0;
}
.photo_dialog_nav_images_section {
    position: absolute;
    left: 0;
    bottom: 0;
    height: 90px;
    width: 100%;
    background: rgba(0, 0, 0, 0.7);
    border-radius: 0 0 10px 10px;
    overflow: auto;
    padding: 0 0 0 10px;
    display: none;
    align-items: center;
    justify-content: start;
}
.photo_dialog_nav_images_section_opener {
    position: absolute;
    right: 0;
    bottom: 5px;
    background-color:#efefef;
    padding: 10px;
    border: 1px solid #dfdfdf;
    border-radius: 10px 0 0 10px;
}
.photo_dialog_nav_images_section_closer {
    position: absolute;
    right: 10px;
    bottom: 80px;
    background-color:#efefef;
    border: 1px solid #dfdfdf;
    border-radius: 50%;
    font-size: 14px;
    height: 20px;
    width: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    display: none;
}
.photo_dialog_nav_images_area {
   display: flex;
   width: 55px;
   height: 55px;
   margin-right: 10px;
}
.photo_dialog_nav_images {
    width: 55px;
    height: 55px;
    border-radius: 5px;
}
.selected_image {
    border: 2px double #dfdfdf;
    width: 60px;
    height: 60px;
    border-radius: 5px;
}
.login_area_container {
    padding: 0 10%;
}
.login_and_signin_area, .payment_method_area_container {
    border: 1px solid #dadada;
    border-top: none;
    border-radius: 20px;
    box-shadow: -2px 4px 7px -2px #dfdfdf, 2px 0 7px -2px #dfdfdf;
    display: inline-block;
    width: 45%;
}
.payment_method_area_container {
    display: none;
}
.booking_detail_heading {
    display: none !important;
}
.payment_detail_container {
    border: 1px solid #dadada;
    border-top: none;
    border-radius: 20px;
    box-shadow: -2px 4px 7px -2px #dfdfdf, 2px 0 7px -2px #dfdfdf;
    display: inline-block;
    width: 35%;
    position: absolute;
    right: 10%;
    margin-top: 0;
    margin-bottom: 0;
}
.login_area, .payment_method_area {
    margin-top: 10px;
    padding: 2px 25px 15px;
}
.login_header {
    font-size: 17px;
    font-weight: 500;
    margin-bottom: 15px;
}
.login_label {
    display: block;
    font-size: 14px;
    margin-bottom: 3px;
}
.login_label2 {
    display: inline-block;
    font-size: 14px;
    margin-bottom: 3px;
    margin-top: 20px;
}
.login_input {
    width: 100%;
    border: 1px solid #bfbfbf;
    border-radius: 5px;
    font-size: 15px;
    padding: 5px 10px;
    box-shadow: 0 0 7px #dfdfdf;
}
.signup_starter_button {
    float: right;
    margin-top: 2px;
    border: 1px solid #cfcfcf;
    border-radius: 5px;
    padding: 3px 10px;
}
.login_error {
    background-color: #ffffff;
    color: #ec0f0f;
    display: none;
    position: absolute;
    margin-top: 0px;
    border: 1px solid #bfbfbf;
    border-radius: 5px;
    width: 100%;
    padding: 5px 10px;
    box-shadow: 0 0 7px #dfdfdf;
    z-index: 3;
    font-size: 13px;
}
.login_error2 {
    background-color: #ffffff;
    color: #ec0f0f;
    opacity: 0;
    display: flex;
    position: absolute;
    bottom: 0;
    margin-top: 0px;
    justify-content: center;
    align-items: center;
    border-radius: 0;
    padding: 0 10px;
    font-size: 14px;
    width: 100%;
    height: 30px;
}
.login_error_addon {
    position: static;
    margin-bottom: 15px;
    margin-top: 5px;
}
.signing_success_area {
    font-size: 14px;
    margin-top: 25px;
    color: #26a118;
    display: none;
}
.success_text_color {
    color: #26a118;
}
.signing_success_area_adon {
    color: #000000;
}
.payment_input {
    width: 100%;
    border: 1px solid #bfbfbf;
    border-radius: 5px;
    font-size: 15px;
    padding: 16px 10px;
}
.payment_input_box_shadow {
    box-shadow: 0 0 3px #dfdfdf;
}
.payment_input_box_shadow2 {
    box-shadow: 0 0 3px #dfdfdf;
}
.payment_input_addon {
    padding: 8px 10px;
}
.payment_message {
    font-size: 14px;
    margin-top: 20px;
    margin-bottom: 20px;
}
.forgot_password {
    vertical-align: middle;
}
.login_input_extra_margin_top {
    margin-top: 20px;
}
.login_button_container {
    width: 100%;
    margin-top: 20px;
}
.login_button {
    background-color: #dfdfdf;
    border: 1px solid #bfbfbf;
    border-radius: 5px;
    padding: 5px 20px;
    box-shadow: 0 0 5px #dfdfdf;
}
.selectable_heading_area {
    display: flex;
    flex-direction: row;
    margin-bottom: 12px;
}
.credit_or_debit_card_text {
    flex: 1;
}
.credit_or_debit_card {
    height: 20px;
    width: 20px;
    border: 0;
}
.expiry_date_and_cvc_area, .expiry_postal_code_and_country_area {
    display: flex;
}
.expiry_postal_code_and_country_area {
    gap: 5px;
}
.card_expiry_area, .card_cvc_area {
    width: 50%;
}
.card_expiry {
    border-radius: 5px 0 0 5px;
    border-top: none;
}
.card_cvc {
    border-radius: 0 5px 5px 0;
    border-top: none;
}
.card_postal_code_area {
    width: 45%;
}
.card_country_area {
    width: 55%;
}
.madatory_field {
    color: #e00b0b;
    font-size: 16px;
    position: relative;
    top: 0px;
    margin-left: 3px;
}
.payment_datail_top_container, .payment_datail_bottom_container {
    border-bottom: 1px solid #e5e5e5;
    padding-bottom: 10px;
}
.payment_datail_bottom_container_addon {
    border-bottom: none;
    padding-top: 15px;
}
.payment_datail_top_section {
    display: flex;
    align-items: center;
}
.payment_details_areas {
    display: flex;
}
.payment_datail_top_section_image {
    width: 100px;
    height: 100px;
    border-radius: 10px;
}
.payment_datail_top_section_text_area {
    flex: 1;
    padding: 0 10px;
}
.payment_datail_top_section_text1 {
    font-size: 20px;
    font-weight: bold;
}
.payment_datail_refund_disclaimer {
    font-size: 14px;
    margin-top: 20px;
    margin-bottom: 5px;
}
.payment_datail_top_trip_detail {
    flex: 1;
}
.payment_datail_trip_detail_header {
    font-size: 15px;
    font-weight: bold;
    margin-bottom: 5px;
}
.payment_datail_trip_detail_date {
    font-size: 13px;
    margin: 5px 0;
}
.payment_datail_trip_detail_guests {
    font-size: 13px;
    margin: 5px 0;
}
.payment_details_area_button {
    margin-top: 10px;
    border: 1px solid #bfbfbf;
    border-radius: 5px;
    padding: 2px 10px;
}
.payment_detail_prices {
    font-size: 13px;
}
.payment_success_area {
    text-align: left;
}
.payment_success_heading {
    font-size: 18px;
    color:#0dcf5b;
    font-weight: bold;
    margin-top: 10px;
}
.payment_success_details_heading {
    font-size: 16px;
    font-weight: bold;
    margin-top: 20px;
    margin-bottom: 10px;
}
.reservation_area {
    padding: 30px 0;
    border: 1px solid #bfbfbf;
    box-shadow: 0.5px 0.5px 10px 3px #dfdfdf, -0.5px -0px 10px -3px #dfdfdf;
    border-radius: 5px;
}
.no_reservation_area {
    margin-top: 20px;
    margin-bottom: 20px;
    font-size: 25px;
    text-align: center;
}
.reservations {
    border-bottom: 1px solid #bfbfbf;
    padding: 0 50px 20px;
    margin-bottom: 20px;
}
.reservation_detail_separator {
    margin-top: 15px;
}
.reservation_price_area_deatails_width {
    width: 300px;
}
.room_name {
    font-size: 18px;
    font-weight: bold;
    display: inline-block;
}
.reservation_detail_header_text {
    font-size: 15px;
    font-weight: bold;
}
.reservation_detail_bold_text {
    font-size: 14px;
    font-weight: bold;
}
.reservation_detail_main_text {
    font-size: 14px;
}


.extra_margin_top {
    margin-top: 15px;
}
.relative_position {
    position: relative;
}
.absolute_position {
    position: absolute;
}
.fixed_position {
    position: fixed;
}
.float_right {
    float: right;
}
.display_block {
    display: block;
}
.display_inline_block {
    display: inline-block;
    min-width: auto;
}
.underline_text {
    text-decoration: underline;
}
.book_prices_area {
    margin-bottom: 10px;;
}
.bold_text {
    font-weight: bold;
}
.double_border {
    border-bottom: 3px double #000000;
    border-top: 3px double #000000;
}
.border_radius {
    border-radius: 10px;
}
.make_scrollable {
    overflow-y: auto;
}
.cursor_pointer {
    cursor: pointer;
}
.disable_click {
    pointer-events: none;
    background-color: #0099af;
    color: #ffffff;
}
.visibility_hidden {
    visibility: hidden;
}
.center_horizontal {
    text-align: center;
}
.error_text_color {
    color: #ec0b0b;
}
.disable_form_click {
    pointer-events: none;
}
.align_left {
    text-align: left;
}
.center_align {
 text-align: center;
}
.first_ameninties_header_margin_top {
    margin-top: 5px;
}