/* ============================================================
   The Fulcrum Real Estate - Homepage Foundation
   File: css/homepage_foundation.css

   Extracted from the current style.css, scoped by the elements
   rendered by the restored index.php and its PHP includes.

   This preserves current dependencies until components are
   individually refactored. Legacy style.css is NOT modified.

   Load before css/responsive.css and css/homepage.css.
   Do not load simultaneously with style.css on the homepage.
   ============================================================ */

@import url("https://fonts.googleapis.com/css2?family=El+Messiri:wght@400..700&family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&family=Roboto:ital,wght@0,100..900;1,100..900&display=swap");


@media only screen and (min-width: 1400px) and (max-width: 10000px) {
    .container {
        max-width: 1194px;
    }
    .hero-container {
        max-width: 1314px;
    }
}

/* FOUNDATION / UTILITIES */
.list-none {
    list-style: none; padding: 0;
    margin: 0;
}
.list-none li {
    list-style: none; padding: 0;
    margin: 0;
}
.bg-image {
    background-size: cover; background-position: center;
    background-repeat: no-repeat;
}
.bg-image.bg-img-bottom {
    position: absolute; width: 50%;
    height: 50%; bottom: 0;
}
.bg-image.bg-img-top {
    position: absolute; left: 0;
    top: 135px; width: 250px;
    height: 250px;
}
.bg-image.bg-left {
    background-position: left;
}
.theme-color {
    color: #3454d1;
}
.section-padding {
    padding-top: 150px; padding-bottom: 150px;
}
.p-btm-150 {
    padding-bottom: 150px;
}
h1, .hs-1 {
    font-size: 48px; line-height: 58px;
}
h2 {
    font-size: 36px; line-height: 40px;
}
h3 {
    font-size: 30px; line-height: 35px;
}
h4, .hs-4 {
    font-size: 24px; line-height: 30px;
}
h5 {
    font-size: 18px; line-height: 25px;
}
h6, .hs-6 {
    font-size: 16px; line-height: 20px;
}
.fs-18 {
    font-size: 18px;
}
.fs-40 {
    font-size: 40px;
}
.theme-btn {
    background: #3454d1; padding: 15px 40px;
    color: #fff !important; font-weight: 500;
    border-radius: 10px; font-size: 15px;
    display: inline-block; line-height: 24px;
    transition: all 0.4s ease; margin-right: 15px;
    position: relative; z-index: 1;
    overflow: hidden; font-size: 16px;
}
.theme-btn::before {
    position: absolute; content: "";
    width: 0; height: 100%;
    background: #1a1a1a; right: 0;
    top: 0; border-radius: 12px;
    z-index: -1; transition: all 0.4s ease;
}
.theme-btn:last-child {
    margin: 0;
}
.theme-btn:hover::before {
    width: 100%; left: 0;
}
.theme-btn.primary {
    background: transparent; border: 2px solid #EBEBEB;
    color: #1a1a1a !important;
}
.theme-btn.primary:hover {
    background: transparent; color: #fff !important;
    border: 2px solid transparent; transition: all 0.4s ease;
}
.section-title {
    text-align: center; margin-bottom: 70px;
    z-index: 22; position: relative;
}
.section-title p {
    line-height: 28px; font-size: 16px;
    margin-bottom: 10px;
}
.section-title .sub-heading {
    color: #3454d1; font-size: 18px;
    font-weight: 500; display: block;
    position: relative; margin-bottom: 20px;
    padding: 0px 45px; margin-top: -0.28em;
    width: fit-content; width: -moz-fit-content;
    margin-left: auto; margin-right: auto;
}
.section-title .sub-heading::before {
    position: absolute; content: "";
    width: 30px; height: 2px;
    background: #FFA726; top: 50%;
    left: 0;
}
.section-title .sub-heading::after {
    position: absolute; content: "";
    width: 30px; height: 2px;
    background: #FFA726; top: 50%;
    right: 0;
}
.section-title .heading-title {
    font-size: 45px; margin-bottom: 25px;
}

/* HEADER AND NAVIGATION */
.header-area {
    position: absolute; width: 100%;
    top: 60px;
}
.header-inner {
    padding: 10px 60px 0px; margin: 0px 60px;
    border-radius: 12px; z-index: 1;
    position: relative;
}
.header-area .container-fluid {
    padding: 0;
}
.hero-thumb-wrap {
    position: absolute; right: 150px;
    top: 50%; z-index: 4;
    transform: translateY(-50%); --thumb-size: 60px;
    --extra: 15px;
}
.hero-thumb-wrap .hero-thumb {
    width: var(--thumb-size); height: var(--thumb-size);
    border-radius: 50%; margin: 20px 0;
    position: relative; z-index: 4;
    display: block; cursor: pointer;
}
.hero-thumb-wrap .hero-thumb img {
    width: var(--thumb-size); border-radius: 50%;
}
.hero-thumb-wrap .hero-thumb:before {
    content: ""; position: absolute;
    left: calc(var(--extra) * -1); top: calc(var(--extra) * -1);
    bottom: calc(var(--extra) * -1); right: calc(var(--extra) * -1);
    border-radius: inherit; border: 1px solid rgba(255, 255, 255, 0.35);
    display: inline-block; z-index: 3;
    transition: all ease 0.4s;
}
.hero-thumb-wrap .hero-thumb:last-child {
    margin-bottom: 0;
}
.hero-thumb-wrap .hero-thumb:first-child {
    margin-top: 0;
}
.hero-thumb-wrap .hero-thumb.active:before {
    border-color: white;
}
.gx-60 {
    --bs-gutter-x: 60px;
}
.is-sticky {
    position: fixed !important; left: 0;
    top: 0; width: 100%;
    z-index: 444; background: #fff;
    transition: all 0.4s; animation: fadeInDown 0.5s ease-in-out;
    box-shadow: 0px 3px 25.16px 0.84px rgba(0, 0, 0, 0.09);
}
.is-sticky .header-inner {
    box-shadow: none; border-radius: 0;
}
.popup-search-box {
    position: fixed; top: 0;
    left: 50%; background-color: rgba(0, 0, 0, 0.95);
    height: 0; width: 0;
    overflow: hidden; z-index: 99999;
    opacity: 0; visibility: hidden;
    border-radius: 50%; transform: translateX(-50%);
    transition: all ease 0.4s;
}
.popup-search-box button.searchClose {
    width: 60px; height: 60px;
    position: absolute; top: 40px;
    right: 40px; background: transparent;
    font-size: 20px; border-radius: 50%;
    transform: rotate(0); transition: all ease 0.4s;
    color: #fff; border: 1px solid #fff;
}
.popup-search-box button.searchClose:hover {
    color: #3454d1; background-color: #fff;
    border-color: transparent; border-color: transparent;
    transform: rotate(90deg);
}
.popup-search-box form {
    position: absolute; top: 50%;
    left: 50%; display: inline-block;
    padding-bottom: 40px; cursor: auto;
    width: 100%; max-width: 700px;
    transform: translate(-50%, -50%) scale(0); transition: transform ease 0.4s;
}
.popup-search-box form input {
    font-size: 18px; height: 70px;
    width: 100%; border-width: 0;
    border-bottom-width: 2px; border-style: solid;
    border-color: #ffffff8f; background-color: transparent;
    padding-left: 30px; color: #fff;
    border-radius: 50px; font-weight: 400;
    padding-right: 65px; border-radius: 0px;
}
.popup-search-box form:hover input {
    border-color: #3454d1;
}
.popup-search-box form input::-moz-placeholder, .popup-search-box form input::-webkit-input-placeholder, .popup-search-box form input:-ms-input-placeholder, .popup-search-box form input::-ms-input-placeholder, .popup-search-box form input::placeholder {
    color: #fff;
}
.popup-search-box form button {
    position: absolute; top: 0px;
    background: transparent; border: none;
    color: #fff; font-size: 20px;
    right: 12px; color: #fff;
    cursor: pointer; width: 70px;
    height: 70px; transition: all ease 0.4s;
    transform: scale(1.001);
}
.popup-search-box form button:hover {
    transform: scale(1.1);
}
.popup-search-box.show {
    opacity: 1; visibility: visible;
    width: 100.1%; height: 100%;
    transition: all ease 0.4s; border-radius: 0;
}
.popup-search-box.show form {
    transition-delay: 0.5s; transform: translate(-50%, -50%) scale(1);
}

/* CURRENT IMAGE HERO */
.hero-area {
    height: 950px; position: relative;
}
.hero-content {
    margin-top: 219px; z-index: 1;
    position: relative; padding: 0;
}
.hero-title {
    font-size: 60px; line-height: 75px;
    margin-bottom: 15px; font-weight: 700;
    letter-spacing: -0.02em;
}
.hero-title span {
    color: #3454d1;
}
.hero-content p {
    font-weight: 500; font-size: 17px;
    margin: 0;
}
.hero-subtitle {
    font-size: 30px; font-weight: 500;
    line-height: 1; display: block;
    margin-bottom: 25px; color: #3454d1;
}
.hero-slider {
    position: absolute; width: 48%;
    height: 100%; right: 0;
    top: 0; height: 950px;
}
.single-h-slider {
    background-size: cover; background-position: center;
    background-repeat: no-repeat; height: 950px;
    position: relative;
}
.hero-content {
    animation: fadeInLeft 0.8s both 1.5s;
}
section.hero-area.bg-image.bg-left {
    background-size: auto; background-position: left top;
}
.hero-area .slick-dots {
    position: absolute; top: 50%;
    right: 60px; margin-top: -80px;
    list-style: none; padding: 0;
    margin-bottom: 0;
}
.hero-area .slick-dots li {
    margin-bottom: 5px;
}
.hero-area .slick-dots li:last-child {
    margin: 0;
}
.hero-area .slick-dots li button {
    background: transparent; color: #fff;
    width: 50px; height: 50px;
    line-height: 50px; border-radius: 5px;
    margin-bottom: 5px; border-color: transparent;
    transition: all 0.3s ease;
}
.hero-area .slick-dots li button:last-child {
    margin-bottom: 0px;
}
.hero-area .slick-dots li.slick-active button, .hero-area .slick-dots li:hover button {
    background: #3454d1; color: #fff;
}
.hero-content {
    animation: fadeInLeft 0.8s both 1.5s;
}

/* PROPERTY SEARCH */
.property-details-area {
    position: relative; top: -170px;
    padding-bottom: 100px; margin-bottom: -269px;
    z-index: 22;
}
.property-details-area .container-fluid {
    padding: 0;
}
.property-tab-inner {
    background: transparent; margin: 0px 60px;
    z-index: 1;
}
.property-tab-menu {
    margin-left: 50px; width: max-content;
    box-shadow: 0 0 50px 0 rgba(0, 0, 0, 0.06);
}
.property-tab-menu .list-group {
    display: flex; flex-direction: initial;
    padding-left: 0; margin-bottom: 0;
    border-radius: 0;
}
.property-tab-menu .list-group-item {
    position: relative; display: block;
    padding: 23px 58px; text-decoration: none;
    background-color: #fff; border: none;
    font-size: 20px; font-weight: 500;
    color: #000000;
}
.property-tab-menu .list-group-item.active, .property-tab-menu .list-group-item:hover {
    z-index: 2; color: #fff;
    background-color: #3454d1; border: none;
    margin: 0;
}
.property-tab-d-inner {
    background: #fff; padding: 20px 50px 50px 50px;
    box-shadow: 0px 13px 35px #0000000a; border-radius: 6px;
}
.single-property-details {
    margin-top: 30px;
}
.single-property-details label {
    font-weight: 500; color: #000;
    text-transform: capitalize; display: block;
    margin-bottom: 15px; font-size: 16px;
}
.your-location input {
    width: 100%; height: 60px;
    border-radius: 12px; border: 1px solid #F1F1F1;
    box-shadow: 0px 12px 30px #00000012; color: #818790;
    font-size: 14px; padding: 15px 30px;
    font-weight: 400;
}
.single-property-details .nice-select {
    width: 100%; height: 60px;
    border-radius: 12px; border: 1px solid #F1F1F1;
    box-shadow: 0px 12px 30px #00000012; color: #818790;
    font-size: 14px; padding: 15px 30px;
    font-weight: 400; margin: 0;
}
.single-property-details .nice-select::after {
    border-bottom: 2px solid #818790; border-right: 2px solid #818790;
    height: 7px; width: 7px;
    right: 34px; top: 28px;
}
.single-property-details .nice-select .list {
    margin-top: 5px; opacity: 0;
    overflow: hidden; padding: 0;
    position: absolute; top: 100%;
    left: 0; z-index: 9;
    background: #FFFFFF; box-shadow: 0px 10px 20px #0000000d;
    width: 100%; border-radius: 8px;
    margin-bottom: 0;
}
.single-property-details .nice-select.open .list {
    opacity: 1; pointer-events: auto;
    transform: scale(1) translateY(0);
}
.single-property-details .nice-select .option {
    list-style: none; min-height: 40px;
    outline: none; text-align: left;
    transition: all 0.3s; display: block;
    background: transparent; color: #818790;
    margin: 0; padding: 0px 30px;
    border-radius: 0; border: none;
    font-size: 14px; font-weight: 400;
}
.single-property-details .nice-select .option:hover {
    background: #3454d1; color: #fff;
}
.single-property-details .nice-select .list:hover .option:not(:hover) {
    background: transparent !important; color: #818790;
}
.single-property-details .option.selected.focus {
    background: #3454d1; color: #fff;
}
.price-range {
    margin-right: 22px; margin-left: 2px;
}
.price-range input {
    border: none; height: 45px;
    padding: 0;
}
.single-property-btn {
    position: relative; margin-top: 70px;
}
.single-property-btn .button {
    border: none; height: 60px;
    width: 100%; padding: 0;
}
.single-property-btn .button i {
    margin-right: 10px;
}
.price-range .price-filter {
    display: block;
}
.price-range .slider-range {
    box-shadow: none; border: none;
    height: 10px; background: #3454d1;
    border-radius: 0;
}
.price-range .slider-range .ui-slider-range {
    box-shadow: none; background: #3454d1;
    border-radius: 0px; border: none;
}
.price-range .ui-slider-handle.ui-state-default.ui-corner-all {
    width: 20px; height: 20px;
    line-height: 20px; background: #fff;
    border: none; border-radius: 4px;
    top: -6px; border: 2px solid #3454d1;
    margin: 0;
}
.ui-corner-all::before, .ui-corner-all::after {
    content: ""; background: #3454d1;
    position: absolute; width: 1px;
    height: 6px; top: 5px;
}
.ui-corner-all::before {
    left: 6px;
}
.ui-corner-all::after {
    right: 6px;
}
.price-range .label-input {
    margin-top: 15px;
}
.price-range .label-input span {
    margin-right: 5px; color: #282828;
}
.price-range .label-input input {
    border: none; margin: 0;
    font-weight: normal; font-size: 14px;
    color: #818790;
}

/* ABOUT */
.about-area {
    position: relative;
}
.about-area .bg-image.bg-img-bottom {
    height: 90%;
}
.about-content {
    margin-right: 50px; z-index: 1;
    position: relative;
}
.small-title {
    font-size: 18px; font-weight: 500;
    color: #3454d1; position: relative;
    display: block; margin-bottom: 15px;
    padding-right: 55px; margin-top: -0.28em;
    width: fit-content; width: -moz-fit-content;
    margin-right: auto;
}
.small-title::before {
    position: absolute; content: "";
    width: 40px; height: 2px;
    background: #FFA726; bottom: 50%;
    right: 0;
}
.about-title {
    border-bottom: 1px solid #EDEDED; padding-bottom: 20px;
    margin-bottom: 30px;
}
.about-top-content p {
    margin: 0;
}
.about-content-bottom {
    display: flex;
}
.about-content-widget {
    text-align: center; padding: 25px 20px 20px 20px;
    width: 145px; max-width: 100%;
    background: #fff; box-shadow: 0px 13px 35px #00000012;
    border-radius: 12px; border: 2px solid #F1F1F1;
    margin-top: 40px; transition: all 0.4s ease;
    width: 145px;
}
.about-content-widget:hover {
    border: 2px solid #3454d1;
}
.about-content-widget i {
    font-size: 40px; margin-bottom: 10px;
    color: #FFA726;
}
.about-content-widget span {
    display: block; font-size: 15px;
}
.about-img-area {
    position: relative;
}
.about-img img {
    width: 100%; height: 100%;
}
.about-property-details {
    background: #fff; box-shadow: 1px 10px 58px #00000012;
    padding: 54px 60px; border-radius: 12px;
    position: absolute; top: 147px;
    left: 155px; border: 2px solid #F4F4F4;
}
.a-property-price p {
    margin: 0;
}
.a-property-btn {
    margin-top: 30px;
}
.a-property-btn .theme-btn {
    display: inline-block;
}

/* INVESTORS */
.work-process-area {
    padding: 150px 0px; position: relative;
    overflow: hidden;
}
.work-process-slider {
    margin: 0 -15px -25px -15px;
}
.work-process-slider .slick-slide {
    margin-left: 15px; margin-right: 15px;
    margin-bottom: 25px;
}
.work-process-area .bg-image.bg-img-top {
    position: absolute; left: 0;
    top: 135px; width: 330px;
    height: 330px;
}
.single-process {
    text-align: center; background: #fff;
    padding: 60px; border-radius: 12px;
    border: 2px solid #EDEDED91; transition: all 0.4s ease;
    box-shadow: 0px 10px 17px #0000000a;
}
.single-process:hover {
    border: 2px solid #3454d1;
}
.process-icon {
    margin-bottom: 25px;
}
.process-icon i {
    font-size: 55px; color: #FFA726;
}
.process-content .process-title {
    margin-bottom: 10px;
}
.single-process:hover .process-title {
    color: #3454d1;
}
.process-content p {
    margin: 0;
}

/* SELL SECTION / PORTFOLIO */
.portfolio-area {
    position: relative;
}
.portfolio-top {
    margin-bottom: 80px;
}
.portfolio-c-top-title {
    z-index: 1; position: relative;
}
.portfolio-c-top-title .p-title {
    font-size: 45px; margin: 0;
}
.single-portfolio {
    position: relative;
}
.single-portfolio:hover .portfolio-image img, .single-portfolio.active .portfolio-image img {
    transform: scale(1.1);
}
.portfolio-image {
    overflow: hidden; transition: all 0.4s ease;
}
.single-portfolio:hover .portfolio-image::before, .single-portfolio.active .portfolio-image::before {
    opacity: 0.2; visibility: visible;
}
.portfolio-image::before {
    position: absolute; content: "";
    width: 100%; height: 100%;
    background: #000; opacity: 0.2;
    left: 0; top: 0;
    opacity: 0; visibility: hidden;
    z-index: 1; transition: all 0.6s ease;
}
.single-portfolio:hover .portfolio-content, .single-portfolio.active .portfolio-content {
    opacity: 1; visibility: visible;
    transform: translateY(0);
}
.single-portfolio:hover .portfolio-content {
    opacity: 1; visibility: visible;
    transform: translateY(0);
}
.portfolio-main .width-auto {
    width: 66% !important;
}
.portfolio-content {
    background: #fff; padding: 40px;
    position: absolute; bottom: 40px;
    transform: translateY(150px); opacity: 0;
    visibility: hidden; transition: all 0.6s ease;
    z-index: 1; left: 39px;
}
.portfolio-content .portfolio-title {
    margin-bottom: 2px;
}
.portfolio-content .portfolio-title a:hover {
    color: #3454d1;
}
.p-property-view li {
    display: inline-block; font-size: 14px;
    margin-right: 10px; line-height: 0;
}
.p-property-view li:last-child {
    margin: 0;
}
.p-property-view li i {
    margin-right: 5px;
}

/* TESTIMONIALS */
.testimonials {
    position: relative;
}
.testimonial-video {
    position: absolute; content: "";
    width: 50%; height: 100%;
    left: 0; background-size: cover;
    background-position: center; background-repeat: no-repeat;
    top: 0;
}
.testimonial-video::after {
    position: absolute; content: "";
    width: 100%; height: 100%;
    left: 0; background: #000;
    top: 0; opacity: 0.1;
}
.testimonial-video .video-main {
    margin: 0; position: absolute;
    left: 50%; margin-left: -50px;
    margin-top: -50px; top: 50%;
    z-index: 11;
}
.testimonial-video .promo-video .waves-block .waves {
    position: absolute; width: 230px;
    height: 230px; opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; border-radius: 100%;
    animation: waves 3s ease-in-out infinite; left: 50%;
    z-index: 444; background: transparent;
    margin-left: -115px; top: 50%;
    margin-top: -115px; border: 2px solid #fff;
}
.testimonial-video .promo-video .waves-block .wave-1 {
    animation-delay: 1s;
}
.testimonial-video .promo-video .waves-block .wave-2 {
    animation-delay: 2s;
}
.testimonial-video .promo-video .waves-block .wave-3 {
    animation-delay: 3s;
}
.testimonial-video .video-main .video {
    height: 100px; width: 100px;
    line-height: 100px; text-align: center;
    border-radius: 100%; background: #ffffff70;
    color: #fff; display: inline-block;
    z-index: 444; padding: 0;
    padding-left: 2px; font-size: 25px;
    font-weight: 600; position: relative;
    transition: all 0.4s ease; border: 2px solid #fff;
}
.testimonial-video .video-main .video:hover {
    background: #3454d1; color: #fff;
    border: 2px solid transparent;
}
.testimonial-main-content {
    padding: 100px 0px; margin-left: 100px;
}
.testimonials .testimonial-content {
    padding: 0; margin-bottom: 30px;
}
.testimonial-content p {
    font-size: 17px; line-height: 30px;
    font-style: italic; font-weight: 500;
}
.testimonial-content .t-title {
    font-size: 25px; color: #3454d1;
    margin-bottom: 20px; font-style: initial;
    font-weight: 600; line-height: 23px;
    text-transform: capitalize;
}
.testimonial-content .t-title span {
    display: block; font-size: 14px;
    margin-top: 5px; color: #fff;
    font-weight: 600;
}

/* NEWSLETTER / BLOG */
.blog-area {
    background-color: #fff; overflow: hidden;
}
.blog-slider {
    margin: 0 -15px -25px -15px;
}
.blog-slider .slick-slide {
    margin-left: 15px; margin-right: 15px;
    margin-bottom: 25px;
}
.single-blog {
    background: #fff; border: 2px solid #F4F4F4;
    box-shadow: 0px 10px 17px #0000000a;
}
.single-blog:hover .blog-img img {
    transform: scale(1.1);
}
.blog-img {
    overflow: hidden; transition: all 0.4s ease;
}
.blog-img img {
    width: 100%; height: 100%;
}
.blog-content {
    padding: 30px;
}
.blog-meta {
    margin-bottom: 5px;
}
.blog-meta a {
    display: inline-block; margin-right: 15px;
    font-size: 14px; color: #818790;
    font-weight: 400; display: inline-block;
}
.blog-meta a:last-child {
    margin: 0;
}
.blog-meta a:hover {
    color: #3454d1;
}
.blog-meta a i {
    margin-right: 8px;
}
.blog-content .blog-title {
    margin-bottom: 17px; color: #1a1a1a;
    font-weight: 400;
}
.blog-content .blog-title a:hover {
    color: #3454d1;
}
.blog-admin {
    display: flex;
}
.blog-admin img {
    margin-right: 15px; border-radius: 5px;
}
.blog-admin-title span {
    display: inline-block; margin: 0;
    font-size: 12px; color: #3454d1;
    margin-bottom: 6px;
}
.blog-admin-title .author-title {
    font-weight: 500; line-height: 0;
    margin: 0;
}
.blog-admin-title .author-title a {
    color: #1a1a1a;
}
.blog-admin-title .author-title a:hover {
    color: #3454d1;
}
.blog-admin-title span {
    margin: -1px 0 11px 0;
}

/* CURRENT HOMEPAGE SEARCH: SHARED TEMPLATE CLASS */
.property-g-details {
    top: -70px;
}

/* SHARED UI: PRELOADER / MENU / BACK TO TOP */
.preloader {
    position: fixed; left: 0;
    top: 0; width: 100%;
    height: 100%; background-color: #3454d1;
    z-index: 9999999; text-align: center;
}
.loading {
    position: absolute; top: 50%;
    left: 50%; transform: translate(-50%, -50%);
    height: 40px; display: flex;
    align-items: center;
}
.loader-line {
    width: 7px; height: 40px;
    background: #fff; margin: 0 3px;
    border-radius: 3px; animation: loading 1s infinite;
}
.loader-line:nth-child(2) {
    animation-delay: 0.1s;
}
.loader-line:nth-child(3) {
    animation-delay: 0.2s;
}
.loader-line:nth-child(4) {
    animation-delay: 0.3s;
}
.loader-line:nth-child(5) {
    animation-delay: 0.4s;
}
.loader-line:nth-child(6) {
    animation-delay: 0.5s;
}
.loader-line:nth-child(7) {
    animation-delay: 0.6s;
}
.loader-line:nth-child(8) {
    animation-delay: 0.7s;
}

/* Preserve original preloader animation. */
@keyframes loading {
    0% { height: 0; }
    50% { height: 40px; }
    100% { height: 0; }
}
.scrollToTop {
    right: 100px; z-index: 33;
    bottom: 40px; position: fixed;
    text-align: center; opacity: 0;
    transform: translateX(50px); visibility: hidden;
    transition: all 1s ease;
}
.scrollToTop.show {
    opacity: 1; visibility: visible;
    transform: translateX(0px);
}
.scrollToTop i {
    height: 55px; width: 55px;
    line-height: 55px; background: #3553D1;
    border-radius: 10px; font-size: 16px;
    transition: all 0.6s ease; display: block;
    color: #fff;
}
.scrollToTop i:hover {
    background: #1a1a1a; color: #fff;
}
.offcanvas-toggler {
    text-align: center; display: inline-block;
    padding: 0px !important; width: 50px;
    height: 50px; z-index: 3;
    border-radius: 50%; background: #FFF;
    border: none; position: absolute;
    right: 25px; top: 23px;
    display: none;
}
.offcanvas-toggler:hover {
    background: #FFF;
}
.offcanvas-toggler .line {
    position: relative; display: block;
    width: 25px; height: 2px;
    background: #000; margin-left: auto;
    margin-right: auto; transition: all 0.3s;
}
.offcanvas-toggler .line + .line {
    margin-top: 4px;
}
.offcanvas-toggler:hover .line:nth-child(1) {
    transform: rotate(45deg); top: 7px;
}
.offcanvas-toggler:hover .line:nth-child(2) {
    opacity: 0; visibility: hidden;
}
.offcanvas-toggler:hover .line:nth-child(3) {
    transform: rotate(-46deg); bottom: 5px;
}
.offcanvas-modal.modal.fade .modal-dialog {
    transform: translateX(-100%);
}
.offcanvas-modal.modal.show .modal-dialog {
    transform: translateX(0%);
}
.offcanvas-dialog {
    position: absolute; top: 0;
    left: 0; width: 300px;
    height: 100%; margin: 0;
}
.offcanvas-dialog .modal-content {
    height: 100%; border-radius: 0;
    border: 0;
}
.offcanvas-header {
    border: none;
}
.offcanvas-menu {
    position: relative; z-index: 1;
    overflow-y: scroll;
}
.offcanvas-menu::before {
    position: absolute; z-index: -1;
    top: 0; right: 0;
    bottom: 0; left: 0;
    content: ""; background-color: #fff;
}
.offcanvas-menu ul ul {
    display: none;
}
.offcanvas-menu > ul > li > ul li {
    border-bottom: 0px; margin: 10px 0px;
}
.offcanvas-menu > ul > li > ul li a {
    padding-left: 15px; font-weight: 400;
    font-size: 14px;
}
.offcanvas-menu li {
    margin-bottom: 20px;
}
.offcanvas-menu li.active > ul {
    display: block;
}
.offcanvas-menu li:last-child {
    margin: 0;
}
.offcanvas-menu li a {
    font-weight: 500; display: block;
    text-transform: capitalize; color: #1a1a1a;
    padding: 0px; position: relative;
    font-size: 15px;
}
.offcanvas-menu .sub-menu {
    padding: 0;
}
.offcanvas-menu li.menu-arrow a::after {
    position: absolute; margin-left: 7px;
    font-size: 14px; font-family: "Font Awesome 5 Free";
    font-weight: 600; content: "\f105";
    transition: all 0.2s ease;
}
.offcanvas-menu li.menu-arrow.active a::after {
    transform: rotate(90deg);
}
.offcanvas-menu li.menu-arrow .sub-menu li a::after {
    display: none;
}
.offcanvas-menu li a:hover {
    color: #3454d1;
}
.offcanvas-menu li a i {
    margin-left: 10px;
}
.offcanvas-modal .modal-content {
    padding: 0px 15px;
}

@media only screen and (max-width: 1550px) {
    .logo {
        max-width: 290px;
    }
    .gx-60 {
        --bs-gutter-x: 30px;
    }
    .single-property-btn .button {
        font-size: 14px;
    }
    .hero-container {
        max-width: 1250px;
    }
    .hero-title {
        font-size: 65px; line-height: 80px;
    }
    .testimonial-main-content {
        margin-left: 80px;
    }
    .single-property-details .nice-select {
        padding: 15px 20px;
    }
    .single-property-details .nice-select::after {
        right: 23px;
    }
    .your-location input {
        padding: 15px 20px;
    }
    .single-property-details .nice-select .option {
        padding: 0px 20px;
    }
    .property-tab-menu .list-group-item {
        font-size: 16px;
    }
    .single-property-details label {
        font-size: 15px;
    }
    .work-process-area .bg-image.bg-img-top {
        width: 250px; height: 250px;
    }
    .scrollToTop {
        right: 30px;
    }
}

/* FOOTER */
.footer-top {
    background: #F6F6F6; padding: 70px 0px 80px;
    background-size: cover; background-position: center;
    background-repeat: no-repeat;
}
.single-f-widget {
    margin-top: 30px;
}
.widget_title {
    font-size: 30px; margin-bottom: 20px;
    line-height: 30px;
}
.footer-social {
    margin-top: 30px;
}
.footer-social li {
    display: inline-block; margin-right: 12px;
}
.footer-social li:last-child {
    margin: 0;
}
.footer-social li a {
    width: 50px; height: 50px;
    line-height: 50px; display: block;
    border: 2px solid #EBEBEB; text-align: center;
    border-radius: 10px; font-size: 15px;
    background: transparent;
}
.footer-social li a:hover {
    background: #3454d1; color: #fff;
    border: 2px solid transparent;
}
.f-services-widget {
    padding-left: 50px;
}
.footer-services li {
    float: left; width: 50%;
    margin-bottom: 16px;
}
.footer-services li:last-child {
    margin: 0;
}
.footer-services li::before {
    position: relative; font-size: 14px;
    font-family: "Font Awesome 5 Free"; font-weight: 600;
    content: "\f30b"; margin-right: 10px;
    transition: all 0.3s ease;
}
.footer-services li a {
    font-size: 16px; font-weight: 400;
}
.footer-services li a:hover {
    color: #3454d1;
}
.footer-services li:hover {
    color: #3454d1;
}
.footer-services li:hover:before {
    margin-right: 12px;
}
.footer-services li a i {
    margin-right: 10px; transition: all 0.4s ease;
    font-size: 15px;
}
.f-news-feed {
    display: flex; align-items: center;
    margin-bottom: 20px;
}
.f-news-feed:last-child {
    margin: 0;
}
.f-news-feed img {
    margin-right: 20px;
}
.n-feed-meta a {
    font-size: 14px; display: inline-block;
    font-weight: 400;
}
.n-feed-meta a:hover {
    color: #3454d1;
}
.f-news-content i {
    margin-right: 5px; font-weight: 400;
}
.n-feed-meta {
    margin-bottom: 2px; display: block;
}
.f-news-content .footer-n-title a {
    font-size: 18px; display: block;
    color: #1a1a1a; line-height: 1.3;
}
.f-news-content .footer-n-title a:hover {
    color: #3454d1;
}
.copyright {
    padding: 25px 0px; background: #EFEFEF;
    text-align: center;
}
.copyright p a {
    color: #1a1a1a;
}
.copyright p a:hover {
    color: #3454d1;
}
