/* Theme Name: TheMiraTheme, General css for frontend */

html {
    /* Change the default tap highlight color to transparent */
    -webkit-tap-highlight-color: transparent;
}

body {
    margin: 0;
    scroll-behavior: smooth;
}

figure {
    margin: 0;
}

iframe {
    border: none;
}

.body .wp-block-embed {
    margin-bottom: 0;
}


/* Align All Items Center, with max-width limited to 1440px */

.inner-bkg {
    max-width: 1440px;
    margin: 0 auto;
}


/* Style for font */

p {
    font-size: 15px;
    font-weight: 400;
    /* refer to description, font-size: 15px, line-height: 20px --> approximate 1.33 line-height */
    line-height: 1.33;
    letter-spacing: 0.5px;
    color: #766E63;
    word-break: break-word;
}

p a,
li a {
    letter-spacing: 0.2px;
}


/* remove margin top and bottom for html tag inside any mira block */

div[class^="wp-block-mira"] p,
div[class*=" wp-block-mira"] p {
    margin-top: 0;
    margin-bottom: 0;
}

div[class^="wp-block-mira"] h1,
div[class*=" wp-block-mira"] h1,
div[class^="wp-block-mira"] h2,
div[class*=" wp-block-mira"] h2,
div[class^="wp-block-mira"] h3,
div[class*=" wp-block-mira"] h3,
div[class^="wp-block-mira"] h4,
div[class*=" wp-block-mira"] h4,
div[class^="wp-block-mira"] h5,
div[class*=" wp-block-mira"] h5,
div[class^="wp-block-mira"] h6,
div[class*=" wp-block-mira"] h6 {
    margin-top: 0;
    margin-bottom: 0;
}

div[class^="wp-block-mira"] ol,
div[class*=" wp-block-mira"] ol,
div[class^="wp-block-mira"] ul,
div[class*=" wp-block-mira"] ul {
    margin-top: 0;
    margin-bottom: 0;
}


/* default style for all <a> tag inside <p>/<li> tag. E.g. hyperlink inside description sub-block*/

a {
    font-family: var(--hyperlink-font-family);
    font-weight: 800;
    font-style: italic;
    color: var(--hyperlink-text-color);
    cursor: pointer;
    text-decoration: none;
}


/* chinese */


/* a:lang(zh) {
    font-style: normal;
} */

a>* {
    font-family: inherit;
}

a:hover {
    text-decoration: underline;
    text-underline-position: under;
}


/* for heading */

h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: 500;
    letter-spacing: 0.6px;
    word-break: break-word;
}


/* chinese */

h1:lang(zh),
h2:lang(zh),
h3:lang(zh),
h4:lang(zh),
h5:lang(zh),
h6:lang(zh) {
    font-weight: 600;
}

h1,
h2 {
    font-size: 24px;
    line-height: 28px;
}

h3 {
    font-size: 20px;
    line-height: 24px;
}

h4 {
    font-size: 18px;
    line-height: 22px;
}

h5 {
    font-size: 14px;
    line-height: 18px;
}

h6 {
    font-size: 12px;
    line-height: 16px;
}


/* for list */

li {
    color: inherit;
    font-size: 15px;
    letter-spacing: 0.5px;
    line-height: 20px;
    word-break: break-word;
}


/* remove wordpress default padding when add background color to "columns" block inside components */

div[class^="wp-block-mira"] .wp-block-columns.has-background,
div[class*=" wp-block-mira"] .wp-block-columns.has-background {
    padding: 0;
}


/* remove small spacing below wordpress image block */

.wp-block-image img {
    display: block;
}


/* All component under .body should have both padding left and right
 Except
    hero image 
    product card 
    %col-tier-table-block
    wp-block-mira-iframe-block
    wp-block-mira-image-block
    booking-widget-container
    three-col-card-block
 */

.body>*:not([class*='hero']):not([class*='product-card']):not([class*='col-tier-table-block']):not(.wp-block-mira-iframe-block):not(.wp-block-mira-image-block):not(.booking-widget-container):not(#main),
.body>#main>*:not([class*='hero']):not([class*='product-card']):not([class*='col-tier-table-block']):not(.wp-block-mira-iframe-block):not(.wp-block-mira-image-block):not(.booking-widget-container) {
    padding-left: var(--component-spacing-left-right);
    padding-right: var(--component-spacing-left-right);
}


/* <select> arrow style */

select {
    -webkit-appearance: none;
    -moz-appearance: none;
    background-position: right;
    background-image: url("../form-down-arrow-svg_1.svg");
    background-size: 40px 11px;
    background-repeat: no-repeat;
    cursor: pointer;
}


/* hide elements only show on editor (those elements will be removed in scripts.js) */

.editor-only,
.desktop-tag,
.mobile-tag {
    display: none;
}


/* header related */

header {
    position: fixed;
    width: 100%;
    max-width: 1440px;
    height: 100px;
    background: white;
    -webkit-box-shadow: 0px 5px 5px rgba(0, 0, 0, 0.25);
    box-shadow: 0px 5px 5px rgba(0, 0, 0, 0.25);
    z-index: 10;
}


/* header logo */

.header-logo-wrapper {
    position: relative;
    margin: 0 auto 15px;
}

.header-logo-wrapper,
.header-logo {
    width: 220px;
    height: 85px;
    -o-object-fit: contain;
    object-fit: contain;
}


/* remove default button style */

.remove-button-style {
    background-color: transparent;
    border: none;
    outline: none;
    cursor: pointer;
    padding: 0;
}


/* custom select box */


/* The container must be positioned relative: */

.custom-select {
    position: relative;
}

.custom-select select {
    display: none;
    /* hide original SELECT element: */
}


/* Style the arrow inside the select element: */

.select-selected:after {
    content: "";
    position: absolute;
    top: 3px;
    right: 0;
    width: 25px;
    height: 15px;
    background-image: url("../images/arrow.svg");
    background-size: 25px;
    background-repeat: no-repeat;
    cursor: pointer;
    -webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg);
}

.book-room-menu .select-selected:after {
    top: 15px;
    /* black */
    -webkit-filter: brightness(0);
    filter: brightness(0);
    margin-right: 5px;
    -webkit-transition-duration: 0.5s;
    -o-transition-duration: 0.5s;
    transition-duration: 0.5s;
    -webkit-transition-property: -webkit-transform;
    transition-property: -webkit-transform;
    -o-transition-property: transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
}


/* Point the arrow upwards when the select box is open (active): */

.select-selected.select-arrow-active:after {
    -webkit-transform: rotate(0);
    -ms-transform: rotate(0);
    transform: rotate(0);
}


/* style the items (options), including the selected item: */

.select-selected {
    color: #ffffff;
    font-size: 16px;
    font-weight: 500;
    background-color: transparent;
    cursor: pointer;
}


/* chinese */

.select-selected:lang(zh) {
    font-weight: 600;
}

.book-room-menu .select-selected {
    color: #000000;
    font-weight: 400;
    background-color: #ffffff;
    padding: 10px;
}


/* chinese */

.book-room-menu .select-selected:lang(zh) {
    font-weight: 400;
}

.select-items>* {
    font-size: 16px;
    color: #716c5e;
    padding: 7px 30px;
    border: 1px solid transparent;
    border-color: transparent transparent rgba(113, 108, 94, 0.3) transparent;
    cursor: pointer;
}


/* Style items (options): */

.select-items {
    position: absolute;
    max-height: 200px;
    overflow-y: scroll;
    background-color: #ffffff;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 99;
    list-style: none;
    -webkit-margin-before: 0;
    margin-block-start: 0;
    -webkit-margin-after: 0;
    margin-block-end: 0;
    -webkit-padding-start: 0;
    padding-inline-start: 0;
}

.book-room-menu .select-items {
    top: 100%;
    bottom: auto;
    border-top: 1px solid rgba(113, 108, 94, 0.5);
}


/* Hide the items when the select box is closed: */

.select-hide {
    display: none;
}

.select-items>*:hover,
.same-as-selected {
    background-color: rgba(113, 108, 94, 0.2);
}


/* menu container */

.main-nav-menu-container,
.sub-nav-menu-container,
.book-room-menu-container {
    position: absolute;
    width: 445px;
    max-width: 100%;
    height: 100vh;
    top: 0;
    z-index: 11;
    overflow-x: hidden;
    overflow-y: scroll;
    /* hide scroll bar  */
    /* IE and Edge */
    -ms-overflow-style: none;
    /* Firefox */
    scrollbar-width: none;
    padding-bottom: 100px;
}


/* WPML language switcher in Header */

header .wpml-ls {
    position: relative;
    top: 0;
    float: right;
    padding: 15px;
}


/* main navigation menu */

.main-nav-menu-container {
    left: 0;
    background-color: #716c5e;
}

.main-nav-menu-list,
.main-nav-menu-list ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.main-nav-menu-list li {
    padding: 17px 80px;
}

.main-nav-menu-list li,
.main-nav-menu-list li a,
.horizontal-hyperlink-menu ul li,
.horizontal-hyperlink-menu ul li a,
header .wpml-ls li a {
    font-family: var(--general-font-family);
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 22px;
    letter-spacing: 0.8px;
    text-transform: uppercase;
    color: #E0E0E0;
    cursor: pointer;
}

.main-nav-menu-list li:hover,
.horizontal-hyperlink-menu li:hover,
header .wpml-ls li:hover {
    background-color: var(--header-menu-hover-background-color);
}

.main-nav-menu-list li.selected-menu-item {
    background-color: var(--hyperlink-text-color);
}

.main-nav-menu-list li.selected-menu-item a {
    color: #ffffff;
}

.main-nav-menu-list li:hover a,
.horizontal-hyperlink-menu li:hover a,
header .wpml-ls li:hover a {
    color: #ffffff;
    text-decoration: none;
}


/* horizontal hyperlink menu */

.horizontal-hyperlink-menu {
    padding: 40px 0;
}

.horizontal-hyperlink-menu ul {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
    list-style: none;
    padding: 0;
    margin: 0;
}

.horizontal-hyperlink-menu ul li {
    padding-top: 20px;
    padding-bottom: 20px;
}

.horizontal-hyperlink-menu ul>:nth-child(odd) {
    padding-left: 80px;
}

.horizontal-hyperlink-menu ul>:nth-child(even) {
    padding-left: 20%;
    padding-right: 80px;
    border-left: 2px solid #898278;
}


/* main nav menu image container */

.main-nav-menu-image-container {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 20px 1fr;
    grid-template-columns: 1fr 1fr;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    row-gap: 20px;
    -webkit-column-gap: 20px;
    -moz-column-gap: 20px;
    column-gap: 20px;
    padding: 20px 40px 60px;
    margin: 0;
}

.main-nav-menu-image-container img {
    display: block;
    width: 100%;
    /* avoid PNG become blurry after scaling down */
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    transform: translateZ(0);
}


/* sub navigation menu */

.sub-nav-menu-container,
.book-room-menu-container {
    right: 0;
    /* rgba color */
    background-color: var(--header-sub-menu-background-color);
}

.sub-nav-menu,
.book-room-menu {
    margin-top: 70px;
}

.sub-nav-menu>*,
.book-room-menu>form>* {
    padding-left: var(--header-sub-menu-padding-left-right);
    padding-right: var(--header-sub-menu-padding-left-right);
}

.sub-nav-menu-list ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.sub-nav-menu-list ul ul {
    padding-left: var(--header-sub-menu-padding-left-right);
}

.sub-nav-menu-list li {
    padding: 20px 0;
}

.sub-nav-menu-list ul ul li {
    padding: 20px 0;
}

.sub-nav-menu-list ul ul li:first-child {
    padding-top: 40px;
}

.sub-nav-menu-list ul ul li:last-child {
    /* remove last child padding bottom */
    padding-bottom: 0;
}


/* fisrt layer hyperlink */

.sub-nav-menu-list li,
.sub-nav-menu-list li a {
    font-family: var(--general-font-family);
    font-size: 18px;
    font-style: normal;
    font-weight: 500;
    text-decoration: none;
    line-height: 22px;
    letter-spacing: 0.6px;
    color: #ffffff;
    cursor: pointer;
}

.sub-nav-menu-list li a:hover {
    border-bottom: 1px solid currentColor;
}


/* chinese */

.sub-nav-menu-list li:lang(zh),
.sub-nav-menu-list li a:lang(zh) {
    font-weight: 600;
}


/* second and inner layer hyperlink */

.sub-nav-menu-list ul ul li,
.sub-nav-menu-list ul ul li a {
    font-size: 16px;
    line-height: 20px;
}


/* book room menu */

.date-input-container {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 20px 1fr;
    grid-template-columns: 1fr 1fr;
    -webkit-column-gap: 20px;
    -moz-column-gap: 20px;
    column-gap: 20px;
}

.book-selection-container {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 20px 1fr 20px 1fr;
    grid-template-columns: 1fr 1fr 1fr;
    -webkit-column-gap: 20px;
    -moz-column-gap: 20px;
    column-gap: 20px;
}

.date-input-container,
.book-selection-container {
    padding-bottom: 10px;
}

.book-room-menu-container input,
.book-room-menu-container select {
    width: 100%;
    outline: none;
    font-size: 16px;
    font-weight: 400;
    line-height: 20px;
    letter-spacing: 0.8px;
    padding: 10px 5px;
    cursor: pointer;
}

.book-room-menu-container select {
    cursor: pointer;
    background-size: 40px 9px;
}

.book-room-menu-label {
    font-size: 18px;
    font-weight: 500;
    line-height: 22px;
    letter-spacing: 0.8px;
    padding: 20px 0 10px;
}


/* chinese */

.book-room-menu-label:lang(zh) {
    font-weight: 600;
}

.promo-code-container {
    padding-bottom: 20px;
}

.corporate-code-container {
    padding-bottom: 40px;
}

.submit-button-container {
    padding-bottom: 20px;
}

.book-room-menu-label {
    display: block;
    color: #ffffff;
}

.promo-code-label,
.corporate-code-label {
    font-style: italic;
    font-weight: 500;
}


/* chinese */

.promo-code-label:lang(zh),
.corporate-code-label:lang(zh) {
    font-weight: 600;
    /* font-style: normal; */
}

.book-room-menu-container .promo-code-input,
.book-room-menu-container .corporate-code-input {
    font-weight: 500;
    color: #ffffff;
    background-color: transparent;
    border: none;
    border-bottom: 2px solid #ac93bb;
    cursor: initial;
}


/* check availability button */

.book-menu-submit-button {
    width: 100%;
    font-size: 18px;
    font-weight: 400;
    line-height: 22px;
    letter-spacing: 0.7px;
    color: #ffffff;
    background-color: #716c5e;
    padding: 20px 0;
}

.book-menu-submit-button:hover {
    background-color: var(--button-hover-background-color);
}


/* modify reservation hyperlink */

.modify-reservation-hyperlink {
    padding: 20px 0;
    text-align: center;
    cursor: pointer;
}

.modify-reservation-hyperlink-content {
    width: 100%;
    font-family: var(--hyperlink-font-family);
    font-size: 18px;
    font-weight: 500;
    line-height: 22px;
    letter-spacing: 0.7px;
    color: #ffffff;
}


/* chinese */

.modify-reservation-hyperlink-content:lang(zh) {
    font-weight: 600;
}

.modify-reservation-hyperlink-content:hover {
    text-decoration: none;
}


/* Chrome, Safari and Opera hide scroll bar inside menu */

.main-nav-menu-container::-webkit-scrollbar,
.book-room-menu-container::-webkit-scrollbar,
.sub-nav-menu-container::-webkit-scrollbar {
    display: none;
}


/* common class in menus */

.menu-heading {
    color: #ffffff;
    font-size: 28px;
    line-height: 32px;
    letter-spacing: 0.6px;
    padding-top: 15px;
    padding-bottom: 15px;
    margin: 0;
}


/* open & close button for main nav menu */

.open-main-nav-toggle {
    position: absolute;
    top: 30px;
    left: var(--component-spacing-left-right);
    padding: 5px 0;
}

.close-main-nav-toggle {
    margin: 15px 20px;
}


/* image inside open button for main nav menu */

.open-main-nav-image {
    display: block;
    width: 45px;
    height: 30px;
    fill: #716c5e;
}


/* close menu image */

.close-menu-image {
    display: block;
    width: 20px;
    height: 20px;
}

.close-sub-nav-toggle,
.close-book-room-menu-toggle {
    position: absolute;
    top: 0;
    right: 0;
    margin: 35px;
}


/* toggle button for book room menu & sub mav menu */

.header-button-group {
    position: absolute;
    max-width: 30%;
    top: 30px;
    right: var(--component-spacing-left-right);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}


/* button spacing between two menu button */

.header-button-group>.desktop-header-button:not(:nth-child(2)) {
    margin-right: 20px;
}


/* <button> in Header */

.book-room-menu-toggle,
.sub-nav-menu-toggle,
.mobile-book-toggle,
.mobile-book-room-menu-toggle,
.mobile-sub-nav-menu-toggle {
    min-height: 40px;
    background-color: #716c5e;
    font-size: 16px;
    font-weight: 400;
    color: #ffffff;
    -webkit-box-shadow: 5px 5px 15px rgba(0, 0, 0, 0.15);
    box-shadow: 5px 5px 15px rgba(0, 0, 0, 0.15);
    padding: 0 20px;
}

.book-room-menu-toggle:hover,
.sub-nav-menu-toggle:hover {
    background-color: var(--button-hover-background-color);
}


/* hide Mobile toggle button and button group container */

.mobile-book-toggle,
#mobile-book-button-container {
    display: none;
}


/* header related END */


/* footer related */

.footer-top {
    background-color: #c6c4bf;
}

.footer-top>*,
.footer-bottom>* {
    padding-left: var(--component-spacing-left-right);
    padding-right: var(--component-spacing-left-right);
}

.footer-bottom {
    background-color: var(--hyperlink-text-color);
}

.footer-heading-wrapper>:not(.footer-heading) {
    /* hide everything except title */
    display: none;
}

.footer-heading {
    text-align: center;
    margin: 0;
    padding: 50px 0 30px;
}

.footer-columns {
    width: 100%;
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 30px 1fr 30px 1fr 30px 1fr;
    grid-template-columns: repeat(4, 1fr);
    row-gap: 40px;
    -webkit-column-gap: 30px;
    -moz-column-gap: 30px;
    column-gap: 30px;
    padding-bottom: 50px;
}

.footer-column img,
.footer-column svg {
    width: 30px;
    height: 30px;
    -o-object-fit: contain;
    object-fit: contain;
    margin-right: 10px;
}

.footer-column svg,
.footer-column svg>* {
    fill: #000000;
}

.footer-menu-subheading,
.footer-column p,
.footer-column a,
.footer-take-action-label {
    font-family: var(--general-font-family);
    font-size: 15px;
    font-style: normal;
    font-weight: 300;
    color: #000000;
    line-height: 18px;
    letter-spacing: 0.6px;
    text-decoration: none;
}


/* chinese */

.footer-menu-subheading:lang(zh),
.footer-column p:lang(zh),
.footer-column a:lang(zh),
.footer-take-action-label:lang(zh) {
    font-weight: 400;
}

.footer-column a:hover {
    -webkit-text-decoration-line: underline;
    text-decoration-line: underline;
    -webkit-text-decoration-style: solid;
    text-decoration-style: solid;
    -webkit-text-decoration-color: var(--hyperlink-text-color);
    text-decoration-color: var(--hyperlink-text-color);
    text-underline-position: under;
}

.footer-menu-subheading {
    margin: 0;
    padding: 10px 0;
}


/* chinese */

.footer-menu-subheading:lang(zh) {
    font-weight: 400;
}

.footer-column p {
    margin: 0;
    padding-bottom: 10px;
}

.footer-column ul {
    list-style: none;
    margin: 0;
    padding: 0;
}


/* footer take action menu */

.footer-take-action-menu {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 15% 50px 1fr 50px 15% 50px 1fr;
    grid-template-columns: 15% 1fr 15% 1fr;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    row-gap: 40px;
    -webkit-column-gap: 50px;
    -moz-column-gap: 50px;
    column-gap: 50px;
    padding-bottom: 40px;
}


/* text in footer take action menu */

.footer-take-action-label {
    margin: 0;
}


/* button in footer take action menu */

.footer-take-action-menu>:nth-child(even) {
    width: 100%;
    text-align: center;
    background-color: #ffffff;
    border: 1px solid #716c5e;
    cursor: pointer;
}

.footer-take-action-menu>:nth-child(even) p,
.footer-take-action-menu>:nth-child(even) a {
    font-size: 15px;
    font-weight: 600;
    font-style: italic;
    line-height: 18px;
    letter-spacing: 0.4px;
    color: var(--hyperlink-text-color);
    text-decoration: none;
    margin: 0;
}

.footer-take-action-menu>:nth-child(even) p:hover {
    background-color: var(--hyperlink-hover-background-color);
}


/* chinese */


/* .footer-take-action-menu>:nth-child(even) p:lang(zh),
.footer-take-action-menu>:nth-child(even) a:lang(zh) {
    font-style: normal;
} */

.footer-take-action-menu>:nth-child(even) p {
    padding: 10px;
}


/* footer internal link menu */

.footer-internal-link-menu {
    padding-top: 20px;
}

.footer-internal-link-menu ul {
    list-style: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 0;
    margin: 0;
}

.footer-internal-link-menu ul li {
    padding-bottom: 10px;
}

.footer-internal-link-menu ul li:not(:last-child) {
    margin-right: 20px;
}

.footer-internal-link-menu ul li,
.footer-internal-link-menu ul li a,
.footer-copyright {
    font-family: var(--general-font-family);
    font-size: 10px;
    font-weight: 400;
    font-style: normal;
    color: #ffffff;
    line-height: 14px;
    letter-spacing: 0.4px;
    text-decoration: none;
}

.footer-internal-link-menu ul li,
.footer-internal-link-menu ul li a {
    text-transform: uppercase;
}

.footer-internal-link-menu ul li a:hover {
    text-decoration: underline;
    text-underline-position: under;
}


/* footer copyright */

.footer-copyright {
    letter-spacing: 0;
    text-align: center;
    padding: 10px 5px 15px;
    margin: 0;
}


/* footer related END */


/* disable scroll */

body.disable-scroll {
    overflow-y: hidden;
    height: 100%;
}


/* hide widget title */

.widget-hidden-title {
    display: none;
}


/* cover image, use an image as the background of a component */

.wp-block-cover-image .wp-block-cover__inner-container,
.wp-block-cover .wp-block-cover__inner-container {
    width: 100%;
}


/* Image Tooltip */

.mira-tooltip {
    display: inline-block;
    cursor: pointer;
    background-color: initial;
    color: inherit;
    border-bottom: 3px dotted var(--hyperlink-text-color);
}


/* fix tooltip text indent when tooltip text is inside "List(mira)" sub-block */

.wp-block-mira-list-block .mira-tooltip {
    text-indent: 0;
}

.ui-tooltip.ui-widget-shadow {
    opacity: 1;
    padding: 5px;
    max-width: 100%;
    -webkit-transition: top 0.2s ease 0s;
    -o-transition: top 0.2s ease 0s;
    transition: top 0.2s ease 0s;
}


/* hide image associated with tooltip before tooltip initialize */

.mira-tooltip-image {
    position: absolute;
    visibility: hidden;
}

.ui-tooltip .mira-tooltip-image {
    display: block;
    max-width: 100%;
    height: auto;
    background-color: #fff;
    /* reset */
    position: initial;
    visibility: initial;
}


/* inline image vertical align with text */

h1 img,
h2 img,
h3 img,
h4 img,
h5 img,
h6 img,
p img {
    vertical-align: middle;
}


/* datepicker style */

#ui-datepicker-div {
    width: 250px;
    height: auto;
    -webkit-box-shadow: 3px 4px 15px rgba(0, 0, 0, 0.15);
    box-shadow: 3px 4px 15px rgba(0, 0, 0, 0.15);
}

.ui-datepicker .ui-datepicker-header {
    border: none;
    background: none;
}

.ui-datepicker-title {
    font-size: 16px;
    font-weight: 500;
    font-style: normal;
    color: var(--hyperlink-text-color);
}

.ui-datepicker-calendar thead th {
    font-size: 14px;
    font-style: normal;
    font-weight: normal;
    color: #716c5e;
}

.ui-datepicker td.ui-datepicker-unselectable span {
    background: #ffffff;
    border: none;
}

.ui-widget-content a {
    font-style: initial;
}

div.ui-datepicker td span,
div.ui-datepicker td a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}


/* datepicker "Today" style */

.ui-widget-content .ui-state-disabled.ui-datepicker-today {
    opacity: 1;
}

.ui-widget-content .ui-datepicker-today a.ui-state-default,
.ui-widget-content .ui-datepicker-today span.ui-state-default {
    color: #ffffff;
    background: #716c5e;
}

.ui-state-default,
.ui-widget-content a.ui-state-default {
    width: 30px;
    height: 30px;
    font-size: 14px;
    color: #716c5e;
    text-decoration: none;
    background: #ffffff;
    border: none;
    -webkit-transition: 0.3s all;
    -o-transition: 0.3s all;
    transition: 0.3s all;
}

.ui-datepicker-calendar tbody td a:hover {
    border: 1px solid var(--hyperlink-text-color);
}


/* highlight day in datepicker */

.ui-widget-content .day-highlight a.ui-state-default,
.ui-widget-content .day-highlight span.ui-state-default {
    color: #ffffff;
    background: var(--hyperlink-text-color);
}

.ui-widget-content .day-highlight.ui-state-disabled {
    opacity: 1;
}


/* sorry page */

.mira-display-menu {
    color: #766E63;
}

.mira-display-menu ul {
    list-style-type: disc;
}


/* Plugin: GDPR Cookie Compliance custom style */

aside#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme {
    background-color: #716c5e;
    border-top: none;
    z-index: 1400;
}

aside#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container {
    width: 100%;
    max-width: 1440px;
    padding: 10px 0;
}

aside#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content span.change-settings-button,
aside#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content span.change-settings-button:hover {
    font-weight: 800;
    color: #ffffff;
}

aside#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content a.mgbutton,
aside#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton,
aside#moove_gdpr_cookie_info_bar:not(.gdpr-full-screen-infobar).moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton.moove-gdpr-infobar-settings-btn {
    font-size: 14px;
    font-weight: 500;
    color: #ffffff;
    background-color: var(--button-hover-background-color);
    border: none;
    -webkit-box-shadow: none;
    box-shadow: none;
    opacity: 1;
    padding: 15px 20px;
}


/* chinese */

aside#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content a.mgbutton:lang(zh),
aside#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton:lang(zh),
aside#moove_gdpr_cookie_info_bar:not(.gdpr-full-screen-infobar).moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton.moove-gdpr-infobar-settings-btn:lang(zh) {
    font-weight: 600;
}

aside#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-button-holder .moove-gdpr-infobar-close-btn {
    opacity: 1;
    -webkit-box-shadow: none;
    box-shadow: none;
}

aside#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-button-holder .moove-gdpr-infobar-close-btn:hover {
    background-color: var(--button-hover-background-color);
}

aside#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button:hover {
    color: #ffffff;
}

aside#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content a.mgbutton:hover,
aside#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton:hover,
aside#moove_gdpr_cookie_info_bar:not(.gdpr-full-screen-infobar).moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton.moove-gdpr-infobar-settings-btn:hover {
    color: #ffffff;
    background-color: #716c5e;
}


/* cookie consent popup window */

div#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 {
    border-radius: 0;
}

div#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-branding-cnt {
    display: none;
}

div#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main .moove-gdpr-tab-main-content a,
div#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main .moove-gdpr-tab-main-content a:hover {
    font-weight: 800;
    color: var(--hyperlink-text-color);
}

div#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main .moove-gdpr-tab-main-content a {
    text-decoration: none;
}

div#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main .moove-gdpr-tab-main-content a:hover {
    text-decoration: underline;
    text-underline-position: under;
}

div#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-close span.gdpr-icon,
div#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content .moove-gdpr-button-holder button.mgbutton {
    font-size: 14px;
    font-weight: 500;
    color: #ffffff;
    background-color: #716c5e;
    border: none;
}


/* chinese */

div#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-close span.gdpr-icon:lang(zh),
div#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content .moove-gdpr-button-holder button.mgbutton:lang(zh) {
    font-weight: 600;
}

div#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content .moove-gdpr-button-holder button.mgbutton {
    padding: 15px 35px;
}

div#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-close span.gdpr-icon:hover,
div#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content .moove-gdpr-button-holder button.mgbutton.moove-gdpr-modal-save-settings:hover,
div#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content .moove-gdpr-button-holder button.mgbutton:hover {
    color: #ffffff;
    background-color: var(--button-hover-background-color);
}


/* Plugin: Viusal Portfolio, Hashbar - Wordpress Notification Bar.
    Hide all notification bar & cookie consent inside Visual Portfolio preview in editor */

.vp-preview-body .ht-notification-section,
.vp-preview-body #moove_gdpr_cookie_info_bar {
    display: none !important;
}


/* Plugin: Visual Portfolio settings */

body .vp-portfolio {
    /* image item background color */
    --vp-images-lazy__background-color: transparent;
    /* padding for carousel bullet point */
    --vp-layout-slider--bullets__margin-top: 45px;
    /* carousel previous & next arrow */
    --vp-layout-slider--arrows__box-shadow: 0 0px 0px 0px rgba(0, 0, 0, 0);
    --vp-layout-slider--arrows-hover__box-shadow: 0 0px 0px 0px rgba(0, 0, 0, 0);
    --vp-layout-slider--arrows__background-color: transparent;
    --vp-layout-slider--arrows__border-radius: 0px;
    --vp-layout-slider--arrow__color: #565550;
    --vp-layout-slider--arrows__opacity: 1;
    /* gallery load more button margin */
    --vp-elements__gap: 40px;
}

body .vp-portfolio a {
    font-family: var(--general-font-family);
    font-weight: 400;
}

body .vp-portfolio-not-found {
    display: none;
}

body .vp-portfolio .vp-portfolio__items-wrap {
    margin-bottom: 0px;
}


/* for Visual Portfolio Preview in backend Editor */

body .vp-preview-type-gutenberg .vp-portfolio .vp-portfolio__items-wrap {
    margin-bottom: var(--vp-elements__gap);
}

body .vp-preview-body {
    max-width: 100% !important;
}


/* Preview Visual Portfolio carousel */

body .vp-preview-type-gutenberg .vp-portfolio {
    max-width: 1080px;
    margin-left: auto;
    margin-right: auto;
}


/* visual portfolio bullet point */

[data-vp-layout="slider"] .vp-portfolio__items-bullets {
    bottom: 15px;
}

body .swiper-pagination-bullet {
    color: var(--carousel-bullet-color);
}

[data-vp-layout="slider"] .vp-portfolio__items-bullets>span:not(:last-child) {
    margin-right: 15px;
}


/* visual portfolio carousel previous & next arrow */

[data-vp-layout="slider"] .vp-portfolio__items-arrow-prev:before,
[data-vp-layout="slider"] .vp-portfolio__items-arrow-next:before {
    font-size: 50px;
    font-weight: 200;
    -webkit-transform: scale(1, 3);
    -ms-transform: scale(1, 3);
    transform: scale(1, 3);
}

[data-vp-layout="slider"] .vp-portfolio__items-arrow-prev:focus,
[data-vp-layout="slider"] .vp-portfolio__items-arrow-next:focus {
    outline: none;
}

[data-vp-layout="slider"] .vp-portfolio__items-arrow-prev:before {
    content: '<';
}

[data-vp-layout="slider"] .vp-portfolio__items-arrow-next:before {
    content: '>';
}

[data-vp-layout="slider"] .vp-portfolio__items-arrow-prev>svg,
[data-vp-layout="slider"] .vp-portfolio__items-arrow-next>svg {
    display: none;
}

[data-vp-layout="slider"] .vp-portfolio__items-arrow.swiper-button-disabled {
    color: #d6d5d1;
    cursor: default;
}


/* for custom load more function */

body .vp-hidden {
    display: none;
}


/* visual portfolio load more button */

.wp-block-visual-portfolio .vp-portfolio__layout-elements>.vp-portfolio__pagination-wrap .vp-pagination {
    margin-top: var(--vp-elements__gap);
}

body .vp-pagination__item {
    background-color: #716c5e;
    color: white;
}

body .vp-pagination__item:hover {
    background: var(--button-hover-background-color);
    cursor: pointer;
}

body .vp-pagination__item>a.vp-pagination__load-more:hover {
    color: white;
}

body .vp-pagination__item>a.vp-pagination__load-more {
    text-transform: uppercase;
    font-size: 14px;
    font-weight: 500;
    font-style: initial;
    line-height: 20px;
    letter-spacing: 0.7px;
    word-break: break-word;
    text-align: center;
    text-decoration: none;
    margin: 0 auto;
    padding: 15px 45px;
}


/* chinese */

body .vp-pagination__item>a.vp-pagination__load-more:lang(zh) {
    font-weight: 600;
}


/* visual protfolio popup image caption */

body .vp-pswp .pswp__caption>div {
    max-width: 80%;
    margin: 0px auto;
}

body .pswp__caption__center {
    text-align: center;
}


/* visual portfolio image title below image */

body .vp-portfolio__item-meta-title {
    font-style: initial;
}

body .vp-portfolio__item-meta-title a {
    /* remove default hyperlink style for hyperlink*/
    font-style: initial;
    cursor: initial;
}


/* popup image title, caption and description */

body .pswp__caption__center .vp-portfolio__item-popup-title,
body .pswp__caption__center .vp-portfolio__item-popup-description {
    font-weight: 400;
    font-size: 17px;
    line-height: 20px;
    letter-spacing: 0.8px;
}

body .pswp__caption__center .vp-portfolio__item-popup-title {
    margin-top: 0;
    margin-bottom: 0;
}

body .pswp__caption__center .vp-portfolio__item-popup-description {
    margin-top: 10px;
}


/* html quick anchor */

.mira-html-anchor {
    position: relative;
    /* header height (100px) */
    top: -100px;
    visibility: hidden;
}


/* html quick anchor with component spacing top */

.mira-html-anchor.with-top-spacing {
    top: calc(-100px - var(--component-spacing-top-bottom));
}


/* html quick anchor for single product card */

[class^="wp-block-mira-product-card"] .mira-html-anchor {
    top: -150px;
}


/* breadcrumbs */

.mira-breadcrumbs {
    padding-top: 40px;
    padding-bottom: 10px;
}

.mira-breadcrumbs,
.mira-breadcrumbs a {
    font-family: var(--hyperlink-font-family);
    font-style: italic;
    font-weight: bold;
    font-size: 14px;
    line-height: 20px;
    letter-spacing: 0.35px;
    color: var(--hyperlink-text-color);
}


/* chinese */


/* .mira-breadcrumbs:lang(zh),
.mira-breadcrumbs a:lang(zh) {
    font-style: normal;
} */

.body {
    padding-top: 100px;
    background-color: white;
}


/* back to top button */

.back-to-top-button-container {
    position: fixed;
    bottom: 0;
    width: 100%;
    max-width: 1440px;
    height: 0;
    z-index: 9;
}

#backToTopButton,
.back-to-top-button-content {
    width: 50px;
    height: 50px;
}

#backToTopButton {
    position: relative;
    float: right;
    bottom: 70px;
    right: 20px;
    background: #ffffff;
    -webkit-box-shadow: 0px 5px 5px rgba(0, 0, 0, 0.25);
    box-shadow: 0px 5px 5px rgba(0, 0, 0, 0.25);
}

.back-to-top-button-content {
    border: none;
    outline: none;
    cursor: pointer;
    padding: 0;
    background-color: #ffffff;
    background-image: url("../images/arrow-grey.svg");
    background-repeat: no-repeat;
    background-position: center;
    -webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg);
}

.back-to-top-button-content:hover {
    background-color: var(--hyperlink-text-color);
    background-image: url("../images/arrow.svg");
}

@media (max-width: 1024px) {
    .body {
        padding-top: 55px;
    }
    /* Mobile header */
    header {
        height: 55px;
    }
    .open-main-nav-toggle {
        top: 7px;
    }
    .open-main-nav-image {
        width: 35px
    }
    /* header logo */
    .header-logo-wrapper {
        margin-top: 3px;
        margin-bottom: 7px;
    }
    .header-logo-wrapper,
    .header-logo {
        width: 130px;
        height: 45px;
    }
    .header-button-group {
        top: 10px;
    }
    /* hide desktop toggle button and button group container */
    .book-room-menu-toggle,
    .sub-nav-menu-toggle {
        display: none;
    }
    /* show Mobile toggle button and button group container */
    .mobile-book-toggle {
        display: block;
        min-height: 35px;
    }
    #mobile-book-button-container {
        width: 100%;
        height: auto;
        background-color: #ffffff;
        margin-top: -1px;
    }
    .mobile-header-button-group {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        border-top: 1px solid #dedede;
        padding: 10px 0;
        margin: 0 5%;
    }
    .mobile-header-button-group>:not(:last-child) {
        margin-right: 20px;
    }
    .mobile-book-toggle,
    .mobile-book-room-menu-toggle,
    .mobile-sub-nav-menu-toggle {
        font-size: 14px;
        line-height: 18px;
    }
    .main-nav-menu-list li {
        padding: 16px 40px;
    }
    .horizontal-hyperlink-menu ul>:nth-child(odd) {
        padding-left: 40px;
    }
    .horizontal-hyperlink-menu ul>:nth-child(even) {
        padding-right: 40px;
    }
    .main-nav-menu-list li,
    .main-nav-menu-list li a,
    .horizontal-hyperlink-menu ul li,
    .horizontal-hyperlink-menu ul li a,
    header .wpml-ls li a {
        font-size: 14px;
        line-height: 18px;
    }
    .book-room-menu-label,
    .book-menu-submit-button,
    .modify-reservation-hyperlink-content {
        font-size: 14px;
        line-height: 18px;
    }
    .book-room-menu-container input,
    .book-room-menu-container select {
        font-size: 14px;
        line-height: 18px;
        padding: 5px;
    }
    /* book menu custom select box */
    .book-room-menu .select-selected {
        font-size: 14px;
        padding: 5px;
    }
    .book-room-menu .select-selected:after {
        top: 10px;
        width: 15px;
        height: 10px;
        background-size: 15px;
    }
    .book-room-menu .select-items>* {
        font-size: 14px;
        padding: 5px 20px;
    }
    /* for html anchor */
    .mira-html-anchor {
        /* header height (55px) + padding (10px) */
        top: -55px;
    }
    .mira-html-anchor.with-top-spacing {
        top: calc(-55px - var(--component-spacing-top-bottom));
    }
}

@media (max-width: 999px) and (min-width: 768px) {
    /* Plugin: GDPR Cookie Compliance custom style */
    div#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content .moove-gdpr-button-holder a.mgbutton,
    div#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content .moove-gdpr-button-holder button.mgbutton {
        -webkit-transform: none;
        -ms-transform: none;
        transform: none;
    }
}

@media (min-width: 600px) and (max-width: 781px) {
    /* remove wordpress default style */
    .body .wp-block-column {
        -webkit-box-flex: 1;
        -ms-flex-positive: 1;
        flex-grow: 1;
    }
}


/* max 768 */

@media (max-width: 768px) {
    /* for heading */
    h1,
    h2 {
        font-size: 20px;
        line-height: 24px;
    }
    h3 {
        font-size: 18px;
        line-height: 22px;
    }
    h4 {
        font-size: 14px;
        line-height: 18px;
    }
    h5 {
        font-size: 12px;
        line-height: 16px;
    }
    h6 {
        font-size: 10px;
        line-height: 14px;
    }
    /* main navigation menu */
    .horizontal-hyperlink-menu {
        padding: 20px 0;
    }
    /* book a room menu */
    .book-room-menu-container .promo-code-input {
        font-weight: 400;
    }
    /* footer related */
    .footer-heading {
        padding-bottom: 10px;
    }
    .footer-columns {
        -ms-grid-columns: 1fr 15px 1fr;
        grid-template-columns: 1fr 1fr;
        -ms-grid-rows: auto 20px auto;
        grid-template-rows: auto auto;
        grid-auto-flow: column;
        -webkit-column-gap: 15px;
        -moz-column-gap: 15px;
        column-gap: 15px;
        row-gap: 20px;
        padding-bottom: 30px;
    }
    .footer-menu-subheading {
        padding-bottom: 20px;
    }
    .footer-column p,
    .footer-column li {
        line-height: 28px;
        padding-bottom: 10px;
    }
    .footer-take-action-menu {
        -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
        row-gap: 10px;
    }
    .footer-take-action-label {
        text-align: center;
        padding-top: 10px;
    }
    /* breadcrumbs */
    .mira-breadcrumbs {
        padding-top: 20px;
        padding-bottom: 10px;
    }
    /* back to top button */
    .back-to-top-button-container {
        max-width: 768px;
    }
    #backToTopButton,
    .back-to-top-button-content {
        width: 40px;
        height: 40px;
    }
    #backToTopButton {
        right: 10px;
    }
    /* Tooltip image */
    .ui-tooltip .mira-tooltip-image {
        max-width: 300px;
    }
    /* Plugin: GDPR Cookie Compliance custom style */
    aside#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container {
        padding: 15px;
    }
    aside#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content a.mgbutton,
    aside#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton,
    aside#moove_gdpr_cookie_info_bar:not(.gdpr-full-screen-infobar).moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton.moove-gdpr-infobar-settings-btn,
    div#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content .moove-gdpr-button-holder button.mgbutton {
        padding: 10px;
    }
    aside#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton {
        width: 100%;
    }
    /* Plugin: Visual Portfolio */
    body .vp-portfolio {
        /* gallery load more button margin */
        --vp-elements__gap: 30px;
    }
    [data-vp-layout="grid"] .vp-portfolio__item-wrap .vp-portfolio__item {
        margin-top: calc(var(--vp-items__gap-vertical) - 5px);
        margin-left: calc(var(--vp-items__gap) - 5px);
    }
    /* visual portfolio load more button */
    body .vp-pagination__item>a.vp-pagination__load-more {
        line-height: 26px;
        font-size: 14px;
        padding: 5px 30px;
    }
    /* popup image title, caption and description */
    body .pswp__caption__center .vp-portfolio__item-popup-title,
    body .pswp__caption__center .vp-portfolio__item-popup-description {
        font-size: 17px;
        line-height: 20px;
        letter-spacing: 0.8px;
    }
    /* visual portfolio previous & next arrow */
    [data-vp-layout="slider"] .vp-portfolio__items-arrow-prev {
        left: -5px;
    }
    [data-vp-layout="slider"] .vp-portfolio__items-arrow-next {
        right: -5px;
    }
    [data-vp-layout="slider"] .vp-portfolio__items-arrow-prev:before,
    [data-vp-layout="slider"] .vp-portfolio__items-arrow-next:before {
        font-size: 40px;
    }
    /* visual portfolio carousel bullet size */
    [data-vp-layout="slider"] .vp-portfolio__items-bullets>.swiper-pagination-bullet {
        width: 10px;
        height: 10px;
    }
}