html {
   scroll-behavior: smooth;
}

body {
   font-family: 'Montserrat', sans-serif;
}

h1,
h2,
h3,
h4,
h5,
h6,
button {
   font-family: 'Merriweather', serif;
   margin-bottom: 0;
   color: #111;
}

.btn:focus {
   outline: none;
   box-shadow: none;
   border: none;
}

button:focus,
input:focus {
   outline: none;
   box-shadow: none;
   border: none;
}

a {
   text-decoration: none;
}

p {
   margin-bottom: 0;
   color: #444;
}

.btn {
   transition: all 0.3s ease-in-out;
   padding: 15px 40px;
   border-radius: 3px;
}

img {
   transition: all 0.5s ease-out;
}

p {
   color: #343a40;
   line-height: 28px;
}

.secondary-theme {
   color: #153048;
}

section {
   padding: 100px 0;
}

.btn-theme {
   background-color: #111;
   color: #fff;
}

.btn-white {
   background-color: #fff;
   color: #111;
}

.card-image {
   display: block;
   transition: all 0.5s ease-out;
   border-radius: 6px;
   position: relative;
   overflow: hidden;
}

.card-image img {
   border-radius: 6px;
}

.btn-theme:hover {
   color: #fff;
   background-color: #153048;
   box-shadow: 0 0.5em 0.5em -0.4em #111;
   transform: translateY(-0.25em);
}

.btn-theme:focus {
   color: #fff;
}

.btn-theme-sm {
   padding: 7px 25px;
}

.navbar.sticky .btn-theme {
   background-color: #153048;
}

.navbar-nav .dropdown-menu {
   border: 1px solid rgb(31 18 56 / 10%);
   background: #fff;
   padding: 20px 0;
   border-radius: 5px;
   transition: all 0.3s ease;
   -webkit-box-shadow: 1.169px 3.825px 15.66px 2.34px rgba(31, 18, 56, 0.09);
   box-shadow: 1.169px 3.825px 15.66px 2.34px rgba(31, 18, 56, 0.09);
   white-space: nowrap;
   min-width: 13rem;
}

.dropdown-item {
   color: #1f1238;
   transition: all 0.3s ease;
   padding: 5px 20px;
}

.navbar-nav .dropdown-menu:after {
   content: '';
   position: absolute;
   width: 15px;
   height: 15px;
   left: 30px;
   top: -8px;
   -webkit-transform: rotate(45deg);
   -ms-transform: rotate(45deg);
   transform: rotate(45deg);
   background-color: #fff;
   border-style: solid;
   border-width: 1px;
   border-color: rgba(31, 18, 56, 0.1) transparent transparent
      rgba(31, 18, 56, 0.1);
}

.card-image::after {
   position: absolute;
   width: 200%;
   height: 0%;
   left: 50%;
   top: 50%;
   background-color: rgba(255, 255, 255, 0.3);
   transform: translate(-50%, -50%) rotate(-45deg);
   content: '';
   z-index: 1;
   border-radius: 6px;
}

.home-slider {
   z-index: 3;
}

.home-slider:after {
   content: '';
   position: absolute;
   top: 0;
   bottom: 0;
   left: 0;
   right: 0;
   background-color: rgb(15, 22, 24, 0.4);
   z-index: 0;
}

.home-slider .carousel-item {
   height: 100vh;
}

.home-slider .carousel-item img {
   height: 100%;
   object-fit: cover;
}

.home-slider .carousel-caption {
   z-index: 1;
   left: 30%;
   text-align: center;
   bottom: 0;
   top: 0;
   display: flex;
   align-items: center;
   flex-direction: column;
   justify-content: center;
   right: 30%;
   transition: all 0.5s ease-in;
}

.home-slider .carousel-caption p {
   color: #fff;
}

.home-slider .carousel-caption h1 {
   font-size: 65px;
   font-weight: 700;
   line-height: 1.2;
   margin-bottom: 20px;
   transition: all 0.5s ease-in;
   color: #fff;
}

.home-slider .carousel-indicators [data-bs-target] {
   width: 12px;
   height: 12px;
   border-radius: 50%;
}

.navbar {
   transition: all 0.5s ease-out;
}

.logo {
   width: auto;
   max-height: 80px;
}

.navbar.sticky {
   background-color: #111;
   transition: all 0.4s ease-in-out;
}

.navbar-toggler {
   width: 30px;
   height: 20px;
   position: relative;
   transition: all 0.3s ease-in-out;
   z-index: 5;
}

.navbar-toggler,
.navbar-toggler:actve,
.navbar-toggler-icon:focus {
   outline: none;
   box-shadow: none !important;
   border: none;
}
.navbar-toggler:focus {
   box-shadow: none;
}

.navbar-toggler span {
   margin: 0;
   padding: 0;
}

.toggler-icon {
   display: block;
   position: absolute;
   height: 2px;
   width: 100%;
   background: #111;
   border-radius: 1px;
   opacity: 1;
   left: 0;
   transform: rotate(0deg);
   transition: all 0.25s ease-in-out;
}

.navbar-toggler.collapsed .toggler-icon {
   background-color: #fff;
}

.middle-bar {
   margin-top: 0;
}

.navbar-toggler .top-bar {
   margin-top: 0;
   transform: rotate(135deg);
}

.navbar-toggler .middle-bar {
   opacity: 0;
   filter: alpha(opacity=0);
}

.navbar-toggler .bottom-bar {
   margin-top: 0;
   transform: rotate(-135deg);
}

.navbar-toggler.collapsed .top-bar {
   margin-top: -10px;
   transform: rotate(0deg);
}

.navbar-toggler.collapsed .middle-bar {
   opacity: 1;
   filter: alpha(opacity=100);
}

.navbar-toggler.collapsed .bottom-bar {
   margin-top: 10px;
   transform: rotate(0deg);
}

.scroll-down {
   position: absolute;
   bottom: 50px;
   left: 50%;
   width: 25px;
   height: 25px;
   z-index: 5;
   transform: translateY(-80px) translateX(-50%) rotate(45deg);
   cursor: pointer;
}

.scroll-down span {
   position: absolute;
   top: 0;
   left: 0;
   display: block;
   width: 100%;
   height: 100%;
   border-bottom: 2px solid #fff;
   border-right: 2px solid #fff;
   animation: animate 1.5s linear infinite;
   opacity: 0;
}

.scroll-down span:nth-child(1) {
   transform: translate(-15px, -15px);
   animation-delay: -0.4s;
}

.scroll-down span:nth-child(2) {
   transform: translate(0, 0);
   animation-delay: -0.2s;
}

.scroll-down span:nth-child(3) {
   transform: translate(15px, 15px);
   animation-delay: 0s;
}

@keyframes animate {
   0% {
      top: -5px;
      left: -5px;
      opacity: 0;
   }
   25% {
      top: 0px;
      left: 0px;
      opacity: 1;
   }
   50%,
   100% {
      top: 5px;
      left: 5px;
      opacity: 0;
   }
}
.titlehead h1 {
   font-weight: 700;
   font-size: 35px;
}

.two-column-figure {
   position: relative;
   overflow: hidden;
}

.track-card:hover .card-image::after,
.list-card:hover .list-card-image::after,
.two-column-figure:hover .card-image::after {
   height: 250%;
   transition: all 600ms linear;
   background-color: transparent;
}

.track-card:hover .card-image img,
.list-card:hover .card-image img,
.two-column-figure:hover .card-image img {
   transform: scale(1.1);
   border-radius: 6px;
}

.services-offered {
   background-color: #07152d0d;
}

.item-list .list-card {
   background-color: #fff;
   position: relative;
}

.item-list .list-card-image {
   position: relative;
   overflow: hidden;
}

.item-list .list-card .list-card-body {
   padding: 20px 15px 30px;
}
.item-list .list-card .list-card-body h2 {
   font-size: 18px;
   font-weight: 700;
   transition: 0.2s all ease-in-out;
}

@media (min-width: 992px) {
   .navbar-light .navbar-nav .nav-link {
      color: #fff;
      transition: all 0.3s ease-in;
   }
   .navbar-light .navbar-nav .nav-link:active,
   .navbar-light .navbar-nav .nav-link:focus {
      color: #fff;
   }
   .navbar-expand-lg .navbar-nav .nav-link {
      padding-right: 1.5rem;
      padding-left: 1.5rem;
   }
}

.center-banner {
   background-image: linear-gradient(
         90deg,
         rgba(13, 26, 54, 1) 0%,
         rgba(0, 0, 0, 0.8) 100%
      ),
      url('../images/agent.jpg');
   background-size: cover;
   background-repeat: no-repeat;
}

.center-banner .banner-caption {
   border-bottom: 1px solid rgb(102, 102, 102, 0.36);
}

.banner-caption .caption-content {
   width: 90%;
}

.banner-info .email-list-box p {
   color: #ccc;
}

.banner-info .icon-box {
   width: 70px;
   height: 70px;
   background-color: #000;
   color: #fff;
   font-size: 25px;
   margin-right: 15px;
   border-radius: 50%;
   transition: all 0.3s ease-in;
}

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

.partners .list-partners {
   background-color: #fff;
   border-radius: 5px;
   padding: 8px;
   transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;
   max-width: 150px;
   width: 100%;
   text-align: center;
   position: relative;
}

.partners .list-partners img {
   margin: 0 auto;
   transition: all 0.2s ease-in;
   -webkit-filter: grayscale(1);
   filter: grayscale(1);
   cursor: pointer;
   height: 100%;
}

.partners .list-partners img:hover {
   -webkit-filter: grayscale(0);
   filter: grayscale(0);
}

.partners .list-partners:hover {
   box-shadow: 0px 0px 7px -2px rgba(0, 0, 0, 0.2);
}

.full-width-grid.owl-carousel .owl-stage {
   display: flex;
   align-items: center;
}

.footer {
   background-color: #e4e7e7;
}

.footer .footer-logo {
   width: 200px;
   margin: 0 auto;
}

.footer-menu li {
   line-height: 2;
   transition: all 0.3s ease-in;
}

.footer-menu li a {
   color: #444;
}

.footer-menu li a:hover {
   color: #000;
}

.footer .address-info .icon {
   background: #484848;
   color: #fff;
   width: 40px;
   height: 40px;
   border-radius: 50%;
   transition: all 0.3s ease-in-out;
   margin-right: 20px;
}

.footer .social-icons a {
   display: inline-flex;
   color: #484848;
   font-size: 25px;
   padding-right: 10px;
}

.address-info .info-details {
   color: #343a40;
}

.navbar .social-icons {
   color: #fff;
   padding-right: 1.5rem;
   padding-left: 1.5rem;
}

.navbar .social-icons span {
   display: inline-flex;
   padding: 0 1rem;
}

.navbar .social-icons:first-child span {
   padding-left: 0;
}

.social-icons span a {
   color: #fff;
   font-size: 20px;
   transition: all 0.3s ease;
}

.social-icons span a:hover {
   color: #5ab1ff;
}
.menu-right .btn {
   margin-left: 1.5rem;
}

.overview-tabs .nav-tabs {
   border-bottom: transparent;
   justify-content: center;
   margin-bottom: 10px;
}

.overview-tabs .nav-tabs .nav-link.active {
   color: #fff;
   background-color: #153048;
}

.overview-tabs .nav-tabs .nav-link {
   color: #343a40;
   padding-left: 2.5rem;
   padding-right: 2.5rem;
   background: #f5f5f5;
   border: 1px solid #e0e0e0;
}

.overview-tabs .tab-inner-content {
   border-radius: 10px;
   border: 1px solid #666;
   padding: 40px 50px;
   background-color: #101010;
}

.overview-tabs .overview-box {
   display: flex;
   flex-direction: column;
   gap: 10px;
}

.overview-tabs .overview-box h3,
.overview-tabs .overview-box .title {
   font-family: 'Montserrat', sans-serif;
   color: #fff;
}

.overview-tabs .overview-box .title {
   font-weight: 700;
}

.overview-tabs .overview-box h3.value {
   font-size: 20px;
   color: #666;
}

.overview-tabs .overview-box h3 {
   font-size: 22px;
}

.overview-tabs .overview-box h3 span {
   color: #5ab1ff;
}

.guides .guide-box {
   background-color: #101010;
   padding: 20px 25px 35px;
   border-radius: 15px;
   color: #fff;
   position: relative;
   transition: all 0.3s ease-in;
}

.guides .guide-box:hover {
   transform: translateY(-5px);
   -webkit-box-shadow: -1px 3px 10px 1px rgba(135, 135, 135, 1);
   -moz-box-shadow: -1px 3px 10px 1px rgba(135, 135, 135, 1);
   box-shadow: -1px 3px 10px 1px rgba(135, 135, 135, 1);
}

.guides .guide-box p {
   color: #fff;
}

.guides .guide-box .profile {
   width: 100px;
   position: relative;
   overflow: hidden;
   border-radius: 50%;
   height: 100px;
   display: flex;
}

.guides .guide-box .profile img {
   border-radius: 50%;
   transition: all 0.3s ease-in;
   width: 100%;
   height: 100%;
   object-fit: cover;
}

.guides .guide-box:hover .profile img {
   transform: scale(1.1);
}

.guides .guide-box .guide-title {
   font-weight: 600;
   color: #fff;
   font-size: 22px;
}

.guides .guide-box .link {
   width: 50px;
   height: 50px;
   border-radius: 50%;
   border: 5px solid #153048;
   display: flex;
   justify-content: center;
   align-items: center;
   font-size: 25px;
   transition: all 0.2s ease-in;
}

.guides .guide-box .link i {
   transform: rotate(45deg);
}

.guides .guide-box:hover .link {
   background-color: #153048;
   border: transparent;
}

.track-records .track-card {
   background-color: #101010;
   padding: 15px;
   border-radius: 15px;
   margin-bottom: 20px;
}

.track-records .track-card-image {
   position: relative;
   overflow: hidden;
   margin-right: 15px;
   height: 100%;
   border-radius: 15px;
   width: 100%;
}

.track-records .track-card-image img {
   border-radius: 15px;
   /* height: 100%; */
   object-fit: cover;
}

.track-card .track-records-details {
   color: #fff;
}

.track-card .track-records-details h4 {
   color: #fff;
   font-size: 18px;
   margin-bottom: 15px;
}

.track-card .track-records-details p {
   color: #9a9a9a;
   font-size: 14px;
   line-height: 20px;
   padding-bottom: 10px;
}

.track-card .track-records-details p span {
   color: #fff;
}

.recent-listing .listing-property {
   position: relative;
   overflow: hidden;
   background-color: #fff;
   padding: 10px;
   border-radius: 10px;
}

.recent-listing .listing-property img {
   border-radius: 10px;
}

.recent-listing ul li {
   line-height: 28px;
   padding-bottom: 10px;
}

.features-list .check {
   width: 30px;
   height: 30px;
   background-color: #f2f2f2;
   border-radius: 3px;
   display: inline-flex;
   justify-content: center;
   align-items: center;
   margin-right: 15px;
   transition: all 0.3s ease;
}

.features-list p:hover .check {
   background-color: #5ab1ff;
   color: #fff;
}

.features-list p {
   margin-bottom: 15px;
   cursor: pointer;
}

@media (max-width: 576px) {
   .overview-tabs .overview-box {
      margin-bottom: 30px;
   }
   .overview-tabs .nav-tabs .nav-link {
      padding-left: 1.25rem;
      padding-right: 1.25rem;
   }
   .guides .guide-box {
      margin-bottom: 25px;
      text-align: center;
   }
   .guides .guide-box .link,
   .guides .guide-box .profile {
      margin: 0 auto;
   }
   .listing-property-details h3 {
      margin-top: 25px;
   }
   .flex-reverse-mbl {
      flex-direction: column-reverse;
      margin-top: 25px;
   }
}

@media (max-width: 768px) {
   section {
      padding: 60px 0;
   }
   .logo {
      width: 125px;
   }
   .menu-right .btn {
      margin-left: 0;
   }
   .navbar .social-icons {
      margin-bottom: 2.5rem;
   }
   .nav-mbl {
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: center;
      gap: 3.5rem;
   }

   .navbar-nav {
      width: 100%;
      display: flex;
      justify-content: center;
      align-items: center;
   }
   .menu-right {
      flex-direction: column;
      transition: all 0.3s ease;
      animation: infinite-spinning 1s;
   }

   @keyframes infinite-spinning {
      from {
         transform: translateY(-100%);
         opacity: 0.25;
      }
      to {
         transform: translateY(0%);
         opacity: 1;
      }
   }
   .navbar-collapse.show {
      background-color: #fff;
   }
   .navbar .social-icons span a,
   .navbar-light .navbar-nav .nav-link {
      color: #111;
      transition: all 0.3s ease-in;
   }
   .banner-info {
      flex-direction: column;
   }
   .email-list-box h5 {
      font-size: 18px;
   }
   .email-list-box {
      margin-bottom: 15px;
   }
   .home-slider .carousel-caption {
      left: 10%;
      right: 10%;
      text-align: center;
   }
   .home-slider .carousel-caption h1 {
      font-size: 33px;
   }
   .titlehead h1 {
      font-size: 28px;
   }
   .footer-about,
   .two-column-content {
      margin-bottom: 25px;
   }
   .navbar-collapse.show {
      left: 0;
      background-color: #fff;
      position: fixed;
      top: 0;
      bottom: 0;
      right: 0;
      opacity: 1;
      transition: all 0.3s ease;
   }
   .navbar-collapse {
      position: absolute;
      opacity: 0;
   }
   .navbar-collapse.show .nav-mbl {
      height: 100%;
      align-items: center;
      justify-content: center;
   }
   .navbar-collapse.show .nav-link {
      font-size: 20px;
   }
   .navbar-light .navbar-nav .nav-link.active {
      text-align: center;
   }
}

@media (min-width: 992px) {
   .navbar-light .navbar-nav .nav-link:hover,
   .navbar-light .navbar-nav .nav-link.active {
      color: #fff;
   }
}

.partners h1 {
   font-size: 25px;
}

.float-info-box {
   background-color: #101010;
   padding: 6px 12px;
   border-radius: 7px 0 0 7px;
   right: 0;
   min-width: 3.5rem;
   top: 50%;
   z-index: 5;
   box-shadow: 0 0 7px rgba(0, 0, 0, 0.25);
   transform: translate(0, -50%);
   display: flex;
   flex-direction: column;
}

.float-info-box a {
   color: #2cd349;
   font-size: 34px;
   display: inline-block;
   line-height: 45px;
}

.float-info-box small {
   font-size: 0.75rem;
}

.float-info-box img {
   width: 32px;
}

.recent-listing {
   background-color: #f8f8f8;
}

.social-icons i {
   transition: all 0.3s ease;
}

.social-icons i:hover {
   color: #111;
}

.tab-section .nav-link img {
   border-radius: 10px;
}

.tab-section .nav-link {
   width: 220px;
   padding: 0;
   border-radius: 10px;
   border: transparent;
   font-size: 18px;
   background-color: rgba(255, 255, 255, 0);
   color: #54595f;
   transition: all 0.3s ease;
   position: relative;
   padding-bottom: 20px;
}

.tab-section .nav-link::after {
   content: '';
   position: absolute;
   bottom: -40px;
   left: 0px;
   right: 0px;
   margin: 0 auto;
   z-index: 1;
   width: 0px;
   height: 0px;
   border-left: 10px solid rgba(0, 0, 0, 0);
   border-right: 10px solid rgba(0, 0, 0, 0);
   border-top: 10px solid #444;
   border-bottom: 0px;
   display: none;
}

.tab-section .nav-link.active::after {
   display: block;
   border-top-color: #153048;
}

.tab-section .nav-link img {
   border-radius: 10px;
   height: 100%;
   object-fit: cover;
   transition: all 0.3s ease;
}

.tab-section .nav-tabs {
   justify-content: space-between;
   padding-bottom: 80px;
}

.tab-section .nav-link p {
   padding-top: 10px;
   margin-bottom: 0;
   color: #7c7c7c;
}

.tab-section .nav-link.active {
   background-color: transparent;
}

.tab-section .nav-link.active p,
.tab-section .nav-link:hover p {
   color: #153048;
}

.tab-section .tab-content {
   margin-top: 60px;
}

.tab-inner h6 {
   color: #54595f;
   font-size: 20px;
   font-weight: 500;
}

.tab-section .tab-inner .card-service {
   min-height: 425px;
}

.tab-section .tab-inner .services {
   padding: 0;
}

.property-list-image {
   margin-bottom: 20px;
   transition: all 0.3s ease;
}

.property-list-image img {
   transition: all 0.3s ease;
   border-radius: 5px;
}

.property-list-image img:hover {
   transform: translateY(-5px);
}

.texthighlight {
   color: #ee4f50;
}

.tab-inner ul li {
   padding-bottom: 15px;
}

.listing-category .list-box-item img {
   border-top-left-radius: 6px;
   border-top-right-radius: 6px;
   position: absolute;
   top: 0;
   bottom: 0;
   left: 0;
   right: 0;
   height: 100%;
   object-fit: cover;
}

.listing-category .list-box-content {
   padding: 25px;
}

.listing-category .list-box-card {
   position: relative;
   border-bottom-left-radius: 6px;
   background: #ffffff;
   border-bottom-right-radius: 6px;
   min-height: 360px;
   transition: all 0.3s ease;
}

.list-box:hover .list-box-card {
   transform: translateY(-5px);
}

.listing-category .list-box-item {
   position: relative;
   height: 275px;
}

.inner-banner {
   position: relative;
   overflow: hidden;
   background-size: cover !important;
   background-repeat: no-repeat;
   height: 50vh;
   width: 100%;
   z-index: 1;
   color: #fff;
   z-index: 5;
   background-position: 100%;
}

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

.inner-bg-overlay {
   background-color: #061455;
   opacity: 0.5;
   transition: background 0.3s, border-radius 0.3s, opacity 0.3s;
   height: 100%;
   width: 100%;
   top: 0;
   left: 0;
   position: absolute;
   z-index: -1;
}

.user-form .form-control {
   border-radius: 5px;
   transition: all 0.3s ease;
   border: 1px solid rgba(0, 0, 0, 0.07);
   padding: 20px;
}

.user-form .form-control:focus {
   outline: none;
   box-shadow: none;
   border: 1px solid #111;
}

.footer-form {
   background-color: #f9f9f9;
}

.copyright {
   background-color: #ccc;
}
