/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 1.0.1
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Header CSS start */
.header-main .elementor-nav-menu--main .elementor-nav-menu .menu-item .elementor-item::after,
.header-main nav.elementor-nav-menu--main .current-menu-item a.elementor-item::after {
    width: 10px !important;
    height: 10px !important;
    background: #B87333;
    border-radius: 50%;
    position: absolute;
    bottom: -10px;
    left: 50%;
    transform: translateX(-50%) !important;
}

.header-main.elementor-sticky--effects .e-con-inner {
    padding: 10px 0;
}

.header-main .e-con-inner,
.header-main .elementor-widget-image a img {
    transition: 0.6s all;
}

.header-main.elementor-sticky--effects .elementor-widget-image a img {
    max-width: 70px;
}

li.book-btn {
    display: none !important;
}

/* Home banner CSS */
.banner-slider .swiper-pagination {
    writing-mode: vertical-lr;
    gap: 15px;
    display: flex;
    left: calc((100% - 1720px) / 2) !important;
}


/* Footer CSS Start */
.quichlink-menu nav ul.elementor-nav-menu {
    column-count: 2;
}

.watch-btn span.elementor-button-content-wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
}

.watch-btn span.elementor-button-icon {
    animation: pulse-animation 2s infinite;
    border-radius: 50%;
    width: 34px;
    height: 34px;
    background: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
}

.watch-btn span.elementor-button-icon svg {
    fill: #000000;
    font-size: 12px;
}

.banner-slider span.swiper-pagination-bullet {
    border: 1px solid #FFFFFF;
    opacity: 1;
    background: transparent !important;
}

.banner-slider span.swiper-pagination-bullet.swiper-pagination-bullet-active {
    background: linear-gradient(95.5deg, #B87333 8.52%, #944700 94.53%) !important;
}

@keyframes pulse-animation {
    0% {
        box-shadow: 0 0 0 0px rgba(0, 0, 0, 0.2);
    }

    100% {
        box-shadow: 0 0 0 20px rgba(0, 0, 0, 0);
    }
}

.scroll-btm span.elementor-icon-list-icon svg {
    width: 15px;
    margin-right: 10px !important;
}

.counter-sec p.elementor-counter-title {
    margin-top: 10px !important;
}

.property-slider .elementor-swiper-button:hover svg path,
.testimonial-slider .elementor-swiper-button:hover svg path {
    filter: brightness(0) saturate(100%) invert(100%) sepia(100%) saturate(0%) hue-rotate(345deg) brightness(102%) contrast(101%);
    opacity: 1;
}

.video-section .elementor-custom-embed-play svg {
    border-radius: 50%;
    opacity: 1 !important;
    animation: pulse-animation-2 2s infinite;
}

@keyframes pulse-animation-2 {
    0% {
        box-shadow: 0 0 0 0px rgba(255, 255, 255, 0.2);
    }

    100% {
        box-shadow: 0 0 0 20px rgba(255, 255, 255, 0);
    }
}

form.contact-form-home .ginput_container input:not([type="submit"]),
form.contact-form-home .ginput_container textarea {
    font-family: "Montserrat";
    font-weight: 400;
    font-size: 16px;
    border: none;
    background: transparent;
    border-bottom: 1.2px solid #3333334D;
    box-shadow: none;
    border-radius: 0;
    padding: 0 0 40px;
    height: 70px;
    color: #333333;
}

form.contact-form-home .ginput_container input:not([type="submit"]):focus,
form.contact-form-home .ginput_container textarea:focus,
div#input_1_5_chosen:focus,
input#gform_submit_button_1:focus,
input#gform_submit_button_2:focus {
    outline: none !important;
    box-shadow: none !important;
}

input#gform_submit_button_1,
input#gform_submit_button_2 {
    font-family: "Montserrat";
    font-weight: 600;
    font-size: 16px;
    line-height: 100%;
    text-transform: uppercase;
    background: #B87333;
    border: 1px solid #B87333;
    padding: 20px 60px;
    border-radius: 60px;
    margin: 50px auto 0;
    transition: 0.5s all;
}

input#gform_submit_button_2 {
    margin-left: 0;
}

input#gform_submit_button_1:hover,
input#gform_submit_button_2:hover {
    background: transparent;
    color: #B87333;
}

div#gform_1_validation_container,
div#gform_2_validation_container {
    display: none;
}

.scroll-btm span.elementor-icon-list-icon svg {
    transform-origin: 0% 0%;
    animation: bounce 1600ms infinite cubic-bezier(0.445, 0.05, 0.55, 0.95);
    cursor: pointer;
}

@keyframes bounce {
    50% {
        transform: translateY(-15px);
    }
}

/* About Us page CSS */
.why-choose-section .elementor-element.e-con-full.e-flex.e-con.e-child {
    background-image: url("data:image/svg+xml,%3Csvg width='1' height='102' viewBox='0 0 1 102' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cline x1='0.5' y1='2.18557e-08' x2='0.499996' y2='102' stroke='url(%23paint0_linear_209_504)'/%3E%3Cdefs%3E%3ClinearGradient id='paint0_linear_209_504' x1='-0.5' y1='-2.18557e-08' x2='-0.500004' y2='102' gradientUnits='userSpaceOnUse'%3E%3Cstop stop-color='%23121212' stop-opacity='0'/%3E%3Cstop offset='0.490385' stop-color='%23121212'/%3E%3Cstop offset='1' stop-color='%23121212' stop-opacity='0'/%3E%3C/linearGradient%3E%3C/defs%3E%3C/svg%3E%0A");
    background-repeat: no-repeat;
    background-position: right center;
    background-size: auto;
}

.why-choose-section .elementor-element.e-con-full.e-flex.e-con.e-child:last-child {
    background: none;
}

/* Portfolio Page CSS */
div#viewmore-btn a#loadMore,
div#propertiesp-load-more a.btn.loadMoreBtn {
    padding: 22px 45px;
    background: #B87333;
    border: 1px solid #B87333;
    border-radius: 60px;
    color: #fff;
    font-family: "Montserrat";
    font-weight: 600;
    font-size: 16px;
    line-height: 100%;
    text-transform: uppercase;
    transition: 0.4s all;
}

div#viewmore-btn a#loadMore:hover,
div#propertiesp-load-more a.btn.loadMoreBtn:hover {
    background: transparent;
    color: #B87333;
}

.book-direct-btn a.elementor-button:hover span.elementor-button-icon svg {
    filter: brightness(0) saturate(100%) invert(2%) sepia(5%) saturate(77%) hue-rotate(314deg) brightness(101%) contrast(81%);
}

.loop-readmore-btn.elementor-widget.elementor-widget-button {
    margin-top: auto !important;
    padding-top: 30px;
}

/* Property Details Page CSS */
ul.slides {
    list-style-type: none;
    padding-left: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 30px 20px;
}

ul.slides li {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    flex: 0 0 calc(50% - 15px);
}

ul.slides li img {
    width: 26px;
}

ul.slides li p {
    margin-bottom: 0;
    font-family: "Montserrat";
    font-weight: 400;
    font-size: 16px;
    line-height: 24px;
}


.property-gallery {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: stretch;
}

/* Column setup */
.property-gallery .gallery-col {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.property-gallery .gallery-cell {
    flex: 1;
    display: flex;
    height: 100%;
}

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

.property-gallery .gallery-item.one {
    flex: 0 0 100%;
    height: 500px;
}

.property-gallery .gallery-item.one img.property-img {
    height: 100%;
    object-fit: cover;
}

.property-gallery .left {
    flex: 0 0 calc(25% - 7px);
}

.property-gallery .middle {
    flex: 0 0 calc(50% - 7px);
}

.property-gallery .right {
    flex: 0 0 calc(25% - 7px);
}

.property-gallery .gallery-item.two {
    flex: 0 0 calc(50% - 5px);
}

.property-gallery .gallery-item.three {
    flex: 0 0 calc(33.33% - 6.66px);
}

.property-gallery .gallery-item.four {
    flex: 0 0 calc(25% - 7.5px);
}

.property-gallery .gallery-item.more {
    flex: 0 0 calc(20% - 8px);
}













@media only screen and (min-width: 1201px) and (max-width: 1599px) {
    html {
        zoom: 0.85;
        zoom: 85%;
    }
}

@media only screen and (max-width: 1800px) {
    .banner-slider .swiper-pagination {
        left: 40px !important;
    }
}

@media only screen and (max-width: 1200px) {
    .banner-slider .swiper-pagination {
        writing-mode: inherit;
        gap: 0px;
        left: 0 !important;
        right: 0 !important;
        margin: 0 auto;
        transform: translate(0) !important;
    }

    div#viewmore-btn a#loadMore,
    div#propertiesp-load-more a.btn.loadMoreBtn {
        padding: 16px 35px;
    }
}

/* ✅ Responsive adjustments */
@media (max-width: 1024px) {
    .property-gallery .gallery-item.one {
        height: 350px;
        /* medium screen */
    }
}

@media (max-width: 768px) {
    .property-gallery {
        flex-direction: column;
    }

    .property-gallery .left,
    .property-gallery .middle,
    .property-gallery .right,
    .property-gallery .gallery-item {
        flex: 0 0 100% !important;
    }

    .property-gallery .gallery-item.one {
        height: 300px;
        /* mobile screen */
    }
}


@media only screen and (max-width: 767px) {
    li.book-btn {
        display: block !important;
    }

    .banner-slider .swiper-pagination {
        left: -20px !important;
    }

    .why-choose-section .elementor-element.e-con-full.e-flex.e-con.e-child {
        background-image: none;
    }

    ul.slides li {
        flex: 0 0 calc(100% - 15px);
    }

    div#viewmore-btn a#loadMore,
    div#propertiesp-load-more a.btn.loadMoreBtn {
        padding: 14px 30px;
    }
    .property-gallery {
        flex-wrap: nowrap;
    }
}