/*

TemplateMo 591 villa agency

https://templatemo.com/tm-591-villa-agency

*/

/* ---------------------------------------------
Table of contents
------------------------------------------------
01. font & reset css
02. reset
03. global styles
04. header
05. banner
06. features
07. testimonials
08. contact
09. footer

--------------------------------------------- */
/* 
---------------------------------------------
font & reset css
--------------------------------------------- 
*/
@import url("https://fonts.googleapis.com/css2?family=Poppins:wght@100;200;300;400;500;600;700;800;900");
/* 
---------------------------------------------
reset
--------------------------------------------- 
*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, div
pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q,
s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li,
figure, header, nav, section, article, aside, footer, figcaption {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
}

.clearfix:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0;
}

.clearfix {
  display: inline-block;
}

html[xmlns] .clearfix {
  display: block;
}

* html .clearfix {
  height: 1%;
}

ul, li {
  padding: 0;
  margin: 0;
  list-style: none;
}

header, nav, section, article, aside, footer, hgroup {
  display: block;
}

* {
  box-sizing: border-box;
}

html, body {
  font-family: 'Poppins', sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

a {
  text-decoration: none !important;
}

h1, h2, h3, h4, h5, h6 {
  color: #1E1E1E;
  margin-top: 0px;
  margin-bottom: 0px;
  font-weight: 700;
}
.info-table h6{
	 
	 color:#b5aeae;
	 font-weight:500;
	
}

ul {
  margin-bottom: 0px;
}

p {
  font-size: 14px;
  line-height: 28px;
  color: #4a4a4a;
}

img {
  width: 100%;
  overflow: hidden;
}

/* 
---------------------------------------------
Global Styles
--------------------------------------------- 
*/
html,
body {
  font-family: 'Poppins', sans-serif;
}

::selection {
  background: #0071f8;
  color: #fff;
}

::-moz-selection {
  background: #0071f8;
  color: #fff;
}

.section {
  margin-top: 120px;
}

.section-heading {
  margin-bottom: 70px;
}

.section-heading h2 {
  font-size: 40px;
  font-weight: 700;
  text-transform: capitalize;
  margin-top: 20px;
  line-height: 56px;
}

.section-heading h2 em {
  font-style: normal;
  color: #0071f8;
}

.section-heading h6 {
  color: #ee626b;
  font-size: 15px;
  text-transform: uppercase;
  font-weight: 700;
}

.icon-button a {
  display: inline-block;
  background-color: #1E1E1E;
  color: #fff;
  font-size: 14px;
  font-weight: 400;
  height: 50px;
  line-height: 50px;
  padding: 0px 30px 0px 0px;
  border-radius: 25px;
  transition: all .3s;
}

.icon-button a i {
  background-color: #E3B23C;
  height: 50px;
  width: 50px;
  text-align: center;
  border-radius: 50%;
  line-height: 50px;
  display: inline-block;
  margin-right: 15px;
  margin-left: -1px;
}

.icon-button a:hover {
  color: #E3B23C;
}

.icon-button a:hover i {
  color: #fff;
}

.main-button a {
  display: inline-block;
  background-color: #1E1E1E;
  color: #fff;
  font-size: 14px;
  font-weight: 500;
  height: 40px;
  line-height: 40px;
  padding: 0px 30px;
  border-radius: 25px;
  transition: all .3s;
}

.main-button a:hover {
  background-color: #E3B23C;
  color: #fff;
}

/* 
---------------------------------------------
Pre-loader Style
--------------------------------------------- 
*/

.js-preloader {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0,0,0,0.99);
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  -webkit-box-pack: center;
  justify-content: center;
  opacity: 1;
  visibility: visible;
  z-index: 9999;
  -webkit-transition: opacity 0.25s ease;
  transition: opacity 0.25s ease;
}

.js-preloader.loaded {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

@-webkit-keyframes dot {
  50% {
      -webkit-transform: translateX(96px);
      transform: translateX(96px);
  }
}

@keyframes dot {
  50% {
      -webkit-transform: translateX(96px);
      transform: translateX(96px);
  }
}

@-webkit-keyframes dots {
  50% {
      -webkit-transform: translateX(-31px);
      transform: translateX(-31px);
  }
}

@keyframes dots {
  50% {
      -webkit-transform: translateX(-31px);
      transform: translateX(-31px);
  }
}

.preloader-inner {
  position: relative;
  width: 142px;
  height: 40px;
  background: transparent;
}

.preloader-inner .dot {
  position: absolute;
  width: 16px;
  height: 16px;
  top: 12px;
  left: 15px;
  background: #E3B23C;
  border-radius: 50%;
  -webkit-transform: translateX(0);
  transform: translateX(0);
  -webkit-animation: dot 2.8s infinite;
  animation: dot 2.8s infinite;
}

.preloader-inner .dots {
  -webkit-transform: translateX(0);
  transform: translateX(0);
  margin-top: 12px;
  margin-left: 31px;
  -webkit-animation: dots 2.8s infinite;
  animation: dots 2.8s infinite;
}

.preloader-inner .dots span {
  display: block;
  float: left;
  width: 16px;
  height: 16px;
  margin-left: 16px;
  background: #E3B23C;
  border-radius: 50%;
}



/* 
---------------------------------------------
Header Style
--------------------------------------------- 
*/

.sub-header {
  background-color: #fff;
  padding: 10px 0px;
  border-bottom: 1px solid #FAF7F0;
}

.sub-header ul li {
  display: inline-block;
}

.sub-header ul.social-links {
  text-align: right;
}

.sub-header ul.social-links li {
  margin-left: 8px;
}

.sub-header ul.social-links li a {
  display: inline-block;
  width: 30px;
  height: 30px;
  background-color: #cdcdcd;
  border-radius: 50%;
  text-align: center;
  line-height: 30px;
  color: #fff;
  font-size: 14px;
  transition: all .3s;
}

.sub-header ul.social-links li a:hover {
  background-color: #E3B23C;
  
}

.sub-header ul.info li {
  font-size: 14px;
  color: #7a7a7a;
  border-right: 1px solid #FAF7F0;
  margin-right: 25px;
  padding-right: 25px;
}

.sub-header ul.info li:last-child {
  margin-right: 0px;
  padding-right: 0px;
  border-right: none;
}

.sub-header ul.info li i {
  font-size: 20px;
  color: #E3B23C;
  margin-right: 8px;
}

.background-header {
  background-color: #fff;
  height: 80px!important;
  position: fixed!important;
  top: 0!important;
  left: 0;
  right: 0;
  box-shadow: 0px 0px 10px rgba(0,0,0,0.15)!important;
  -webkit-transition: all .5s ease 0s;
  -moz-transition: all .5s ease 0s;
  -o-transition: all .5s ease 0s;
  transition: all .5s ease 0s;
}

.header-area {
  position: relative;
  background-color: #fff;
  height: 100px;
  z-index: 100;
  -webkit-transition: all .5s ease 0s;
  -moz-transition: all .5s ease 0s;
  -o-transition: all .5s ease 0s;
  transition: all .5s ease 0s;
}

.header-area .main-nav {
  background: transparent;
  display: flex;
}

.header-area .main-nav .logo {
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -o-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
  display: inline-block;
}

.header-area .main-nav .logo h1 {
  line-height: 100px;
  font-size: 28px;
  text-transform: uppercase;
  color: #1E1E1E;
  font-weight: 700;
  letter-spacing: 2px;
}

.background-header .main-nav .logo h1 {
  line-height: 80px;
}

.header-area .main-nav ul.nav {
  flex-basis: 100%;
  margin-top: 30px;
  justify-content: right;
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -o-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
  position: relative;
  z-index: 999;
}

.header-area .main-nav .nav li:last-child {
  padding-right: 0px;
}

.header-area .main-nav .nav li {
  padding-left: 10px;
  padding-right: 10px;
  height: 100px;
  line-height: 100px;
}

.header-area .main-nav .nav li a {
  display: block;
  padding-left: 20px;
  padding-right: 20px;
  font-weight: 500;
  font-size: 15px;
  height: 40px;
  line-height: 40px;
  text-transform: capitalize;
  color: #1E1E1E;
  -webkit-transition: all 0.4s ease 0s;
  -moz-transition: all 0.4s ease 0s;
  -o-transition: all 0.4s ease 0s;
  transition: all 0.4s ease 0s;
  border: transparent;
  letter-spacing: .25px;
}

.header-area .main-nav .nav li:last-child a {
 /* background-color: #1E1E1E;
  color: #fff;
  font-size: 14px;
  font-weight: 400;
  text-transform: none;
  border-radius: 20px;
  padding-left: 0px;*/
}

.header-area .main-nav .nav li:last-child a i {
 /* background-color: #E3B23C;
  display: inline-block;
  width: 40px;
  height: 40px;
  text-align: center;
  line-height: 40px;
  margin-right: 10px;
  border-radius: 50%;
  margin-left: -1px;*/
}

.header-area .main-nav .nav li:last-child:hover a {
   /*background-color: #1E1E1E; */
}

.header-area .main-nav .nav li:last-child:hover a i {
   /*color: #fff; */
}

.header-area .main-nav .nav li:hover a {
  color: #E3B23C;
}

.header-area .main-nav .nav li a.active {
  color: #E3B23C;
}


.background-header .main-nav .nav li a.active {
  color: #E3B23C;
}

.header-area .main-nav .menu-trigger {
  cursor: pointer;
  position: absolute;
  top: 23px;
  width: 32px;
  height: 40px;
  text-indent: -9999em;
  z-index: 99;
  right: 20px;
  display: none;
}

.background-header .main-nav .menu-trigger {
  top: 22px;
}

.background-header .main-nav ul.nav {
  margin-top: 20px;
}

.header-area .main-nav .menu-trigger span,
.header-area .main-nav .menu-trigger span:before,
.header-area .main-nav .menu-trigger span:after {
  -moz-transition: all 0.4s;
  -o-transition: all 0.4s;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
  background-color: #1E1E1E;
  display: block;
  position: absolute;
  width: 30px;
  height: 2px;
  left: 0;
}

.header-area .main-nav .menu-trigger span:before,
.header-area .main-nav .menu-trigger span:after {
  -moz-transition: all 0.4s;
  -o-transition: all 0.4s;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
  background-color: #1E1E1E;
  display: block;
  position: absolute;
  width: 30px;
  height: 2px;
  left: 0;
  width: 75%;
}

.header-area .main-nav .menu-trigger span:before,
.header-area .main-nav .menu-trigger span:after {
  content: "";
}

.header-area .main-nav .menu-trigger span {
  top: 16px;
}

.header-area .main-nav .menu-trigger span:before {
  -moz-transform-origin: 33% 100%;
  -ms-transform-origin: 33% 100%;
  -webkit-transform-origin: 33% 100%;
  transform-origin: 33% 100%;
  top: -10px;
  z-index: 10;
}

.header-area .main-nav .menu-trigger span:after {
  -moz-transform-origin: 33% 0;
  -ms-transform-origin: 33% 0;
  -webkit-transform-origin: 33% 0;
  transform-origin: 33% 0;
  top: 10px;
}

.header-area .main-nav .menu-trigger.active span,
.header-area .main-nav .menu-trigger.active span:before,
.header-area .main-nav .menu-trigger.active span:after {
  background-color: transparent;
  width: 100%;
}

.header-area .main-nav .menu-trigger.active span:before {
  -moz-transform: translateY(6px) translateX(1px) rotate(45deg);
  -ms-transform: translateY(6px) translateX(1px) rotate(45deg);
  -webkit-transform: translateY(6px) translateX(1px) rotate(45deg);
  transform: translateY(6px) translateX(1px) rotate(45deg);
  background-color: #1E1E1E;
}

.background-header .main-nav .menu-trigger.active span:before {
  background-color: #1E1E1E;
}

.header-area .main-nav .menu-trigger.active span:after {
  -moz-transform: translateY(-6px) translateX(1px) rotate(-45deg);
  -ms-transform: translateY(-6px) translateX(1px) rotate(-45deg);
  -webkit-transform: translateY(-6px) translateX(1px) rotate(-45deg);
  transform: translateY(-6px) translateX(1px) rotate(-45deg);
  background-color: #1E1E1E;
}

.background-header .main-nav .menu-trigger.active span:after {
  background-color: #1E1E1E;
}

.visible{
  display:inline !important;
}

@media (max-width: 1200px) {
  .header-area .main-nav .nav li {
    padding-left: 5px;
    padding-right: 5px;
  }

}

@media (max-width: 767px) {
  .background-header .main-nav {
    box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.15);
    border-radius: 0px 0px 25px 25px;
    width: 100%;
  }
  .background-header .main-nav .nav,
  .header-area .main-nav .nav {
    background-color: #fff;
  }
  .background-header .main-nav .nav li a,
  .header-area .main-nav .nav li a {
    line-height: 50px;
    height: 50px;
    font-weight: 400;
    color: #1E1E1E;
    background-color: #fff;
     border-radius: 0px 0px 25px 25px;
  }
  .background-header .main-nav .nav li,
  .header-area .main-nav .nav li {
    border-top: 1px solid #ddd;
    background-color: #f1f0fe;
    height: 50px;
    border-radius: 0px 0px 25px 25px;
  }
  .header-area .main-nav .nav {
    height: auto;
    flex-basis: 100%;
  }
  .header-area .main-nav .logo {
    position: absolute;
    left: 30px;
    top: 0px;
  }
  .background-header .main-nav .logo {
    top: 0px;
  }
  .background-header .main-nav .border-button {
    top: 0px !important;
  }
  .header-area .main-nav .border-button {
    position: absolute;
    top: 15px;
    right: 70px;
  }
  .header-area.header-sticky .nav li a:hover,
  .header-area.header-sticky .nav li a.active {
    color: #ee626b!important;
    opacity: 1;
  }
  .header-area.header-sticky .nav li.search-icon a {
    width: 100%;
  }
  .header-area .nav li:last-child a {
    background-color: transparent !important;
    font-weight: 300 !important;
    text-transform: capitalize !important;
  }
  .header-area {
    padding: 0px 15px;
    height: 80px;
    box-shadow: none;
    text-align: center;
  }
  .header-area .container {
    padding: 0px;
  }
  .header-area .logo {
    margin-left: 0px;
  }
  .header-area .menu-trigger {
    display: block !important;
  }
  .header-area .main-nav {
    overflow: hidden;
  }
  .header-area .main-nav .nav {
    float: none;
    width: 100%;
    display: none;
    -webkit-transition: all 0s ease 0s;
    -moz-transition: all 0s ease 0s;
    -o-transition: all 0s ease 0s;
    transition: all 0s ease 0s;
    margin-left: 0px;
  }
  .header-area .main-nav .nav li:first-child {
    border-top: 1px solid #FAF7F0;
  }
  .header-area.header-sticky .nav {
    margin-top: 80px !important;
  }
  .background-header.header-sticky .nav {
    margin-top: 80px !important;
  }
  .header-area .main-nav .nav li {
    width: 100%;
    background: #fff;
    padding-left: 0px !important;
    padding-right: 0px !important;
  }
  
}

/* 
---------------------------------------------
Banner Style
--------------------------------------------- 
*/

.main-banner .item {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  padding: 220px 20% 320px 20%;
  margin-top: 0px;
}

.main-banner .item-1 {
  background-image: url(../images/banner-01.jpg);
}

.main-banner .item-2 {
  background-image: url(../images/banner-02.jpg);
}

.main-banner .item-3 {
  background-image: url(../images/banner-03.jpg);
}
.main-banner .item-4 {
  background-image: url(../images/banner-04.jpg);
}
.main-banner .item-5 {
  background-image: url(../images/banner-05.jpg);
}

.main-banner .item span.category {
  background-color: #fff;
  color: #1E1E1E;
  font-size: 16px;
  font-weight: 500;
  text-transform: capitalize;
  padding: 6px 15px;
  display: inline-block;
  margin-bottom: 30px;
}

.main-banner .item span.category em {
  font-style: normal;
  color: #E3B23C;
}

.main-banner .item h2 {
  font-size: 62px;
  font-weight: 700;
  text-transform: uppercase;
  color: #fff;
  line-height: 72px;
  width: 50%;
  margin-bottom: 0px;
}



.main-banner .owl-dots .owl-dot {
  width: 10px;
  height: 10px;
  background-color: #fff;
  border-radius: 50%;
  margin-right: 10px;
  transition: all .5s;
}

.main-banner .owl-dots .active {
  background-color: #E3B23C;
}

.main-banner .owl-nav {
  position: absolute;
  top: 50%;
  width: 100%;
  transform: translateY(-50px);
}

.main-banner .owl-nav .owl-prev i,
.main-banner .owl-nav .owl-next i {
  width: 50px;
  height: 50px;
  line-height: 50px;
  font-size: 24px;
  display: inline-block;
  color: #fff;
  background-color: rgba(255, 255, 255, 0.2);
  border-radius: 50%;
  opacity: 1;
  transition: all .3s;
}

.main-banner .owl-nav .owl-prev i {
  position: absolute;
  left: 45px;
}

.main-banner .owl-nav .owl-next i {
  position: absolute;
  right: 45px;
}

.main-banner .owl-nav .owl-prev i:hover,
.main-banner .owl-nav .owl-next i:hover {
  opacity: 1;
  background-color: rgba(255, 255, 255, 0.5);
}



/* 
---------------------------------------------
Featured Style
--------------------------------------------- 
*/

.featured .left-image {
  position: relative;
}

.featured .left-image img {
  padding-left: 55px;
}

.featured .left-image a {
  display: inline-block;
  width: 110px;
  height: 110px;
  line-height: 110px;
  background-color: #E3B23C;
  border-radius: 50%;
  text-align: center;
  position: absolute;
  left: 0;
  bottom: -55px;
}

.featured .section-heading {
  margin-left: 10px;
  margin-right: 10px;
  margin-bottom: 60px;
}

.featured .section-heading h2 {
  width: 70%;
}

.featured .accordion {
  margin-left: 10px;
  margin-right: 10px;
  --bs-accordion-border-radius: 10px;
  --bs-accordion-inner-border-radius: 10px;
  --bs-accordion-bg: #FAF7F0;
  --bs-accordion-border-color: none;
  border: none !important;
}

.featured .accordion-header {
  border-bottom: 1px solid #E6E0D6;
}

.featured .accordion-button {
  box-shadow: none;
  font-size: 17px;
  font-weight: 500;
  color: #1E1E1E;
}

.featured .accordion-button:not(.collapsed) {
  color: #E3B23C;
  background-color: #FAF7F0;
  outline: none;
}

.featured .accordion-button::after {
  display: none;
}

.featured #headingThree {
  border-bottom: none;
}

.featured .accordion-item:last-of-type .accordion-collapse {
  border-top: 1px solid #E6E0D6;
}

.featured .info-table {
  border-radius: 10px;
  box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.15);
  padding: 35px 30px;
}

.featured .info-table ul li {
  display: block;
  margin-bottom: 35px;
  padding-bottom: 35px;
  border-bottom: 1px solid #FAF7F0;
}

.featured .info-table ul li:last-child {
  border-bottom: none;
  padding-bottom: 0;
  margin-bottom: 0;
}

.featured .info-table ul li img {
  float: left;
  margin-right: 25px;
}

.featured .info-table ul li h4 {
  font-size: 22px;
  font-weight: 600;
}

.featured .info-table ul li h4 span {
  font-size: 15px;
  color: #aaa;
  font-weight: 400;
}

/* 
---------------------------------------------
Video Style
--------------------------------------------- 
*/

.video {
  background-image: url(../images/video-bg.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  padding: 100px 0px 250px 0px;
  position: relative;
}

.video-content {
  margin-top: -240px;
}

.video .section-heading h2 {
  color: #fff;
}

.video-content .video-frame {
  position: relative;
  box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.15);
  border-radius: 10px;
}

.video-content .video-frame img {
  border-radius: 10px;
}

.video-content .video-frame a {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-26px, -26px);
  width: 52px;
  height: 52px;
  background-color: #fff;
  border-radius: 50%;
  display: inline-block;
  text-align: center;
  line-height: 52px;
  color: #E3B23C;
  outline: 15px solid rgba(254, 85, 37, 0.5);
  font-size: 18px;
}

/* 
---------------------------------------------
Fun Facts Style
--------------------------------------------- 
*/

.fun-facts {
  text-align: center;
  margin-top: 125px;
}

.fun-facts .counter {
  background-color: #eeefb0;
  position: relative;
  border-radius: 10px;
  width: 270px;
  padding: 20px 0px;
  display: inline-block;
}

.fun-facts .counter h2,
.fun-facts .counter p {
  display: inline-flex;
  vertical-align: middle;
}

.fun-facts .counter p {
  text-align: left;
  font-size: 16px;
  color: #1E1E1E;
  font-weight: 600;
  line-height: 28px;
}

.fun-facts .counter h2 {
  margin-right: 25px;
  font-size: 40px;
  color: #E3B23C;
}

.fun-facts .counter:after {
  position: absolute;
  width: 50px;
  height: 50px;
  background-color: #E3B23C;
  border-radius: 50%;
  content: '';
  right: -25px;
  top: -25px;
}


/* 
---------------------------------------------
Best Deal Style
--------------------------------------------- 
*/

.best-deal {
  background-color: #FAF7F0;
  padding: 100px 0px;
}

.best-deal .tab-content img {
  padding: 0px 45px;
}

.best-deal .tabs-content .nav-link {
  font-size: 16px;
  font-weight: 500;
  background-color: #1E1E1E !important;
  border-radius: 5px;
  height: 50px;
  line-height: 50px;
  display: inline-block;
  padding: 0px 25px;
  color: #fff;
}

.best-deal .tabs-content .nav-tabs .nav-link.active {
  background-color: #E3B23C !important;
  color: #fff;
}

.best-deal .tabs-content ul.nav-tabs {
  border-bottom: none !important;
  margin-bottom: 80px;
  align-items: end;
  justify-content: end;
  margin-top: -130px;
}

.best-deal .tabs-content ul.nav-tabs li {
  padding-right: 0px;
  border-right: none;
  margin-left: 20px;
}

.best-deal .info-table {
  border-radius: 10px;
  box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.15);
  padding: 35px 30px;
}

.best-deal .info-table ul li {
  display: block;
  margin-bottom: 24px;
  padding-bottom: 24px;
  border-bottom: 1px solid #FAF7F0;
  text-align: left;
  font-size: 15px;
  color: #aaa;
  font-weight: 400;
}

.best-deal .info-table ul li:last-child {
  border-bottom: none;
  padding-bottom: 0;
  margin-bottom: 0;
}

.best-deal .info-table ul li span {
  font-size: 20px;
  color: #1E1E1E;
  font-weight: 700;
  float: right;
  display: inline-block;
}

.best-deal .tabs-content {
  padding: 0px;
  background-color: transparent;
}

.best-deal .tabs-content h4 {
  font-size: 17px;
  font-weight: 600;
  margin-bottom: 30px;
}

.best-deal .icon-button {
  margin-top: 30px;
}


/* 
---------------------------------------------
Properties Style
--------------------------------------------- 
*/

.properties .item {
  background-color: #FAF7F0;
  border-radius: 10px;
  padding: 30px;
  margin-bottom: 30px;
}

.properties .item img {
  border-radius: 10px;
}

.properties .item span.category {
  background-color: #fbd9cf;
  font-weight: 500;
  border-radius: 5px;
  font-size: 14px;
  color: #1E1E1E;
  padding: 5px 12px;
  display: inline-block;
  margin-top: 25px;
}

.properties .item h4 {
  font-size: 19px;
  margin: 25px 0px;
}

.properties .item h4 a {
  color: #1E1E1E;
}

.properties .item ul li {
  display: inline-block;
  font-size: 15px;
  color: #4a4a4a;
  margin-right: 20px;
}

.properties .item ul li span {
  font-weight: 600;
  color: #1E1E1E;
}

.properties .item ul {
  border-bottom: 1px solid #E6E0D6;
  margin-bottom: 30px;
  padding-bottom: 30px;
}

.properties .item h6 {
  font-size: 20px;
  color: #E3B23C;
  margin-top: 6px;
  display: inline-block;
  float: right;
  margin-top: 30px;
}

.properties .item .main-button {
  text-align: center;
}


/* 
---------------------------------------------
Contact Style
--------------------------------------------- 
*/

.contact {
  background-image: url(../images/contact-bg.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  padding: 100px 0px 250px 0px;
  position: relative;
}

.contact .section-heading h2 {
  color: #fff;
}

.contact-content {
  margin-top: -240px;
  position: relative;
  z-index: 1;
}

.contact-content #map {
  border-radius: 10px;
  margin-bottom: 60px;
}

.contact-content .item {
  border-radius: 10px;
  box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.15);
  padding: 35px 30px;
  background-color: #fff;
}

.contact-content .phone {
  margin-right: 15px;
}

.contact-content .email {
  margin-left: 15px;
}

.contact-content .item img {
  float: left;
  margin-right: 25px;
  vertical-align: middle;
}

.contact-content .item h6 {
  font-size: 20px;
  font-weight: 600;
  vertical-align: middle;
}

.contact-content .item h6 span {
  font-size: 15px;
  color: #aaaaaa;
  font-weight: 400;
}

.contact-content #contact-form {
  margin-left: 30px;
  border-radius: 10px;
  box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.15);
  padding: 35px 30px;
  background-color: #fff;
}

.contact-content #contact-form label {
  font-size: 15px;
  color: #3a3a3a;
  margin-bottom: 15px;
}

.contact-content #contact-form input {
  width: 100%;
  height: 44px;
  border-radius: 22px;
  background-color: #FAF7F0;
  border: none;
  margin-bottom: 30px;
  font-size: 14px;
  padding: 0px 15px;
}

.contact-content #contact-form textarea {
  width: 100%;
  height: 150px;
  max-height: 180px;
  border-radius: 22px;
  background-color: #FAF7F0;
  border: none;
  margin-bottom: 40px;
  font-size: 14px;
  padding: 15px 15px;
}

.contact-content #contact-form button {
  background-color: #1E1E1E;
  height: 44px;
  border-radius: 22px;
  padding: 0px 20px;
  color: #fff;
  border: none;
  font-size: 15px;
  font-weight: 500;
  transition: all .5s;
}

.contact-content #contact-form button:hover {
  background-color: #E3B23C;
}


/* 
---------------------------------------------
Footer Style
--------------------------------------------- 
*/

footer.footer-no-gap {
  margin-top: 0px;
}

footer {
  margin-top: 150px;
  background-color: #1E1E1E;
  min-height: 100px;
}

footer p {
  text-align: center;
  line-height: 100px;
  color: #fff;
  font-size: 16px;
  font-weight: 400;
}

footer p a {
  color: #fff;
  transition: all .3s;
  position: relative;
  z-index: 3;
}

footer p a:hover {
  opacity: 0.75;
}


/* 
---------------------------------------------
Page Header Style
--------------------------------------------- 
*/

.page-heading {
  background-image: url(../images/page-heading-bg.jpg);
  background-position: center bottom;
  background-repeat: no-repeat;
  background-size: cover;
  padding: 110px 0px;
  text-align: center;
}

.page-heading span {
  background-color: #fff;
  color: #1E1E1E;
  font-size: 14px;
  font-weight: 500;
  text-transform: uppercase;
  padding: 10px 25px;
  display: inline-block;
  margin-bottom: 30px;
}

.page-heading span a {
  color: #1E1E1E;
}

.page-heading h3 {
  font-size: 48px;
  font-weight: 900;
  text-transform: uppercase;
  color: #fff;
}


/* 
---------------------------------------------
Properties Style
--------------------------------------------- 
*/

.properties ul.properties-filter {
  list-style: none;
  text-align: center;
  margin-bottom: 70px;
}

.properties ul.properties-filter li {
  display: inline-block;
  margin: 5px 8px;
}

.properties ul.properties-filter li a {
  display: inline-block;
  text-align: center;
  font-size: 15px;
  text-transform: capitalize;
  font-weight: 500;
  color: #fff;
  background-color: #1E1E1E;
  padding: 12px 25px;
  border-radius: 5px;
  transition: all .3s;
}

.properties ul.properties-filter li a.is_active {
  background-color: #E3B23C;
  color: #fff;
}

.properties ul.properties-filter li a.is_active:hover {
  color: #fff;
}

.properties ul.properties-filter li a:hover {
  color: #E3B23C;
}

.properties ul.pagination {
  margin-top: 50px;
  text-align: center;
  width: 100%;
  display: inline-block;
}

.properties ul.pagination li {
  display: inline-block;
  margin: 0px 5px;
}

.properties ul.pagination li a {
  display: inline-block;
  width: 40px;
  height: 40px;
  line-height: 40px;
  text-align: center;
  background-color: #1E1E1E;
  color: #fff;
  font-size: 15px;
  font-weight: 600;
  border-radius: 50%;
  transition: all .3s;
}

.properties ul.pagination li a:hover,
.properties ul.pagination li a.is_active {
  background-color: #E3B23C;
  color: #fff;
}


/* 
---------------------------------------------
Single Page Style
--------------------------------------------- 
*/

.single-property .main-image img {
  float: none;
}

.single-property .main-content h4 {
  font-size: 25px;
  margin-top: 25px;
  margin-bottom: 40px;
  padding-bottom: 40px;
  border-bottom: 1px solid #FAF7F0;
}

.single-property .main-content span.category {
  background-color: #fbd9cf;
  font-weight: 500;
  border-radius: 5px;
  font-size: 14px;
  color: #1E1E1E;
  padding: 5px 12px;
  display: inline-block;
  margin-top: 40px;
}

.single-property .accordion {
  margin-top: 60px;
  margin-left: 0px;
  margin-right: 0px;
  --bs-accordion-border-radius: 10px;
  --bs-accordion-inner-border-radius: 10px;
  --bs-accordion-bg: #FAF7F0;
  --bs-accordion-border-color: none;
  border: none !important;
}

.single-property .accordion-header {
  border-bottom: 1px solid #E6E0D6;
}

.single-property .accordion-button {
  box-shadow: none;
  font-size: 17px;
  font-weight: 500;
  color: #1E1E1E;
}

.single-property .accordion-button:not(.collapsed) {
  color: #E3B23C;
  background-color: #FAF7F0;
  outline: none;
}

.single-property .accordion-button::after {
  display: none;
}

.single-property #headingThree {
  border-bottom: none;
}

.single-property .accordion-item:last-of-type .accordion-collapse {
 border-top: 1px solid #E6E0D6;
}

.single-property .info-table {
  border-radius: 10px;
  box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.15);
  padding: 35px 30px;
  margin-left: 60px;
}

.single-property .info-table ul li {
  display: block;
  margin-bottom: 35px;
  padding-bottom: 35px;
  border-bottom: 1px solid #FAF7F0;
}

.single-property .info-table ul li:last-child {
  border-bottom: none;
  padding-bottom: 0;
  margin-bottom: 0;
}

.single-property .info-table ul li img {
  float: left;
  margin-right: 25px;
}

.single-property .info-table ul li h4 {
  font-size: 22px;
  font-weight: 600;
}

.single-property .info-table ul li h4 span {
  font-size: 15px;
  color: #aaa;
  font-weight: 400;
}


/* 
---------------------------------------------
Contact Page Style
--------------------------------------------- 
*/

.contact-page #map {
  margin-top: 100px;
}

.contact-page .section-heading {
  margin-bottom: 40px;
  margin-right: 280px;
}

.contact-page p {
  margin-bottom: 50px;
}

.contact-page .item {
  border-radius: 10px;
  box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.15);
  padding: 35px 30px;
  background-color: #fff;
  display: inline-block;
  min-width: 360px;
}

.contact-page .phone {
  margin-bottom: 30px;
}

.contact-page .item img {
  float: left;
  margin-right: 25px;
  vertical-align: middle;
}

.contact-page .item h6 {
  font-size: 20px;
  font-weight: 600;
  vertical-align: middle;
}

.contact-page .item h6 span {
  font-size: 15px;
  color: #aaaaaa;
  font-weight: 400;
}

.contact-page #contact-form {
  margin-left: 30px;
  border-radius: 10px;
  box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.15);
  padding: 35px 30px;
  background-color: #fff;
}

.contact-page #contact-form label {
  font-size: 15px;
  color: #3a3a3a;
  margin-bottom: 15px;
}

.contact-page #contact-form input {
  width: 100%;
  height: 44px;
  border-radius: 22px;
  background-color: #FAF7F0;
  border: none;
  margin-bottom: 30px;
  font-size: 14px;
  padding: 0px 15px;
}

.contact-page #contact-form textarea {
  width: 100%;
  height: 150px;
  max-height: 180px;
  border-radius: 22px;
  background-color: #FAF7F0;
  border: none;
  margin-bottom: 40px;
  font-size: 14px;
  padding: 15px 15px;
}

.contact-page #contact-form button {
  background-color: #1E1E1E;
  height: 44px;
  border-radius: 22px;
  padding: 0px 20px;
  color: #fff;
  border: none;
  font-size: 15px;
  font-weight: 500;
  transition: all .5s;
}

.contact-page #contact-form button:hover {
  background-color: #E3B23C;
}


/* 
---------------------------------------------
Responsive Style
--------------------------------------------- 
*/

body {
  overflow-x: hidden;
}

@media (max-width: 767px) {
  .header-area .main-nav .logo h1 {
    line-height: 80px !important;
  }
  .best-deal .tabs-content .nav-link {
    font-size: 14px;
    padding: 0px 15px;
    height: 44px;
    line-height: 44px;
  }
  .best-deal .tabs-content ul.nav-tabs li {
    margin: 0px 5px;
  }
  .properties ul.properties-filter li a {
    font-size: 14px;
    padding: 10px 15px;
  }
  .properties ul.properties-filter li {
    margin: 5px;
  }
  .header-area .main-nav .nav li:last-child {
    display: none;
  }
}

@media (max-width: 992px) {
  .sub-header {
    display: none;
  }
  .header-area .main-nav .logo h1 {
    line-height: 100px;
  }
  .background-header .main-nav .logo h1 {
    line-height: 80px;
  }
  .header-area .main-nav .nav li a {
    padding-left: 3px;
    padding-right: 3px;
  }
  .header-area .main-nav .nav li:last-child a {
    padding-right: 15px;
  }
  .main-banner .item h2 {
    width: 100%;
  }
  .featured .section-heading {
    margin-left: 0px;
    margin-right: 0px;
    margin-top: 100px;
  }
  .featured .accordion {
    margin-left: 0px;
    margin-right: 0px;
  }
  .featured .info-table {
    margin-top: 45px;
  }
  .fun-facts .counter {
    margin-bottom: 45px;
  }
  .best-deal .section-heading {
    text-align: center;
  }
  .best-deal .tabs-content ul.nav-tabs {
    margin-top: 0px;
    justify-content: center;
  }
  .best-deal .info-table {
    margin-bottom: 45px;
  }
  .best-deal .tab-content img {
    padding: 0px;
  }
  .best-deal .tabs-content h4 {
    margin-top: 45px;
  }
  .properties .item h6 {
    text-align: center;
    margin-bottom: 15px;
  }
  .properties .item .main-button {
    text-align: center;
  }
  .properties .item ul li {
    margin-right: 10px;
    font-size: 13px;
  }
  .contact-content .phone {
    margin-right: 0px;
    margin-bottom: 20px;
  }
  .contact-content .email {
    margin-left: 0px;
    margin-bottom: 45px;
  }
  .contact-content #contact-form {
    margin-left: 0px;
  }
  .single-property .info-table {
    margin-left: 0px;
    margin-top: 45px;
  }
  .contact-page .section-heading {
    margin-right: 0px !important;
  }
  .contact-page #contact-form {
    margin-left: 0px;
    margin-top: 60px;
  }
  .best-deal .info-table ul li span {
    float: right !important;
    width: auto !important;
  }
}

@media (max-width: 1200px) {
  .best-deal .info-table ul li span {
    float: none;
    width: 100%;
  }
  .contact-page .section-heading {
    margin-right: 100px;
  }
}

/* ================= LOGO FIX ================= */
.header-area .logo {
  display: flex !important;
  align-items: center !important;
  height: 100% !important;
}

.header-area .logo img {
  height: 64px;
  width: auto;
  display: block;
}

.header-area.header-sticky .logo img {
  height: 56px;
}

@media (max-width: 991px) {
  .header-area .logo img {
    height: 52px;
  }
}
/* =========================================== */


/* ================= HEADER & BANNER STABILITY FIX ================= */

/* Lock header height so it does not reflow content */
.header-area {
  height: 90px;
  line-height: normal;
}

/* Sticky header should not push content */
.header-area.header-sticky {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  height: 90px;
  z-index: 999;
}

/* Add top spacing to banner equal to header height */
.main-banner,
.main-banner-area,
.page-heading {
  margin-top: 90px;
}

/* Ensure banner slider is positioning context */
.main-banner {
  position: relative;
  overflow: hidden;
}

/* Keep slider dots inside banner */


/* Responsive adjustment */
@media (max-width: 991px) {
  .header-area,
  .header-area.header-sticky {
    height: 72px;
  }

  .main-banner,
  .main-banner-area,
  .page-heading {
    margin-top: 72px;
  }
}

/* ================================================================ */


/* ================================
   GLOBAL HEADER & LOGO FIX
   ================================ */

.header-area {
  height: 90px;
  display: flex;
  align-items: center;
}

.header-area.header-sticky {
  height: 90px;
}

.header-area .main-nav {
  display: flex;
  align-items: center;
  height: 100%;
}

.header-area .logo {
  display: flex;
  align-items: center;
}

.header-area .logo img {
  max-height: 55px;
  width: auto;
  height: auto;
  object-fit: contain;
}

.header-area .nav {
  display: flex;
  align-items: center;
}

/* ================================
   MOBILE HEADER FIX
   ================================ */

@media (max-width: 767px) {
  .header-area {
    height: 70px;
  }

  .header-area.header-sticky {
    height: 70px;
  }

  .header-area .logo img {
    max-height: 42px;
  }
}

/* ================================
   INDEX BANNER SLIDER STABILITY FIX
   ================================ */

.main-banner {
  min-height: 600px;
}

.main-banner .item {
  min-height: 600px;
  display: flex;
  align-items: center;
}

.main-banner .item .header-text {
  transform: translateY(0);
}

body {
  padding-top: 90px;
}

@media (max-width: 767px) {
  .main-banner,
  .main-banner .item {
    min-height: 420px;
  }

  body {
    padding-top: 70px;
  }
}


/* =========================================
   ABSOLUTE HEADER & LOGO NORMALIZATION
   SAME ON ALL PAGES INCLUDING INDEX
   ========================================= */

.header-area,
.header-area.header-sticky {
  height: 90px !important;
}

.header-area .main-nav {
  height: 100%;
  display: flex !important;
  align-items: center !important;
}

.header-area .logo {
  display: flex !important;
  align-items: center !important;
}

.header-area .logo img {
  max-height: 52px !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
}

/* Prevent banner or page-specific overrides */
.main-banner .header-area .logo img,
.index-page .header-area .logo img {
  max-height: 52px !important;
}

/* Mobile consistency */
@media (max-width: 767px) {
  .header-area,
  .header-area.header-sticky {
    height: 70px !important;
  }

  .header-area .logo img {
    max-height: 40px !important;
  }
}


/* =========================================
   INCREASED LOGO SIZE - GLOBAL & CONSISTENT
   ========================================= */

.header-area,
.header-area.header-sticky {
  height: 100px !important;
}

.header-area .logo img {
  max-height: 98px !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
}

/* Mobile */
@media (max-width: 767px) {
  .header-area,
  .header-area.header-sticky {
    height: 80px !important;
  }

  .header-area .logo img {
    max-height: 52px !important;
  }
}


/* =========================================
   REMOVE EXTRA HEADER BAR BELOW TOP INFO
   ========================================= */

/* Normalize top header bar */
.header-top,
.header-area .header-top {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

/* Prevent phantom spacing before main header */
.header-area {
  margin-top: 0 !important;
}

/* Remove gap appearing before sticky activates */
body {
  padding-top: 100px !important;
}

/* When sticky, avoid double spacing */
.header-area.header-sticky + * {
  margin-top: 0 !important;
}

/* Mobile correction */
@media (max-width: 767px) {
  body {
    padding-top: 80px !important;
  }
}


/* =========================================
   FORCE TOP INFO BAR ABOVE MAIN HEADER
   (CSS ONLY – NO HTML CHANGES)
   ========================================= */

/* Ensure top info bar sits above */
.header-top {
  position: relative;
  z-index: 1001;
  order: -1;
}

/* Stack header sections correctly */
.header-area {
  display: flex;
  flex-direction: column;
}

/* Main nav below top bar */
.header-area .main-nav {
  order: 2;
}

/* Sticky behavior: keep only main header sticky */
.header-area.header-sticky {
  position: fixed;
  top: 0;
  width: 100%;
}

/* Body offset accounts only for main header */
body {
  padding-top: 100px !important;
}

/* Mobile */
@media (max-width: 767px) {
  body {
    padding-top: 80px !important;
  }
}


/* =========================================
   FIX BANNER SLIDER DOTS (3 DOTS) JUMPING
   INDEX.HTML ONLY
   ========================================= */

/* Lock banner as positioning context */
.main-banner {
  position: relative;
}

/* Stabilize owl dots container */


/* Prevent dots from reacting to slide height */
.main-banner .owl-stage-outer {
  overflow: hidden;
}

/* Dot appearance consistency */
.main-banner .owl-dots .owl-dot span {
  margin: 5px 7px;
}

/* Mobile responsiveness */
@media (max-width: 767px) {
  
}


/* =================================================
   FINAL LOGO & HEADER RESPONSIVE FIX (PRODUCTION)
   Fixes:
   - Different logo size on index vs inner pages
   - Poor scaling on small mobiles
   - Vertical misalignment on sticky
   - Forced-looking logo sizing
   ================================================= */

/* Define header heights */
:root {
  --header-desktop: 96px;
  --header-mobile: 72px;
}

/* Header consistency */
.header-area,
.header-area.header-sticky {
  height: var(--header-desktop);
  display: flex;
  align-items: center;
}

/* Header inner alignment */
.header-area .main-nav {
  height: 100%;
  display: flex;
  align-items: center;
}

/* Logo container */
.header-area .logo {
  display: flex;
  align-items: center;
}

/* Logo image – scales naturally from header height */
.header-area .logo img {
  max-height: calc(var(--header-desktop) - 28px);
  width: auto;
  height: auto;
  object-fit: contain;
}

/* Mobile */
@media (max-width: 767px) {
  .header-area,
  .header-area.header-sticky {
    height: var(--header-mobile);
  }

  .header-area .logo img {
    max-height: calc(var(--header-mobile) - 20px);
  }
}


/* =================================================
   FIX: LOGO DROPPING BELOW HEADER (SMALL TABLETS)
   ================================================= */

/* Prevent nav wrapping from pushing logo down */
.header-area .main-nav {
  flex-wrap: nowrap;
}

/* Ensure logo never breaks line */
.header-area .logo {
  white-space: nowrap;
}

/* Normalize vertical rhythm */
.header-area,
.header-area.header-sticky {
  line-height: 1;
}

/* Tablet-specific stabilization */
@media (max-width: 991px) and (min-width: 768px) {
  .header-area,
  .header-area.header-sticky {
    height: 88px;
  }

  .header-area .logo img {
    max-height: 58px;
  }
}

/* =========================================
   FINAL FIX: BANNER HEIGHT + DOT STABILITY
   ========================================= */

/* Banner height locked (responsive) */
.main-banner {
  position: relative;
  min-height: 600px;
}

.main-banner .item {
  min-height: 600px;
  display: flex;
  align-items: center;
}

/* Tablet */
@media (max-width: 991px) {
  .main-banner,
  .main-banner .item {
    min-height: 500px;
  }
}

/* Mobile */
@media (max-width: 767px) {
  .main-banner,
  .main-banner .item {
    min-height: 420px;
  }
}

/* Stabilize dots */


/* =================================================
   FINAL BANNER & DOTS FIX (DOTS ABOVE ALL BANNERS)
   ================================================= */

.main-banner {
  position: relative;
  min-height: 600px;
  overflow: hidden;
}

.main-banner .item {
  min-height: 600px;
  display: flex;
  align-items: center;
}

/* Tablet */
@media (max-width: 991px) {
  .main-banner,
  .main-banner .item {
    min-height: 500px;
  }
}

/* Mobile */
@media (max-width: 767px) {
  .main-banner,
  .main-banner .item {
    min-height: 420px;
  }
}

/* Dots ABOVE banner */


@media (max-width: 767px) {
  
}


/* ================================
   YELLOW STONE PREMIUM PALETTE
   ================================ */
:root {
  --ys-primary: #E3B23C;
  --ys-dark: #2B2B2B;
  --ys-bg: #FFFFFF;
  --ys-bg-soft: #FAF7F0;
  --ys-border: #E6E0D6;
  --ys-text: #1E1E1E;
  --ys-text-muted: #6B6B6B;
}

/* ================================
   ICON COLOR NORMALIZATION
   ================================ */
i,
.fa,
.fas,
.far,
.fab,
.icon,
.social-icons i {
  color: var(--ys-primary) !important;
}

/* Icon hover */
i:hover,
/*.social-icons i:hover */
.social-icons a:hover i{
  color: #fff;
}

/* ================================
   FOOTER ALIGNMENT FIX (ALL PAGES)
   ================================ */
footer,
footer p,
footer .container,
footer .row {
  text-align: center !important;
}

footer ul {
  justify-content: center;
}

footer ul li {
  display: inline-block;
  float: none;
}

/* =====================================
   SECTION HEADING COLOR FIX
   ===================================== */
.section-heading h6 {
  color: #E3B23C !important; /* Yellow Stone Premium */
}

/* =====================================
   FOOTER ALIGNMENT FIX (ALL PAGES)
   ===================================== */

/* Center footer content consistently */
footer {
  text-align: center;
}

footer .container,
footer .row {
  justify-content: center;
  text-align: center;
}

/* Fix footer paragraph spacing */
footer p {
  margin: 0 auto;
  text-align: center;
}

/* Center footer lists and icons */
footer ul {
  padding: 0;
  margin: 0 auto;
  display: flex;
  justify-content: center;
}

footer ul li {
  float: none;
  display: inline-block;
}

/* =================================================
   HEADER DIVIDER: INFO BAR vs MAIN HEADER
   ================================================= */

/* Subtle shadow line below info bar */
.header-top {
  box-shadow: 0 1px 0 rgba(0,0,0,0.08);
}

/* Slight elevation for main header */
.header-area .main-nav {
  box-shadow: 0 2px 6px rgba(0,0,0,0.06);
}

/* =================================================
   FOOTER CONSISTENCY FIX (MATCH properties.html)
   ================================================= */

/* Reset footer to neutral block layout */
footer {
  text-align: center;
}

/* Match properties.html footer spacing */
footer .container {
  display: block;
  text-align: center;
}

/* Paragraph alignment */
footer p {
  text-align: center;
  margin: 0 auto;
}

/* Footer links & icons alignment */
footer ul {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  padding: 0;
  margin: 0 auto;
}

footer ul li {
  float: none;
  display: inline-block;
}

/* =====================================
   HEADER CLEANUP – REMOVE SHADOW DIVIDER
   ===================================== */

.header-top {
  box-shadow: none !important;
  border-bottom: none !important;
}

.header-area .main-nav {
  box-shadow: none !important;
}

/* =====================================
   HEADER GREY DIVIDER (REFERENCE STYLE)
   ===================================== */
.header-top {
  border-bottom: 1px solid #e5e5e5;
}

/* =====================================
   FOOTER CENTER ALIGNMENT FIX (INDEX)
   ===================================== */

footer {
  text-align: center !important;
}

footer p {
  text-align: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

footer .container,
footer .row {
  text-align: center !important;
  justify-content: center !important;
}

footer ul {
  display: inline-flex !important;
  justify-content: center !important;
  float: none !important;
}

/* =====================================
   FOOTER COPYRIGHT CENTER ALIGNMENT FIX
   ===================================== */

footer .sub-footer,
footer .sub-footer p {
  text-align: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

footer .sub-footer .row {
  justify-content: center !important;
}

/* =====================================
   SUB-HEADER TOP BORDER + SOFT SHADOW
   ===================================== */
.sub-header {
  border-top: 1px solid #ffe7ae;
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.06);
}

/* =====================================
   LOGO VERTICAL FINE ADJUST (SAFE)
   ===================================== */
.header-area .logo img {
  transform: translateY(-4px);
}

/* =====================================
   LOGO RESPONSIVE SAFETY FIX
   ===================================== */

/* Desktop fine adjustment */
@media (min-width: 992px) {
  .header-area .logo img {
    transform: translateY(-4px);
  }
}

/* Tablet & Mobile: reset to natural position */
@media (max-width: 991px) {
  .header-area .logo img {
    transform: translateY(0);
  }
}

/* =====================================
   FINAL LOGO UPWARD ADJUST (RESPONSIVE)
   ===================================== */
@media (min-width: 992px) {
  .header-area .logo img {
    transform: translateY(-15px);
  }
}

@media (max-width: 991px) {
  .header-area .logo img {
    transform: translateY(0);
  }
}

/* =====================================
   PROPERTY CATEGORY BACKGROUND UPDATE
   ===================================== */
.properties .item span.category {
  background-color: #eeefb0;
}

/* =====================================
   SUB-HEADER SOCIAL LINKS BACKGROUND
   ===================================== */
.sub-header ul.social-links li a {
  background-color: #eeefb0;
  
}

/* =====================================
   SOCIAL ICON HOVER COLOR BEHAVIOR
   ===================================== */

/* Default icon color (normal state) */
.sub-header ul.social-links li a {
  color: #1e1e1e; 
 }

/* Hover state: icon turns white */
.sub-header ul.social-links li a:hover {
  color: #ffffff;

  
}
.sub-header ul.social-links li a i {
  color: #fff;
  transition: color 0.3s ease; 
}

/* =====================================
   SOCIAL ICON HOVER + CLICK BEHAVIOR
   ===================================== */

/* Default icon color */
.sub-header ul.social-links li a {
  color: #1e1e1e;
  transition: color 0.2s ease;
}

/* Hover: icon turns white */
.sub-header ul.social-links li a:hover {
  color: #ffffff;
}

/* Active (mouse down / click): icon stays white */
.sub-header ul.social-links li a:active {
  color: #ffffff;
}

/* =====================================
   HEADER SOCIAL ICON – HOVER & CLICK FIX
   ===================================== */

/* Default icon color */
.sub-header ul.social-links li a i {
  color: #1e1e1e;
  transition: color 0.2s ease;
}

/* Hover state */
.sub-header ul.social-links li a:hover i {
  color: #ffffff !important;
}

/* Active (mouse down / click) */
.sub-header ul.social-links li a:active i {
  color: #ffffff !important;
}


/* ======================================================
   HEADER SOCIAL ICON – ICON COLOR ON HOVER ONLY
   ====================================================== */
.sub-header ul.social-links li a:hover i {
  color: #FFFFFF;
}


/* ======================================================
   BANNER HEIGHT FIX – ALL SLIDES SAME HEIGHT
   ====================================================== */
.main-banner .item {
  min-height: 720px;
}

/* ======================================================
   BANNER DOTS – ABOVE BANNER, BOTTOM RIGHT (ALL SLIDES)
   ====================================================== */
.main-banner {
  position: relative;
  overflow: visible;
}



/* FIX: Keep banner dots inside banner, above bottom center */
.main-banner {
  position: relative;
}



/* OVERRIDE: Force banner dots DOWN inside banner */
.main-banner {
  position: relative;
  overflow: hidden;
}




/* ================================
   FINAL RESPONSIVE BANNER DOTS FIX
   ================================ */

.main-banner {
  position: relative;
  overflow: hidden;
}

/* Base (Desktop) */
.main-banner .owl-dots {
  position: absolute;
  left: 50%;
  bottom: 30px;
  transform: translateX(-50%);
  margin: 0;
  padding: 0;
  z-index: 10;
}

/* Tablet */
@media (max-width: 1199px) and (min-width: 768px) {
  .main-banner .owl-dots {
    bottom: 22px;
  }
}

/* Mobile */
@media (max-width: 767px) {
  .main-banner .owl-dots {
    bottom: 15px;
  }
  .main-banner .owl-dots .owl-dot span {
    width: 8px;
    height: 8px;
  }
}
/* ================================
   FORCE FIX BANNER HEIGHT & DOTS
   ================================ */

/* Desktop & large screens */
.main-banner,
.main-banner .item {
  height: 85vh !important;
  min-height: 85vh !important;
  overflow: hidden;
}

/* Background image slides */
.main-banner .item {
  background-size: cover;
  background-position: center;
}

/* Keep pagination dots inside banner */
.main-banner .flex-control-nav {
  position: absolute !important;
  bottom: 25px !important;
  left: 50%;
  transform: translateX(-50%);
  z-index: 20;
}

/* Tablet */
@media (max-width: 991px) {
  .main-banner,
  .main-banner .item {
    height: 70vh !important;
    min-height: 70vh !important;
  }
}

/* Mobile */
@media (max-width: 767px) {
  .main-banner,
  .main-banner .item {
    height: 60vh !important;
    min-height: 60vh !important;
  }
}

/* ================================
   BANNER TEXT SIZE CONTROL
   ================================ */

/* Desktop & large screens */
.main-banner .header-text h2 {
  font-size: 44px !important;
  line-height: 1.2;
}

/* Small laptops */
@media (max-width: 1199px) {
  .main-banner .header-text h2 {
    font-size: 38px !important;
  }
}

/* Tablets */
@media (max-width: 991px) {
  .main-banner .header-text h2 {
    font-size: 32px !important;
  }
}

/* Mobiles */
@media (max-width: 767px) {
  .main-banner .header-text h2 {
    font-size: 26px !important;
    line-height: 1.3;
  }
}

/* ===== Meet Our Team (Theme-Based & Responsive) ===== */
.team-section{padding:80px 0}
.team-img{position:relative;display:inline-block}
.team-img img{width:160px;height:160px;border-radius:50%;object-fit:cover;border:4px solid #eeefb0;transition:.3s}
.team-card h4{margin-top:18px;font-size:18px;color:#fff}
.team-card span {
  font-size: 14px;
  color: #eeefb0; /* theme primary color */
}
.team-card:hover img{transform:translateY(-6px)}
.linkedin-icon{position:absolute;bottom:8px;right:8px;background:#fff;width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;opacity:0;transition:.3s}
.team-card:hover .linkedin-icon{opacity:1}
.linkedin-icon i{color:#0a66c2;font-size:15px}
@media(max-width:991px){
.team-section{padding:60px 0}
.team-img img{width:140px;height:140px}
.team-card{margin-bottom:35px}
}
@media(max-width:575px){
.team-section{padding:50px 0}
.team-img img{width:120px;height:120px}
.linkedin-icon{opacity:1}
}

/* ===== Meet Our Team – Leadership Updates ===== */
.team-card span {
  color: #E3B23C; /* updated theme accent for designation */
}

.team-subtitle {
  color: #E3B23C;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
  margin-bottom: 10px;
}


/* Properties / Projects section – force clean 2-line heading */
.properties .section-heading h2 {
  max-width: 620px;
  margin-left: auto;
  margin-right: auto;
}

@media (max-width: 768px) {
  .properties .section-heading h2 {
    max-width: 90%;
  }
}


/* --- 2 COLUMN GRID UPDATE (Upcoming Projects Section) --- */
.properties.section .row > [class*="col-lg-4"] {
    flex: 0 0 50% !important;
    max-width: 50% !important;
}
/* ===================================== */
/* Yellowstone Blog Action Buttons */
/* ===================================== */

.ys-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;

  background-color:#1e1e1e;
  color: #ffffff;

  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.5px;
  font-family: inherit;

  padding: 10px 20px;
  border: none;
  border-radius: 30px;

  cursor: pointer;
  transition: all 0.3s ease;

  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
}

.ys-btn:hover {
  background-color:#E3B23C;
  /*transform: translateY(-3px);*/
  /*box-shadow: 0 8px 18px rgba(0, 0, 0, 0.2);*/
}

.ys-btn:hover i {
  color: #ffffff !important;
}

.ys-btn:active {
  transform: scale(0.96);
}

.yellowstone-actions {
  display: flex;
  gap: 30px;
  margin-top:20px;
  
}

/* table */
 table, th, td {
	 
  border:1px solid black !important;	
}

td {
	 border:solid !important;
}
tr{
	border:solid !important;
}
</style>
/* Table */

/* Blog form inputs matching index contact form */

.ys-input {
  width: 100%;
  height: 44px;
  border-radius: 22px;
  background-color: #FAF7F0;
  border: 2px solid #000000;
  padding: 0px 20px;
  font-size: 14px;
  outline: none;
  /*transition: all 0.3s ease;*/
  margin-bottom: 20px;
}

/* Textarea special height */
textarea.ys-input {
  height: 120px;
  padding-top: 12px;
  border-radius: 20px;
  resize: none;
}

/* Focus effect */
.ys-input:focus {
  background-color: #FAF7F0;
  /*box-shadow: 0 0 0 2px rgba(243, 85, 37, 0.3);*/
  border: 2px solid #000000;
}

/* Parent positioning */
.custom-nav-dropdown {
  position: relative;
}

/* Dropdown container */
.custom-dropdown {
  position: absolute;
 
  left: 50%;
  transform: translateX(-50%);
  margin-top: 8px;

  width: 180px;                 /* fixed clean width */
  background-color: #1e1e1e;
  border-radius: 12px;
  padding: 6px 0;
  display: none;
}

/* Show on hover */
.custom-nav-dropdown:hover .custom-dropdown {
  display: block;
}

/* Remove unwanted spacing */
.custom-dropdown li {
  list-style: none;
  margin: 0;
  padding: 0;
}

/* Dropdown links */
.custom-dropdown .dropdown-item {
  display: block;
  padding: 8px 16px;        /* smaller padding */
  font-size: 14px;
  color: #f5b301;           /* yellow tone */
  text-decoration: none;
  line-height: 1.4;         /* prevent tall spacing */
  transition: 0.25s ease;
}

/* Hover effect */
.custom-dropdown .dropdown-item:hover {
  background-color: #f5b301;
  color: #000;
}
.custom-dropdown li {
  margin: 0 !important;
  padding: 0 !important;
  line-height: normal !important;
}
.custom-dropdown .dropdown-item {
  padding: 6px 14px !important;
  font-size: 14px;
  line-height: 1.2 !important;
}
.main-content ul li{
	
	font-size:12px !important;;
}
@media (max-width:992px){


.header-area .main-nav .nav li{
	height:auto !important;
max-height:none !important;
overflow:visible !important;
display:block !important;
}

.header-area .main-nav .nav li a{
border-radius:10px!important;
} 
.header-area .main-nav .nav {
border-radius:0 0 20px 20px;

}
}

}
