html{
    font-size: 1vw !important;
}
.item_banner img {
    width: 100%;
    height: 100vh;
    object-fit: cover;
}

.slider_banner.h_auto .item_banner img {
    height: auto;
}

.swiper-pagination  span {
    width: .4rem;
    height: .4rem;
    background: #BCBCBC;
    opacity: 1;
    margin: 0 !important;
    transition: .5s all;
}

html {
    font-size: 1vw;
}

.swiper-pagination {
    display: flex;
    justify-content: center;
    gap: .3rem;
}

.slider_banner .swiper-pagination {
    bottom: 5rem;
}

.swiper-pagination span.swiper-pagination-bullet.swiper-pagination-bullet-active {
    border-radius: 100px;
    width: .8rem;
    background: #1BAFFF;
}

.slider_nav_btn {
    margin: 0;
    position: absolute;
    top: 50%;
    z-index: 9;
    left: 1rem;
    width: 3.1rem;
    height: 3.1rem;
    background: #FFFFFF4A;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 100px;
    border: 1px solid #FFFFFF;
    backdrop-filter: blur(10px);
    left: 2.5rem;
    transform: translateY(-50%);
    padding: 0;
    transition: .5s all;
}

.slider_banner {
    position: relative;
}

button.slider_nav_btn.banner_next {
    left: unset;
    right: 2.5rem;
}

.slider_nav_btn svg {
    width: .8rem;
    height: auto;
}

.slider_nav_btn:hover {
    background: #1BAFFF;
    border-color: #1BAFFF;
}

body {
    font-size: .8rem;
    color: #047EC0;
    font-weight: 400;
}

h1, h2, h3, h4, h5, h6 {
    color: #047EC0;
    font-weight: 600;
}

.container, .container-width, .full-width .ubermenu-nav, .row {
    max-width: 97rem;
}
.col, .columns, .gallery-item {
    padding: 0 10px;
}

section.home2 {
    padding: 3.5rem 0;
}

span.sub_title {
    font-size: .75rem;
    font-weight: 600;
    text-transform: uppercase;
}

.heading_title {
    font-size: 1.6rem;
    font-weight: 500;
    text-transform: uppercase;
}
.heading_line {
    margin-bottom: 1.2rem;
    padding-bottom: 1.2rem;
    position: relative;
}

.heading_line:before {
    width: 3.1rem;
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    height: 1px;
    background: #047EC0;
}

.home2_group {
    max-width: 44rem;
}

.home2_group h1 {
    margin: 1.7rem 0 1.2rem;
}

.home2_slider {
    position: relative;
}
.home2_item {
    padding-bottom: 70%;
    position: relative;
    border-radius: .6rem;
    overflow: hidden;
}

.home2_item img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.home2_slider .swiper-slide {
    padding: 0 3rem;
    scale: 1;
    transition: 1s all;
}

.home2_slider .swiper-slide.swiper-slide-active {
    scale: 1.35;
}

.home2_slider .swiper {
    padding: 5rem 0;
    margin-top: 1rem;
}

.home2_slider {
    margin: 0 -3rem !important;
}
.slider_nav_btn[aria-label="Sau"] {
    left: unset;
    right: 2.5rem;
}

button.slider_nav_btn.home2_prev {
    left: 4.5rem;
}

button.slider_nav_btn.home2_next {
    left: unset;
    right: 4.5rem;
}
.swiper-pagination.style2 span {
    background: #fff;
}
.heading_title.pd_left {
    padding-left: 5rem;
}

.item_room {
    position: relative;
    background: #BCBCBC1A;
}

.item_room .box_img {
    padding-bottom: 56.25%;
    position: relative;
}

.item_room .box_img img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}


ul.list_button {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    list-style: none;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .7rem;
    z-index: 9;
    background: #00000080;
    opacity: 0;
    transition: 1s all;
}

ul.list_button li {
    margin: 0;
}

ul.list_button a {
    height: 3rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 1rem;
    text-transform: uppercase;
    font-weight: 600;
    min-width: 10rem;
    border: 1px solid #FFFFFF;
    border-radius: .5rem;
    transition: .5s all;
    background: rgb(217 217 217 / 10%);
    backdrop-filter: blur(4px);
    overflow: hidden;
    z-index: 0;
    position: relative;
}

ul.list_button a:hover {
}

ul.list_button a:before {
    content: '';
    background: linear-gradient(90deg, rgba(27, 175, 255, 0.57) 0%, rgba(145, 213, 255, 0.57) 100%);
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    opacity: 0;
    transition: .8s all;
}

ul.list_button a:hover:before {
    opacity: 1;
}

.item_room .box_content {
    padding: .8rem 1rem;
}

.item_room h3 {
    font-size: 1.2rem;
    font-weight: 600;
    margin-bottom: .5rem;
}

.item_room .content {
    color: #047EC0;
    font-size: 1rem;
}

ul.tien_ich {
    list-style: none;
    margin: 0;
    justify-content: space-between;
}

ul.tien_ich li {
    display: flex;
    align-items: center;
    color: #047EC0;
    gap: .4rem;
    margin: 0;
}

ul.tien_ich li svg {
    display: block;
    width: .8rem;
    height: auto;
}

.wrap_slider {
    position: relative;
}

.roomSlider .item_room {
    margin: 0 .6rem;
    cursor: pointer;
}

.roomSlider {
    margin: 0 -0.6rem;
}

section.home3 {
    padding-bottom: 4rem;
}

section.home4 {
    padding-top: 4rem;
}
.item_room:hover ul.list_button {
    opacity: 1;
}
.roomSlider .swiper-pagination {
    bottom: -2rem;
}
.home4_box {
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    background-attachment: fixed;
}

.home4Item .box_img {
    padding-bottom: 130%;
    position: relative;
}

.home4Item {
    border-radius: .6rem;
    overflow: hidden;
    transition: .6s all;
    opacity: .7;
}

.home4Item .box_img img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.home4Item .box_content {
    position: absolute;
    bottom: 0;
    width: 100%;
    padding: 1rem .7rem;
    align-items: center;
    gap: 2rem;
    z-index: 2;
}

.home4Item h3 {
    margin: 0;
    color: #fff;
    text-transform: uppercase;
    font-size: 1rem;
}

.home4Item a.button_link {
    flex: 0 0 auto;
}

.button_link {
    height: 2.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 1.2rem;
    color: #fff !important;
    text-transform: uppercase;
    font-weight: 700;
    font-size: 1rem;
    border: 1px solid #fff;
    border-radius: 100px;
    transition: .5s all;
    backdrop-filter: blur(8px);
}

.button_link:hover {
    background: rgb(27 175 255 / 45%);
}

.home4_slider .swiper-slide {
    scale: .85;
    transition: .6s all;
    border-radius: .6rem;
    overflow: hidden;
    background: #000;
}

.home4_slider .swiper-slide.swiper-slide-active {
    scale: 1.06;
}

.home4_slider {
    max-width: 80%;
    margin: auto;
}

.wrap_slider.home4_slider .swiper {
    padding: 5rem 0;
}
.title_line:before,.title_line:after {
    content: '';
    width: 100%;
    height: 1px;
    background: #fff;
    display: block;
}

.title_line {
    display: flex;
    align-items: center;
    white-space: nowrap;
    color: #fff;
    gap: 1rem;
    font-size: 2.4rem;
    font-weight: 500;
    text-transform: uppercase;
    line-height: normal;
    margin-bottom: .5rem;
}

.home5_content {
    color: #fff;
    text-align: center;
    font-size: .9rem;
    max-width: 50rem;
    margin: 0 auto 1.9rem;
}

section.home5 {
    padding: 2rem 0 2.4rem;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    background-attachment: fixed;
    margin-top: 5rem;
}
.home5Item {
    position: relative;
    padding: 1.5rem .7rem;
}

.home5Item .box_img {
    padding-bottom: 125%;
    position: relative;
    box-shadow: 0px 2px 3px 0px #00000040;
    border-radius: .6rem;
    overflow: hidden;
}

.home5Item .box_img img {
    height: 100%;
    width: 100%;
    object-fit: cover;
    position: absolute;
}

.home5Item h3 {
    color: #fff;
    text-align: center;
    display: block;
    font-size: 1.2rem;
    font-weight: 500;
    margin-top: 1.15rem;
}

.wrap_slider.home5Slider {
    max-width: 85%;
    margin: auto;
}
.home6Item .box_img {
    width: 9rem;
    height: 8.5rem;
    display: flex;
    margin: auto;
    align-items: center;
    justify-content: center;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: top .4rem center;
}

.home6Item .box_img img {
    width: 5.5rem;
    height: 5.5rem;
    border-radius: 50%;
}

.home6Item {
    box-shadow: 0px 0px 4px 0px #0000009C;
    background: #fff;
    border-radius: .6rem;
    margin: .6rem;
    padding: 1.7rem 1.7rem 1.2rem;
}

.wrap_slider.home6Slider {
    margin: 0 2rem;
}

section.home6 {
    padding: 5rem 0 2rem;
}

.home6Item h3 {
    text-align: center;
    font-weight: 500;
    font-size: .8rem;
    color: #000;
    max-width: 12.5rem;
    margin: 1rem auto 0;
}

.wrap_slider.home6Slider .swiper-pagination {
    bottom: -1rem;
}

section.home7 {
    padding-top: 3rem;
    padding-bottom: 2.5rem;
}
.text-center.home7_content {
    max-width: 43rem;
    margin: 0 auto 2rem;
}

.home7_item .box_img {
    height: 13rem;
    border-radius: .35rem;
    overflow: hidden;
    background: #000;
}

.home7_item .box_img img {
    height: 100%;
    width: 100%;
    object-fit: cover;
    opacity: 1;
    transition: .5s all;
}

.home7_list {
    width: 25%;
    display: flex;
    flex-direction: column;
    gap: 1.2rem;
}

.home7_box.flex {
    gap: 1.2rem;
}

.home7_item {
    position: relative;
    cursor: pointer;
}

.home7_item .box_content {
    position: absolute;
    bottom: 0;
    z-index: 9;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: .7rem;
    gap: .5rem;
}

.home7_item svg {
    width: 1.7rem;
    height: auto;
    display: flex;
}

.home7_item .content {
    color: #fff;
    font-size: .6rem;
    overflow: auto;
    line-height: 1.3;
    padding-right: .5rem;
    transition: .8s all;
    max-height: calc(100% - 3rem);
    display: none;
}

.home7_list:nth-child(even) .home7_item:nth-child(odd) .box_img {
    height: 28rem;
}

.home7_list:nth-child(odd) .home7_item:nth-child(even) .box_img {
    height: 28rem;
}

.home7_item:hover .content {
    display: block;
}

.button_style {
    display: inline-flex;
    align-items: center;
    color: #047EBF !important;
    font-size: 1rem;
    gap: .25rem;
    flex: 0 0 auto;
}

.button_style svg {
    width: 1.5rem;
    height: auto;
}

section.home7 a.button_style {
    margin: 1.5rem 3rem 0 0;
}

section.home8 {
    padding-top: 2.5rem;
}
.home8Box {
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    padding: 4.5rem 0 1.5rem;
}

.itemPost {
    position: relative;
    border-radius: .6rem .6rem 0 0;
    overflow: hidden;
    margin: 0 .8rem;
}

.itemPost .box_img {
    padding-bottom: 56.25%;
    position: relative;
}

.itemPost .box_img img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.itemPost .box_content {
    border: 1px solid #fff;
    border-top: none;
    background: rgb(255 255 255 / 10%);
    padding: 1rem 1.5rem;
    backdrop-filter: blur(20px);
    border-radius: 0 0 .6rem .6rem;
}

.itemPost h3 {
    font-size: 1.3rem;
    color: #fff;
    line-height: 1.4;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-line-clamp: 2;
    display: -webkit-box;
    -webkit-box-orient: vertical;
}

.nav_bottom {
    align-items: center;
    justify-content: space-between;
}

.box_meta {
    align-items: center;
}

.itemPost .box_meta {
    color: #fff;
    font-size: 1.2rem;
}

.itemPost .box_meta .icon svg {
    width: 1.4rem;
    height: auto;
    display: block;
}

.itemPost .box_meta .icon {
    margin-right: .3rem;
}

.box_meta  span {
    margin: 0 .4rem;
}

a.link_button {
    color: #fff;
    display: inline-flex;
    align-items: center;
    font-size: 1.2rem;
    gap: .15rem;
}

a.link_button svg {
    display: block;
    width: 1.3rem;
    height: auto;
}

.home8Box .row {
    max-width: 84rem;
}

.home8Box a.button_style {
    filter: brightness(0) invert(1);
}

.wrap_slider.home8Slider {
    margin-bottom: 1.5rem;
}
.home9_logo img {
    height: 3.7rem;
    width: auto;
    display: block;
    margin: auto;
}

section.home9 {
    padding: 6rem 0 2rem;
}

section.home10 {
    padding: 2rem 0 4.5rem;
}

.home9_content h2 {
    margin: 2.5rem 0;
    font-size: 1.6rem;
    color: #047EC0;
    font-weight: 500;
}

.home9_item {margin: 0 .65rem;text-align: center;padding: 1.7rem;position: relative;}

.home9_item h3 {
    font-size: 1.2rem;
    font-weight: 600;
    color: #435E92;
}
.home9_item:before {
    content: '';
    content: "";
    position: absolute;
    inset: 0;
    padding: 1px;
    background: linear-gradient(360deg, rgba(229, 229, 229, 0) 0%, #7F7F7F 100%);
    -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    pointer-events: none;
    border-radius: .6rem;
}

.home9_item h3 {
    max-width: 13rem;
    display: block;
    margin: 0 auto 1rem;
}

section.home10 .row {
    max-width: 50rem;
}

.item_qa h3 {
    display: flex;
    justify-content: space-between;
    color: #000000;
    font-weight: 400;
    font-size: .8rem;
    margin: 0;
    gap: 1rem;
    cursor: pointer;
    transition: .5s all;
}

.item_qa h3 svg {
    width: .9rem;
    height: auto;
    transition: .5s all;
    transform: rotate(0deg);
}

.item_qa {
    padding: 1rem 0;
    border-top: 1px solid #000000;
}

.item_qa .content {
    padding-top: .5rem;
    color: #666;
}

.item_qa.active h3 svg {
    transform: rotate(180deg);
}

a.load_qa {
    display: inline-flex;
    flex-direction: column;
    color: #047EC0;
    font-size: 1rem;
    gap: .5rem;
    cursor: pointer;
    margin-top: 1.4rem;
}

a.load_qa svg {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: auto;
    width: 1.3rem;
    transform: translateY(0);
    transition: .7s all;
}

a.load_qa:hover svg {
    transform: translateY(.5rem);
}

.item_qa.active h3 {
    color: #047EC0;
}
h1.title_head {
    text-transform: uppercase;
    font-size: 2rem;
    font-weight: 500;
    line-height: 1.2;
    margin-bottom: .5rem;
}

section.title_page {
    padding: 2rem 0 0;
}

ul.breadcrumbs {
    display: flex;
    list-style: none;
    margin: 0;
    padding: 0;
    gap: .4rem;
    font-size: .8rem;
    color: #7D7D7D;
    align-items: center;
}

ul.breadcrumbs li {
    margin: 0;
}

ul.breadcrumbs li svg {
    width: .3rem;
    height: auto;
    display: flex;
}

ul.breadcrumbs li.title {
    color: #047EC0;
    font-weight: 500;
}

.about1_content {
    max-width: 44rem;
    margin: 0 auto 4rem;
}

.group_heading .heading_title {
    margin-bottom: 1.2rem;
    padding-bottom: 1.2rem;
    position: relative;
}

.group_heading .heading_title:before {
    width: 3.1rem;
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    height: 1px;
    background: #047EC0;
}

section.experience1 {
    padding-top: 2rem;
}

.about1_content h1.heading_title {
    margin-top: 1.7rem;
}
.experience1_nav {
    justify-content: center;
    width: max-content;
    margin: 0 auto;
    list-style: none;
    gap: 4rem;
    padding-top: .75rem;
    border-top: 1px solid #7D7D7D;
}

.experience1_nav li {
    margin: 0;
    position: relative;
}

.experience1_nav ul.sub_nav {
    margin: 0;
    list-style: none;
    background: linear-gradient(180deg, rgba(27, 175, 255, 0.63) 0%, rgba(145, 213, 255, 0.63) 100%);
    border-radius: .5rem;
    padding: .2rem 0;
    position: absolute;
    z-index: 9;
    min-width: 100%;
    width: max-content;
    left: 50%;
    transform: translateX(-50%);
    padding: 0;
    backdrop-filter: blur(4px);
    opacity: 0;
    transition: .5s all;
    pointer-events: none;
}

.experience1_nav>li>a {
    height: 2.1rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: .5rem;
    color: #7D7D7D;
    font-size: .9rem;
    font-weight: 600;
    text-transform: uppercase;
    padding: 0 .4rem;
    position: relative;
    z-index: 0;
    overflow: hidden;
    transition: .5s all;
}

.experience1_nav>li>a.active {
    color: #fff;
}

.experience1_nav>li>a:before {
    content: '';
    position: absolute;
    background: linear-gradient(180deg, #1BAFFF 0%, #91D5FF 100%);
    height: 100%;
    z-index: -1;
    width: 100%;
    transition: .7s all;
    opacity: 0;
}

.experience1_nav>li>a.active:before,.experience1_nav>li>a:hover:before {opacity: 1;}

.experience1_nav>li>a:hover {
    color: #fff;
}
.experience_items {
    padding: 2.5rem 0;
}

.experience1_box {
    margin: 2.5rem;
}

.button_style svg {}

experience1_title  a.button_style svg {
    width: 1rem;
    height: auto;
}

.experience1_title  a.button_style svg {
    width: 1rem;
}

.experience1_wrap {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -.5rem;
    row-gap: 1rem;
}

.experience1_item {
    width: calc(calc(100% / 3) - 1rem);
    margin: 0 .5rem;
    height: 20rem;
    cursor: pointer;
}

.experience1_item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    scale: 1;
    transition: .7s all;
}

.experience1_title  h2.heading_title {
    margin: 0;
}

.experience1_title {
    margin-bottom: 1rem;
    align-items: center;
}

.experience1_item:hover img {
    scale: .96;
}
.experience2_slider {
    max-width: 80rem;
    margin: 1.5rem auto 0;
}

.experience2_item {
    height: 43rem;
    position: relative;
}

.experience2_item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.experience2_slider .swiper-slide {
    scale: .9;
    transition: 1s all;
}

.experience2_slider .swiper-slide.swiper-slide-active {
    scale: 1.02;
}

.experience2_slider .swiper {
    padding: 1rem 0;
}

.experience2_item a.view_box {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.experience2_item a.view_box svg {
    width: 7rem;
    height: auto;
    scale: 1;
    transition: .5s all;
}

.experience2_item:hover a.view_box svg {
    scale: 1.2;
}
section.experience2 {
    padding-bottom: 6rem;
}

.experience2_slider .swiper-pagination {bottom: -1rem;}
.guestroom2_item ,.guestroomDetail1_content{
    background-image: url(/assets/images/nen2.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}

.guestroom2_item:nth-child(even) {
    background-image: url(/assets/images/nen1.jpg);
}

.guestroom1 {
    margin: 5rem 0 0;
}

.guestroom1 img {
    width: 100%;
    display: block;
}
.guestroom2_item .box_img {
    width: 50%;
}

.guestroom2_item .inner {
    align-items: center;
    padding: 0 2rem;
}

.guestroom2_item .box_img img {
    width: 100%;
    height: 33rem;
    display: block;
    border-radius: 3rem 0;
}

.guestroom2_item:nth-child(even) .box_img {
    order: -1;
}

.guestroom2_item {
    padding: 2.6rem 0;
}

.guestroom2_item .inner .box_content {
    width: 50%;
    padding: 0 6rem;
}

.guestroom2_item:nth-child(even) img {
    border-radius: 0 3rem;
}

.guestroom2_item h3 {
    text-transform: uppercase;
    font-weight: 600;
    font-size: 1.8rem;
    line-height: 1.2;
    margin-bottom: 1.6rem;
}

.guestroom2_item .content {
    font-weight: 500;
    font-size: 1rem;
    color: #047EC0;
    line-height: 1.2;
}

.guestroom2_item ul.tien_ich {
    display: flex;
    flex-wrap: wrap;
    margin: 2rem  -0.5rem;
    row-gap: 1rem;
}

.guestroom2_item ul.tien_ich li {
    width: 50%;
    align-items: flex-start;
    padding: 0 .5rem;
    font-size: 1rem;
}

.guestroom2_item ul.tien_ich li .icon {
    margin-top: .3rem;
    width: 1.5rem;
    flex: 0 0 auto;
    display: flex;
    justify-content: center;
}

a.link_box {
    display: inline-flex;
    height: 3rem;
    justify-content: center;
    align-items: center;
    background: linear-gradient(0deg, #EDA154 0%, #F2E4C0 100%);
    border-radius: .5rem;
    font-size: 1rem;
    font-weight: 600;
    color: #fff;
    text-transform: uppercase;
    padding: 0 2rem;
    position: relative;
    overflow: hidden;
}

.guestroom2_item .swiper-pagination {bottom: 1.5rem;}

.guestroom2_item ul.tien_ich li .icon svg {
    width: 1.2rem;
    height: auto;
}
a.link_box:before {
    content: '';
    content: "";
    position: absolute;
    inset: 0;
    padding: 1px;
    background: linear-gradient(180deg, #FFFFFF 0%, #F1C070 48.08%, #FFFFFF 100%);
    -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    pointer-events: none;
    border-radius: .5rem;
}



.guestroom2_item a.link_box {
    position: relative;
}
.guestroom2_item a.link_box {
    min-width: 22rem;
}
.room_item .list_button {
    position: unset;
    opacity: 1;
    background: transparent;
    display: flex;
    flex-direction: column;
    width: auto;
}
.guestroomDetail1_content {
    width: 45.05rem;
    flex: 0 0 auto;
    padding: 4rem 8rem;
}

.guestroomDetail1_content h1 {
    font-size: 2.4rem;
    text-transform: uppercase;
    font-weight: 700;
    margin-bottom: 1rem;
}

.guestroomDetail1 .content {
    text-align: justify;
    color: #047EC0;
    margin-bottom: 1rem;
}

.guestroomDetail1_info {
    width: 100%;
    text-align: center;
    padding: 1.8rem 4.5rem;
}

.guestroomDetail1_info ul.tien_ich li {
    width: 50%;
    padding: 0 .5rem;
}

.guestroomDetail1_info ul.tien_ich {
    display: flex;
    flex-wrap: wrap;
    font-size: 1.05rem;
    margin: 0 -.5rem;
    row-gap: .6rem;
}

.guestroomDetail1_info ul.tien_ich svg {
    width: 1rem;
    height: auto;
}

.guestroomDetail1_info .box_price {
    display: flex;
    justify-content: flex-end;
    flex-direction: column;
    align-items: center;
    font-size: 1.55rem;
    color: #BCBCBC;
    font-weight: 500;
}

.guestroomDetail1_info .box_price b.price {
    color: #1BAFFF;
    font-size: 2.9rem;
    font-weight: 600;
}

.guestroomDetail2_slider  img {
    width: 100%;
    height: auto;
    display: block;
}

.guestroomDetail2_slider .swiper-slide {
    height: auto;
}

.guestroomDetail2_slider .swiper-slide>*, .guestroomDetail2_slider .swiper-slide>*>* {
    height: 100%;
    object-fit: cover;
}

section.guestroomDetail2 {}

section.guestroomDetail2 .swiper-pagination {
    bottom: 2rem;
}

section.guestroomDetail1 {
    padding-top: 5rem;
}

section.guestroomDetail3 {
    background-image: url(/assets/images/nen2.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    padding: 2.4rem 0 2rem;
}

a.guestroomDetail3_link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    font-size: 1rem;
    color: #047EC0;
    font-weight: 400;
    gap: .5rem;
    margin-bottom: 2rem;
}

a.guestroomDetail3_link svg {
    width: auto;
    height: .9rem;
    display: block;
}

section.guestroomDetail4 {padding: 3.5rem 0 0;}

.guestroomDetail4_content {
    max-width: 35rem;
    margin: 0 auto 2rem;
    font-size: 1.2rem;
    font-weight: 300;
}

.guestroomDetail4_content .content {
    font-weight: 100;
    color: #047EC0;
}

.room_item {
    margin-left: 3.5rem;
    background: rgb(255 255 255 / 80%);
    backdrop-filter: blur(20px);
    border-radius: .6rem;
    overflow: hidden;
}

.guestroomDetail4_box {
    padding: 4.5rem 0;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.guestroomDetail4_slider>.swiper {
    width: calc(100% + 8rem);
}

.item_gal {}

.room_item .item_gal {
    height: 16rem;
    position: relative;
}

.room_item .item_gal img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.room_item .swiper-pagination {
    bottom: 1rem;
}

.room_item .swiper-pagination span {
    background: rgb(255 255 255 / 90%);
}

.room_item .box_content {
    padding: 1.2rem;
}

.room_item h3 {
    font-size: 1.8rem;
    font-weight: 600;
    margin-bottom: 1.4rem;
}

.room_item .nav_bottom {
    display: flex;
    align-items: flex-end;
}

.room_item ul.list_button a {
    height: 2rem;
    min-width: 6rem;
    font-size: .6rem;
    color: #047EC0;
    background: rgb(174 174 174 / 10%);
    backdrop-filter: blur(5.312323093414307px);
}

.room_item .list_button {
    margin: 0;
    gap: .3rem;
}

.room_item ul.list_button a:before {
    background: linear-gradient(180deg, #FFFFFF 0%, rgba(145, 213, 255, 0.5) 47.12%, #FFFFFF 100%);
}

.room_item ul.list_button li:nth-child(2) a {
    background: #1BAFFF;
    color: #fff;
}

.room_item ul.list_button li:nth-child(2) a:before {
    border: 1px solid;
    border-image-source: linear-gradient(180deg, #FFFFFF 0%, #9AD8FF 46.63%, #FFFFFF 100%);
}

.room_item .box_price {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    color: #047EC0;
    font-size: .65rem;
}

.room_item .box_price b.price {
    font-size: 1.3rem;
    line-height: 1.3;
}
.guestroomDetail1_info h3 {
    margin: 0;
    background: #1BAFFF;
    height: 2.75rem;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    text-transform: uppercase;
    font-weight: 600;
    font-size: 1.55rem;
    margin: 1rem 0;
}
.guestroomDetail3_slider .swiper {
    margin: 0 -15rem;
    max-width: unset;
    overflow: unset;
}

.guestroomDetail3_slider .guestroomDetail3_item {
    padding: 0 1.3rem;
    height: 22rem;
}

.guestroomDetail3_slider  button.slider_nav_btn {
    background: transparent;
    border: none;
    backdrop-filter: unset;
}

.guestroomDetail3_slider {
    margin-top: 1.5rem;
}
.food1_content {
    max-width: 60rem;
    margin: auto;
    margin-bottom: 5rem;
}

.food1_content h2.heading_title {
    max-width: 45rem;
    margin-left: auto;
    margin-right: auto;
}

.food1_item {
    background-image: url(/assets/images/nen2.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    padding-bottom: 4rem;
}

.food1_item:nth-child(even) {
    background-image: url(/assets/images/nen1.jpg);
}

.food1_item .box_img {
    width: 55rem;
    flex: 0 0 auto;
    height: 32rem;
    overflow: hidden;
}

.food1_item .box_content {
    padding: 0 5rem 0 7rem;
}

section.food1 .row {
    margin: 0;
    max-width: unset;
}

section.food1 .row>.col {
    padding: 0;
}

.food1_item:nth-child(even) .box_img {
    order: -1;
}

.food1_item:nth-child(even) .box_content {
    padding: 0 7rem 0 5rem;
}

.food1_item h3 {
    font-size: 1.8rem;
    text-transform: uppercase;
    line-height: 1.2;
    margin-bottom: 1rem;
}

.food1_item .content {
    font-weight: 500;
    font-size: .8rem;
    color: #047EC0;
}

.food1_item ul.info {
    list-style: none;
    margin: 1rem 0 1rem 1.8rem;
    justify-content: space-between;
    color: #047EC0;
    gap: 1rem;
}

.food1_item ul.info li {
    display: flex;
    align-items: center;
    margin: 0;
    gap: .3rem;
}

.food1_item ul.info li .icon {
    display: flex;
    align-items: center;
}

.food1_item ul.info li .icon svg {
    width: 1.1rem;
    height: auto;
}

.thuc_don_item {
    padding: .55rem 0;
}

.thuc_don_item+.thuc_don_item {
    border-top: 1px solid #7D7D7D;
}

.thuc_don_item .title {
    color: #047EC0;
}

.thuc_don_item a {
    color: #047EC0;
}

.thuc_don_item a.link_box {
    width: 100%;
}

.food1_item a.link_box {
    width: 100%;
}

.thuc_don {}

.thuc_don+a.link_box {
    margin-top: 2rem;
}

section.food2 {
    padding: 1.6rem 0 3.9rem;
}

section.food2 h2.heading_title,section.food3 .heading_title {
    font-size: 1.3rem;
    font-weight: 600;
}

section.food3 {}

.food3_box {
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    padding: 5rem 0;
    margin-top: 1.2rem;
}

.food3_box .food1_item {
    padding: 0;
    background: #FFFFFF;
    border-radius: .6rem;
    overflow: hidden;
    position: relative;
}

.food3_box .food1_item+.food1_item {
    margin-top: 2.2rem;
}

.food1_wrap.style_2 {
    max-width: 80rem;
    margin: auto;
}

.food1_wrap.style_2 .box_img {
    width: 47rem;
    height: 28rem;
}

.food3_box .food1_item .box_content {
    padding: 2.5rem;
}

.food3_box .food1_item ul.info.flex {
    color: #047EC0;
}

.food3_box .food1_item ul.info.flex path {
    fill: #047EC0;
}

.food3_box .food1_item a.view_more {
    position: absolute;
    bottom: 0;
    width: max-content;
    color: #047EC0;
    font-size: 1rem;
    bottom: 1rem;
    right: 2.5rem;
}

.food1_item .box_img img {
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s ease;
}

.food1_item .box_img:hover img {
    transform: scale(1.08);
}

.food1_wrap.style_2 a.link_box {
    width: auto;
}

.food1_wrap.style_2 ul.info.flex {
    margin: 1.5rem 0;
}

.food2_item {height: 38rem;}

.food2_item img {
    height: 100%;
    object-fit: cover;
    width: 100%;
}

.food2_item {
    margin-right: 2rem;
}

section.food2 .row {
    max-width: unset;
    margin: 0;
}

section.food2 .row>.col {
    padding: 0 0 0 5rem;
}

.wrap_slider.food2_slider {
    width: calc(100% + 15rem);
}

section.food2 h2.heading_title {
    margin-bottom: 1.8rem;
}

section.food4 {
    padding: 5rem 0;
}

.food4_form {
    max-width: 60rem;
    background: #91D5FF4D;
    margin: auto;
    padding: 1.5rem 4rem 1.8rem;
    border-radius: .6rem;
}

.wrap_input input,.wrap_input textarea {
    height: 3.3rem;
    border-radius: .6rem;
    padding: 0 1.8rem;
    box-shadow: 0px 0px 4px 0px #047EC0 inset !important;
    border: none;
    font-size: 1rem;
    color: #7D7D7D;
    margin: 0 0;
}

.wrap_input_date {
    position: relative;
}

/* iOS Safari: input date rỗng không có placeholder và bị xẹp -> ép kích thước, tự vẽ chữ gợi ý. */
.wrap_input input[type="date"] {
    -webkit-appearance: none;
    appearance: none;
    display: flex;
    align-items: center;
    width: 100%;
    height: 3.3rem;
    min-height: 3.3rem;
    padding-top: 0;
    padding-bottom: 0;
    line-height: normal;
    background-color: #fff;
    text-align: left;
}

.wrap_input input[type="date"]::-webkit-date-and-time-value {
    text-align: left;
    margin: 0;
    min-height: 1.2em;
    line-height: normal;
}

.wrap_input_date.date_empty input[type="date"] {
    color: transparent;
}

.wrap_input_date.date_empty::before {
    content: attr(data-placeholder);
    position: absolute;
    left: 1.8rem;
    top: 50%;
    transform: translateY(-50%);
    font-size: 1rem;
    color: #7D7D7D;
    pointer-events: none;
}

.wrap_input+.wrap_input {
    margin-top: 1.4rem;
}

.wrap_input textarea {
    padding: .5rem 1.8rem;
    min-height: 7rem;
}

.wrap_input button {
    margin: 0;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #047EC0;
    height: 3rem;
    color: #fff;
    border-radius: .5rem;
    font-size: 1rem;
}

.wrap_inpu button {
    margin: 0;
    width: 100%;
    display: flex;
    justify-content: center;
}
section.service1 {
    padding: 2rem 0;
}

.service1_content {
    max-width: 60rem;
    margin: auto;
}

.service1_items {
    margin-top: 5rem;
}

.service1_item {
    background-image: url(/assets/images/nen1.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    padding-bottom: 4rem;
    display: flex;
}

.service1_item:nth-child(even) {
    background-image: url(/assets/images/nen2.jpg);
}

.service1_item .box_img {
    width: 55rem;
    flex: 0 0 auto;
    position: relative;
}

.service1_item .box_content {
    padding: 4rem 7.5rem 2rem 3rem;
}

.service1_item h3 {
    font-size: 1.8rem;
    text-transform: uppercase;
    font-weight: 600;
    margin-bottom: 1rem;
}

.service1_item .content {
    color: #047EC0;
    font-weight: 500;
}

a.view_gallery {
    display: inline-flex;
    align-items: center;
    gap: .6rem;
    color: #fff;
    position: absolute;
    bottom: .75rem;
    z-index: 9;
    right: .75rem;
    width: max-content;
}

a.view_gallery path {
    fill: #fff;
}

a.view_gallery svg {
    width: 1.75rem;
    height: auto;
    display: block;
    scale: 1;
    transition: .6s all;
}

a.view_gallery:hover svg {
    scale: .8;
}

.service1_item ul.tien_ich {
    display: flex;
    flex-wrap: wrap;
    font-size: 1rem;
    gap: 1.2rem;
    margin: 2rem 0 0 1.5rem;
}

.service1_item ul.tien_ich svg {
    width: 1.2rem;
    height: auto;
}

.service1_item:nth-child(even) .box_img {
    order: 2;
}

.service1_item:nth-child(even) .box_content {
    padding: 4rem 3rem 2rem 7.5rem;
}

a.view_gallery.style_2 {
    color: #047EC0;
}

a.view_gallery.style_2 path {
    fill: #047EC0;
}
.endow_item .box_img {
    height: 19.5rem;
    position: relative;
    border-radius: .6rem .6rem 0 0;
    overflow: hidden;
}

.endow_item .box_img img {
    height: 100%;
    object-fit: cover;
    border-radius: .6rem .6rem 0 0;
    width: 100%;
    transition: transform 0.4s ease;
}

.endow_item .box_img:hover img {
    transform: scale(1.08);
}

.endow_item {
    background: #91D5FF33;
    margin: 0 1.2rem;
    border-radius: .6rem;
    margin-top: 1.2rem;
}

.endow_slider .swiper-pagination {
    position: unset;
    margin: 1.5rem 0 0 0;
}

.endow_slider+.endow_slider {
    margin-top: 1.5rem !important;
}

.endow_item .tag {
    position: absolute;
    z-index: 9;
    background: linear-gradient(0deg, #1BAFFF 0%, #1292D6 100%);
    border-radius: .6rem 0 1rem;
    height: 3.2rem;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-weight: 700;
    font-size: 1rem;
    text-transform: uppercase;
    padding: 0 2rem;
}

.endow_item .nhan {
    position: absolute;
    right: 0;
    top: -1.2rem;
}

.endow_item .box_content {
    padding: 1.8rem 2.4rem 1.2rem;
}

.endow_item a.link_box {
    width: 100%;
}

.endow_item h3 {
    font-size: 1.2rem;
    line-height: 1.3;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-line-clamp: 4;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    margin-bottom: 1.75rem;
    height: 6.3rem;
}

.wrap_slider.endow_slider {
    margin: 0 -1.2rem;
}

.endow_item .nhan svg {
    width: 6rem;
    height: auto;
}

.endow1_content {
    max-width: 75rem;
    margin: 6rem auto 0;
}

section.endow1 {
    padding-bottom: 3rem;
}

a.view_more_content {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    color: #047EC0;
    font-size: 1rem;
    gap: .2rem;
}

a.view_more_content svg {
    height: 1rem;
    width: auto;
}
.contact_wrap {
    padding: 0 6rem;
    display: flex;
    gap: 2rem;
}

.contact_page {
    padding: 3rem 0 7rem;
}

.contact_content {
    width: 27rem;
    flex: 0 0 auto;
}

.contact_wrap .contact_form {
    width: 100%;
}

.contact_wrap .food4_form {
    max-width: unset;
    background: transparent;
    padding: 0;
}

.contact_content h3 {
    text-transform: uppercase;
    font-weight: 500;
}

.contact_content {
    color: #047EC0;
    font-size: 1rem;
    padding-top: 2.7rem;
}

.col2 {
    display: flex;
    gap: 1rem;
    margin-bottom: 1rem;
}

.col2 .wrap_input {
    width: 50%;
    margin: 0;
}

.contact_iframe {
    padding: 0 6rem;
}

.contact_iframe iframe {
    width: 100%;
    display: block;
    height: 38rem;
    margin-top: 4rem;
}
section.recruitment_page {
    padding: 5rem 8rem;
}

.recruitment_filter input {
    height: 3.3rem;
    border-radius: .6rem;
    box-shadow: 0px 0px 4px 0px #047EC0 inset;
    border: none;
    font-size: 1rem;
    padding: 0 1.5rem;
    margin: 0;
    min-width: 30rem;
}

.recruitment_filter .inner {
    gap: 1.2rem;
}

.recruitment_filter button {
    margin: 0;
    flex: 0 0 auto;
    height: 3.3rem;
    background: #1BAFFFBD;
    border-radius: .6rem;
    min-width: 15rem;
    color: #fff;
    font-size: 1.2rem;
    font-weight: 600;
}

.recruitment_filter {
    margin-bottom: 6.5rem;
}

.recruitment_item {
    padding: 1rem 0;
}

.recruitment_item+.recruitment_item {
    border-top: 1px solid #7D7D7D;
}

.recruitment_item .inner {
    justify-content: space-between;
    gap: 2rem;
}

.recruitment_item a {
    margin: 0;
    flex: 0 0 auto;
    height: 3.3rem;
    background: #1BAFFFBD;
    border-radius: .6rem;
    color: #fff;
    font-size: 1.2rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    height: 2.5rem;
    padding: 0 1.2em;
}

.recruitment_item h3 {
    font-size: 1.2rem;
    font-weight: 500;
    margin-bottom: .5rem;
}

.recruitment_item ul {
    gap: 1rem;
    list-style: none;
    margin: 0;
    display: flex;
    justify-content: space-between;
    color: #047EC0;
    font-size: 1rem;
    margin-bottom: .8rem;
}

.recruitment_item .content {
    color: #047EC0;
}

.recruitment_item ul li {
    margin: 0;
    display: flex;
    align-items: center;
    gap: .5rem;
}

.recruitment_item ul li:before {
    content: '';
    width: .4rem;
    height: .4rem;
    background: #7D7D7D;
    display: block;
    flex: 0 0 auto;
    transform: rotate(45deg);
}
.recruitment_details {
    padding: 4.5rem 6rem;
}

.recruitment_details h2.heading_title {
    margin-bottom: .5rem;
}

.thong_tin_tuyen_dung {
    margin-bottom: 3rem;
}

.content.noi_dung_td {
    max-width: 60rem;
}
.noti_box {
    margin-top: 3rem;
}

.noti_table_scroll {
    overflow-x: auto;
    border-radius: 1rem;
    border: 1px solid #1BAFFF;
}

.noti_table {
    width: 100%;
    min-width: 60rem;
    border-collapse: collapse;
    text-align: center;
    overflow: hidden;
}

.noti_table th,
.noti_table td {
    border: 1px solid #047EC0;
    padding: 1rem .8rem;
}

.noti_table thead th {
    color: #fff;
    font-size: .95rem;
    font-weight: 700;
    text-transform: uppercase;
    border-color: #047EC0;
    text-align: center;
}

.noti_table tbody td {
    color: #047EC0;
    font-weight: 600;
    font-size: 1.2rem;
    text-align: center;
}

.noti_table tbody td a {
    color: #B8862E;
    font-weight: 500;
}

.noti_table tbody td a:hover {
    text-decoration: underline;
}

section.noti {
    padding: 4rem 0 0;
}
.noti_content {
    padding: 0 8rem;
}

.noti_box {
    background-image: url(/assets/images/nen1.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    padding: 3.6rem 7rem 7rem;
}
.noti_table {
    margin: 0;
    background: rgb(255 255 255 / 50%);
}

.noti_table thead th:nth-child(1) {
    width: 3.2rem;
}

table.noti_table thead {
    background: linear-gradient(90deg, #1BAFFF 0%, #91D5FF 100%);
}
section.news_page {
    padding: 1.5rem 0;
}

.news_page_content {
    font-size: 1.2rem;
    color: #047EC0;
    max-width: 60rem;
    margin: auto;
    margin-bottom: 5rem;
}

.wrap_post {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -1rem;
    row-gap: 2rem;
}

.post_item {
    width: calc(25% - 2rem);
    margin: 0 1rem;
    background: #91D5FF33;
    border-radius: 1rem;
    overflow: hidden;
}

.post_item .box_img {
    padding-bottom: 56.25%;
    position: relative;
    overflow: hidden;
}

.post_item .box_img img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    scale: 1;
    transition: .6s all;
}

.post_item:hover .box_img img {
    scale: 1.1;
}

.post_item .box_content {
    padding: 1rem;
}

.post_item h3 {
    font-size: 1.2rem;
    font-weight: 600;
    line-height: 1.3;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-line-clamp: 2;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    height: 3rem;
}

.post_item .content {
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-line-clamp: 3;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    font-size: .9rem;
    color: #047EC0;
}

ul.box_meta {
    list-style: none;
    margin: 0;
    justify-content: flex-end;
    gap: .5rem;
    margin-top: .5rem;
}

ul.box_meta li {
    display: flex;
    align-items: center;
    color: #047EC0;
    font-size: .9rem;
    margin: 0;
    gap: .3rem;
}

ul.box_meta li svg {
    width: 1rem;
    height: auto;
    display: flex;
}

a.link_wrap {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 9;
}

.wrap_post .post_item:first-child {
    width: calc(100% - 2rem);
    display: flex;
    align-items: center;
}

.wrap_post .post_item:first-child .box_img {
    width: 54rem;
    flex: 0 0 auto;
    padding-bottom: 30rem;
}

.wrap_post .post_item:first-child .box_content {
    padding: 3rem;
}

.wrap_post .post_item:first-child h3 {
    font-size: 2.6rem;
    height: auto;
    line-height: 1.2;
}

.wrap_post .post_item:first-child .content {
    text-overflow: ellipsis;
    -webkit-line-clamp: 6;
}

.wrap_post .post_item:first-child ul.box_meta {
    justify-content: flex-start;
    margin-top: 1rem;
}
.wrap_content_post {
    width: 70rem;
    flex: 0 0 auto;
}

.sidebar_post {
    padding-left: 1rem;
    margin-left: 1rem;
    border-left: 1px solid #7D7D7D;
}

section.blog_details {
    padding: 3rem 0 10rem;
}

.endow_list.item_full > * {
    margin: 0;
}

section.blog_details h2.title {
    color: #047EC0;
    text-transform: uppercase;
    letter-spacing: -0.32px;
    font-size: 1.5rem;
}

.endow_list.item_full {
    display: flex;
    flex-direction: column;
    gap: 1.4rem;
}

.endow_list {}

.endow_list.item_full .box_content {
    padding: 1.3rem 1.7rem;
}

.endow_list.item_full .box_content h3 {
    font-size: .9rem;
    line-height: 1.3;
    height: auto;
}

.endow_list.item_full .box_img {
    height: 16rem;
}

.wrap_posts.item_full {}

.wrap_posts.item_full .post_item {
    margin: 0;
    width: 100%;
}

.sidebar_post {
    display: flex;
    flex-direction: column;
    gap: 3rem;
}
.noti_content .heading_title {
    font-size: 1.8rem;
    font-weight: 600;
    margin: 0 0 .5rem;
}

.wrap_input {
    position: relative;
}

.wrap_input.has_error input,
.wrap_input.has_error textarea {
    box-shadow: 0px 0px 4px 0px #E53935 inset !important;
}

.wrap_input .error_msg {
    display: block;
    color: #E53935;
    font-size: .8rem;
    margin-top: .4rem;
    padding-left: .3rem;
}

.form_message {
    margin-bottom: 1rem;
    padding: .7rem 1rem;
    border-radius: .5rem;
    font-size: .9rem;
    text-align: center;
}

.form_message_error {
    background: #FDECEA;
    color: #E53935;
}

.form_message_success {
    background: #E7F5EC;
    color: #1E8E3E;
}

.wrap_input button[disabled] {
    opacity: .7;
    cursor: not-allowed;
}

.wrap_input button .btn_spinner {
    width: 1rem;
    height: 1rem;
    border: 2px solid rgba(255, 255, 255, .5);
    border-top-color: #fff;
    border-radius: 100%;
    margin-right: .6rem;
    animation: tt_spin .7s linear infinite;
}

@keyframes tt_spin {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

.booking_popup_overlay {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.6);
    z-index: 999;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
}

.booking_popup {
    position: relative;
    background: #fff;
    border-radius: .6rem;
    max-width: 60rem;
    width: 100%;
    max-height: 90vh;
    overflow-y: auto;
}

.booking_popup .food4 {
    padding: 0;
}

.booking_popup .food4_form {
    max-width: none;
    background: none;
    box-shadow: none;
    margin: 0;
}

.booking_popup_close {
    position: absolute;
    margin: 0;
    top: 0;
    right: 0;
    width: 3.5rem;
    height: 3.5rem;
    min-height: unset;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: .2rem;
    font-size: 1.6rem;
    line-height: 1;
    background: #f2f2f2;
    border-radius: 0;
    color: #333;
    z-index: 1;
}

.gallery_popup_overlay {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.8);
    z-index: 999;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 2rem 1rem;
}

.gallery_popup {
    position: relative;
    max-width: 60rem;
    width: 100%;
    background: #fff;
    padding: 2rem;
    border-radius: 1rem;
    overflow: hidden;
    max-height: calc(100vh - 4rem);
}

.gallery_popup_item img {
    width: 100%;
    display: block;
    border-radius: .6rem;
    max-height: calc(100vh - 10rem);
    object-fit: contain;
}

.gallery_popup_slider .swiper-slide {
    height: auto;
}

.gallery_popup_slider .swiper-slide .gallery_popup_item {
    height: 100%;
    display: flex;
    align-items: center;
}

.gallery_popup_close {
    position: absolute;
    top: -2.6rem;
    right: 0;
    width: 2.2rem;
    height: 2.2rem;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.6rem;
    line-height: 1;
    background: #fff;
    border-radius: 100px;
    color: #333;
    z-index: 1;
}

.gallery_popup button.gallery_popup_close {
    border-radius: 100px;
}

.site_footer {
    position: relative;
    overflow: hidden;
    background: #027DC0;
    color: #fff;
    padding: 1.85rem 7.85rem 1.4rem;
}

.site_footer_main {
    display: grid;
    grid-template-columns: 14.4rem minmax(23rem, 1fr) auto auto;
    align-items: start;
    position: relative;
    z-index: 1;
}

.site_footer_brand {
    padding-top: 2.3rem;
}

.site_footer_logo {
    display: flex;
}

.site_footer_logo img {
    width: 11rem;
    height: auto;
}

.site_footer_info,
.site_footer_columns {
    padding-top: 1.75rem;
}

.site_footer_info {
    padding-right: 3rem;
}

.site_footer_columns {
    display: flex;
    gap: 3rem;
    min-width: 24.25rem;
    padding-right: 3rem;
}

.site_footer_columns h3 {
    white-space: nowrap;
}

.site_footer_columns .site_footer_column {
    max-width: 22rem;
}

.site_footer_column h3 {
    font-size: .95rem;
    font-weight: 600;
    letter-spacing: .15em;
    text-transform: uppercase;
    line-height: 1.4;
    margin-bottom: 1rem;
    color: #fff;
}

.site_footer_column ul,
.site_footer_contact {
    display: flex;
    flex-direction: column;
    gap: .9rem;
    list-style: none;
    margin: 0;
}

.site_footer_column ul li,
.site_footer_contact li {
    margin: 0;
    font-size: .9rem;
    line-height: 1.4;
    font-weight: 300;
}

.site_footer_contact li {
    display: flex;
    align-items: flex-start;
    gap: .7rem;
}

.site_footer_column ul li a,
.site_footer_contact li a {
    color: #fff;
    transition: opacity 0.2s ease;
}

.site_footer_column ul li a:hover,
.site_footer_contact li a:hover {
    opacity: 0.7;
}

.site_footer_contact .icon {
    flex: 0 0 auto;
    display: flex;
    width: 1rem;
    margin-top: .1rem;
}

.site_footer_contact .icon svg {
    width: 100%;
    height: auto;
}

.site_footer_qr {
    width: 7rem;
    margin-right: 1.65rem;
}

.site_footer_qr img {
    width: 100%;
    display: block;
}

.site_footer_qr .caption {
    margin-top: .5rem;
    font-size: .75rem;
    line-height: 1.4;
    color: #fff;
}

.site_footer_bottom {
    display: grid;
    grid-template-columns: 1fr 7.5rem;
    column-gap: 3.35rem;
    align-items: start;
    position: relative;
    z-index: 1;
    margin-top: 2.85rem;
    margin-right: 1.25rem;
}

.site_footer_copyright {
    border-top: 1px solid #2795D8;
    padding-top: 3.4rem;
    color: #fff;
    font-size: .9rem;
    font-weight: 300;
}

.site_footer_bct {
    display: flex;
    margin-top: 1.6rem;
}

.site_footer_bct img {
    width: 7.5rem;
    height: auto;
    display: block;
}

.site_footer_watermark {
    position: absolute;
    z-index: 0;
    line-height: 0;
    overflow: hidden;
    width: 96vw;
    left: 50%;
    transform: translateX(-50%);
    bottom: 0;
}

.site_footer_watermark svg {
    width: 100%;
    height: auto;
    display: block;
}
.site_header_nav li {
    margin: 0;
}
.fixed_buttons_item svg {
    display: flex;
}

.service1_item .box_img img {
    height: 100%;
    object-fit: cover;
}
.booking_field_btn .icon svg {
    width: 1rem;
    height: auto;
}

.booking_field_date span.label {
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.fixed_buttons:before {
    content: "";
    position: absolute;
    pointer-events: none;
    inset: 0px;
    padding: 1px;
    background: linear-gradient(180deg, #FFFFFF 0%, rgba(255, 255, 255, 0) 100%);
    mask: linear-gradient(rgb(255, 255, 255) 0px, rgb(255, 255, 255) 0px) content-box exclude, linear-gradient(rgb(255, 255, 255) 0px, rgb(255, 255, 255) 0px);
    border-radius: 100px;
}

.booking_dropdown:before {
    content: '';
    content: "";
    position: absolute;
    pointer-events: none;
    inset: 0px;
    padding: 1px;
    background: linear-gradient(90deg, #1BAFFF 0%, #91D5FF 100%);
    mask: linear-gradient(rgb(255, 255, 255) 0px, rgb(255, 255, 255) 0px) content-box exclude, linear-gradient(rgb(255, 255, 255) 0px, rgb(255, 255, 255) 0px);
    border-radius: .4rem;
}

button.react-datepicker__navigation {
    margin: 0;
}

h2.react-datepicker__current-month {
    font-size: .6rem;
    font-weight: 600;
}

.react-datepicker__day-name, .react-datepicker__day, .react-datepicker__time-name {
    font-size: .6rem;
}

.react-datepicker__day--selected:not([aria-disabled="true"]):hover, .react-datepicker__day--in-selecting-range:not([aria-disabled="true"]):hover, .react-datepicker__day--in-range:not([aria-disabled="true"]):hover, .react-datepicker__month-text--selected:not([aria-disabled="true"]):hover, .react-datepicker__month-text--in-selecting-range:not([aria-disabled="true"]):hover, .react-datepicker__month-text--in-range:not([aria-disabled="true"]):hover, .react-datepicker__quarter-text--selected:not([aria-disabled="true"]):hover, .react-datepicker__quarter-text--in-selecting-range:not([aria-disabled="true"]):hover, .react-datepicker__quarter-text--in-range:not([aria-disabled="true"]):hover, .react-datepicker__year-text--selected:not([aria-disabled="true"]):hover, .react-datepicker__year-text--in-selecting-range:not([aria-disabled="true"]):hover, .react-datepicker__year-text--in-range:not([aria-disabled="true"]):hover {
    color: #fff;
}
.item_room ul.list_button li:nth-child(2) a {
    background: linear-gradient(90deg, rgba(27, 175, 255, 0.57) 0%, rgba(145, 213, 255, 0.57) 100%);
    backdrop-filter: blur(4px);
}
ul.department_suggest {
    position: absolute;
    bottom: 0;
    z-index: 9;
    width: 100%;
    text-align: left;
    list-style: none;
    margin: 0;
    transform: translateY(100%);
    background: #F4F4F494;
    border-radius: .3rem;
    padding: .3rem 0;
    backdrop-filter: blur(5.312323093414307px);
}

.wrap_department {
    position: relative;
}

ul.department_suggest a {
    color: #047EC0;
    font-size: 1rem;
    font-weight: 500;
    padding: .5rem .8rem;
    width: 100%;
    display: flex;
    line-height: 1;
}

ul.department_suggest li {
    margin: 0;
}
.experience1_title a.button_style {
    margin-right: 5rem;
}
.home4_slider .swiper-pagination {bottom: 2rem;}
.itemPost .box_content ul.box_meta.flex {
    filter: brightness(0) invert(1);
}
.itemPost .box_content ul.box_meta.flex svg {
    width: 1.2rem;
}
.home4_box .text-right.home8_view_more_desktop {
    filter: brightness(0) invert(1);
    padding-right: 6rem;
    margin-bottom: 3rem;
}

.home4_slider .swiper-pagination span {
    background: #fff;
}
.itemPost .box_img {
    overflow: hidden;
}

.itemPost .box_img img {
    scale: 1;
    transition: .6s all;
}

.itemPost:hover .box_img img {
    scale: 1.1;
}

.home6Item .box_img img {
    transform: rotateY(0deg);
    transition: 1s all;
}

.home6Item:hover .box_img img {
    transform: rotateY(360deg);
}
section.guestroomDetail4 h2.heading_title + .content {
    color: #047EC0;
    font-size: 1.2rem;
    font-weight: 300;
    max-width: 35rem;
    margin: 0 auto 2rem;
}
.site_header_nav > li > a.active:after, .site_header_nav > li > a:hover:after {
    width: 100%;
}
.header_search_dropdown:before {
    content: '';
    content: "";
    position: absolute;
    pointer-events: none;
    inset: 0px;
    padding: 1px;
    background: linear-gradient(180deg, #FFFFFF 0%, rgba(255, 255, 255, 0) 100%);
    mask: linear-gradient(rgb(255, 255, 255) 0px, rgb(255, 255, 255) 0px) content-box exclude, linear-gradient(rgb(255, 255, 255) 0px, rgb(255, 255, 255) 0px);
    border-radius: .5rem;
}

.header_search_dropdown::-webkit-scrollbar-track {
    -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3);
    background-color: #F5F5F5;
}

.header_search_dropdown::-webkit-scrollbar {
    width: 0.217rem;
    background-color: #cedbff;
}
.header_search_dropdown::-webkit-scrollbar-thumb {
    background-color: #1BAFFF;
}
@media (max-width: 767px) {
    .home4_slider .swiper-pagination{
        display: none;
    }
}

.fixed_buttons {
    position: fixed;
    bottom: 5rem;
    right: 1.6rem;
    z-index: 998;
    display: flex;
    flex-direction: column;
    gap: 0.6rem;
    background: rgba(255, 255, 255, 0.35);
    backdrop-filter: blur(4px);
    padding: .7rem 0.4rem;
    border-radius: 100px;
    border-radius: 100px;
}

.fixed_buttons_item {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.2rem;
    height: 2.2rem;
    border-radius: 100px;
    transition: transform 0.2s ease;
}

.fixed_buttons_item:hover {
    transform: scale(1.08);
}

.fixed_buttons_item img,
.fixed_buttons_item svg {
    width: 100%;
    height: 100%;
}

.back_to_top {
    position: fixed;
    right: 0.5rem;
    bottom: 0rem;
    z-index: 998;
    width: 5.2rem;
    height: 5.2rem;
    padding: 0;
    border: none;
    background: transparent;
    cursor: pointer;
    margin: 0;
}

@media (max-width: 767px) {
    .fixed_buttons {
        right: 0.8rem;
    }

    .fixed_buttons_item {
        width: 3.6rem;
        height: 3.6rem;
    }

    .back_to_top {
        right: 1rem;
        bottom: 1.2rem;
        width: 4.4rem;
        height: 4.4rem;
    }
}


#wrapper {
    position: relative;
}

.site_topbar {
    background: #1BAFFF;
    position: relative;
    z-index: 41;
    height: 3.6rem;
    display: flex;
    align-items: center;
}

.topbar_row {
    margin: 0 auto;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    box-sizing: border-box;
    padding: 0 7.5rem;
}

.site_topbar_left {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 1rem;
    font-size: .6rem;
}

a.site_topbar_left_link,
a.site_topbar_left_link:hover,
a.site_topbar_left_link:focus {
    color: #fff;
    text-decoration: none;
}

a.site_topbar_left_link:hover .hotel_name,
a.site_topbar_left_link:hover .rating_box,
a.site_topbar_left_link:hover .rating_score,
a.site_topbar_left_link:hover .rating_count {
    color: #fff;
}

a.site_topbar_left_link {
    transition: opacity .2s ease;
}

a.site_topbar_left_link:hover {
    opacity: .85;
}

.hotel_name {
    color: #fff;
    font-size: .9rem;
    font-weight: 500;
    letter-spacing: .03em;
    text-transform: uppercase;
    white-space: nowrap;
}

.rating_box {
    display: flex;
    align-items: center;
    color: #fff;
    font-size: .6rem;
    font-weight: 400;
}

.rating_dots {
    display: flex;
    align-items: center;
    gap: .25rem;
    margin-right: .5rem;
}

.rating_dots svg {
    width: .7rem;
    height: .7rem;
    display: block;
}

.rating_score {
    font-weight: 600;
    margin-right: .4rem;
}

.rating_count {
    display: flex;
    align-items: center;
    gap: .3rem;
    opacity: .9;
    white-space: nowrap;
    font-weight: 600;
}

.rating_count .dot {
    opacity: .7;
}

.site_topbar_right {
    display: flex;
    align-items: center;
    gap: 1.8rem;
}

.topbar_map_link {
    display: flex;
    align-items: center;
    gap: .5rem;
}

.site_topbar_right > a,
.site_topbar_right .topbar_map_link {
    color: #fff;
    font-size: .8rem;
    font-weight: 500;
    white-space: nowrap;
    transition: opacity .2s ease;
}

.site_topbar_right > a:hover,
.topbar_map_link:hover {
    opacity: .75;
}

.topbar_map_link svg {
    width: .75rem;
    height: auto;
}

.header_search {
    position: relative;
}

.header_search_mobile {
    display: none;
}

.header_search_form {
    display: flex;
    align-items: center;
    background: rgba(255, 255, 255, .2);
    border: 1px solid #fff;
    border-radius: 100px;
    padding: .3rem .3rem .3rem 1.2rem;
    min-width: 15rem;
    margin: 0;
    padding: 0.15rem;
    backdrop-filter: blur(2.200000047683716px);
}

.header_search_form input {
    flex: 1;
    background: transparent !important;
    border: none;
    color: #fff !important;
    font-size: .8rem;
    margin: 0;
    border: none;
    box-shadow: none;
    height: auto;
    min-height: unset;
    box-shadow: none !important;
}

.header_search_form input::placeholder {
    color: rgba(255, 255, 255, .85);
}

.header_search_form button {
    flex: 0 0 auto;
    width: 1.5rem;
    height: 1.5rem;
    min-height: unset;
    border-radius: 100px;
    background: rgba(255, 255, 255, .2);
    border: none;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: .3s all;
    margin: 0;
    padding: 0;
    background: linear-gradient(0deg, #1BAFFF 0%, #1292D6 100%);
}

.header_search_form button:hover {
    background: rgba(255, 255, 255, .35);
}

.header_search_form button svg {
    width: .8rem;
    height: auto;
}

.header_search_dropdown {
    position: absolute;
    top: calc(100% + .8rem);
    right: 0;
    width: 20rem;
    max-width: 90vw;
    max-height: 30rem;
    overflow-y: auto;
    background: #047EC069;
    border-radius: .5rem;
    box-shadow: 0 .5rem 2rem rgba(0, 0, 0, .18);
    padding: 0;
    backdrop-filter: blur(6px);
}

.header_search_group {
    padding: .8rem 1.4rem;
}

.header_search_group_rooms {
    background: rgba(27, 175, 255, .06);
}

.header_search_group_news {
    background: rgba(80, 180, 100, .08);
}

.header_search_group h4 {
    font-size: .85rem;
    color: #fff;
    margin-bottom: 0;
}

.header_search_item {
    display: flex;
    align-items: center;
    gap: .8rem;
    padding: .2rem 0;
}

.header_search_item img {
    width: 3.6rem;
    height: 2.6rem;
    object-fit: cover;
    border-radius: 0;
    flex: 0 0 auto;
}

.header_search_item span {
    font-size: .85rem;
    color: #fff;
    line-height: 1.3;
}

.header_search_loading,
.header_search_empty {
    padding: 1rem 1.4rem;
    font-size: .85rem;
    color: #fff;
}

.site_header {
    position: fixed;
    left: 0;
    right: 0;
    top: 3.6rem;
    z-index: 40;
    padding: 0;
    background: linear-gradient(180deg, rgba(0, 0, 0, .35) 0%, rgba(0, 0, 0, 0) 100%);
    transition: top .3s ease, background .3s ease, padding .3s ease;
}

.site_header.no_anim {
    transition: none !important;
}

.site_header.no_hero {
    background: #1BAFFF;
}

.site_header.is_sticky {
    top: 0;
    background: #1BAFFF;
    padding: 0;
}

.header_row {
    margin: 0 auto;
    padding: 0 7.5rem;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    box-sizing: border-box;
}

.site_header_logo img {
    height: 3.5rem;
    width: auto;
}

.site_header_nav {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 2.5rem;
    list-style: none;
    margin: 0;
    padding: 0;
}

.site_header_nav a {
    color: #fff;
    font-size: .9rem;
    font-weight: 500;
    transition: opacity .2s ease;
    line-height: 5rem;
    display: block;
    text-transform: uppercase;
}

.site_header_nav a:hover {
    opacity: .75;
}

.site_header_nav > li > a.active {
    opacity: 1;
    font-weight: 700;
    position: relative;
}

.site_header_nav > li > a:after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 2px;
    background: #fff;
    border-radius: 2px;
    transition: .5s all;
    width: 0;
    left: 50%;
    transform: translateX(-50%);
}

.site_header_nav li {
    position: relative;
}

.site_header_nav .sub_nav {
    list-style: none;
    margin: 0;
    padding: 0;
    position: absolute;
    top: 100%;
    left: 0;
    min-width: 14rem;
    background: #1BAFFF;
    backdrop-filter: blur(6px);
    border-radius: .5rem;
    opacity: 0;
    visibility: hidden;
    transform: translateY(.5rem);
    transition: .3s all;
    z-index: 20;
    max-width: 7rem;
}

.site_header_nav li.has_children:hover .sub_nav {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.site_header_nav .sub_nav li {
    margin: 0;
}

.site_header_nav .sub_nav a {
    display: block;
    padding: .6rem 1.2rem;
    font-size: .85rem;
    line-height: 1.5;
}

.site_header_nav .sub_nav a:hover {
    background: rgba(255, 255, 255, 0.08);
    opacity: 1;
}

.site_header_nav .sub_nav a.active {
    background: rgba(255, 255, 255, 0.12);
    opacity: 1;
    font-weight: 700;
}


.item_related {
    position: relative;
}
.roomSlider .item_room ul.tien_ich {
    flex-wrap: wrap;
    justify-content: flex-start;
    row-gap: .8rem;
}

.roomSlider .item_room ul.tien_ich li {
    width: 50%;
    padding-right: .5rem;
    align-items: flex-start;
}

.roomSlider .item_room ul.tien_ich li .icon {
    flex-shrink: 0;
    margin-top: .3rem;
}

.roomSlider .swiper-slide {
    height: auto;
}

.roomSlider .item_room {
    height: 100%;
    display: flex;
    flex-direction: column;
}

.roomSlider .item_room .box_content {
    flex: 1;
}

.roomSlider .item_room .content {
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-line-clamp: 3;
    display: none;
    -webkit-box-orient: vertical;
    height: 4.8rem;
    margin-bottom: 1rem;
}

.home4Item .box_img:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(0deg, #0000004f, transparent);
    background-blend-mode: multiply;
    z-index: 2;
}

.home4_slider .swiper-slide.swiper-slide-active .home4Item {
    opacity: 1;
}
.home7_item:hover .box_img img {
    opacity: .5;
}

.home7_item svg path {
    transition: .5s all;
}

.home7_item:hover svg path {
    fill: #91D5FF;
}

.home7_item .content::-webkit-scrollbar-track {
    -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3);
    background-color: #F5F5F5;
}

.home7_item .content::-webkit-scrollbar {
    width: 0.217rem;
    background-color: #cedbff;
}
.home7_item .content::-webkit-scrollbar-thumb {
    background-color: #1BAFFF;
}


.home9_item_gallery {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
}

.home9_item_gallery .box_img {
    width: calc(100% / 3);
    padding: .5rem;
    height: 4rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.home9_item_gallery .box_img img {
    max-width: 83%;
}
.experience1_nav ul li a {color: #fff;text-transform: uppercase;font-weight: 500;font-size: .65rem;padding: .2rem .4rem;width: 100%;display: flex;position: relative;white-space: nowrap;}

.box_arrow {
    margin: .4rem 0;
}

.box_arrow svg {
    width: .6rem;
    height: auto;
}

.experience1_nav ul.sub_nav li:hover ul {
    opacity: 1;
    pointer-events: unset;
}

.experience1_nav li:hover ul.sub_nav {
    opacity: 1;
    pointer-events: unset;
}

.experience1_nav ul li a:before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0;
    height: 1px;
    background: #fff;
    transition: .5s all;
}

.experience1_nav ul li a:hover:before {
    width: 100%;
}
.guestroomDetail3_slider .guestroomDetail3_item img {
    height: 100%;
    width: 100%;
    object-fit: cover;
}
.gallery_popup_slider  button {
    display: none;
}

.gallery_popup_close {
    top: 0;
    right: 0;
    margin: 0;
    z-index: 99;
    border-radius: 0;
    width: 3rem;
    height: 3rem;
    padding: 0;
    min-height: unset;
    display: flex;
    align-items: center;
    justify-content: center;
}
.endow_item .nhan {
    display: none;
}

.endow_category h2 {
    display: none;
}

.endow_category+.endow_category {
    margin-top: 2rem;
}
button.select_current {
    margin: 0;
    font-size: 1.2rem;
    color: #BCBCBC;
    font-weight: 400;
    text-transform: unset;
    letter-spacing: 0;
    height: 2.7rem;
    min-width: 20rem;
    display: flex;
    justify-content: space-between;
    box-shadow: 0px 0px 4px 0px #047EC0 inset;
    border-radius: .6rem;
}

.custom_select {
    width: auto;
    display: inline-flex;
    position: relative;
}

ul.select_options {
    position: absolute;
    bottom: 0;
    z-index: 9;
    width: 100%;
    text-align: left;
    list-style: none;
    margin: 0;
    transform: translateY(100%);
    background: #F4F4F494;
    border-radius: .3rem;
    padding: .3rem 0;
    backdrop-filter: blur(5.312323093414307px);
}

ul.select_options li {
    margin: 0;
    width: 100%;
}

ul.select_options a {
    color: #047EC0;
    font-size: 1.2rem;
    font-weight: 500;
    padding: .5rem .8rem;
    width: 100%;
    display: flex;
    line-height: 1;
}

ul.select_options:before {
    content: '';
    content: "";
    position: absolute;
    inset: 0;
    padding: 1px;
    background: linear-gradient(270deg, #B2E2FF 0%, #FFFFFF 24.04%, #91D5FF 50.48%, #FFFFFF 74.04%, #A7DDFF 100%);
    -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    pointer-events: none;
    border-radius: .6rem;
}
@media only screen and (max-width: 1199px) {
   html {
    font-size: 1.2vw !important;
}
    .topbar_row {
    padding: 0 2rem;
}

.header_row {
    padding: 0 2rem;
}

.noti_box {
    padding: 3rem 2rem;
}
.room_item h3 {
    font-size: 1.7rem;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-line-clamp: 1;
    display: -webkit-box;
    -webkit-box-orient: vertical;
}
}
@media only screen and (max-width: 991px) {
   
    
}
@media only screen and (max-width: 767px) {
   html {
    font-size: 3.5vw !important;
}

header.site_header {
    display: none;
}

h1.title_head {
    font-size: 1.5rem;
}

.noti_content {
    padding: 0;
}

section.noti {
    padding: 3rem 0 0 0;
}

.noti_table thead th {
    font-size: .8rem;
}

.noti_table tbody td {
    font-size: .8rem;
}

.noti_box {
    padding: 3rem 0;
}
section.recruitment_page {
    padding: 3rem 0;
}

.recruitment_filter .inner {
    flex-direction: column;
}

.recruitment_item .inner {
    flex-direction: column;
}

.recruitment_item ul {
    flex-direction: column;
}

.recruitment_filter {
    margin-bottom: 2rem;
}
ul.breadcrumbs>*:not(*:last-child) {
    flex: 0 0 auto;
}

ul.breadcrumbs>*:last-child {
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-line-clamp: 1;
    display: -webkit-box;
    -webkit-box-orient: vertical;
}

.recruitment_details {
    padding: 2rem 0;
}

.thong_tin_tuyen_dung {
}

body {
    font-size: 1.1rem;
}

.content.noi_dung_td h3 {
    font-size: 1.5rem;
}
.contact_wrap {
    padding: 0;
    flex-direction: column;
}

.contact_content {
    font-size: 1.1rem;
    height: auto;
    padding: 0;
}

.contact_content h3 {
    font-size: 1.3rem;
}

.contact_content p {
    margin-bottom: .4rem;
}

.contact_iframe {
    padding: 0;
}

.contact_iframe iframe {
    height: 20rem;
    margin-top: 1rem;
}

.contact_page {
    padding: 3rem 0;
}
.news_page_content {
    margin-bottom: 2rem;
}

.wrap_post .post_item:first-child .box_img {
    padding-bottom: 56.25%;
}

.wrap_post .post_item:first-child {
    flex-direction: column;
}

.wrap_post .post_item:first-child .box_content {
    padding: 1.5rem;
}

.wrap_post .post_item:first-child h3 {
    font-size: 1.5rem;
    line-height: 1.5;
}

.post_item .content {
    font-size: 1.1rem;
}

.post_item {
    width: calc(50% - 1rem);
    margin: 0 .5rem;
}

.wrap_post {
    margin: 0 -.5rem;
    row-gap: 1rem;
}
.wrap_content_post {
    width: 100%;
}

.blog_details_wrap.flex {
    flex-direction: column;
}

.sidebar_post {
    margin: 0;
    padding: 2rem  0 0;
    border: none;
}

.text-right {}

section.endow1 .custom_select {
    width: 100%;
}

button.select_current {
    width: 100%;
}

section.endow1 {
    padding-top: 2rem;
}
.service1_item .box_img {width: 100%;}

.service1_item {
    display: block;
    padding: 0;
}

.service1_item .box_content {
    padding: 1.5rem !important;
}

.service1_item ul.tien_ich {
    margin-left: 0;
}

.food4_form {
    padding: 1.5rem;
}
section.food4 {
    padding: 2rem 0;
}
.guestroom1 {
    margin: 2rem 0 0 0;
}

.guestroom2_item .inner .box_content {
    width: 100%;
    padding: 0 !important;
}

.guestroom2_item .inner {
    flex-direction: column;
    padding: 0;
    gap: 1.5rem;
}

.guestroom2_item .box_img {
    width: 100% !important;
    order: -1;
}

.guestroom2_item .box_img img {
    height: 15rem;
    object-fit: cover;
}

.guestroom2_item .content {
    font-size: 1.1rem;
    line-height: 1.5;
}

.guestroom2_item h3 {
    margin-bottom: .5rem;
}

.guestroom2_item ul.tien_ich {
    flex-direction: column;
    margin: 1rem 0;
}

.guestroom2_item ul.tien_ich li {
    width: 100%;
    padding: 0;
}
section.guestroomDetail1 {
    padding-top: 3rem;
}

.guestroomDetail1_content {
    width: 100%;
    padding: 2rem;
}

.guestroomDetail1_wrap.flex {
    flex-direction: column;
}

.guestroomDetail1_info {
    padding: 0 10px;
    padding-top: 2rem;
    margin-bottom: 3rem;
}

.guestroomDetail1_info .box_price b.price {
    font-size: 2rem;
}

.guestroomDetail1_info ul.tien_ich li {
    width: 100%;
}

.guestroomDetail3_slider .guestroomDetail3_item {
    height: 14rem;
}

.guestroomDetail3_slider .swiper {
    margin: 0;
}

.guestroomDetail4_slider>.swiper {
    width: calc(100% + -3rem);
}

.room_item {
    margin: 0 .5rem;
}

.guestroomDetail4_box {
    padding: 2rem 0;
}
section.food1 {
    padding-top: 2rem;
}

.food1_content h2.heading_title br {
    display: none;
}

section.food1 .row>.col {
    padding: 0 10px;
}

.food1_item {
    flex-direction: column;
}

.food1_item .box_content {
    padding: 1.5rem !important;
}

.food1_item .box_img {
    width: 100%;
    order: -1;
    height: 14rem;
}

.food1_item ul.info {
    flex-direction: column;
    margin-left: 0;
}

.food1_item .content {
    font-size: 1.1em;
}

section.food2 .row>.col {
    padding: 0 10px;
}

.wrap_slider.food2_slider {
    width: 100%;
}

.food2_item {
    margin: 0;
}
.item_banner img {
    height: 22rem;
}

.home2_group span.sub_title {
    display: none;
}

.home2_group h1 {
    margin-top: 0;
}

.home2_slider {
    margin: 0 !important;
    max-width: 100%;
    margin: auto !important;
}

.home2_slider .swiper {
    padding: 3rem 4rem;
}

.home2_slider .swiper-slide {
    padding: 0 1.8rem;
}

.home2_slider button {
    display: none;
}

.home2_slider .swiper-pagination {
    display: none;
}
.wrap_slider.roomSlider {
    margin: 0 calc(-.6rem - 10px);
}

.item_room .box_content {padding: 1.5rem 1.5rem;background-image: url(/assets/images/nen2.jpg);background-size: cover;background-repeat: no-repeat;background-position: center;}

.item_room .box_content h3 {
    font-size: 1.4rem;
}

.roomSlider .item_room ul.tien_ich {
    flex-wrap: wrap;
    gap: 0;
    row-gap: .8rem;
}

.roomSlider .item_room ul.tien_ich li {
    width: 100%;
    padding-right: .5rem;
}

.roomSlider .item_room ul.tien_ich li .icon {
    flex-shrink: 0;
    margin-top: .5rem;
}

ul.tien_ich li svg {
    width: 1rem;
}
.roomSlider .swiper-pagination {
    display: none;
}

section.home3 {
    padding-bottom: 0;
}

.home4Item .box_content {
    gap: 1rem;
}

.wrap_slider.home5Slider .swiper {
    overflow: unset;
}

.home5Item {
    padding: 1.5rem .5rem;
}

.home5_content {
    font-size: 1.1rem;
}

.wrap_slider.home6Slider {
    margin: 0;
}

.wrap_slider.home6Slider .swiper {
    padding-right: 5rem;
}

.home7_box.flex {flex-wrap: wrap;}

.home7_list {
    width: calc(50% - .7rem);
}

.home7_item .content {
    font-size: 1rem;
}

.home7_item .box_img {
    height: 10rem;
}

.home7_list:nth-child(odd) .home7_item:nth-child(even) .box_img {
    height: 20rem;
}

.home7_list:nth-child(even) .home7_item:nth-child(odd) .box_img {
    height: 20rem;
}

.wrap_slider.home8Slider .swiper {
    padding-right: 4rem;
}

.home8Box {
    background-attachment: unset;
}

section.home9 {
    padding: 3rem 0;
}

.home9_content h2 {
    font-size: 1.1rem;
}

.wrap_slider.home9_items .swiper {
    padding-right: 6rem;
}

.wrap_slider.home9_items button {
    display: none;
}

.wrap_slider.home9_items .swiper-pagination {
    display: none;
}


}

.home1 {
    position: relative;
}

.home_booking_bar {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 25;
    margin: 0 auto;
    border-radius: .8rem;
    padding: 1rem 0;
}

.booking_bar_desktop {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .8rem;
    justify-content: center;
}

.booking_bar_mobile {
    display: none;
}

.home_booking_bar:before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background: rgba(4, 20, 34, 0.15);
    backdrop-filter: blur(8px);
    border-radius: .8rem;
}

.booking_field {
    position: relative;
    flex: 1 1 0;
    max-width: 10rem;
    width: 100%;
}

.booking_field_btn {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    gap: .3rem;
    padding: .7rem 1rem;
    background: rgba(255, 255, 255, 0.12);
    border: 1px solid #fff;
    border-radius: 100px;
    color: #fff;
    cursor: pointer;
    text-align: left;
    transition: .3s all;
    margin: 0;
    min-height: unset;
    padding: 0;
    height: 2.1rem;
    border-radius: .3rem;
    padding: .6rem;
}

.booking_field_btn:hover {
    background: rgba(255, 255, 255, 0.2);
}

.booking_field_btn .icon {
    flex: 0 0 auto;
    display: flex;
    color: #fff;
}

.booking_field_btn .chevron {
    flex: 0 0 auto;
    margin-left: auto;
    display: flex;
    color: #fff;
}

.booking_field_btn .label {
    flex: 1;
    font-size: .7rem;
    font-weight: 600;
    line-height: 1.3;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    text-transform: math-auto;
}

.booking_field_btn .label b {
    display: block;
    font-weight: 700;
    font-size: .85rem;
}

.booking_field_btn .label small {
    display: block;
    font-weight: 400;
    font-size: .7rem;
    opacity: .8;
}

.booking_submit {
    flex: 0 0 auto;
    padding: 0 .8rem;
    background: linear-gradient(90deg, #1BAFFF 0%, #91D5FF 100%);
    color: #fff;
    font-weight: 700;
    font-size: 1rem;
    text-transform: uppercase;
    border: none;
    border-radius: .6rem;
    cursor: pointer;
    transition: .3s all;
    margin: 0;
    height: 2.1rem;
    min-height: unset;
    border: 1px solid #fff;
    display: flex;
    align-items: center;
}

.booking_submit:hover {
    opacity: .9;
}

.booking_dropdown {
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 40;
    background: rgb(255 255 255 / 23%);
    border-radius: .4rem;
    padding: 1rem;
    color: #333;
    backdrop-filter: blur(8px);
}

.room_dropdown {
    min-width: 100%;
    display: flex;
    flex-direction: column;
    background: rgb(255 255 255 / 43%);
    backdrop-filter: blur(7.099999904632568px);
    padding: 0;
}

.room_dropdown a {
    padding: .3rem .5rem;
    font-size: .8rem;
    color: #333;
    border-radius: .3rem;
    transition: .2s all;
}

.room_dropdown a:hover {
    background: #EAF6FF;
    color: #047EC0;
}

.date_dropdown {
    display: flex;
    flex-direction: column;
    min-width: 20rem;
    width: max-content;
    max-width: calc(100vw - 4rem);
}

.date_dropdown .react-datepicker {
    display: flex;
}

.date_dropdown .react-datepicker__month-container {
    float: none;
}

@media (max-width: 767px) {
    .date_dropdown {
        width: auto;
        max-width: 100%;
    }

    .date_dropdown .react-datepicker {
        flex-direction: column;
    }
}

.date_dropdown_tabs {
    display: flex;
    gap: 1.5rem;
    border-bottom: 1px solid #E5E5E5;
    margin-bottom: .8rem;
    justify-content: space-around;
}

.date_dropdown_tabs button {
    background: none;
    border: none;
    padding: 0 0 .4rem;
    font-size: .6rem;
    font-weight: 600;
    color: #7D7D7D;
    cursor: pointer;
    border-bottom: 2px solid transparent;
    margin: 0;
    text-transform: unset;
    font-weight: 600;
    width: 50%;
}

.date_dropdown_tabs button.active {
    color: #047EC0;
    border-bottom-color: #047EC0;
}

.date_dropdown_flexible {
    padding: 2rem 1rem;
    text-align: center;
    color: #7D7D7D;
    font-size: .85rem;
    max-width: 24rem;
}

.guests_dropdown {
    min-width: 17rem;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.guests_row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.guests_row_label b {
    display: block;
    color: #047EC0;
    font-size: .8rem;
}

.guests_row_label small {
    display: block;
    color: #7D7D7D;
    font-size: .75rem;
}

.guests_row_control {
    display: flex;
    align-items: center;
    gap: .8rem;
}

.guests_row_control button {
    width: 1.4rem;
    height: 1.4rem;
    border-radius: 100px;
    border: 1px solid #047EC0;
    background: #fff;
    color: #047EC0;
    font-size: 1.1rem;
    line-height: 1;
    cursor: pointer;
    justify-content: center;
    transition: .2s all;
    margin: 0;
    padding: 0;
    min-height: unset;
    border: 0.7px solid;
    background: #BCBCBC;
    color: #fff;
    line-height: .1;
}

.guests_row_control button:disabled {
    border-color: #ccc;
    color: #ccc;
    cursor: not-allowed;
}

.guests_row_control button:not(:disabled):hover {
    background: #047EC0;
    color: #fff;
}

.guests_row_control span {
    min-width: 1.2rem;
    text-align: center;
    font-weight: 600;
    color: #047EC0;
    font-size: .9rem;
}

.react-datepicker {
    border: none;
    font-family: inherit;
    background: transparent;
}

.react-datepicker__month-container {
    padding: 0 .5rem;
}

.react-datepicker__header {
    background: transparent !important;
}

.react-datepicker__day--in-range,
.react-datepicker__day--in-selecting-range {
    background-color: #E3F3FF;
    color: #047EC0;
}

.react-datepicker__day--selected,
.react-datepicker__day--range-start,
.react-datepicker__day--range-end {
    background-color: #047EC0 !important;
    color: #fff !important;
    border-radius: 100% !important;
}

@media (max-width: 991px) {
    .home_booking_bar {
        position: relative;
        bottom: 0;
        margin: -3rem 1rem 0;
    }
}

@media (max-width: 767px) {
    .home_booking_bar {
        flex-direction: column;
        margin: -2rem 1rem 0;
    }

    .booking_field {
        min-width: 0;
    }

    .booking_submit {
        width: 100%;
        padding: .9rem 0;
    }

    .booking_dropdown {
        left: 0;
        right: 0;
        max-width: 100%;
        background: #ffffffe0;
    }
}


@media (min-width: 768px) and (max-width: 1199px) {
    .site_footer {
        padding: 2rem 3rem 1.4rem;
    }

    .site_footer_main {
        grid-template-columns: 13rem minmax(0, 1fr) auto;
        row-gap: 2.4rem;
    }

    .site_footer_info {
        grid-column: 2;
        grid-row: 1;
        min-width: 0;
    }

    .site_footer_columns {
        grid-column: 2;
        grid-row: 2;
        min-width: 0;
        padding: 0;
        flex-wrap: wrap;
        gap: 2rem 3rem;
    }

    .site_footer_qr {
        grid-column: 3;
        grid-row: 1;
        margin-right: 0;
    }

    .site_footer_bottom {
        margin-right: 0;
    }
}

@media (max-width: 767px) {
    .site_footer_main {
        grid-template-columns: 1fr;
        row-gap: 1.6rem;
        padding: 0 1rem;
    }

    .site_footer_brand {
        padding-top: 0;
    }

    .site_footer_logo {
        justify-content: center;
    }

    .site_footer_logo img {
        width: 9rem;
    }

    .site_footer_info,
    .site_footer_columns {
        padding-top: 0;
        padding-right: 0;
    }

    .site_footer_columns {
        min-width: 0;
        flex-wrap: wrap;
        gap: 1.6rem;
    }

    .site_footer_info {
        min-width: 0;
    }

    .site_footer_columns h3 {
        white-space: normal;
    }

    .site_footer_column h3 {
        font-size: 1rem;
        margin-bottom: .7rem;
    }

    .site_footer_column ul,
    .site_footer_contact {
        gap: .6rem;
    }

    .site_footer_column ul li,
    .site_footer_contact li {
        font-size: .95rem;
    }

    .site_footer_contact .icon {
        width: 1.1rem;
    }

    .site_footer_qr {
        display: none;
    }

    .site_footer_bottom {
        grid-template-columns: 1fr;
        row-gap: 1rem;
        margin: 1.6rem 1rem 0;
    }

    .site_footer_copyright {
        padding-top: 1rem;
        font-size: .7rem;
        text-align: center;
    }

    .site_footer_bct {
        order: -1;
        justify-content: center;
        margin-top: 0;
    }

    .site_footer_watermark {
        display: none;
    }

    .fixed_buttons {
        display: flex;
        flex-wrap: nowrap;
        flex-direction: unset;
        bottom: 1rem;
        left: 1rem;
        right: 1rem;
        justify-content: center;
        border-radius: .6rem;
        gap: 1.7rem;
    }

    .site_footer {
        padding: 2rem 0 6rem;
    }

    .back_to_top {
        bottom: 7rem;
        right: .5rem;
        width: 3rem;
        height: 3rem;
    }

    .back_to_top svg {
        max-width: 100%;
        height: auto;
    }

    .fixed_buttons_item {
        width: 2.5rem;
        height: 2.5rem;
    }
}


.booking_field_date {
    padding: 0;
    display: flex;
    align-items: stretch;
    background: rgba(255, 255, 255, 0.12);
    border: 1px solid #fff;
    border-radius: .3rem;
    max-width: 19rem;
}

.booking_date_btn {
    flex: 1 1 0;
    display: flex;
    align-items: center;
    gap: .6rem;
    padding: .7rem 1rem;
    background: none;
    border: none;
    color: #fff;
    cursor: pointer;
    text-align: left;
    min-width: 0;
    margin: 0;
    padding: 0;
    padding: 0 .6rem;
    height: 2.1rem;
}

.booking_date_btn .icon {
    flex: 0 0 auto;
    display: flex;
    color: #fff;
}

.booking_date_btn .label b {
    display: block;
    font-weight: 700;
    font-size: .7rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    text-transform: capitalize;
    line-height: 1.6;
}

.booking_date_btn .label small {
    font-weight: 500;
    font-size: .6rem;
    display: block;
    line-height: normal;
    text-transform: capitalize;
}

.booking_date_divider {
    flex: 0 0 auto;
    width: 1px;
    margin: 0;
    background: #FFFFFF;
}

@media (max-width: 767px) {
    .booking_field_date {
        flex-direction: column;
    }

    .booking_date_divider {
        width: auto;
        height: 1px;
        margin: 0 1rem;
    }
}


.mobile_menu_toggle {
    display: none;
    align-items: center;
    justify-content: center;
    width: 2.6rem;
    height: 2.6rem;
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
}

.mobile_nav_overlay {
    display: none;
}

@media (max-width: 767px) {
    header.site_header {
        display: flex !important;
        position: fixed;
        top: 0 !important;
        left: 0;
        right: 0;
        z-index: 50;
        background: #1BAFFF !important;
        padding: 0 !important;
        height: 5rem;
    }

    .header_row {
        padding: 0 1.2rem;
    }

    .site_header_logo img {
        height: 2.9rem;
    }

    .site_header_nav {
        display: none;
    }

    .header_search_mobile {
        display: block;
        flex: 1;
        min-width: 0;
        margin: 0 .8rem;
    }

    .header_search_mobile .header_search_form {
        min-width: 0;
        width: 100%;
    }

    .header_search_mobile .header_search_form input {
        min-width: 0;
        width: 100%;
        padding-left: .8rem;
        font-size: .85rem;
    }

    .header_search_mobile .header_search_dropdown {
        position: fixed;
        top: 5.4rem;
        left: 1rem;
        right: 1rem;
        width: auto;
        max-width: none;
        max-height: calc(100vh - 7rem);
    }

    .mobile_menu_toggle {
        display: flex;
        margin: 0;
    }

    .site_topbar {
        position: fixed;
        top: 5rem;
        left: 0;
        right: 0;
        z-index: 45;
        height: auto;
        background: #FFFFFF26;
        backdrop-filter: blur(5.599999904632568px);
    }

    .topbar_row {
        padding: 1rem 1.2rem;
        justify-content: flex-start;
        align-items: center;
    }

    .site_topbar_left {
        gap: .5rem;
        flex-wrap: nowrap;
    }

    .hotel_name {
        font-size: .75rem;
    }

    .rating_box {
        font-size: .8rem;
    }

    .rating_dots svg {
        width: .6rem;
        height: .6rem;
    }

    .site_topbar_right {
        display: none;
    }

    .mobile_nav_overlay {
        display: block;
        position: fixed;
        inset: 0;
        z-index: 999;
        background: rgba(0, 0, 0, .25);
        -webkit-backdrop-filter: blur(6px);
        backdrop-filter: blur(6px);
        transform: translateX(100%);
        transition: transform .3s ease;
        overflow-y: auto;
    }

    .mobile_nav_overlay.is_open {
        transform: translateX(0);
    }

    .mobile_nav_header {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 1rem;
        padding: 0 1.2rem;
        background: #EEEEEE;
        height: 5rem;
    }

    .mobile_nav_header .site_header_logo img {
        height: 3.2rem;
        filter: invert(48%) sepia(75%) saturate(1500%) hue-rotate(175deg) brightness(95%) contrast(101%);
    }

    .mobile_nav_header_right {
        display: flex;
        align-items: center;
        gap: 1rem;
    }

    .mobile_booking_btn {
        background: #047EC0;
        color: #fff;
        font-size: .95rem;
        font-weight: 700;
        text-transform: uppercase;
        padding: .8rem 1.2rem;
        border-radius: 0;
        white-space: nowrap;
        color: #fff !important;
    }

    .mobile_nav_close {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 2rem;
        height: 2rem;
        background: none;
        border: none;
        padding: 0;
        cursor: pointer;
        flex: 0 0 auto;
        margin: 0;
    }

    .mobile_nav_lang {
        display: flex;
        align-items: center;
        justify-content: flex-end;
        gap: .5rem;
        background: #047EC0;
        color: #fff;
        font-size: 1.1rem;
        font-weight: 600;
        padding: 1rem 1.2rem;
    }

    .mobile_nav_panel {
        width: 65%;
        min-height: calc(100% - 8.5rem);
        background: #fff;
        padding-bottom: 2rem;
    }

    .mobile_nav_list {
        list-style: none;
        margin: 0;
        padding: 0;
    }

    .mobile_nav_list li {
        border-bottom: 1px solid #DDDDDD;
        margin: 0;
    }

    .mobile_nav_row {
        display: flex;
        align-items: center;
        justify-content: space-between;
    }

    .mobile_nav_list a {
        display: block;
        flex: 1;
        padding: 1rem 1.2rem;
        color: #047EC0;
        font-size: .85rem;
        font-weight: 500;
        text-transform: uppercase;
    }

    .mobile_nav_list a.active {
        font-weight: 700;
    }

    .mobile_sub_toggle {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 2.8rem;
        align-self: stretch;
        background: none;
        border: none;
        padding: 0;
        margin: 0;
        color: #047EC0;
        cursor: pointer;
    }

    .mobile_nav_list li.is_open .mobile_sub_toggle svg {
        transform: rotate(180deg);
    }

    .mobile_sub_list {
        list-style: none;
        margin: 0;
        padding: 0 0 .4rem;
        background: #F5F9FC;
    }

    .mobile_sub_list li {
        border-bottom: none;
    }

    .mobile_nav_list .mobile_sub_list a {
        padding: .7rem 1.2rem .7rem 2rem;
        font-size: .8rem;
        font-weight: 400;
    }

    .mobile_nav_contact {
        padding: 1.2rem;
    }

    .mobile_nav_contact_title {
        font-size: 1.05rem;
        font-weight: 700;
        color: #111;
        margin-bottom: .6rem;
    }

    .mobile_nav_contact_row {
        display: flex;
        align-items: center;
        gap: .5rem;
        color: #333;
        font-size: .75rem;
        margin-top: .5rem;
        word-break: break-all;
    }

    .mobile_nav_contact_row svg {
        flex: 0 0 auto;
    }
}


@media (max-width: 767px) {
    #wrapper {
        padding-top: 15.5rem;
    }

    .home1 {
        margin-top: -10.5rem;
    }
    .rating_dots path {
    fill: #fff;
}

.rating_dots   circle {
    fill: #fff;
}

.home1 button.slider_nav_btn {
    display: none;
}

.slider_banner .swiper-pagination {
    display: none;
}

button.mobile_nav_close path {
    stroke: #047EC0;
}
.fixed_buttons:before {
    border-radius: .6rem;
}
}


@media (max-width: 767px) {
    .home_booking_bar {
        left: 0;
        right: 0;
        bottom: 0;
        padding: 0;
        border-radius: 100px;
        margin: 0;
        margin: 0 1rem;
        transform: translateY(-50%);
    }

    .home_booking_bar:before {
        display: none;
    }

    .booking_bar_desktop {
        display: none;
    }

    .booking_bar_mobile {
        display: flex;
        align-items: stretch;
        background: linear-gradient(135deg, #4FC7FF 0%, #1BAFFF 55%, #C3E8FF 100%);
        background: linear-gradient(180deg, rgba(27, 175, 255, 0.6) 0%, rgba(145, 213, 255, 0.6) 100%);
        border-radius: .5rem;
        overflow: visible;
        height: 3.6rem;
        backdrop-filter: blur(6px);
        align-items: center;
        padding: .3rem;
    }

    .mobile_field {
        position: relative;
        min-width: 0;
        flex: 0 0 auto;
        max-width: 7.6rem;
    }

    .mobile_field_btn {
        width: 100%;
        height: 100%;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        justify-content: center;
        gap: .2rem;
        background: none;
        border: none;
        color: #fff;
        padding: 0 .5rem;
        cursor: pointer;
        line-height: 1.2;
        margin: 0;
        flex: 0 0 auto;
    }

    .mobile_field_top {
        display: flex;
        align-items: center;
        gap: .35rem;
        line-height: 1;
    }

    .mobile_field_top .icon,
    .mobile_field_top .chevron {
        display: flex;
        line-height: 1;
    }

    .mobile_field_top .icon svg {
        display: block;
        width: 1.3rem;
        height: 1.3rem;
    }

    .mobile_field_top .chevron svg {
        display: block;
        width: .6rem;
        height: auto;
    }

    .mobile_field_label {
        font-size: .72rem;
        font-weight: 600;
        line-height: 1.2;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        max-width: 100%;
        padding-right: .6rem;
        color: #047EC0;
        text-transform: lowercase;
    }

    .mobile_field_divider {
        width: 1px;
        margin: 0;
        background: #fff;
        flex: 0 0 auto;
        height: 74%;
    }

    .mobile_submit {
        flex: 0 0 auto;
        width: auto;
        padding: 0 1.3rem;
        margin: 0;
        border-radius: 0 100px 100px 0;
        height: 100%;
        font-size: .8rem;
        background: linear-gradient(0deg, #1BAFFF 0%, #1292D6 100%);
        border-radius: .6rem;
        height: 3rem;
    }

    .booking_bar_mobile .booking_dropdown {
        top: calc(100% + .8rem);
        left: 50%;
        transform: translateX(-50%);
        width: max-content;
        max-width: calc(100vw - 3rem);
    }

    .booking_bar_mobile .date_dropdown {
        width: max-content;
    }
}


@media (max-width: 767px) {
    .heading_title.pd_left {
        padding: 0;
    }

    .home4_slider .swiper-slide.swiper-slide-active {
        scale: 1;
    }

    .home4_slider {
        max-width: 100%;
    }

    .home4_box {
        background: none !important;
    }

    .wrap_slider.home4_slider .swiper {
        padding: 1rem 0;
    }

    .home4Item h3 {
        font-size: .9rem;
    }

    section.home4 button.slider_nav_btn {
        display: none;
    }

    section.home5 {
        padding: 4rem 0 2rem;
        background-attachment: unset;
    }

    section.home6 {
        padding: 3rem 0 2rem;
    }

    .mobile_field_btn+.mobile_field_btn {
        border-left: 1px solid #FFFFFF !important;
    }

    section.home2 {
        padding: 2rem 0;
    }
    .wrap_slider.home2_slider {
    margin: 0 -10px !important;
    max-width: unset;
}
.item_qa h3 {
    font-size: 1.2rem;
}
}


.roomSlider .slider_nav_btn {
    display: none;
}

@media (max-width: 767px) {
    .roomSlider .slider_nav_btn {
        display: flex;
        width: 2.4rem;
        height: 2.4rem;
        left: .5rem;
    }

    .roomSlider .slider_nav_btn.room_next {
        left: unset;
        right: .5rem;
    }
    .roomSlider .slider_nav_btn {
    top: 7.7rem;
    left: 1.5rem;
    width: 2.5rem;
    height: 2.5rem;
    min-height: unset;
}

.roomSlider .slider_nav_btn.room_next {
    right: 1.5rem;
}
}


.heading_row {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.heading_more_link {
    display: none;
}

@media (max-width: 767px) {
    .heading_more_link {
        display: flex;
        align-items: center;
        gap: .2rem;
        color: #047EC0;
        font-size: .85rem;
        font-weight: 600;
        white-space: nowrap;
        flex: 0 0 auto;
    }

    .heading_more_link svg {
        width: 1.2rem;
        height: 1.2rem;
    }

    .home8_view_more_desktop {
        display: none;
    }
    .heading_row h2.heading_title {
    margin: 0;
    font-size: 1.35rem;
}

.title_line {
    font-size: 1.8rem;
    padding: 0 10px;
    text-align: center;
    justify-content: center;
}

.title_line:before, .title_line:after {
    display: none;
}

.heading_row {
    margin-bottom: 1rem;
}
section.home7 .text-right {
    display: none;
}
}


.search_page {
    padding: 12rem 0 5rem;
    min-height: 40vh;
}

.search_page_empty {
    color: #7D7D7D;
    font-size: 1rem;
    margin-top: 1rem;
}

.search_page_group {
    margin-top: 2.5rem;
}

.search_page_group h2 {
    color: #047EC0;
    font-size: 1.4rem;
    margin-bottom: 1.2rem;
}

.search_page_grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1.5rem;
}

.search_page_item {
    display: block;
    border-radius: .6rem;
    overflow: hidden;
    background: #F7F9FB;
    transition: .3s all;
}

.search_page_item:hover {
    box-shadow: 0 .6rem 1.5rem rgba(0, 0, 0, .1);
    transform: translateY(-.3rem);
}

.search_page_item .box_img {
    position: relative;
    padding-top: 65%;
    overflow: hidden;
}

.search_page_item .box_img img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.search_page_item_content {
    padding: 1rem 1.2rem 1.4rem;
}

.search_page_item_content h3 {
    font-size: 1rem;
    margin-bottom: .5rem;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    -webkit-box-orient: vertical;
}

.search_page_item_content p {
    font-size: .85rem;
    color: #7D7D7D;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    -webkit-box-orient: vertical;
}

.not_found_page {
    padding: 14rem 0 6rem;
    text-align: center;
}

.not_found_page h1 {
    font-size: 6rem;
    color: #1BAFFF;
    margin-bottom: 1rem;
}

.not_found_page p {
    color: #7D7D7D;
    font-size: 1rem;
    margin-bottom: 2rem;
}

@media (max-width: 767px) {
    .search_page {
        padding: 9rem 0 3rem;
    }

    .search_page_grid {
        grid-template-columns: repeat(2, 1fr);
        gap: .8rem;
    }

    .not_found_page {
        padding: 10rem 0 4rem;
    }

    .not_found_page h1 {
        font-size: 4rem;
    }
    .recruitment_filter input {
    min-width: unset;
}
.experience1_title {}

.experience1_box {
    margin: 0;
}

.experience1_title a.button_style {
    margin: 0;
}

.experience1_item {
    width: calc(calc(100% / 2) - 1rem);
    height: 12rem;
}
.wrap_slider.home8Slider .swiper {
    padding: 0;
}
}


.load_home_page {
    position: fixed;
    inset: 0;
    z-index: 999999;
    transition: visibility 1s;
}

.load_home_page_mask {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}

.load_home_page_mask span {
    display: block;
    width: 100%;
    height: 20%;
    position: absolute;
    left: 0;
    transition: 1s width ease-in-out;
    background-color: #1BAFFF;
}

.load_home_page_mask span:nth-child(even) {
    left: unset;
    right: 0;
}

.load_home_page_mask span:nth-child(1) { top: 0; }
.load_home_page_mask span:nth-child(2) { top: 20%; }
.load_home_page_mask span:nth-child(3) { top: 40%; }
.load_home_page_mask span:nth-child(4) { top: 60%; }
.load_home_page_mask span:nth-child(5) { top: 80%; }

.load_home_page_logo {
    width: 18rem;
    max-width: 60%;
    height: auto;
    position: absolute;
    z-index: 9;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    transition: 1s opacity ease-in-out;
}

.load_home_page_logo svg,
.load_home_page_logo img {
    width: 100%;
    height: auto;
    display: block;
}

.load_home_page.is_complete {
    visibility: hidden;
}

.load_home_page.is_complete .load_home_page_mask span {
    width: 0;
}

.load_home_page.is_complete .load_home_page_logo {
    opacity: 0;
}

@media (max-width: 767px) {
    .load_home_page_logo {
        width: 13rem;
    }
}


.button_link {
    position: relative;
    overflow: hidden;
}

.button_link:before,
ul.list_button a:after,
.link_box:after {
    content: "";
    position: absolute;
    top: 0;
    left: -75%;
    width: 40%;
    height: 100%;
    background: linear-gradient(120deg, transparent 0%, rgba(255, 255, 255, 0.55) 50%, transparent 100%);
    transform: skewX(-20deg);
    transition: left .85s ease;
    pointer-events: none;
    z-index: 1;
}

.button_link:hover:before,
ul.list_button a:hover:after,
.link_box:hover:after {
    left: 125%;
}


.booking_submit {
    position: relative;
    overflow: hidden;
}

.booking_submit:before {
    content: "";
    position: absolute;
    top: 0;
    left: -75%;
    width: 40%;
    height: 100%;
    background: linear-gradient(120deg, transparent 0%, rgba(255, 255, 255, 0.55) 50%, transparent 100%);
    transform: skewX(-20deg);
    transition: left .85s ease;
    pointer-events: none;
    z-index: 1;
}

.booking_submit:hover:before {
    left: 125%;
}


.recruitment_item a {
    position: relative;
    overflow: hidden;
}

.recruitment_item a:before {
    content: "";
    position: absolute;
    top: 0;
    left: -75%;
    width: 40%;
    height: 100%;
    background: linear-gradient(120deg, transparent 0%, rgba(255, 255, 255, 0.55) 50%, transparent 100%);
    transform: skewX(-20deg);
    transition: left .85s ease;
    pointer-events: none;
    z-index: 1;
}

.recruitment_item a:hover:before {
    left: 125%;
}


.wrap_input button {
    position: relative;
    overflow: hidden;
}

.wrap_input button:before {
    content: "";
    position: absolute;
    top: 0;
    left: -75%;
    width: 40%;
    height: 100%;
    background: linear-gradient(120deg, transparent 0%, rgba(255, 255, 255, 0.55) 50%, transparent 100%);
    transform: skewX(-20deg);
    transition: left .85s ease;
    pointer-events: none;
    z-index: 1;
}

.wrap_input button:hover:before {
    left: 125%;
}


@media (max-width: 767px) {
    .food1_item .box_img img {
        width: 100%;
    }
}


@media (max-width: 767px) {
    .guestroom2_item a.link_box {
        margin: auto;
        display: flex;
        width: max-content;
    }
}

/* ==== Feedback lần 2 (10/2026) ==== */

/* Chữ + icon trong các danh sách thông tin đổi sang màu xanh chủ đạo */
ul.tien_ich svg [fill="#7D7D7D"],
.food1_item ul.info svg [fill="#7D7D7D"],
.recruitment_item ul svg [fill="#7D7D7D"],
ul.box_meta svg [fill="#7D7D7D"] {
    fill: #047EC0;
}

ul.tien_ich svg [stroke="#7D7D7D"],
.food1_item ul.info svg [stroke="#7D7D7D"] {
    stroke: #047EC0;
}

/* Header: giữ chỗ cho menu 1 để khi menu 1 chuyển sang fixed (lúc đã cuộn) trang không bị giật */
.site_topbar_holder {
    position: relative;
    height: 3.6rem;
}

.site_topbar {
    transition: transform .3s ease;
}

.site_topbar.no_anim {
    transition: none;
}

/* Đã cuộn: menu 1 ẩn lên trên, rê chuột lên header thì trượt xuống cùng menu 2 */
.site_topbar.is_floating {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    transform: translateY(-100%);
}

.site_topbar.is_floating.is_revealed {
    transform: none;
}

.site_header.is_sticky.with_topbar {
    top: 3.6rem;
}

@media (max-width: 767px) {
    .site_topbar_holder {
        height: 0;
    }

    .site_topbar.is_floating {
        top: 5rem;
        transform: none;
    }

    .site_topbar.hide_mobile {
        display: none;
    }
}

/* Footer: tách rõ từng mục trong cột liên kết (Điều khoản & Quy định) */
.site_footer_column h3 {
    margin-bottom: 1.3rem;
}

.site_footer_columns .site_footer_column ul {
    gap: 0;
}

.site_footer_columns .site_footer_column ul li {
    padding: .65rem 0;
    border-bottom: 1px solid rgba(255, 255, 255, .18);
}

.site_footer_columns .site_footer_column ul li:first-child {
    padding-top: 0;
}

.site_footer_columns .site_footer_column ul li:last-child {
    border-bottom: none;
}

@media (max-width: 767px) {
    .site_footer_columns .site_footer_column ul li {
        padding: .7rem 0;
    }

    /* Mobile hiện mã QR giống bản desktop */
    .site_footer_qr {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 1rem;
        width: auto;
        margin: .4rem 0 0;
    }

    .site_footer_qr img {
        width: 6rem;
        flex: 0 0 auto;
    }

    .site_footer_qr .caption {
        margin-top: 0;
        font-size: .9rem;
    }
}

/* Tiện ích - Dịch vụ: khung ảnh chạy slide tự động */
.service1_img_slider,
.service1_img_slider .swiper,
.service1_img_slider .swiper-slide {
    height: 100%;
}

.service1_img_slider img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* Nút "Xem thêm" có nền để nổi trên mọi ảnh */
a.view_gallery {
    padding: .45rem .6rem .45rem 1rem;
    border-radius: 100px;
    background: rgba(0, 0, 0, .45);
    -webkit-backdrop-filter: blur(6px);
    backdrop-filter: blur(6px);
    transition: background .3s ease;
}

a.view_gallery:hover {
    background: rgba(4, 126, 192, .85);
}

a.view_gallery.style_2 {
    background: rgba(255, 255, 255, .85);
}

a.view_gallery.style_2:hover {
    background: #fff;
}

a.view_gallery svg {
    width: 1.4rem;
}

/* Ẩm thực: ảnh nhà hàng chạy slide tự động + nút "Xem thêm" sang trang trải nghiệm */
.food1_item .box_img {
    position: relative;
}

.food1_img_slider,
.food1_img_slider .swiper,
.food1_img_slider .swiper-slide {
    height: 100%;
}

.food1_img_slider img {
    width: 100%;
    display: block;
}

a.view_more_img {
    position: absolute;
    left: 1.25rem;
    bottom: 1.25rem;
    z-index: 9;
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    padding: .5rem 1.1rem;
    border-radius: 100px;
    color: #fff;
    font-size: .9rem;
    background: rgba(0, 0, 0, .45);
    -webkit-backdrop-filter: blur(6px);
    backdrop-filter: blur(6px);
    transition: background .3s ease;
}

a.view_more_img:hover {
    color: #fff;
    background: rgba(4, 126, 192, .85);
}

a.view_more_img svg {
    width: 1rem;
    height: auto;
    transition: transform .3s ease;
}

a.view_more_img:hover svg {
    transform: translateX(.2rem);
}

/* Trải nghiệm: ô video + popup phát video */
.experience_video_item {
    position: relative;
    overflow: hidden;
    background: #0b2a3d;
}

.experience_video_item img,
.experience_video_item video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: .7s all;
}

.experience_video_item:hover img,
.experience_video_item:hover video {
    scale: 1.05;
}

.experience_video_play {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(0, 0, 0, .2);
    pointer-events: none;
}

.experience_video_play svg {
    width: 3.5rem;
    height: auto;
    transition: transform .3s ease;
}

.experience_video_item:hover .experience_video_play svg {
    transform: scale(1.1);
}

.gallery_popup.experience_video_popup {
    width: min(90vw, 64rem);
    max-width: none;
    aspect-ratio: 16 / 9;
    padding: 0;
    background: #000;
}

.experience_video_popup .gallery_popup_close {
    z-index: 2;
}

.experience_video_popup iframe,
.experience_video_popup video {
    width: 100%;
    height: 100%;
    border: 0;
    display: block;
}

/* Mobile: tab trải nghiệm xuống dòng để hiện đủ tất cả các tab */
@media (max-width: 767px) {
    .experience1_nav {
        width: 100%;
        flex-wrap: wrap;
        justify-content: center;
        gap: .5rem 1rem;
    }

    .experience1_nav > li > a {
        font-size: .85rem;
        height: 1.9rem;
    }

    .experience_video_play svg {
        width: 2.6rem;
    }
}

/* Chi tiết phòng: ảnh slide -> tên phòng -> mô tả -> tiện nghi -> đặt phòng */
section.guestroomDetail2 {
    margin-top: 1rem;
}

.guestroomDetail1_content {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.guestroomDetail1_info ul.tien_ich {
    margin-top: 1.4rem;
    text-align: left;
}

.guestroomDetail1_info ul.tien_ich li {
    display: flex;
    align-items: center;
    gap: .6rem;
}

.guestroomDetail1_info ul.tien_ich .icon {
    flex: 0 0 auto;
    display: flex;
}

.guestroomDetail1_info ul.tien_ich .icon svg,
.guestroomDetail1_info ul.tien_ich .icon img {
    width: 1.3rem;
    height: auto;
    display: block;
}

.guestroomDetail1_booking {
    margin-top: 2rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1.2rem;
}

.guestroomDetail1_booking a.link_box {
    min-width: 16rem;
}

@media (max-width: 767px) {
    section.guestroomDetail2 {
        margin-top: .5rem;
    }

    section.guestroomDetail1 {
        padding-top: 0;
    }

    .guestroomDetail1_info ul.tien_ich .icon svg,
    .guestroomDetail1_info ul.tien_ich .icon img {
        width: 1.5rem;
    }

    .guestroomDetail1_booking a.link_box {
        width: 100%;
    }
}

/* Chi tiết ưu đãi: thanh chia sẻ + người biên soạn, ngày, lượt xem, lượt chia sẻ */
.offer_share_bar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 1rem 2rem;
    padding: .9rem 0;
    margin-bottom: 1.5rem;
    border-top: 1px solid #E3F3FF;
    border-bottom: 1px solid #E3F3FF;
}

.offer_share_buttons {
    display: flex;
    align-items: center;
    gap: .5rem;
}

.offer_share_buttons .label {
    font-weight: 600;
    margin-right: .3rem;
}

.offer_share_buttons .share_btn {
    width: 2.1rem;
    height: 2.1rem;
    min-height: 0;
    margin: 0;
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: .3rem;
    color: #fff;
    transition: opacity .2s ease, transform .2s ease;
}

.offer_share_buttons .share_btn:hover {
    opacity: .85;
    transform: translateY(-2px);
}

.offer_share_buttons .share_btn svg {
    width: .9rem;
    height: auto;
}

.share_btn.facebook { background: #3B5998; }
.share_btn.x { background: #000; }
.share_btn.linkedin { background: #0A66C2; }
.share_btn.other { background: #8DC63F; }

.offer_share_buttons .copied {
    font-size: .8rem;
}

ul.offer_share_meta {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem 1.4rem;
    list-style: none;
    margin: 0;
    font-size: .9rem;
}

ul.offer_share_meta li {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    margin: 0;
}

ul.offer_share_meta svg {
    width: .95rem;
    height: auto;
}

@media (max-width: 767px) {
    .offer_share_buttons .share_btn {
        width: 2.4rem;
        height: 2.4rem;
    }

    .offer_share_buttons .share_btn svg {
        width: 1.05rem;
    }

    ul.offer_share_meta {
        font-size: .95rem;
    }
}

/* Liên hệ: icon đầu các dòng thông tin + ô nhập */
.contact_content p.contact_line {
    display: flex;
    align-items: flex-start;
    gap: .6rem;
}

.contact_content p.contact_line svg {
    flex: 0 0 auto;
    width: 1.1rem;
    height: auto;
    margin-top: .15em;
}

.wrap_input .input_icon {
    position: absolute;
    left: 1.2rem;
    top: 1.65rem;
    transform: translateY(-50%);
    display: flex;
    color: #047EC0;
    pointer-events: none;
    z-index: 1;
}

.wrap_input .input_icon svg {
    width: 1.1rem;
    height: auto;
}

.wrap_input .input_icon + input,
.wrap_input .input_icon + textarea {
    padding-left: 3.1rem;
}

.wrap_input .input_icon:has(+ textarea) {
    top: 1.35rem;
}

.wrap_input .input_icon + textarea {
    padding-top: .75rem;
}
section.food3 {padding-top: 2rem;}
.room_item .nav_bottom .list_button {margin-left: auto;}

/* Các hạng phòng khác: mọi thẻ cao bằng nhau, giá + nút luôn nằm sát đáy thẻ */
.guestroomDetail4_slider > .swiper > .swiper-wrapper > .swiper-slide {
    height: auto;
    display: flex;
}

.guestroomDetail4_slider .room_item {
    display: flex;
    flex-direction: column;
    flex: 1;
    min-width: 0;
}

.guestroomDetail4_slider .room_item .box_content {
    display: flex;
    flex-direction: column;
    flex: 1;
}

.guestroomDetail4_slider .room_item .nav_bottom {
    margin-top: auto;
}

@media (min-width: 1024px) and (max-width: 1199px) {
    .room_item h3 {
        font-size: 1.5rem;
    }
}

/* Hóa đơn (mobile): mỗi dòng bảng thành 1 thẻ, hiện đủ các cột không cần cuộn ngang */
@media (max-width: 767px) {
    .noti_table_scroll {
        overflow: visible;
        border: 0;
        border-radius: 0;
    }

    .noti_table {
        min-width: 0;
        background: none;
    }

    .noti_table thead {
        display: none;
    }

    .noti_table,
    .noti_table tbody,
    .noti_table tr,
    .noti_table td {
        display: block;
        width: 100%;
    }

    .noti_table tr {
        background: rgb(255 255 255 / 70%);
        border: 1px solid #1BAFFF;
        border-radius: .8rem;
        overflow: hidden;
        margin-bottom: 1rem;
    }

    .noti_table tr:last-child {
        margin-bottom: 0;
    }

    .noti_table tbody td {
        display: flex;
        justify-content: space-between;
        align-items: center;
        gap: 1rem;
        border: 0;
        border-bottom: 1px solid rgb(4 126 192 / 25%);
        padding: .6rem .9rem;
        text-align: right;
        font-size: .9rem;
    }

    .noti_table tbody td:last-child {
        border-bottom: 0;
    }

    .noti_table tbody td:before {
        content: attr(data-label);
        flex-shrink: 0;
        max-width: 45%;
        color: #7D7D7D;
        font-size: .75rem;
        font-weight: 600;
        text-transform: uppercase;
        text-align: left;
    }

    .noti_table tbody td:first-child {
        background: linear-gradient(90deg, #1BAFFF 0%, #91D5FF 100%);
        color: #fff;
    }

    .noti_table tbody td:first-child:before {
        color: #fff;
    }
}

/* Chi tiết tin: "Các tin gần đây" — tách khỏi nội dung bài, mỗi tin 1 khối có đường kẻ */
.post_related {
    margin-top: 2.5rem;
    padding-top: 2rem;
    border-top: 1px solid rgb(4 126 192 / 30%);
}

.post_related .title {
    margin-bottom: .8rem;
}

.item_related {
    padding: 1.1rem 0;
}

.item_related + .item_related {
    border-top: 1px dashed rgb(4 126 192 / 30%);
}

.item_related h3 {
    margin-bottom: .4rem;
    transition: .3s all;
}

.item_related:hover h3 {
    color: #1BAFFF;
}

.item_related ul.box_meta.flex {
    justify-content: flex-start;
    margin-top: 0;
}

/* Nút chuyển ngôn ngữ: topbar desktop + thanh xanh trong menu mobile */
.lang_switcher {
    position: relative;
}

.lang_switcher_current {
    display: flex;
    align-items: center;
    gap: .35rem;
    margin: 0;
    padding: 0;
    min-height: 0;
    background: none;
    border: none;
    color: #fff;
    font-size: .8rem;
    font-weight: 500;
    line-height: 1.4;
    text-transform: none;
    cursor: pointer;
    transition: opacity .2s ease;
}

.lang_switcher_current:hover {
    opacity: .75;
}

.lang_switcher_current svg {
    width: .6rem;
    height: auto;
    transition: transform .2s ease;
}

.lang_switcher.is_open .lang_switcher_current svg {
    transform: rotate(180deg);
}

.lang_switcher_list {
    position: absolute;
    top: calc(100% + .6rem);
    right: 0;
    z-index: 30;
    min-width: 9rem;
    margin: 0;
    padding: .3rem 0;
    list-style: none;
    background: #fff;
    border-radius: .3rem;
    box-shadow: 0 .4rem 1.2rem rgb(0 0 0 / 15%);
    opacity: 0;
    visibility: hidden;
    transform: translateY(-.3rem);
    transition: opacity .2s ease, transform .2s ease, visibility .2s;
}

.lang_switcher.is_open .lang_switcher_list {
    opacity: 1;
    visibility: visible;
    transform: none;
}

.lang_switcher_list li {
    margin: 0;
}

.lang_switcher_list a {
    display: flex;
    align-items: center;
    gap: .6rem;
    padding: .45rem .9rem;
    color: #333;
    font-size: .75rem;
    white-space: nowrap;
}

.lang_switcher_list a b {
    min-width: 1.4rem;
    color: #047EC0;
    font-weight: 600;
}

.lang_switcher_list a:hover,
.lang_switcher_list li.active a {
    background: #EAF6FF;
}

@media (max-width: 767px) {
    .mobile_nav_lang .lang_switcher_current {
        font-size: 1.1rem;
        font-weight: 600;
    }

    .mobile_nav_lang .lang_switcher_current svg {
        width: .8rem;
    }

    .mobile_nav_lang .lang_switcher_list {
        top: calc(100% + 1rem);
        min-width: 12rem;
    }

    .mobile_nav_lang .lang_switcher_list a {
        font-size: 1rem;
        padding: .7rem 1.2rem;
    }
}
