/* hero-section start */
.hero {
    position: relative;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.hero .overlay {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
    background: rgba(7, 20, 49, 0.5);
}
.hero-content {
    position: relative;
    padding-top: 20%;
    padding-bottom: 20%;
    width: 85%;
    margin-left: auto;
    margin-right: auto;
}
.hero-content .back-btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px;
    margin-bottom: 40px;
    color: var(--white);
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: 150%;
}
html[dir="rtl"] .hero-content .back-btn svg {
    -webkit-transform: scaleX(-1);
    -ms-transform: scaleX(-1);
    transform: scaleX(-1);
}
.hero-content .hero-title-pri {
    color: #fff;
    text-align: center;
    font-size: 56px;
    font-style: normal;
    font-weight: 800;
    line-height: 120%;
    margin-bottom: 48px;
}
.booking-form,
.form-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background: var(--background-pri);
    padding: 8px 8px 8px 40px;
    border-radius: 999px;
    height: 100px;
}
html[dir="rtl"] .booking-form {
    padding: 8px 40px 8px 8px;
}
html[dir="rtl"] .booking-form .form-element > label {
    text-align: right;
}
.booking-form .form-element {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    border: none;
    padding: 0 8px;
    gap: 6px;
}
.booking-form .form-element > label {
    color: var(--text-primary);
    font-size: 14px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%;
    width: 100%;
    text-align: left;
}
.booking-form .form-element > input {
    border: none;
    color: var(--text-primary);
    font-size: 18px;
    font-style: normal;
    font-weight: 600;
    line-height: 150%;
    width: 100%;
    outline: none;
}
.booking-form .form-element > input::-webkit-input-placeholder {
    color: var(--text-third);
}
.booking-form .form-element > input::-moz-placeholder {
    color: var(--text-third);
}
.booking-form .form-element > input:-ms-input-placeholder {
    color: var(--text-third);
}
.booking-form .form-element > input::-ms-input-placeholder {
    color: var(--text-third);
}
.booking-form .form-element > input::placeholder {
    color: var(--text-third);
}
.booking-form .separator {
    height: 80%;
    width: 1px;
    background: var(--border-pri);
    margin: auto 14px;
}
.booking-form button[type="submit"] {
    width: 218px;
    height: 100%;
}
.booking-form button[type="submit"]:hover svg path {
    stroke: var(--accent-pri);
}
.search-input input {
    display: none;
}
.review-search .search-input input {
    display: block;
}
.filter-icon {
    border: none;
    position: absolute;
    display: none;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    right: 20px;
}
html[dir="rtl"] .filter-icon {
    left: 20px;
    right: auto;
}
.form-container {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    background-color: #fff;
    -webkit-box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    padding: 20px;
    z-index: 999;
}
.people-dropdown {
    display: none;
    z-index: 50;
}
.people-dropdown.show {
    display: block;
}
.people-dropdown .people-dropdown-content {
    max-height: 300px;
    height: 100%;
    padding-left: 20px;
    padding-right: 20px;
    border-radius: 10px;
    background: var(--white);
    -webkit-box-shadow: 0 3px 12px 0 rgb(0 0 0/0.15);
    box-shadow: 0 3px 12px 0 rgb(0 0 0/0.15);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    overflow: auto;
    scrollbar-width: none;
}
.people-dropdown-content > * + * {
    border-top: 1px solid var(--border-pri);
    border-bottom: none;
}
.people-dropdown-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 20px;
    padding-top: 20px;
    padding-bottom: 20px;
}
.people-dropdown-item .item-title {
    color: var(--text-primary);
    font-size: 16px;
    font-weight: 700;
    line-height: 15px;
}
.people-dropdown-item .item-tagline {
    color: var(--text-secondary);
    font-size: 14px;
}
.people-dropdown-item .item-counters {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px;
}
.people-dropdown-item .item-counters .item-counter {
    --size: 25px;
    width: var(--size);
    height: var(--size);
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    border-radius: 999px;
    background: none;
    border: 1px solid var(--text-primary);
}
.people-dropdown-item .item-count {
    width: 20px;
    text-align: center;
}
.people-dropdown-item .item-counters .item-counter svg {
    width: 40%;
}
.people-dropdown-item .item-counters .item-counter:disabled {
    opacity: 0.5;
    cursor: not-allowed;
}
/* hero-section end */

/* =================================================== Hero second styles start =================================================== */
.hero-sec {
    position: relative;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}
.hero-sec .hero-title-pri {
    text-align: left;
}
html[dir="rtl"] .hero-sec .hero-title-pri {
    text-align: right;
}
.hero-sec .hero-content {
    padding-top: 100px;
    padding-bottom: 100px;
    width: 100%;
}
.hero-sec .hero-content .hero-title-pri {
    margin-bottom: 0;
}
.hero-sec .overlay {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
    background: rgba(7, 20, 49, 0.5);
}
/* =================================================== Hero second styles end =================================================== */

/* =================================================== special offer styles start =================================================== */
.special-offer-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 24px;
    gap: 24px;
    border-radius: 16px;
    background: var(--background-pri);
    -webkit-box-shadow: 0px 8px 24px 0px rgba(0, 66, 153, 0.08);
    box-shadow: 0px 8px 24px 0px rgba(0, 66, 153, 0.08);
}
.special-offer-item .special-offer-img {
    height: 150px;
    aspect-ratio: 16/9;
    border-radius: 8px;
    overflow: hidden;
}
.special-offer-item .special-offer-img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
}
.special-offer-item > div {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 8px;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}
.special-offer-item .special-offer-title {
    font-size: 24px;
    font-style: normal;
    font-weight: 800;
    line-height: 120%;
}
.special-offer-item .special-offer-text {
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
}
.special-offer-item .button {
    margin-top: auto;
}
.search-input svg {
    display: none;
}
.view-more-btn {
    display: none;
}
/* =================================================== special offer styles end =================================================== */

/* =================================================== explore styles start =================================================== */
.exp-items {
    display: -ms-grid;
    display: grid;
    gap: 40px;
    -ms-grid-columns: 1fr 40px 1fr 40px 1fr;
    grid-template-columns: repeat(3, 1fr);
}
/* =================================================== explore styles end =================================================== */

/* =================================================== choose section styles start =================================================== */
.choose-items {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 40px 1fr 40px 1fr;
    grid-template-columns: repeat(3, 1fr);
    gap: 40px;
}
.choose-item {
    padding: 24px;
    border-radius: 16px;
    background: var(--background-pri);
    -webkit-box-shadow: 0px 8px 24px 0px rgba(0, 66, 153, 0.08);
    box-shadow: 0px 8px 24px 0px rgba(0, 66, 153, 0.08);
    border: 1px solid var(--background-pri);
    -webkit-transition: border-color 0.3s ease;
    -o-transition: border-color 0.3s ease;
    transition: border-color 0.3s ease;
}
.choose-item:hover {
    border-color: var(--accent-pri);
}
.choose-item > * + * {
    margin-top: 10px;
}
.choose-item .choose-item-icon {
    width: 50px;
}
.choose-item .choose-item-title {
    color: var(--text-primary);
    font-size: 24px;
    font-style: normal;
    font-weight: 800;
    line-height: 140%;
}
.choose-item .choose-item-text {
    color: var(--text-secondary);
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: 150%;
}
/* =================================================== choose section styles end =================================================== */

/* =================================================== type section styles start =================================================== */
.type-items {
    display: -ms-grid;
    display: grid;
    gap: 32px;
    -ms-grid-columns: 1fr 32px 1fr 32px 1fr;
    grid-template-columns: repeat(3, 1fr);
}
.type-item .type-item-img {
    border-radius: 16px;
    overflow: hidden;
    padding: 24px;
    width: 100%;
    aspect-ratio: 16/9;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    z-index: 0;
    background-position: center 10%;
    background-size: cover;
    background-repeat: no-repeat;
}

.type-item .overlay {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    background: -webkit-gradient(
        linear,
        left top, left bottom,
        color-stop(70%, rgba(255, 255, 255, 0)),
        to(#032043)
    );
    background: -o-linear-gradient(
        top,
        rgba(255, 255, 255, 0) 70%,
        #032043 100%
    );
    background: linear-gradient(
        180deg,
        rgba(255, 255, 255, 0) 70%,
        #032043 100%
    );
}
.type-item .type-item-img .text {
    color: var(--white, #fff);
    font-size: 32px;
    font-style: normal;
    font-weight: 500;
    line-height: 120%;
    margin-top: auto;
}
.type-item .text {
    margin-top: 10px;
    color: var(--text-secondary);
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: 150%;
}
/* =================================================== type section styles end =================================================== */

/* =================================================== feature section styles start =================================================== */
.feature-items {
    display: -ms-grid;
    display: grid;
    gap: 30px;
    -ms-grid-columns: 1fr 30px 1fr 30px 1fr 30px 1fr;
    grid-template-columns: repeat(4, 1fr);
}
.feature-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 10px;
    text-align: center;
    padding: 32px;
    border-radius: 10px;
    background: var(--background-pri);
    overflow: hidden;
    -webkit-box-shadow: 0px 8px 24px 0px rgba(0, 66, 153, 0.08);
    box-shadow: 0px 8px 24px 0px rgba(0, 66, 153, 0.08);
    border: 1px solid var(--background-pri);
    -webkit-transition: border-color 0.3s ease;
    -o-transition: border-color 0.3s ease;
    transition: border-color 0.3s ease;
}
.feature-item:hover {
    border-color: var(--accent-pri);
}
.feature-item .feature-item-icon {
    width: 50px;
}
.feature-item .feature-title {
    color: var(--text-primary);
    font-size: 20px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%;
}
.feature-item .feature-text {
    color: var(--text-secondary);
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: 150%;
}
/* =================================================== feature section styles end =================================================== */

/* =================================================== faq section styles start =================================================== */
.faq-accordion {
    max-width: 900px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
}
.faq-accordion > * + * {
    margin-top: 20px;
}
.faq-accordion .accordion-item {
    border: none;
}
.faq-accordion .accordion-item .accordion-button::after {
    --size: 30px;
    background-image: url("data:image/svg+xml,%3Csvg%20width%3D%2236%22%20height%3D%2236%22%20viewBox%3D%220%200%2036%2036%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Ccircle%20cx%3D%2218%22%20cy%3D%2218%22%20r%3D%2217.25%22%20stroke%3D%22%230B0B0B%22%20stroke-width%3D%221.5%22%2F%3E%3Cpath%20d%3D%22M18%2012.75V23.25Z%22%20fill%3D%22%230B0B0B%22%2F%3E%3Cpath%20d%3D%22M12.75%2018H23.25Z%22%20fill%3D%22%230B0B0B%22%2F%3E%3Cpath%20d%3D%22M18%2012.75V23.25M12.75%2018H23.25%22%20stroke%3D%22%230B0B0B%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E");
    width: var(--size);
    height: var(--size);
    background-size: contain;
}
html[dir="rtl"] .faq-accordion .accordion-item .accordion-button::after {
    margin-right: auto;
    margin-left: 0;
}
.faq-accordion .accordion-item .accordion-button:focus:not(:focus-visible) {
    -webkit-box-shadow: none;
    box-shadow: none;
}
.faq-accordion .accordion-item .accordion-button:not(.collapsed) {
    background: none;
    -webkit-box-shadow: none;
    box-shadow: none;
}
.faq-accordion .accordion-item .accordion-button:not(.collapsed)::after {
    background-image: url("data:image/svg+xml,%3Csvg%20width%3D%2236%22%20height%3D%2236%22%20viewBox%3D%220%200%2036%2036%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Ccircle%20cx%3D%2218%22%20cy%3D%2218%22%20r%3D%2218%22%20fill%3D%22%231E84FE%22%2F%3E%3Cpath%20d%3D%22M12.75%2018H23.25H12.75Z%22%20fill%3D%22white%22%2F%3E%3Cpath%20d%3D%22M12.75%2018H23.25%22%20stroke%3D%22white%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E");
}
.faq-accordion .accordion-item:has(.accordion-button:not(.collapsed)) {
    -webkit-box-shadow: 0px 8px 24px 0px rgba(0, 66, 153, 0.08);
    box-shadow: 0px 8px 24px 0px rgba(0, 66, 153, 0.08);
}
.faq-accordion .accordion-item {
    border-radius: 8px;
    background: var(--background-pri);
    overflow: hidden;
}
.faq-accordion .accordion-item .accordion-button {
    color: var(--text-primary);
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%;
}
.faq-accordion .accordion-body {
    color: var(--text-secondary);
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
    padding-top: 0;
}
/* =================================================== faq section styles end =================================================== */

/* =================================================== blog section styles start =================================================== */
.blog-items {
    display: -ms-grid;
    display: grid;
    gap: 40px;
    -ms-grid-columns: 1fr 40px 1fr 40px 1fr;
    grid-template-columns: repeat(3, 1fr);
}
.blog-item {
    border-radius: 24px;
    overflow: hidden;
    background: var(--background-pri);
    -webkit-box-shadow: 0px 8px 24px 0px rgba(0, 66, 153, 0.08);
    box-shadow: 0px 8px 24px 0px rgba(0, 66, 153, 0.08);
}
.blog-item .blog-img {
    width: 100%;
    border-radius: 20px;
    overflow: hidden;
    height: 300px;
}
.blog-item .blog-img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
    -webkit-transition: -webkit-transform 0.3s ease;
    transition: -webkit-transform 0.3s ease;
    -o-transition: transform 0.3s ease;
    transition: transform 0.3s ease;
    transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}
.blog-item:hover .blog-img img {
    -webkit-transform: scale(1.02);
    -ms-transform: scale(1.02);
    transform: scale(1.02);
}
.blog-item .blog-content {
    padding: 24px;
    margin-top: -20px;
    padding-top: 40px;
    border-radius: 0 0 24px 24px;
    overflow: hidden;
    border-width: 0 1px 1px 1px;
    border-style: solid;
    border-color: var(--white);
    -webkit-transition: border-color 0.3s ease;
    -o-transition: border-color 0.3s ease;
    transition: border-color 0.3s ease;
}
.blog-item:hover .blog-content {
    border-color: var(--accent-pri);
}
.blog-item .blog-content > * + * {
    margin-top: 24px;
}
.blog-time {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px;
    color: var(--text-secondary);
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: 150%;
}
.blog-item .details {
    color: var(--text-primary);
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%;
}
.blog-footer {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.blog-footer .client-details {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px;
    color: var(--text-secondary);
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
}
.blog-footer .client-img {
    --size: 40px;
    width: var(--size);
    height: var(--size);
    border-radius: 999px;
    overflow: hidden;
}
.blog-footer .client-img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
}
.blog-footer .button:hover svg path {
    fill: var(--accent-pri);
}
/* =================================================== blog section styles end =================================================== */

/* =================================================== listing section styles start =================================================== */
.listing-header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 10px;
}
.listing-title {
    color: var(--text-primary);
    font-size: 48px;
    font-style: normal;
    font-weight: 800;
    line-height: 120%;
}
.listing-text {
    color: var(--text-primary);
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: 150%;
}
.listing-actions {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px;
}
.listing-actions .filter-search-button {
    display: none;
}
.listing-actions .select2 {
    min-width: 120px !important;
    width: auto !important;
}
.listing-content {
    margin-top: 20px;
}
.listing-filters {
    border-radius: 24px;
    border: 1px solid var(--border-pri);
    padding: 24px;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    background: var(--white);
}
.listing-filters > * + * {
    margin-top: 20px;
}
.listing-filters.responsive-filters {
    position: fixed;
    top: 0;
    right: 0;
    z-index: 90;
    display: none;
    max-width: 500px;
    width: 100%;
    border-radius: 10px;
    padding: 15px;
}
.listing-filters.responsive-filters.show {
    display: block;
    height: 50vh;
    overflow-y: auto;
    scrollbar-width: none;
}
.filter-location-map {
    height: 350px;
}
.listing-results {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 40px 1fr;
    grid-template-columns: repeat(2, 1fr);
    gap: 40px;
}
.listing-actions .select2 .select2-selection {
    border-radius: 12px;
    border-color: #a6aab5;
}
/* =================================================== listing section styles end =================================================== */

/* =================================================== All villas section styles start =================================================== */
.all-villas-section .all-villas {
    display: -ms-grid;
    display: grid;
    gap: 40px;
    -ms-grid-columns: 1fr 40px 1fr 40px 1fr;
    grid-template-columns: repeat(3, 1fr);
}
/* =================================================== All villas section styles end =================================================== */

/* =================================================== All blog section styles start =================================================== */
.all-blog-section .all-blogs {
    display: -ms-grid;
    display: grid;
    gap: 40px;
    -ms-grid-columns: 1fr 40px 1fr 40px 1fr;
    grid-template-columns: repeat(3, 1fr);
}
.testimonial-section {
    padding: 80px 0;
}
/* =================================================== All blog section styles end =================================================== */

/* =================================================== Contact section styles start =================================================== */
.contact-from-section {
    border-radius: 24px;
    border: 1px solid var(--border-pri);
    background: #f5f6f7;
    padding: 32px;
}
.contact-img {
    width: 80%;
}
.contact-from-title {
    color: var(--text-primary);
    font-size: 32px;
    font-style: normal;
    font-weight: 800;
    line-height: 120%;
    margin-bottom: 32px;
}
.contact-form {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 12px;
}
.contact-input {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 8px;
}
.contact-input label {
    color: var(--text-primary);
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%;
}
.contact-input input,
.contact-input textarea {
    border-radius: 12px;
    border: 1px solid var(--border-pri);
    background: var(--background-pri);
    padding: 12px 18px;
    outline: none;
    color: var(--text-primary);
    font-size: 18px;
    font-style: normal;
    font-weight: 500;
    line-height: 150%;
}
.contact-input input::-webkit-input-placeholder, .contact-input textarea::-webkit-input-placeholder {
    color: var(--text-secondary);
}
.contact-input input::-moz-placeholder, .contact-input textarea::-moz-placeholder {
    color: var(--text-secondary);
}
.contact-input input:-ms-input-placeholder, .contact-input textarea:-ms-input-placeholder {
    color: var(--text-secondary);
}
.contact-input input::-ms-input-placeholder, .contact-input textarea::-ms-input-placeholder {
    color: var(--text-secondary);
}
.contact-input input::placeholder,
.contact-input textarea::placeholder {
    color: var(--text-secondary);
}
.contact-input textarea {
    resize: none;
    height: 200px;
}
.contact-input input[type="number"]::-webkit-inner-spin-button,
.contact-input input[type="number"]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    appearance: none;
}
.contact-checkbox {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 10px;
    color: var(--text-primary);
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: 150%;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    margin-top: 20px;
    margin-bottom: 20px;
}
.contact-checkbox input[type="checkbox"] {
    width: 18px;
    height: 18px;
    margin-top: 6px;
}
/* =================================================== Contact section styles end =================================================== */

/* =================================================== Search page styles start =================================================== */
.result-breadcrumb.breadcrumb {
    --bs-breadcrumb-item-padding-x: 5px;
    --bs-breadcrumb-divider: ">";
    border-radius: 999px;
    border: 1px solid var(--text-secondary);
    padding: 8px 16px;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
}
.result-breadcrumb.breadcrumb li,
.result-breadcrumb.breadcrumb li > * {
    color: var(--text-secondary);
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%;
}
/* =================================================== Search page styles end =================================================== */

/* =================================================== villa feature image styles start =================================================== */
.feature-img-box {
    cursor: pointer;
}
.portal-body {
    position: fixed;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    inset: 0;
    z-index: 1000;
    width: 100%;
    height: 100vh;
}
.portal-body .portal-content {
    position: relative;
    max-width: 600px;
    padding: 8px;
    width: 100%;
    height: 50vh;
    background: var(--white);
    opacity: 0;
    -webkit-transform: scale(0.95);
    -ms-transform: scale(0.95);
    transform: scale(0.95);
    -webkit-animation: portalContentAnimation 0.5s ease forwards;
    animation: portalContentAnimation 0.5s ease forwards;
}
@-webkit-keyframes portalContentAnimation {
    to {
        opacity: 1;
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}
@keyframes portalContentAnimation {
    to {
        opacity: 1;
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}
.portal-body .portal-overlay {
    position: absolute;
    z-index: -1;
    width: 100%;
    height: 100vh;
    background: rgba(0, 0, 0, 0.5);
}
.portal-body .portal-content .portal-feature-img {
    width: 100%;
    height: 100%;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
}
.portal-body .portal-prev-button,
.portal-body .portal-next-button {
    --size: 40px;
    position: absolute;
    border: none;
    width: var(--size);
    height: var(--size);
    font-size: 24px;
    background: var(--white);
    border-radius: 999px;
    top: 50%;
    margin-left: 10px;
    margin-right: 10px;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}
.portal-body .portal-prev-button {
    right: 100%;
}
.portal-body .portal-next-button {
    left: 100%;
}
/* =================================================== villa feature image styles end =================================================== */

/* =================================================== villa details page styles start =================================================== */
.villa-details {
    margin-top: 20px;
    margin-bottom: 20px;
}
.villa-details .back-btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px;
    color: var(--text-primary);
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: 150%;
    margin-bottom: 30px;
}
html[dir="rtl"] .villa-details .back-btn svg{
    -webkit-transform: scaleX(-1);
    -ms-transform: scaleX(-1);
    transform: scaleX(-1);
}
.villa-details .top-tag {
    border-radius: 999px;
    display: inline-block;
    background: #f0f8fe;
    padding: 4px 16px;
    color: var(--accent-pri);
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    line-height: 150%;
}
.villa-details .title {
    color: var(--text-primary);
    font-size: 40px;
    font-style: normal;
    font-weight: 800;
    line-height: 120%;
    margin-top: 8px;
}
.villa-details .villa-location {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 5px;
    color: #6a7283;
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: 150%;
    margin-top: 16px;
    margin-bottom: 16px;
}
.villa-details .villa-ratings {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px;
}
/* html[dir="rtl"] .villa-details .villa-ratings{
    flex-direction: row-reverse;
} */
.villa-details .villa-rating-starts {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 5px;
}
.villa-details .villa-ratings .villa-rating {
    color: var(--text-primary);
    font-size: 18px;
    font-style: normal;
    font-weight: 800;
    line-height: 150%;
}
.villa-details .villa-ratings .villa-reviews {
    color: var(--text-primary);
    font-size: 18px;
    font-style: normal;
    font-weight: 600;
    line-height: 150%;
    text-decoration: underline;
    margin-right: auto;
}
html[dir="rtl"] .villa-details .villa-ratings .villa-reviews{
    margin-left: auto;
    margin-right: 0;
}
.villa-details .villa-ratings .action-btn {
    background: none;
    border: none;
    color: var(--text-primary);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 18px;
    font-style: normal;
    font-weight: 600;
    line-height: 150%;
    text-decoration: underline;
}
.villa-feature-images {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 24px 1fr 24px 1fr 24px 1fr;
    grid-template-columns: repeat(4, 1fr);
    -ms-grid-rows: 260px 24px 260px;
    grid-template-rows: repeat(2, 260px);
    gap: 24px;
    margin-top: 20px;
    margin-bottom: 20px;
}
.villa-feature-images > *:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
}
.villa-feature-images > *:nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
}
.villa-feature-images > *:nth-child(3) {
    -ms-grid-row: 1;
    -ms-grid-column: 5;
}
.villa-feature-images > *:nth-child(4) {
    -ms-grid-row: 1;
    -ms-grid-column: 7;
}
.villa-feature-images > *:nth-child(5) {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
}
.villa-feature-images > *:nth-child(6) {
    -ms-grid-row: 3;
    -ms-grid-column: 3;
}
.villa-feature-images > *:nth-child(7) {
    -ms-grid-row: 3;
    -ms-grid-column: 5;
}
.villa-feature-images > *:nth-child(8) {
    -ms-grid-row: 3;
    -ms-grid-column: 7;
}
.villa-feature-images .villa-feature-image {
    border-radius: 8px;
    overflow: hidden;
}
.villa-feature-images .villa-feature-image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
    -webkit-transition: -webkit-transform 0.3s ease;
    transition: -webkit-transform 0.3s ease;
    -o-transition: transform 0.3s ease;
    transition: transform 0.3s ease;
    transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}
.villa-feature-images .villa-feature-image:hover img {
    -webkit-transform: scale(1.02);
    -ms-transform: scale(1.02);
    transform: scale(1.02);
}
.villa-feature-images .big-img {
    -ms-grid-column-span: 2;
    grid-column: span 2 / span 2;
    -ms-grid-row-span: 2;
    grid-row: span 2 / span 2;
}
.villa-feature-images .vertical-img {
    -ms-grid-row-span: 2;
    grid-row: span 2 / span 2;
}
.villa-feature-images .small-img {
    width: 100%;
    height: 100%;
}
.villa-feature-images .villa-feature-image.last-img {
    position: relative;
}
.villa-feature-images .villa-feature-image.last-img .overlay {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    background: -webkit-gradient(
        linear,
        left bottom, left top,
        from(rgba(0, 0, 0, 0.6)),
        to(rgba(0, 0, 0, 0.6))
    );
    background: -o-linear-gradient(
        bottom,
        rgba(0, 0, 0, 0.6) 0%,
        rgba(0, 0, 0, 0.6) 100%
    );
    background: linear-gradient(
        0deg,
        rgba(0, 0, 0, 0.6) 0%,
        rgba(0, 0, 0, 0.6) 100%
    );
}
.villa-feature-images .villa-feature-image.last-img .show-more-btn {
    position: absolute;
    z-index: 10;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    bottom: 5%;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 8px;
    border-radius: 999px;
    padding: 4px 10px;
    border: none;
    background: var(--white);
    text-wrap: nowrap;
    color: var(--text-primary);
    font-size: 14px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%;
}
.villa-feature-images .villa-feature-image.last-img .show-more-btn img {
    width: 24px;
}
.villa-details .villa-item-details {
    margin-top: 24px;
    margin-bottom: 24px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px;
}
.villa-details .villa-details-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 5px;
    color: #6a7283;
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: 150%;
}
.villa-details .villa-text {
    color: var(--text-secondary);
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
}
.villa-details .villa-text b {
    color: var(--text-primary);
    font-weight: 700;
}
.related-items {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 40px 1fr 40px 1fr;
    grid-template-columns: repeat(3, 1fr);
    gap: 40px;
}
.book-section {
    position: relative;
    margin-top: 30px;
}
.book-form-container {
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    position: sticky;
    top: 100px;
}
.book-form-container .inner {
    border-radius: 24px;
    border: 1px solid var(--border-pri);
    padding: 32px;
    margin-bottom: 30px;
}
.book-form-container .form-bottom-btn {
    width: 100%;
    border-radius: 999px;
    border: 1px solid var(--accent-pri);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 12px;
    color: var(--accent-pri);
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 130%;
    margin-top: 20px;
    padding: 12px 16px;
}
.book-form-container .top {
    color: var(--text-secondary);
    font-size: 18px;
    font-style: normal;
    font-weight: 600;
    line-height: 140%;
    margin-bottom: 20px;
}
.book-form-container .top span {
    color: var(--text-primary);
    font-size: 32px;
    font-style: normal;
    font-weight: 800;
    line-height: 140%;
}
.book-form-container .text {
    color: var(--text-secondary);
    text-align: center;
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: 150%;
    margin-top: 16px;
    margin-bottom: 16px;
}
.book-field,
.book-select {
    position: relative;
    width: 100%;
}
.book-select {
    margin-top: 10px;
}
.book-select .select2 {
    width: 100% !important;
    height: 70px !important;
}
.book-select .select2 .selection {
    height: 100%;
    display: block;
}
.book-select .select2 .select2-selection {
    height: 100%;
    border-radius: 16px;
    border-color: var(--border-pri);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.book-field img,
.book-select img {
    position: absolute;
    top: 10px;
    width: 24px;
    left: 10px;
    z-index: 10;
    pointer-events: none;
}
html[dir="rtl"] .book-field img,
html[dir="rtl"] .book-select img{
    left: auto;
    right: 10px;
}

.book-field label,
.book-select label {
    position: absolute;
    top: 10px;
    left: 40px;
    z-index: 10;
    pointer-events: none;
    color: var(--text-secondary);
    font-size: 14px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%;
}
html[dir="rtl"] .book-field label,
html[dir="rtl"] .book-select label {
    left: auto;
    right: 40px;
}

.book-field input {
    width: 100%;
    padding-left: 40px;
    padding-top: 30px;
    padding-bottom: 10px;
    padding-right: 10px;
    outline: none;
    border: none;
    color: var(--text-primary);
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%;
    vertical-align: bottom;
    border: 1px solid var(--border-pri);
    border-radius: 16px;
}
.book-select
.select2-container
.select2-selection--single
.select2-selection__rendered {
    padding-left: 40px;
    padding-top: 20px;
}
.book-select label {
    left: 50px;
}
.book-field input::-webkit-input-placeholder {
    color: var(--text-secondary);
    vertical-align: bottom;
}
.book-field input::-moz-placeholder {
    color: var(--text-secondary);
    vertical-align: bottom;
}
.book-field input:-ms-input-placeholder {
    color: var(--text-secondary);
    vertical-align: bottom;
}
.book-field input::-ms-input-placeholder {
    color: var(--text-secondary);
    vertical-align: bottom;
}
.book-field input::placeholder {
    color: var(--text-secondary);
    vertical-align: bottom;
}
.details-title {
    color: var(--text-primary);
    font-size: 32px;
    font-style: normal;
    font-weight: 800;
    line-height: 120%;
    margin-top: 50px;
    margin-bottom: 20px;
}
.details-title-2 {
    color: var(--text-primary);
    font-size: 20px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%;
}
.book-section .author {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 16px;
}
.book-section .author figure {
    --size: 48px;
    width: var(--size);
    height: var(--size);
    border-radius: 999px;
    overflow: hidden;
}
.book-section .author figure img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
}
.book-section .author .name {
    color: var(--text-primary);
    font-size: 24px;
    font-style: normal;
    font-weight: 800;
    line-height: 130%;
}
.book-section .author .time {
    color: var(--text-secondary);
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: 130%;
}
.book-section .villa-feature-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 15px;
    margin-top: 20px;
}
.book-section .villa-feature-item img {
    width: 24px;
}
.book-section .villa-feature-item .feature-item-name {
    color: var(--text-primary);
    font-size: 20px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%;
}
.book-section .villa-feature-item .feature-details {
    color: var(--text-secondary);
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: 150%;
}
.book-section .facilities {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 20px;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.book-section .facilities-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 12px;
    color: var(--text-primary);
    font-size: 18px;
    font-style: normal;
    font-weight: 600;
    line-height: 150%;
}
.rating-title {
    color: var(--text-primary);
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%;
}
.book-section .ratings {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    color: var(--text-secondary);
    font-family: Manrope;
    font-size: 48px;
    font-style: normal;
    font-weight: 800;
    line-height: 120%;
}
.book-section .ratings span {
    color: var(--text-primary);
}
.book-section .ratings .starts {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 5px;
}
.book-section .review-progress-items > * + * {
    margin-top: 16px;
}
.book-section .review-progress-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 24px;
    margin-top: 20px;
    text-wrap: nowrap;
}
.book-section .review-progress-item .name {
    color: var(--text-secondary);
    font-size: 18px;
    font-style: normal;
    font-weight: 600;
    line-height: 150%;
    min-width: 200px;
}
.book-section .review-progress-item .review-progress {
    width: 230px;
    height: 6px;
    background: #dfe0e4;
    position: relative;
}
.book-section .review-progress-item .review-progress::before {
    position: absolute;
    content: "";
    height: 100%;
    width: var(--percentage);
    background: var(--accent-sec);
    top: 0;
    left: 0;
}
.book-section .review-progress-item .review-progress-ratings {
    color: var(--text-primary);
    font-size: 18px;
    font-style: normal;
    font-weight: 500;
    line-height: 150%;
}
.book-price-table .book-price-top > * + * {
    margin-top: 12px;
}
.book-price-table .book-price-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.book-price-table .book-price-item .book-price-left {
    color: var(--text-primary);
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: 150%;
}
.book-price-table .book-price-item .book-price-right {
    color: var(--text-primary);
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: 150%;
}
.book-price-table .book-price-separator {
    width: 100%;
    border-top: 1px solid var(--border-pri);
    margin-top: 16px;
    margin-bottom: 16px;
}
.book-price-table .book-price-footer {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px;
}
.book-select
.select2-container--default
.select2-selection--multiple
.select2-selection__choice {
    margin-top: 30px;
    background: transparent;
}
.book-price-table .book-price-footer .book-price-footer-left {
    color: var(--text-primary);
    font-size: 24px;
    font-style: normal;
    font-weight: 600;
    line-height: 150%;
}
.book-price-table .book-price-footer .book-price-footer-right {
    color: var(--text-primary);
    font-size: 32px;
    font-style: normal;
    font-weight: 800;
    line-height: 120%;
}
.filter-container {
    border-radius: 16px;
    border: 1px solid var(--border-pri);
    padding: 24px;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    position: sticky;
    top: 100px;
}
.review-search {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 30px;
}
.review-search > div {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 10px;
}
.review-search > div:first-child {
    width: 70%;
}
.review-search > div:last-child {
    width: 30%;
}
.review-search .search-input {
    position: relative;
    width: 100%;
}
.review-search .search-input svg {
    position: absolute;
    top: 50%;
    left: 3%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    pointer-events: none;
}
.review-search .search-input input {
    border-radius: 8px;
    border: 1px solid var(--border-pri);
    padding: 10px 16px;
    padding-left: 40px;
    width: 100%;
    outline: none;
}
.review-search .select2 {
    width: 100% !important;
}
.review-search .select2 .select2-selection {
    border-color: var(--border-pri);
    border-radius: 8px;
}
.villa-review-items {
    margin-top: 20px;
    max-height: 60vh;
    padding-left: 20px;
    padding-right: 20px;
    overflow-y: auto;
    scrollbar-width: none;
}
.villa-review-items > * + * {
    margin-top: 20px;
}
.villa-review-item {
    border-radius: 16px;
    background: var(--white);
    -webkit-box-shadow: 0px 8px 24px 0px rgba(0, 66, 153, 0.08);
    box-shadow: 0px 8px 24px 0px rgba(0, 66, 153, 0.08);
    padding: 24px;
}
.villa-review-item .top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 20px;
    margin-bottom: 10px;
}
.villa-review-item .review-stars {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 5px;
}
.villa-review-item .author {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px;
    margin-top: 10px;
    margin-bottom: 10px;
}
.villa-review-item .author figure {
    --size: 50px;
}
.villa-review-item .author .name {
    color: var(--text-primary);
    font-family: Manrope;
    font-size: 20px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%;
}
.villa-review-item .author .tagline {
    color: var(--text-secondary);
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: 150%;
}
.villa-review-item .review-details {
    color: var(--text-primary);
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: 150%;
    font-style: italic;
}
/* =================================================== villa details page styles end =================================================== */

/* =================================================== checkout page styles start =================================================== */
.details-container {
    border: 1px solid var(--border-pri);
    border-radius: 24px;
    padding: 34px;
    width: 90%;
}
.checkout-container .top-remain {
    border-radius: 12px;
    background: rgba(255, 157, 0, 0.1);
    padding: 8px 12px;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px;
    color: var(--text-primary);
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%;
}
.checkout-container .title {
    color: var(--text-primary);
    font-family: Manrope;
    font-size: 32px;
    font-style: normal;
    font-weight: 800;
    line-height: 120%;
    margin-top: 24px;
    margin-bottom: 10px;
}
.checkout-container .bottom-remain {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 8px;
    color: #e30000;
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: 150%;
}
html[dir="rtl"] .checkout-container .bottom-remain {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}
.checkout-container .md-title {
    color: var(--text-primary);
    font-family: Manrope;
    font-size: 20px;
    font-style: normal;
    font-weight: 800;
    line-height: 120%;
}
.checkout-container .meta-data-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-bottom: 10px;
}
html[dir="rtl"] .checkout-container .meta-data-item {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}
.checkout-container .meta-data-item .item-title {
    color: var(--text-primary);
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%;
}
.checkout-container .meta-data-item .item-data {
    color: var(--text-primary);
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: 150%;
}
.checkout-container .meta-data-item button {
    background: none;
    border: none;
    color: var(--text-primary);
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%;
    text-decoration: underline;
}
.checkout-form {
    margin-top: 10px;
}
.checkout-form > * + * {
    margin-top: 12px;
}
.checkout-form .book-field input {
    padding-left: 24px;
    padding-right: 24px;
}
.checkout-form .book-field label {
    left: 20px;
}
html[dir="rtl"] .checkout-form .book-field label {
    left: 0;
    right: 20px;
}
html[dir="rtl"] .checkout-form .book-field input {
    text-align: right;
}
.checkout-form
.book-select
.select2-container
.select2-selection--single
.select2-selection__rendered {
    padding-left: 14px;
}
html[dir="rtl"]
.checkout-form
.book-select
.select2-container
.select2-selection--single
.select2-selection__rendered {
    padding-right: 14px;
    margin-left: auto;
}
.checkout-form .book-select label {
    left: 20px;
}
html[dir="rtl"] .checkout-form .book-select label {
    right: 20px;
    left: auto;
}
.checkout-form .small-text {
    color: var(--text-secondary);
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: 150%;
}
.checkout-form .radio-input:has(input[type="radio"]:not(:checked)) {
    color: var(--text-secondary);
}
.summery-container {
    position: sticky;
    top: 11%;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    border-radius: 24px;
    background: #f5f6f7;
    padding: 32px;
}
.summery-container > * + * {
    margin-top: 24px;
}
.summery-container .title {
    margin-top: 0;
    margin-bottom: 0;
}
.villa-feature {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px;
}
.villa-feature figure {
    --size: 60px;
    width: var(--size);
    height: var(--size);
    border-radius: 8px;
    overflow: hidden;
}
.villa-feature figure img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
}
.villa-feature .villa-feature-review {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px;
    color: var(--text-secondary);
    font-size: 14px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%;
}
.villa-feature .villa-feature-review .villa-feature-ratings {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 5px;
}
.villa-feature .villa-feature-title {
    color: var(--text-primary);
    font-size: 20px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%;
}
.separator {
    width: 100%;
    height: 1px;
    background: var(--border-pri);
}
.price-items > * + * {
    margin-top: 10px;
}
.price-items .price-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    color: var(--text-primary);
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: 150%;
}
.info-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: 8px;
}
.info-item .info-title {
    color: var(--text-primary);
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%;
}
.info-item .info-name {
    color: var(--text-secondary);
    font-size: 14px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%;
}
.coupon-form {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    gap: 10px;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.coupon-form fieldset {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 8px;
    width: 100%;
}
.coupon-form fieldset label {
    color: var(--text-primary);
    font-size: 14px;
    font-style: normal;
    font-weight: 600;
    line-height: 150%;
}
.coupon-form fieldset .input-item {
    border-radius: 12px;
    overflow: hidden;
    border: 1px solid rgba(0, 0, 0, 0.08);
    background: var(--white);
    width: 100%;
    outline: none;
    color: var(--text-primary);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.coupon-form fieldset .input-item input {
    width: 100%;
    border: none;
    outline: none;
    padding: 12px;
}
.coupon-form fieldset .input-item .points {
    padding: 12px 16px;
    border-right: 1px solid var(--border-pri);
    border-left: none;
    color: var(--text-primary);
    font-size: 14px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    font-style: normal;
    font-weight: 600;
    line-height: 150%;
}
html[dir="rtl"] .coupon-form fieldset .input-item .points{
    border-left: 1px solid var(--border-pri);
    border-right: none;
}
.search-icon {
    border: none;
    position: absolute;
    top: 50%;
    left: 10px;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    background: transparent;
    display: none;
    pointer-events: none;
}
html[dir="rtl"] .search-icon {
    right: 10px;
    left: auto;
}
.search-element input {
    padding: 0 80px;
}
.coupon-form button {
    border-radius: 999px;
    background: var(--accent-pri);
    padding: 10px 16px;
    color: #ffffff;
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%;
    border: none;
    width: 30%;
}
.coupon-form .cancel-btn {
    border-radius: 999px;
    background: #dfe0e4;
    padding: 10px 16px;
    color: #798090;
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%;
    border: none;
    width: 30%;
}
.summery-container .bottom-price {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.summery-container .bottom-price .text {
    color: var(--text-primary);
    font-size: 24px;
    font-style: normal;
    font-weight: 600;
    line-height: 150%;
}
.summery-container .bottom-price .price {
    color: var(--text-primary);
    font-size: 32px;
    font-style: normal;
    font-weight: 800;
    line-height: 120%;
}
.checkout-checkbox{
    display: inline-flex;
    gap: 10px;
    user-select: none;
}
.checkout-checkbox input[type="checkbox"]{
    --size: 16px;
    flex-shrink: 0;
    height: var(--size);
    width: var(--size);
}
/* =================================================== checkout page styles end =================================================== */

.select2-hidden-accessible {
    display: none;
}

/* =================================================== About Page Mission Section Start =================================================== */
.mission {
    margin: 100px auto;
}
.mission-section {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 64px;
}
.mission-video {
    width: 100%;
    aspect-ratio: 1/1;
    -o-object-fit: cover;
    object-fit: cover;
    overflow: hidden;
    border-radius: 32px;
    position: relative;
}
.mission-video video {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    overflow: hidden;
}
.pause-play-btn {
    position: absolute;
    z-index: 1;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    border: none;
    background-color: transparent;
}
.mission-left {
    width: 50%;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}
.mission-right {
    width: 50%;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}
.mission-cards {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 24px;
}

.mission-card {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 24px;
}
.mission-card p {
    color: var(--text-secondary);
    font-size: 16px;
    font-weight: 500;
    line-height: 150%;
}
.mission-left iframe {
    height: 100%;
    width: 100%;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    background: url("../images/video.png");
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    border-radius: 32px;
}
.mission-right > h3 {
    margin-bottom: 16px;
}
.mission-right > p {
    margin-bottom: 32px;
}
.mission-card-left {
    -ms-flex-negative: 0;
    flex-shrink: 0;
}
/* =================================================== About Page Mission Section End =================================================== */

/* =================================================== About Page Marquee Section Start =================================================== */

.marquee-section {
    background: var(--background-sec);
    padding: 60px 0;
    text-align: center;
}
.marquee-section h4 {
    margin-bottom: 26px;
}
.marquee-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 100px;
    overflow: hidden;
}
.marquee {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 100px;
    -webkit-animation: scroll-left 30s linear infinite forwards;
    animation: scroll-left 30s linear infinite forwards;
}
/* Keyframes to define the scrolling effect */
@-webkit-keyframes scroll-left {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0); /* Start from the right */
    }
    100% {
        -webkit-transform: translateX(-100%);
        transform: translateX(-100%); /* Move to the left */
    }
}
@keyframes scroll-left {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0); /* Start from the right */
    }
    100% {
        -webkit-transform: translateX(-100%);
        transform: translateX(-100%); /* Move to the left */
    }
}
.marquee-container:hover .marquee {
    -webkit-animation-play-state: paused;
    animation-play-state: paused;
}
/* =================================================== About Page marquee Section End =================================================== */

/* =================================================== About Page Team Section Start =================================================== */
.team {
    margin: 100px auto;
}
.team .section-title {
    margin-bottom: 48px;
    text-align: center;
}
.team-members {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 40px;
}
.team-members h4 {
    margin-top: 16px;
}
.member {
    background-color: var(--white);
    padding: 24px;
    border-radius: 24px;
    border: 1px solid var(--white);
    -webkit-box-shadow: 0px 8px 24px 0px rgba(0, 66, 153, 0.08);
    box-shadow: 0px 8px 24px 0px rgba(0, 66, 153, 0.08);
    -webkit-transition: border-color 0.3s ease;
    -o-transition: border-color 0.3s ease;
    transition: border-color 0.3s ease;
}
.member:hover {
    border-color: var(--accent-pri);
}
.member-img-container {
    width: 100%;
    border-radius: 16px;
    overflow: hidden;
    position: relative;
}
.member-img-container img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
}
.member img {
    border-radius: 16px;
    margin: 0 auto;
    width: 100%;
    -webkit-transition: -webkit-transform 0.3s ease;
    transition: -webkit-transform 0.3s ease;
    -o-transition: transform 0.3s ease;
    transition: transform 0.3s ease;
    transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}
.member:hover .member-img-container img {
    -webkit-transform: scale(1.05);
    -ms-transform: scale(1.05);
    transform: scale(1.05);
}
.member p {
    color: #4f4f4f;
}
.memeber-social {
    height: 32px;
    width: 32px;
    background-color: var(--accent-pri);
    border-radius: 999px;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: absolute;
    bottom: 16px;
    right: 16px;
    -webkit-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.member:hover .member-icon-1 {
    bottom: 136px;
}
.member:hover .member-icon-2 {
    bottom: 96px;
}
.member:hover .member-icon-3 {
    bottom: 56px;
}

/* =================================================== About Page Team Section End =================================================== */

/* =================================================== About Page Testimonial Section start =================================================== */

.testimonial-section {
    background-color: var(--background-sec);
    padding: 80px 0;
}

/* =================================================== About Page Testimonial Section End =================================================== */

/* =================================================== Loyality Page Testimonial Section Start =================================================== */

.hero-lower-title {
    color: var(--white);
    margin-bottom: 48px;
    font-size: 24px;
    font-weight: 600;
    line-height: 120%;
}
.loyalty-hero-title {
    margin-bottom: 24px !important;
}

/* =================================================== Loyality Page Testimonial Section End =================================================== */

/* =================================================== Loyality Page join-benefits Section Start =================================================== */

.join-benefits {
    margin-top: 120px;
    margin-bottom: 160px;
}

.join-benefits-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 50px;
}
.join-benefits-container > * {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

.join-benefits-imgae-container {
    height: 100%;
    width: 100%;
    border-radius: 32px;
    overflow: hidden;
}
.join-benefits-imgae {
    height: 100%;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
}
.benefits {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 24px;
}
.benefit {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 12px;
}
.benefit p {
    color: var(--text-primary, #1d2635);
    font-size: 20px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%;
}

/* =================================================== Loyality Page join-benefits Section End =================================================== */

/* =================================================== Loyality Page earn-points Section Start =================================================== */

.earn-points-section {
    text-align: center;
    margin-bottom: 60px;
}

.earn-points {
    text-align: left;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 40px;
    margin-top: 48px;
    margin-bottom: 32px;
}
.earn-point {
    border-radius: 12px;
    background: var(--white);
    -webkit-box-shadow: 0px 8px 24px 0px rgba(0, 66, 153, 0.08);
    box-shadow: 0px 8px 24px 0px rgba(0, 66, 153, 0.08);
    padding: 24px;
    max-width: 400px;
    width: 100%;
}

.earn-point-title {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 12px;
}

.earn-point-title p {
    color: var(--text-primary, #1d2635);
    font-family: Manrope;
    font-size: 20px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%;
}

html[dir="rtl"] .earn-point p {
    text-align: right;
    direction: rtl;
}
.earn-point p {
    color: var(--text-secondary, #6a7283);
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: 150%; /* 24px */
    margin-top: 8px;
    margin-bottom: 24px;
}

/* =================================================== Loyality Page earn-points Section End =================================================== */

/* =================================================== Loyality Page rewards Section Start =================================================== */

.rewards-section .section-title {
    text-align: center;
    margin-bottom: 48px;
}

.rewards-section .button-pri {
    margin-top: 48px;
}

.rewards-cards {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 40px;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.rewards-card {
    border-radius: 8px;
    background: var(--white, #fff);
    -webkit-box-shadow: 0px 8px 24px 0px rgba(0, 66, 153, 0.08);
    box-shadow: 0px 8px 24px 0px rgba(0, 66, 153, 0.08);
    max-width: 400px;
    width: 100%;
}

.rewards-card:hover .rewards-card-image img {
    -webkit-transform: scale(1.05);
    -ms-transform: scale(1.05);
    transform: scale(1.05);
}

.rewards-card-image {
    width: 100%;
    height: 250px;
    border-radius: 8px;
    overflow: hidden;
}

.rewards-card-image img {
    width: 100%;
    height: 100%;
    border-radius: 8px;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
    -webkit-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.rewards-card-image img {
    width: 100%;
    height: 100%;
    border-radius: 8px;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
}

.rewards-card h4 {
    margin-top: 8px;
}

.reward-card-content {
    padding: 0px 32px 32px 32px;
}

.rewards-card p {
    margin-top: 8px;
    color: var(--text-secondary, #6a7283);
    font-size: 20px;
    font-style: normal;
    font-weight: 500;
    line-height: 150%; /* 30px */
}
/* =================================================== Loyality Page rewards Section End =================================================== */

/* =================================================== Blog Details Page search-box Section Start =================================================== */
.blog-details {
    padding: 100px 0;
    background: var(--background-sec);
}
.share-dropdown {
    background: var(--white);
    z-index: 100;
    padding: 16px;
    border-radius: 4px;
    -webkit-box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    border: 1px solid var(--border-pri);
}
.share-dropdown .social-icon {
    border-color: var(--border-pri);
}
.share-dropdown .social-icon:hover {
    background: var(--accent-pri);
    border-color: var(--accent-pri);
}
.share-dropdown .social-icon:hover svg path {
    fill: var(--white);
}
.blogs-bar {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 24px;
    width: 25%;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

.blogs-bar-component {
    padding: 32px;
    background-color: var(--white);
    border-radius: 16px;
    width: 100%;
}

.blogs-bar-component hr {
    margin: 24px 0px;
    border-top: 1px dashed var(--border-pri);
}

.blog-details-section {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 48px;
}

.blog-details-main-section {
    padding: 32px;
    background-color: var(--white);
    border-radius: 16px;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
}

.blog-details-main .feature-img {
    height: 470px;
    width: 100%;
    border-radius: 16px;
    overflow: hidden;
}

.blog-details-main .feature-img img {
    height: 100%;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
}

.blog-details-main h1 {
    font-size: 48px;
    font-style: normal;
    font-weight: 600;
    line-height: 120%; /* 57.6px */
    margin-top: 24px;
    margin-bottom: 24px;
}

.blog-details-main-lower p {
    color: var(--text-secondary);
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%; /* 27px */
}

.blog-details-main-lower hr {
    margin: 24px 0px;
    border-top: 1px dashed var(--border-pri);
}

.blog-details-img {
    height: 370px;
    width: 50%;
    overflow: hidden;
    border-radius: 16px;
}
.blog-details-main-lower h3 {
    font-size: 32px;
    font-style: normal;
    font-weight: 600;
    line-height: 120%; /* 38.4px */
    max-width: 80%;
}

.blogs-container-element {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 32px;
}

.blog-details-img img {
    height: 100%;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
}

.blog-details-top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-bottom: 24px;
}

.blog-details-top-left figure {
    height: 40px;
    width: 40px;
    border-radius: 999px;
    overflow: hidden;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

.blog-details-top-left figure img {
    height: 100%;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
}
.blog-details-top-left {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 10px;
}

.blog-owner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 8px;
    margin-right: 32px;
}

.blog-owner p {
    color: var(--text-secondary);
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
}

.blog-updated-details {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    color: var(--text-third);
    font-size: 18px;
    font-weight: 400;
    line-height: 150%; /* 27px */
    gap: 8px;
}
.blog-release-date {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 5px;
}
.updated-date {
    font-style: italic;
}

.updated-date {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 8px;
}

.custom-dot {
    background-color: #4f4f4f;
    height: 4px;
    width: 4px;
    border-radius: 999px;
    margin: 5px;
}
.blog-details-top-right {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 16px;
}

.blog-details-top-right .button-pri:hover svg path {
    fill: var(--accent-pri);
}

.blog-details-search {
    position: relative;
}
.blog-details-search .button {
    padding: 12px;
    background: var(--accent-pri);
    border-radius: 999px;
    position: absolute;
    top: 50%;
    right: 8px;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
}

.blog-details-search input {
    background: var(--background-sec);
    border: 1px solid var(--background-sec);
    outline: none;
    padding: 15px 32px;
    border-radius: 999px;
    width: 100%;
}

/* ============================================ Copy button styles start ============================================ */
.copy-btn {
    border: 1px solid rgb(0, 0, 0);
    border-radius: 999px;
    background: var(--white);
    position: relative;
    height: 50px;
    aspect-ratio: 1/1;
}
.copy-btn:hover {
    border: 1px solid var(--white);
    background-color: var(--accent-pri);
}
.copy-btn:hover svg path {
    stroke: var(--white);
}
.copy-btn .copy-tooltip {
    opacity: 0;
    visibility: hidden;
    width: 0;
    height: 0;
    position: absolute;
    bottom: 100%;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    margin-bottom: 10px;
    border-radius: 5px;
    background: var(--accent-pri);
    color: var(--white);
    padding: 2px 8px;
    -webkit-transition: opacity 0.3s ease;
    -o-transition: opacity 0.3s ease;
    transition: opacity 0.3s ease;
    font-size: 14px;
}
.copy-btn .copy-tooltip::before {
    content: "";
    opacity: 0;
    visibility: hidden;
    position: absolute;
    width: 10px;
    height: 10px;
    background: var(--accent-pri);
    top: 70%;
    left: 50%;
    z-index: -1;
    -webkit-transform: translateX(-50%) rotate(45deg);
    -ms-transform: translateX(-50%) rotate(45deg);
    transform: translateX(-50%) rotate(45deg);
    -webkit-transition: opacity 0.3s ease;
    -o-transition: opacity 0.3s ease;
    transition: opacity 0.3s ease;
}
.copy-btn .copy-tooltip.show,
.copy-btn .copy-tooltip.show::before {
    opacity: 100;
    visibility: visible;
}
.copy-btn .copy-tooltip.show {
    width: auto;
    height: auto;
}
/* ============================================ Copy button styles end ============================================ */

.copied-text {
    border: 1px solid black;
    padding: 2px;
}

.related-blog {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 24px;
}

.related-blog figure {
    height: 80px;
    width: 80px;
    border-radius: 999px;
    overflow: hidden;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

.related-blog figure img {
    height: 100%;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
}

.related-blog-cntainer h5 {
    color: #0b0b0b;
    font-size: 20px;
    font-style: normal;
    font-weight: 500;
    line-height: 150%; /* 30px */
}

.related-blog-cntainer p {
    color: #4f4f4f;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%; /* 24px */
    margin-top: 12px;
}

.see-all-btn {
    background: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border: none;
    border-bottom: 1px solid #0b0b0b;
    color: #0b0b0b;
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: 150%;
}

.popular-tags {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 8px;
}

.popular-tag {
    padding: 12px 24px;
    border: 1px solid var(--background-sec);
    border-radius: 999px;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
/* =================================================== Blog Details Page search-box Section end =================================================== */

/* =================================================== Success modal style start =================================================== */
.success-modal-body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 16px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center;
    max-width: 350px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-top: 40px;
    padding-bottom: 40px;
}
.success-modal-body .success-modal-title {
    color: var(--text-primary);
    text-align: center;
    font-size: 24px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
}
.success-modal-body .success-modal-details {
    color: var(--text-secondary);
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
}
.success-modal-body .success-modal-details .success-modal-details-highlight {
    color: var(--accent-pri);
}
.success-modal-body .success-modal-confirm-btn {
    width: 100%;
    text-align: center;
    padding: 14px 16px;
    border-radius: 999px;
    background: var(--accent-pri);
    color: var(--white);
    font-size: 15px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    border: none;
    outline: none;
}
html[dir="rtl"] .auth-modal .modal-header{
    left: 32px;
    right: auto;
}

#bigDevice-hero .hero-title-pri{
    transform: translate(0,-80px);
}

#bigDevice-hero .booking-form{
    transform: translate(0,60px);
}

/* =================================================== Success modal style end =================================================== */
