  @font-face {
  font-family: 'HelveticaCustom';
  src: url('../font/helvetica/helveticalight.ttf') format('TrueType');

}
  @font-face {
  font-family: 'HelveticaCustom-regular';
  src: url('../font/helvetica/Helvetica.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
}
.para{
    font-family: 'HelveticaCustom-regular','sans-serif';
    color:#101010;
}
@font-face {
  font-family: 'playfaircustom';
  src: url('../font/playfairdisplay/PlayfairDisplay-Regular.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'helveticabold';
  src: url('../font/helvetica/Helvetica-Bold.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
}
.htbd{
  font-family: 'helveticabold';
}
body{

  background-color: #fbf0da;
  overflow-x:hidden;
}
body, html {
  overflow-x: hidden;
}

.ftrp{
  font-size:20px;
  font-weight:600;
  letter-spacing:0.4px;
  line-height: 28px;
}
#preloader {
  position: fixed;
  inset: 0;
  display: grid;
  place-items: center;
  background: #F7F0DA;
  z-index: 9999;
}
.pre-wrap { 
  text-align: center; 
  position: relative;
}

.pre-img {
  max-width: 150px;
  height: auto;
  opacity: 0;
  transform: scale(0.9);
  /* SLOWER: duration 7s (was 3s) + start after 1.2s (was .5s) */
  animation: imgReveal 7s ease forwards 1.2s;
}

.pre-underline {
  position: relative;
  height: 4px;
  width: 220px;
  margin: 14px auto 0;
  background: #F7F0DA;
  border-radius: 999px;
  overflow: hidden;
}
.pre-underline::before {
  content: "";
  position: absolute;
  top: 0; left: -40%;
  width: 40%;
  height: 100%;
  background: linear-gradient(90deg, transparent, #B38F51, transparent);
  /* SLOWER: duration 6.5s (was 3s) */
  animation: slideLine 6.5s ease-in-out forwards;
}

@keyframes slideLine {
  0%   { left: -40%; opacity: 1; }
  50%  { left: 60%;  opacity: 1; }
  100% { left: 100%; opacity: 0; } /* line fades */
}

@keyframes imgReveal {
  0%   { opacity: 0; transform: scale(0.9); }
  40%  { opacity: 1; transform: scale(1.05); }
  80%  { opacity: 1; transform: scale(1); }
  100% { opacity: 0; transform: scale(0.9); } /* hide smoothly */
}


.smartbar{ position:fixed; top:10px; left:0; width:100%; z-index:1040; }

/* fixed-height panel; nothing moves */
.chip-panel {
  position: relative;
  width: min(100%, 100vw);
  height: 52px;                               /* = chip area height */
  /* border-radius: 26px;
  background: #fff;
  box-shadow: 0 12px 32px rgba(0,0,0,.12); */
  overflow: hidden;                           /* hide anything outside pill */
}

/* center the chip */
.chip {
  position: absolute; left: 50%; top: 50%;
  transform: translate(-50%, -50%);
  display: flex; align-items: center; justify-content: center;
  padding: 8px 28px; border-radius: 25px;
  background: #F7F0DA; border: 1px solid #9F4600; color: #000;
  font-weight: 400; cursor: default;
  transition: opacity .18s ease, transform .18s ease;
  white-space: nowrap;
  font-family: 'HelveticaCustom-regular','sans-serif';
}

/* the menu overlays in the same spot (same style as chip) */
.menu {
  position: absolute; left: 50%; top: 50%;
  transform: translate(-50%, -50%) scale(.98);
  display: flex; gap: 18px; align-items: center; justify-content: center;
  padding: 5px 24px; border-radius: 25px;
  background: #F7F0DA; border: 1px solid #9F4600; color: #000;
  opacity: 0; pointer-events: none;
  transition: opacity .22s ease, transform .22s ease;
  white-space: nowrap;
   font-family: 'HelveticaCustom-regular','sans-serif';
}

.menu a {
  text-decoration: none; color: #222;
  padding: .38rem .7rem; border-radius: 8px; white-space: nowrap;
  transition: background .2s ease, box-shadow .2s ease, color .2s ease;
   font-family: 'HelveticaCustom-regular','sans-serif';
}

/* hover highlight for menu items */
.menu a:hover {
font-weight:bold;
  color: #9F4600;
}

/* .menu a.is-active {
  background: #F7F0DA;
  box-shadow: inset 0 0 0 1px #B38F51;
  color: #000;
} */

/* hover behavior: chip fades out, menu fades in — same height, same place */
.chip-panel:hover .chip {
  opacity: 0; transform: translate(-50%, -56%); pointer-events: none;
}
.chip-panel:hover .menu {
  opacity: 1; transform: translate(-50%, -50%) scale(1);
  pointer-events: auto;
}




 
  .txtcntr{
    text-align:left;
}


@media (max-width: 768px) {
    
    .headline1 {
font-size:20px!important;
line-height:24px;

}
.headline2 {
   font-size:14px!important; 
   line-height:18px;
}
.txtcntr{
    text-align:center;
}
        .hamburger-btn {
        display: flex
;
    }
        .smartbar {
        background: #fbf0da;;
        /* border-bottom: 1px solid #B38F51; */
        padding: 10px 10px;
        top: 0px !important;
    }
      .smartbar:hover .menu {
    display: grid!important;
}
.smartbar .menu {
    text-align: center;
    width:300px!important;
    border-radius:0px;
} 

.left-border-upper {

  height: 60px!important; 

}
.left-border-lower {
  top: 120px!important;

}
.arrow-row {
      top: 60px!important; 
}
.para {
    font-size:14px!important;
    line-height:18px!important;
}
.mrgtp{
    margin-top:30px;
}
.smfnt{
    font-size:8px!important
}
.map-link{
    font-size:12px!important
}
.bklogo{
   max-width:40px!important;
}
.ps5{
    padding-left:1.5rem!important;
     padding-right:1.5rem!important;
}

 .big-number{
     font-size:22px!important;
 }
.sticky-stack #home{
    height:auto!important;
}
}

.bklogo{
   max-width:60px;
}

/* Give the element some depth + smoothness */
[data-tilt]{
  transform-style: preserve-3d;
  transition: box-shadow .2s ease;
  border-radius: 12px;
}

.flip-3d{
  perspective: 1000px;
  display: inline-block;
}
.flip-3d .flip-inner{
  position: relative;
  transform-style: preserve-3d;
  transition: transform .55s ease;
}
.flip-3d:hover .flip-inner{
  transform: rotateY(180deg);
}
.flip-3d .front,
.flip-3d .back{
  display: block;
  backface-visibility: hidden;
  width: 100%;
  height: auto;
}
.flip-3d .back{
  position: absolute;
  inset: 0;
  transform: rotateY(180deg);
}
.btn-gtn:hover{
  border:1px solid #fff;
}

/* Wave text */
.wave {
  display: inline-flex;
  gap: 0.02em;
  font-weight: 700;               /* tweak as you like */
  will-change: transform;
}

.wave .char {
  display: inline-block;
  white-space: pre;               /* preserves spaces */
  animation: waveFloat 1.8s ease-in-out infinite;
}

/* gentle float wave */
@keyframes waveFloat {
  0%, 100% { transform: translateY(0); }
  25%      { transform: translateY(-8px); }
  50%      { transform: translateY(0); }
  75%      { transform: translateY(8px); }
}

/* optional niceties */
.wave:hover .char { animation-play-state: paused; }  /* pause on hover */
@media (prefers-reduced-motion: reduce) {
  .wave .char { animation: none; }
}
/* Floating, rounded button (hidden by default) */
.to-top{
  position: fixed;
  right: 16px;
  bottom: 16px;
  width: 36px;
  height: 36px;
  border: 0;
  border-radius: 50%;
  background: #000;
  color:#fff;
  display: grid;
  place-items: center;
  font-size: 20px;              /* FA 4.7 icon size */
  cursor: pointer;
  z-index: 1060;                /* above most UI */
  box-shadow: var(--top-btn-shadow);
  opacity: 0;
  visibility: hidden;
  transform: translateY(8px);
  transition: opacity .25s ease, transform .25s ease, visibility 0s .25s;
}

.to-top.show{
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  transition: opacity .25s ease, transform .25s ease;
}

.to-top:hover{ background-color:  #B38F51;color:#fff;}
.to-top:focus{ outline: none; box-shadow: 0 0 0 3px rgba(179,143,81,.35), var(--top-btn-shadow); }

@media (max-width: 575.98px){
  .to-top{
    right: 12px;
    bottom: 12px;
    width: 56px;
    height: 56px;
    font-size: 20px;
  }
}



@media (min-width: 1440px) {
  :root { --overviewH: auto!important; 
}}



  .overview-title {
    position: relative;
    color: #9F4600;
    font-size: 36px;
    line-height:40px;
font-weight:400;
    margin-bottom: 2rem;
    z-index: 1;
    font-family: 'playfaircustom','sans-serif';
  }


  .overview-title .overview-underline {
    background: #9F4600;
    display: block;
    height: 1px;
    position: absolute;
    bottom: -5px;
    right: 0;
    width: 70%;
    min-width: 180px;
    max-width: 30px;
  }
  .big-number {
    font-size: 3rem;
    color: #9F4600;
    font-weight: 700;
    line-height:30px;
       font-family: 'HelveticaCustom-regular','sans-serif';
  }
  .grid-border {
    border: 1.5px solid #bda683;
    border-collapse: collapse;
    border-radius: 0;
  }
  .border-bottom-none { border-bottom: none !important; }
  .border-top-none { border-top: none !important; }
  .border-end-none { border-right: none !important; }
  .border-start-none { border-left: none !important; }
  .headline-bottom {
    display: flex; align-items: flex-end; height: 100%;
    font-size: 1.1rem;
    color: #b86d1c;
    font-weight: 500;
    line-height: 1.2;
  }
  .smfnt{
    font-size:12px;
  }
  .para{
    line-height:30px;
    color:#101010;
  }
.custom-section {
  position: relative;
  /* background: #faeddc; */
  overflow: visible;
  margin: 0px 0px 20px 0px;
  border-top: 0.5px solid #9F4600;
  padding-top: 32px; /* For border/arrow clearance */

}

/* Borders constrained, do not overflow */
.left-border-upper, .left-border-lower {
  position: absolute;
  left: 0; /* Flush with section's left edge */
  width: 0;
  border-left: 0.5px solid #9F4600;
}
.left-border-upper {
  top: 0;
  height: 110px; /* stops above arrows */
  z-index: 2;
}
.left-border-lower {
  top: 170px; /* starts just below arrows */
  height: calc(100% - 170px);
  z-index: 2;
}

.arrow-row {
  position: absolute;
  left: 0px;
  top: 110px;
  z-index: 10;
  /* background: #faeddc; */
  display: flex;
  gap: 8px;
  width: 92px;
  height: 60px;
  align-items: center;
  justify-content: center;
  border-radius: 30px;
}

.carousel-arrow {
  width: 45px;
  height: 45px;
  border: 0.5px solid #9F4600;
  background: none;
  border-radius: 50%;
  color: #9F4600;
  font-size: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: background 0.2s, color 0.2s;
}
.carousel-arrow:hover {
  background: #fffde5;
}

/* Carousel box/image stays WITHIN section and is responsive */
.carousel-box {
  position: relative;
  width: 100%;
  height: 420px;
  max-width: 100%;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}

.carousel-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 80%;
  height: 100%;
  object-fit: cover;
  border-radius: 24px;
  transition:
    left 0.9s cubic-bezier(.45,1.55,.75,.91),
    z-index 0.25s;
  z-index: 1;
  opacity: 1;
  filter: none;
}
.carousel-image.active {
  left: 10%;
  z-index: 4;
}
.carousel-image.prev,
.carousel-image.next {
  left: 20%;
  z-index: 2;
  border-radius: 24px;
}
.carousel-image.hidden {
  left: 50%;
  opacity: 0;
  z-index: 1;
  pointer-events: none;
}


.carousel-image1 {
  position: absolute;
  top: 0;
  left: 0;
  width: 80%;
  height: 100%;
  object-fit: cover;
  z-index: 1;
  opacity: 1;
  filter: none;
}
.carousel-image1.active {
  left: 10%;
  z-index: 4;
}
.carousel-image1.prev,
.carousel-image1.next {
  left: 10%;
  z-index: 2;
}
.carousel-image1.hidden {
  left: 50%;
  opacity: 0;
  z-index: 1;
  pointer-events: none;
}

/* Ensure margin top for content-row so text never overlaps arrows */
.content-row {
  margin-left: 0;
  margin-top: 50px;
}

/* Responsive adjustments */
@media (max-width: 991px) {
  .custom-section { padding-top: 12px; }
  .content-row { margin-top: 120px; }
  .arrow-row { left: -10px; }
  .carousel-box { height: 260px; }
}
@media (max-width: 768px) {
  .content-row { margin-top: 160px; }
  .custom-section { padding-top: 10px; }
  .carousel-box { height: 180px; }
  .parallax-section{
      min-height:200vh!important;
  }
  .dflex{
    display:block!important;
}
}
.dflex{
    display:flex;
}
.form-control.underline-only {
  border: none;
  border-bottom: 0.5px solid #D8CEBB; /* or your preferred color */
  border-radius: 0;
  background: transparent;
  height:80px;
   color:#D8CEBB!important;
}
.form-control{
    color:#D8CEBB;
}

.form-control.underline-only:focus {
  box-shadow: none;
  border-bottom: 2px solid #d5d0cd; /* accent on focus */
  background: transparent;
  color: #D8CEBB;
}


/* Custom placeholder color */
.form-control.underline-only::placeholder, 
textarea.form-control.underline-only::placeholder {
  color: #D8CEBB;; /* Change to your desired color */
  opacity: 1;
}
.footer-text{
  text-decoration: none;
    font-family: 'HelveticaCustom-regular','sans-serif';
    font-size:14px;
    color:#D8CEBB;
}
.tphdln{
  font-family: 'HelveticaCustom-regular','sans-serif';
  font-weight:300;
  font-size:32px;
  line-height:36px;
  color:#101010;
}
.map-link{
  font-family: 'HelveticaCustom-regular','sans-serif';
    color:#101010!important;
    font-weight:normal;
    font-size:16px;
}
.map-link:hover{
  color:#9F4600!important;
}
hr{
  border-top: 1.5px solid #9F4600!important;
}
.smttl{
    font-family: 'HelveticaCustom-regular','sans-serif';
    color:#101010!important;
    font-weight:normal;
}
.btn-cmn{
  border:1px solid #9F4600;
  background:transparent;
   font-family: 'helveticabold', 'sans-serif';
}
.btn-cmn:hover{
  background:#9F4600;
  color:#fff;
}

.btn-cmn1{
  border:1px solid #ffdc96;
  background:transparent;
   font-family: 'helveticabold', 'sans-serif';
   color:#fff;
}
.btn-cmn1:hover{
  background:#9F4600;
  color:#fff;
}
#footer{
    font-family: 'HelveticaCustom-regular','sans-serif';
}
.css-long-arrow {
  width: 0;
  height: 120px;        /* Adjust for desired length */
  border-left: 2px solid #222; /* Line thickness and color */
  position: relative;
  margin: 20px auto;
}

.css-long-arrow::after {
  content: '';
  position: absolute;
  left: -10px;                  /* Center arrowhead horizontally */
  bottom: -2px;                /* Position arrowhead at bottom end */
  width: 0;
  height: 0;
  border-left: 9px solid transparent;
  border-right: 9px solid transparent;
  border-top: 10px solid #222; /* Arrowhead color (match line) */
}
.rwclr{
     transition: background-color 0.3s ease; /* smooth bg transition */
}
.rwclr:hover{
    background-color:#9F4600;
}

.rwclr.para,
.rwclr.big-number {
    transition: color 0.3s ease; /* smooth text color transition */
}
.rwclr:hover .para,
.rwclr:hover .big-number {
  color: #fff;
}
.car-track {
  height: 60px;
  width: 100%;
  z-index: 5;
}
#moving-car {
  top: 0;
  left: 0;
  z-index: 2;
}
.progress-bar-wrapper {
  margin-top: -20px;
  margin-bottom: 10px;
}
.hvbld{
      font-family: 'helveticabold','sans-serif';
}
.section-blended-bg {
  background:url('../images/bg-img.jpg') center left / auto 100% no-repeat;    /* Image, scaled to height */
  background-color: #fbf0da;       /* Main BG color */
  background-blend-mode: multiply; /* Blend effect */
}

.sticky-stack {
  position: relative;
    height: calc(100vh + var(--overviewH));
    isolation: isolate;
}
.parallax-section {
  position: relative;
  /*min-height: 100vh;*/
  overflow: hidden;
  background: transparent; /* actual color goes in .parallax-bg */
  font-family: 'HelveticaCustom-regular','sans-serif';
}

.parallax-bg {
  position: absolute;
  top: 0; left: 0; width: 100%; height: 100%;
  background: #2e241d; /* Your colored layer or a gradient! */
  z-index: 1;
  will-change: transform;
  transition: opacity 0.2s;
}
.parallax-section > .container-fluid {
  position: relative;
  z-index: 2;
}
:root { --overviewH: auto; }
.ps5{
    padding-left:3rem;
}

.mobile-menu-btn {
  font-size: 28px;
  background: none;
  border: none;
}

.mobile-menu {
  display: none;
  background: #2e241d;
  width: 100%;
  padding: 10px 20px;

  text-align:center;
}

.mobile-menu nav a {
  display: block;
  padding: 10px 0;
  font-size: 18px;
  color: #D8CEBB;
  text-decoration: none;
  /*border-bottom: 0.5px solid #D8CEBB;*/
}
.go-top {
  position: fixed;
  bottom: 25px;
  right: 25px;
  width: 50px;
  height: 50px;
  background: #000;
  color: #fff;
  border-radius: 50%;
  text-align: center;
  line-height: 50px;
  font-size: 20px;
  cursor: pointer;
  display: none;   /* hidden by default */
  z-index: 9999;
  transition: 0.3s ease;
}

.go-top:hover {
  background: #333;
  color: #fff;
  text-decoration: none;
}
.hero-fixed-bg {
  position: relative;
  width: 100vw;
  min-height: calc(100vh + 150px); /* expand as you wish */
  padding: 150px 0 150px; /* top and bottom padding as asked */
  background: #fbf0da url('../images/gallery/gal3.jpg') center center / cover no-repeat;
  background-attachment: fixed;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}
.hero-inner {
  position: relative;
  z-index: 2;
  width: 100%;
  /* Optional: Center your content, add fade/background if needed */
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.hero-banner-img {
  display: none; /* hide img tag if you use background-image for hero */
}

.headline1 {
  color: #fff;
font-size:36px;
font-family: 'HelveticaCustom-regular','sans-serif';
line-height:40px;
}
.headline2 {
  color: #ffdc96;
font-size:24px;
font-family: 'HelveticaCustom-regular','sans-serif';
line-height:30px;
}
.logo-img {
  width: 120px;
  height: auto;
}
.logo-img1 {
  width: 180px;
  height: auto;
}
.info-box {
     border: 2px solid #000;
    border-radius:0px;
    background: TRANSPARENT;
    color: #fff;
    font-family: 'HelveticaCustom-regular','sans-serif';
    font-size:20px;
}
.info-box1 {
    border-radius:0px;
    background: #000;
    color: #FFF;
    font-family: 'HelveticaCustom-regular','sans-serif';
     font-size:14px;
}
.btn-primary {
  background: #be6a0b;
  border: none;
  font-weight: bold;
}
.btn-primary:hover, .btn-primary:focus {
  background: #af5b00;
}
.hero-overlay {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  background: rgba(33, 27, 11, 0.8); /* Adjust to your preferred color and opacity */
  pointer-events: none;   /* Let content remain clickable */
  z-index: 1;
}