/* ———————— DARK MODE SYSTEM ———————— */
:root {
    --bg-body: #ffffff;
    --bg-card: #ffffff;
    --bg-header: #ffffff;
    --bg-footer: #f8f9fa;
    --border: #dee2e6;
    --shadow: rgba(0, 0, 0, 0.1);
}

.dark {
    --bg-body: #0f0f0f;
    --bg-card: #2b2b2b;
    --bg-header: #2b2b2b;
    --bg-footer: #1b1b1b;
    --text-primary: #e0e0e0;
    --text-secondary: #aaaaaa;
    --border: #333333;
    --shadow: rgba(0, 0, 0, 0.4);
}

/* Apply the variables */
body {
    background-color: var(--bg-body) !important;
    color: var(--text-primary) !important;
    transition: background-color 0.35s ease,
    color 0.35s ease;
}


header,
.header,
footer,
.footer,
.single-main-block {
    background-color: var(--bg-header) !important;
}

footer,
.footer,
.rooms-section-redesigned,
.gallery-sec,
.rts__section,
.map__section,
.section__padding,
.map__container,
.advsearch-sec,
.advsearch-home,
.advsearch-sec,
.advsearch-home,
.content__subtitle,
.breadcrumb-sec,
.about-sec,
.page-sec,
.room-item,
.hotel-item,
.tab-btn,
.side-item,
.notifications-list,
.menu-btn,
.book-page-grid,
.custom-input,
.coupon-input,
.otp-block,
.home-body section {
    background-color: var(--bg-footer) !important;
    color: var(--text-primary) !important;
}

.tab-btn.active {
    background-color: #465139 !important;
    color: var(--text-primary) !important;
}

.card,
.card-body,
.bg-white,
.modal-content,
.swiper-slide,
.owl-carousel .owl-item,
.select2-container--default .select2-selection--single,
.hotels-section-redesigned,
.advsearch-form,
.count,
strong,
.breadcrumb-list,
.about-block,
.page-block,
.advsearch-item,
.support-main,
.support-block,
.facility-item,
.archive-filters,
.testimonials-main,
.testimonials-side,
.custom-label,
.single-side-block,
.calendar-cont,
.site-map-link,
.contact-link-btn,
.chat-cont,
.chat-footer,
.social-link,
.notification-item,
.notifications-link,
.acc-list,
.lang-list,
.account-hint,
.account-side,
.account-content,
.notifications-link,
.breadcrumb-item::before,
.header-nav.active,
.header-nav-head,
.header-list,
.header-nav-head .menu-close svg,
.accordion-item,
.accordion-header,
.accordion-button,
.faq-item,
.main-item,
.book-main-item,
.book-side-item,
.hint,
.special-req-label,
.select2-dropdown,
.select2-dropdown--below,
.otp-field,
.blog-navbar,
.featured-card,
.blog-content-area,
.blog-badge,
.share-btn,
.rounded-pill,
.rounded-circle,
.lang-btn,
.overlay-photo,
.map-overlay,
.journy-item .item-text,
.item-date,
.form-hint,
.external-link.bordered-link,
.main-content,
.log-form .form-submit,
.advsearch-cont,
.single-side-calendar,
.calendar-header,
.calendar-month-year,
.calendar-grid,
.calendar-day,
.other-month,
.calendar-day.available,
.calendar-day-header, .single-hint {
    background-color: var(--bg-card) !important;
    border-color: var(--border) !important;
    color: var(--text-primary) !important;
    border-radius: 16px;
    fill: var(--text-primary) !important;
}

.text-dark,
h1,
h2,
h3,
h4,
h5,
h6,
p,
span,
li,
a:not(.btn) {
    color: var(--text-primary) !important;
}

.text-muted,
small {
    color: var(--text-secondary) !important;
}

.border,
.border-top,
.border-bottom {
    border-color: var(--border) !important;
}

.form-control,
.select2-container--default .select2-selection--single {
    background-color: var(--bg-card) !important;
    color: var(--text-primary) !important;
    border-color: var(--border) !important;
}

.container {
    max-width: 1350px !important;
}

.advsearch-items {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    position: relative;
}

.gallery-img::after {
    content: url(../images/icons/resize.svg);
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    inset: 20px;
    background-color: rgba(94, 157, 154, 0.7);
    border-radius: 10px;
    visibility: hidden;
    opacity: 0;
    transform: scale(0);
    transition: all 0.3s ease-in-out;
}

.lazy-img-parent img {
    transition: all 0.3s ease-in-out;
}

.loading-img {
    position: relative;
    overflow: hidden;
    background-color: #fafafa !important;
}

.loading-img img {
    opacity: 0 !important;
    filter: blur(40px);
}

.loaded-img img {
    opacity: 1;
    filter: blur(0);
}

body {
    position: relative;
    font-family: ping;
    font-weight: normal;
    background-color: FDFDFDFF;
}

html {
    scrollbar-width: thin;
    scrollbar-color: #465139 #fff;
}

html ::-webkit-scrollbar {
    background-color: #fff;
    width: 7px;
    height: 7px;
}

html ::-webkit-scrollbar-thumb {
    background-color: #465139;
}

.overflow {
    overflow: hidden !important;
}

* {
    outline: none !important;
}

img {
    image-rendering: crisp-edges;
    image-rendering: -moz-crisp-edges;
    image-rendering: -o-crisp-edges;
    image-rendering: -webkit-optimize-contrast;
    -ms-interpolation-mode: nearest-neighbor;
}

.container {
    --bs-gutter-x: 30px;
}

@media (min-width: 1200px) {
    .container {
        max-width: 1200px;
    }
}

@font-face {
    font-family: "ping";
    src: url("../fonts/ping/PingARLT-Thin.woff2") format("woff2"),
    url("../fonts/ping/PingARLT-Thin.woff") format("woff"),
    url("../fonts/ping/PingARLT-Thin.ttf") format("truetype");
    font-weight: 100;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "ping";
    src: url("../fonts/ping/PingARLT-ExtraLight.woff2") format("woff2"),
    url("../fonts/ping/PingARLT-ExtraLight.woff") format("woff"),
    url("../fonts/ping/PingARLT-ExtraLight.ttf") format("truetype");
    font-weight: 200;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "ping";
    src: url("../fonts/ping/PingARLT-Light.woff2") format("woff2"),
    url("../fonts/ping/PingARLT-Light.woff") format("woff"),
    url("../fonts/ping/PingARLT-Light.ttf") format("truetype");
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "ping";
    src: url("../fonts/ping/PingARLT-Regular.woff2") format("woff2"),
    url("../fonts/ping/PingARLT-Regular.woff") format("woff"),
    url("../fonts/ping/PingARLT-Regular.ttf") format("truetype");
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "ping";
    src: url("../fonts/ping/PingARLT-Medium.woff2") format("woff2"),
    url("../fonts/ping/PingARLT-Medium.woff") format("woff"),
    url("../fonts/ping/PingARLT-Medium.ttf") format("truetype");
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "ping";
    src: url("../fonts/ping/PingARLT-Bold.woff2") format("woff2"),
    url("../fonts/ping/PingARLT-Bold.woff") format("woff"),
    url("../fonts/ping/PingARLT-Bold.ttf") format("truetype");
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "ping";
    src: url("../fonts/ping/PingARLT-Black.woff2") format("woff2"),
    url("../fonts/ping/PingARLT-Black.woff") format("woff"),
    url("../fonts/ping/PingARLT-Black.ttf") format("truetype");
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

.slider-navs {
    display: flex;
    align-items: center;
    justify-content: center;
}

@media (max-width: 991px) {
    .slider-navs {
        display: none;
    }
}

.slider-navs .swiper-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    fill: #465139;
    border: 1px solid #465139;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    transition: all 0.3s ease-in-out;
}

.slider-navs .swiper-btn ~ .swiper-btn {
    -webkit-margin-start: 15px;
    margin-inline-start: 15px;
}

html[dir="ltr"] .slider-navs .swiper-btn svg {
    transform: scaleX(-1);
}

.slider-navs .swiper-btn:hover {
    background-color: #465139;
    fill: #fff;
}

.imgs-slider {
    position: relative;
}

.imgs-slider .owl-nav {
    visibility: hidden;
    opacity: 0;
    transition: all 0.3s ease-in-out;
    position: relative;
    z-index: 2;
}

@media (max-width: 991px) {
    .imgs-slider .owl-nav {
        visibility: visible;
        opacity: 1;
    }
}

.imgs-slider .owl-nav [type="button"].owl-prev,
.imgs-slider .owl-nav [type="button"].owl-next {
    width: 32px;
    height: 32px;
    background-color: rgba(255, 255, 255, 0.82);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    fill: #2a313d;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    transition: all 0.3s ease-in-out;
}

.imgs-slider .owl-nav [type="button"].owl-prev:hover,
.imgs-slider .owl-nav [type="button"].owl-next:hover {
    fill: #fff;
    background-color: #465139;
}

.imgs-slider .owl-nav [type="button"].owl-next {
    left: 15px;
}

.imgs-slider .owl-nav [type="button"].owl-prev {
    right: 15px;
}

.imgs-slider .owl-dots {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 14px;
    margin: auto;
    display: flex;
    align-items: center;
    justify-content: center;
    visibility: hidden;
    opacity: 0;
    transition: all 0.3s ease-in-out;
    z-index: 2;
}

.imgs-slider .owl-dots button {
    margin: 0 3px;
    border: none;
    width: 9px;
    height: 9px;
    border-radius: 50%;
    opacity: 0.41;
    background-color: #fff;
    transition: all 0.3s ease-in-out;
}

.imgs-slider .owl-dots button:hover,
.imgs-slider .owl-dots button.active {
    opacity: 1;
}

@media (max-width: 991px) {
    .imgs-slider .owl-dots {
        visibility: visible;
        opacity: 1;
    }
}

.main-slider {
    position: relative;
}

.main-slider .swiper-pagination {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 70px;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.main-slider .swiper-pagination .swiper-pagination-bullet {
    width: 9px;
    height: 9px;
    background-color: #fff;
    opacity: 0.41;
    border-radius: 50%;
    margin: 0 3px;
    transition: all 0.3s ease-in-out;
}

.main-slider
.swiper-pagination
.swiper-pagination-bullet.swiper-pagination-bullet-active {
    background-color: #fff;
    opacity: 1;
}

.main-slider .swiper-btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: transparent;
    fill: #fff;
    /*border-radius: 50%;*/
    /*border: 1px solid #fff;*/
    transition: all 0.3s ease-in-out;
}

.main-slider .swiper-btn:after {
    display: none;
}

.main-slider .swiper-btn.swiper-button-prev {
    inset-inline: unset;
    right: 30px;
}

.main-slider .swiper-btn.swiper-button-next {
    inset-inline: unset;
    left: 30px;
}

@media (max-width: 991px) {
    .main-slider .swiper-btn {
        display: none;
    }
}

.custom-slider .swiper-pagination {
    position: relative;
    inset: unset;
    transform: none;
    width: 100%;
    display: none;
    align-items: center;
    justify-content: center;
    margin-top: 10px;
}

.custom-slider .swiper-pagination .swiper-pagination-bullet {
    width: 9px;
    height: 9px;
    background-color: #dedfeb;
    opacity: 1;
    border-radius: 50%;
    margin: 0 3px;
    transition: all 0.3s ease-in-out;
}

.custom-slider
.swiper-pagination
.swiper-pagination-bullet.swiper-pagination-bullet-active {
    background-color: #465139;
    opacity: 1;
}

@media (max-width: 991px) {
    .custom-slider .swiper-pagination {
        display: flex;
    }
}

.custom-slider.our-rate-slider .swiper-pagination {
    display: flex;
}

.swiper-tools {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 20px;
}

.swiper-tools .swiper-pagination {
    position: relative;
    inset: unset;
    transform: none;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 0;
}

.swiper-tools .swiper-pagination .swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    background-color: #86959f;
    opacity: 0.41;
    border-radius: 50%;
    margin: 0 2.5px;
    transition: all 0.3s ease-in-out;
}

.swiper-tools
.swiper-pagination
.swiper-pagination-bullet.swiper-pagination-bullet-active {
    background-color: #465139;
    opacity: 1;
}

.swiper-tools .swiper-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    fill: #465139;
    /*border: 1px solid #465139;*/
    border-radius: 50%;
    width: 40px;
    height: 40px;
    transition: all 0.3s ease-in-out;
}

.swiper-tools .swiper-btn:hover {
    background-color: #465139;
    fill: #465139 !important;
}

html[dir="ltr"] .swiper-tools .swiper-btn svg {
    transform: scaleX(-1);
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

input[type="number"] {
    -moz-appearance: textfield;
}

.form-group {
    margin-bottom: 20px;
}

.form-group .error {
    font-size: 12px;
    color: #f54748;
}

.custom-label {
    font-size: 15px;
    color: #2a313d;
    font-weight: 400;
    margin-bottom: 10px;
}

.input-cont {
    position: relative;
}

.form-line {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0 20px;
}

@media (max-width: 767px) {
    .form-line {
        grid-template-columns: 1fr;
        gap: unset;
    }
}

.custom-input {
    height: 56px;
    background-color: #fff;
    border: 1px solid #d9e0e5;
    border-radius: 10px;
    font-size: 14px;
    color: #2a313d;
    font-weight: 500;
    width: 100%;
    padding: 0 15px;
    transition: all 0.3s ease-in-out;
}

html[dir="rtl"] .custom-input {
    text-align: right;
}

html[dir="ltr"] .custom-input {
    text-align: left;
}

.custom-input::-moz-placeholder {
    font-weight: 400;
    font-size: 14px;
    color: #86959f;
}

.custom-input::placeholder {
    font-weight: 400;
    font-size: 14px;
    color: #86959f;
}

.has_error .custom-input {
    border-color: #f54748;
}

.valid .custom-input {
    border-color: #4caf50;
}

.custom-input:focus {
    border-color: #465139;
}

textarea.custom-input {
    resize: none;
    padding: 19px 15px;
    height: 140px;
}

select.custom-input {
    background-image: url(../images/form/arrow.svg);
    background-repeat: no-repeat;
    background-size: 11px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

html[dir="rtl"] select.custom-input {
    background-position: left 15px top 50%;
}

html[dir="ltr"] select.custom-input {
    background-position: right 15px top 50%;
}

.validate {
    position: absolute;
    top: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    inset-inline-end: 16px;
}

.validate a {
    font-size: 14px;
    font-weight: 400;
    color: #465139;
    text-decoration: none;
    transition: all 0.3s ease-in-out;
}

.validate a:hover {
    color: #2a313d;
}

.validate p {
    display: flex;
    align-items: center;
    color: #4caf50;
    margin: 0;
    font-size: 14px;
    font-weight: 400;
}

.validate p span {
    -webkit-margin-start: 8px;
    margin-inline-start: 8px;
}

@media (max-width: 767px) {
    .validate p span {
        display: none;
    }
}

.input-ico {
    position: absolute;
    width: 30px;
    display: flex;
    justify-content: center;
    top: 50%;
    transform: translateY(-50%);
    inset-inline-start: 10px;
}

html[dir="rtl"] .input-ico ~ .custom-input {
    padding-right: 55px;
}

html[dir="ltr"] .input-ico ~ .custom-input {
    padding-left: 45px;
}

.password-eye {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    inset-inline-end: 15px;
    cursor: pointer;
}

html[dir="rtl"] .password-eye ~ .custom-input {
    padding-left: 60px;
}

html[dir="ltr"] .password-eye ~ .custom-input {
    padding-right: 60px;
}

.country-key {
    position: absolute;
    inset-inline-end: 1px;
    top: 3px;
    bottom: 3px;
    display: flex;
    align-items: center;
    justify-content: center;
    -webkit-padding-start: 10px;
    padding-inline-start: 10px;
    -webkit-padding-end: 15px;
    padding-inline-end: 15px;
    -webkit-border-start: 1px solid #d9e0e5;
    border-inline-start: 1px solid #d9e0e5;
    font-size: 14px;
    color: #2a313d;
}

.country-key img {
    width: 30px;
    -webkit-margin-start: 10px;
    margin-inline-start: 10px;
}

html[dir="rtl"] .country-key ~ .custom-input {
    padding-left: 110px;
}

html[dir="ltr"] .country-key ~ .custom-input {
    padding-right: 110px;
}

.country-key ~ .validate {
    inset-inline-end: 110px;
}

.input-unit {
    position: absolute;
    inset-inline-end: 1px;
    top: 1px;
    bottom: 1px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-inline: 10px;
    min-width: 86px;
    -webkit-border-start: 1px solid #d9e0e5;
    border-inline-start: 1px solid #d9e0e5;
    font-size: 14px;
    color: #2a313d;
}

html[dir="rtl"] .input-unit ~ .custom-input {
    padding-left: 110px;
}

html[dir="ltr"] .input-unit ~ .custom-input {
    padding-right: 110px;
}

.input-unit ~ .validate {
    inset-inline-end: 110px;
}

.form-tools {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 20px;
}

@media (max-width: 767px) {
    .form-tools {
        flex-direction: column;
        align-items: flex-start;
    }
}

.checkbox {
    display: flex;
    align-items: center;
}

.checkbox label {
    cursor: pointer;
    display: inline-flex;
    align-items: center;
}

.checkbox .mark {
    border: 1px solid #86959f;
    background-color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    border-radius: 2px;
    width: 18px;
    height: 18px;
    transition: all 0.3s ease-in-out;
}

.checkbox .mark svg {
    fill: #fff;
    visibility: hidden;
    opacity: 0;
    transform: rotate(360deg) scale(0);
    transition: all 0.3s ease-in-out;
}

.checkbox .text {
    font-size: 14px;
    color: #2a313d;
    font-weight: 400;
    -webkit-margin-start: 9px;
    margin-inline-start: 9px;
    line-height: 1.286;
}

.checkbox .text a {
    color: #465139;
    text-decoration: none;
    transition: all 0.3s ease-in-out;
}

.checkbox .text a:hover {
    color: #86959f;
    text-decoration: underline;
}

.checkbox input {
    display: none;
}

.checkbox input:checked ~ .mark {
    background-color: #465139;
    border-color: #465139;
}

.checkbox input:checked ~ .mark svg {
    transform: none;
    visibility: visible;
    opacity: 1;
}

.form-hint {
    display: flex;
    align-items: center;
    font-size: 16px;
    font-weight: 500;
    color: #2a313d;
}

.form-hint a {
    -webkit-margin-start: 8px;
    margin-inline-start: 8px;
    color: #465139;
    text-decoration: none;
    transition: all 0.3s ease-in-out;
}

.form-hint a:hover {
    color: #86959f;
    text-decoration: underline;
}

@media (max-width: 767px) {
    .form-hint {
        justify-content: center;
        margin-top: 10px;
    }
}

.form-submit {
    width: 100%;
    height: 56px;
    font-size: 16px;
    font-weight: 500;
    color: #fff;
    background-color: #465139;
    border-radius: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    border: none;
    text-decoration: none;
    transition: all 0.3s ease-in-out;
}

.form-submit:hover {
    color: #465139;
    background-color: #726658;
}

.account-content .form-submit {
    font-weight: 400;
}

.select2-container .select2-selection {
    height: 56px;
    background-color: #fff;
    border: 1px solid #d9e0e5;
    border-radius: 10px;
    font-size: 14px;
    color: #2a313d;
    font-weight: 500;
    width: 100%;
    padding: 0 15px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    z-index: 9;
}

.select2-container .select2-selection .select2-selection__rendered {
    font-size: 14px;
    color: #2a313d;
    font-weight: 500;
    display: flex;
    align-items: center;
    height: 100%;
}

html[dir="rtl"]
.select2-container
.select2-selection
.select2-selection__rendered {
    padding: 0;
}

html[dir="ltr"]
.select2-container
.select2-selection
.select2-selection__rendered {
    padding: 0;
}

.select2-container .select2-selection .select2-selection__arrow {
    position: relative;
    inset: unset !important;
    display: flex;
    align-items: center;
    justify-content: center;
    height: auto;
    width: auto;
}

.select2-container .select2-selection .select2-selection__arrow::after {
    content: url(../images/form/arrow.svg);
}

.select2-container .select2-selection .select2-selection__arrow b {
    display: none;
}

.select2-container .select2-results__option {
    background-color: transparent;
    font-size: 14px;
    color: #2a313d;
    font-weight: 500;
}

.select2-container
.select2-results__option.select2-results__option--selectable {
    background-color: transparent;
}

.select2-container .select2-results__option.select2-results__option--selected {
    background-color: transparent;
    color: #465139;
}

.select2-container
.select2-results__option.select2-results__option--selected
.country-item {
    color: #465139;
}

.select2-container .select2-results__option:hover {
    color: #465139;
}

.select2-container .select2-dropdown {
    padding: 5px 9px;
    background-color: #fff;
    border: 1px solid #d9e0e5;
    border-radius: 10px;
    box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.1019607843);
    overflow: hidden;
}

.select2-container .select2-dropdown.select2-dropdown--below {
    border-top-color: transparent;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}

.select2-container .select2-dropdown.select2-dropdown--above {
    border-bottom-color: transparent;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}

.select2-container .select2-dropdown ::-webkit-scrollbar {
    background-color: FDFDFDFF;
    border-radius: 3.5px;
}

.select2-container .select2-dropdown ::-webkit-scrollbar-thumb {
    background-color: #726658;
    border-radius: 3.5px;
}

.select2-container.select2-container--open.select2-container--above
.select2-selection {
    border-top-color: transparent;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}

.select2-container.select2-container--open.select2-container--below
.select2-selection {
    border-bottom-color: transparent;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}

.select2-container .country-item {
    display: flex;
    align-items: center;
    font-size: 14px;
    color: #2a313d;
    font-weight: 500;
}

.select2-container .country-item img {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    -o-object-fit: cover;
    object-fit: cover;
    -webkit-margin-end: 9px;
    margin-inline-end: 9px;
}

.form-group-line {
    display: flex;
    align-items: center;
    margin-bottom: 20px;
}

@media (max-width: 767px) {
    .form-group-line {
        flex-wrap: wrap;
    }
}

.form-group-line .custom-label {
    margin: 0;
    -webkit-margin-end: 21px;
    margin-inline-end: 21px;
}

@media (max-width: 767px) {
    .form-group-line .custom-label {
        width: 100%;
        margin: 0 0 10px;
    }
}

.form-group-line .radio ~ .radio {
    -webkit-margin-start: 23px;
    margin-inline-start: 23px;
}

.radio {
    display: flex;
    align-items: center;
}

.radio label {
    cursor: pointer;
    display: inline-flex;
    align-items: center;
}

.radio .mark {
    border: 1px solid #86959f;
    background-color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    border-radius: 50%;
    width: 18px;
    height: 18px;
    transition: all 0.3s ease-in-out;
}

.radio .mark:after {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background-color: #465139;
    opacity: 0;
    transform: rotate(360deg) scale(0);
    transition: all 0.3s ease-in-out;
    content: "";
}

.radio .text {
    font-size: 15px;
    color: #2a313d;
    font-weight: 400;
    -webkit-margin-start: 10px;
    margin-inline-start: 10px;
    line-height: 1.4;
}

.radio .text a {
    color: #465139;
    text-decoration: none;
    transition: all 0.3s ease-in-out;
}

.radio .text a:hover {
    color: #86959f;
    text-decoration: underline;
}

.radio input {
    display: none;
}

.radio input:checked ~ .mark {
    border-color: #465139;
}

.radio input:checked ~ .mark:after {
    transform: none;
    visibility: visible;
    opacity: 1;
}

.switch {
    position: relative;
    cursor: pointer;
    flex-shrink: 0;
}

.switch .slider {
    width: 34px;
    height: 14px;
    background-color: rgba(0, 0, 0, 0.3803921569);
    border-radius: 7px;
    position: relative;
    transition: all 0.3s ease-in-out;
}

.switch .hand {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background-color: #fff;
    display: flex;
    align-items: center;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    inset-inline-start: 0;
    transition: all 0.3s ease-in-out;
    box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.1019607843);
}

.switch input {
    display: none;
}

.switch input:checked ~ .slider {
    background-color: rgba(94, 157, 154, 0.3803921569);
}

.switch input:checked ~ .slider .hand {
    background-color: #465139;
    inset-inline-start: calc(100% - 20px);
}

.header-list {
    display: flex;
    align-items: center;
    margin: 0;
}

.header-list li ~ li {
    -webkit-margin-start: 30px;
    margin-inline-start: 30px;
}

@media (max-width: 1199px) {
    .header-list li ~ li {
        -webkit-margin-start: 20px;
        margin-inline-start: 20px;
    }
}

.header-list .lang {
    display: none;
}

.header-list a {
    font-size: 16px;
    color: #2a313d;
    font-weight: 500;
    text-decoration: none;
    position: relative;
    transition: all 0.3s ease-in-out;
}

@media (max-width: 1199px) {
    .header-list a {
        font-size: 14px;
    }
}

.header-list a:hover {
    color: #465139;
}

.header-list a::before {
    position: absolute;
    width: 100%;
    height: 5px;
    background-color: #465139;
    content: "";
    left: 0;
    right: 0;
    top: -34px;
    display: none;
    pointer-events: none;
    transition: all 0.3s ease-in-out;
}

.fixed .header-list a::before {
    top: -25px;
}

.header-list a.active {
    color: #465139;
}

.header-list a.active::before {
    display: block;
}

.main-slide {
    text-align: center;
    position: relative;
    overflow: hidden;
    padding-top: 32.5768667643%;
    width: 100%;
    height: 800px !important;
}

@media (max-width: 1199px) {
    .main-slide {
        padding: 0;
    }
}

.main-slide .slide-img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.main-slide .slide-img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
}

.main-slide .slide-text {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    width: 100%;
    height: 100%;
    background-color: rgb(70 81 57 / 70%);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 15px;
}

@media (max-width: 1199px) {
    .main-slide .slide-text {
        position: relative;
        top: unset;
        left: auto;
    }
}

.main-slide .text-cont {
    width: 100%;
    max-width: 695px;
    padding: 85px 0 130px;
}

@media (max-width: 767px) {
    .main-slide .text-cont {
        padding: 50px 0 130px;
    }
}

.main-slide .slide-title {
    font-size: 46px;
    color: #fff;
    font-weight: 700;
    line-height: 1.48;
    margin: 0 0 30px;
}

@media (max-width: 767px) {
    .main-slide .slide-title {
        font-size: 35px;
        margin-bottom: 20px;
    }
}

.main-slide .slide-desc {
    font-size: 18px;
    color: #fff;
    line-height: 1.5;
    transition-delay: 0.3s;
    margin: 0 0 30px;
}

@media (max-width: 767px) {
    .main-slide .slide-desc {
        font-size: 16px;
        margin-bottom: 20px;
    }
}

.main-slide .link-cont {
    transition-delay: 0.6s;
}

.main-slide .slide-link {
    width: 138px;
    height: 48px;
    border-radius: 6px;
    border: 2px solid #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    color: #fff;
    text-decoration: none;
    margin: auto;
    transition: all 0.3s ease-in-out;
}

.main-slide .slide-link:hover {
    background-color: #fff;
    color: #465139;
}

.main-slide .animated-text {
    transition-property: all;
    transition-duration: 0.3s;
    transition-timing-function: ease-in-out;
    transform: translateY(-25px);
    opacity: 0;
}

.swiper-slide-active .main-slide .animated-text {
    transform: translateY(0px);
    opacity: 1;
}

.advsearch-home {
    position: relative;
    z-index: 3;
    background-color: #fff;
}

.advsearch-home .advsearch-cont {
    transform: translateY(-50px);
    margin: 0 -25px;
}

@media (max-width: 767px) {
    /* Negative margin (-25px) exceeds container padding (15px) by 10px on each side,
       causing 10px horizontal overflow. Zero it out on mobile. */
    .advsearch-home .advsearch-cont {
        margin: 0;
    }
}

.advsearch-form {
    display: flex;
    align-items: center;
    background-color: #fff;
    box-shadow: 0px 2px 4px rgba(166, 164, 164, 0.2);
    border: 1px solid #f0f1f6;
    border-radius: 16px;
    padding: 0 30px;
}

@media (max-width: 991px) {
    .advsearch-form {
        flex-direction: column;
        padding-bottom: 21px;
        border-radius: 50px;
    }
}

@media (max-width: 767px) {
    .advsearch-form {
        padding: 20px 15px;
        border-radius: 20px;
    }
}

.advsearch-items {
    width: 100%;
    display: flex;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    position: relative;
}

@media (max-width: 767px) {
    .advsearch-items {
        display: flex;
        flex-wrap: wrap;
        margin-bottom: 30px;
    }
}

.advsearch-item {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    height: 100px;
}

.advsearch-item:after {
    width: 2px;
    height: 30px;
    background-color: #dedfeb;
    content: "";
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    inset-inline-end: 0;
}

.advsearch-item.kids-item::after {
    display: none;
}

.advsearch-item:hover .people-list {
    visibility: visible;
    opacity: 1;
}

@media (max-width: 767px) {
    .advsearch-item {
        height: auto;
        border: 1px solid #dedfeb;
        border-radius: 15px;
        justify-content: flex-start;
        padding: 15px;
        margin-bottom: 15px;
    }

    .advsearch-item::after {
        display: none;
    }

    .advsearch-item.adult-item,
    .advsearch-item.kids-item {
        border: none;
        padding: 0;
        width: 50%;
        margin-bottom: 20px;
    }
}

.advsearch-item-view {
    position: relative;
    display: flex;
    align-items: center;
}

.advsearch-item-view .advsearch-item-icon {
    max-width: 30px;
}

.advsearch-item-view .advsearch-item-text {
    -webkit-margin-start: 20px;
    margin-inline-start: 20px;
}

.advsearch-item-view strong {
    display: flex;
    align-items: center;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.2;
    color: #2a313d;
    margin-bottom: 7px;
}

.advsearch-item-view strong small {
    font-size: 14px;
    font-weight: 500;
    -webkit-margin-start: 10px;
    margin-inline-start: 10px;
}

.advsearch-item-view span {
    font-size: 14px;
    color: #86959f;
    line-height: 1.36;
    display: flex;
    direction: ltr;
}

html[dir="rtl"] .advsearch-item-view span {
    justify-content: flex-end;
}

.advsearch-item-view .advsearch-date {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    opacity: 0;
    cursor: pointer;
}

@media (max-width: 767px) {
    .advsearch-item-view {
        width: 100%;
    }
}

.qty-cont {
    display: flex;
    align-items: center;
}

.qty-cont .qty-ctrl {
    padding: 0;
    border: 1px solid #86959f;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    fill: #86959f;
    background-color: transparent;
    transition: all 0.3s ease-in-out;
}

.qty-cont .qty-ctrl:hover {
    border-color: #465139;
    fill: #465139;
}

.qty-cont .qty-val {
    width: 35px;
    border: none;
    text-align: center;
    font-size: 14px;
    color: #2a313d;
    font-weight: 500;
}

.people-list {
    z-index: 9;
    background-color: #fff;
    box-shadow: 0px 1px 6px rgba(0, 0, 0, 0.1607843137);
    border-radius: 8px;
    position: absolute;
    top: 100%;
    left: 50%;
    padding: 15px 15px 10px;
    width: 228px;
    max-height: 322px;
    overflow-y: auto;
    transform: translateX(-50%);
    visibility: hidden;
    opacity: 0;
    display: none;
    transition: all 0.3s ease-in-out;
}

.people-list::-webkit-scrollbar {
    background-color: FDFDFDFF;
    border-radius: 3.5px;
}

.people-list::-webkit-scrollbar-thumb {
    background-color: #726658;
    border-radius: 3.5px;
}

.people-list .list-title {
    font-size: 14px;
    font-weight: 500;
    color: #2a313d;
    margin: 0 0 10px;
}

.people-list .people-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 0;
    border-top: 1px solid #ebeef2;
}

.people-list .people-item span {
    font-size: 14px;
    color: #2a313d;
    width: 69px;
}

.people-list .people-item span:last-of-type {
    width: 46px;
    text-align: end;
}

.advsearch-btn {
    width: 196px;
    height: 56px;
    background-color: #465139;
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    border-radius: 6px;
    color: #fff;
    stroke: #fff;
    font-size: 18px;
    flex-shrink: 0;
    text-decoration: none;
    transition: all 0.3s ease-in-out;
}

.advsearch-btn span {
    -webkit-margin-start: 10px;
    margin-inline-start: 10px;
}

@media (max-width: 1199px) {
    .advsearch-btn {
        font-size: 16px;
        width: 175px;
    }

    .advsearch-btn span {
        -webkit-margin-start: 5px;
        margin-inline-start: 5px;
    }
}

@media (max-width: 991px) {
    .advsearch-btn {
        width: 100%;
        font-size: 18px;
    }

    .advsearch-btn span {
        -webkit-margin-start: 10px;
        margin-inline-start: 10px;
    }
}

.advsearch-btn:hover {
    background-color: #726658;
    color: #465139;
    stroke: #465139;
}

.daterangepicker {
    font-family: inherit;
    box-shadow: 0px 1px 6px rgba(0, 0, 0, 0.1607843137);
    border-radius: 15px;
    border: none;
    padding: 7.5px;
    opacity: 0;
    transform: translateY(-6px);
    transition: opacity 0.18s ease, transform 0.18s ease;
    pointer-events: none;
}

.daterangepicker.drp-visible {
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
}

.advsearch-items .daterangepicker {
    width: 497px;
    top: 100% !important;
    margin-top: 0;
}

html[dir="rtl"] .advsearch-items .daterangepicker {
    left: unset !important;
    right: -30px !important;
}

html[dir="ltr"] .advsearch-items .daterangepicker {
    left: -30px !important;
    right: unset !important;
}

@media (max-width: 767px) {
    .advsearch-items .daterangepicker {
        width: 310px;
        top: 90% !important;
        max-width: 100%;
    }

    html[dir="rtl"] .advsearch-items .daterangepicker {
        right: 0 !important;
    }

    html[dir="ltr"] .advsearch-items .daterangepicker {
        left: 0 !important;
    }
}

@media (max-width: 767px) {
    .daterangepicker {
        width: 310px;
        max-width: 100%;
    }
}

.daterangepicker::before,
.daterangepicker:after {
    display: none;
}

.daterangepicker .ranges {
    display: none;
}

.daterangepicker .drp-calendar.left,
.daterangepicker .drp-calendar.right {
    padding: 7.5px;
}

.daterangepicker .drp-calendar.left .calendar-table,
.daterangepicker .drp-calendar.right .calendar-table {
    padding: 0;
}

@media (max-width: 767px) {
    .daterangepicker .drp-calendar.left {
        float: unset;
        margin: auto;
        direction: ltr;
    }

    .daterangepicker .drp-calendar.right {
        display: none !important;
    }
}

.daterangepicker .calendar-table td {
    font-size: 15px;
    font-weight: 500;
    color: #2a313d;
    height: 30px;
    line-height: 30px;
    border: none;
}

.daterangepicker .calendar-table td.in-range {
    background-color: #e6f5f4;
}

/* active: selected start/end */
.daterangepicker .calendar-table td.active {
    background-color: #465139;
    color: #fff;
}

/* hover: light green so it doesn't look like selection */
.daterangepicker .calendar-table td.available:not(.active):not(.off):hover {
    background-color: #d1e8d0;
    color: #2a313d;
    border-color: transparent;
}

/* in-range hover: slightly darker teal instead of dark green */
.daterangepicker .calendar-table td.in-range:hover {
    background-color: #c0dedd;
}

.daterangepicker .calendar-table td.disabled {
    color: #8f9bb3;
}

.daterangepicker .calendar-table td.start-date {
    border-radius: 16px 0 0 16px;
}

.daterangepicker .calendar-table td.end-date {
    border-radius: 0 16px 16px 0;
}

.daterangepicker .calendar-table td.start-date.end-date {
    border-radius: 16px;
}

.daterangepicker .calendar-table tr:first-of-type th {
    font-size: 16px;
    font-weight: 700;
    color: #2a313d;
    padding-bottom: 20px;
}

.daterangepicker .calendar-table tr:last-of-type th {
    background-color: #f2f3fc;
    font-size: 13px;
    font-weight: 500;
    color: #767676;
    border-radius: 0;
}

.daterangepicker .days-count {
    text-align: center;
    font-size: 16px;
    font-weight: 400;
    color: #465139;
    line-height: 1.6875;
    padding: 15px 0 19px;
    clear: both;
    border-top: 1px solid #dedfeb;
    display: flex;
    align-items: center;
    justify-content: center;
}

html[dir="rtl"] .daterangepicker .days-count {
    direction: rtl;
}

@media (max-width: 767px) {
    .daterangepicker .days-count {
        flex-direction: column;
        text-align: center;
    }
}

.daterangepicker .days-count div {
    margin: 0 2px;
}

.daterangepicker .days-range {
    direction: ltr;
}

.daterangepicker .available.next {
    background-color: transparent;
}

.daterangepicker .available.next:hover {
    background-color: transparent;
}

.daterangepicker .available.prev {
    background-color: transparent;
}

.daterangepicker .available.prev:hover {
    background-color: transparent;
}

@media (max-width: 767px) {
    .daterangepicker .available.next {
        position: absolute;
        top: 15px;
        right: 15px;
    }

    .daterangepicker .available.prev {
        position: absolute;
        top: 15px;
        left: 15px;
    }
}

/* Today indicator — bold + dot beneath */
.daterangepicker td.today:not(.off) {
    font-weight: 700;
    position: relative;
}

.daterangepicker td.today:not(.off)::after {
    content: '';
    position: absolute;
    bottom: 3px;
    left: 50%;
    transform: translateX(-50%);
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background-color: #465139;
}

.daterangepicker td.today.active::after {
    background-color: #fff;
}

/* RTL: flip pill caps for start/end dates */
html[dir="rtl"] .daterangepicker .calendar-table td.start-date:not(.end-date) {
    border-radius: 0 16px 16px 0;
}

html[dir="rtl"] .daterangepicker .calendar-table td.end-date:not(.start-date) {
    border-radius: 16px 0 0 16px;
}

/* Larger touch targets on mobile */
@media (max-width: 767px) {
    .daterangepicker .calendar-table td,
    .daterangepicker .calendar-table th {
        height: 38px;
        line-height: 38px;
        min-width: 36px;
        width: 36px;
    }
}

/* Past/disabled dates: no hover, faded */
.daterangepicker .calendar-table td.disabled {
    pointer-events: none;
    opacity: 0.4;
    text-decoration: none;
}

/* Off-month days */
.daterangepicker td.off {
    color: #b0b8c4;
    opacity: 0.5;
    pointer-events: none;
}

/* Visual separator between dual calendars on desktop */
@media (min-width: 768px) {
    .daterangepicker .drp-calendar.left {
        border-right: 1px solid #dedfeb;
    }

    html[dir="rtl"] .daterangepicker .drp-calendar.left {
        border-right: none;
        border-left: 1px solid #dedfeb;
    }
}

/* Days-count placeholder shown before selection */
.daterangepicker .days-count-hint {
    opacity: 0.55;
    font-style: italic;
}

.about-sec-cont {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
    align-items: center;
}

@media (max-width: 991px) {
    .about-sec-cont {
        grid-template-columns: 1fr;
        gap: 30px;
    }
}

.about-sec-text {
    width: 100%;
    max-width: 490px;
}

@media (max-width: 1199px) {
    .about-sec-text {
        max-width: none;
    }
}

.about-sec-text .about-desc {
    line-height: 1.782;
    font-size: 16px;
    color: #86959f;
    margin: 0 0 20px;
}

.about-sec-text .about-link {
    width: 196px;
    height: 56px;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #465139;
    font-size: 16px;
    font-weight: 500;
    color: #fff !important;
    text-decoration: none;
    transition: all 0.3s ease-in-out;
}

.about-sec-text .about-link:hover {
    background-color: #726658;
    color: #465139;
}

.map-cont {
    height: 350px;
    box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.1019607843);
    border-radius: 16px;
    overflow: hidden;
}

.map-cont #map {
    height: 100%;
    width: 100%;
}

@media (max-width: 767px) {
    .map-cont {
        height: 385px;
    }
}

.single-side-map {
    height: 164px;
    overflow: hidden;
}

.single-side-map #map {
    height: 100%;
    width: 100%;
}

@media (max-width: 767px) {
    .single-side-map {
        height: 385px;
    }
}

.single-side-map .gm-fullscreen-control {
    display: none !important;
}

.single-side-map .gmnoprint {
    display: none !important;
}

.gm-ui-hover-effect {
    inset: unset !important;
    top: -5px !important;
    inset-inline-end: -5px !important;
}

@media (max-width: 767px) {
    .gm-ui-hover-effect > span {
        background-color: #465139;
    }
}

.gm-style .gm-style-iw-c,
.gm-style .gm-style-iw-d {
    padding: 0 !important;
    border-radius: 0 !important;
    background-color: transparent !important;
    box-shadow: none !important;
    overflow: hidden !important;
    border-radius: 5px !important;
    background-color: #fff !important;
    box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.0588235294) !important;
    max-height: none !important;
}

.gm-style .gm-style-iw-c {
    max-width: none !important;
}

.map-branch {
    width: 297px;
    display: flex;
    align-items: center;
    padding: 5px;
    -webkit-padding-end: 0;
    padding-inline-end: 0;
}

@media (max-width: 767px) {
    .map-branch {
        flex-direction: column;
        padding: 5px;
        width: 205px;
    }
}

.map-branch .branch-img {
    width: 112px;
    height: 95px;
    border-radius: 5px;
    flex-shrink: 0;
    overflow: hidden;
}

.map-branch .branch-img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

@media (max-width: 767px) {
    .map-branch .branch-img {
        width: 100%;
        height: auto;
    }
}

.map-branch .branch-info {
    padding: 0 12px;
}

@media (max-width: 767px) {
    .map-branch .branch-info {
        padding: 5px 0 0;
    }
}

.map-branch .branch-title {
    font-size: 12px;
    color: #2a313d;
    font-weight: 400;
    line-height: 1.7;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    margin: 0 0 8px;
}

.map-branch .branch-tools {
    padding: 8px 0 0;
    border-top: 1px solid #eeeeee;
    display: flex;
    align-items: center;
    justify-content: center;
}

.map-branch .branch-tools a {
    height: 26px;
    border-radius: 13px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    transition: all 0.3s ease-in-out;
}

.map-branch .branch-directions {
    width: 100%;
    color: #fff;
    fill: #fff;
    background-color: #465139;
    font-size: 11px;
    font-weight: 500;
    transition: all 0.3s ease-in-out;
}

.map-branch .branch-directions svg {
    display: flex;
    align-items: center;
    -webkit-margin-end: 5px;
    margin-inline-end: 5px;
}

.map-branch .branch-directions:hover {
    background-color: #726658;
    fill: #465139;
    color: #465139;
}

.map-branch .branch-phone {
    -webkit-margin-start: 11px;
    margin-inline-start: 11px;
    width: 26px;
    flex-shrink: 0;
    background-color: #726658;
    fill: #465139;
    transition: all 0.3s ease-in-out;
}

@media (max-width: 767px) {
    .map-branch .branch-phone {
        -webkit-margin-start: 5px;
        margin-inline-start: 5px;
    }
}

.map-branch .branch-phone:hover {
    background-color: #465139;
    fill: #fff;
}

.gallery-mixItUp-cont {
    display: grid;
    grid-template-columns: 1fr 5fr;
    align-items: center;
}

@media (max-width: 1199px) {
    .gallery-mixItUp-cont {
        align-items: flex-start;
    }
}

@media (max-width: 991px) {
    .gallery-mixItUp-cont {
        grid-template-columns: 1fr;
    }
}

.gallery-mixItUp-btns {
    -webkit-padding-end: 25px;
    padding-inline-end: 25px;
}

.gallery-mixItUp-btns button {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 62px;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 500;
    color: #2a313d;
    border: none;
    background-color: #fff;
    transition: all 0.3s ease-in-out;
    position: relative;
}

.gallery-mixItUp-btns button:first-of-type {
    font-size: 15px;
}

.gallery-mixItUp-btns button:after {
    width: 0px;
    height: 0px;
    border-style: solid;
    border-width: 8.5px 9px 8.5px 0;
    border-color: transparent #465139 transparent transparent;
    position: absolute;
    top: 50%;
    inset-inline-start: 100%;
    transform: translateY(-50%);
    content: "";
    visibility: hidden;
    opacity: 0;
    transition: all 0.3s ease-in-out;
}

html[dir="ltr"] .gallery-mixItUp-btns button:after {
    border-width: 8.5px 0 8.5px 9px;
    border-color: transparent transparent transparent #465139;
}

.gallery-mixItUp-btns button:hover {
    background-color: rgb(114, 102, 88);
    color: #465139;
}

.gallery-mixItUp-btns button.mixitup-control-active {
    color: #fff;
    background-color: #465139;
}

.gallery-mixItUp-btns button.mixitup-control-active::after {
    visibility: visible;
    opacity: 1;
}

.gallery-mixItUp-btns button ~ button {
    margin-top: 12px;
}

@media (max-width: 991px) {
    .gallery-mixItUp-btns button ~ button {
        margin: 0;
        -webkit-margin-start: 7px;
        margin-inline-start: 7px;
    }
}

@media (max-width: 991px) {
    .gallery-mixItUp-btns button {
        height: 40px;
        border-radius: 24px;
        padding: 0 20px;
        white-space: nowrap;
    }

    .gallery-mixItUp-btns button:after {
        border-width: 9px 8.5px 0 8.5px;
        border-color: #465139 transparent transparent transparent;
        inset: unset;
        top: 100%;
        left: 50%;
        transform: translatex(-50%);
        display: none;
    }

    html[dir="ltr"] .gallery-mixItUp-btns button:after {
        border-width: 9px 8.5px 0 8.5px;
        border-color: #465139 transparent transparent transparent;
    }
}

@media (max-width: 991px) {
    .gallery-mixItUp-btns {
        display: flex;
        align-items: center;
        padding: 0 0 10px;
        margin-bottom: 15px;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        scroll-snap-type: x mandatory;
    }

    .gallery-mixItUp-btns::-webkit-scrollbar {
        display: none;
        height: 0;
    }
}

.gallery-mixItUp-items {
    max-width: 100%;
    overflow: hidden;
    -webkit-padding-start: 21px;
    padding-inline-start: 21px;
    min-height: 495px;
}

@media (max-width: 1199px) {
    .gallery-mixItUp-items {
        min-height: auto;
        padding: 0;
    }
}

.gallery-grid {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 15px;
}

@media (max-width: 767px) {
    .gallery-grid {
        grid-template-columns: 1fr 1fr;
    }
}

.gallery-img {
    display: block;
    width: 100%;
    overflow: hidden;
    position: relative;
    padding-bottom: 77.9220779221%;
    border-radius: 10px;
}

.gallery-img img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    transition: all 0.3s ease-in-out;
}

.gallery-img::after {
    content: url(../images/icons/resize.svg);
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    inset: 20px;
    background-color: rgb(70 81 57 / 70%);
    border-radius: 10px;
    visibility: hidden;
    opacity: 0;
    transform: scale(0);
    transition: all 0.3s ease-in-out;
}

@media (max-width: 767px) {
    .gallery-img::after {
        inset: 10px;
    }
}

.gallery-img:hover img {
    transform: scale(1.05) rotate(-2.5deg);
}

.gallery-img:hover::after {
    visibility: visible;
    opacity: 1;
    transform: scale(1);
}

.room-item {
    border-radius: 10px;
    overflow: hidden;
    background-color: #fff;
    width: 100%;
    max-width: 100%;
    margin: 15px auto;
    box-shadow: 0px 3px 15px rgba(0, 0, 0, 0);
    position: relative;
    transition: all 0.3s ease-in-out;
}

@media (max-width: 767px) {
    .room-item {
        max-width: calc(100% - 30px);
    }
}

.room-item .room-imgs {
    position: relative;
}

@media (max-width: 767px) {
    .room-item .room-imgs .img-cont {
        width: 100%;
    }
}

.room-item .room-imgs a {
    display: block;
    width: 100%;
    padding-bottom: 65.4545454545%;
    position: relative;
    /* Fix: allow tap/click on mobile inside owl carousel */
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;
    cursor: pointer;
}

/* Also fix the room name link on mobile */
.room-item .name-link,
.room-item .room-info a {
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;
}

.room-item .room-imgs a img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
}

.room-item .room-info {
    border: 1px solid #dedfeb;
    border-top: none;
    padding: 15px 15px 10px;
    border-radius: 0px 0px 10px 10px;
}

.room-item .room-stars {
    display: flex;
    align-items: center;
    margin-bottom: 15px;
}

.room-item .room-stars span {
    fill: #dedfeb;
    display: flex;
}

.room-item .room-stars span ~ span {
    -webkit-margin-start: 6px;
    margin-inline-start: 6px;
}

.room-item .room-stars span.active {
    fill: #ffc107;
}

.room-item .room-name {
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    font-size: 14px;
    font-weight: 700;
    color: #2a313d;
    margin: 0 0 15px;
}

.room-item .name-link {
    font-size: 14px;
    font-weight: 700;
    color: #2a313d;
    text-decoration: none;
    line-height: 1.5;
    transition: all 0.3s ease-in-out;
}

.room-item .name-link:hover {
    color: #465139;
}

.room-item .room-rating {
    display: flex;
    align-items: center;
    margin-bottom: 15px;
}

.room-item .rating-value {
    height: 25px;
    border-radius: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 13px;
    min-width: 46px;
    background-color: rgba(94, 157, 154, 0.051);
    border: 1px solid #465139;
    -webkit-margin-end: 8px;
    margin-inline-end: 8px;
    position: relative;
}

.room-item .rating-value small {
    font-size: 14px;
    font-weight: 500;
    color: #465139;
    display: flex;
    align-items: center;
    line-height: 14px;
}

.room-item .rating-name {
    font-size: 14px;
    font-weight: 500;
    color: #2a313d;
    -webkit-margin-end: 10px;
    margin-inline-end: 10px;
}

.room-item .rating-num {
    font-size: 14px;
    color: #86959f;
}

.room-item .room-price {
    display: flex;
    align-items: center;
    font-size: 14px;
    color: #86959f;
    margin-bottom: 18px;
}

.room-item .room-price span {
    -webkit-margin-start: 5px;
    margin-inline-start: 5px;
    font-weight: 400;
}

.room-item .room-price strong {
    font-weight: 700;
    color: #465139;
}

.room-item .room-price del {
    text-decoration: line-through;
    -webkit-margin-start: 12px;
    margin-inline-start: 12px;
    font-weight: 400;
}

.room-item .room-total {
    display: flex;
    align-items: center;
    margin-bottom: 15px;
}

.room-item .total-title {
    font-size: 14px;
    color: #86959f;
}

.room-item .total-value {
    font-size: 14px;
    color: #465139;
    font-weight: 700;
    -webkit-margin-start: 5px;
    margin-inline-start: 5px;
}

.room-item .room-feats {
    display: flex;
    align-items: center;
    margin-bottom: 11px;
}

.room-item .room-feat {
    display: flex;
    align-items: center;
    justify-content: center;
}

.room-item .room-feat ~ .room-feat {
    -webkit-margin-start: 20px;
    margin-inline-start: 20px;
}

.room-item .feat-icon {
    width: 16px;
    -webkit-margin-end: 10px;
    margin-inline-end: 10px;
}

.room-item .feat-icon img {
    max-width: 100%;
}

.room-item .feat-text {
    font-size: 14px;
    color: #86959f;
}

.room-item .room-time {
    display: flex;
    align-items: center;
    margin-bottom: 13px;
}

.room-item .time-title {
    font-size: 14px;
    color: #86959f;
}

.room-item .time-value {
    font-size: 14px;
    color: #2a313d;
    -webkit-margin-start: 5px;
    margin-inline-start: 5px;
    font-weight: 400;
}

.room-item .room-status {
    display: flex;
    align-items: center;
}

.room-item .status-title {
    font-size: 14px;
    color: #2a313d;
}

.room-item .status-value {
    font-size: 14px;
    -webkit-margin-start: 5px;
    margin-inline-start: 5px;
    font-weight: 400;
    display: flex;
    align-items: center;
    color: #465139;
}

.room-item .status-value::before {
    width: 6px;
    height: 6px;
    content: "";
    background-color: #465139;
    border-radius: 50%;
    -webkit-margin-end: 2px;
    margin-inline-end: 2px;
}

.room-item .status-value.canceld {
    color: #f54748;
}

.room-item .status-value.canceld::before {
    background-color: #f54748;
}

.room-item .status-value.finshed {
    color: #2a313d;
}

.room-item .status-value.finshed::before {
    background-color: #2a313d;
}

.room-item .status-value.inProgress {
    color: #465139;
}

.room-item .status-value.inProgress::before {
    background-color: #465139;
}

.room-item .room-hint {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    font-size: 14px;
    font-weight: 500;
    color: #2a313d;
    border-top: 1px solid #dedfeb;
    padding: 13px 0 7px;
}

.room-item .room-hint img {
    -webkit-margin-end: 10px;
    margin-inline-end: 10px;
}

.room-item:hover {
    box-shadow: 0px 3px 15px rgba(0, 0, 0, 0.1607843137);
}

.room-item:hover .owl-nav,
.room-item:hover .owl-dots {
    opacity: 1;
    visibility: visible;
}

.room-item .room-opts {
    position: absolute;
    top: 15px;
    inset-inline-end: 15px;
    z-index: 5;
}

.room-item .room-opts .room-opts-btn {
    background-color: #fff;
    color: #465139;
    fill: #465139;
    width: 83px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 16px;
    cursor: pointer;
    transition: all 0.3s ease-in-out;
}

.room-item .room-opts .room-opts-btn span {
    display: flex;
    align-items: center;
    font-size: 14px;
    line-height: 14px;
}

.room-item .room-opts .room-opts-btn svg {
    -webkit-margin-start: 6px;
    margin-inline-start: 6px;
}

.room-item .room-opts .room-opts-list {
    position: absolute;
    top: calc(100% + 4px);
    inset-inline-end: 0;
    width: 100%;
    min-width: 140px;
    z-index: 10;
    background-color: #fff;
    box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.1607843137);
    border-radius: 8px;
    visibility: hidden;
    opacity: 0;
    transition: all 0.3s ease-in-out;
}

.room-item .room-opts .room-opts-list hr {
    margin: 0 6px;
    border-color: #ebeef2;
    opacity: 1;
}

.room-item .room-opts .room-opts-list .room-opt {
    width: auto;
    background-color: rgba(94, 157, 154, 0);
    border: none;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    color: #2a313d;
    font-size: 14px;
    text-decoration: none;
    margin: 8px;
    padding: 0 10px;
    height: 30px;
    border-radius: 5px;
    transition: all 0.3s ease-in-out;
}

.room-item .room-opts .room-opts-list .room-opt:hover {
    color: #465139;
    background-color: rgba(94, 157, 154, 0.16);
}

.room-item .room-opts .room-opts-list .room-opt:last-of-type {
    color: #f54748;
}

.room-item .room-opts:hover .room-opts-btn {
    background-color: #465139;
    fill: #fff;
    color: #fff;
}

.room-item .room-opts:hover .room-opts-list {
    visibility: visible;
    opacity: 1;
}

.rooms-grid.list .room-item,
.orders-grid.list .room-item {
    display: flex;
    align-items: center;
    width: 100%;
    max-width: 100%;
    background-color: #fff;
    border-radius: 10px;
    overflow: unset;
}

.rooms-grid.list .room-item .room-imgs,
.orders-grid.list .room-item .room-imgs {
    position: relative;
    width: 230px;
    flex-shrink: 0;
    border-end-start-radius: 10px;
    border-start-start-radius: 10px;
    overflow: hidden;
}

.rooms-grid.list .room-item .room-imgs .img-cont,
.orders-grid.list .room-item .room-imgs .img-cont {
    width: 230px;
}

.rooms-grid.list .room-item .room-imgs a,
.orders-grid.list .room-item .room-imgs a {
    height: 205px;
    padding-bottom: 0;
}

.rooms-grid.list .room-item .room-info,
.orders-grid.list .room-item .room-info {
    border: none;
    width: 100%;
    padding: 10px 20px;
    border-radius: 0px;
}

.rooms-grid.list .room-item .room-footer,
.orders-grid.list .room-item .room-footer {
    display: flex;
    align-items: center;
}

.rooms-grid.list .room-item .room-feats,
.orders-grid.list .room-item .room-feats {
    margin: 0;
}

.rooms-grid.list .room-item .room-hint,
.orders-grid.list .room-item .room-hint {
    border: none;
    margin: 0;
    padding: 0;
    -webkit-margin-start: 26px;
    margin-inline-start: 26px;
}

@media (max-width: 991px) {
    .rooms-grid.list .room-item .room-hint,
    .orders-grid.list .room-item .room-hint {
        -webkit-margin-start: 20px;
        margin-inline-start: 20px;
    }
}

.rooms-grid.list .room-item .room-opts .room-opts-btn,
.orders-grid.list .room-item .room-opts .room-opts-btn {
    background-color: #726658;
}

.rooms-grid.list .room-item .room-opts:hover .room-opts-btn,
.orders-grid.list .room-item .room-opts:hover .room-opts-btn {
    background-color: #465139;
}

.facilities-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px;
}

@media (max-width: 1199px) {
    .facilities-grid {
        gap: 15px;
    }
}

@media (max-width: 767px) {
    .facilities-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 15px 10px;
    }
}

.facility-item {
    border: 1px solid #dedfeb;
    border-radius: 10px;
    background-color: #fff;
    box-shadow: 0px 3px 10px rgba(0, 0, 0, 0);
    margin-top: 25.5px;
    position: relative;
    padding: 45px 15px 21px;
    transition: all 0.3s ease-in-out;
}

.facility-item .feat-icon {
    width: 55px;
    height: 55px;
    border-radius: 50%;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
}

.facility-item .feat-title {
    font-size: 15px;
    font-weight: 500;
    text-align: center;
    margin-bottom: 0;
    cursor: default;
}

@media (max-width: 991px) {
    .facility-item .feat-title {
        font-size: 14px;
    }
}

.facility-item:hover {
    border-color: transparent;
    transform: translateY(-5px);
    box-shadow: 0px 3px 10px rgba(0, 0, 0, 0.1607843137);
}

.modal-backdrop {
    z-index: 998;
    background: linear-gradient(
        90deg,
        rgba(85, 85, 85, 0.69) 0%,
        rgba(0, 0, 0, 0.741) 100%
    );
}

.modal-backdrop.show {
    opacity: 1;
}

.modal-content {
    border: 1px solid #d9e0e5;
    border-radius: 10px;
    background-color: #fff;
    position: relative;
}

.modal-content .modal-body {
    padding: 0;
}

.modal-content .modal-close {
    background-color: transparent;
    border: none;
    position: absolute;
    top: 20px;
    inset-inline-end: 20px;
    fill: #2a313d;
    z-index: 9;
    padding: 0;
    transition: all 0.3s ease-in-out;
}

.modal-content .modal-close:hover {
    fill: #465139;
}

.modal-title {
    font-size: 20px;
    font-weight: 700;
    color: #2a313d;
    margin: 0;
}

.otp-modal-cont {
    padding: 60px 15px 65px;
}

@media (max-width: 767px) {
    .otp-modal-cont {
        padding: 40px 10px 45px;
    }
}

.otp-modal-cont .modal-title {
    margin-bottom: 45px;
    text-align: center;
}

@media (max-width: 767px) {
    .otp-modal-cont .modal-title {
        margin-bottom: 25px;
    }
}

.otp-img {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
}

@media (min-width: 1200px) {
    .modal-xl {
        --bs-modal-width: 1062px;
    }
}

#imgsModal {
    z-index: 999;
}

#imgsModal .modal-content {
    background-color: FDFDFDFF;
}

#imgsModal .modal-body {
    padding: 30px;
}

@media (max-width: 767px) {
    #imgsModal .modal-body {
        padding: 20px 15px;
    }
}

#imgsModal .gallery-modal-title {
    font-size: 20px;
    font-weight: 700;
    color: #2a313d;
    margin: 0 0 20px;
}

#imgsModal .gallery-cont {
    grid-template-columns: 2.4518fr 1fr;
}

@media (max-width: 1199px) {
    #imgsModal .gallery-cont {
        gap: 15px;
        grid-template-columns: 1fr;
    }
}

#rateModal .modal-content {
    border: none;
    box-shadow: 0px 3px 10px rgba(0, 0, 0, 0.1607843137);
}

.rate-form {
    padding: 27px 30px 33px;
}

@media (max-width: 767px) {
    .rate-form {
        padding: 20px 15px;
    }
}

.rate-form .rate-modal-title {
    font-size: 22px;
    color: #2a313d;
    font-weight: 700;
    margin-bottom: 30px;
}

.rate-form .custom-input {
    height: 121px;
    border-color: #c3c4cd;
}

.rate-form .custom-input:focus {
    border-color: #465139;
}

.rate-tabs {
    display: flex;
    align-items: center;
    margin-bottom: 22px;
}

.rate-tabs .tab-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    font-weight: 500;
    color: #86959f;
    fill: #86959f;
    stroke: #86959f;
    background-color: transparent;
    border: none;
    margin-bottom: 12px;
    position: relative;
    padding: 0 11px;
    transition: all 0.3s ease-in-out;
}

.rate-tabs .tab-btn:after {
    position: absolute;
    top: calc(100% + 12px);
    left: 0;
    right: 0;
    height: 2px;
    border-radius: 1px;
    width: 100%;
    background-color: #dedfeb;
    display: block;
    content: "";
    transition: all 0.3s ease-in-out;
}

.rate-tabs .tab-btn svg {
    -webkit-margin-end: 6px;
    margin-inline-end: 6px;
}

.rate-tabs .tab-btn:hover {
    color: #465139;
    fill: #465139;
    stroke: #465139;
}

.rate-tabs .tab-btn.active {
    color: #465139;
    fill: #465139;
    stroke: #465139;
}

.rate-tabs .tab-btn.active::after {
    background-color: #465139;
}

.rate-items {
    -webkit-padding-end: 30px;
    padding-inline-end: 30px;
}

@media (max-width: 1199px) {
    .rate-items {
        padding: 0;
    }
}

.rate-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 30px;
}

@media (max-width: 767px) {
    .rate-item {
        flex-direction: column;
        align-items: flex-start;
        justify-content: flex-start;
    }
}

.rate-item .item-label {
    margin: 0;
    padding: 0;
    font-size: 16px;
    font-weight: 500;
    color: #2a313d;
}

@media (max-width: 767px) {
    .rate-item .item-label {
        margin-bottom: 3px;
    }
}

.ratestars {
    display: flex;
    flex-direction: row-reverse;
}

@media (max-width: 767px) {
    .ratestars {
        -webkit-margin-start: auto;
        margin-inline-start: auto;
    }
}

.ratestars label {
    margin: 0;
    cursor: pointer;
    margin: 0 4px;
}

.ratestars label svg {
    fill: #fff;
    stroke: #c3c4cd;
    transition: all 0.3s ease-in-out;
}

.ratestars label:hover svg {
    stroke: #f7c51e;
    fill: #f7c51e;
}

.ratestars label:hover ~ label svg {
    stroke: #f7c51e;
    fill: #f7c51e;
}

.ratestars input {
    display: none;
}

.ratestars input:checked ~ label svg {
    stroke: #f7c51e;
    fill: #f7c51e;
}

.rate-submit {
    width: 115px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 20px auto 0;
    border-radius: 24px;
    font-size: 16px;
    font-weight: 500;
    color: #fff;
    border: none;
    background-color: #465139;
    text-decoration: none;
    transition: all 0.3s ease-in-out;
}

.rate-submit:hover {
    background-color: #726658;
    color: #465139;
}

.header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 0;
    transition: all 0.3s ease-in-out;
}

@media (max-width: 991px) {
    .header {
        justify-content: flex-start;
    }
}

@media (max-width: 767px) {
    .header {
        padding: 7px 0;
    }
}

.logo {
    width: 70px !important;
    height: 70px !important;
    /*display: block;*/
    transition: all 0.3s ease-in-out;
    justify-items: center;
    position: relative;
    display: block;
}

/* Logo Switcher - Automatic based on theme */
.logo {
}

.logo img {
    transition: opacity 0.35s ease;
}

.logo-dark {
    opacity: 1;
}

.logo-light {
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0;
}

/* When dark mode is active */
.dark .logo-dark {
    opacity: 0;
}

.dark .logo-light {
    opacity: 1;
}

@media (max-width: 767px) {
    .logo {
        width: 120px !important;
        height: 50px !important;
    }
}

.header-nav {
    /*padding: 0;*/
    /*-webkit-margin-start: auto;*/
    /*        margin-inline-start: auto;*/
    display: flex;
    max-width: max-content;
    position: relative;
    padding: 0;
    width: 33.3333%;
}

.navbar-cont {
    display: flex;
    align-items: center;
}

.header-tools {
    display: flex;
    align-items: center;
}

@media (max-width: 991px) {
    .header-tools {
        -webkit-margin-start: auto;
        margin-inline-start: auto;
    }
}

.lang-cont {
    -webkit-margin-start: 38px;
    margin-inline-start: 38px;
    position: relative;
}

@media (max-width: 1199px) {
    .lang-cont {
        -webkit-margin-start: 28px;
        margin-inline-start: 28px;
    }
}

@media (max-width: 991px) {
    .lang-cont {
        display: none;
    }
}

.lang-cont .lang-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    color: #2a313d;
    cursor: pointer;
    transition: all 0.3s ease-in-out;
}

.lang-cont .lang-btn img {
    -webkit-margin-end: 5px;
    margin-inline-end: 5px;
}

.lang-cont .lang-btn .arrow {
    display: flex;
    align-items: center;
    -webkit-margin-start: 11px;
    margin-inline-start: 11px;
    stroke: #86959f;
}

.lang-cont .lang-list {
    position: absolute;
    top: calc(100% + 12px);
    inset-inline-start: 0;
    min-width: 120px;
    z-index: 10;
    background-color: #fff;
    box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.1607843137);
    border-radius: 8px;
    visibility: hidden;
    opacity: 0;
    transition: all 0.3s ease-in-out;
}

.lang-cont .lang-list hr {
    margin: 0 10px;
    border-color: #ebeef2;
    opacity: 1;
}

.lang-cont .lang-list .lang-link {
    width: auto;
    background-color: transparent;
    border: none;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    color: #2a313d;
    font-size: 14px;
    text-decoration: none;
    margin: 6px;
    padding: 4px;
    height: 30px;
    border-radius: 5px;
    transition: color 0.3s ease-in-out;
}

.lang-cont .lang-list .lang-link img {
    width: 21px;
    -webkit-margin-end: 5.5px;
    margin-inline-end: 5.5px;
}

.lang-cont .lang-list .lang-link:hover {
    color: #465139;
}

.lang-cont .lang-list .lang-link.active {
    pointer-events: none;
    color: #465139;
    background-color: rgba(94, 157, 154, 0.16);
}

.lang-cont:hover .lang-btn {
    color: #465139;
}

.lang-cont:hover .lang-btn .arrow {
    stroke: #465139;
}

.lang-cont:hover .lang-list {
    visibility: visible;
    opacity: 1;
}

.notifications-link {
    fill: #2a313d;
    position: relative;
    text-decoration: none;
    -webkit-margin-start: 19px;
    margin-inline-start: 19px;
    transition: all 0.3s ease-in-out;
}

@media (max-width: 991px) {
    .notifications-link {
        -webkit-margin-end: 15px;
        margin-inline-end: 15px;
    }
}

@media (max-width: 767px) {
    .notifications-link {
        display: none;
    }
}

.notifications-link:hover {
    fill: #465139;
}

.notifications-link .count {
    position: absolute;
    top: 0;
    inset-inline-start: -3px;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #f54748;
    color: #fff;
    font-size: 7px;
}

.header-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
    height: 48px;
    padding: 0 20px;
    font-size: 18px;
    text-decoration: none;
    transition: all 0.3s ease-in-out;
}

@media (max-width: 1199px) {
    .header-btn {
        padding: 0;
        width: 48px;
    }
}

@media (max-width: 991px) {
    .header-btn {
        width: auto;
        padding: 0 10px;
        height: 35px;
        font-size: 14px;
    }
}

.header-btn .icon {
    display: flex;
    align-items: center;
}

@media (max-width: 767px) {
    .header-btn .icon svg {
        width: 15px;
    }
}

.header-btn .arrow {
    -webkit-margin-start: 10px;
    margin-inline-start: 10px;
}

@media (max-width: 1199px) {
    .header-btn .arrow {
        display: none;
    }
}

@media (max-width: 991px) {
    .header-btn .arrow {
        display: block;
    }
}

.header-btn .text {
    -webkit-margin-start: 6px;
    margin-inline-start: 6px;
}

@media (max-width: 1199px) {
    .header-btn .text {
        display: none;
    }
}

@media (max-width: 991px) {
    .header-btn .text {
        display: block;
    }
}

.header-log-cont .header-btn {
    padding: 0 21px;
    color: #fff;
    stroke: #fff;
    background-color: #465139;
}

@media (max-width: 1199px) {
    .header-log-cont .header-btn {
        padding: 0;
    }
}

@media (max-width: 991px) {
    .header-log-cont .header-btn {
        padding: 0 10px;
    }
}

.header-log-cont .header-btn:hover {
    background-color: #726658;
    color: #465139;
    stroke: #465139;
}

.header-acc-cont .header-btn {
    background-color: #465139;
    color: #fff;
    stroke: #fff;
}

.header-acc-cont .header-btn:hover {
    color: #465139 !important;
    stroke: #465139 !important;
    background-color: #726658 !important;
}

.header-log-cont {
    -webkit-margin-start: 25px;
    margin-inline-start: 25px;
}

@media (max-width: 1199px) {
    .header-log-cont {
        -webkit-margin-start: 15px;
        margin-inline-start: 15px;
    }
}

@media (max-width: 991px) {
    .header-log-cont {
        margin: 0;
    }
}

.header-acc-cont {
    position: relative;
    -webkit-margin-start: 15px;
    margin-inline-start: 15px;
}

@media (max-width: 991px) {
    .header-acc-cont {
        margin: 0;
    }
}

.header-acc-cont .acc-list {
    position: absolute;
    top: calc(100% + 4px);
    inset-inline-end: 0;
    width: 100%;
    min-width: 140px;
    z-index: 10;
    background-color: #fff;
    box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.1607843137);
    border-radius: 8px;
    visibility: hidden;
    opacity: 0;
    transition: all 0.3s ease-in-out;
}

.header-acc-cont .acc-list hr {
    margin: 0 6px;
    border-color: #ebeef2;
    opacity: 1;
}

.header-acc-cont .acc-list .acc-link {
    width: auto;
    background-color: rgba(94, 157, 154, 0);
    border: none;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    color: #2a313d;
    font-size: 14px;
    text-decoration: none;
    margin: 8px;
    padding: 0 10px;
    height: 30px;
    border-radius: 5px;
    transition: all 0.3s ease-in-out;
}

.header-acc-cont .acc-list .acc-link:hover {
    color: #465139;
    background-color: rgba(94, 157, 154, 0.16);
}

.header-acc-cont .acc-list .acc-link:last-of-type {
    color: #f54748;
}

.header-acc-cont .acc-list .acc-link.active {
    color: #465139;
    background-color: rgba(94, 157, 154, 0.16);
}

.header-acc-cont:hover .header-btn {
    background-color: #465139;
    color: #fff;
    stroke: #fff;
}

.header-acc-cont:hover .acc-list {
    visibility: visible;
    opacity: 1;
}

.menu-btn {
    display: none;
    border: none;
    background-color: transparent;
    padding: 0;
    -webkit-margin-end: 20px;
    margin-inline-end: 20px;
}

.menu-btn .hamburger-lines {
    height: 14px;
    width: 18px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.menu-btn .hamburger-lines .line {
    display: block;
    height: 2px;
    width: 100%;
    background-color: #2a313d;
    transition: all 0.4s ease-in-out;
}

.menu-btn:hover .hamburger-lines .line {
    background-color: #465139;
}

@media (max-width: 991px) {
    .menu-btn {
        display: block;
    }
}

body {
    padding-top: 99.66px;
}

@media (max-width: 767px) {
    body {
        padding-top: 68.33px;
    }
}

header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 99;
    box-shadow: 0px 2px 4px rgba(166, 164, 164, 0);
    border-bottom: 1px solid rgba(240, 241, 246, 0);
    background-color: #fff;
    transition: all 0.3s ease-in-out;
}

@media (max-width: 1199px) {
    header .container {
        max-width: 100%;
    }
}

/* Ensure theme toggle meets minimum 44×44px touch target on all screen sizes */
#themeToggle {
    min-width: 44px;
    min-height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
}

header.fixed {
    box-shadow: 0px 2px 4px rgba(166, 164, 164, 0.2);
    border-color: rgba(166, 164, 164, 0.2);
}

header.fixed .header {
    padding: 7px 0;
}

@media (max-width: 767px) {
    header.fixed .header {
        padding: 7px 0;
    }
}

header.fixed .logo {
    width: 130px !important;
}

@media (max-width: 767px) {
    header.fixed .logo {
        width: 120px !important;
    }
}

.breadcrumb-sec {
    padding: 30px 0 0;
    background-color: #ffffff;
}

@media (max-width: 767px) {
    .breadcrumb-sec {
        display: none;
    }
}

.breadcrumb-list {
    display: flex;
    align-items: center;
    margin: 0;
    padding: 10px 41px;
    border: 1px solid #dcdde9;
    border-radius: 10px;
}

.breadcrumb-list li {
    display: flex;
    align-items: center;
}

.breadcrumb-list li ~ li::before {
    content: "/";
    font-size: 15px;
    color: #2a313d;
    margin: 0 6px;
}

.breadcrumb-list a {
    font-size: 15px;
    color: #2a313d;
    stroke: #2a313d;
    display: flex;
    align-items: center;
    text-decoration: none;
    transition: all 0.3s ease-in-out;
}

.breadcrumb-list a svg {
    -webkit-margin-end: 10px;
    margin-inline-end: 10px;
}

.breadcrumb-list a:hover {
    color: #465139;
    stroke: #465139;
}

.breadcrumb-list a.active {
    color: #70749c;
}

.sec-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 21px;
}

@media (max-width: 767px) {
    .sec-head {
        margin-bottom: 25px;
    }
}

.sec-title {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    font-size: 26px;
    color: #2a313d;
    font-weight: 700;
    margin: 0;
}

.sec-title img {
    -webkit-margin-end: 11px;
    margin-inline-end: 11px;
}

@media (max-width: 767px) {
    .sec-title {
        font-size: 22px;
    }

    .sec-title img {
        width: 25px;
    }
}

.sec-more {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 30px;
    width: 196px;
    height: 56px;
    background-color: #465139;
    color: #fff !important;
    stroke: #fff;
    font-size: 18px;
    text-decoration: none;
    margin: 30px auto 0;
    transition: all 0.3s ease-in-out;
}

.sec-more svg {
    -webkit-margin-start: 8.7px;
    margin-inline-start: 8.7px;
}

.sec-more:hover {
    background-color: #726658;
    color: #465139;
    stroke: #465139;
}

.rooms-sec .sec-more,
.specials-sec .sec-more {
    margin-top: 10px;
}

@media (max-width: 991px) {
    .rooms-sec .sec-more,
    .specials-sec .sec-more {
        margin-top: 25px;
    }
}

@media (max-width: 991px) {
    .sec-more {
        margin-top: 25px;
    }
}

.home-body section {
    background-color: #fff;
}

.home-body section:nth-of-type(even) {
    background-color: FDFDFDFF;
}

/* about*/
.about-sec {
    padding: 0 0 70px;
}

@media (max-width: 767px) {
    .about-sec {
        padding: 0 0 50px;
    }
}

/* gallery*/
.gallery-sec {
    padding: 60px 0 70px;
}

.gallery-sec .sec-head {
    margin-bottom: 28px;
}

@media (max-width: 767px) {
    .gallery-sec .sec-head {
        margin-bottom: 25px;
    }
}

@media (max-width: 767px) {
    .gallery-sec {
        padding: 40px 0 50px;
    }
}

/* rooms*/
.rooms-sec,
.specials-sec {
    padding: 60px 0;
}

.rooms-sec .sec-head,
.specials-sec .sec-head {
    margin-bottom: 6px;
}

@media (max-width: 767px) {
    .rooms-sec,
    .specials-sec {
        padding: 40px 0;
    }
}

/* facilities*/
.facilities-sec {
    padding: 60px 0 67px;
}

.facilities-sec .sec-head {
    margin-bottom: 37px;
}

@media (max-width: 767px) {
    .facilities-sec .sec-head {
        margin-bottom: 25px;
    }
}

@media (max-width: 767px) {
    .facilities-sec {
        padding: 40px 0 45px;
    }
}

/* feats*/
.page-feats-grid {
    margin-top: 70px;
    padding-top: 50px;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 15px;
    position: relative;
}

.page-feats-grid:after {
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    content: "";
    width: 75%;
    height: 1px;
    background-color: #dedfeb;
    position: absolute;
}

@media (max-width: 991px) {
    .page-feats-grid {
        flex-direction: column;
        gap: unset;
        padding-top: 40px;
        margin-top: 50px;
    }
}

@media (max-width: 767px) {
    .page-feats-grid {
        padding-top: 30px;
        margin-top: 40px;
    }
}

.page-feat-item {
    width: 100%;
    max-width: 320px;
    text-align: center;
}

@media (max-width: 991px) {
    .page-feat-item {
        margin: 20px auto;
    }
}

.page-feat-item .feat-img {
    height: 180px;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 32px;
}

@media (max-width: 991px) {
    .page-feat-item .feat-img {
        height: auto;
    }
}

.page-feat-item .feat-name {
    font-size: 20px;
    font-weight: 700;
    color: #2a313d;
    line-height: 1.45;
    margin: 0 0 25px;
}

.page-feat-item .feat-desc {
    font-size: 14px;
    color: #6e817f;
    line-height: 1.79;
}

.page-sec {
    padding: 30px 0 45px;
    background-color: #ffffff;
}

@media (max-width: 767px) {
    .page-sec {
        min-height: auto;
        padding: 20px 0 30px;
    }
}

.page-block {
    box-shadow: 0px 2px 4px rgba(166, 164, 164, 0.2);
    border: 1px solid #f0f1f6;
    border-radius: 16px;
    background-color: #fff;
}

@media (max-width: 767px) {
    .main-item {
        max-width: 100%;
        overflow: hidden;
    }
}

.side-item {
    max-width: 100%;
    overflow: hidden;
}

.hint {
    background-color: #ecf3f3;
    border: 1px solid #465139;
    border-radius: 5px;
    display: flex;
    align-items: flex-start;
    padding: 10px 10px;
    -webkit-padding-end: 5px;
    padding-inline-end: 5px;
    font-size: 13px;
    font-weight: 500;
    line-height: 2;
    color: #465139;
    fill: #465139;
    min-height: 48px;
}

@media (max-width: 767px) {
    .hint {
        padding: 10px;
    }
}

.hint svg {
    flex-shrink: 0;
    margin-top: 5px;
    -webkit-margin-end: 9px;
    margin-inline-end: 9px;
}

@media (max-width: 767px) {
    .hint svg {
        -webkit-margin-end: 5px;
        margin-inline-end: 5px;
    }
}

.hint.error {
    background-color: #fff2f2;
    border-color: #bb0e13;
    color: #bb0e13;
    fill: #bb0e13;
}

.hint.warning {
    background-color: #fff6e8;
    border-color: #e49115;
    color: #e49115;
    fill: #e49115;
}

.hint.danger {
    background-color: #ffeeee;
    border-color: #f54748;
    color: #f54748;
    fill: #f54748;
}

.auth-block {
    padding: 50px;
}

@media (max-width: 991px) {
    .auth-block {
        padding: 25px 15px;
    }
}

.external-link {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    text-align: center;
    gap: 5px 8px;
    margin-top: 20px;
    color: #2a313d;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.375;
}

.external-link a {
    color: #465139;
    text-decoration: none;
    transition: all 0.3s ease-in-out;
}

.external-link a:hover {
    color: #86959f;
    text-decoration: underline;
}

.external-link.bordered-link {
    padding: 15px 10px;
    border: 2px solid #465139;
    border-radius: 30px;
}

.auth-title {
    font-size: 28px;
    font-weight: 700;
    color: #2a313d;
    margin: 0 0 20px;
}

@media (max-width: 991px) {
    .auth-title {
        text-align: center;
        font-size: 24px;
    }
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ log*/
.log-cont {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 68px;
}

@media (max-width: 1199px) {
    .log-cont {
        gap: 20px;
    }
}

@media (max-width: 991px) {
    .log-cont {
        grid-template-columns: 1fr;
        gap: unset;
    }
}

.log-inline-start {
    display: flex;
    flex-direction: column;
    height: 100%;
}

@media (max-width: 991px) {
    .log-inline-start {
        height: auto;
    }
}

.log-image {
    height: 100%;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

@media (max-width: 991px) {
    .log-image {
        display: none;
    }
}

.log-inline-end {
    max-width: 100%;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ forget*/
.forget-block {
    width: 100%;
    margin: auto;
    position: relative;
    max-width: 585px;
    transition: all 0.3s ease-in-out;
}

.forget-block.active {
    max-width: 100%;
}

@media (max-width: 1199px) {
    .forget-block {
        max-width: 100%;
    }
}

.forget-cont {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 80px;
}

@media (max-width: 1199px) {
    .forget-cont {
        grid-template-columns: 1fr;
        gap: unset;
    }
}

.otp-cont {
    padding: 30px 0 0;
    display: none;
}

.otp-block {
    border: 1px solid #d9e0e5;
    border-radius: 10px;
    background-color: #fff;
    padding: 30px 10px;
}

.otp-title {
    color: #2a313d;
    font-weight: 400;
    font-size: 15px;
    line-height: 1.4;
    margin-bottom: 17px;
    text-align: center;
}

.otp-inputs {
    display: flex;
    align-items: center;
    justify-content: center;
    direction: ltr;
}

.otp-field {
    width: 48px;
    height: 48px;
    background-color: #fff;
    border: 1px solid #d9e0e5;
    border-radius: 10px;
    text-align: center;
    font-size: 14px;
    font-weight: 400;
    color: #465139;
    margin: 0 14px;
    transition: all 0.3s ease-in-out;
}

.otp-field::-moz-placeholder {
    font-size: 14px;
    font-weight: 300;
    color: rgba(36, 36, 36, 0.8509803922);
}

.otp-field::placeholder {
    font-size: 14px;
    font-weight: 300;
    color: rgba(36, 36, 36, 0.8509803922);
}

.otp-field:focus,
.otp-field.active {
    border-color: #465139;
}

.otp-field.error {
    border-color: #f54748;
    color: #f54748;
}

.resend-cont {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 32px;
    margin: 22px 0 20px;
}

.resend-cont .prgress {
    -webkit-margin-end: 5px;
    margin-inline-end: 5px;
    position: relative;
}

.resend-cont circle {
    transition: all 1s linear;
}

.resend-cont #c1 {
    transition: all 1s linear;
    stroke: #fff;
    stroke-width: 5;
    stroke-linecap: round;
    fill: transparent;
}

.resend-cont #c2 {
    transition: all 1s linear;
    stroke: #465139;
    stroke-width: 5;
    stroke-linecap: round;
    fill: transparent;
}

.resend-cont #counterText {
    color: #465139;
    font-size: 12px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.resend-cont .resend-btn {
    font-size: 11px;
    color: #70749c;
    background-color: transparent;
    border: none;
    padding: 0;
    transition: all 0.3s ease-in-out;
}

.resend-cont .resend-btn:hover {
    color: #465139;
}

.otp-submit {
    width: 115px;
    height: 48px;
    font-size: 16px;
    font-weight: 500;
    color: #fff;
    background-color: #465139;
    border-radius: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    border: none;
    text-decoration: none;
    margin: auto;
    transition: all 0.3s ease-in-out;
}

.otp-submit:hover {
    color: #465139;
    background-color: #726658;
}

.otp-cancel {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 15px;
}

.otp-cancel-btn {
    font-size: 14px;
    color: #2a313d;
    text-decoration: none;
    transition: all 0.3s ease-in-out;
}

.otp-cancel-btn:hover {
    color: #465139;
}

.forget-inline-start {
    width: 484px;
}

@media (max-width: 1199px) {
    .forget-inline-start {
        width: 100%;
    }
}

.forget-inline-end {
    padding-top: 54px;
    visibility: hidden;
    opacity: 0;
    transition: all 0.3s ease-in-out;
    animation-delay: 0.3s;
}

@media (max-width: 1199px) {
    .forget-inline-end {
        display: none;
        visibility: visible;
        opacity: 1;
        transition: none;
    }
}

.active .forget-inline-end {
    visibility: visible;
    opacity: 1;
}

.forget-inline-end::before {
    width: 1px;
    position: absolute;
    top: 30px;
    bottom: 30px;
    background-color: #d9e0e5;
    left: 50%;
    transform: translateX(-50%);
    content: "";
}

@media (max-width: 1199px) {
    .forget-inline-end::before {
        display: none;
    }
}

.succes-msg {
    padding-top: 38px;
    display: none;
}

.succes-msg .otp-block {
    text-align: center;
    padding: 45px 10px;
}

.succes-msg h3 {
    font-weight: 700;
    color: #2a313d;
    font-size: 20px;
    margin: 20px 0 0;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ reg*/
.reg-block {
    position: relative;
}

.reg-block::before {
    width: 1px;
    position: absolute;
    top: 30px;
    bottom: 30px;
    background-color: #d9e0e5;
    left: 50%;
    transform: translateX(-50%);
    content: "";
}

@media (max-width: 1199px) {
    .reg-block::before {
        display: none;
    }
}

.reg-cont {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 68px;
}

@media (max-width: 1199px) {
    .reg-cont {
        gap: 20px;
    }
}

@media (max-width: 991px) {
    .reg-cont {
        grid-template-columns: 1fr;
        gap: unset;
    }
}

.reg-inline-start {
    display: flex;
    flex-direction: column;
    height: 100%;
}

@media (max-width: 991px) {
    .reg-inline-start {
        height: auto;
    }
}

.reg-image {
    height: 100%;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

@media (max-width: 991px) {
    .reg-image {
        display: none;
    }
}

.reg-inline-end {
    max-width: 100%;
}

.faq-accordion {
    width: 100%;
    max-width: 1113px;
    margin: auto;
}

.faq-item {
    background-color: #fff;
    box-shadow: 0px 5px 7px rgba(0, 0, 0, 0.0588235294);
    border-radius: 10px;
}

.faq-item ~ .faq-item {
    margin-top: 20px;
}

.faq-item .faq-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 15px 19px;
    cursor: pointer;
}

@media (max-width: 991px) {
    .faq-item .faq-head {
        padding: 10px 15px;
    }
}

.faq-item .faq-head.active .faq-title {
    font-weight: 700;
}

.faq-item .faq-head.active .faq-icon .vertical {
    transition: all 0.5s ease-in-out;
    transform: rotate(90deg);
}

.faq-item .faq-head.active .faq-icon .horizontal {
    transition: all 0.5s ease-in-out;
    transform: rotate(90deg);
    opacity: 0;
}

.faq-item .faq-title {
    font-size: 16px;
    color: #2a313d;
    font-weight: 500;
    margin: 0;
}

.faq-item .faq-title .q-num {
    display: inline-flex;
    -webkit-margin-end: 13px;
    margin-inline-end: 13px;
}

.faq-item .faq-icon {
    height: 15px;
    width: 15px;
    position: relative;
    -webkit-margin-end: 5px;
    margin-inline-end: 5px;
    -webkit-margin-start: 20px;
    margin-inline-start: 20px;
}

.faq-item .faq-icon .horizontal {
    position: absolute;
    background-color: #70749c;
    border-radius: 1px;
    width: 15px;
    height: 2px;
    left: 50%;
    margin-left: -7.5px;
    top: 50%;
    margin-top: -1px;
    transition: all 0.5s ease-in-out;
    transform: rotate(-90deg);
}

.faq-item .faq-icon .vertical {
    position: absolute;
    background-color: #70749c;
    border-radius: 1px;
    width: 2px;
    height: 15px;
    left: 50%;
    margin-left: -1px;
    top: 50%;
    margin-top: -7.5px;
    transition: all 0.5s ease-in-out;
    transform: rotate(-90deg);
}

.faq-item .faq-body {
    border-top: 1px solid #d9e0e5;
    padding: 30px 25px 20px;
    display: none;
}

@media (max-width: 991px) {
    .faq-item .faq-body {
        padding: 20px 15px;
    }
}

.faq-item p {
    line-height: 1.875;
    font-size: 16px;
    color: #767676;
    margin: 0;
}

.info-block {
    border: 1px solid #d3d4e0;
    box-shadow: none;
    padding: 40px 40px 30px;
}

@media (max-width: 991px) {
    .info-block {
        padding: 25px 15px;
    }
}

.info-desc {
    margin-bottom: 40px;
}

.info-desc h2 {
    font-size: 24px;
    color: #2a313d;
    font-weight: 700;
    margin: 0 0 16px;
}

.info-desc h3 {
    font-size: 20px;
    color: #2a313d;
    font-weight: 700;
    margin: 0 0 18px;
}

.info-desc h5 {
    font-size: 16px;
    color: #2a313d;
    font-weight: 500;
    margin: 0 0 35px;
}

.info-desc h6 {
    font-size: 14px;
    color: #2a313d;
    font-weight: 700;
    margin: 0 0 35px;
}

.info-desc p {
    font-size: 16px;
    color: #767676;
    line-height: 1.9375;
    margin-bottom: 16px;
}

.info-desc ul {
    padding: 0;
    list-style: none;
    margin-bottom: 16px;
    line-height: 1.875;
}

.info-desc ul li {
    font-size: 16px;
    color: #2a313d;
}

.info-desc :last-child {
    margin: 0;
}

.info-btn-cont {
    display: flex;
    align-items: center;
    justify-content: center;
}

.info-btn {
    width: auto;
    padding: 0 30px;
    height: 56px;
    background-color: #465139;
    border-radius: 30px;
    color: #fff;
    fill: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    transition: all 0.3s ease-in-out;
}

.info-btn svg {
    -webkit-margin-end: 27px;
    margin-inline-end: 27px;
}

.info-btn:hover {
    background-color: #726658;
    color: #465139;
    fill: #465139;
}

.contact-block {
    padding: 50px;
    margin-bottom: 30px;
}

.contact-block:last-of-type {
    margin: 0;
}

@media (max-width: 991px) {
    .contact-block {
        padding: 25px 15px;
    }
}

.contact-info-cont {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
}

@media (max-width: 991px) {
    .contact-info-cont {
        grid-template-columns: 1fr;
        gap: 30px;
    }
}

.contact-title {
    font-size: 24px;
    color: #2a313d;
    font-weight: 700;
    margin: 0 0 17px;
}

@media (max-width: 767px) {
    .contact-title {
        font-size: 22px;
        margin-bottom: 25px;
    }
}

.contact-subtitle {
    font-size: 24px;
    font-weight: 400;
    color: #86959f;
    margin: 0 0 49px;
}

@media (max-width: 767px) {
    .contact-subtitle {
        font-size: 22px;
        margin-bottom: 25px;
    }
}

.contact-info {
    padding: 10px 0 0;
}

.contact-methods {
    padding-top: 32px;
}

@media (max-width: 991px) {
    .contact-methods {
        padding: 0;
    }
}

.contact-method {
    display: flex;
    align-items: center;
    margin-bottom: 31px;
}

@media (max-width: 991px) {
    .contact-method {
        align-items: flex-start;
        flex-direction: column;
    }
}

.contact-method .method-head {
    display: flex;
    align-items: center;
}

@media (max-width: 991px) {
    .contact-method .method-head {
        margin-bottom: 7px;
    }
}

.contact-method .method-icon {
    width: 25px;
    display: flex;
    align-items: center;
    justify-content: center;
    -webkit-margin-end: 10px;
    margin-inline-end: 10px;
}

.contact-method .method-title {
    font-size: 16px;
    font-weight: 500;
    color: #86959f;
    -webkit-margin-end: 5px;
    margin-inline-end: 5px;
}

.contact-method .method-value {
    font-size: 16px;
    font-weight: 500;
    color: #2a313d;
    text-decoration: none;
    transition: all 0.3s ease-in-out;
}

.contact-method .method-value:hover {
    color: #465139;
}

@media (max-width: 991px) {
    .contact-method .method-value {
        -webkit-margin-start: 35px;
        margin-inline-start: 35px;
    }
}

.contact-link {
    width: 238px;
    height: 56px;
    border-radius: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #465139;
    font-size: 16px;
    font-weight: 400;
    color: #fff;
    text-decoration: none;
    transition: all 0.3s ease-in-out;
}

.contact-link:hover {
    background-color: #726658;
    color: #465139;
}

@media (max-width: 767px) {
    .contact-link {
        width: 100%;
    }
}

.contact-form {
    display: grid;
    grid-template-columns: 1fr 1.2127fr;
    gap: 28px;
}

@media (max-width: 1199px) {
    .contact-form {
        gap: 20px;
    }
}

@media (max-width: 991px) {
    .contact-form {
        grid-template-columns: 1fr;
        gap: unset;
    }
}

.contact-form .form-submit {
    width: 196px;
    font-size: 16px;
    font-weight: 400;
    -webkit-margin-start: auto;
    margin-inline-start: auto;
}

@media (max-width: 767px) {
    .contact-form .form-submit {
        width: 100%;
    }
}

.contact-inline-start {
    display: flex;
    flex-direction: column;
    height: 100%;
}

@media (max-width: 991px) {
    .contact-inline-start {
        height: auto;
    }
}

.contact-image {
    width: 100%;
    display: flex;
    justify-content: flex-start;
}

@media (max-width: 991px) {
    .contact-image {
        display: none;
    }
}

.contact-inline-end {
    max-width: 100%;
}

.support-grid {
    display: grid;
    grid-template-columns: 2.0812fr 1fr;
    align-items: flex-start;
    gap: 30px;
}

@media (max-width: 991px) {
    .support-grid {
        grid-template-columns: 1fr;
    }
}

.support-block {
    box-shadow: 0px 2px 4px rgba(166, 164, 164, 0.2);
    border: 1px solid #f0f1f6;
    border-radius: 15px;
    background-color: #fff;
}

.support-block .block-item {
    padding: 20px;
    border-bottom: 1px solid #dedfeb;
}

.support-block .block-item:last-of-type {
    border: none;
}

@media (max-width: 991px) {
    .support-block .block-item {
        padding: 15px 10px;
    }
}

.support-block .main-title {
    font-size: 18px;
    font-weight: 700;
    color: #2a313d;
    margin: 0 0 15px;
}

.support-block .support-desc {
    font-size: 14px;
    color: #2a313d;
    line-height: 1.7;
    margin: 0;
}

.support-block .site-map {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 20px 15px;
    padding-top: 5px;
}

@media (max-width: 991px) {
    .support-block .site-map {
        gap: 15px 10px;
        padding: 0;
    }
}

.support-block .site-map-link {
    height: 32px;
    background-color: #fff;
    border: 1px solid #465139;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    font-weight: 500;
    color: #2a313d;
    padding: 0 16px;
    text-decoration: none;
    transition: all 0.3s ease-in-out;
}

.support-block .site-map-link:hover {
    background-color: #465139;
    color: #fff;
}

.support-block .faq-item {
    box-shadow: none;
    border: 1px solid #d9e0e5;
    border-radius: 10px;
}

.support-block .faq-item .faq-head {
    padding: 14px 17px;
}

@media (max-width: 991px) {
    .support-block .faq-item .faq-head {
        padding: 10px 15px;
    }
}

.support-block .faq-item .faq-title {
    font-size: 12px;
}

.support-block.support-side {
    position: sticky;
    top: 100px;
}

.support-block .side-title {
    font-size: 18px;
    font-weight: 500;
    color: #2a313d;
    margin: 0 0 20px;
}

.support-block .chat-link-btn {
    width: auto;
    padding: 0 30px;
    height: 56px;
    border-radius: 6px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background-color: #465139;
    font-size: 16px;
    font-weight: 400;
    color: #fff !important;
    text-decoration: none;
    transition: all 0.3s ease-in-out;
}

.support-block .chat-link-btn:hover {
    background-color: #726658;
    color: #465139;
}

@media (max-width: 767px) {
    .support-block .chat-link-btn {
        width: 100%;
        padding: 0;
    }
}

.support-block .contact-link-btn {
    width: auto;
    padding: 0 34px;
    height: 56px;
    border-radius: 6px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background-color: #f1ede6;
    border: 2px solid #465139;
    font-size: 16px;
    font-weight: 400;
    color: #465139;
    text-decoration: none;
    transition: all 0.3s ease-in-out;
}

.support-block .contact-link-btn:hover {
    background-color: #465139;
    color: #fff;
}

@media (max-width: 767px) {
    .support-block .contact-link-btn {
        width: 100%;
        padding: 0;
    }
}

.chat-cont {
    display: flex;
    flex-flow: column wrap;
    justify-content: space-between;
    width: 100%;
    max-width: 970px;
    height: 661px;
    box-shadow: 0px 2px 4px rgba(166, 164, 164, 0.2);
    border: 1px solid #f0f1f6;
    border-radius: 15px;
    background: #fff;
    margin: auto;
}

@media (max-width: 767px) {
    .chat-cont {
        height: calc(100vh - 100px);
    }
}

.chat-header {
    border-bottom: 1px solid #dedfeb;
    padding: 22px 20px 25px;
}

@media (max-width: 767px) {
    .chat-header {
        padding: 15px;
    }
}

.chat-title {
    font-size: 16px;
    font-weight: 700;
    color: #2a313d;
    margin: 0 0 10px;
}

.chat-title span {
    color: #465139;
}

.chat-hint {
    font-size: 14px;
    color: #2a313d;
    margin: 0;
}

.chat-body {
    flex: 1;
    overflow-y: auto;
    padding: 34px 30px;
}

@media (max-width: 767px) {
    .chat-body {
        padding: 25px 15px;
    }
}

.chat-body::-webkit-scrollbar {
    background-color: FDFDFDFF;
    border-radius: 3.5px;
}

.chat-body::-webkit-scrollbar-thumb {
    background-color: #726658;
    border-radius: 3.5px;
}

.msg {
    margin-bottom: 20px;
    max-width: 330px;
}

@media (max-width: 767px) {
    .msg {
        max-width: 75%;
    }
}

.msg:last-of-type {
    margin: 0;
}

.msg.left-msg {
    -webkit-margin-start: auto;
    margin-inline-start: auto;
}

.msg.right-msg {
    -webkit-margin-end: auto;
    margin-inline-end: auto;
}

.msg-content {
    width: 100%;
    padding: 15px 20px;
    border-radius: 15px;
    font-size: 14px;
    line-height: 1.36;
}

@media (max-width: 767px) {
    .msg-content {
        padding: 10px 15px;
    }
}

.left-msg .msg-content {
    background: #465139;
    color: #fff;
}

.right-msg .msg-content {
    color: #2a313d;
    border: 1px solid #dedfeb;
    background-color: #f7f8fa;
}

.msg-time {
    display: flex;
    align-items: center;
    direction: ltr;
    font-size: 14px;
    color: #86959f;
    margin-top: 5px;
    line-height: 1.36;
}

.chat-footer {
    background-color: #fff;
    box-shadow: 0px -2px 4px rgba(166, 164, 164, 0.2);
    border: 1px solid #f0f1f6;
    padding: 12px 20px;
}

@media (max-width: 767px) {
    .chat-footer {
        padding: 10px 15px;
    }
}

.chat-footer form {
    display: flex;
    align-items: center;
}

.chat-footer .input-cont {
    position: relative;
    width: 100%;
}

.chat-footer .chat-input {
    width: 100%;
    height: 48px;
    border: 1px solid #d9e0e5;
    border-radius: 24px;
    font-size: 14px;
    color: #2a313d;
    font-weight: 500;
    padding: 0 27px;
    transition: all 0.3s ease-in-out;
}

@media (max-width: 767px) {
    .chat-footer .chat-input {
        padding: 0 15px;
    }
}

.chat-footer .chat-input::-moz-placeholder {
    font-weight: 400;
    font-size: 14px;
    color: #86959f;
}

.chat-footer .chat-input::placeholder {
    font-weight: 400;
    font-size: 14px;
    color: #86959f;
}

.chat-footer .chat-input:focus {
    border-color: #465139;
}

.chat-footer .chat-send-btn {
    position: absolute;
    bottom: 0;
    transform: translateY(-50%);
    background-color: transparent;
    border: none;
    inset-inline-end: 17px;
    display: flex;
    align-items: center;
    padding: 0;
    fill: #465139;
    transition: all 0.3s ease-in-out;
}

html[dir="ltr"] .chat-footer .chat-send-btn svg {
    transform: scaleX(-1);
}

.chat-footer .chat-send-btn:hover {
    fill: #86959f;
}

.chat-footer .chat-attachment {
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    -webkit-margin-start: 14px;
    margin-inline-start: 14px;
    position: relative;
    fill: #465139;
    transition: all 0.3s ease-in-out;
}

.chat-footer .chat-attachment input {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    opacity: 0;
}

.chat-footer .chat-attachment:hover {
    fill: #86959f;
}

.about-block {
    padding: 28px 40px 40px;
    margin-bottom: 30px;
}

.about-block:last-of-type {
    margin: 0;
}

@media (max-width: 991px) {
    .about-block {
        padding: 25px 15px;
    }
}

.vision-block {
    padding: 70px 80px 80px;
    margin-bottom: 30px;
}

.vision-block:last-of-type {
    margin: 0;
}

@media (max-width: 991px) {
    .vision-block {
        padding: 25px 15px;
    }
}

.about-title {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    font-size: 24px;
    color: #2a313d;
    font-weight: 700;
    margin: 0;
}

.about-title img {
    -webkit-margin-end: 10px;
    margin-inline-end: 10px;
}

@media (max-width: 767px) {
    .about-title {
        font-size: 20px;
    }

    .about-title img {
        width: 25px;
    }
}

.website-item {
    border: 1px solid #dedfeb;
    border-radius: 15px;
    background-color: #fff;
    padding: 25px 15px 20px;
    width: 100%;
    max-width: 280px;
    margin: 15px auto;
    transition: all 0.3s ease-in-out;
}

.website-item .website-logo {
    height: 40px;
    max-width: 80%;
    display: inline-flex;
    align-items: center;
    margin-bottom: 11px;
}

.website-item .website-logo img {
    height: 100%;
    max-width: 100%;
    -o-object-fit: contain;
    object-fit: contain;
}

.website-item .website-stars {
    display: flex;
    align-items: center;
    margin-bottom: 19px;
}

.website-item .website-stars span {
    fill: #dedfeb;
    display: flex;
}

.website-item .website-stars span ~ span {
    -webkit-margin-start: 6px;
    margin-inline-start: 6px;
}

.website-item .website-stars span.active {
    fill: #ffc107;
}

.website-item .website-rating {
    display: flex;
    align-items: center;
    margin-bottom: 20px;
}

.website-item .rating-value {
    line-height: 25px;
    height: 25px;
    border-radius: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 13px;
    background-color: rgba(94, 157, 154, 0.051);
    border: 1px solid #465139;
    -webkit-margin-end: 8px;
    margin-inline-end: 8px;
}

.website-item .rating-value small {
    font-size: 14px;
    font-weight: 500;
    color: #465139;
    display: flex;
    align-items: center;
    line-height: 14px;
}

.website-item .rating-name {
    font-size: 14px;
    font-weight: 500;
    color: #2a313d;
    -webkit-margin-end: 10px;
    margin-inline-end: 10px;
}

.website-item .rating-num {
    font-size: 14px;
    color: #86959f;
}

.website-item .website-link-cont {
    display: flex;
    align-items: center;
}

.website-item .website-link {
    font-size: 14px;
    font-weight: 500;
    display: inline-flex;
    align-items: center;
    color: #2a313d;
    text-decoration: none;
    line-height: 1.36;
    transition: all 0.3s ease-in-out;
}

.website-item .website-link img {
    -webkit-margin-start: 4px;
    margin-inline-start: 4px;
    visibility: hidden;
    opacity: 0;
    transition: all 0.3s ease-in-out;
}

.website-item .website-link:hover {
    color: #465139;
}

.website-item .website-link:hover img {
    transform: translateX(-10px);
    visibility: visible;
    opacity: 1;
}

.website-item:hover {
    box-shadow: 0px 3px 15px rgba(0, 0, 0, 0.1607843137);
    border-color: transparent;
}

.our-rate-cont .sec-head {
    margin-bottom: 6px;
}

.journy-cont {
    display: grid;
    grid-template-columns: 5fr 7fr;
}

@media (max-width: 1199px) {
    .journy-cont {
        grid-template-columns: 1fr;
    }
}

.journy-img {
    display: flex;
    align-items: center;
    justify-content: center;
}

.journy-img img {
    display: none;
}

@media (max-width: 1199px) {
    .journy-img {
        display: none;
    }
}

.journy-items {
    position: relative;
    padding: 22px 0;
}

.journy-items:after {
    position: absolute;
    top: 0;
    bottom: 0;
    inset-inline-start: 14px;
    height: 100%;
    width: 4px;
    background-color: #465139;
    content: "";
}

.journy-item {
    display: flex;
    align-items: center;
    margin-bottom: 45px;
    width: -moz-max-content;
    width: max-content;
}

@media (max-width: 1199px) {
    .journy-item {
        width: auto;
    }
}

.journy-item:last-of-type {
    margin: 0;
}

.journy-item .item-bullet {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background-color: transparent;
    border: 2px solid transparent;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    z-index: 2;
    transition: all 0.3s ease-in-out;
}

.journy-item .item-bullet span {
    background-color: #465139;
    width: 24px;
    max-width: 100%;
    height: 24px;
    max-height: 100%;
    border-radius: 50%;
}

.journy-item .item-text {
    position: relative;
    background: #f1ede6;
    border: 1px solid #dedfeb;
    border-radius: 15px;
    -webkit-margin-start: 23px;
    margin-inline-start: 23px;
    padding: 11px 24px 24px;
    -webkit-padding-end: 8px;
    padding-inline-end: 8px;
    width: 100%;
    max-width: 488px;
}

.journy-item .item-text:after,
.journy-item .item-text:before {
    left: 100%;
    top: 50%;
    border: solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
    transform: translateY(-50%);
}

.journy-item .item-text:after {
    border-color: rgba(255, 255, 255, 0);
    border-left-color: #fff;
    border-width: 12px;
}

.journy-item .item-text:before {
    border-color: rgba(222, 223, 235, 0);
    border-left-color: #dedfeb;
    border-width: 13px;
}

@media (max-width: 1199px) {
    .journy-item .item-text {
        padding: 10px;
        max-width: 100%;
        -webkit-margin-start: 17px;
        margin-inline-start: 17px;
    }
}

.journy-item .item-date {
    line-height: 1.466;
    font-size: 30px;
    font-weight: 700;
    color: #2a313d;
    margin-bottom: 10px;
}

.journy-item .item-desc {
    font-size: 14px;
    color: #2a313d;
    line-height: 1.643;
    margin: 0;
}

.journy-item.active .item-bullet {
    padding: 3px;
    background-color: #fff;
    border-color: #465139;
}

.vision-cont {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
    align-items: center;
}

@media (max-width: 991px) {
    .vision-cont {
        grid-template-columns: 1fr;
        gap: unset;
    }
}

.vision-cont .sec-head.xs-head {
    display: none;
}

@media (max-width: 991px) {
    .vision-cont .sec-head {
        display: none;
    }

    .vision-cont .sec-head.xs-head {
        display: flex;
    }
}

.vision-cont .vision-img {
    display: flex;
    align-items: center;
    justify-content: center;
}

.vision-cont .about-desc {
    line-height: 1.782;
    font-size: 16px;
    color: #86959f;
    margin: 0 0 0;
}

@media (max-width: 991px) {
    .vision-cont .about-desc {
        margin-top: 20px;
    }
}

.archive-cont {
    display: grid;
    grid-template-columns: 1fr 3fr;
    gap: 25px;
    align-items: flex-start;
    position: relative;
    padding-top: 20px;
}

@media (max-width: 991px) {
    .archive-cont {
        grid-template-columns: 1fr;
        gap: unset;
    }
}

.archive-content {
    max-width: 100%;
}

.archive-content .sec-more {
    margin-top: 25px;
}

@media (max-width: 767px) {
    .archive-content .sec-head {
        flex-direction: column;
        align-items: flex-start;
    }
}

.rooms-title {
    font-size: 22px;
    font-weight: 700;
    color: #2a313d;
    margin: 0;
}

.rooms-title img {
    -webkit-margin-end: 10px;
    margin-inline-end: 10px;
}

.archive-tools {
    display: flex;
    align-items: center;
}

@media (max-width: 767px) {
    .archive-tools {
        width: 100%;
    }
}

.list-order {
    display: flex;
    align-items: center;
}

@media (max-width: 767px) {
    .list-order {
        width: 100%;
    }
}

@media (max-width: 767px) {
    .list-order .input-cont {
        width: 100%;
    }
}

.list-order .order-title {
    color: #2a313d;
    font-weight: 400;
    font-size: 14px;
    margin: 0;
    -webkit-margin-end: 15px;
    margin-inline-end: 15px;
    white-space: nowrap;
}

.list-order .custom-input {
    height: 40px;
    width: 150px;
}

@media (max-width: 767px) {
    .list-order .custom-input {
        width: 100%;
    }
}

.list-order .select2-container .select2-selection {
    height: 40px;
    border-radius: 5px;
}

.view-icos {
    display: flex;
    align-items: center;
}

@media (max-width: 767px) {
    .view-icos {
        display: none;
    }
}

.view-ico {
    border: 1px solid #e4e9f2;
    border-radius: 5px;
    background-color: #fff;
    width: 42px;
    height: 39px;
    display: flex;
    align-items: center;
    justify-content: center;
    fill: #86959f;
    cursor: pointer;
    -webkit-margin-start: 10px;
    margin-inline-start: 10px;
    transition: all 0.3s ease-in-out;
}

.view-ico:hover {
    fill: #465139;
    border-color: #465139;
}

.view-ico.active {
    border-color: #465139;
    background-color: #465139;
    fill: #fff;
}

.filter-btn {
    flex-shrink: 0;
    display: none;
}

@media (max-width: 991px) {
    .filter-btn {
        display: flex;
    }
}

.filter-btn svg {
    width: 20px;
}

.filter-overlay {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(
        90deg,
        rgba(85, 85, 85, 0.69) 0%,
        rgba(0, 0, 0, 0.741) 100%
    );
    opacity: 1;
    z-index: 998;
    display: block;
    display: none;
}

.archive-filters {
    padding: 30px 16px;
    background-color: #fff;
    border-radius: 15px;
    position: sticky;
    top: 100px;
}

@media (max-width: 991px) {
    .archive-filters {
        position: fixed;
        top: 0;
        bottom: 0;
        width: 270px;
        z-index: 999;
        padding: 20px 15px;
        -webkit-padding-end: 10px;
        padding-inline-end: 10px;
        inset-inline-end: -270px;
        border-start-end-radius: 0;
        border-end-end-radius: 0;
        box-shadow: 0px 3px 15px rgba(0, 0, 0, 0.1607843137);
        opacity: 0;
        visibility: hidden;
        transition: all 0.3s ease-in-out;
    }

    .archive-filters.active {
        opacity: 1;
        visibility: visible;
        inset-inline-end: 0;
    }
}

@media (max-width: 991px) {
    .archive-filters .filters-cont {
        max-height: 100%;
        overflow-y: auto;
    }

    .archive-filters .filters-cont::-webkit-scrollbar {
        background-color: FDFDFDFF;
        border-radius: 3.5px;
    }

    .archive-filters .filters-cont::-webkit-scrollbar-thumb {
        background-color: #726658;
        border-radius: 3.5px;
    }
}

.rooms-grid {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 25px;
    align-items: flex-start;
}

@media (max-width: 1199px) {
    .rooms-grid {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 767px) {
    .rooms-grid {
        grid-template-columns: 1fr;
        gap: 15px;
    }
}

.rooms-grid .room-item {
    transition: none;
    margin: 0 auto;
}

.filter-title {
    display: flex;
    align-items: center;
    font-size: 16px;
    font-weight: 700;
    color: #2a313d;
    margin: 0 0 16px;
}

.filter-title .title-icon {
    width: 46px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
}

.filter-item {
    margin-bottom: 30px;
}

.filter-item:last-of-type {
    margin: 0;
}

.filter-items {
    margin: 0;
}

.filter-items li ~ li {
    margin-top: 16px;
}

.list {
    grid-template-columns: 1fr;
    gap: 20px;
}

.single-imgs-cont {
    position: relative;
}

.single-imgs-cont .imgs-modal-btn {
    position: absolute;
    inset-inline-end: 15px;
    bottom: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 97px;
    height: 40px;
    background-color: rgba(0, 0, 0, 0.3490196078);
    border: 1px solid rgba(255, 255, 255, 0.4);
    border-radius: 20px;
    font-size: 14px;
    color: #fff;
    font-weight: 500;
    text-decoration: none;
    transition: all 0.3s ease-in-out;
}

.single-imgs-cont .imgs-modal-btn:hover {
    background-color: #465139;
    border-color: #465139;
    color: #fff;
}

.single-imgs-gird {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 15px;
}

@media (max-width: 991px) {
    .single-imgs-gird {
        gap: 10px;
    }
}

@media (max-width: 767px) {
    .single-imgs-gird {
        grid-template-columns: 1fr 1fr;
        gap: 10px;
    }
}

.single-imgs-gird .grid-item {
    overflow: hidden;
    max-width: 100%;
    height: 100%;
}

.single-imgs-gird .grid-item .single-img {
    display: block;
    position: relative;
    padding-bottom: 77.8947368421%;
    overflow: hidden;
    border-radius: 15px;
}

.single-imgs-gird .grid-item .single-img img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    transition: all 0.3s ease-in-out;
}

.single-imgs-gird .grid-item .single-img::after {
    content: url(../images/icons/resize.svg);
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    inset: 20px;
    background-color: rgba(94, 157, 154, 0.7);
    border-radius: 15px;
    visibility: hidden;
    opacity: 0;
    transform: scale(0);
    transition: all 0.3s ease-in-out;
}

@media (max-width: 767px) {
    .single-imgs-gird .grid-item .single-img::after {
        inset: 10px;
    }
}

.single-imgs-gird .grid-item .single-img:hover img {
    transform: scale(1.05);
}

.single-imgs-gird .grid-item .single-img:hover::after {
    visibility: visible;
    opacity: 1;
    transform: scale(1);
}

.single-imgs-gird .grid-item:first-of-type {
    grid-column: 1 / span 2;
    grid-row: 1 / span 2;
}

.single-imgs-gird .grid-item:first-of-type .single-img {
    padding: 0;
    width: 100%;
    height: 100%;
}

@media (max-width: 767px) {
    .single-imgs-gird .grid-item:first-of-type .single-img {
        height: auto;
        padding-bottom: 77.8947368421%;
    }
}

.single-page-grid {
    display: grid;
    grid-template-columns: 2.1217fr 1fr;
    gap: 15px;
    background-color: FDFDFDFF;
    padding-top: 30px;
}

@media (max-width: 1199px) {
    .single-page-grid {
        grid-template-columns: 1fr;
    }
}

.single-main-block {
    box-shadow: 0px 2px 4px rgba(166, 164, 164, 0.2);
    border: 1px solid #f0f1f6;
    border-radius: 15px;
    background-color: #fff;
    position: relative;
    margin-bottom: 15px;
}

.single-main-block:last-of-type {
    margin: 0;
}

@media (max-width: 767px) {
    .single-main-block {
        box-shadow: none;
        max-width: 100%;
        overflow: hidden;
    }
}

.main-block-item {
    padding: 20px;
    border-bottom: 1px solid #dedfeb;
}

.main-block-item:last-of-type {
    border: none;
}

@media (max-width: 991px) {
    .main-block-item {
        padding: 20px 15px;
    }
}

.single-sec .single-price {
    display: flex;
    align-items: center;
    font-size: 14px;
    color: #86959f;
    margin-bottom: 18px;
}

.single-sec .single-price span {
    -webkit-margin-start: 5px;
    margin-inline-start: 5px;
}

.single-sec .single-price strong {
    font-size: 20px;
    font-weight: 700;
    color: #465139;
}

.single-sec .single-price del {
    text-decoration: line-through;
    -webkit-margin-start: 7px;
    margin-inline-start: 7px;
}

.single-main-info {
    padding-top: 30px;
}

@media (max-width: 767px) {
    .single-main-info {
        padding-top: 20px;
    }
}

.single-stars {
    display: flex;
    align-items: center;
    margin-bottom: 20px;
}

.single-stars span {
    fill: #dedfeb;
    display: flex;
}

.single-stars span ~ span {
    -webkit-margin-start: 6px;
    margin-inline-start: 6px;
}

.single-stars span.active {
    fill: #ffc107;
}

.single-name {
    font-size: 22px;
    font-weight: 700;
    color: #2a313d;
    margin: 0 0 20px;
}

@media (max-width: 767px) {
    .single-name {
        font-size: 20px;
        max-width: calc(100% - 75px);
    }
}

.single-rating {
    display: flex;
    align-items: center;
    margin-bottom: 22px;
}

.rating-value {
    height: 25px;
    border-radius: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 13px;
    background-color: rgba(94, 157, 154, 0.051);
    border: 1px solid #465139;
    -webkit-margin-end: 8px;
    margin-inline-end: 8px;
}

.rating-value small {
    font-size: 14px;
    font-weight: 500;
    color: #465139;
    display: flex;
    align-items: center;
    line-height: 14px;
}

.rating-name {
    font-size: 14px;
    font-weight: 500;
    color: #2a313d;
    -webkit-margin-end: 10px;
    margin-inline-end: 10px;
}

.rating-num {
    font-size: 14px;
    color: #86959f;
}

.single-tools {
    position: absolute;
    top: 20px;
    inset-inline-end: 20px;
    display: flex;
    align-items: center;
    gap: 15px;
}

@media (max-width: 991px) {
    .single-tools {
        inset-inline-end: 15px;
        flex-direction: column;
        gap: unset;
    }
}

.single-tools button {
    padding: 0;
    border: none;
    background-color: #fff;
    border: 1px solid #e8eaf7;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    fill: #86959f;
    text-decoration: none;
    cursor: pointer;
    transition: all 0.3s ease-in-out;
}

@media (max-width: 991px) {
    .single-tools button ~ button {
        margin-top: 7px;
    }
}

.single-tools button:hover {
    box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.0588235294);
    border: 1px solid #f2f3fc;
    fill: #1e8ce1;
}

.single-desc h6 {
    font-size: 18px;
    color: #2a313d;
    font-weight: 700;
    margin: 0 0 10px;
    line-height: 1.44;
}

.single-desc p {
    font-size: 14px;
    color: #767676;
    margin: 0;
    line-height: 1.93;
}

.single-feats {
    display: flex;
    align-items: center;
    justify-content: flex-start;
}

@media (max-width: 991px) {
    .single-feats {
        justify-content: space-between;
    }
}

@media (max-width: 767px) {
    .single-feats {
        flex-direction: column;
        align-items: flex-start;
    }
}

.single-feats .feat-item {
    display: flex;
    align-items: center;
}

.single-feats .feat-item ~ .feat-item {
    -webkit-margin-start: 30px;
    margin-inline-start: 30px;
}

@media (max-width: 991px) {
    .single-feats .feat-item ~ .feat-item {
        -webkit-margin-start: 0;
        margin-inline-start: 0;
    }
}

@media (max-width: 767px) {
    .single-feats .feat-item ~ .feat-item {
        margin-top: 15px;
    }
}

.single-feats .feat-item .feat-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #e8eaf7;
    height: 56px;
    width: 56px;
    border-radius: 50%;
}

.single-feats .feat-item .feats-title {
    display: flex;
    align-items: center;
    font-size: 14px;
    color: #767676;
    margin: 0;
    -webkit-margin-start: 10px;
    margin-inline-start: 10px;
}

.single-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

@media (max-width: 767px) {
    .single-footer {
        flex-direction: column;
        justify-content: center;
    }
}

.single-hint {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    font-size: 14px;
    font-weight: 500;
    color: #2a313d;
}

.single-hint img {
    -webkit-margin-end: 10px;
    margin-inline-end: 10px;
}

@media (max-width: 767px) {
    .single-hint {
        margin-bottom: 15px;
    }
}

.main-book-btn {
    -webkit-margin-start: auto;
    margin-inline-start: auto;
    width: auto;
    padding: 0 23px;
    height: 48px;
    background-color: #465139;
    border-radius: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-weight: 500;
    font-size: 16px;
    text-decoration: none;
    border: none;
    transition: all 0.3s ease-in-out;
}

.main-book-btn:hover {
    color: #465139;
    background-color: #726658;
}

.main-book-btn.not {
    color: #f54748;
    background-color: #ffe4e4;
}

@media (max-width: 767px) {
    .main-book-btn {
        width: 100%;
        margin: 0;
    }
}

.single-side-block {
    border-radius: 15px;
    background-color: #fff;
    overflow: hidden;
    max-width: 100%;
    margin-bottom: 15px;
}

.single-side-block:last-of-type {
    margin: 0;
}

@media (max-width: 767px) {
    .single-side-block {
        border: 1px solid #f0f1f6;
    }
}

.single-side-title {
    font-size: 18px;
    font-weight: 700;
    color: #2a313d;
    padding: 15px 20px;
    margin: 0;
    border-bottom: 1px solid #dedfeb;
}

@media (max-width: 767px) {
    .single-side-title {
        padding: 10px 15px;
    }
}

.single-side-book {
    display: flex;
    align-items: flex-start;
    flex-wrap: wrap;
    padding: 20px;
}

.single-side-book .advsearch-item {
    height: auto;
    width: 100%;
    border: 1px solid #dedfeb;
    border-radius: 15px;
    justify-content: flex-start;
    padding: 15px;
    margin-bottom: 15px;
}

.single-side-book .advsearch-item .advsearch-item-view {
    width: 100%;
}

.single-side-book .advsearch-item::after {
    display: none;
}

.single-side-book .advsearch-item.adult-item,
.single-side-book .advsearch-item.kids-item {
    border: none;
    padding: 0;
    width: 50%;
    margin-top: 42px;
    margin-bottom: 20px;
}

@media (max-width: 767px) {
    .single-side-book .advsearch-item.adult-item,
    .single-side-book .advsearch-item.kids-item {
        margin-top: 0;
    }
}

.single-side-book .advsearch-item.adult-item .advsearch-item-view,
.single-side-book .advsearch-item.kids-item .advsearch-item-view {
    align-items: flex-start;
}

.single-side-book
.advsearch-item.adult-item
.advsearch-item-view
.advsearch-item-text,
.single-side-book
.advsearch-item.kids-item
.advsearch-item-view
.advsearch-item-text {
    -webkit-margin-start: 10px;
    margin-inline-start: 10px;
    margin-top: 4px;
}

@media (max-width: 767px) {
    .single-side-book
    .advsearch-item.adult-item
    .advsearch-item-view
    .advsearch-item-text
    span,
    .single-side-book
    .advsearch-item.kids-item
    .advsearch-item-view
    .advsearch-item-text
    span {
        font-size: 12px;
    }
}

.side-book-btn {
    -webkit-margin-start: auto;
    margin-inline-start: auto;
    width: 100%;
    height: 56px;
    background-color: #465139;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-weight: 400;
    font-size: 18px;
    text-decoration: none;
    border: none;
    transition: all 0.3s ease-in-out;
}

.side-book-btn:hover {
    color: #465139;
    background-color: #726658;
}

.side-book-btn.not {
    color: #f54748;
    background-color: #ffe4e4;
}

.single-side-testimonials {
    padding: 30px 20px 10px;
    border-bottom: 1px solid #dedfeb;
}

@media (max-width: 767px) {
    .single-side-testimonials {
        padding: 20px 15px 10px;
    }
}

.testimonial-item .testimonial-review {
    line-height: 1.64;
    font-size: 14px;
    color: #2a313d;
    margin: 0 0 20px;
}

.testimonial-item .testimonial-user {
    display: flex;
    align-items: center;
}

.testimonial-item .user-img {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #465139;
    font-size: 12px;
    color: #fff;
}

.testimonial-item .user-img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.testimonial-item .user-text {
    -webkit-margin-start: 10px;
    margin-inline-start: 10px;
}

.testimonial-item .user-name {
    font-size: 14px;
    font-weight: 500;
    color: #2a313d;
    margin-bottom: 5px;
}

.testimonial-item .user-country {
    display: flex;
    align-items: center;
    font-size: 12px;
    color: #767676;
}

.testimonial-item .user-country img {
    border-radius: 2px;
    width: 22px;
    height: 14px;
    -o-object-fit: cover;
    object-fit: cover;
    -webkit-margin-end: 5px;
    margin-inline-end: 5px;
}

.more-testimonials {
    margin: 15px auto;
    width: 126px;
    height: 38px;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    color: #fff;
    stroke: #fff;
    text-decoration: none;
    background-color: #465139;
    transition: all 0.3s ease-in-out;
}

.more-testimonials svg {
    -webkit-margin-start: 10px;
    margin-inline-start: 10px;
}

.more-testimonials:hover {
    color: #465139;
    stroke: #465139;
    background-color: #726658;
}

.tabs-btns {
    display: flex;
    align-items: center;
    flex-wrap: unset;
    padding: 10px 20px;
    box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.0392156863);
    background-color: rgba(94, 157, 154, 0.1019607843);
}

@media (max-width: 767px) {
    .tabs-btns {
        padding: 7px 10px;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
        scroll-snap-type: x mandatory;
        max-width: 100%;
        white-space: nowrap;
    }

    .tabs-btns::-webkit-scrollbar {
        display: none;
        height: 0;
    }
}

.tabs-btns .tab-btn {
    padding: 0 20px !important;
    height: 40px;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    background-color: transparent;
    font-size: 14px;
    color: #2a313d;
    transition: all 0.3s ease-in-out;
}

.tabs-btns .tab-btn:hover {
    color: #465139;
}

.tabs-btns .tab-btn.active {
    color: #fff !important;
    background-color: #465139 !important;
}

@media (max-width: 767px) {
    .tabs-btns .tab-btn {
        padding: 0 10px;
    }
}

.tab-cont {
    padding: 30px 20px;
}

@media (max-width: 991px) {
    .tab-cont {
        padding: 20px 15px;
    }
}

.single-facilities-grid {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 15px;
}

@media (max-width: 767px) {
    .single-facilities-grid {
        grid-template-columns: 1fr;
    }
}

.single-facility-item {
    position: relative;
    transition: all 0.3s ease-in-out;
    border-radius: 10px;
}

.single-facility-item .single-facility-head {
    padding: 9px 15px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    border: 1px solid #dedfeb;
    background-color: #fff;
    border-radius: 10px;
    cursor: pointer;
    transition: all 0.3s ease-in-out;
}

.single-facility-item .facility-icon {
    width: 37px;
    height: 37px;
    border-radius: 50%;
    flex-shrink: 0;
    overflow: hidden;
}

.single-facility-item .facility-icon img {
    max-width: 100%;
    max-height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.single-facility-item .facility-title {
    font-size: 12px;
    font-weight: 500;
    color: #2a313d;
    margin: 0;
    -webkit-margin-start: 7px;
    margin-inline-start: 7px;
}

.single-facility-item .arrow {
    -webkit-margin-start: auto;
    margin-inline-start: auto;
    transition: all 0.3s ease-in-out;
}

.single-facility-item .single-facility-body {
    padding: 5px 15px 19px;
    background-color: #fff;
    border-radius: 0 0 10px 10px;
    position: absolute;
    top: calc(100% - 2px);
    left: 0;
    right: 0;
    box-shadow: 0px 9px 10px rgba(0, 0, 0, 0.1607843137);
    display: none;
    z-index: 9;
}

.single-facility-item .single-facility-body p {
    font-size: 12px;
    color: #2a313d;
    margin: 0;
    line-height: 1.9;
}

.single-facility-item.active .single-facility-head {
    border: transparent;
    border-radius: 10px 10px 0 0;
    box-shadow: 0px 3px 10px rgba(0, 0, 0, 0.1607843137);
}

.single-facility-item.active .arrow {
    transform: scaleY(-1);
}

.tab-price {
    display: flex;
    align-items: center;
    margin-bottom: 20px;
}

@media (max-width: 767px) {
    .tab-price {
        flex-direction: column;
        align-items: flex-start;
    }
}

.tab-price .price-title {
    font-size: 14px;
    font-weight: 500;
    color: #2a313d;
    margin: 0;
}

.tab-price .single-price {
    margin: 0;
    -webkit-margin-start: 18px;
    margin-inline-start: 18px;
}

@media (max-width: 767px) {
    .tab-price .single-price {
        margin: 7px 0 0;
    }
}

.tab-hint {
    padding: 10px 20px;
    box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.0392156863);
    border-radius: 5px;
    width: 100%;
    max-width: 400px;
    background-color: rgba(94, 157, 154, 0.1019607843);
    margin-bottom: 20px;
}

.tab-qty {
    display: flex;
    align-items: center;
    margin-bottom: 20px;
}

@media (max-width: 767px) {
    .tab-qty {
        flex-direction: column;
        align-items: flex-start;
    }
}

.tab-qty .qty-item {
    display: flex;
    align-items: center;
}

.tab-qty .qty-item ~ .qty-item {
    -webkit-margin-start: 45px;
    margin-inline-start: 45px;
}

@media (max-width: 767px) {
    .tab-qty .qty-item ~ .qty-item {
        margin: 10px 0 0;
    }
}

.tab-qty .item-icon {
    border: 1px solid #e8eaf7;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    -webkit-margin-end: 10px;
    margin-inline-end: 10px;
}

.tab-qty .item-icon img {
    width: 19px;
    filter: brightness(0) saturate(100%) invert(14%) sepia(21%) saturate(763%) hue-rotate(179deg) brightness(96%) contrast(85%);
}

.tab-qty .item-value {
    font-size: 14px;
    color: #767676;
}

.tab-desc {
    margin-bottom: 30px;
}

.instruction-item {
    display: flex;
    align-items: center;
}

.instruction-item ~ .instruction-item {
    margin-top: 15px;
}

.instruction-item .instruction-icon {
    width: 56px;
    height: 56px;
    border: 1px solid #e8eaf7;
    border-radius: 50%;
    display: flex;
    align-items: center;
    flex-shrink: 0;
    justify-content: center;
}

.instruction-item .instruction-icon.highlight {
    border: none;
    background-color: rgba(245, 71, 72, 0.1490196078);
}

.instruction-item .instruction-text {
    font-size: 15px;
    font-weight: 500;
    color: #2a313d;
    margin: 0;
    line-height: 1.4;
    -webkit-margin-start: 14px;
    margin-inline-start: 14px;
}

.instruction-item .instruction-text span {
    color: #465139;
    font-weight: 700;
}

.conditions-list {
    font-size: 15px;
    font-weight: 500;
    margin: 0;
}

.conditions-list li {
    line-height: 1.4666;
}

.conditions-list li ~ li {
    margin-top: 18px;
}

.testimonials-grid {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 16px 14px;
}

@media (max-width: 767px) {
    .testimonials-grid {
        grid-template-columns: 1fr;
        gap: 15px;
    }
}

.testimonial-grid-item {
    border: 1px solid #e1e1e1;
    border-radius: 10px;
    max-width: 100%;
    overflow: hidden;
    padding: 15px 13px;
}

.testimonial-grid-item .testimonial-item .testimonial-review {
    margin-bottom: 15px;
    height: 69px;
    overflow: hidden;
}

@media (max-width: 767px) {
    .testimonial-grid-item .testimonial-item .testimonial-review {
        height: auto;
    }
}

.gallery-cont .gallery-mixItUp-cont {
    align-items: flex-start;
    grid-template-columns: 1.184fr 5fr;
}

@media (max-width: 991px) {
    .gallery-cont .gallery-mixItUp-cont {
        grid-template-columns: 1fr;
    }
}

.gallery-cont .gallery-mixItUp-items {
    min-height: auto;
    -webkit-padding-start: 21px;
    padding-inline-start: 21px;
}

.gallery-cont .gallery-mixItUp-btns {
    padding: 0;
    -webkit-padding-end: 15px;
    padding-inline-end: 15px;
}

.gallery-cont .gallery-mixItUp-btns button {
    font-size: 16px;
}

.gallery-cont .gallery-mixItUp-btns button:first-of-type {
    font-size: 16px;
}

@media (max-width: 767px) {
    .gallery-cont .gallery-mixItUp-btns button {
        font-size: 14px;
    }

    .gallery-cont .gallery-mixItUp-btns button:first-of-type {
        font-size: 15px;
    }
}

@media (max-width: 767px) {
    .gallery-cont .gallery-mixItUp-btns {
        padding: 0 0 10px;
        margin-bottom: 15px;
    }
}

.gallery-cont .gallery-grid {
    grid-template-columns: repeat(4, 1fr);
}

@media (max-width: 1199px) {
    .gallery-cont .gallery-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 767px) {
    .gallery-cont .gallery-grid {
        grid-template-columns: 1fr 1fr;
    }
}

.gallery-cont .gallery-img::after {
    inset: 10px;
}

.gallery-cont .sec-more {
    margin-top: 25px;
}

.gallery-page-title {
    font-size: 24px;
    color: #2a313d;
    font-weight: 700;
    margin: 0 0 30px;
}

.gallery-testimonials {
    display: grid;
    grid-template-columns: 1fr 3.1397fr;
    gap: 15px;
    margin-bottom: 50px;
}

@media (max-width: 991px) {
    .gallery-testimonials {
        grid-template-columns: 1fr;
        margin-bottom: 30px;
    }
}

.testimonials-side,
.testimonials-main {
    border-radius: 15px;
    background-color: #fff;
}

.gallery-rating-body {
    padding: 15px;
}

.gallery-reviews-body {
    padding: 20px 20px 25px;
}

@media (max-width: 991px) {
    .gallery-reviews-body {
        padding: 15px;
    }
}

.gallery-side {
    max-width: 100%;
    overflow: hidden;
    border-radius: 15px;
    background-color: #fff;
}

.gallery-side .gallery-side-testimonials {
    border: 1px solid #d9e0e5;
    border-radius: 10px;
    padding: 30px 11px 11px;
}

.gallery-side .testimonial-item .testimonial-user {
    justify-content: center;
}

@media (max-width: 1199px) {
    .gallery-side .testimonial-item .testimonial-user {
        justify-content: flex-start;
    }
}

.comments-title {
    font-size: 14px;
    font-weight: 500;
    color: #2a313d;
    margin: 0 0 9px;
    line-height: 1.357;
}

.general-rate {
    display: flex;
    align-items: center;
    margin-bottom: 26px;
}

.general-rate .rating-value {
    height: 25px;
    border-radius: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 13px;
    background-color: rgba(94, 157, 154, 0.051);
    border: 1px solid #465139;
    -webkit-margin-end: 8px;
    margin-inline-end: 8px;
}

.general-rate .rating-value small {
    font-size: 14px;
    font-weight: 500;
    color: #465139;
    display: flex;
    align-items: center;
    line-height: 14px;
}

.general-rate .rating-name {
    font-size: 14px;
    font-weight: 500;
    color: #2a313d;
    -webkit-margin-end: 10px;
    margin-inline-end: 10px;
}

.general-rate .rating-num {
    font-size: 14px;
    color: #86959f;
}

.progress-item {
    margin-bottom: 20px;
}

.progress-item .progress-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 7px;
}

.progress-item .progress-title {
    font-size: 14px;
    font-weight: 500;
    color: #2a313d;
    margin: 0;
    line-height: 1.416;
}

.progress-item .progress-val small {
    font-size: 12px;
    color: #2a313d;
    font-weight: 400;
}

.progress-item .progress {
    height: 6px;
    background-color: #f2f3fc;
    border-radius: 3px;
}

.progress-item .progress-bar {
    height: 6px;
    background-color: #465139;
    border-radius: 3px;
}

.more-comments {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 30px;
    width: 126px;
    height: 38px;
    background-color: #465139;
    color: #fff;
    stroke: #fff;
    font-size: 14px;
    text-decoration: none;
    margin: 15px auto 0;
    transition: all 0.3s ease-in-out;
}

.more-comments svg {
    -webkit-margin-start: 12px;
    margin-inline-start: 12px;
}

.more-comments:hover {
    background-color: #726658;
    color: #465139;
    color: #465139;
    stroke: #465139;
}

.modal .gallery-cont {
    display: grid;
    grid-template-columns: 3.0861fr 1fr;
    gap: 30px;
    align-items: flex-start;
}

@media (max-width: 1199px) {
    .modal .gallery-cont {
        gap: 15px;
        grid-template-columns: 1fr;
    }
}

.modal .gallery-block-body {
    padding: 15px;
}

.modal .gallery-grid {
    grid-template-columns: repeat(3, 1fr);
}

@media (max-width: 767px) {
    .modal .gallery-grid {
        grid-template-columns: 1fr 1fr;
    }
}

.book-page-grid {
    display: grid;
    grid-template-columns: 2.1217fr 1fr;
    gap: 15px;
    background-color: #fdfdfd;
}

@media (max-width: 1199px) {
    .book-page-grid {
        grid-template-columns: 1fr;
    }
}

.book-main-item {
    box-shadow: 0px 2px 4px rgba(166, 164, 164, 0.2);
    border: 1px solid #f0f1f6;
    border-radius: 15px;
    background-color: #fff;
    position: relative;
    margin-bottom: 15px;
}

.book-main-item:last-of-type {
    margin: 0;
}

@media (max-width: 767px) {
    .book-main-item {
        box-shadow: none;
        max-width: 100%;
        overflow: hidden;
    }
}

.main-hint {
    padding: 20px 20px 0;
}

@media (max-width: 767px) {
    .main-hint {
        padding: 20px 15px 0;
    }
}

.book-main-info {
    padding: 20px;
    position: relative;
}

@media (max-width: 767px) {
    .book-main-info {
        padding: 20px 15px;
    }
}

.book-imgs-cont {
    position: relative;
}

.book-imgs-cont .imgs-modal-btn {
    position: absolute;
    inset-inline-end: 15px;
    bottom: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 97px;
    height: 40px;
    background-color: rgba(0, 0, 0, 0.3490196078);
    border: 1px solid rgba(255, 255, 255, 0.4);
    border-radius: 20px;
    font-size: 14px;
    color: #fff;
    font-weight: 500;
    text-decoration: none;
    transition: all 0.3s ease-in-out;
}

.book-imgs-cont .imgs-modal-btn:hover {
    background-color: #465139;
    border-color: #465139;
    color: #fff;
}

.book-imgs-cont .book-imgs-gird {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 15px;
}

@media (max-width: 991px) {
    .book-imgs-cont .book-imgs-gird {
        gap: 10px;
    }
}

@media (max-width: 767px) {
    .book-imgs-cont .book-imgs-gird {
        grid-template-columns: 1fr 1fr;
        gap: 10px;
    }
}

.book-imgs-cont .book-imgs-gird .grid-item {
    overflow: hidden;
    max-width: 100%;
    height: 100%;
}

.book-imgs-cont .book-imgs-gird .grid-item .book-img {
    display: block;
    position: relative;
    padding-bottom: 71.0204081633%;
    overflow: hidden;
    border-radius: 15px;
}

.book-imgs-cont .book-imgs-gird .grid-item .book-img img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    transition: all 0.3s ease-in-out;
}

.book-imgs-cont .book-imgs-gird .grid-item .book-img::after {
    content: url(../images/icons/resize.svg);
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    inset: 20px;
    background-color: rgba(94, 157, 154, 0.7);
    border-radius: 15px;
    visibility: hidden;
    opacity: 0;
    transform: scale(0);
    transition: all 0.3s ease-in-out;
}

@media (max-width: 767px) {
    .book-imgs-cont .book-imgs-gird .grid-item .book-img::after {
        inset: 10px;
    }
}

.book-imgs-cont .book-imgs-gird .grid-item .book-img:hover img {
    transform: scale(1.05);
}

.book-imgs-cont .book-imgs-gird .grid-item .book-img:hover::after {
    visibility: visible;
    opacity: 1;
    transform: scale(1);
}

.book-imgs-cont .book-imgs-gird .grid-item:first-of-type {
    grid-column: 1 / span 2;
    grid-row: 1 / span 2;
}

.book-imgs-cont .book-imgs-gird .grid-item:first-of-type .book-img {
    padding: 0;
    width: 100%;
    height: 100%;
}

@media (max-width: 767px) {
    .book-imgs-cont .book-imgs-gird .grid-item:first-of-type .book-img {
        height: auto;
        padding-bottom: 71.0204081633%;
    }
}

.book-text-cont {
    position: relative;
    padding: 25px 0 0;
}

.book-text-cont .single-tools {
    top: 25px;
    inset-inline-end: 0;
}

.book-text-cont .single-rating {
    margin: 0;
}

.extra-info-block {
    border-bottom: 1px solid #dedfeb;
    padding: 15px 20px;
}

.extra-info-block:last-of-type {
    border: none;
}

.extra-info-block select {
    height: 48px;
}

.extra-info-block .select2-container .select2-selection {
    height: 48px;
}

@media (max-width: 767px) {
    .extra-info-block {
        padding: 15px;
    }
}

.extra-info-title {
    font-size: 18px;
    font-weight: 700;
    color: #2a313d;
    margin: 0 0 10px;
}

.side-item .extra-info-title {
    margin-bottom: 20px;
}

.choosed-items {
    display: flex;
    align-items: center;
}

@media (max-width: 767px) {
    .choosed-items {
        flex-direction: column;
        align-items: flex-start;
    }
}

.choosed-items .item {
    display: flex;
    align-items: center;
}

.choosed-items .item ~ .item {
    -webkit-margin-start: 15px;
    margin-inline-start: 15px;
}

@media (max-width: 767px) {
    .choosed-items .item ~ .item {
        margin: 0;
        margin-top: 10px;
    }
}

.choosed-items .item-icon {
    border: 1px solid #e8eaf7;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    -webkit-margin-end: 10px;
    margin-inline-end: 10px;
}

.choosed-items .item-icon img {
    width: 19px;
    filter: brightness(0) saturate(100%) invert(14%) sepia(21%) saturate(763%) hue-rotate(179deg) brightness(96%) contrast(85%);
}

.choosed-items .item-name {
    font-size: 14px;
    color: #86959f;
}

.special-req-title {
    font-size: 14px;
    color: #86959f;
    line-height: 1.357;
    margin: 0 0 15px;
}

.special-req-desc {
    line-height: 1.71;
    font-size: 14px;
    color: #2a313d;
}

.special-req-label {
    font-size: 14px;
    font-weight: 500;
    color: #2a313d;
    line-height: 1.357;
    margin: 0 0 10px;
}

.special-req-label span {
    font-size: 14px;
    color: #86959f;
}

.special-req-label ~ textarea {
    height: 155px;
}

.arrive-feats {
    margin-bottom: 16px;
}

.arrive-feats .item {
    display: flex;
    align-items: center;
}

.arrive-feats .item ~ .item {
    margin-top: 10px;
}

.arrive-feats .item-icon {
    border: 1px solid #e8eaf7;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    -webkit-margin-end: 10px;
    margin-inline-end: 10px;
}

.arrive-feats .item-name {
    font-size: 15px;
    color: #2a313d;
    font-weight: 400;
    margin: 0;
}

.arrive-feats .item-name span {
    color: #465139;
    font-weight: 700;
}

.log-form {
    padding: 30px 20px;
}

@media (max-width: 767px) {
    .log-form {
        padding: 20px 15px;
    }
}

.log-form .extra-info-title {
    margin-bottom: 20px;
}

.log-form .form-submit {
    width: 192px;
    background-color: transparent;
    border: 2px solid #465139;
    color: #465139;
    -webkit-margin-start: auto;
    margin-inline-start: auto;
}

.log-form .form-submit:hover {
    background-color: #465139;
    color: #fff;
}

@media (max-width: 767px) {
    .log-form .form-submit {
        width: 100%;
    }
}

.checkout-btn {
    width: 100%;
    height: 56px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    color: #fff;
    border-radius: 30px;
    background-color: #465139;
    border: none;
    text-decoration: none;
    margin-top: 30px;
    transition: all 0.3s ease-in-out;
}

@media (max-width: 767px) {
    .checkout-btn {
        margin-top: 15px;
    }
}

.checkout-btn:hover {
    color: #465139;
    background-color: #726658;
}

.book-side-item {
    border-radius: 15px;
    background-color: #fff;
    overflow: hidden;
    max-width: 100%;
    margin-bottom: 15px;
}

.book-side-item:last-of-type {
    margin: 0;
}

@media (max-width: 767px) {
    .book-side-item {
        border: 1px solid #f0f1f6;
    }
}

.book-side-head {
    font-size: 18px;
    font-weight: 700;
    color: #2a313d;
    padding: 15px 20px;
    margin: 0;
    border-bottom: 1px solid #dedfeb;
}

@media (max-width: 767px) {
    .book-side-head {
        padding: 10px 15px;
    }
}

.book-details {
    padding: 15px 20px;
}

@media (max-width: 767px) {
    .book-details {
        padding: 15px;
    }
}

.details-item {
    display: flex;
    align-items: center;
    border: 1px solid #dedfeb;
    border-radius: 15px;
    padding: 5px 15px;
    min-height: 79px;
    margin-bottom: 15px;
}

.details-item:last-of-type {
    margin: 0;
}

.details-item .item {
    display: flex;
    align-items: flex-start;
}

.details-item .item-icon {
    margin-top: 9px;
}

.details-item .item-text {
    -webkit-margin-start: 20px;
    margin-inline-start: 20px;
}

.details-item .item-title {
    font-size: 15px;
    font-weight: 700;
    color: #2a313d;
    line-height: 1.466;
    margin: 0 0 0;
}

.details-item .item-value {
    margin: 3px 0 0;
    line-height: 1.4;
    font-size: 15px;
    color: #2a313d;
}

.details-item span {
    color: #465139;
    font-weight: 700;
}

.book-prices {
    padding: 20px 0;
}

.book-prices .totals {
    border-top: 1px solid #dedfeb;
    margin: 0 16px;
    padding-top: 15px;
    margin-top: 15px;
}

@media (max-width: 767px) {
    .book-prices .totals {
        margin: 0 10px;
        margin-top: 15px;
    }
}

.price-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 20px;
}

@media (max-width: 767px) {
    .price-item {
        padding: 0 15px;
    }
}

.price-item ~ .price-item {
    margin-top: 17px;
}

.price-item .price-title {
    margin: 0;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.357;
}

.price-item .price-title small {
    color: #86959f;
}

.price-item .price-value {
    margin: 0;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.375;
    white-space: nowrap;
}

.totals .price-item {
    padding: 0;
}

.totals .price-item .price-value {
    font-size: 20px;
    font-weight: 700;
    color: #465139;
}

.totals .price-item .price-value small {
    font-size: 16px;
}

.hint-cont {
    padding: 20px 20px 0;
}

@media (max-width: 767px) {
    .hint-cont {
        padding: 15px 15px 0;
    }
}

.book-cancel {
    padding: 20px;
    border-top: 1px solid #dedfeb;
}

@media (max-width: 767px) {
    .book-cancel {
        padding: 15px;
    }
}

.cancel-note {
    display: flex;
    align-items: flex-start;
    color: #2a313d;
}

.cancel-note ~ .cancel-note {
    margin-top: 20px;
}

.cancel-note p {
    font-size: 15px;
    font-weight: 400;
    margin: 0;
}

.cancel-note p span {
    font-weight: 700;
    color: #465139;
}

.cancel-note img {
    margin-top: 5px;
    -webkit-margin-end: 10px;
    margin-inline-end: 10px;
}

.cancel-note.free {
    color: #465139;
}

.book-coupon {
    padding: 20px;
    border-top: 1px solid #dedfeb;
}

@media (max-width: 767px) {
    .book-coupon {
        padding: 15px;
    }
}

.coupon-item ~ .coupon-item {
    margin-top: 20px;
}

.coupon-item .coupon-cont {
    position: relative;
    width: 100%;
}

.coupon-item .checked-icon {
    position: absolute;
    top: 10px;
    inset-inline-start: 15px;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #465139;
    fill: #465139;
}

.coupon-item .checked-icon ~ .coupon-input {
    -webkit-padding-start: 45px;
    padding-inline-start: 45px;
}

.coupon-item .coupon-input {
    width: calc(100% - 30px);
    height: 40px;
    border: 1px solid #d9e0e5;
    border-radius: 10px;
    padding: 0 15px;
    -webkit-padding-end: 85px;
    padding-inline-end: 85px;
    font-size: 14px;
    color: #2a313d;
    transition: all 0.3s ease-in-out;
}

.coupon-item .coupon-input::-moz-placeholder {
    font-size: 12px;
    color: #86959f;
}

.coupon-item .coupon-input::placeholder {
    font-size: 12px;
    color: #86959f;
}

.coupon-item .coupon-input:focus {
    border-color: #465139;
}

.coupon-item .coupon-btn {
    position: absolute;
    width: 70px;
    height: 40px;
    top: 0;
    inset-inline-end: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    font-weight: 500;
    border: none;
    border-radius: 20px;
    z-index: 9;
    transition: all 0.3s ease-in-out;
}

.coupon-item .coupon-btn.del-btn {
    background-color: #ffd8d8;
    color: #f54748;
}

.coupon-item .coupon-btn.apply-btn {
    background-color: #465139;
    color: #fff;
}

.coupon-item .coupon-btn:hover {
    background-color: #86959f;
    color: #fff;
}

.order-tools {
    display: flex;
    align-items: center;
    justify-content: center;
}

@media (max-width: 991px) {
    .order-tools {
        flex-direction: column;
    }
}

.order-tools .order-tool {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 127px;
    height: 40px;
    border: 1px solid;
    border-radius: 20px;
    font-size: 12px;
    font-weight: 700;
    margin: 0 7.5px;
    text-decoration: none;
    transition: all 0.3s ease-in-out;
}

@media (max-width: 991px) {
    .order-tools .order-tool {
        margin: 7.5px 0;
    }
}

@media (max-width: 767px) {
    .order-tools .order-tool {
        width: 100%;
    }
}

.order-tools .order-tool svg {
    -webkit-margin-end: 10px;
    margin-inline-end: 10px;
}

.order-tools .order-tool.order-cancel {
    border-color: #f54748;
    color: #f54748;
    fill: #f54748;
    stroke: #f54748;
    background-color: #fdeded;
}

.order-tools .order-tool.order-cancel:hover {
    background-color: #f54748;
}

.order-tools .order-tool.order-invoice {
    border-color: #465139;
    color: #465139;
    fill: #465139;
    stroke: #465139;
    background-color: #ecf3f3;
}

.order-tools .order-tool.order-invoice:hover {
    background-color: #465139;
}

.order-tools .order-tool.order-extend {
    border-color: #5ebc0d;
    color: #5ebc0d;
    fill: #5ebc0d;
    stroke: #5ebc0d;
    background-color: #edffde;
}

.order-tools .order-tool.order-extend:hover {
    background-color: #5ebc0d;
}

.order-tools .order-tool.order-rate {
    border-color: #ffc107;
    color: #ffc107;
    fill: #ffc107;
    stroke: #ffc107;
    background-color: #fff8e7;
}

.order-tools .order-tool.order-rate:hover {
    background-color: #ffc107;
}

.order-tools .order-tool:hover {
    color: #fff;
    fill: #fff;
    stroke: #fff;
}

.orders-sec .view-icos {
    justify-content: flex-end;
    margin-bottom: 21px;
}

.orders-sec .sec-more {
    margin-top: 30px;
}

.orders-grid {
    display: grid;
    gap: 30px;
    grid-template-columns: repeat(4, 1fr);
}

@media (max-width: 1199px) {
    .orders-grid {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 767px) {
    .orders-grid {
        grid-template-columns: 1fr;
        gap: 15px;
    }
}

.orders-grid.list {
    grid-template-columns: repeat(2, 1fr);
}

@media (max-width: 1199px) {
    .orders-grid.list {
        grid-template-columns: 1fr;
    }
}

.orders-grid .room-item {
    margin: 0 auto;
}

.cancel-body {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    text-align: center;
    padding: 60px 15px 30px;
}

.cancel-body .cancel-title {
    font-size: 16px;
    font-weight: 500;
    color: #2a313d;
    margin: 30px 0;
}

.cancel-body .cancel-btn {
    width: 115px;
    height: 48px;
    font-size: 16px;
    font-weight: 500;
    color: #fff;
    background-color: #465139;
    border-radius: 32px;
    border: none;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    transition: all 0.3s ease-in-out;
}

.cancel-body .cancel-btn:hover {
    background-color: #726658;
    color: #465139;
}

@media (max-width: 767px) {
    .cancel-body {
        padding: 30px 15px;
    }
}

.pay-btn-cont {
    padding: 0 15px 15px;
}

.pay-btn {
    width: 176px;
    height: 56px;
    border-radius: 28px;
    font-size: 18px;
    color: #fff;
    background-color: #465139;
    border: none;
    text-decoration: none;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: auto;
    transition: all 0.3s ease-in-out;
}

.pay-btn:hover {
    background-color: #726658;
    color: #465139;
}

.extend-date {
    padding: 30px;
    display: block;
}

@media (max-width: 767px) {
    .extend-date {
        padding: 20px 15px;
    }
}

@media (max-width: 767px) {
    .extend-date .advsearch-item-view strong {
        flex-direction: column;
        align-items: flex-start;
    }
}

.extend-date .advsearch-item-view strong small {
    color: #86959f;
    font-weight: 400;
}

@media (max-width: 767px) {
    .extend-date .advsearch-item-view strong small {
        margin: 0;
    }
}

.extend-feats {
    padding-top: 15px;
    width: 100%;
}

.extend-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 156px;
    height: 56px;
    border-radius: 30px;
    background-color: #edffde;
    border: 1px solid #5ebc0d;
    color: #5ebc0d;
    fill: #5ebc0d;
    text-decoration: none;
    margin: 30px 0 0;
    -webkit-margin-start: auto;
    margin-inline-start: auto;
    transition: all 0.3s ease-in-out;
}

.extend-btn svg {
    -webkit-margin-end: 11px;
    margin-inline-end: 11px;
}

.extend-btn:hover {
    background-color: #465139;
    border-color: #465139;
    fill: #fff;
    color: #fff;
}

.invoice-cont {
    box-shadow: 0px 2px 4px rgba(166, 164, 164, 0.2);
    border: 1px solid #f0f1f6;
    background-color: #fff;
    border-radius: 15px;
    width: 100%;
    max-width: 970px;
    margin: auto;
}

.invoice-cont > div {
    border-bottom: 1px solid #dedfeb;
}

.invoice-cont > div:last-of-type {
    border: none;
}

.invoice-cont h6 {
    font-size: 18px;
    font-weight: 700;
    color: #2a313d;
    margin: 0 0 20px;
}

.invoice-logo {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 30px 15px 25px;
}

.invoice-logo img {
    width: 218px;
}

@media (max-width: 991px) {
    .invoice-logo {
        padding: 20px 15px;
    }

    .invoice-logo img {
        width: 175px;
    }
}

.invoice-main-info {
    display: flex;
    justify-content: space-between;
    padding: 30px;
    -webkit-padding-end: 139px;
    padding-inline-end: 139px;
}

@media (max-width: 1199px) {
    .invoice-main-info {
        padding: 30px;
    }
}

@media (max-width: 991px) {
    .invoice-main-info {
        padding: 20px 15px;
        display: grid;
        grid-template-columns: 1fr;
        gap: 40px;
    }
}

.invoice-main-info p {
    display: flex;
    align-items: center;
    margin: 0 0 18px;
}

.invoice-main-info p:first-of-type {
    padding-top: 10px;
}

@media (max-width: 991px) {
    .invoice-main-info p:first-of-type {
        padding: 0;
    }
}

.invoice-main-info p:last-of-type {
    margin: 0;
}

.invoice-main-info strong {
    font-size: 16px;
    font-weight: 500;
    color: #2a313d;
    width: 108px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    -webkit-margin-end: 11px;
    margin-inline-end: 11px;
    line-height: 1.375;
}

.invoice-main-info strong:after {
    content: ":";
    -webkit-margin-start: 7px;
    margin-inline-start: 7px;
}

.invoice-main-info span {
    font-size: 15px;
    color: #2a313d;
    line-height: 1.4;
}

.invoice-table {
    padding: 30px 20px 40px;
}

@media (max-width: 991px) {
    .invoice-table {
        padding: 20px 15px;
    }
}

.table-cont {
    border-radius: 15px;
    overflow: hidden;
    border: 1px solid #465139;
}

.table-cont table {
    width: 100%;
    min-width: 750px;
    table-layout: fixed;
    background-color: #f1f9f9;
    text-align: center;
    border-collapse: collapse;
    border-style: hidden;
}

.table-cont table th,
.table-cont table td {
    border: 1px solid #465139;
    font-size: 16px;
    font-weight: 500;
    color: #2a313d;
    padding: 16px 5px;
}

.table-cont .table-feats .item {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 15px 0;
    font-size: 14px;
    color: #2a313d;
}

.table-cont .table-feats .item .item-icon {
    width: 18px;
    -webkit-margin-end: 8px;
    margin-inline-end: 8px;
}

.table-cont .table-feats .item .item-icon img {
    max-width: 100%;
    filter: brightness(0) saturate(100%) invert(14%) sepia(21%) saturate(763%) hue-rotate(179deg) brightness(96%) contrast(85%);
}

.table-cont .totals h5 {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px 0;
    font-size: 20px;
    font-weight: 700;
    color: #465139;
    margin: 0;
}

.table-cont .totals h5 span {
    font-size: 16px;
    font-weight: 700;
    -webkit-margin-start: 5.5px;
    margin-inline-start: 5.5px;
}

.invoice-btn {
    width: 150px;
    height: 48px;
    border-radius: 28px;
    font-size: 18px;
    color: #fff;
    background-color: #465139;
    border: none;
    text-decoration: none;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 40px auto 0;
    transition: all 0.3s ease-in-out;
}

.invoice-btn:hover {
    background-color: #726658;
    color: #465139;
}

.invoice-footer {
    padding: 30px 20px 30px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

@media (max-width: 991px) {
    .invoice-footer {
        padding: 15px 15px;
        flex-direction: column;
        align-items: flex-start;
    }
}

.invoice-footer .invoice-contact {
    display: flex;
    align-items: center;
}

@media (max-width: 991px) {
    .invoice-footer .invoice-contact {
        padding: 5px 0;
    }
}

.invoice-footer .invoice-contact .contact-icon {
    fill: #465139;
    stroke: #465139;
}

@media (max-width: 991px) {
    .invoice-footer .invoice-contact .contact-icon {
        width: 24px;
        display: flex;
        align-items: center;
        justify-content: center;
    }
}

.invoice-footer .invoice-contact .contact-title {
    font-size: 14px;
    color: #86959f;
    font-weight: 500;
    margin: 0;
    -webkit-margin-end: 5px;
    margin-inline-end: 5px;
    -webkit-margin-start: 8px;
    margin-inline-start: 8px;
}

.invoice-footer .invoice-contact .contact-value {
    font-size: 14px;
    color: #2a313d;
    font-weight: 500;
    text-decoration: none;
    transition: all 0.3s ease-in-out;
}

.invoice-footer .invoice-contact .contact-value:hover {
    color: #465139;
}

@media print {
    header,
    footer,
    .breadcrumb-sec,
    .invoice-btn {
        display: none;
    }

    .container {
        max-width: 100%;
        width: 100%;
    }

    .invoice-logo {
        padding: 30px 15px 25px;
    }

    .invoice-logo img {
        width: 175px;
    }

    .invoice-main-info {
        grid-template-columns: 1fr 1fr;
        padding: 30px;
    }

    .invoice-table {
        padding: 30px 20px 40px;
    }

    .table-cont table {
        min-width: auto;
    }

    .invoice-cont {
        max-width: 100%;
        margin: 0;
    }

    .invoice-footer {
        padding: 15px 15px;
        flex-direction: column;
        align-items: flex-start;
    }

    .invoice-footer .invoice-contact {
        padding: 5px 0;
    }
}

.account-hint {
    display: flex;
    align-items: center;
    justify-content: space-between;
    box-shadow: 0px 2px 4px rgba(166, 164, 164, 0.2);
    border: 1px solid #f0f1f6;
    border-radius: 15px;
    padding: 22px 20px 25px;
    background-color: #fff;
    margin-bottom: 30px;
}

@media (max-width: 767px) {
    .account-hint {
        padding: 20px 15px;
        margin-bottom: 15px;
    }
}

.account-hint .hint-title {
    font-size: 16px;
    font-weight: 700;
    color: #2a313d;
    margin: 0 0 10px;
    line-height: 1.5;
}

.account-hint .hint-subtitle {
    font-size: 14px;
    font-weight: 400;
    color: #2a313d;
    margin: 0;
    line-height: 1.357;
}

.account-hint .hint-icon {
    fill: #86959f;
}

.account-grid {
    display: grid;
    grid-template-columns: 1fr 3.222fr;
    gap: 30px;
    align-items: flex-start;
    position: relative;
}

@media (max-width: 767px) {
    .account-grid {
        grid-template-columns: 1fr;
        gap: 15px;
    }
}

.account-side {
    box-shadow: 0px 2px 4px rgba(166, 164, 164, 0.2);
    border: 1px solid #f0f1f6;
    border-radius: 15px;
    background-color: #fff;
    padding: 20px 15px;
    position: sticky;
    top: 100px;
}

@media (max-width: 767px) {
    .account-side {
        position: relative;
        top: unset;
    }
}

.account-side-title {
    font-size: 18px;
    font-weight: 700;
    color: #2a313d;
    margin: 0 4px 15px;
}

.account-side-btn {
    border-radius: 10px;
    height: 48px;
    display: flex;
    align-items: center;
    width: 100%;
    padding: 0 17px;
    font-size: 14px;
    color: #2a313d;
    fill: #465139;
    stroke: #465139;
    text-decoration: none;
    transition: all 0.3s ease-in-out;
}

.account-side-btn .icon {
    width: 21px;
    display: flex;
    align-items: center;
    justify-content: center;
    -webkit-margin-end: 10px;
    margin-inline-end: 10px;
}

.account-side-btn:last-of-type {
    color: #f54748;
    fill: #f54748;
    stroke: #f54748;
}

.account-side-btn:hover {
    color: #465139;
}

.account-side-btn.active {
    background-color: #465139;
    color: #fff;
    fill: #fff;
    stroke: #fff;
}

.account-content {
    box-shadow: 0px 2px 4px rgba(166, 164, 164, 0.2);
    border: 1px solid #f0f1f6;
    background-color: #fff;
    border-radius: 15px;
    max-width: 100%;
    overflow: hidden;
}

.profile-photo {
    display: flex;
    align-items: center;
    padding: 20px 30px;
    border-bottom: 1px solid #dedfeb;
}

@media (max-width: 767px) {
    .profile-photo {
        padding: 15px;
    }
}

.profile-photo .placeholder {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 1px solid #d9dae7;
    border-radius: 50%;
    background-color: #f2f3fc;
    display: flex;
    align-items: center;
    justify-content: center;
    fill: #86959f;
    cursor: pointer;
}

.profile-photo .value {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
    border-radius: 50%;
    overflow: hidden;
    background-color: #fff;
    display: none;
}

.profile-photo .value img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.profile-photo .photo-label {
    font-size: 20px;
    font-weight: 500;
    color: #2a313d;
    margin: 0;
    -webkit-margin-start: 15px;
    margin-inline-start: 15px;
}

.profile-photo .del-btn {
    position: absolute;
    top: 0;
    inset-inline-start: -10px;
    display: none;
    align-items: center;
    justify-content: center;
    z-index: 3;
    border: 2px solid #ffffff;
    background-color: #f2f3fc;
    border-radius: 50%;
    width: 32px;
    height: 32px;
    transition: all 0.3s ease-in-out;
}

.profile-photo .del-btn:hover {
    background-color: #f54748;
    fill: #fff;
}

.profile-photo .photo-input {
    position: relative;
    width: 87px;
    height: 87px;
    flex-shrink: 0;
    cursor: pointer;
}

.profile-photo .photo-input input {
    display: none;
}

.profile-photo .photo-input.active .value {
    display: block;
}

.profile-photo .photo-input.active .del-btn {
    display: flex;
}

.account-form {
    padding: 20px 30px 10px;
    border-bottom: 1px solid #dedfeb;
}

@media (max-width: 767px) {
    .account-form {
        padding: 20px 15px 0;
    }
}

.account-form .form-line {
    gap: 15px 30px;
}

@media (max-width: 767px) {
    .account-form .form-line {
        gap: 0;
    }
}

.contact-data-form {
    padding: 30px;
}

@media (max-width: 767px) {
    .contact-data-form {
        padding: 20px 15px;
    }
}

.contact-data-form .form-submit {
    width: 123px;
    margin-top: 5px;
    -webkit-margin-start: auto;
    margin-inline-start: auto;
}

@media (max-width: 767px) {
    .contact-data-form .form-submit {
        width: 100%;
    }
}

.contact-data-form .form-line {
    gap: 15px 30px;
}

@media (max-width: 767px) {
    .contact-data-form .form-line {
        gap: 0;
    }
}

.contact-data-form.mail-data-form .form-line {
    align-items: flex-end;
}

.contact-data-form.mail-data-form .form-group {
    margin-bottom: 0;
}

@media (max-width: 767px) {
    .contact-data-form.mail-data-form .form-group {
        margin-bottom: 20px;
    }
}

.accout-form-btn {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding: 20px;
}

.accout-form-btn .form-submit {
    width: 123px;
}

@media (max-width: 767px) {
    .accout-form-btn .form-submit {
        width: 100%;
    }
}

.notification-setting-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid #dedfeb;
    padding: 20px 30px;
}

.notification-setting-item:last-of-type {
    border: none;
}

@media (max-width: 767px) {
    .notification-setting-item {
        padding: 20px 15px;
    }
}

.notification-setting-item .notification-setting-text {
    -webkit-margin-end: 20px;
    margin-inline-end: 20px;
}

.notification-setting-item .notification-setting-title {
    font-size: 15px;
    font-weight: 700;
    color: #2a313d;
    line-height: 1.466;
    margin: 0 0 10px;
}

.notification-setting-item .notification-setting-desc {
    font-size: 14px;
    color: #2a313d;
    margin: 0;
    line-height: 1.357;
}

.notifications-list {
    margin-bottom: 30px;
}

.notification-item {
    padding: 20px 20px 25px;
    box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.0392156863);
    border-radius: 15px;
    background-color: #fff;
    display: flex;
    align-items: flex-start;
    margin-bottom: 15px;
    transition: all 0.3s ease-in-out;
}

.notification-item:last-of-type {
    margin-bottom: 0;
}

@media (max-width: 991px) {
    .notification-item {
        flex-wrap: wrap;
        padding: 15px;
    }
}

.notification-item .notification-icon {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background-color: #dfebeb;
    flex-shrink: 0;
    -webkit-margin-end: 10px;
    margin-inline-end: 10px;
}

.notification-item .notification-text {
    margin-top: 9px;
    -webkit-margin-end: 10px;
    margin-inline-end: 10px;
}

@media (max-width: 991px) {
    .notification-item .notification-text {
        -webkit-margin-end: 0;
        margin-inline-end: 0;
        width: calc(100% - 50px);
    }
}

.notification-item .notification-title {
    display: flex;
    align-items: center;
    margin-bottom: 13px;
    line-height: 1.375;
    font-size: 16px;
    color: #2a313d;
    font-weight: 500;
}

.notification-item .notification-desc {
    font-size: 16px;
    color: #2a313d;
    margin: 0;
    line-height: 1.25;
}

.notification-item .notification-date {
    height: 40px;
    display: flex;
    align-items: center;
    font-size: 12px;
    color: #767676;
    flex-shrink: 0;
    -webkit-margin-start: auto;
    margin-inline-start: auto;
}

.notification-item .notification-date img {
    -webkit-margin-end: 5px;
    margin-inline-end: 5px;
}

@media (max-width: 991px) {
    .notification-item .notification-date {
        width: 100%;
        justify-content: flex-end;
        height: auto;
        margin-top: 10px;
    }
}

.notification-item:hover {
    transform: translateY(-5px);
}

footer {
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
    padding: 48px 0 0;
}

/*footer:after {*/
/*  top: 0;*/
/*  left: 0;*/
/*  width: 100%;*/
/*  height: 100%;*/
/*  background-color: #465139;*/
/*  opacity: 0.9;*/
/*  content: "";*/
/*  position: absolute;*/
/*}*/
@media (max-width: 767px) {
    footer {
        padding: 35px 0 0;
    }
}

.footer {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    position: relative;
    z-index: 2;
    padding-bottom: 30px;
}

@media (max-width: 991px) {
    .footer {
        flex-wrap: wrap;
    }
}

@media (max-width: 767px) {
    .footer {
        flex-direction: column;
        justify-content: flex-start;
    }
}

.footer-info {
    width: 100%;
    max-width: 343px;
}

@media (max-width: 991px) {
    .footer-info {
        max-width: none;
        margin-bottom: 30px;
    }
}

/* Footer Logo Auto-Switch */
.footer-logo {
    position: relative;
    display: inline-block;
    width: 300px;
    max-width: 100%;
}

.footer-logo img {
    transition: opacity 0.35s ease;
    position: relative;
    z-index: 1;
}

.footer-logo .logo-dark {
    opacity: 1;
    z-index: 2;
}

.footer-logo .logo-light {
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 3;
}

/* When dark mode is active → show light logo */
.dark .footer-logo .logo-dark {
    opacity: 0;
}

.dark .footer-logo .logo-light {
    opacity: 1;
}

@media (max-width: 767px) {
    .footer-logo {
        margin: auto;
        width: 150px;
    }
}

.footer-desc {
    font-size: 14px;
    color: rgba(255, 255, 255, 0.8);
    line-height: 2.07;
    margin: 0;
    margin-bottom: 12px;
}

@media (max-width: 767px) {
    .footer-desc {
        text-align: center;
        margin-bottom: 15px;
    }
}

.socials {
    display: flex;
    align-items: center;
}

@media (max-width: 767px) {
    .socials {
        justify-content: center;
    }
}

.socials a {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: rgba(255, 255, 255, 0.1);
    text-decoration: none;
    fill: #726658;
    transition: all 0.3s ease-in-out;
}

.socials a:hover {
    background-color: #f1ede6;
}

.socials a:hover.linkedin {
    fill: #0a66c2;
}

.socials a:hover.twitter {
    fill: #03a9f4;
}

.socials a:hover.whatsapp {
    fill: #075e54;
}

.socials a:hover.facebook {
    fill: #1877f2;
}

.socials a ~ a {
    -webkit-margin-start: 20px;
    margin-inline-start: 20px;
}

.footer-nav {
    margin-top: 13px;
}

@media (max-width: 767px) {
    .footer-nav {
        margin: 0 0 30px;
        width: 100%;
    }

    .footer-nav:last-of-type {
        margin: 0;
    }
}

.footer-title {
    font-size: 18px;
    font-weight: 700;
    color: #fff;
    line-height: 1.44;
    margin: 0 0 35px;
    position: relative;
}

.footer-title img {
    position: absolute;
    top: 100%;
    inset-inline-start: 0;
    display: block;
    content: url(../images/footer/border.svg);
    margin-top: 5px;
}

html[dir="ltr"] .footer-title img {
    transform: scaleX(-1);
}

@media (max-width: 767px) {
    .footer-title {
        margin: 0;
        display: flex;
        align-items: center;
        justify-content: space-between;
        width: 100%;
    }

    .footer-title img {
        display: none;
    }

    .footer-title::after {
        content: url(../images/footer/arrow.svg);
        transition: transform 0.3s ease-in-out;
    }

    .footer-title.active::after {
        transform: rotate(180deg);
    }
}

.footer-list {
    margin: 0;
}

@media (max-width: 767px) {
    .footer-list {
        display: none;
        padding: 15px 15px 0;
    }
}

.footer-list li {
    display: flex;
    align-items: center;
}

.footer-list li ~ li {
    margin-top: 15px;
}

.footer-list a {
    font-size: 14px;
    color: #f1ede6;
    display: inline-flex;
    align-items: center;
    text-decoration: none;
    line-height: 1.36;
    transition: all 0.3s ease-in-out;
}

.footer-list a::before {
    content: "";
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background-color: #726658;
    -webkit-margin-end: 5px;
    margin-inline-end: 5px;
}

.footer-list a:hover {
    color: #fff;
}

html[dir="rtl"] .footer-list a:hover {
    transform: translateX(-5px);
}

html[dir="ltr"] .footer-list a:hover {
    transform: translateX(5px);
}

.footer-list a:hover::before {
    background-color: #fff;
}

.last-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: relative;
    z-index: 2;
    padding: 33px 0;
    border-top: 1px dashed rgba(255, 255, 255, 0.4);
}

@media (max-width: 767px) {
    .last-footer {
        flex-direction: column;
        justify-content: center;
        text-align: center;
        padding: 15px 0;
        gap: 15px;
    }
}

.copyright {
    font-size: 14px;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0;
}

.copyright img {
    margin: 0 7px;
}

.copyright a {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #652682;
    text-decoration: none;
    transition: all 0.3s ease-in-out;
}

.copyright a:hover {
    color: #f1ede6;
}

.menu-overlay {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(
        90deg,
        rgba(85, 85, 85, 0.69) 0%,
        rgba(0, 0, 0, 0.741) 100%
    );
    opacity: 1;
    z-index: 998;
    display: block;
    display: none;
}

.header-nav-head {
    display: none;
    align-items: center;
    justify-content: space-between;
    padding: 5px 15px;
    background-color: #fff;
    box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.0784313725);
}

.header-nav-head .nav-logo {
    height: 60px;
}

.header-nav-head .nav-logo img {
    max-height: 100%;
}

.header-nav-head .menu-close {
    display: flex;
    align-items: center;
    justify-content: center;
    fill: #2a313d;
    text-decoration: none;
    transform: rotate(45deg);
    transition: clor 0.3s ease-in-out;
}

.header-nav-head .menu-close svg {
    width: 18px;
    height: 15px;
}

.header-nav-head .menu-close:hover {
    fill: #465139;
}

@media (max-width: 991px) {
    .header-nav {
        display: block;
        position: fixed;
        top: 0;
        left: -300px;
        bottom: 0;
        background-color: #fdfdfdff;
        border: none;
        z-index: 999;
        width: 280px;
        max-width: 90%;
        overflow-y: auto;
        height: auto;
        transition: all 0.5s ease-in-out;
    }

    [dir="rtl"] .header-nav {
        left: auto;
        right: -300px;
    }

    .header-nav.active {
        left: 0;
        background-color: white;
    }

    [dir="rtl"] .header-nav.active {
        left: auto;
        right: 0;
    }

    .header-nav-head {
        display: flex;
    }

    .header-list {
        display: block;
        padding: 20px 0;
        margin: 15px 10px;
        min-height: calc(100% - 100px);
        background-color: #fff;
    }

    .header-list li {
        margin: 0;
        padding: 15px 20px;
    }

    .header-list li ~ li {
        -webkit-margin-start: 0;
        margin-inline-start: 0;
    }

    .header-list li.lang {
        display: block;
        padding-bottom: 0;
    }

    .header-list a {
        display: flex;
        color: #2a313d;
        width: 100%;
        justify-content: space-between;
        font-size: 16px;
        font-weight: 500;
    }

    .header-list a:before {
        display: none;
    }

    .header-list a.active {
        color: #465139;
    }

    .header-list a.active:before {
        display: none;
    }

    .header-list a:hover {
        color: #465139;
    }

    .header-list .lang {
        display: flex;
        align-items: center;
        justify-content: space-between;
    }

    .header-list .lang span {
        display: block;
        font-size: 16px;
        font-weight: 400;
    }

    .header-list .lang a {
        font-weight: 700;
    }

    .header-list .lang:hover span {
        color: #2a313d;
    }
}

.header-list li.header-socials {
    display: none;
    align-items: center;
    justify-content: center;
    margin-top: 40px;
}

@media (max-width: 767px) {
    .header-list li.header-socials {
        display: flex;
    }
}

.header-list li.header-socials a {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #726658;
    text-decoration: none;
    fill: #465139;
    transition: all 0.3s ease-in-out;
}

.header-list li.header-socials a:hover {
    background-color: FDFDFDFF;
}

.header-list li.header-socials a:hover.linkedin {
    fill: #0a66c2;
}

.header-list li.header-socials a:hover.twitter {
    fill: #03a9f4;
}

.header-list li.header-socials a:hover.whatsapp {
    fill: #075e54;
}

.header-list li.header-socials a:hover.facebook {
    fill: #1877f2;
}

.header-list li.header-socials a ~ a {
    -webkit-margin-start: 20px;
    margin-inline-start: 20px;
}

button.is_loading,
a.is_loading {
    position: relative;
    color: transparent;
    pointer-events: none;
}

button.is_loading:after,
a.is_loading:after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    translate: -50% -50%;
    display: inline-block;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    border: 4px solid #fff;
    border-left-color: transparent;
    animation: 0.75s linear infinite spinner-border;
}

button.is_loading:is(a):after,
a.is_loading:is(a):after {
    width: 15px;
    height: 15px;
    border: 2px solid #465139;
    border-left-color: transparent;
}

.success-body {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    text-align: center;
    padding: 60px 15px 30px;
}

.success-body img {
    width: 75px;
}

.success-body .success-title {
    font-size: 16px;
    font-weight: 500;
    color: #2a313d;
    margin: 30px 0 0;
}

.success-body .success-subtitle {
    font-size: 14px;
    font-weight: 500;
    color: #2a313d;
    margin: 10px 0 0;
}

.success-body .success-btn {
    width: 115px;
    height: 48px;
    font-size: 16px;
    font-weight: 500;
    color: #fff;
    background-color: #465139;
    border-radius: 32px;
    border: none;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    transition: all 0.3s ease-in-out;
    margin: 30px 0 0;
}

.success-body .success-btn:hover {
    background-color: #726658;
    color: #465139;
}

@media (max-width: 767px) {
    .success-body {
        padding: 30px 15px;
    }
}

.gallery-mixItUp-cont {
    align-items: flex-start;
}

.gallery-mixItUp-btns {
    padding-top: 31px;
}

@media (max-width: 1199px) {
    .gallery-mixItUp-btns {
        padding-top: 0;
    }
}

.gallery-grid .mix:nth-of-type(n + 13) {
    display: none;
}

.gallery-grid.filterd .mix:nth-of-type(n + 13) {
    display: block;
}

/*
* Elnagar
*/
.single-tools a {
    padding: 0;
    border: none;
    background-color: #fff;
    border: 1px solid #e8eaf7;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    fill: #86959f;
    text-decoration: none;
    cursor: pointer;
    transition: all 0.3s ease-in-out;
}

@media (max-width: 991px) {
    .single-tools a ~ a {
        margin-top: 7px;
    }
}

.single-tools a:hover {
    box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.0588235294);
    border: 1px solid #f2f3fc;
    fill: #1e8ce1;
}

.empty-content {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    padding: 40px 0;
}

.empty-content .empty-icon {
    margin-bottom: 25px;
}

.empty-content .empty-icon img {
    filter: brightness(0) saturate(100%) invert(58%) sepia(24%) saturate(549%) hue-rotate(128deg) brightness(93%) contrast(91%);
    width: 60px;
}

.empty-content .empty-text {
    font-size: 22px;
    font-weight: 700;
    color: #2a313d;
    margin: 0;
}

.room-item {
    display: flex;
    flex-direction: column;
}

.room-item .room-info {
    height: 100%;
}

.room-item .room-footer {
    height: 106px;
    display: flex;
    flex-direction: column;
}

.room-item .room-hint {
    margin-top: auto;
}

.rooms-grid.list .room-item,
.orders-grid.list .room-item {
    flex-direction: row;
}

.rooms-grid.list .room-item .room-imgs a,
.orders-grid.list .room-item .room-imgs a {
    height: 231px;
}

.rooms-grid.list .room-item .room-info,
.orders-grid.list .room-item .room-info {
    height: auto;
}

.rooms-grid.list .room-item .room-footer,
.orders-grid.list .room-item .room-footer {
    flex-direction: row;
    height: auto;
    flex-wrap: wrap;
    justify-content: space-between;
}

.rooms-grid.list .room-item .room-feats,
.orders-grid.list .room-item .room-feats {
    margin: 0;
}

.rooms-grid.list .room-item .room-hint,
.orders-grid.list .room-item .room-hint {
    margin: 0;
    width: 100%;
    border-top: 1px solid #dedfeb;
    padding: 13px 0 7px;
}

/* ===== Floating Support Widget ===== */
.fixed-icons {
    position: fixed;
    bottom: 24px;
    inset-inline-start: 24px;
    z-index: 998;
    pointer-events: none;
}

.fixed-icons .fixed-btn,
.fixed-icons .icons-list,
.fixed-icons a {
    pointer-events: auto;
}

.fixed-btn {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    background: linear-gradient(135deg, #465139 0%, #a38b55 100%);
    box-shadow: 0 4px 18px rgba(70, 81, 57, 0.5);
    cursor: pointer;
    position: relative;
    z-index: 2;
    transition: transform 0.25s ease, box-shadow 0.25s ease, background 0.25s ease;
}

.fixed-btn:hover {
    transform: scale(1.1);
    box-shadow: 0 6px 24px rgba(70, 81, 57, 0.6);
}

.fixed-btn .fab-icon-open,
.fixed-btn .fab-icon-close {
    position: absolute;
    width: 24px;
    height: 24px;
    fill: #fff;
    transition: opacity 0.25s ease, transform 0.25s ease;
}

.fixed-btn .fab-icon-close {
    opacity: 0;
    transform: rotate(-45deg) scale(0.7);
}

.fixed-btn.active {
    background: #2d3324;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.3);
}

.fixed-btn.active .fab-icon-open {
    opacity: 0;
    transform: rotate(45deg) scale(0.7);
}

.fixed-btn.active .fab-icon-close {
    opacity: 1;
    transform: rotate(0deg) scale(1);
}

.icons-list {
    position: absolute;
    bottom: calc(100% + 14px);
    left: 50%;
    transform: translateX(-50%) translateY(16px);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.25s ease, transform 0.25s ease, visibility 0.25s;
}

.icons-list.active {
    transform: translateX(-50%) translateY(0);
    opacity: 1;
    visibility: visible;
}

.icons-list .fixed-icon {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #fff;
    box-shadow: 0 3px 12px rgba(0, 0, 0, 0.15);
    position: relative;
    cursor: pointer;
    fill: #465139;
    text-decoration: none;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.icons-list .fixed-icon:hover {
    transform: scale(1.1);
    box-shadow: 0 5px 18px rgba(0, 0, 0, 0.22);
}

.icons-list .fixed-icon .title {
    position: absolute;
    top: 50%;
    inset-inline-end: calc(100% + 10px);
    transform: translateY(-50%);
    font-size: 12px;
    font-weight: 600;
    color: #fff;
    padding: 6px 12px;
    white-space: nowrap;
    border-radius: 8px;
    background-color: rgba(0, 0, 0, 0.72);
    pointer-events: none;
    opacity: 0;
    transition: opacity 0.2s ease;
}

.icons-list .fixed-icon:hover .title {
    opacity: 1;
}

.icons-list .fixed-icon.fixed-whats {
    background-color: #25d366;
    fill: #fff;
}

.icons-list .fixed-icon.fixed-whats:hover {
    background-color: #1db954;
    box-shadow: 0 5px 18px rgba(37, 211, 102, 0.4);
}

.icons-list .fixed-icon.fixed-support {
    background: linear-gradient(135deg, #465139 0%, #a38b55 100%);
    fill: #fff;
}

.icons-list .fixed-icon.fixed-support:hover {
    box-shadow: 0 5px 18px rgba(70, 81, 57, 0.45);
}

/* ----- Banner Home One ----- */
.banner__area {
    background-color: rgba(0, 8, 52, 0.65);
}

.is__home__one.banner__center {
    display: flex;
    justify-content: center;
    align-items: center;
}

.banner__slide__content {
    text-align: center;
    position: relative;
    z-index: 2;
    padding: 180px 0;
}

@media (max-width: 992px) {
    .banner__slide__content {
        padding: 150px 0;
    }
}

.banner__slide__content .h6,
.banner__slide__content h1,
.banner__slide__content p {
    color: #fff;
}

.banner__slide__content h1 {
    line-height: 90px;
    margin-top: 20px;
    margin-bottom: 30px;
}

@media (max-width: 992px) {
    .banner__slide__content h1 {
        font-size: 60px;
        line-height: 70px;
    }
}

@media (max-width: 768px) {
    .banner__slide__content h1 {
        font-size: 50px;
        line-height: 60px;
    }
}

@media (max-width: 576px) {
    .banner__slide__content h1 {
        font-size: 40px;
        line-height: 50px;
    }
}

.banner__slide__content .sub__text {
    font-size: 18px;
    max-width: 560px;
    margin: 0 auto;
    margin-bottom: 40px;
}

.banner__slider__image {
    position: absolute;
    height: 100%;
    width: 100%;
    content: "";
    left: 0;
    top: 0;
}

.banner__slider__image::before {
    position: absolute;
    height: 100%;
    width: 100%;
    content: "";
    left: 0;
    top: 0;
    background-color: rgba(27, 27, 27, 0.5);
}

.banner__slider__image img {
    height: 100%;
    width: 100%;
    object-fit: cover;
}

.subtitle__icon {
    position: relative;
    display: inline-block;
    margin-bottom: 0;
}

.subtitle__icon::before {
    position: absolute;
    content: "";
    left: -65px;
    bottom: 50%;
    transform: translate(0, 50%);
    width: 52px;
    height: 12px;
    background-image: url("../images/shape/left.svg");
    background-repeat: no-repeat;
}

.subtitle__icon::after {
    position: absolute;
    content: "";
    right: -65px;
    bottom: 50%;
    transform: translate(0, 50%);
    width: 52px;
    height: 12px;
    background-image: url("../images/shape/right.svg");
    background-repeat: no-repeat;
}

@media (max-width: 767px) {
    .subtitle__icon::before,
    .subtitle__icon::after {
        display: none;
    }
}

@keyframes slideUp {
    0% {
        transform: translateY(5%);
        opacity: 0.2;
    }

    100% {
        transform: translateY(0);
        opacity: 1;
    }
}

@keyframes zoom {
    0% {
        transform: scale(1);
        opacity: 1;
    }

    100% {
        transform: scale(1.1);
        opacity: 1;
    }
}

/* slider animation settings */
.banner__slider .swiper-slide-active .banner__slider__image {
    animation: zoom 7s forwards;
}

.banner__slider .swiper-slide-active .banner__slide__content .subtitle__icon {
    animation-delay: 1.4s;
    animation: fadeInUp 2s forwards;
}

.banner__slider .swiper-slide-active .banner__slide__content h1 {
    animation-delay: 1s;
    animation: fadeInUp 2s forwards;
}

.banner__slider .swiper-slide-active .banner__slide__content .sub__text {
    animation-delay: 1.2s;
    animation: fadeInUp 2s forwards;
}

.banner__slider .swiper-slide-active .banner__slide__content .theme-btn {
    animation-delay: 1.4s;
    animation: fadeInUp 2s forwards;
}

/* banner slider navigation */
.banner__slider:hover .rts__slider__nav {
    opacity: 1;
}

@media (max-width: 768px) {
    .rts__slider__nav {
        display: none;
    }
}

.rts__slider__nav {
    opacity: 0;
    transition: all 0.4s ease;
    position: absolute;
    left: 0;
    right: 0;
    width: auto;
    padding: 0 60px;
    display: flex;
    z-index: 9999;
    bottom: 50%;
    justify-content: space-between;
    transform: translate(0, -50%);
    pointer-events: none;
}

.rts__slider__nav .rts__slide {
    pointer-events: auto;
    cursor: pointer;
}

.rts__slider__nav .prev {
    position: relative;
}

.rts__slider__nav .next {
    position: relative;
}

.banner__slider {
    width: 100%;
    height: 100%;
    position: relative;
}

.banner__height {
    height: 940px;
}

@media (max-width: 992px) {
    .banner__height {
        height: auto;
    }
}


.offer-badge-container {
    position: absolute;
    bottom: 40px;
    left: 20px;
    flex-direction: column;
    align-items: flex-end;
    z-index: 10;
}

.offer-badge {
    background: linear-gradient(135deg, #e74c3c 0%, #c0392b 100%);
    color: #ffffff;
    padding: 8px 16px;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 600;
    box-shadow: 0 4px 12px rgba(231, 76, 60, 0.3);
    white-space: nowrap;
}

.offer-expiry-badge {
    background: rgba(0, 0, 0, 0.25);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border: 1px solid rgba(255, 255, 255, 0.1);
    color: #ffffff;
    padding: 5px 12px;
    border-radius: 20px;
    font-size: 11px;
    font-weight: 700;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
    animation: slideInRight 0.5s ease-out forwards;
}

.offer-expiry-badge.urgent {
    background: rgba(231, 76, 60, 0.85);
    border-color: rgba(255, 255, 255, 0.4);
    box-shadow: 0 0 15px rgba(231, 76, 60, 0.4);
    animation: slideInRight 0.5s ease-out forwards,
    pulseRed 2s infinite;
}

@keyframes slideInRight {
    from {
        opacity: 0;
        transform: translateX(20px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes pulseRed {
    0% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.03);
    }
    100% {
        transform: scale(1);
    }
}

[dir="rtl"] .offer-badge-container {
    left: auto !important;
    right: 20px !important;
    align-items: flex-end;
}

/* RTL Specific Badge Styles */
[dir="rtl"] .offer-expiry-badge {
    animation: slideInLeft 0.5s ease-out forwards;
    direction: rtl;
    float: right;
}

@keyframes slideInLeft {
    from {
        opacity: 0;
        transform: translateX(-20px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}
