/* ============================================================
   VSR-CUSTOM.CSS
   Brand tokens + Bootstrap 5 overrides
   Fonts: PT Serif (display) · Inter (body) · Poppins (UI)
   Container: 1440px (Bootstrap container-xxl)
   ============================================================ */

/* ──────────────────────────────────────────
   1. CSS CUSTOM PROPERTIES (DESIGN TOKENS)
────────────────────────────────────────── */
:root {
  /* Brand Colors */
  --vsr-primary:        #1B3A6B;
  --vsr-primary-light:  #0F3BA5;
  --vsr-accent:         #E8824A;
  --vsr-accent-dark:    #D4692D;
  --vsr-dark:           #0F1923;
  --vsr-dark-navy:      #1A2E4A;   /* Why VSR section */
  --vsr-text:           #2C2C2C;
  --vsr-text-muted:     #6B7280;
  --vsr-bg:             #FFFFFF;
  --vsr-bg-soft:        #F6F1EC;
  --vsr-border:         #E5E7EB;
  --vsr-black : #000

  /* Fonts */
  --font-ptserif: 'PT Serif', Georgia, serif;
  --font-inter:    'Inter', 'Segoe UI', sans-serif;
  --font-poppins:      'Poppins', sans-serif;

  /* Spacing extras */
  --vsr-radius:     10px;
  --vsr-radius-lg:  16px;
  --vsr-shadow-md:  0 4px 16px rgba(0,0,0,0.10);
  --vsr-shadow-lg:  0 10px 40px rgba(0,0,0,0.12);
  --vsr-transition: 250ms ease;
}

/* ──────────────────────────────────────────
   CONTAINER — 1440px (Figma frame width)
   Bootstrap's container-xxl defaults to
   1320px. These three rules together force
   a true 1440px max at all xxl breakpoints.
────────────────────────────────────────── */

/* Step 1: Override Bootstrap's CSS variable for xxl container */
:root {
  --bs-container-max-widths-xxl: 1440px;
}

/* Step 2: Override the compiled max-width rule Bootstrap emits
   at @media (min-width: 1400px) for .container-xxl             */
@media (min-width: 1400px) {
  .container,
  .container-sm,
  .container-md,
  .container-lg,
  .container-xl,
  .container-xxl {
    max-width: 1440px;
  }
}

/* Step 3: Hard-cap with high specificity as final guard */
.container-xxl {
  max-width: 1440px !important;
  width: 100%;
  padding-right: var(--bs-gutter-x, 1.5rem);
  padding-left:  var(--bs-gutter-x, 1.5rem);
  margin-right: auto;
  margin-left:  auto;
}

/* ──────────────────────────────────────────
   2. BASE / RESET
────────────────────────────────────────── */
*, *::before, *::after { box-sizing: border-box; }

html { scroll-behavior: smooth; }

body {
  font-family: var(--font-inter);
  /* color: var(--vsr-text); */
  /* background-color: var(--vsr-bg); */
  -webkit-font-smoothing: antialiased;
  background-color: #FFFBFA;
}

img { display: block; max-width: 100%; }
ul  { list-style: none; margin: 0; padding: 0; }
a   { color: inherit; text-decoration: none; }

/* Extra spacing utility for py-6 */
.py-6 { padding-top: 5rem !important; padding-bottom: 5rem !important; }
.py-lg-6 { padding-top: 5rem; padding-bottom: 5rem; }

/* ──────────────────────────────────────────
   3. NAVBAR
────────────────────────────────────────── */
.vsr-navbar {
  background-color: rgba(255, 255, 255, 0.97);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-bottom: 1px solid var(--vsr-border);
  height: 72px;
  transition: box-shadow var(--vsr-transition);
}

.vsr-navbar.scrolled {
  box-shadow: var(--vsr-shadow-md);
}

/* Logo */
.vsr-navbar__brand {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  text-decoration: none;
}

.vsr-navbar__logo-text {
  display: flex;
  flex-direction: column;
  line-height: 1.25;
  font-family: var(--font-poppins);
}

.vsr-navbar__logo-text strong {
  font-size: 0.85rem;
  font-weight: 700;
  color: var(--vsr-primary);
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.vsr-navbar__logo-text em {
  font-style: normal;
  font-size: 0.62rem;
  color: var(--vsr-text-muted);
  letter-spacing: 0.04em;
}

/* Nav links */
.vsr-nav-link {
  font-family: var(--font-inter);
  font-size:16px;
  font-weight: 400;
  color:#000;
  padding: 0.35rem 0.25rem !important;
  position: relative;
  transition: color var(--vsr-transition);
}
.vsr-nav-link.active, .vsr-nav-link:hover {font-weight: 700;  color:#0F3BA5 !important;}
.vsr-nav-link::after {
  content: '';
  position: absolute;
  bottom: -19px;
  left: 0;
  width: 0;
  height: 3px;
  background: #0F3BA5 !important;
  border-radius: 2px;
  transition: width var(--vsr-transition);
}

.vsr-nav-link:hover,
.vsr-nav-link.active {
  color: #0F3BA5 !important;
}

.vsr-nav-link:hover::after,
.vsr-nav-link.active::after {
  width: 100%;
}

/* Phone link */
.vsr-nav-phone {
  font-family: var(--font-inter);
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--vsr-black);
  transition: color var(--vsr-transition);
}

.vsr-nav-phone:hover {
  color: var(--vsr-primary);
}

/* Hamburger */
.vsr-navbar__toggler {
  padding: 0.25rem;
}

.vsr-navbar__toggler:focus {
  box-shadow: none;
}

/* ──────────────────────────────────────────
   4. BUTTONS
────────────────────────────────────────── */
.vsr-btn {
  font-family: var(--font-inter);
  font-weight: 500;
  border-radius: 9999px;
  border: 2px solid transparent;
  transition:
    background-color var(--vsr-transition),
    color var(--vsr-transition),
    transform 150ms ease,
    box-shadow var(--vsr-transition);
  cursor: pointer;
  text-decoration: none;
}

.vsr-btn:active {
  transform: scale(0.97);
}

/* Primary */
.vsr-btn--primary {
  background-color: var(--vsr-primary-light) !important;
  color: #fff !important;
  font-size:15px;
  padding: 0.3rem 1.25rem; 
}

.popup-content label{scroll-padding-bottom: 5px;}
.disabled{
    pointer-events:none;
    opacity:.5;
}
.vsr-btn--primary:hover {
  background-color: var(--vsr-primary-light);
  box-shadow: var(--vsr-shadow-md);
  color: #fff !important;
}

/* Small */
.vsr-btn--sm {
  padding: 0.5rem 1.1rem;
  font-size: 0.8125rem;
}


/* Hero */
.vsr-btn--hero {
     font-size: 15px;
    padding:0 14px 0 20px;
    background-color: #fff;
    color: #fff !important;
    box-shadow: var(--vsr-shadow-md);
    height: 45px;
    font-family: var(--font-inter);
    margin-top: 12% !important;
}

.vsr-btn--hero:hover {
  background-color:#fff;
  box-shadow: var(--vsr-shadow-lg);
  transform: translateY(-2px);
  color: #fff !important;
}
.home-hero-btn{background: #fff !important; color: #000 !important;}
.home-hero-btn:hover{color: #000 !important;}
.vsr-btn--hero i {
  transition: transform 150ms ease;
      width: 33px;
    height: 33px;
    background: #0F3BA5;
    border-radius: 50%;
    color: #fff;
}
.vsr-btn--hero .bi-arrow-right::before{    padding: 9px;transform: rotate(327deg);}
.vsr-btn--hero:hover .bi-arrow-right::before{transform: rotate(0deg);}
.vsr-btn--hero:hover i {
  transform: translateX(4px);
}

/* CTA White */
.vsr-btn--cta {
  background-color: #fff;
  color: #000;
  font-size: 1rem;
  font-weight: 600;
  padding: 0.875rem 2.5rem;
  border-radius: 4px;
  position: relative;
  z-index: 1;
}

.vsr-btn--cta:hover {
  background-color:#0f3ba5;
  color: #fff !important;
  transform: translateY(-2px);
border: none;
}

/* ──────────────────────────────────────────
   5. BADGES
────────────────────────────────────────── */
.vsr-badge {
  display: inline-block;
  font-family: var(--font-inter);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 0.25rem 0.5rem;
  border-radius: 2px;
  line-height: 1;
}

.vsr-badge--dark {
  background-color:#fff;
  color: #000;
}

.vsr-badge--orange {
  background-color: #fff;
  color: #000;
}

/* ──────────────────────────────────────────
   6. HERO
────────────────────────────────────────── */
.vsr-hero {
  min-height: 100vh;
  padding-top: 30px; /* navbar height */
}

.vsr-hero .row {
  /* min-height: calc(100vh - 72px); */
  height: 94dvh;
  overflow: hidden;
  border-radius: 20px;
}

/* Left image pane */
.vsr-hero__media {
  position: relative;
  overflow: hidden;
  min-height: 340px;
  background-color: #c9d4e0;
   border-radius: 30px;
}

.vsr-hero__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 30%;
}

/* .vsr-hero__overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to right, rgba(0,0,0,0.18) 0%, transparent 100%);
} */

/* Right content pane */
.vsr-hero__content {
  background-color: var(--vsr-bg-soft);
      border-left: 5px solid #fff;
  border-radius: 20px;
      height: 94dvh;
}

/* Heading — PT Serif */
.vsr-hero__heading {
  font-family:'PT Serif', Georgia, serif;
  font-size: clamp(2.25rem, 4vw, 3.5rem);
  font-weight: 400;
  line-height: 1.1;
  color: var(--vsr-dark);
  letter-spacing: -0.02em;
 
}

.vsr-hero__heading em {
  font-style: italic;
  color:#000;
   font-size: 62px;
}

/* Subtext — Inter */
.vsr-hero__subtext {
  font-family: var(--font-inter);
  font-size: 15px;
  line-height: 1.75;
  color:#000;
  max-width: 80%;
}

/* Avatars */
.vsr-avatars {
  display: flex;
}

.vsr-avatar {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  border: 2.5px solid #fff;
  object-fit: cover;
  background-color: var(--vsr-border);
  margin-left: -10px;
}

.vsr-avatars .vsr-avatar:first-child {
  margin-left: 0;
}

.vsr-social-label {
  font-family: var(--font-poppins);
  font-size: 12px;
  font-weight: 500;
  color: var(--vsr-text);
}

/* ──────────────────────────────────────────
   7. ABOUT / STATS
────────────────────────────────────────── */
.vsr-about {
  background-color:none;
}

.vsr-about__text {
  font-family: var(--font-inter);
  font-size: 32px;
  line-height: 1.4;
  color: #000;
  max-width: 100%;
}

.vsr-about__text strong {
  font-weight: 600;
  color: var(--vsr-dark);
}

.vsr-stats-row {
  
  padding-top: 2rem;
  margin-top: 0.5rem;
}

.vsr-stat {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
  text-align: center;
  width: 150px;
}

.vsr-stat__number {
  font-family: var(--font-poppins);
  font-size: 60px;
  font-weight: 400;
  color: #313131;
  line-height: 1;
}

.vsr-stat__number--sm {
 font-size: 32px;
    line-height: 1.25;
    font-weight: 500;
    font-family: var(--font-poppins);
        margin-top: -6px;
        
}
.last-statnum {gap:0;}
.last-statnum .vsr-stat__label{margin-top:.7rem;}
.vsr-stat__label {
  font-family: var(--font-inter);
  font-size:16px;
  font-weight: 400;
  color:#000;
      margin-top: 1rem;
}

/* ──────────────────────────────────────────
   8. EYEBROW / SECTION TITLES
────────────────────────────────────────── */
.vsr-eyebrow {
  display: block;
  font-family: var(--font-inter);
  font-size:14px;
  font-weight: 400;
  color: #FF7900;

  margin-bottom: 0.35rem;
}

.vsr-eyebrow--light {
  color:#FF7900;
  font-size: 16px;
  font-family: var(--font-inter);
  font-weight: 400;
}

.vsr-section-title {
  font-family: 'PT Serif', Georgia, serif;;
  font-size: clamp(24px, 2.5vw, 40px);
  font-weight: 400;
  color:#000;
  line-height: 1.25;
  margin: 20px 0 10px;
}

.vsr-viewall {
  font-family: var(--font-inter);
  font-size:16px;
  font-weight: 500;
  color: #000;
  margin-top: 2rem;
 
  padding-bottom: 1px;
  transition: color var(--vsr-transition);
  white-space: nowrap;
}

.vsr-viewall:hover {
  color: var(--vsr-primary-light);
}

/* ──────────────────────────────────────────
   9. PROJECTS SECTION
────────────────────────────────────────── */
.vsr-projects {
  background-color: none;
}

/* ──────────────────────────────────────────
   10. PROJECT CARD
────────────────────────────────────────── */
.vsr-card {
  border-radius: var(--vsr-radius-lg);
  overflow: hidden;
  background-color: #fff;
  border: none;
  transition: transform var(--vsr-transition), box-shadow var(--vsr-transition);
}

.vsr-card:hover {
  /* transform: translateY(-5px);
  box-shadow: var(--vsr-shadow-lg); */
}

.vsr-card__media {
  position: relative;
 
  overflow: hidden;
  background-color: var(--vsr-bg-soft);
}

.vsr-card__img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  transition: transform 400ms ease;
}

.vsr-card:hover .vsr-card__img {
  transform: scale(1.06);
}

.vsr-card__badges {
  position: absolute;
  top:30px;
  right:30px;
  display: flex;
  gap: 0.35rem;
}

.vsr-card__body {
  padding: 0.875rem 0.75rem 0.75rem;
}

.vsr-card__title {
  font-family: var(--font-inter);
  font-size: 20px;
  font-weight:400;
  color:#000;
  margin-bottom: 0.25rem;
}

.vsr-card__location {
  font-family: var(--font-inter);
  font-size: 12px;
  color: #000;
  margin: 0;
  display: flex;
  align-items: center;
}
.vcb{padding: 2rem 20px 1rem 10px;}
/* ──────────────────────────────────────────
   11. BOOTSTRAP CAROUSEL OVERRIDE
────────────────────────────────────────── */
.vsr-carousel .carousel-inner {
  overflow: visible;
}

.vsr-carousel-counter {
  font-family: var(--font-poppins);
  font-size:14px;
  font-weight: 500;
  color:#61626B;
  letter-spacing: 0.04em;
  min-width: 3.5rem;
}

.vsr-carousel-btn {
  width: 38px;
  height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1.5px solid var(--vsr-border);
  border-radius: 50%;
  background: none;
  color: var(--vsr-text-muted);
  font-size: 0.9rem;
  transition:
    background-color var(--vsr-transition),
    border-color var(--vsr-transition),
    color var(--vsr-transition);
  cursor: pointer;
}

.vsr-carousel-btn:hover {
  background-color: var(--vsr-primary-light);
  border-color: var(--vsr-primary-light);
  color: #fff;
}

/* ──────────────────────────────────────────
   12. WHY VSR SECTION
────────────────────────────────────────── */
.vsr-why {
 
}
.why_vsr{background-color: #0D2A70; border-radius: 20px; padding: 80px; padding-bottom: 60px;}
.vsr-why__heading {
  font-family:'PT Serif', Georgia, serif;
  font-size:40px;
  font-weight: 400;
  color:#fff;
  max-width: 540px;
}

/* Feature Card */
.vsr-feature {
  padding: 60px 30px 0px 0;
  transition: background-color var(--vsr-transition), transform var(--vsr-transition);
}

.vsr-feature:hover {

  transform: translateY(-3px);
}

.vsr-feature__icon {
  width: 50px;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: rgba(255,255,255,0.9);
  font-size: 1.2rem;
  transition: border-color var(--vsr-transition), background-color var(--vsr-transition);
}



.vsr-feature__title {
  font-family: var(--font-inter);
  font-size:24px;
  font-weight: 500;
  color: #fff;
  margin-bottom: 0.75rem;
}

.vsr-feature__text {
  font-family: var(--font-inter);
  font-size:13px;
  line-height: 1.75;
  color:#ffffffba;
  margin: 0;
  width: 70%;
}

/* ──────────────────────────────────────────
   13. COMPLETED SECTION
────────────────────────────────────────── */
.vsr-completed {
  background-color:none;
}

/* ──────────────────────────────────────────
   14. CTA BANNER
────────────────────────────────────────── */
.vsr-cta {
  position: relative;
  overflow: hidden;
}

.vsr-cta__bg {
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, #E8824A 0%, #D4692D 40%, #C05520 70%, #8B3A1A 100%);
  z-index: 0;
}

.vsr-cta__bg::before {
  content: '';
  position: absolute;
  top: -30%;
  right: -10%;
  width: 65%;
  aspect-ratio: 1;
  background: radial-gradient(circle, rgba(255,210,120,0.35) 0%, transparent 70%);
  border-radius: 50%;
}

.vsr-cta__bg::after {
  content: '';
  position: absolute;
  bottom: -40%;
  left: -10%;
  width: 50%;
  aspect-ratio: 1;
  background: radial-gradient(circle, rgba(120,20,0,0.45) 0%, transparent 70%);
  border-radius: 50%;
}

.vsr-cta .container-xxl {
  position: relative;
  z-index: 1;
}

.vsr-cta__heading {
  font-family:'PT Serif', Georgia, serif;;
  font-size: clamp(1.75rem, 3.5vw, 60px);
  font-weight: 400;
  color: #fff;
  line-height: 1.25;
  letter-spacing: -0.01em;
  position: relative;
}

/* ──────────────────────────────────────────
   15. FOOTER
────────────────────────────────────────── */
.vsr-footer {
  background-color:none;
 
}

.vsr-footer__copy {
  font-family: var(--font-inter);
  font-size:11px;
  color:#000;
  margin-top:2rem;
}

.vsr-footer__heading {
  font-family: var(--font-poppins);
  font-size:16px;
  font-weight: 600;
  color: var(--vsr-dark);
  margin-bottom: 1rem;
}

.vsr-footer__list {
  display: flex;
  flex-direction: column;
  gap: 0
}

.vsr-footer__link {
  font-family: var(--font-inter);
  font-size: 13px;
  color: #000;
  transition: color var(--vsr-transition);
}

.vsr-footer__link:hover {
  color: var(--vsr-primary);
}

.vsr-footer__contact {
  font-family: var(--font-inter);
  font-size: 0.875rem;
  color: #000;
  transition: color var(--vsr-transition);
}

.vsr-footer__contact:hover {
  color: var(--vsr-primary);
}

.vsr-social-icon {
  width: 34px;
  height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
 
  border-radius: 8px;
  color: var(--vsr-text-muted);
  font-size: 0.9rem;
  transition:
    color var(--vsr-transition),
    border-color var(--vsr-transition),
    background-color var(--vsr-transition);
}

.vsr-social-icon:hover {
  color: var(--vsr-primary);
  border-color: var(--vsr-primary);
  background-color: rgba(27,58,107,0.06);
}

/* ──────────────────────────────────────────
   16. RESPONSIVE OVERRIDES
────────────────────────────────────────── */

/* Tablet */
@media (max-width: 991.98px) {
  .vsr-hero {
    min-height: auto;
    padding-top: 40px;
  }

  .vsr-hero .row {
    min-height: auto;
  }

  .vsr-hero__media {
    /* aspect-ratio: 16 / 9; */
    min-height: auto;
     margin-top: 2rem;
  }

  .vsr-hero__content {
    padding: 3rem 2rem;
    height: auto;
  }

  .vsr-hero__subtext {
    max-width: 100%;
  }

}

/* Mobile */
@media (max-width: 767.98px) {
  .vsr-hero__heading {
    font-size: 2rem;
  }

  .vsr-stat__number {
    font-size: 2rem;
  }

  .vsr-why__heading {
    font-size: 1.75rem;
  }

  .vsr-cta__heading {
    font-size: 1.75rem;
  }

  .vsr-navbar .collapse.navbar-collapse {
    padding: 1rem 0;
    border-top: 1px solid var(--vsr-border);
    margin-top:0;
  }

  .py-lg-6 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }
}
.fixed-top{top:60px;  width: 1278px;  left: 50%; transform: translate(-50%); border-radius: 50px;}
/* Large Desktop — 1440px Figma frame */
@media (min-width: 1440px) {
  .vsr-hero__heading {
   font-size: 71px;
        line-height: 80px;
        font-weight: 400;
                margin-top: 6rem;
  }
}

    @media (min-width: 1400px) {
      .container, .container-sm, .container-md,
      .container-lg, .container-xl, .container-xxl {
        max-width: 1440px !important;
      }
    }
@media (min-width: 992px) {
  .fixed-top{ width: 875px;}
}
@media (min-width: 1200px) {
  .fixed-top{ width: 1080px;}
}
@media (min-width: 1366px) {
  .fixed-top{ width: 1278px;}
}
/*Manual Code*/

    .head_enq_btn{height: 33px; line-height: 13px;}
    .wc-100{width:100px}
    .custom_client{width:83%; margin: auto;}
    .pt-120{padding-top: 120px;}
.register_cont{    background: #ff8000;  padding: 4rem 0;  border-radius: 20px; position: relative;}
.register_cont:before{content: ""; background: url(../assets/images/bg-gal.png);    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;opacity: 0.2; background-size: 100%;}
.eogp{font-size:40px; font-family:'PT Serif', Georgia, serif; color: #000;}

    /*Slider*/
    .vsr-carousel{
overflow:hidden;
}

.vsr-carousel .row{
 margin-right:0;
}

.vsr-carousel .col-lg-4{
flex:0 0 33.333%;
max-width:33.333%;
}

.vsr-card__media{
overflow:hidden;
border-radius:18px;
position:relative;
}

.vsr-card__img{
width:100%;
object-fit:cover;
border-radius:18px;
}

.vsr-carousel .col-lg-4:last-child{
opacity:.45;
}

.slider-progress{
width:180px;
height:2px;
background:#ddd;
position:relative;
}

.slider-progress-fill{
position:absolute;
left:0;
top:0;
height:100%;
width:25%;
background:#FF7900;
transition:.5s;
}

.vsr-carousel-btn{
width:31px;
height:31px;
border-radius:50%;
background:#fff;
border:1px solid #DFDFDF;
display:flex;
justify-content:center;
align-items:center;
}
.home-slider_card .vsr-card__body{display: flex;     justify-content: space-between;}
.navbar-brand img{width: 80%;}
@media(max-width:991px){
.navbar-brand img{width: auto;}
.vsr-carousel .row{
margin-right:0;
overflow:auto;
}

.vsr-carousel .col-lg-4:last-child{
opacity:1;
}

.container-xxl{padding-left: 16px; padding-right: 16px;}
.vsr-hero__content{border-left: 0;}
.vsr-hero__heading em{font-size: 2rem;}
.vsr-btn--hero{    margin-top: 20% !important;}
.vsr-about__text{font-size: 22px;}
.custom_client {width: 100%;}
.vsr-stat__number--sm{font-size: 22px;}
.eogp {font-size: 22px;}
.home-slider_card{padding-top: 0 !important; padding-bottom: 0 !important;}
.vsr-viewall{text-align: right;   width: 100%;  display: inline-block; font-size: 14px;}
.home-slider_card .vsr-card__body{display: block;}
.why_vsr{padding: 40px 30px;}
.vsr-feature{    padding: 40px 0px 0px 0;}
.vsr-feature__text{width: 100%;}
.show-header, .fixed-top {
    display: block;
    top: 0;
    width: 100%;
    border-radius: 0;
}
.vsr-navbar__brand{width: 160px;}
.vsr-hero__media{border-radius: 15px;}
  }

/*Header section and Menu also*/
/* #mainNav{
    transition:transform .4s ease;
}

#mainNav.hide-header{
    transform:translateY(-100%);
}

#mainNav.show-header{
    transform:translateY(0);
} */

.hide-header{display: none;}
.scrolled.show-header{    display: block;
    top: 0;
    width: 100%;
    border-radius: 0;}




    .vsr-carousel .row{
overflow:hidden;
}

.slick-track{
display:flex;
}

.slick-slide{
padding:0 10px;
height:auto;
}

.slick-slide > div{
height:100%;
}

/*Popup Code*/
/* Popup overlay */
.enquiry-popup{
    display:none;
    position:fixed;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background:rgba(0,0,0,0.6);
    z-index:9999;

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

/* Popup box center */
.popup-content{
    background:#fff;
    width:650px;
    max-width:90%;
    padding:40px;
    border-radius:8px;
    position:relative;
 font-family: 'PT Serif', Georgia, serif;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);
    position:fixed;
}
.enq_lab{font-family: var(--font-inter); font-size: 16px; color: #000; margin-bottom: 10px;}
.enquiry-popup .form-control{height: 45px; border: 1px solid #626262;     width: 97%;}
/* close icon */
.close-popup{
    position:absolute;
    top:10px;
    right:15px;
    font-size:28px;
    cursor:pointer;
}
/*Popup End code*/


/*Project Listing Page*/


    /* ── PAGE HERO ── */
    .page-hero {
      padding: 220px 0 60px;
     
    }
    .page-hero__title {
      font-family: 'PT Serif', Georgia, serif;
      font-size: clamp(36px, 4vw, 60px);
      font-weight: 400;
      color: #0F1923;
      margin-bottom: 1rem;
    }
    .page-hero__desc {
      font-family:'PT Serif', Georgia, serif;
      font-size: 32px;
      line-height: 1.45;
      color: #2C2C2C;
      max-width: 90%;
      margin-top: 2rem;
      font-weight: 400;
    }

    /* ── SECTION LABELS ── */
    .section-label {
      font-family: 'PT Serif', Georgia, serif;
      font-size: 40px;
      font-weight: 400;
      color: #0F1923;
      margin-bottom: 3.5rem;
    }

    /* ── PROJECT ROW CARD (horizontal) ── */
    .proj-row-card {
      display: flex;
      gap: 0;
      background: #fff;
      overflow: hidden;
      border: 1px solid #E5E7EB;
      transition: box-shadow 250ms ease, transform 250ms ease;
      margin-bottom: 40px;
    }
    .proj-row-card {
      transform: translateY(-3px);
    }
    .proj-row-card:hover .proj-view-link{    background: #0F3BA5; color: #fff;}
 .proj-row-card:hover  .proj-row-card__body{background-color: #F6F1EC;}
    /* Image side */
    .proj-row-card__media {
     
      width:50%;
      position: relative;
      overflow: hidden;
      background: #c9d4e0;
    }
    .proj-row-card__img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      transition: transform 400ms ease;
    }
    .proj-row-card:hover .proj-row-card__img {
      transform: scale(1.06);
    }

    /* Status badge top-right on image */
    .proj-row-card__badge {
      position: absolute;
      top: 44px;
      right: 20px;
      font-family: 'Inter', sans-serif;
      font-size: 11px;
      font-weight: 600;
      letter-spacing: 0.06em;
      padding: 4px 10px;
      border-radius: 4px;
      background: #fff ;
      color: #000;
    }
    .proj-row-card__badge--available {
      background:#fff;
          color: #2FBA60;
    border: 1px solid #2FBA60;
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    }
    .proj-row-card__badge--sold {
      background: #fff;
      color: #FF4242;
      border: 1px solid #FF4242;
    }

    /* Content side */
    .proj-row-card__body {
      flex: 1;
      padding: 32px 36px;
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      background-color: #EFEEEC;
    }
    .proj-row-card__title {
      font-family: 'PT Serif', Georgia, serif;
      font-size: 36px;
      font-weight: 400;
      color: #000;
      margin-bottom: 30px;
    }
    .proj-row-card__desc {
      font-family: var(--font-inter);
      font-size: 14px;
      line-height: 1.5;
      color: #000;
      max-width:92%;
      margin-bottom: 40px;
    }

    /* Meta row */
    .proj-meta {
      display: flex;
      gap: 70px;
      flex-wrap: wrap;
      margin-bottom: 28px;
    }
    .proj-meta__item {
      display: flex;
      flex-direction: column;
      gap: 4px;
    }
    .proj-meta__label {
      font-family:var(--font-inter);
      font-size: 16px;
      color: #000;
           
    }
    .proj-meta__value {
      font-family: var(--font-inter);
      font-size: 18px;
      font-weight: 600;
      color: #000;
    }
    .proj-meta__value--highlight {
      color: #000;
      font-size: 18px;
      font-weight: 600;
    }
.across{font-size: 18px; font-family: var(--font-inter); font-weight: 400;}
    /* View project link */
    .proj-view-link {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      font-family: var(--font-inter);
      font-size: 13px;
      font-weight: 500;
      color: #000;
      text-decoration: none;
      border-radius: 9999px;
      padding: 8px 20px;
      width: fit-content;
      transition: background 250ms ease, color 250ms ease;
      background-color: #fff;
      margin-bottom: 10px;
    }
    .proj-view-link:hover {
      background: #0F3BA5;
      color: #fff;
    }
    .proj-view-link i {
      font-size: 13px;
      transition: transform 150ms ease;
    }
    .proj-view-link:hover i {
      transform: translateX(4px);
    }

    /* ── DIVIDER between sections ── */
    .section-divider {
      border: none;
      border-top: 1px solid #E5E7EB;
      margin: 60px 0;
    }

    /* ── PROJECTS WRAPPER ── */
    .projects-page {
      padding: 60px 0 80px;
      
    }

    /* ── CTA BANNER (same as index) ── */
    .vsr-cta {
      position: relative;
      overflow: hidden;
    }
    .register_cont {
      background: #ff8000;
      padding: 4rem 0;
      border-radius: 20px;
      position: relative;
    }
    .register_cont:before {
      content: "";
      background: url(../assets/images/bg-gal.png);
      position: absolute;
      width: 100%; height: 100%;
      left: 0; top: 0;
      opacity: 0.2;
      background-size: 100%;
    }
.bor-top{border-top: 2px solid #000; width: 92%; margin: auto;}
    /* ── RESPONSIVE ── */
    @media (max-width: 767.98px) {
      .proj-row-card {
        flex-direction: column;
      }
      .proj-row-card__media {
        flex: none;
        width: 100%;
        height: 220px;
      }
      .proj-row-card__body {
        padding: 20px;
      }
      .proj-meta {
        gap: 20px;
      }
      .page-hero {
        padding: 120px 0 40px;
      }
      .section-label {
        font-size: 24px;
      }
    }

    @media (max-width: 991.98px) {
      .proj-row-card__media {
        flex: 0 0 220px;
        width: 100%;
      }
      .show-header, .fixed-top {
        display: block;
        top: 0;
        width: 100%;
        border-radius: 0;
      }
    }
/*End Project Listing Page*/

/*Project Detail*/


    /* =====================================================
       HERO BANNER
    ===================================================== */
    .pd-hero {
 
    }
    .pd-breadcrumb {
      font-family:  var(--font-inter);
      font-size: 13px;
      color: #000;
      margin-bottom: 4px;
    }
    .pd-breadcrumb a {font-family: 'PT Serif', Georgia, serif; color: #000; text-decoration: none; font-size: 16px; font-weight: 400;}
    .pd-breadcrumb a:hover { color: #0F3BA5; }
    .pd-hero__title {
      font-family: 'PT Serif', Georgia, serif;
      font-size: clamp(2rem, 4vw, 44px);
      font-weight: 400;
      color: #0F1923;
      margin-bottom: 0;
    }
    .pd-hero__banner {
      width: 100%;
      object-fit: cover;
      border-radius: 0;
      display: block;
      margin-top: 24px;
    }

    /* =====================================================
       TWO-COLUMN LAYOUT: sidebar + content
    ===================================================== */
    .pd-layout {
      display: grid;
      grid-template-columns: 260px 1fr;
      gap: 60px;
      padding: 70px 0 80px;
      align-items: start;
      width: 100%;
    }
.pd-content{width: 100%; overflow: hidden;}
    /* =====================================================
       SIDEBAR
    ===================================================== */
    .pd-sidebar {
      position: sticky;
      top: 20px;
      border-right: 1px solid #000;
      padding-right: 30px;
      width: 290px;
    }
    .over-detail{font-size: 18px; font-family: var(--font-inter); color: #000; font-weight: 400;}
    .pd-overview__leadl{  font-family: 'PT Serif', Georgia, serif; font-size:34px; font-weight: 400; color: #000;}
    .pd-meta-block {
      margin-bottom: 15px;
    }
    .pd-meta-block__label {
      font-family:var(--font-inter);
      font-size: 16px;
      color: #000;
      margin-bottom: 4px;
    }
    .pd-meta-block__value {
    font-family:var(--font-inter);
      font-size: 18px;
      font-weight: 600;
      color: #000;
      line-height: 1.35;
      margin-bottom: 0;
    }
    .pd-meta-block__sub {
      font-family:var(--font-inter);
      font-size: 18px;
      font-weight: 400;
      color: #000;
    }

    /* Download Brochure btn */
    .pd-btn-brochure {
      display: grid-lanes;
      align-items: center;
      justify-content: center;
      gap: 8px;
      width: 100%;
      padding: 8px 15px;
      background: #fff;
      color: #0F3BA5;
      font-family:var(--font-inter);
      font-size: 14px;
      font-weight: 500;
      border: 1px solid #0F3BA5;
      border-radius: 60px;
      text-decoration: none;
      margin-bottom: 28px;
      transition: background 250ms ease;
      cursor: pointer;
    }
    .pd-btn-brochure:hover { background: #1B3A6B; color: #fff; }

    /* Enquiry form in sidebar */
    .pd-enquiry-box {
      font-family: 'PT Serif', Georgia, serif;
      border-radius: 10px;
      padding:20px 0 30px;
      font-size: 24px;
      font-weight: 400;
      color: #000;
    }
    .pd-enquiry-box h4 {
      font-family: 'PT Serif', Georgia, serif;
      font-size: 24px;
      font-weight: 400;
      color: #000;
      margin-bottom: 14px;
    }
    .pd-enquiry-box .form-control {
      font-family: var(--font-inter);
      font-size: 13px;
      border-radius: 6px;
      border: 1px solid #626262;
      padding: 9px 12px;
      margin-bottom: 10px;
      background: #fff;
      height: 40px;
          letter-spacing: 0.7px;
          width: 250px;
    }
    .pd-enquiry-box .form-control:focus {
      border-color: #0F3BA5;
      box-shadow: none;
    }
    .pd-enquiry-box textarea.form-control { resize: none; }
    .pd-btn-enquire {
      width: auto;
      padding: 5px 15px;
      background: #0F3BA5;
      color: #fff;
      font-family: var(--font-inter);
      font-size: 15px;
      font-weight: 400;
      border: none;
      border-radius: 30px;
      cursor: pointer;
      transition: background 250ms ease;
    }
    .pd-btn-enquire:hover { background: #0F3BA5; }

    /* =====================================================
       CONTENT AREA
    ===================================================== */
    .pd-section-title {
      font-family: 'PT Serif', Georgia, serif;
      font-size: 34px;
      font-weight: 400;
      color: #0F1923;
      margin-bottom: 20px;
      text-align: center;
    }
    .pd-section-subtitle {
      font-family: 'PT Serif', Georgia, serif;
      font-size: 34px;
      color: #000;
      margin-bottom: 3rem;
      text-align: center;
      font-weight: 400;
    }

    /* Overview */
    .pd-overview__lead {
      font-family: 'PT Serif', Georgia, serif;
      font-size: 34px;
      font-weight: 400;
      line-height: 1.2;
      color: #0F1923;
      margin-bottom: 70px;
    }
    .pd-overview__body {
      font-family:var(--font-inter);
      font-size: 16px;
      line-height:22px;
      color: #000;
      margin-bottom: 40px;
      padding-top: 20px;
    }

    /* Floor plan thumbnails */
    .pd-plans-grid {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 20px;
      margin-bottom: 0;
    }
    .pd-plan-thumb {
      padding: 20px;
      overflow: hidden;
      border: 1px solid #BDBDBD;
      transition: box-shadow 250ms ease;
      background-color: #fff;
    }
    .pd-plan-thumb:hover { box-shadow: 0 6px 20px rgba(0,0,0,0.10); }
    .pd-plan-thumb img {
      width: 100%;
  
      object-fit: cover;
    }
    .pd-plan-thumb__label {
      font-family: 'Inter', sans-serif;
      font-size: 15px;
      font-weight: 500;
      color: #374151;
      padding: 8px 10px;
      line-height: 1.3;
      margin-bottom: 0;
      padding:31px 0 10px; 
    }

    /* =====================================================
       SPECIFICATIONS
    ===================================================== */
    .pd-plan{font-family: var(--font-inter); font-size: 18px; color: #000; font-weight: 400; margin-bottom: 10px;}
    .zoom-animation{width: 100%;}
    .zoom-animation img{width: 100%; cursor: pointer;}
    .pd-specs-section {
      padding: 60px 0;
   
    }
    .pd-specs-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 32px 40px;
}
   
    .pd-spec-item {
      display: flex;
      flex-direction: column;
      text-align: center;
      font-family:var(--font-inter);
      width: 272px;
    }
    .pd-spec-item__icon {
      width: 44px;
      height: 44px;
      background: #F3F4F6;
      border-radius: 8px;
      display: flex;
      align-items: center;
      justify-content: center;
      margin-bottom: 12px;
      font-size: 18px;
      color: #1B3A6B;
      margin:20px auto 30px;
    }
    .pd-spec-item__title {
      font-family:var(--font-inter);
      font-size: 18px;
      font-weight: 500;
      color: #000;
      margin-bottom: 15px;
    }
    .pd-spec-item__desc {
     font-family:var(--font-inter);
      font-size: 12px;
      line-height: 1.2;
      color: #000;
    }
    .pd-load-more {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      font-family:var(--font-inter);
      font-size: 14px;
      font-weight: 500;
      color: #0F3BA5;
      border: 1.5px solid #0F3BA5;
      border-radius: 9999px;
      padding: 8px 22px;
      background: none;
      cursor: pointer;
      transition: background 250ms ease, color 250ms ease;
      margin-top: 36px;
    }
    .pd-load-more:hover { background: #0F3BA5; color: #fff; }

    /* hidden specs */
    .pd-specs-extra { display: none; }
    .pd-specs-extra.show { display: contents; }

    /* =====================================================
       PLANS SECTION (full width, centered)
    ===================================================== */
    .pd-plans-section {
      padding: 60px 0;
     
      text-align: center;
    }
    .pd-plans-full-grid {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 16px;
      margin-top: 32px;
    }
    .pd-plan-card {
      background: #F6F1EC;
      border-radius: 10px;
      overflow: hidden;
      border: 1px solid #E5E7EB;
    }
    .pd-plan-card img {
      width: 100%;
      height: 160px;
      object-fit: cover;
    }
    .pd-plan-card__info {
      padding: 12px 14px;
      text-align: left;
    }
    .pd-plan-card__name {
      font-family: 'Inter', sans-serif;
      font-size: 13px;
      font-weight: 600;
      color: #0F1923;
      margin-bottom: 2px;
    }
    .pd-plan-card__type {
      font-family: 'Inter', sans-serif;
      font-size: 11px;
      color: #9CA3AF;
    }

    /* =====================================================
       GALLERY
    ===================================================== */
    .pd-gallery-section {
      padding: 60px 0;
      text-align: center;
    }
    .pd-gallery-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 16px;
      margin-top: 32px;
    }
    .pd-gallery-item {
      border-radius: 10px;
      overflow: hidden;
  width: 400px;
    }
    .pd-gallery-item img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      transition: transform 400ms ease;
    }
    .pd-gallery-item:hover img { transform: scale(1.05); }

    /* =====================================================
       LOCATION / SOCIAL INFRA
    ===================================================== */
    .accordion-item{background: none;}
    .pd-location-section {
      padding: 60px 0;
     
    }
    .pd-loc-accordion .accordion-button {
      font-family: var(--font-inter);
      font-size: 18px;
      font-weight: 600;
      color: #0F1923;
      background: none;
      border-radius: 0 !important;
      box-shadow: none;
      padding: 16px 0;
          border-bottom: 1px solid #9D9D9D;
    }
    .pd-loc-accordion .accordion-button:not(.collapsed) {
      color: #000;
      background: none;
      margin-bottom: 10px;
    }
    .pd-loc-accordion .accordion-button{border-bottom: none ;}
    .hstyky{height: 40px !important;}
    .accordion-button.collapsed{border-bottom: 1px solid #9D9D9D;}
    .sticky_enquiery .form-group{    margin-bottom: 10px;}
    .pd-loc-accordion .accordion-button::after {
      filter: none;
    }
    .pd-loc-accordion .accordion-item {
      border: none;
      /* border-bottom: 1px solid #E5E7EB; */
      border-radius: 0 !important;
    }
    .pd-loc-accordion .accordion-body {
      padding: 0 0 20px 0;
      background: #fff;
    }

    /* Schools active panel */
    .pd-loc-list-box {
      background: #0F3BA5;
      border-radius: 0px;
      padding: 30px 40px;
    }
    .pd-loc-list-item {
      display: flex;
      justify-content: space-between;
      align-items: center;
      padding: 10px 0;
    }
    .pd-loc-list-item:last-child { border-bottom: none; }
    .pd-loc-list-item__name {
      font-family:var(--font-inter);
      font-size: 16px;
      color: #fff;
      display: flex;
      align-items: center;
      gap: 10px;
    }
    .pd-loc-list-item__name::before {
      content: '';
      width: 10px;
      height: 10px;

      background: url(../assets/images/Vector-arrow.svg);
          background-repeat: no-repeat;
    background-position: 0 0;
      flex-shrink: 0;
    }
    .pd-loc-list-item__time {
      font-family: 'Inter', sans-serif;
      font-size: 13px;
      font-weight: 600;
      color: #fff;
      white-space: nowrap;
    }

    /* Map placeholder */
    .pd-map-placeholder {
      width: 100%;
      height: 350px;
      background: #E5E7EB;
      border-radius: 10px;
      display: flex;
      align-items: center;
      justify-content: center;
      margin-top: 60px;
      overflow: hidden;
      position: relative;
    }
    .pd-map-placeholder iframe {
      width: 100%;
      height: 100%;
      border: none;
    }

    /* =====================================================
       EXPLORE MORE PROJECTS
    ===================================================== */
    .pd-explore-section {
      padding: 60px 0;
      background: none;
      margin-bottom: 3rem;
      position: relative;
 
    }
    .pd-explore-title {
      font-family: 'PT Serif', Georgia, serif;
      font-size: 40px;
      font-weight: 400;
      color: #000;
      margin-bottom: 40px;
    }
    .pd-explore-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 20px;
    }
    .pd-explore-card {
      border-radius: 12px;
      overflow: hidden;
      background: #fff;
     
      transition: box-shadow 250ms ease, transform 250ms ease;
    }
   
    .pd-explore-card img {
      width: 100%;
   
      object-fit: cover;
      transition: transform 400ms ease;
    
    }
    .extra-height img{height: 280px;}
    .pd-explore-card:hover img { transform: scale(1.05); }
    .pd-explore-card__body {
      padding: 14px 16px;
    }
    .pd-explore-card__title {
      font-family: 'Inter', sans-serif;
      font-size: 18px;
      font-weight: 400;
      color: #000;
      margin-bottom: 4px;
    }
    .pd-explore-card__loc {
      font-family:var(--font-inter);
      font-size: 12px;
      color: #000;
      display: flex;
      align-items: center;
      gap: 4px;
    }
    .hero-banner{margin-top: 40px;}
    .hero-banner img{border-radius: 20px;}


.form-group{
    margin-bottom:15px;
}

.sticky_enquiery label{
    display:block;
    margin-bottom:6px;
    font-size:16px;
    font-weight:400;
      font-family:var(--font-inter);
      margin-top: 0px; margin-bottom: 4px;
}

.sticky_enquiery label span{
    color:red;
}

.form-control{
    width:100%;
}

.pd-explore-section:before{    content: "";
    border-top: 2px solid #000;
    width: 90%;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translate(-50%);}
    /* =====================================================
       RESPONSIVE
    ===================================================== */
    @media (max-width: 991.98px) {
      .pd-layout { grid-template-columns: 1fr; gap: 32px; }
      .pd-sidebar { position: static; width: 100%; border: none; padding-right: 0;}
      .pd-hero__banner { height:auto; }
      .pd-plans-grid { grid-template-columns: repeat(2, 1fr); }
      .pd-specs-grid { grid-template-columns: repeat(2, 1fr); }
      .pd-gallery-grid { grid-template-columns: repeat(2, 1fr); }
      .pd-plans-full-grid { grid-template-columns: repeat(2, 1fr); }
      .pd-explore-grid { grid-template-columns: repeat(2, 1fr); }
      .show-header, .fixed-top { display: block; top: 0; width: 100%; border-radius: 0; }
      .pd-enquiry-box .form-control{width: 100%;}
      .pd-overview__lead{font-size: 24px;}
    }
    @media (max-width: 767.98px) {
      .pd-specs-grid { grid-template-columns: 1fr; }
      .pd-gallery-grid { grid-template-columns: 1fr; }
      .pd-plans-full-grid { grid-template-columns: 1fr; }
      .pd-explore-grid { grid-template-columns: 1fr; }
      .pd-plans-grid { grid-template-columns: 1fr; }
      .pd-section-subtitle, .pd-section-title, .pd-explore-title{font-size: 24px;}
      .pd-spec-item{width: 100%;}
      .pd-spec-item__title, .pd-plan{font-size: 16px;}
      .pd-spec-item__desc{margin-bottom: 0;}
      .pd-location-section, .pd-specs-section{padding: 30px 0;}
      .pd-explore-section{padding: 0 0 30px; margin-bottom: 1rem;}
      .pd-gallery-section{padding: 0px 0 40px;}
      .pd-layout{padding-top: 40px;}
    }
    /*End Project detail*/

   
.gallery-wrapper{  overflow: auto;}
  .pd-gallery-scroll{    display: flex;
    width: 1660px; gap:30px
}

.pd-gallery-slider .slick-list{
    overflow-x: auto !important;
    overflow-y: hidden;
    padding-bottom: 10px;
}

.pd-gallery-slider .slick-list::-webkit-scrollbar{
    height: 8px;
}

.pd-gallery-slider .slick-list::-webkit-scrollbar-thumb{
    background: #999;
    border-radius: 10px;
}
.pd-gallery-slider img{width: 100%; height: 315px; object-fit: cover;}
.pd-gallery-slider .slick-slide{
    width: 400px !important;
    margin-right: 20px;
    min-width: 400px;
    max-width: 400px;
}

.according_manuavl .accordion-button{font-family: var(--font-inter); font-size: 18px; color: #000;}

.layout-popup{
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,.9);
    display: none;
    justify-content: center;
    align-items: center;
    z-index: 99999;
}

.layout-popup-content{
    width: 90%;
    max-width: 1200px;
    position: relative;
    perspective: 1500px;
}

.layout-popup-content img{
    width:70%;
    display: block;
    transition: transform .15s ease;
    transform-style: preserve-3d;
    margin: auto;
}

.close-layout{
    position: absolute;
    right: -10px;
    top: -50px;
    color: #fff;
    font-size: 40px;
    cursor: pointer;
    z-index: 2;
}
@media (max-width:991px){

    .navbar-collapse{
        position: fixed;
        top: 0;
        left: -100%;
        width: 280px;
        height: 100vh;
        background: #fff;
        padding: 90px 25px 25px;
        z-index: 9999;
        transition: all 0.1s ease;
        overflow-y: auto;
        box-shadow: 5px 0 25px rgba(0,0,0,0.1);
    }

    .navbar-collapse.show{
        left: 0;
    }

    .navbar-nav{
        display: block;
    }

    .navbar-nav .nav-item{
        margin-bottom: 10px;
    }

    .navbar-nav .nav-link{
        display: block;
        padding: 12px 0 !important;
        border-bottom: 1px solid #eee;
    }

    .navbar-collapse .d-flex{
        flex-direction: column;
        align-items: flex-start !important;
        gap: 15px !important;
        margin-top: 25px;
    }

    .head_enq_btn{
        width: 100%;
        text-align: center;
    }
}
.mobile-menu-overlay{
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.5);
    opacity: 0;
    visibility: hidden;
    transition: 0.3s;
    z-index: 9;
    width: 100%;
    height: 100vh;
}

.mobile-menu-overlay.show{
    opacity: 1;
    visibility: visible;
}

/*Contact Us*/
 /* ── Contact Page Specific Styles ── */

    /* Page heading */
    .vsr-contact-hero {
      padding-top: 160px;
      padding-bottom: 20px;
    
    }
    .vsr-contact-hero h1 {
     font-size: 60px;
       font-family:  'PT Serif', Georgia, serif;
      font-size: clamp(24px, 5vw, 60px);
      font-weight: 400;
      color: #000;
    }

    /* Section divider row */
    .vsr-contact-section {
      border-bottom: 1px solid #000;
      padding: 48px 0;
    }
     .vsr-contact-section:first-child {border-top: 1px solid #000;}
    .vsr-contact-section:last-child {
      border-bottom: 2px solid #000; 
      padding-bottom: 6rem;
    }

    /* Left label */
    .vsr-contact-label {
      font-family: var(--font-inter);
      font-size:16px;
      font-weight: 500;
      color: #000;
      display: flex;
      align-items: flex-start;
      gap: 8px;
      padding-top: 4px;
    }
    .vsr-contact-label::before {
      content: '•';
      color: #1A1A1A;
      font-size: 1rem;
      line-height: 1.4;
    }

    /* Form */
    .vsr-form .form-control {
      border: none;
      border-bottom: 1.5px solid #626262;
      border-radius: 0;
      padding: 10px 0;
      font-family: 'Inter', sans-serif;
      font-size: 0.9rem;
      color: #1A1A1A;
      background: transparent;
      box-shadow: none;
    }
    .vsr-form .form-control:focus {
      border-bottom-color: #1A1A1A;
      background: transparent;
      box-shadow: none;
    }
    .vsr-form .form-control::placeholder {
      color: #AAAAAA;
    }
    .vsr-form textarea.form-control {
      resize: none;
      min-height: 80px;
    }
    .vsr-form label.enq_lab {
      font-family: 'Inter', sans-serif;
      font-size: 0.78rem;
      font-weight: 500;
      color: #888;
      margin-bottom: 4px;
      display: block;
    }

    /* Send button — matches vsr-btn--primary from brand */
    .vsr-btn--contact-submit {
      background: #0F3BA5;
      color: #fff;
      border: none;
      border-radius: 6px;
      font-family: var(--font-inter);
      font-weight: 600;
      font-size: 0.9rem;
      padding: 10px 18px;
      transition: background 0.2s;
      cursor: pointer;
      height: 41px;
      margin-top: 30px;
      border-radius: 30px;
    }
    .vsr-btn--contact-submit:hover {
      background: #0F3BA5;
      color: #fff;
    }

    /* Location block */
    .vsr-location-title {
      font-family: var(--font-inter);
      font-size:16px;
      font-weight: 600;
      color: #000;
      margin-bottom: 10px;
    }
    .vsr-location-address {
        font-family: var(--font-inter);
      font-size:16px;
      color: #000;
      line-height: 1.5;
      font-weight: 600;
    }
    .vsr-location-address span{display: block;}
    .project_run{
    display: inline-block;
    margin-left: auto;
        border: 1px solid #C0C0C0;
    padding: 1px 5px;
    font-size: 12px;
    background: #fff;
    text-transform: uppercase;
    font-weight: 500;
    border-radius: 5px;
}
.solid-out .project_run{  border: 1px solid #FF4242; color: #FF4242;}
.parent-ongoing{
    display: flex;
    margin-top: -40px;
}
    .vsr-maps-btn {
      display: inline-block;
      border: 1.5px solid #595959;
      border-radius: 24px;
      padding: 8px 22px;
      font-family:var(--font-inter);
      font-size: 16px;
      font-weight: 500;
      color: #242424;
      text-decoration: none;
      transition: border-color 0.2s, background 0.2s;
      white-space: nowrap;
    }
    .vsr-maps-btn:hover {
      background: #0F3BA5;
      border-color: #1A3C6E;
      color: #fff;
    }

    /* Details / contact info */
    .vsr-detail-heading {
           font-family:var(--font-inter);
      font-size:16px;
      font-weight: 400;
      color: #000;
      margin-bottom: 12px;
    }
    .vsr-detail-link {
      font-family: var(--font-inter);
      font-size: 16px;
      color: #000;
      text-decoration: none;
      display: block;
      line-height: 1.5;
      transition: color 0.2s;
    }
    .vsr-detail-link:hover { color: #1A3C6E; }

    /* Social icons in details */
    .vsr-social-row {
      display: flex;
      gap: 10px;
      margin-top: 8px;
    }
    .vsr-social-round {
      width: 36px;
      height: 36px;
      border: 1.5px solid #CCCCCC;
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      color: #444;
      font-size: 1rem;
      text-decoration: none;
      transition: border-color 0.2s, color 0.2s;
    }
    .vsr-social-round:hover {
      border-color: #1A3C6E;
      color: #1A3C6E;
    }

    /* ── Navbar / Footer — copied exact class logic from index.html ── */
    /* These rely on vsr-custom.css; styles below are safety overrides only */
    .vsr-navbar { background: #fff; }
    
.contactus_page_enq .form-group{
    position: relative;
    margin-bottom: 0px;
}

.contactus_page_enq .form-group .form-control{
    width: 100%;
    height: 60px;
  color: #000;
    border-radius: 0;
    padding: 20px 15px 8px;
    font-size: 16px;
   
}

.contactus_page_enq .form-group textarea.form-control{
    height: 120px;
    resize: none;
}

.contactus_page_enq .form-group label{
    position: absolute;
    left: 0px;
    top: 18px;
    background: none;
    padding: 0 5px;
    color: #000;
    font-size: 16px;
    transition: all 0.3s ease;
    pointer-events: none;
}

/* Move label to top when focus or value exists */
.contactus_page_enq .form-group .form-control:focus + label,
.contactus_page_enq .form-group .form-control:not(:placeholder-shown) + label{
    top: -10px;
    left: 0px;
    font-size: 12px;
    color: #000;
}
.form-control.is-invalid{
    border-color: #dc3545;
}

.invalid-feedback{
    display: none;
    font-size: 13px;
}

.form-control.is-invalid ~ .invalid-feedback,
textarea.is-invalid ~ .invalid-feedback{
    display: block;
}
@media (max-width:767px){
  .vsr-contact-hero{padding-top: 100px;}
  .vsr-contact-section:last-child{padding-bottom: 3rem;}
  .proj-row-card__badge{top: 24px;}
}
/*End Contact */
.bg-none{background: none !important;}




.pd-plan-thumb{
    cursor:pointer;
    transition:.4s;
}

.pd-plan-thumb:hover{
    transform:translateY(-10px) scale(1.03);
}

/* Popup */

.floor-popup{
    position:fixed;
    inset:0;
    background:rgba(0,0,0,.85);
    display:none;
    justify-content:center;
    align-items:center;
    z-index:99999;
    backdrop-filter:blur(5px);
}

.floor-popup-content{
    width:90%;
    max-width:1100px;
    position:relative;
    perspective:1500px;
    animation:popupZoom .5s ease;
}

.floor-image-wrap{
    overflow:hidden;
    border-radius:20px;
}

.floor-popup-content img{
    width:70%;
    display:block;
    transform-style:preserve-3d;
    transition:transform .15s linear;
}

.floor-close{
    position:absolute;
    top:-50px;
    right:0;
    color:#fff;
    font-size:40px;
    cursor:pointer;
}
/* .rotate90{  transform: rotate(90deg);} */
.rotate90 img{width:100%; height: 100%;     object-fit: contain;}
.shinelight_layout img{width: 50%;}
.fs-20{font-size: 20px;}

@keyframes popupZoom{

    from{
        opacity:0;
        transform:scale(.7);
    }

    to{
        opacity:1;
        transform:scale(1);
    }

}


 .vsr-footer .gap-2 img{width: 60%;}


@media (max-width: 480px) {
  .navbar-brand img {
    width: auto;
}
  .vsr-hero__heading, .vsr-hero__heading em, .vsr-why__heading{font-size: 24px;}
  .vsr-hero__heading em{display: block;}
  .vsr-hero__heading br{display: none;}
  .vsr-hero .row{height: auto;}
  .vsr-hero__subtext{font-size: 12px; line-height: 1.45;}
  .vsr-btn--hero{margin-top: 10% !important;}
  .vsr-about__text{font-size: 18px;}
      .vsr-stat__number {  font-size: 32px;  }
      .vsr-stat__label{margin-top: 0.5rem;  margin-bottom: 1rem;}
      .vsr-stat__number.vsr-stat__number--sm{font-size: 22px;}
      .expsr{width: 530px;}
      .vsr-viewall{margin-top: 10px;}
      .eogp{font-size: 24px;}
      .vsr-card__title{font-size: 16px;}
      .vcb{padding-top: 1.3rem;}
      .vsr-card__location{margin-top: 0.5rem;}
      .vsr-eyebrow--light, .vsr-feature__text{font-size: 12px;}
      .vsr-feature__title, .vsr-btn--cta{font-size: 16px;}
      .vsr-feature__icon{min-width: 32px; height: 32px; margin-top: 20px; margin-right: 20px;}
      .vsr-feature{padding: 0;}
      .vsr-why__heading {margin-bottom: 2rem;}
      .m-wid{width: 500px; margin-bottom: 25px;}
      .completed-slider .vsr-card{margin-left: 20px;}
    .completed-slider .slick-active .vsr-card{margin-left: 0px;}
    .vsr-cta__heading{font-size: 32px;}
    .vsr-btn--cta{padding: 0.475rem 1.6rem;}

    /*Listing*/
    .page-hero__desc{font-size: 20px; max-width: 100%;}
    .projects-page {  padding: 10px 0 30px;}
    .section-label{margin-bottom: 2.5rem;}
    .proj-row-card__title{font-size: 18px;}
    .proj-row-card__desc{font-size: 12px; max-width: 100%;}
    .proj-row-card__title{margin-bottom: 14px;}
    .proj-meta__label{font-size: 12px;}
    .proj-meta__value, .across{font-size: 14px;}
    .proj-row-card__desc{margin-bottom: 30px;}
    .section-divider{margin: 20px 0;}

    /*Details*/
       .page-hero {   padding: 90px 0 40px; }
       .pd-meta-block__label, .over-detail, .pd-overview__body{font-size: 12px;}
       .pd-meta-block__value, .pd-meta-block__sub, .sticky_enquiery label, .pd-btn-enquire, .pd-plan-thumb__label, .pd-spec-item__title, .pd-plan{font-size: 14px;}
       .pd-meta-block {  margin-bottom: 18px;}
       .pd-enquiry-box{    padding: 40px 0 30px;}
       .pd-overview__lead, .pd-loc-list-item__name{font-size: 16px;}
       .pd-overview__body{line-height: 18px;}
       .pd-specs-section{padding: 0;}
       .pd-section-subtitle{margin-bottom: 2.4rem;}
       .pd-spec-item {display: flex; flex-direction: row; text-align: left;}
       .pd-spec-item__icon{min-width: 44px; margin-right: 10px; margin-top: 0px;}
       .pd-spec-item__title{margin-bottom: 10px;}
       .pd-specs-grid{    gap: 22px 40px;}
       .pd-section-subtitle, .pd-section-title, .pd-explore-title{font-size: 18px;}
       .pd-plans-section {  padding: 40px 0; }
       .pd-section-subtitle.pd-plan{font-size: 14px;}
       .pd-location-section .pd-plan{margin-bottom: 10px;}
      .pd-location-section   .pd-section-title{margin-bottom: 10px;}
      .according_manuavl .accordion-button{font-size: 16px;}
      .pd-loc-list-box{    padding: 20px 20px;}
      .pd-loc-list-item{padding: 5px 0;}
      .pd-loc-accordion .accordion-body{padding-bottom: 10px;}
      .pd-loc-accordion .accordion-button{padding: 10px 0;}
.pd-layout{padding-bottom: 30px;}
.pd-explore-title{margin-bottom: 25px;}
.pd-explore-grid  .slick-slide{margin-left: 10px;}
.pd-explore-grid  .slick-active{margin-left: 10px;}
.pd-enquiry-box .form-control{height: 40px;}
.sticky_enquiery label{    margin-top: 15px; margin-bottom: 6px;}
.pd-overview__lead{margin-bottom: 40px;}
.parent-ongoing, .hero-banner{margin-top: 20px;}

/*Contact us*/
.vsr-contact-section{padding: 30px 0;}
.vsr-contact-label, .contactus_page_enq .form-group .form-control{font-size: 14px;}

.contactus_page_enq .form-group .form-control:focus + label, .contactus_page_enq .form-group .form-control:not(:placeholder-shown) + label{top:0;}
.contactus_page_enq .form-group .form-control{padding: 15px 0px 5px;}
.contactus_page_enq .form-group textarea.form-control{height: 80px;}
.vsr-location-title, .vsr-location-address, .vsr-maps-btn, .vsr-detail-heading, .vsr-detail-link{font-size: 14px;}

/*Mobile Menu */
.navbar-nav{padding: 20px;}
.navbar-nav .nav-link{padding: 7px 0 !important;}
.head_enq_btn{display: none;}
.nav-link.vsr-nav-link.active{margin-bottom: 20px;}
.menu-icon{font-size: 30px;}
.close-icon{
    font-size:20px;
    color:#000;
}

.navbar-toggler{
    box-shadow:none !important;
}
.vsr-navbar__toggler{position: relative; z-index: 10;}
.vsr-navbar__toggler .close-icon{color: #fff;}
.collapsed .close-icon{display: none !important;}
.collapsed .menu-icon{display: block !important;}
.mobile-logo{position:relative; z-index: 10001;}
.navbar-nav{margin-top: 30px;}
.vsr-nav-link::after{bottom:-3px}

}
.nav-item{width: 70px; text-align: center;}
.nav-item.active .vsr-nav-link{color: #0F3BA5; font-weight: 600;}
.nav-item.active .vsr-nav-link::after{width: 100%;}
.about_page_hero{width: 960px; margin: auto; padding-bottom: 0;}
.about_page_hero .page-hero__desc{ font-family:'PT Serif', Georgia, serif; line-height: 40px; margin-bottom: 60px; max-width: 100%;}
.about_pera{margin: 50px 0;}
.about_pera p{font-size: 16px; font-family: var(--font-inter);}
.abt_btn{margin-top: 40px !important;     background-color: #0F3BA5; color: #fff !important;}
.abt_btn.vsr-btn--hero i{    background: #ffffff !important; color:#0F3BA5 ;}
 .abt_btn.vsr-btn--hero:hover i{ background: #0F3BA5 !important; color: #fff ;}
 .about_page_count .custom_client{width: 100%;}
 .about_page_count{width: 1000px; margin: auto; padding-bottom: 0;}
 .show-header.scrolled  #navbarMain{padding-top: 9px;}
@media (max-width: 991.98px) {
.about_page_hero, .about_page_count{width: 100%; padding-left: 1.5rem; padding-right: 1.5rem;}
  .nav-item{width: 100%; text-align: left;}
  .vsr-nav-link::after{    bottom: -5px;}
}

@media (max-width: 480px) {
  .about_page_hero .page-hero__desc{line-height: 30px;}
  .about_page_hero .page-hero__desc{margin-bottom: 40px;}
  .about_pera{margin: 40px 0 0;}
  .about_pera p{font-size: 14px;}
  .popup-content hr{margin: 10px 0;}
  .popup-content{padding: 20px;}
  .enquiry-popup .form-control{height: 40px;}
  .vsr-btn--primary{    padding: 0.4rem 0.85rem;}
}

#floorPopupImg {
  will-change: transform;
  transform-origin: center center;
  /* no CSS transition here — rAF is already driving every frame at 60fps */
}
#downloadBtnRow .vsr-btn {    display: inline;}
.coming_soon_relative{position: relative;}
.coming_soon_absolute{position: absolute; top: 50%; left: 50%;     z-index: 999;
    transform: translate(-50%, -50%); color: #fff !important; font-size:70px; width: 100%;}




