/*

******************************************************************
********************** Common Components *************************
******************************************************************

*/
a.btn {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.5rem;
  width: auto;
  padding: 15px 1.5rem;
  border: 2px solid;
  border-radius: var(--btnRadius);
  font-family: var(--text);
  font-size: 18px;
  line-height: 1;
  font-weight: 600;
  text-transform: capitalize;
  transition: var(--ease);
}
a.btn svg {
  width: 20px;
  height: 20px;
  transition: var(--ease);
}
a.btn:hover {
  filter: brightness(105%);
  transition: var(--ease);
}
a.btn:hover svg {
  transform: translateX(0.2rem);
  transition: var(--ease);
}
.btn span.elementor-button-content-wrapper {
  flex-direction: row-reverse;
}
.all-headings {
  display: flex;
  gap: 30px;
}
@media (max-width: 1199px) {
  .all-headings {
    text-align: center;
    align-items: center;
  }
  .all-headings .subHeadContainer {
    justify-content: center;
  }
}
@media (max-width: 567px) {
  .all-headings {
    gap: 10px;
  }
  .all-headings ul {
    text-align: left;
  }
}
.all-headings .listHere ul {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 15px;
}
.all-headings .listHere ul li {
  font-size: 18px;
  color: var(--light);
  line-height: 28px;
  font-weight: 500;
}
.all-headings .listHere.fullWidth ul {
  grid-template-columns: repeat(1, 1fr);
  gap: 15px;
}
.main-heads * {
  font-size: 80px;
  line-height: 96px;
  font-family: var(--headings);
  font-weight: 500;
}
@media (max-width: 1500px) {
  .main-heads * {
    font-size: 45px;
    line-height: 55px;
  }
}
@media (max-width: 1200px) {
  .main-heads * {
    font-size: 35px;
    line-height: 45px;
    max-width: 100% !important;
  }
}
@media (max-width: 767px) {
  .main-heads * {
    font-size: 30px;
    line-height: 40px;
  }
}
@media (max-width: 567px) {
  .main-heads * {
    font-size: 25px;
    line-height: 35px;
  }
}
@media (max-width: 467px) {
  .main-heads * {
    font-size: 30px;
    line-height: 35px;
  }
}
.main-heads.maxCh .elementor-heading-title {
  max-width: 35ch;
}
.sub-heads * {
  font-family: var(--text);
  font-size: 20px;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: 15%;
}
@media (max-width: 1450px) {
  .sub-heads * {
    font-size: 20px;
  }
}
@media (max-width: 567px) {
  .sub-heads * {
    font-size: 10px;
  }
}
.subHeadContainer {
  gap: 5px;
  align-items: center;
}
.fill-primary strong {
  background-color: var(--primary);
  padding: 2px 15px;
  border-radius: 25px;
  margin-right: 5px;
  display: inline-block;
}
.fill-secondary strong {
  background-color: var(--secondary);
  padding: 2px 15px;
  border-radius: 4px;
  margin-right: 5px;
  display: inline-block;
}
.nts p {
  font-size: 22px;
  line-height: 36px;
  font-family: inherit;
  opacity: 0.6;
}
@media screen and (min-width: 1500px) {
  .nts p {
    font-size: 18px;
    line-height: 30px;
  }
}
@media (max-width: 767px) {
  .nts p {
    font-size: 16px;
    line-height: 32px;
  }
}
@media (max-width: 567px) {
  .nts p {
    font-size: 13px;
    line-height: 25px;
  }
}
.main-heads * strong {
  color: var(--primary) !important;
}
.light-text .sub-heads * {
  color: var(--secondary);
}
.light-text .sub-heads strong {
  color: var(--light);
}
.light-text .main-heads * {
  color: var(--light);
}
.light-text .nts * {
  color: var(--light);
}
.dark-text .sub-heads * {
  color: var(--dark);
}
.dark-text .sub-heads strong {
  color: var(--light);
}
.dark-text .fill-primary * {
  color: var(--primary);
}
.dark-text .main-heads * {
  color: var(--dark);
}
.primarySep svg {
  fill: var(--primary);
  width: 181px;
}
@media (max-width: 567px) {
  .primarySep svg {
    width: 100px;
  }
}
.primarySep svg path {
  fill: var(--primary);
}
.secondarySep svg {
  fill: var(--secondary);
}
.splitCols, .splitcols {
  gap: 7rem;
}
@media screen and (max-width: 1199px) {
  .splitCols, .splitcols {
    flex-direction: column !important;
    gap: 3rem;
  }
}
@media (max-width: 567px) {
  .splitCols, .splitcols {
    gap: 2rem;
  }
}
@media screen and (max-width: 1199px) {
  .splitCols .cols, .splitcols .cols {
    width: 100%;
  }
}
@media screen and (max-width: 1199px) {
  .splitCols .text-col, .splitcols .text-col {
    justify-content: center;
    align-items: center;
    text-align: center;
  }
}
@media (max-width: 1199px) {
  .reverseMob {
    flex-direction: column-reverse !important;
  }
}
@media (max-width: 1199px) {
  .tabletColReversed {
    flex-direction: column !important;
  }
}
.reverseIt {
  flex-direction: row-reverse !important;
}
@media (max-width: 1199px) {
  .reverseIt {
    flex-direction: column !important;
  }
}
@media screen and (max-width: 1199px) {
  .revMob {
    flex-direction: column-reverse !important;
  }
}
.numbersHere {
  gap: 30px;
}
@media screen and (max-width: 1199px) {
  .numbersHere {
    flex-direction: column !important;
  }
}
.numberCols {
  display: flex;
  gap: 20px;
}
.numberCols .numberBig * {
  font-size: 35px;
  font-weight: bold;
  color: var(--primary);
  width: 85px;
}
@media screen and (max-width: 1300px) {
  .numberCols {
    display: flex;
    flex-direction: column !important;
    align-items: flex-start;
    gap: 0px;
  }
}
@media screen and (max-width: 1199px) {
  .numberCols {
    align-items: center;
  }
}
@media screen and (max-width: 1199px) {
  .btnGroup {
    justify-content: center;
  }
}
.primaryBtn .elementor-button {
  background-color: var(--primary);
  border-color: var(--primary);
}
.primaryBtn .elementor-button .elementor-button-content-wrapper {
  color: var(--light);
}
.primaryBtn .elementor-button .elementor-button-content-wrapper svg {
  fill: var(--light);
}
.primaryBtn .elementor-button .elementor-button-content-wrapper svg path {
  fill: var(--light);
}
.secondaryBtn .elementor-button {
  background-color: var(--secondary);
  border-color: var(--secondary);
}
.secondaryBtn .elementor-button .elementor-button-content-wrapper {
  color: var(--light);
}
.secondaryBtn .elementor-button .elementor-button-content-wrapper svg {
  fill: var(--light);
}
.btn.dark .elementor-button .elementor-button-text {
  color: var(--dark);
}
.btn.dark:hover .elementor-button-text {
  color: var(--light);
}
.gradientBtn .elementor-button {
  background-image: var(--gradient);
  border-color: var(--primary);
  border: none;
}
.gradientBtn .elementor-button .elementor-button-content-wrapper {
  color: var(--light);
}
.gradientBtn .elementor-button .elementor-button-content-wrapper svg {
  fill: var(--light);
}
.border .elementor-button {
  background: transparent;
  border: 2px solid;
  background: linear-gradient(to right, var(--primary) 50%, transparent 50%);
  background-size: 200% 100%;
  background-position: right bottom;
  transition: all 0.2s ease-out;
}
.border .elementor-button:hover {
  transition: all 0.2s ease-out;
  background-position: left top;
  border-color: var(--primary);
}
.light.border .elementor-button {
  border-color: var(--light);
  transition: all 0.2s ease-out;
}
.light.border .elementor-button .elementor-button-content-wrapper {
  color: var(--light);
  transition: all 0.2s ease-out;
}
.light.border .elementor-button .elementor-button-content-wrapper svg {
  fill: var(--light);
}
.light.border .elementor-button .elementor-button-content-wrapper svg path {
  fill: var(--light);
}
.light.border:hover .elementor-button {
  border-color: var(--primary);
  transition: all 0.2s ease-out;
}
.light.border:hover .elementor-button .elementor-button-content-wrapper {
  color: var(--light);
  transition: all 0.2s ease-out;
}
.light.border:hover .elementor-button .elementor-button-content-wrapper svg {
  fill: var(--light);
}
.light.border:hover .elementor-button .elementor-button-content-wrapper svg path {
  fill: var(--light);
}
.borderBtn.light .elementor-button {
  background-color: transparent;
  border-color: var(--light);
  transition: var(--ease);
}
.borderBtn.light .elementor-button .elementor-button-content-wrapper {
  color: var(--light);
  transition: var(--ease);
}
.borderBtn.light .elementor-button .elementor-button-content-wrapper svg {
  fill: var(--primary);
}
.borderBtn.light .elementor-button .elementor-button-content-wrapper svg path {
  stroke: var(--primary);
  transition: var(--ease);
}
.borderBtn.light .elementor-button:hover {
  transition: var(--ease);
  background-image: var(--gradient);
  border-color: var(--primary);
}
.borderBtn.light .elementor-button:hover .elementor-button-content-wrapper {
  color: var(--dark);
  transition: var(--ease);
}
.borderBtn.light .elementor-button:hover .elementor-button-content-wrapper svg path {
  stroke: var(--dark);
  transition: var(--ease);
}
span.primary {
  color: var(--primary);
}
.centerIt {
  justify-content: center;
  align-items: center;
  text-align: center;
}
.centerIt .subHeadContainer {
  justify-content: center;
}
.centerIt .btnGroup {
  justify-content: center;
  align-items: center;
  text-align: center;
}
.dark.border .elementor-button {
  border-color: var(--dark);
}
.dark.border .elementor-button .elementor-button-content-wrapper {
  color: var(--dark);
}
.dark.border .elementor-button .elementor-button-content-wrapper svg {
  fill: var(--dark);
}
.dark.border .elementor-button .elementor-button-content-wrapper svg path {
  fill: var(--dark);
}
.dark.border:hover .elementor-button {
  border-color: var(--primary);
  transition: all 0.2s ease-out;
}
.dark.border:hover .elementor-button .elementor-button-content-wrapper {
  color: var(--light);
  transition: all 0.2s ease-out;
}
.dark.border:hover .elementor-button .elementor-button-content-wrapper svg {
  fill: var(--light);
}
.dark.border:hover .elementor-button .elementor-button-content-wrapper svg path {
  fill: var(--light);
}
.marginTop {
  margin-top: 40px;
}
.marginBottom {
  margin-bottom: 40px;
}
.boxShadow img {
  box-shadow: 15px 15px var(--primary);
  border-radius: 12px;
}
.boxShadowleft {
  box-shadow: -25px 25px var(--primary);
}
.boxShadowRight {
  box-shadow: 15px 15px var(--primary);
}
.mobileMenu .menuWrap li.current-menu-item a {
  color: var(--primary) !important;
}
.extraPadBottom {
  padding-bottom: 4rem;
}
@media (max-width: 1023px) {
  .extraPadBottom {
    padding-bottom: 0rem;
  }
}
.extraPadTop {
  padding-top: 4rem;
}
@media (max-width: 1023px) {
  .extraPadTop {
    padding-top: 0rem;
  }
}
.lowPadBottom {
  padding-bottom: 2rem;
}
span.darkText {
  color: var(--dark);
  font-weight: 500;
}
@media (max-width: 1024px) {
  .fullMobile {
    width: 100% !important;
  }
}
.darkBg {
  background-color: var(--darkBg);
}
.darkAlt {
  background-color: var(--darkAlt);
}
.gradienBg {
  background-image: var(--gradient);
}
.dualCols {
  gap: 140px;
}
@media (max-width: 1350px) {
  .dualCols {
    gap: 60px;
  }
}
.simpleLink .elementor-button {
  padding: 0;
  background: transparent;
  font-size: 13px;
  letter-spacing: 2px;
}
.siteNav ul .menu-item-has-children {
  position: relative;
}
.siteNav ul .menu-item-has-children ul.sub-menu {
  display: none;
}
.siteNav ul .menu-item-has-children:hover ul.sub-menu {
  display: flex;
}
.siteNav ul ul.sub-menu {
  position: absolute;
  flex-direction: column;
  left: 0;
  background-color: var(--primary);
  width: 360px !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  text-align: left !important;
  gap: 0 !important;
  padding: 0px 0px;
}
.siteNav ul ul.sub-menu li {
  width: 100%;
  padding: 20px 5px 20px 35px;
  background: linear-gradient(to right, var(--dark) 50%, transparent 50%);
  background-size: 200% 100%;
  background-position: right bottom;
  transition: all 0.2s ease-out;
}
.siteNav ul ul.sub-menu li:hover {
  transition: all 0.2s ease-out;
  background-position: left top;
}
.siteNav ul ul.sub-menu li:hover a {
  color: var(--light) !important;
}
.siteNav ul ul.sub-menu li a {
  color: var(--dark) !important;
  transition: all 0.2s ease-out;
}
.siteNav ul ul.sub-menu li a:after {
  display: none;
}
.seprator {
  display: flex;
}
/*
.gravityForm {
    .gform_wrapper {
        .gform-body {
            .gform_fields {
                column-gap: 15px;
                row-gap: 20px;
                .gfield {
                    input {
                        border-radius: 50px;
                        background-color: #f4f8fa;
                        font-size: 16px;
                        font-weight: 500;
                        padding: 15px 30px;
                        height: auto;
                        background-position: left 20px center;
                        background-repeat: no-repeat;
                        border: none;
                        @media (max-width: 567px) {
                            font-size: 12px;
                            padding: 10px 25px;
                        }
                    }
                    textarea {
                        border-radius: 20px;
                        background-color: #f4f8fa;
                        font-size: 16px;
                        font-weight: 500;
                        height: 200px;
                        border: none;
                        min-block-size: auto;
                        background-position: left 20px top 18px;
                        background-repeat: no-repeat;
                        background-image: url('/wp-content/uploads/2026/05/textarea.svg');
                    }
                    .ginput_container_consent {
                        input {
                            padding: 0;
                        }
                        .gform-field-label {
                            color: var(--dark);
                            font-size: 16px;
                            font-weight: 500;
                            @media (max-width: 567px) {
                                font-size: 13px;
                            }
                        }
                    }
                    input[placeholder='Full Name*'] {
                        background-image: url(/wp-content/uploads/2026/05/user.svg);
                    }
                    input[placeholder='Email*'] {
                        background-image: url(/wp-content/uploads/2026/05/env.svg);
                    }
                    input[placeholder='Contact Number*'] {
                        background-image: url(/wp-content/uploads/2026/05/call.svg);
                    }
                    input[placeholder='Property Type*'] {
                        background-image: url(/wp-content/uploads/2026/05/property.svg);
                    }
                }
            }
        }
        .gform_footer {
            .gform_button {
                gap: 0.5rem;
                width: 100%;
                padding: 25px 2rem !important;
                border-radius: var(--btnRadius) !important;
                font-family: var(--text) !important;
                font-size: 18px !important;
                font-weight: bold !important;
                background-color: var(--primary) !important;
                border: none !important;
                height: auto !important;
                @media (max-width: 567px) {
                    padding: 15px 2rem !important;
                    font-size: 14px !important;
                }
            }
        }
    }
}
*/
.detailsCols {
  display: flex;
  flex-direction: row !important;
  gap: 40px;
}
.detailsCols .borderCols {
  padding: 60px 45px;
  background-color: transparent;
  border: 3px solid var(--primary);
  border-radius: 30px;
  width: calc(50% - 20px);
}
.detailsCols .borderCols .elementor-icon-box-wrapper {
  gap: 30px;
}
.detailsCols .borderCols .elementor-icon-box-icon {
  width: 100px;
  height: 100px;
  border: 2px solid var(--light);
  border-radius: 100px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.detailsCols .borderCols .elementor-icon-box-icon svg {
  width: 30px;
  height: 30px;
  fill: var(--primary);
}
.detailsCols .borderCols .elementor-icon-box-content .elementor-icon-box-title {
  color: var(--light);
  font-size: 18px;
  font-weight: 600;
}
.detailsCols .borderCols .elementor-icon-box-content .elementor-icon-box-description a {
  font-size: 26px;
  font-family: var(--headings);
  display: block;
  color: var(--light);
  font-weight: bold;
  margin: 20px 0;
}
.detailsCols .borderCols .elementor-icon-box-content .elementor-icon-box-description span {
  color: var(--light);
  font-size: 18px;
  font-weight: 600;
}
/* Header Btn */
.headerActions .primary.btn {
  background-color: var(--primary);
  border-color: var(--primary);
  color: var(--light);
}
/* Four Cols Icon Slider */
.fourColsSlider .elementor-icon-box-wrapper {
  gap: 20px !important;
}
.fourColsSlider .elementor-icon-box-title {
  font-size: 18px;
  line-height: 30px;
  text-transform: uppercase;
  font-weight: 600;
  color: var(--light);
  letter-spacing: 10%;
}
@media (max-width: 1500px) {
  .fourColsSlider .elementor-icon-box-title {
    font-size: 16px;
    line-height: 26px;
    letter-spacing: 5%;
  }
}
.fourColsSlider .elementor-icon-box-description {
  font-size: 16px;
  line-height: 30px;
  font-weight: 500;
  color: var(--light);
}
@media (max-width: 1200px) {
  .colMob {
    width: 100%;
  }
}
.withBorder .e-con-inner {
  border: 1px solid var(--primary);
  border-radius: 20px;
}
/* Sectors Home */
.sectors {
  position: relative;
  height: 650px;
  overflow: hidden;
}
.bg {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  opacity: 0;
  transition: opacity 0.5s ease;
}
.bg.active {
  opacity: 1;
  z-index: 1;
}
.overlay {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.45);
  z-index: 2;
}
.sector-list {
  position: relative;
  z-index: 3;
  display: flex;
  justify-content: center;
  gap: 60px;
  padding-top: 200px;
}
.sector {
  color: #fff;
  cursor: pointer;
  transition: 0.3s;
}
.sector.active, .sector:hover {
  color: #7fc8ff;
}
