@import url("https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:ital,wght@0,200..800;1,200..800&display=swap");
:root {
  --primary: #28a745;
  /* --secondary: #0e0e46; */
  --secondary: #000;
  --third-color: #fd3358;
  --dots-color: #28a745;
  --footer-bg: #061b06;
  --blue-color: #0f2f0f;
  --text-color: #8a909a;
  --body-text: "Plus Jakarta Sans", sans-serif;
}
*,
*::before,
*::after {
  transition: all 0.7s ease;
}
body,
body p,
body li {
  font-size: 15px;
  font-family: var(--body-text);
  color: var(--text-color);
}
.text-blue{
  color: var(--blue-color) !important;
}
body p,
body li {
  text-align: justify;
}
a {
  text-decoration: none !important;
}
.text-secondary {
  color: var(--secondary) !important;
}
.bg-primary {
  background-color: var(--primary) !important;
}
.text-primary {
  color: var(--primary) !important;
}
section.py-5 {
  padding: 80px 0 !important;
}
.btn {
  position: relative;
  padding: 15px 30px;
  overflow: hidden;
  font-size: 15px;
  z-index: 1;
  font-weight: bold;
  border-radius: 10px;
}
.btn-primary {
  background: var(--primary) !important;
  border-color: var(--primary) !important;
}
.btn-outline-light {
  background: transparent !important;
}
.btn-primary::before,
.btn-outline-light::before {
  position: absolute;
  top: -100%;
  left: 0;
  border-radius: 10px;
  background: whitesmoke;
  height: 100%;
  width: 100%;
  content: "";
  z-index: -1;
}
.btn-outline-light:hover::before,
.btn-primary:hover::before {
  top: 0;
}
.btn:hover {
  color: var(--secondary) !important;
}
header {
  background: rgb(0 0 0 / 0.4);
}
header .nav-link {
  font-weight: 700;
}
.homeVideoSecCaption {
  z-index: 99;
}
.homeVideoSecCaption h1 {
  font-size: 3.7em;
}
.secTitleBottom span {
  background: #000000;
  height: 10px;
  width: 10px;
  transform: rotate(45deg);
  margin: 0 2px;
  opacity: 0.2;
}
.howit-work-card::before {
  position: absolute;
  content: "";
  height: 100%;
  background: var(--primary);
  width: 100%;
  top: 0;
  left: 0;
  z-index: -1;
  transform: rotate(6deg);
}
.howit-work-card h4 {
  margin: 0 0 16px;
  font-size: 20px;
}
.sec-line {
  margin-bottom: 20px;
}
.sec-line .sec-line1 {
  display: inline-block;
  width: 16px;
  height: 6px;
  background: var(--primary);
  border-radius: 30px;
  margin-right: 5px;
}
.sec-line .sec-line2 {
  display: inline-block;
  width: 46px;
  height: 6px;
  background: var(--primary);
  border-radius: 30px;
}
.howit-work-card {
  box-shadow: 0px 4px 24px rgb(189 189 189 / 24%);
  padding: 24px;
}
.howit-work-card .work-card-icon span {
  width: 86px;
  height: 86px;
  border-radius: 50%;
  background: var(--primary);
}
.howit-work-card h4 {
  margin: 0 0 16px;
  font-size: 20px;
}
.property-type-sec {
  background: var(--blue-color);
}
.bg-09 {
  bottom: 80px;
}
.property-type-sec .section-heading h2 {
  font-size: 3em;
}
.property-card {
  padding: 50px 40px;
  border-radius: 10px;
}
.property-card .property-img img {
  height: 71px;
}
.property-type-sec .owl-nav button {
  width: 44px;
  height: 44px;
  background: #fff !important;
  border-radius: 50%;
  border: none;
  -webkit-transition: 0.5s all;
  -ms-transition: 0.5s all;
  transition: 0.5s all;
  color: #000 !important;
}
.property-type-sec .owl-nav button.owl-prev {
  margin-right: 10px;
}
.product-custom .profile-widget {
  box-shadow: 0px 4px 24px rgb(189 189 189 / 24%);
  border-radius: 10px;
}
.product-custom .doc-img .property-img:before,
.product-custom .pro-img .property-img:before {
  content: "";
  background: linear-gradient(
    180deg,
    rgba(0, 0, 0, 0) 0%,
    rgba(0, 0, 0, 0.4) 100%
  );
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 10px 10px 0 0;
}
.product-custom .product-amount h5 {
  font-size: 14px;
  font-weight: 500;
}
.product-custom .product-amount span {
  font-weight: 600;
  font-size: 24px;
}
.product-custom .doc-img .featured span {
  font-size: 14px;
}
.pro-content p {
  font-size: 14px;
  font-weight: 500;
}
.pro-content .rating-count i {
  font-size: 14px;
}
.pro-content h3 {
  margin-bottom: 11px;
  font-size: 24px;
}
.pro-content .details {
  margin: 0 0 20px;
  padding: 20px 20px 15px;
  background-color: #f7f6ff;
}
.pro-content .details li {
  margin-bottom: 5px;
  font-weight: 500;
  margin-right: 10px;
}
.pro-content .details li img {
  margin-right: 8px;
  width: auto;
}
.pro-content .list {
  font-size: 15px;
  font-weight: 700;
}
.pro-content .date {
  font-size: 14px;
  font-weight: 500;
}
.my-owl-nav2 button,
.my-owl-nav button {
  border-radius: 50%;
  border: 0;
  background: #fff;
  width: 44px;
  height: 44px;
  color: #0e0e46;
  box-shadow: 0px 4px 24px rgb(189 189 189 / 24%);
}
.my-owl-nav2 button.owl-prev,
.my-owl-nav button.owl-prev {
  margin-right: 10px;
}
.my-owl-nav2 button:hover,
.my-owl-nav button:hover {
  background: var(--primary);
}
.my-owl-nav2 button:hover .bi,
.my-owl-nav button:hover .bi {
  color: white !important;
}
.city-img:before {
  content: "";
  background: rgba(0, 0, 0, 0.7);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 10px;
  z-index: 1;
}
.city-name {
  padding: 0 0 24px 24px;
}
.city-card-slider .owl-dots button.active {
  background: #fff;
  border: 2px solid var(--dots-color);
  position: relative;
}
.city-card-slider .owl-dots button {
  width: 22px;
  height: 22px;
  margin-right: 10px;
  border-radius: 50%;
  border: 2px solid #fff;
  -webkit-transition: 0.5s all;
  -ms-transition: 0.5s all;
  line-height: 0;
  transition: 0.5s all;
}
.city-card-slider .owl-dots {
  text-align: center;
}
.city-card-slider .owl-dots button span {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #e3e3e3;
  display: inline-block;
}
.city-card-slider .owl-dots button.active span {
  background: var(--dots-color);
}
.city-card-slider .city-list:hover .city-img img,
.single-property-card:hover .img-card img {
  transform: scale(1.2) rotate(-9deg);
}
.single-property-card .buy-property {
  background: rgba(255, 255, 255, 0.9);
  box-shadow: 0 4px 14px rgb(214 214 214 / 24%);
  margin: -55px 20px 0;
  padding: 24px;
  border-radius: 10px;
  position: relative;
}
.single-property-card .buy-property .arrow {
  width: 50px;
  height: 50px;
  background: #ec4040;
  border: 1px solid #ec4040;
  border-radius: 50%;
  color: #fff;
  flex-shrink: 0;
  -webkit-transition: 0.5s all;
  -ms-transition: 0.5s all;
  transition: 0.5s all;
}
.single-property-card .buy-property .arrow:hover {
  background: white !important;
}
.single-property-card .buy-property .arrow i {
  transition: none;
}
.single-property-card .buy-property .arrow i::before {
  -webkit-text-stroke: 1px;
}
.single-property-card .buy-property .arrow.buy-arrow:hover i {
  color: #ec4040 !important;
}
.single-property-card .buy-property .arrow.sell-arrow:hover i {
  color: #fcaf3d !important;
}
.single-property-card .buy-property .arrow.rent-arrow:hover i {
  color: var(--primary) !important;
}
.agent-section {
  background-color: var(--blue-color);
  background-image: url(../media/bg/agent-bg.png),
  url(../media/bg/agent-bg-01.png);
  background-repeat: no-repeat;
  background-position: right;
}
.bg-07 {
  top: 10%;
  right: 170px;
}
.bg-06 {
  bottom: 25px;
  left: 150px;
}
.property-name p{
  text-align: center;
}
.offcanvas{
  transition: 1s ease;
}
.btn[data-bs-dismiss="offcanvas"]{
  padding: 0;
  height: 30px;
  width: 70px;
  border-radius: 0;
}
.agent-section .section-heading p.text-white {
  width: 80%;
}
footer {
  background: var(--footer-bg);
}
footer .footer-top {
  padding: 60px 0;
}
footer .footer-top .footer-content-heading h4 {
  font-size: 22px;
  margin-bottom: 30px;
  text-decoration: underline;
}
span.line {
  height: 1px;
  background: rgb(255 255 255 / 0.15);
  width: 64px;
  right: 15px;
  top: -3px;
}
.navbar-toggler {
  font-size: 20px;
  padding: 5px 10px;
  border-radius: 0;
  color: var(--secondary);
  border: 1px solid var(--secondary);
}
.property-name h4 {
  color: var(--secondary);
  font-weight: bold;
}
.service-border-box {
  position: relative;
  z-index: 1;
  margin: 0px 10px;
  box-shadow: 0 0 20px 10px rgb(0, 0, 0, .05);
  border: 1px solid rgb(0, 0, 0, .1);
}
.service-border-box:before {
  content: '';
  position: absolute;
  left: -10px;
  top: -10px;
  right: -10px;
  bottom: -10px;
  background-color: rgb(238, 238, 238);
  z-index: -1;
  -webkit-transition: all 0.2s linear;
  -moz-transition: all 0.2s linear;
  clip-path: polygon(20% 0%, 83% 0, 100% 20%, 100% 80%, 100% 100%, 0 100%, 0% 80%, 0 0);
  -ms-transition: all 0.2s linear;
  -o-transition: all 0.2s linear;
  transition: all 0.2s linear;
}
.service-box-1 {
  position: relative;
  clip-path: polygon(20% 0%, 83% 0, 100% 20%, 100% 80%, 100% 100%, 0 100%, 0% 80%, 0 0);
  padding: 30px;
}
.service-box-title {
  border-left: 5px solid var(--primary);
  padding-left: 20px;
  margin-left: 0px;
  margin-bottom: 25px;
}
.how_it_works{
  background-image: linear-gradient(rgb(255 255 255 / .8),rgb(255 255 255 / .8)), url(../media/banners/bg-1.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: left top;
}

.service-box-title span {
  font-size: 30px;
  display: block;
  text-align: left;
  line-height: 36px;
}
.service-box-content {
  margin-bottom: 20px;
  padding-bottom: 20px;
}
.wt-icon-box-wraper {
  position: relative;
}
.wt-icon-number {
  position: absolute;
  right: 0px;
  bottom: 0px;
}
.wt-icon-number span {
  font-size: 120px;
  line-height: 100px;
  color: var(--secondary);
  font-weight: 500;
  opacity: 0.1  ;
}
.wt-box.service-box-1::before{
  position: absolute;
  top: 70%;
  left: 0;
  height: 2px;
  width: 50%;
  content: '';
  opacity: .2;
  background: var(--primary);
}
.service-box-1-white::before{
  background: white !important;
}
.page_banner{
  background-image: linear-gradient(rgb(0 0 0 / 50%), rgb(0 0 0 / 50%)), url(../media/banners/page_banner.avif);
  background-size: cover;
  background-position: center;
  background-attachment: fixed;
  padding: 200px 0 100px;
}
.page_banner h1{
  font-size: 50px;
  font-weight: bold;
}
.aboutContent div.row p{
  font-weight: 700;
  font-size: 16px;
  color: rgb(0 0 0 / 75%);
}
.steperStepsHead::before {
  z-index: 1;
  content: "";
  position: absolute;
  width: 20px;
  height: 20px;
  background: var(--secondary);
  left: 0px;
  top: 65%;
  transform: translateY(-10px);
  border-radius: 50%;
}
.steperStepsHead::after {
  z-index: 0;
  content: "";
  position: absolute;
  width: 200%;
  height: 1px;
  background: var(--primary);
  left: 0;
  top: 65%;
}
.processStepper{
  padding: 0 30px;
}
.processStepper_description{
  text-align: justify;
}
.processStepper .owl-stage-outer{
  overflow: visible;
}
.steperSteps .steperStepsIcon{
  border-radius: 50%;
  position: relative;
  overflow: hidden;
  height: 60px;
  width: 60px;
}
.steperSteps .steperStepsIcon img{
  height: 60%;
  width: 60%;
}
.steperSteps {
    background: rgb(255 255 255);
    padding: 30px;
    box-shadow: 0 0 9px 9px rgb(0 0 0 / 1%);
}
.steperStepsIcon::before{
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background: var(--secondary);
  z-index: 0;
  transform: scale(0.7);
  opacity: 0;
  border-radius: 50%;
}
.steperStepsHead.position-relative {
    padding: 0 0 11%;
}
.steperSteps:hover .steperStepsIcon::before{
  opacity: 1;
  transform: scale(1);
}
.steperSteps .steperStepsIcon img:nth-child(2){
  opacity: 0;
}
.steperSteps:hover .steperStepsIcon img:nth-child(2){
  opacity: 1;
}

.mission_vision_content ul li::marker{
  color: rgb(0 0 0 / 60%) !important;
}

.about_img{
  border-radius: 30px;
}
.about_img:hover img{
  scale: 1.2;
  rotate: -5deg;
}
.about_img div.position-absolute{
  height: 70px;
  width: 70px;
  border-top-left-radius: 30px;
}
.form-control{
  background: rgb(0, 0, 0, 0.05) !important;
}
.form-control:focus{
  box-shadow: none !important;
}