/* ==========================================
   RESPONSIVE FIXES FOR DISCLAIMER POPUP
   ========================================== */

/* Tablet (max-width: 1024px) */
@media (max-width: 1536px) {
  .disclaimer-content {
    width: 80%;
    padding: 30px 35px;
  }

  .disclaimer-content p {
    font-size: 14px;
    line-height: 1.6;
  }

  #agreeBtn {
    font-size: 16px;
    padding: 10px 22px;
  }
}

/* Mobile (max-width: 768px) */
@media (max-width: 768px) {
  .disclaimer-content {
    width: 80% !important;
    padding: 25px 25px !important;
    max-height: 55vh !important;
    overflow-y: auto !important;
  }

  .disclaimer-content h2 {
    font-size: 22px !important;
    margin-bottom: 12px !important;
  }

  .disclaimer-content p {
    font-size: 12px !important;
    line-height: 1.55 !important;
    margin-bottom: 10px !important;
  }

  #agreeBtn {
    width: 100% !important;
    font-size: 13px !important;
    position: sticky !important;
    display: block !important;
    max-width: 300px !important;
    margin: 16px auto 0 auto !important;
    padding: 8px 0 !important;
    text-align: center !important;
    border-radius: 4px !important;
    bottom: -18px !important;
    /* keeps it at last line */
  }
}



/* INDEX – NAVBAR – Laptop */

/* SMALL LAPTOP + TABLET MENU */
@media (max-width: 1280px) {

  /* overall menu box */
  .mobile-menu {
    width: 270px !important;
    padding: 14px 16px !important;
    top: 90px !important;
    right: 40px !important;
    left: auto !important;
    transform: none !important;
    border-radius: 10px !important;
  }

  /* each menu item */
  .mobile-menu ul li a {
    display: block;
    padding: 8px 14px !important;
    font-size: 15px !important;
  }

  /* reduce gap between items */
  .mobile-menu ul li {
    margin-bottom: 6px !important;
  }
}

/* LARGER LAPTOP – slightly wider */
@media (min-width: 1281px) and (max-width: 1536px) {

  /* CLOSED STATE (default) */
  .mobile-menu {
    width: 0 !important;
    padding: 0 !important;
    overflow: hidden;
    border: none !important;
  }

  /* OPEN STATE */
  .mobile-menu.open {
    width: 270px !important;
    padding: 16px 18px !important;
    top: 90px !important;
    right: 40px !important;
    left: auto !important;
    border-radius: 10px !important;
  }

  .mobile-menu.open ul li a {
    padding: 8px 14px !important;
    font-size: 15px !important;
  }

  .mobile-menu.open ul li {
    margin-bottom: 6px !important;
  }


}

/* LAPTOP HERO (max-width: 1280px) */
@media (max-width: 1280px) {
  .hero {
    height: 80vh !important;
    padding: 40px 6vw !important;
  }

  .hero-content {
    max-width: 520px !important;
  }

  .hero-content h1 {
    font-size: 2.2rem !important;
    line-height: 1.15 !important;
  }

  .hero-content p {
    font-size: 1.02rem !important;
    line-height: 1.6 !important;
    max-width: 460px !important;
  }
}

/* TABLET HERO (max-width: 992px) */
@media (max-width: 992px) {
  .hero {
    height: 70vh !important;
    padding: 32px 7vw !important;
    text-align: center !important;
  }

  .hero-inner {
    /* if you use a wrapper like .hero-inner/.hero-content adjust that */
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  .hero-content {
    max-width: 480px !important;
  }

  .hero-content h1 {
    font-size: 1.8rem !important;
    line-height: 1.2 !important;
    margin-bottom: 12px !important;
  }

  .hero-content p {
    font-size: 0.98rem !important;
    line-height: 1.6 !important;
    margin-bottom: 18px !important;
  }

  .hero-buttons .btn {
    padding: 10px 22px !important;
    font-size: 0.95rem !important;
  }
}


/* NAVBAR – Laptop */

@media (max-width: 1536px) {

  .navbar,
  .sticky-navbar {
    padding: 15px 120px !important;
  }
}

/* INDEX – NAVBAR – Tablet */
@media (max-width: 992px) {

  .navbar,
  .sticky-navbar {
    padding: 12px 40px !important;
  }
}

/* INDEX – NAVBAR – Mobile */
@media (max-width: 768px) {
  .mobile-menu {
    left: 0 !important;
    width: 100% !important;
    top: 70px !important;
  }

  .navbar img,
  .sticky-navbar img {
    width: 140px !important;
  }
}


/* INDEX – HERO – Laptop */
@media (max-width: 1280px) {
  .hero {
    height: 100vh !important;
  }

  .hero-content h1 {
    font-size: 2.2rem !important;
  }
}

/* INDEX – HERO – Tablet */
@media (max-width: 992px) {
  .hero {
    height: 100vh !important;
    padding: 20px !important;
  }

  .hero-content h1 {
    font-size: 1.9rem !important;
  }
}

/* INDEX – HERO – Mobile */
@media (min-width: 300px) and (max-width: 767px) {
  .hero {
    height: 100vh !important;
    background: url("mobile-hero-bg.png") center/cover no-repeat;
  }

  .hero-content h1 {

    font-size: 0.8rem !important;
  }

  .hero-content p {
    font-size: 0.6rem !important;
  }
}


/* INDEX – IMAGE + TEXT – Laptop */
@media (max-width: 1536px) {
  .section {
    gap: 30px !important;
  }
}

/* INDEX – IMAGE + TEXT – Tablet */
@media (max-width: 992px) {
  .section {
    grid-template-columns: 1fr !important;
    margin-bottom: 40px !important;
  }

  .text-side {
    margin-left: 0 !important;
  }
}

/* INDEX – IMAGE + TEXT – Mobile */
@media (max-width: 600px) {
  .image-side {
    height: 300px !important;
  }

  .text-side {
    padding: 25px !important;
    text-align: center !important;
  }
}




/* LAPTOP: smaller text card, more over image */
@media (max-width: 1536px) {
  .section {
    grid-template-columns: 60% 40%;
    min-height: 72vh;
    margin: 60px auto;
    padding: 30px;
    max-width: 1300px;
  }

  .image-side img {
    height: 60vh;
    transform: scale(1.03);
  }

  .text-side {
    max-width: 420px;
    padding: 32px 26px;
    margin-left: -80px;
    /* pushes card over image */
    border-radius: 14px;
  }

  .text-side h2 {
    font-size: 22px;
    margin-bottom: 10px;
  }

  .text-side p {
    font-size: 0.9rem;
    line-height: 1.55;
  }

  .about-aklogo {
    font-size: 17px !important;
    gap: 6px !important;
  }

  .about-aklogo .project-logo {
    height: 34px !important;
    width: 80px !important;
  }
}

/* TABLET: smaller card + image, still side by side */
@media (max-width: 992px) and (min-width: 768px) {
  .section {
    grid-template-columns: 50% 50%;
    margin: 30px auto;
    padding: 16px;
    max-width: 960px;
    min-height: 60vh;
  }

  .image-side {
    height: auto;
  }

  .image-side img {
    height: 40vh;
    transform: scale(1.01);
  }

  .text-side {
    width: 100%;
    max-width: 720px;
    padding: 22px 18px;
    margin-left: -32px;
    /* slight overlap */
    border-radius: 10px;
  }

  .text-side h2 {
    font-size: 19px;
    margin-bottom: 8px;
  }

  .text-side p {
    font-size: 0.82rem;
    line-height: 1.45;
    margin-bottom: 10px;
  }

  .about-aklogo {
    font-size: 15px !important;
    gap: 5px !important;
  }

  .about-aklogo .project-logo {
    height: 28px !important;
    width: 68px !important;
  }

  .read-more {
    font-size: 0.82rem;
  }
}

/* SMALL MOBILE: keep stacked */
/* Mobile: 300px – 767px */
@media (min-width: 300px) and (max-width: 767px) {

  /* Wrapper */
  .section {
    grid-template-columns: 1fr !important;
    margin: 30px 15px !important;
    padding: 0 !important;
    border-radius: 10px !important;
  }

  /* Image: full width but smaller height */
  .image-side {
    height: 300px !important;
    border-radius: 20px !important;
  }

  .image-side img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    transform: scale(1) !important;
    /* remove extra zoom */
  }

  .image-side::after {
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.3), transparent) !important;
  }

  /* Text card smaller */
  .text-side {
    margin: 0 !important;
    padding: 20px 16px !important;
    border-radius: 0 0 10px 10px !important;
    box-shadow: none !important;
  }

  .text-side h2 {
    font-size: 18px !important;
    margin-bottom: 10px !important;
  }

  .text-side p {
    font-size: 13px !important;
    line-height: 1.5 !important;
    margin-bottom: 12px !important;
  }

  /* About logo row smaller */
  .about-aklogo {
    gap: 6px !important;
    font-size: 16px !important;
  }

  .about-aklogo .project-logo {
    width: 80px !important;
    height: 40px !important;
  }

  .read-more {
    font-size: 13px !important;
  }
}




/* INDEX – MAP – Laptop */
@media (max-width: 1536px) {
  .map-box {
    width: 100% !important;
    right: 0 !important;
  }
}

/* INDEX – MAP – Tablet */
@media (max-width: 992px) {
  .location-map {
    padding: 30px !important;
  }

  .map-box {
    width: 100% !important;
    height: auto;
    right: 0 !important;
  }
}

/* INDEX – MAP – Mobile */
@media (min-width: 300px) and (max-width: 767px) {

  .location-map {
    text-align: center !important;
    margin-top: 40px;
  }

  .location-map .section-title,
  .location-map .section-subtitle {
    text-align: center !important;
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .map-box {

    width: 100% !important;
    height: 250px !important;
  }

}

/* WHO WE ARE – Laptop */
@media (max-width: 1536px) {
  .who-we-are {
    padding: 60px 6% !important;
  }

  .who-stats {
    gap: 50px !important;
  }

  .who-content h1 {
    font-size: 1.7rem !important;
  }

  .who-content h6 {
    font-size: 1rem !important;
    margin-left: 5px !important;
  }



  .logo-inline img {
    height: 50px !important;
  }


  /* Stats row compact */
  .who-stats {
    justify-content: center !important;
    gap: 20px !important;
    margin-top: 20px !important;
  }

  .who-stats .stat-box h2 {
    font-size: 4.3rem !important;
    margin-top: 20px !important;
  }

  .who-stats .stat-box .plus {
    font-size: 3rem !important;
    top: -20px !important;
    left: 1px !important;
  }

  .who-stats .stat-box p {
    font-size: 1.1rem !important;
    margin-top: 10px !important;
    left: 1px !important;
  }
}

/* WHO WE ARE – Tablet */
@media(min-width: 768px) and (max-width: 1024px) {
  .who-content h1 {
    font-size: 1.5rem !important;
  }

  .who-content h6 {
    font-size: 0.9rem !important;
    margin-left: 10px !important;
  }



  .logo-inline img {
    height: 45px !important;
  }

  /* Stats row compact */
  .who-stats {
    justify-content: center !important;
    gap: 20px !important;
    margin-top: 20px !important;
  }

  .who-stats .stat-box h2 {
    font-size: 3.3rem !important;
    margin-top: 20px !important;
  }

  .who-stats .stat-box .plus {
    font-size: 2rem !important;
    top: -10px !important;
    left: 1px !important;
  }

  .who-stats .stat-box p {
    font-size: 1rem !important;
    margin-top: 10px !important;
    left: 3px !important;
  }
}



/* WHO WE ARE – Mobile */
@media (min-width: 300px) and (max-width: 767px) {

  .who-we-are {
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    padding: 30px 15px !important;
    margin-top: -40px !important;
    gap: 20px !important;
  }

  .who-content {
    min-width: 0 !important;
  }

  /* Subtitle + underline */
  .section-subtitle {
    font-size: 8px !important;
    letter-spacing: 1.3px !important;
    margin-bottom: 8px !important;
  }

  .who-content .underline {
    width: 80px !important;
    height: 2px !important;
    margin: -2px auto 0 !important;
  }

  /* Heading + inline logo smaller */
  .who-content h1 {
    font-size: 1.1rem !important;
    line-height: 1.4 !important;
    margin-top: 15px !important;
  }

  .logo-inline img {
    height: 32px !important;
    margin: 0 6px 4px !important;
  }

  /* Stats row compact */
  .who-stats {
    justify-content: center !important;
    gap: 20px !important;
    margin-top: 20px !important;
  }

  .who-stats .stat-box h2 {
    font-size: 2.3rem !important;
    margin-top: 20px !important;
  }

  .who-stats .stat-box .plus {
    font-size: 1.5rem !important;
    top: -10px !important;
    left: 1px !important;
  }

  .who-stats .stat-box p {
    font-size: 0.8rem !important;
    margin-top: 10px !important;
    left: 3px !important;
  }
}



@media (max-width: 900px) {
  .who-we-are {
    margin-top: 20px !important;
    /* remove large negative margin */
    padding: 40px 16px !important;
    display: flex !important;
    flex-direction: column !important;
    /* stack columns vertically */
    align-items: center !important;
  }

  .who-content,
  .who-stats {
    width: 100% !important;
    max-width: none !important;
  }
}

/*Brand / vertical blocks responsiveness*/

@media (max-width: 768px) {
  .verticals-section {
    display: flex !important;
    flex-direction: column !important;
    gap: 24px !important;
    padding: 0 16px !important;
  }

  .vertical-card {
    width: 100% !important;
    max-width: none !important;
  }
}


/*General fixes for horizontal overflow prevention*/

*,
*::before,
*::after {
  box-sizing: border-box;
}

@media (max-width: 768px) {

  body,
  html {
    overflow-x: hidden !important;
  }

  .container,
  section,
  .main-wrapper {
    padding-left: 16px !important;
    padding-right: 16px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}


/* ENVIRONMENTAL CARE — Laptop */
@media (max-width: 1536px) {
  .split-right {
    padding: 50px 40px !important;
  }

  .inner {
    max-width: 520px !important;
  }

  h1 {
    font-size: 30px !important;
  }
}

/* ENVIRONMENTAL CARE — Tablet */
/* LAPTOP: shrink image, text, logo */
@media (max-width: 992px) {
  .page-wrap {
    width: 100%;
    margin: 40px auto;
    padding: 0 20px;
    max-width: 1200px;
  }

  .split-hero {
    grid-template-columns: 1.2fr 1fr;
    min-height: 600px;
  }

  .split-left {
    margin-top: 35px;
    max-height: 700px;
  }

  .hero-image {
    height: 100%;
  }

  .split-right {
    padding: 40px 32px;
  }

  .inner {
    max-width: 200px;
  }



  .inner p {
    font-size: 13px;
    line-height: 1.8;
  }

  .split-right h1 {
    font-size: 17px;
    letter-spacing: 1.2px;
    margin-bottom: 14px;
  }



  .logo-below-text {
    margin-top: 5px;
    display: flex;
    justify-content: center;
    align-items: center;
  }

  .logo-below-text img {
    width: 100px;
    height: 140px;
    border: 2px solid #ddd;
    border-radius: 8px;


  }
}

/* TABLET: even smaller but still full section visible */
@media (max-width: 992px) and (min-width: 601px) {
  .page-wrap {
    width: 100%;
    margin: 30px auto;
    padding: 0 16px;
    max-width: 960px;
  }

  .split-hero {
    grid-template-columns: 1.2fr 1fr;
    min-height: 600px;
  }

  .split-left {
    margin-top: 45px;
    max-height: 750px;
  }

  .hero-image {
    height: 100%;
  }

  .split-right {
    padding: 40px 32px;
  }

  .inner {
    max-width: 300px;
  }

  .split-right h1 {
    font-size: 16px;
    letter-spacing: 1px;
    margin-bottom: 10px;
  }

  .lead {
    font-size: 12px;
    line-height: 1.3;
  }

  .logo-below-text {
    margin-top: 5px;
    display: flex;
    justify-content: center;
    align-items: center;
  }

  .logo-below-text img {
    width: 80px;
    height: 100px;
    border: 2px solid #ddd;
    border-radius: 8px;


  }

  .eyeline {
    width: 140px;
    height: 2px;
    margin-bottom: 12px;
  }
}

/* MOBILE: keep your existing stacking behaviour below 600px */

/* ENVIRONMENTAL CARE — Mobile */
@media (max-width: 600px) {

  .page-wrap {
    width: 100% !important;
    margin: 0 !important;
  }

  .split-hero {
    grid-template-columns: 1fr !important;
  }

  .split-left {
    height: 260px !important;
  }

  .shot-label {
    font-size: 10px !important;
    padding: 4px 6px !important;
  }

  .split-right {
    padding: 25px 15px !important;
  }

  h1 {
    font-size: 20px !important;
    letter-spacing: 1px !important;
  }

  .lead {
    font-size: 13px !important;
    text-align: center !important;
  }

  .logo-below-text {
    margin-top: 30px !important;
  }

  .logo-below-text img {
    width: 75px !important;
    height: 105px !important;
    padding: 8px !important;
  }

  .below {
    padding: 14px !important;
  }

  .left-note li {
    font-size: 13px !important;
    line-height: 1.4 !important;
  }
}

/* Featured Projects */
/* LAPTOP: 1025–1280px */
@media (min-width: 1025px) and (max-width: 1536px) {
  .projects-top-bar {
    max-width: 1200px !important;
    margin: 40px auto 26px auto !important;
    padding: 0 28px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 20px !important;
  }

  .projects-top-bar .left-text {
    max-width: 80% !important;
  }

  .projects-top-bar .sub-heading {
    font-size: 0.78rem !important;
    letter-spacing: 0.18em !important;
    margin-bottom: 6px !important;
    text-align: left !important;
  }

  .projects-top-bar .main-heading {
    font-size: 1.7rem !important;
    line-height: 1.2 !important;
    margin: 0 !important;
    text-align: left !important;
  }

  .projects-top-bar .view-btn {
    padding: 8px 20px !important;
    font-size: 0.9rem !important;
    white-space: nowrap !important;
  }
}

/* TABLET: 768–1024px */

/* TABLET 768–1024px – FINAL FIX */
/* TABLET 768–1024px */
@media (min-width: 768px) and (max-width: 1024px) {
  .projects-top-bar {
    max-width: 960px !important;
    margin: 32px auto 24px auto !important;
    padding: 0 24px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
    text-align: left !important;
  }

  .projects-top-bar .left-text {
    flex: 1 1 auto !important;
  }

  .projects-top-bar .sub-heading {
    font-size: 0.78rem !important;
    letter-spacing: 0.16em !important;
    margin: 0 0 4px 0 !important;
    display: block !important;
    text-align: left !important;
  }

  .projects-top-bar .main-heading {
    font-size: 1.4rem !important;
    line-height: 1.25 !important;
    margin: 0 !important;
    display: block !important;
    text-align: left;
  }

  .projects-top-bar .view-btn {
    flex: 0 0 auto !important;
    align-self: center !important;
    margin-top: 0 !important;
    margin-left: 18px !important;
    padding: 7px 18px !important;
    font-size: 0.9rem !important;
    white-space: nowrap !important;
  }
}


/* Featured Projects card */
@media (min-width: 1025px) and (max-width: 1536px) {

  .cinema-grid {
    max-width: 1050px !important;
    margin: 40px auto 60px auto !important;
    /* centered, less side space */
    padding: 0 20px !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 24px 28px !important;
  }

  .cinema-card {
    width: 100% !important;
    height: 330px !important;
    /* smaller height */
    border-radius: 20px !important;
    background-size: cover !important;
    background-position: center !important;
    box-shadow: 0 14px 30px rgba(0, 0, 0, 0.14) !important;
  }

  /* 3rd card: centered on second row */
  .cinema-card:nth-child(3) {
    grid-column: 1 / -1 !important;
    max-width: 480px !important;
    justify-self: center !important;
  }

  .cinema-glass {
    padding: 10px 16px !important;
  }

  .cinema-glass .project-heading {
    font-size: 14px !important;
    gap: 6px !important;
  }

  .cinema-glass .project-logo {
    height: 26px !important;
    width: 76px !important;
    /* smaller logos */
  }

  .launch-tag,
  .launched-tag,
  .gall-launch-tag {
    font-size: 11px !important;
    padding: 3px 10px !important;
  }
}


/* TABLET 768–1024px: 2 cards top, 1 centered bottom */
@media (min-width: 768px) and (max-width: 1024px) {

  .cinema-grid {
    max-width: 1050px !important;
    margin: 40px auto 60px auto !important;
    /* centered, less side space */
    padding: 0 20px !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 24px 28px !important;
  }

  .cinema-card {
    width: 100% !important;
    height: 300px !important;
    /* smaller height */
    border-radius: 20px !important;
    background-size: cover !important;
    background-position: center !important;
    box-shadow: 0 14px 30px rgba(0, 0, 0, 0.14) !important;
  }

  /* 3rd card: centered on second row */
  .cinema-card:nth-child(3) {
    grid-column: 1 / -1 !important;
    max-width: 380px !important;
    justify-self: center !important;
  }

  .cinema-glass {
    padding: 10px 16px !important;
  }

  .cinema-glass .project-heading {
    font-size: 14px !important;
    gap: 6px !important;
  }

  .cinema-glass .project-logo {
    height: 26px !important;
    width: 76px !important;
    /* smaller logos */
  }

  .launch-tag,
  .launched-tag,
  .gall-launch-tag {
    font-size: 11px !important;
    padding: 3px 10px !important;
  }
}



/* FEATURED PROJECTS — Mobile */
@media (min-width: 300px) and (max-width: 767px) {

  /* Top bar */
  .projects-top-bar {
    width: 100% !important;
    margin: 40px auto 10px auto !important;
    padding: 10px 15px !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 8px !important;
  }

  .projects-top-bar .left-text {
    width: 100% !important;
  }

  .sub-heading {
    font-size: 12px !important;
    margin: 0 0 4px 0 !important;
  }

  .main-heading {
    font-size: 18px !important;
    line-height: 1.3 !important;
    margin: 0 0 6px 0 !important;
  }

  .left-text .underline {
    width: 100px !important;
    height: 2px !important;
    margin: 4px 0 0 0 !important;
  }

  .view-btn {
    font-size: 12px !important;
    align-self: center !important;
  }

  /* Cinema cards grid */
  .lux-section {
    padding: 0 15px 30px 15px !important;
    display: flex !important;
    justify-content: center !important;
  }

  .cinema-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 15px !important;
    width: 100% !important;
    margin: 0 auto !important;
    /* center grid block */

  }

  .cinema-card {
    height: 200px !important;
    /* smaller card height */
    background-size: cover !important;
    background-position: center !important;
    border-radius: 10px !important;
  }

  /* Glass content inside card */
  .cinema-glass {
    padding: 10px 10px !important;
  }

  .cinema-glass .project-heading {
    gap: 4px !important;
    font-size: 13px !important;
  }

  .cinema-glass .project-logo {
    width: 70px !important;
    height: 28px !important;
  }

  .launched-tag,
  .launch-tag,
  .gall-launch-tag {
    font-size: 10px !important;
    padding: 3px 6px !important;
  }
}


/* project count */
/* ========= LAPTOP (≤1280px) ========== */
@media (max-width: 1536px) {
  .stats-section {
    width: 100% !important;
    gap: 60px !important;
    padding: 60px 10vw !important;
  }

  .stats-section .stat-box {
    width: 100% !important;
    padding: 30px 24px !important;
    max-width: 300px !important;
    border-radius: 7px !important;
  }

  .stats-section .stat-box h2 {
    font-size: 3.2rem !important;
  }

  .stats-section .stat-box p {
    font-size: 0.9rem !important;
  }
}

/* ========= TABLET (≤992px) ========== */
@media (min-width: 768px) and (max-width: 1024px) {
  .stats-section {
    width: 100% !important;
    gap: 20px !important;
    padding: 34px 4vw !important;
    flex-wrap: wrap !important;
  }

  .stats-section .stat-box {
    width: 100% !important;
    max-width: 170px !important;
    padding: 20px 8px !important;
    border-radius: 9px !important;
  }

  .stats-section .stat-box h2 {
    font-size: 2.5rem !important;
  }

  .stats-section .stat-box p {
    font-size: 0.8rem !important;
  }
}

/* ========= MOBILE (768px) ========== */
/* ----------- MOBILE RESPONSIVE FIX (≤768px) ----------- */
@media (min-width: 300px) and (max-width: 767px) {

  .stats-section {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    /* 2 per row */
    gap: 12px !important;
    padding: 20px 15px !important;
    text-align: center !important;
  }

  .stats-section .stat-box {
    padding: 10px 6px !important;
    border-radius: 8px !important;
  }

  .stats-section .stat-box h2 {
    font-size: 1.6rem !important;
    /* smaller number */
    margin: 0 0 6px 0 !important;
  }

  .stats-section .stat-box p {
    font-size: 0.8rem !important;
    line-height: 1.3 !important;
    padding: 0 4px !important;
    word-break: break-word !important;
  }
}



/*project*/

@media (max-width: 767px) {
  .cinema-card {
    position: relative !important;
    width: 100% !important;
    max-width: 370px !important;
    margin: 0 auto 18px auto !important;
    overflow: hidden !important;
    border-radius: 18px !important;
    display: flex;
    flex-direction: column;
    background: #fff;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.09);
  }

  .card-image-container {
    position: relative;
    width: 100%;
    height: 150px;
  }

  .card-image-container img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
  }

  .card-bottom {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    min-height: 66px;
    background: linear-gradient(0deg, rgba(0, 0, 0, .34) 80%, transparent 100%);
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 11px;
    padding: 10px 16px;
    border-bottom-left-radius: 18px;
    border-bottom-right-radius: 18px;
  }

  .card-logo {
    width: 38px !important;
    /* optimal for two logos */
    height: auto;
    display: inline-block;
    vertical-align: middle;
  }

  .card-title,
  .card-subtitle,
  .card-divider {
    color: #fff;
    font-size: 1.07rem !important;
    font-family: 'Montserrat', sans-serif;
    font-weight: 600;
    vertical-align: middle;
  }

  .card-divider {
    font-size: 1.32rem !important;
    margin: 0 7px;
  }
}

/* INDEX - OUR SERVICES — Laptop refined */
@media (max-width: 1536px) {
  .service-section {
    gap: 36px !important;
    /* more space between cards */
    padding: 40px 40px !important;
    /* more breathing room */
  }

  .s-card {
    width: 360px !important;
    height: 440px !important;
    /* shorter card */
    padding-bottom: 18px !important;
  }

  .s-card img {
    height: 230px !important;
    /* smaller image */
    border-radius: 14px !important;
  }

  .s-card h3 {
    font-size: 18px !important;
    /* smaller title */
    margin: 14px 0 8px 0 !important;
  }

  .s-card p {
    font-size: 14px !important;
    /* smaller body text */
    line-height: 1.6 !important;
  }
}

/*INDEXT- OUR SERVICES — Tablet */
@media (max-width: 992px) {
  h2 {
    font-size: 1.8rem !important;
    margin-top: -40px !important;
  }

  .s-card {
    width: 90% !important;
    height: auto !important;
  }

  .s-card img {
    height: 260px !important;
  }

  .s-card h3 {
    font-size: 18px !important;
  }

  .s-card p {
    font-size: 15px !important;
    width: 90% !important;
  }
}

/*INDEX - OUR SERVICES — Mobile */
@media (min-width: 300px) and (max-width: 767px) {

  /* Section heading */
  h2 {
    font-size: 1.3rem !important;
    margin-top: -10px !important;
    margin-bottom: 6px !important;
  }

  .underline {
    width: 90px !important;
    height: 2px !important;
    margin-bottom: 10px !important;
  }

  /* Cards layout */
  .service-section {
    flex-direction: column !important;
    align-items: center !important;
    gap: 18px !important;
    padding: 25px 12px !important;
  }

  .s-card {
    width: 100% !important;
    max-width: 340px !important;
    height: auto !important;
    padding-bottom: 16px !important;
  }

  .s-card img {
    height: 190px !important;
    border-radius: 10px !important;
  }

  .s-card h3 {
    font-size: 19px !important;
    margin-top: 30px !important;
  }

  .s-card p {
    font-size: 13px !important;
    line-height: 1.3 !important;
    width: 90% !important;
    margin: 10px auto 8px auto !important;
  }

  .read-more {
    display: inline-block !important;
    font-size: 13px !important;
    padding: 8px 16px !important;
    border-radius: 20px !important;
  }
}





/* OUR SERVICES PAGE — Laptop refined */
@media (min-width: 992px) and (max-width: 1536px) {
  .our-services-main {
    max-width: 1335px !important;
    padding: 0 20px !important;
  }

  .our-services-main h2 {
    font-size: 28px !important;
  }

  .env-section {
    gap: 45px !important;
    padding: 40px 0 !important;
  }

  .env-left img {
    max-width: 330px !important;
    margin-left: 0 !important;
  }

  .env-right h2 {
    font-size: 24px !important;
  }

  .env-right p {
    font-size: 14px !important;
  }
}


/* OUR SERVICES PAGE — Tablet */
@media (min-width: 768px) and (max-width: 991px) {
  .our-services-main {
    max-width: 991px !important;
    padding: 0 15px !important;
  }

  .our-services-main h2 {
    font-size: 24px !important;
  }

  .env-section {
    gap: 25px !important;
    /* Smaller gap */
    padding: 35px 0 !important;
    /* NO flex-direction: column - keeps side-by-side */
  }

  .env-left img {
    max-width: 280px !important;
    /* Smaller than laptop's 350px */
    margin-left: 0 !important;
  }

  .env-right h2 {
    font-size: 20px !important;
    /* Smaller than laptop */
  }

  .env-right p {
    font-size: 13px !important;
    /* Smaller than laptop */
  }
}


/* OUR SERVICES PAGE — Mobile */
@media (min-width:300px) and (max-width:767px) {

  .our-services-main {
    padding: 20px 12px !important;
    margin: 10px 0 !important;
  }

  .our-services-main > h2 {
    font-size: 1.5rem !important;
    text-align: center !important;
    margin-bottom: 10px !important;
  }

  .our-services-main .underline {
    width: 60px !important;
    height: 3px !important;
    margin: 0 auto 20px auto !important;
  }

  /* Common layout for each env-section: text first, image after */
  .env-section {
    display: block !important;
    margin-bottom: 25px !important;
  }

  /* Put text block first visually */
  .env-right {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 5px !important;
    box-sizing: border-box !important;
    order: 1 !important;
  }

  .env-left {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 5px !important;
    height: auto !important;
    box-sizing: border-box !important;
    text-align: center !important;
    margin-top: 10px !important;
    order: 2 !important;
  }

  /* If parent uses flex, force column order */
  .env-section {
    display: flex !important;
    flex-direction: column !important;
  }

  /* Typography */
  .env-right h2 {
    font-size: 1.2rem !important;
    line-height: 1.3 !important;
    margin-bottom: 30px !important;
    text-align: left !important;
  }

  .env-right p {
    font-size: 0.9rem !important;
    line-height: 1.6 !important;
    margin: 0 0 5px 0 !important;
  }

  /* Image fit in container */
  .env-left img {
    max-width: 100% !important;
    height: auto !important;
    object-fit: cover !important;
    margin: 0 auto !important;
    display: block !important;
  }
}



/* INDEX - VALUE ADDED SERVICES — Laptop 1025–1536px */
@media (min-width: 1025px) and (max-width: 1536px) {
  .value-services {
    padding: 32px 20px !important;
  }

  .value-services h2 {
    font-size: 1.4rem !important;
    margin-bottom: 6px !important;
  }

  .slider-container {
    width: 100% !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
  }

  .slide {
    gap: 15px !important;
    align-items: center !important;
  }

  .slide img {
    width: 40% !important;
    max-height: 300px !important;
    border-radius: 12px !important;
    object-fit: cover !important;
  }

  .text-area {
    width: 50% !important;
    padding: 10px 8px !important;
  }

  /* logo + text fix */
  .logo-container {
    display: flex !important;
    justify-items: center !important;
    margin-bottom: 8px !important;


  }

  .logo-container .logo-img {
    width: 400px !important;
    height: auto !important;
    display: block !important;
    margin: 0 auto !important;
    /* place logo above text, no overlap */
  }

  .text-area p {
    font-size: 0.8rem !important;
    line-height: 1.5 !important;
    margin: -25px auto 25px auto !important;

  }


  .btn {
    padding: 7px 18px !important;
    font-size: 0.5rem !important;
    border-radius: 15px !important;
  }

  .prev,
  .next {
    width: 32px !important;
    height: 32px !important;
    font-size: 16px !important;
  }
}


/* INDEX - VALUE ADDED SERVICES — Tablet 768–1024px */
@media (min-width: 768px) and (max-width: 1024px) {

  .value-services {
    padding: 32px 20px !important;
  }

  .value-services h2 {
    font-size: 1.4rem !important;
    margin-bottom: 6px !important;
  }

  .slider-container {
    width: 95% !important;
    max-width: 900px !important;
    margin: 0 auto !important;
  }

  .slide {
    gap: 15px !important;
    align-items: center !important;
  }

  .slide img {
    width: 40% !important;
    max-height: 250px !important;
    border-radius: 12px !important;
    object-fit: cover !important;
  }

  .text-area {
    width: 50% !important;
    padding: 10px 8px !important;
  }

  /* logo + text fix */
  .logo-container {
    display: flex !important;
    justify-items: center !important;
    margin-bottom: 8px !important;

  }

  .logo-container .logo-img {
    width: 350px !important;
    height: auto !important;
    display: block !important;
    margin: 0 auto !important;
    /* place logo above text, no overlap */
  }

  .text-area p {
    font-size: 0.78rem !important;
    line-height: 1.5 !important;
    margin: -25px auto 25px auto !important;

  }


  .btn {
    padding: 7px 18px !important;
    font-size: 0.5rem !important;
    border-radius: 15px !important;
  }

  .prev,
  .next {
    width: 32px !important;
    height: 32px !important;
    font-size: 16px !important;
  }
}






/* INDEX - VALUE SERVICES — Mobile */
@media (min-width: 300px) and (max-width: 767px) {

  .value-services {
    padding: 30px 15px !important;
    margin: 0 auto !important;
    text-align: center !important;
  }

  .value-services h2 {
    font-size: 21px !important;
    margin-bottom: 6px !important;
  }

  .value-services .underline {
    width: 90px !important;
    height: 2px !important;
    margin: 4px auto 20px auto !important;
  }

  .slider-container {
    width: 100% !important;
    max-width: 340px !important;
    /* outer margin */
    margin: 0 auto !important;
    position: relative !important;
  }

  .slide {
    flex-direction: column !important;
    align-items: center !important;
    gap: 10px !important;
  }

  .slide img {
    width: 100% !important;
    height: 180px !important;
    /* smaller image */
    object-fit: cover !important;
    border-radius: 10px !important;
  }

  .text-area {
    padding: 12px 8px !important;
    text-align: center !important;
  }

  .logo-container {
    display: flex !important;
    justify-content: center !important;
    margin-bottom: 6px !important;
  }

  .logo-container .logo-img {
    width: 300px !important;
    /* smaller logo */
    height: auto !important;
    margin-right: 0 !important;
    /* remove inline negative margins */
  }

  .text-area p {
    font-size: 12px !important;
    line-height: 1.5 !important;
  }

  .btn {
    margin-top: 10px !important;
    padding: 8px 16px !important;
    font-size: 13px !important;
    border-radius: 20px !important;
  }

  .read-more-value {
    font-size: 13px !important;
  }

  .prev,
  .next {
    width: 30px !important;
    height: 30px !important;
    font-size: 16px !important;
  }
}


/*  VALUE ADDED SERVICES PAGE — Laptop 992–1335px */

@media (min-width: 992px) and (max-width: 1536px) {

  .value-services {
    padding: 40px 40px !important;
    /* margin from both sides */
  }

  .value-services h2 {
    font-size: 1.6rem !important;
  }

  .vas-container {
    max-width: 1200px !important;
    margin: 0 auto !important;
    gap: 100px !important;
  }

  .vas-row {
    display: flex !important;
    align-items: center !important;
    gap: 50px !important;
    /* space between text and image */
    padding: 35px 0 !important;
  }

  .vas-row.reverse {
    flex-direction: row-reverse !important;
  }

  .vas-text {
    flex: 0 0 48% !important;
    /* like screenshot: text block */
    text-align: center !important;
  }

  .vas-logo img {
    max-width: 350px !important;
    /* logo size smaller */
    height: auto !important;
    margin-bottom: 0 !important;
  }

  .vas-text p {
    font-size: 0.9rem !important;
    line-height: 1.6 !important;
    max-width: 520px !important;
    margin: 0 auto 30px auto !important;
  }

  .vas-img {
    flex: 0 0 48% !important;
    /* image block */
  }

  .vas-img img {
    width: 100% !important;
    max-height: 300px !important;
    /* smaller but same ratio */
    object-fit: cover !important;
    border-radius: 16px !important;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18) !important;
  }
}

/*  VALUE ADDED SERVICES PAGE — tablet 768–991px */

@media (min-width: 768px) and (max-width: 991px) {

  .value-services {
    padding: 40px 40px !important;
    /* margin from both sides */
  }

  .value-services h2 {
    font-size: 1.6rem !important;
  }

  .vas-container {
    max-width: 1200px !important;
    margin: 0 auto !important;
    gap: 100px !important;
  }

  .vas-row {
    display: flex !important;
    align-items: center !important;
    gap: 40px !important;
    /* space between text and image */
    padding: 34px 0 !important;
  }

  .vas-row.reverse {
    flex-direction: row-reverse !important;
  }

  .vas-text {
    flex: 0 0 48% !important;
    /* like screenshot: text block */
    text-align: center !important;
  }

  .vas-logo img {
    max-width: 350px !important;
    /* logo size smaller */
    height: auto !important;
    margin-bottom: 0 !important;
  }

  .vas-text p {
    font-size: 0.9rem !important;
    line-height: 1.6 !important;
    max-width: 520px !important;
    margin: 0 auto 30px auto !important;
  }

  .vas-img {
    flex: 0 0 48% !important;
    /* image block */

  }

  .vas-img img {
    width: 100% !important;
    max-height: 300px !important;
    /* smaller but same ratio */
    object-fit: cover !important;
    border-radius: 16px !important;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18) !important;
  }
}

/*  VALUE ADDED SERVICES PAGE — mobile 300–767px */
@media (min-width:300px) and (max-width:767px) {

  /* Section heading */
  .value-services {
    padding: 20px 12px !important;
    margin: 10px 0 !important;
  }

  .value-services  h2 {
    font-size: 1.4rem !important;
    text-align: center !important;
    margin-bottom: 10px !important;
  }

  .value-services .underline {
    width: 60px !important;
    height: 3px !important;
    margin: 0 auto 20px auto !important;
  }

  /* Each row stacked (reverse ignored on mobile) */
  .vas-row {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    margin-bottom: 22px !important;
  }

  .vas-text {
    width: 100% !important;
    padding: 0 5px !important;
    box-sizing: border-box !important;
    text-align: left !important;
    order: 1 !important;
  }

  /* Logo above text with margin */
  .vas-row .vas-logo {
    display: block !important;
    margin-bottom: 10px !important;
    text-align: left !important;
  }

  .vas-row .vas-logo img {
    max-width: 300px !important;   /* small logo */
    width: 100% !important;
    height: auto !important;
    display: block !important;
    margin-bottom: 10px !important;
  }

  .vas-row .vas-text p {
    font-size: 0.9rem !important;
    line-height: 1.6 !important;
    margin: 0 !important;
  }

  /* Image below text, smaller */
  .vas-row .vas-img {
    width: 100% !important;
    padding: 8px 5px 0 5px !important;
    box-sizing: border-box !important;
    text-align: center !important;
    order: 2 !important;
  }

  .vas-row .vas-img img {
    max-width: 220px !important;   /* control image size */
    width: 100% !important;
    height: auto !important;
    object-fit: cover !important;
    display: inline-block !important;
  }
}



/* FOOTER — Laptop 1025–1280px */
@media (min-width: 1025px) and (max-width: 1536px) {
  .footer-content {
    max-width: 1536px !important;
    margin: 0 auto !important;
    padding: 40px 40px 24px 40px !important;
  }

  .footer-columns {
    display: grid !important;
    grid-template-columns: 1.4fr 1fr 1.1fr 1.1fr 1.1fr !important;
    /* logo/map, follow, find, links */
    align-items: flex-start !important;
    gap: 26px !important;
  }

  .footer-logo{
    margin-left: -50px !important;
  }

  .footer-logo img {
    width: 200px !important;
  }

  .footer-col h3 {
    font-size: 1.05rem !important;
    margin-bottom: 10px !important;
  }

  .footer-col p,
  .footer-col ul li a {
    font-size: 0.86rem !important;
    line-height: 1.5 !important;
  }

  .footer-map {
    width: 220px !important;
  }

  .social-icons img {
    width: 24px !important;
    height: 24px !important;
  }

  .footer-bottom {
    font-size: 0.8rem !important;
    padding: 8px 0 12px 0 !important;
  }
}

/* FOOTER — Tablet 768–1024px, still one row but tighter */
@media (min-width: 768px) and (max-width: 1024px) {
  .footer-content {
    max-width: 1024px !important;
    margin: 0 auto !important;
    padding: 32px 24px 20px 24px !important;
  }

  .footer-columns {
    display: grid !important;
    grid-template-columns: 1.3fr 1fr 1fr 1fr 1fr !important;
    gap: 24px !important;
  }

  .footer-logo{
    margin-left: -50px !important;
  }

  .footer-logo img {
    width: 200px !important;
  }

  .footer-col h3 {
    font-size: 1rem !important;
    margin-bottom: 8px !important;
  }

  .footer-col p,
  .footer-col ul li a {
    font-size: 0.85rem !important;
    line-height: 1.4 !important;
  }

  .footer-map {
    width: 210px !important;
  }

  .social-icons img {
    width: 22px !important;
    height: 22px !important;
  }

  .footer-bottom {
    font-size: 0.8rem !important;
    padding: 8px 0 10px 0 !important;
  }
}

/* FOOTER — Mobile 300–767px */
@media (min-width: 300px) and (max-width: 767px) {

  footer {
    padding: 25px 0 !important;
  }

  .footer-columns {
    display: flex !important;
    flex-direction: column !important;
    gap: 20px !important;
    padding: 0 16px !important;
    text-align: center !important;
  }

  .footer-logo img {
    width: 150px !important;
    margin: 0 auto 15px 30px !important;
  }

  .footer-map {
    width: 100% !important;
    max-width: 250px !important;
    justify-content: center !important;
    margin: 0 auto !important;
    display: block !important;
  }

  .footer-col h3 {
    font-size: 0.95rem !important;
    margin-bottom: 6px !important;
    text-align: left !important;
    margin-left: 30px !important;
  }

  .footer-col p,
  .footer-col ul li a {
    font-size: 0.8rem !important;
    line-height: 1.5 !important;
    text-align: left !important;
    margin-left: 30px !important;
  }

  .footer-col ul {
    text-align: left !important;
    margin-left: 20px !important;
  }

  .social-icons {
    justify-content: left !important;
    gap: 10px !important;
    margin-left: 30px !important;

  }

  .social-icons img {
    width: 20px !important;
    height: 20px !important;
  }

  .footer-bottom {
    font-size: 0.6rem !important;
    text-align: center !important;
    padding: 8px 10px !important;
  }

  .floating-buttons {
    bottom: 16px !important;
    right: 12px !important;
    gap: 8px !important;
  }

  .float-btn {
    width: 40px !important;
    height: 40px !important;
  }

  .float-btn img {
    width: 20px !important;
  }
}




/* ================================
   RESPONSIVE — HERO BANNER
   For project.html lux-hero section
==================================*/

/* Laptops ≤1280px */
@media (max-width:1536px) {
  .lux-hero {
    height: 65vh;
  }

  .hero-title {
    font-size: 42px;
  }

  .hero-sub {
    font-size: 18px;
  }

  .hero-stats .stat h2 {
    font-size: 32px;
  }
}

/* Tablets ≤992px */
@media (max-width:992px) {
  .lux-hero {
    height: 60vh;
    padding: 0 20px;
    text-align: center;
  }

  .hero-content1 {
    align-items: center;
  }

  .hero-title {
    font-size: 34px;
    line-height: 42px;
  }

  .hero-sub {
    font-size: 16px;
    margin-bottom: 20px;
  }

  .hero-stats {
    flex-direction: row;
    gap: 20px;
  }

  .hero-stats .stat h2 {
    font-size: 28px;
  }

  .hero-stats .stat p {
    font-size: 13px;
  }
}

/* Mobile ≤600px */
@media (max-width:600px) {
  .lux-hero {
    height: 70vh;
    padding: 0 10px;
    background-position: center;
  }

  .hero-content1 {
    padding-top: 40px;
  }

  .hero-title {
    font-size: 26px;
    line-height: 34px;
  }

  .hero-sub {
    font-size: 14px;
    margin-bottom: 25px;
  }

  .hero-stats {
    flex-direction: column;
    gap: 15px;
  }

  .hero-stats .stat h2 {
    font-size: 24px;
  }

  .hero-stats .stat p {
    font-size: 12px;
  }
}


@media (max-width: 992px) {
  .lux-hero {
    height: 60vh !important;
    padding: 0 20px !important;
    text-align: center !important;
  }

  .hero-content1 {
    align-items: center !important;
    padding-top: 18px !important;
  }

  .hero-title {
    font-size: 34px !important;
    line-height: 1.2 !important;
  }

  .hero-sub {
    font-size: 17px !important;
    margin-bottom: 18px !important;
  }
}

@media (max-width: 600px) {
  .lux-hero {
    height: 70vh !important;
    padding: 0 10px !important;
    background-position: center !important;
  }

  .hero-title {
    font-size: 23px !important;
    line-height: 1.16 !important;
  }

  .hero-sub {
    font-size: 13px !important;
    margin-bottom: 12px !important;
  }

  .hero-stats {
    flex-direction: column !important;
    gap: 8px !important;
  }

  .hero-stats .stat h2 {
    font-size: 22px !important;
  }
}



/* ================================
   RESPONSIVE — FILTER WRAPPER
   (Project Filters)
==================================*/
/* Tablet: 768px – 991px */
@media (min-width: 768px) and (max-width: 991px) {

  .filter-wrapper {
    padding: 15px 20px !important;
  }

  .search-box {
    margin-bottom: 15px !important;
  }

  .search-box input {
    padding: 8px 40px 8px 8px !important;
    font-size: 14px !important;
  }

  .search-icon {
    font-size: 16px !important;
    right: 8px !important;
    top: 8px !important;
  }

  .filter-title {
    font-size: 24px !important;
    margin-bottom: 12px !important;
  }

  .filter-row {
    gap: 15px !important;
    margin-bottom: 15px !important;
  }

  .filter-row select {
    padding: 8px 10px !important;
    min-width: 170px !important;
    font-size: 13px !important;
    border-radius: 6px !important;
  }

  .filter-buttons .clear {
    padding: 6px 18px !important;
    font-size: 13px !important;
  }
}

/* Laptop: 992px – 1365px */
@media (min-width: 992px) and (max-width: 1536px) {

  .filter-wrapper {
    padding: 20px 40px !important;
  }

  .search-box {
    margin-bottom: 18px !important;
  }

  .search-box input {
    padding: 9px 42px 9px 10px !important;
    font-size: 15px !important;
  }

  .search-icon {
    font-size: 18px !important;
    right: 10px !important;
    top: 9px !important;
  }

  .filter-title {
    font-size: 26px !important;
    margin-bottom: 14px !important;
  }

  .filter-row {
    gap: 18px !important;
    margin-bottom: 18px !important;
  }

  .filter-row select {
    padding: 9px 12px !important;
    min-width: 190px !important;
    font-size: 14px !important;
    border-radius: 7px !important;
  }

  .filter-buttons .clear {
    padding: 7px 20px !important;
    font-size: 14px !important;
  }
}


/* Small screens: reduce filter size   Mobile*/
@media (max-width: 768px) {

  .filter-wrapper {
    padding: 10px 12px !important;
  }

  .search-box {
    margin-bottom: 12px !important;
  }

  .search-box input {
    padding: 8px 35px 8px 8px !important;
    font-size: 13px !important;
  }

  .search-icon {
    font-size: 14px !important;
    right: 8px !important;
    top: 7px !important;
  }

  .filter-title {
    font-size: 20px !important;
    margin-bottom: 10px !important;
  }

  .filter-row {
    gap: 10px !important;
    margin-bottom: 10px !important;
  }

  .filter-row select {
    padding: 6px 8px !important;
    min-width: 140px !important;
    font-size: 12px !important;
    border-radius: 6px !important;
  }

  .filter-buttons {
    margin-top: 6px !important;
  }

  .filter-buttons .clear {
    padding: 6px 14px !important;
    font-size: 12px !important;
    border-radius: 6px !important;
  }
}







/* ==========================================================
   RESPONSIVE — ONGOING PROJECTS (cinema-grid section)
   (This applies to both Ongoing & Completed sections)
   ==========================================================*/

/* Laptops ≤1280px */
@media (max-width:1536px) {
  .ongoingwrap {
    padding: 40px auto;
  }


  .ongoingwrap.cinema-grid {
    max-width: 1400px !important;
    margin: 40px auto !important;
    padding: 0 40px !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 80px !important;
    /* row gap, column gap */
  }

  .ongoingwrap.cinema-card {
    height: 350px !important;
    border-radius: 22px !important;
    background-size: cover !important;
    background-position: center !important;
    box-shadow: 0 18px 40px rgba(0, 0, 0, 0.16) !important;
  }

  /* 3rd card: centered on second row */
  .ongoingwrap.cinema-card:nth-child(3) {
    grid-column: 1 / -1 !important;
    /* span both columns */
    max-width: 520px !important;
    justify-self: center !important;
    /* center within grid */
  }

  .ongoingwrap.cinema-glass {
    padding: 12px 18px !important;
  }

  .ongoingwrap.cinema-glass .project-heading {
    font-size: 15px !important;
    gap: 6px !important;
  }

  .ongoingwrap.cinema-glass .project-logo {
    height: 30px !important;
    width: 82px !important;
  }

}

/* Tablets ≤992px */
@media (max-width:992px) {

  .lux-heading {
    font-size: 26px;
  }

  .ongoingwrap .cinema-grid {
    padding: 40px 40px !important;

  }


}




/* ==========================================================
   RESPONSIVE — COMPLETED PROJECTS SECTION
   (completedwrap, projects-list, project-card)
   ==========================================================*/

/* Laptop size tuning only – keep same layout, just smaller */
@media (min-width: 1024px) and (max-width: 1536px) {

  .completedwrap {
    padding: 40px 40px !important;
  }

  .completed-cards-container {
    max-width: 1400px !important;
    margin: 0 auto !important;
    gap: 26px !important;
  }

  /* Card slightly smaller */
  .project-card.large {
    max-width: 400px !important;
    border-radius: 18px !important;

  }

  /* Image height smaller but same look */
  .project-card.large>img {
    height: 300px !important;
    object-fit: cover !important;
  }

  /* Logo + title row a bit smaller */
  .project-card .project-heading {
    font-size: 1.15rem !important;
    margin: 12px 0 8px 0 !important;
  }

  .project-card .project-logo {
    width: 100px !important;
    height: 44px !important;
  }

  /* Body text slightly reduced */
  .project-card p {
    font-size: 0.92rem !important;
    line-height: 1.45 !important;
  }

  /* Sold out badge slightly smaller */
  .Sold-tag {
    padding: 5px 14px !important;
    font-size: 0.75rem !important;
  }

  .completed-pagination {
    margin-top: 25px;
    justify-content: center;
  }

  .page-arrow {
    padding: 6px 12px;
    font-size: 18px;
  }
}




/*tablet Laptop size tuning only – keep same layout, just smaller */
@media (min-width: 768px) and (max-width: 992px) {

  .completedwrap {
    padding: 40px 40px !important;
    margin: auto;
  }

  .completed-cards-container {
    max-width: 1200px !important;
    margin: 0 auto !important;
    gap: 26px !important;
  }

  /* Card slightly smaller */
  .project-card.large {
    max-width: 360px !important;
    border-radius: 18px !important;

  }

  /* Image height smaller but same look */
  .project-card.large>img {
    height: 250px !important;
    object-fit: cover !important;
  }

  /* Logo + title row a bit smaller */
  .project-card .project-heading {
    font-size: 1.15rem !important;
    margin: 12px 0 8px 0 !important;
  }

  .project-card .project-logo {
    width: 100px !important;
    height: 44px !important;
  }

  /* Body text slightly reduced */
  .project-card p {
    font-size: 0.92rem !important;
    line-height: 1.45 !important;
  }

  /* Sold out badge slightly smaller */
  .Sold-tag {
    padding: 5px 14px !important;
    font-size: 0.75rem !important;
  }

  .completed-pagination {
    margin-top: 25px;
    justify-content: center;
  }

  .page-arrow {
    padding: 6px 12px;
    font-size: 18px;
  }
}

/* Mobile ≤600px */
@media (max-width:600px) {

  .completedwrap {
    padding: 20px 12px;
  }

  .lux-heading {
    font-size: 22px;
    margin-bottom: 8px;
  }

  .projects-list {
    grid-template-columns: 1fr !important;
    gap: 20px !important;
    padding: 0;
  }

  .project-card.large {
    border-radius: 10px;
  }

  .project-card.large img {
    height: 210px !important;
  }

  .project-heading {
    font-size: 15px !important;
    gap: 4px !important;
  }

  .project-logo {
    width: 70px !important;
  }

  .completed-pagination {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 20px;
  }

  .page-numbers {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
    justify-content: center;
    width: 100%;
  }

  .page-arrow {
    font-size: 18px;
    padding: 5px 10px;
  }
}

@media (max-width: 992px) {

  .projects-list {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
    padding: 0 10px !important;
  }

  .project-card.large {
    width: 100% !important;
    max-width: 350px !important;
    margin: 0 auto 16px auto !important;
    height: auto !important;
    border-radius: 13px !important;
    box-shadow: 0 2px 16px rgba(0, 0, 0, 0.07);
  }

  .project-card .project-heading {
    font-size: 17px !important;
    gap: 5px !important;
  }

  .project-logo {
    width: 60px !important;
    height: 28px !important;
    margin: 0 0 0 0 !important;
  }
}

@media (max-width: 600px) {


  .project-card.large {
    width: 99vw !important;
    max-width: 320px !important;
    border-radius: 11px !important;
    padding: 0 !important;
    margin: 0 auto 10px auto !important;
  }

  .project-logo {
    width: 42px !important;
    height: 22px !important;
  }

  .project-heading {
    font-size: 15px !important;
    gap: 2px !important;
    text-align: left !important;
  }

  .project-card.large img {
    width: 100% !important;
    height: auto !important;
    object-fit: cover !important;
    border-radius: 11px !important;
  }
}



@media (max-width: 600px) {

  html,
  body {
    overflow-x: hidden !important;
    width: 100vw !important;
  }
}

/* 3 ongoing project page*/

/* Hero Section */

@media (max-width: 992px) {
  .detail-hero {
    height: 60vh !important;
    background-position: center top !important;
    padding: 0 10px !important;
    text-align: center !important;
  }

  .hero-title {
    font-size: 26px !important;
  }

  .project-title {
    font-size: 1.22rem !important;
  }
}

@media (max-width: 600px) {
  .detail-hero {
    height: 48vh !important;
    padding: 0 4vw !important;
  }

  .hero-logos {
    gap: 6px !important;
    margin-left: 0 !important;
  }

  .small-logo {
    height: 34px !important;
    width: auto !important;
  }

  .project-title {
    font-size: 0.97rem !important;
    word-break: break-word;
  }

  .project-sub {
    font-size: 0.85rem !important;
    padding-bottom: 6px !important;
  }

  .hero-actions .btn-primary,
  .hero-actions .btn-ghost {
    width: 100% !important;
    max-width: 270px !important;
    margin: 4px auto;
    box-sizing: border-box;
    font-size: 0.92rem !important;
  }
}

/*Overview & Gallery*/
@media (max-width: 900px) {
  .detail-main {
    padding-bottom: 24px !important;
  }

  .overview-grid {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
    margin-left: 0 !important;
    margin-top: 20px;
    padding: 0 10px !important;
  }

  .overview-features {
    margin-top: 18px !important;
  }
}

@media (max-width: 600px) {
  .hero-logos {
    flex-direction: column !important;
    gap: 3px !important;
  }

  .overview-text h2 {
    font-size: 1.07rem !important;
  }

  .overview-text p,
  .project-meta {
    font-size: 0.95rem !important;
  }

  .feature {
    margin-bottom: 8px !important;
    text-align: center !important;
  }

  .amenity-box {
    width: 97vw !important;
    padding: 12px 2vw !important;
    font-size: 0.9rem !important;
  }

  .amenity-img {
    width: 42px !important;
    margin-bottom: 9px;
  }

  .gallery-section .grid {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  .card img {
    width: 98vw !important;
    max-width: 340px !important;
    border-radius: 12px !important;
    margin: 0 auto !important;
  }
}


@media (max-width: 600px) {
  .overview-grid {
    display: flex !important;
    flex-direction: column !important;
    gap: 18px !important;
    padding: 0 8px !important;
    width: 100vw !important;
    max-width: 100vw !important;
    box-sizing: border-box !important;
  }

  .hero-logos {
    flex-direction: column !important;
    gap: 6px !important;
    margin-left: 0 !important;
    align-items: flex-start !important;
  }

  .small-logo {
    height: 34px !important;
    width: auto !important;
    margin-bottom: 3px !important;
  }

  .overview-text h2,
  .overview-text .hero-logos {
    font-size: 1.19rem !important;
    flex-wrap: wrap !important;
    word-break: break-word !important;
  }

  .overview-text {
    padding-right: 0 !important;
    margin-bottom: 10px !important;
    font-size: 0.95rem !important;
    line-height: 1.5;
  }

  .overview-text p,
  .project-meta {
    font-size: 0.97rem !important;
    line-height: 1.45 !important;
    text-align: left !important;
    margin: 0 0 10px 0 !important;
    word-break: break-word !important;
  }

  .project-meta {
    margin-bottom: 12px !important;
  }

  .amenity-img {
    width: 44px !important;
    margin-bottom: 4px !important;
  }
}

@media (max-width: 700px) {

  .gallery-section .grid,
  .container .grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 13px !important;
    padding: 0 3vw !important;
    width: 98vw !important;
    max-width: 100vw !important;
    margin: 0 auto !important;
  }

  .card {
    width: 100% !important;
    max-width: 345px !important;
    margin: 0 auto;
    border-radius: 13px !important;
    overflow: hidden;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.07);
  }

  .card img {
    width: 100% !important;
    height: auto !important;
    border-radius: 13px !important;
    display: block;
    margin: 0 auto;
    object-fit: cover !important;
  }

  .gallery-section h2,
  .container h2 {
    font-size: 1.16rem !important;
    text-align: left !important;
    margin-bottom: 10px !important;
  }
}

/* ==========================
   ABOUT US RESPONSIVE
   ========================== */
/* About-us Section Responsive Fixes for Tablet (768px-1024px) & Laptop (1024px+) */

/* Tablet: Compact layout, proper margins, aligned text/logo */
@media (min-width: 768px) and (max-width: 991px) {

  .about-us-section,
  .about-us {
    width: 90%;
    max-width: 900px;
    margin: 0 auto 3rem auto !important;
    padding: 2rem !important;
    text-align: center;
  }

  .about-intro {
    text-align: left;
  }

  .about-us h2,
  .about-us .section-title {
    font-size: 1.8rem !important;
    margin-bottom: 1.5rem !important;
    line-height: 1.3;
  }

  .about-us p,
  .about-us .about-text {
    font-size: 0.95rem !important;
    line-height: 1.6;
    margin-bottom: 1rem;
  }

  /* Logo sizing & alignment */
  .about-us .logo,
  .about-us img[alt*="logo"],
  .about-us .company-logo {
    max-width: 180px !important;
    max-height: 80px !important;
    width: auto;
    height: auto;
    margin: 1rem auto 1.5rem auto;
    display: block;
  }

  /* Stats/Highlights alignment */
  .about-us .stats-grid,
  .about-us .stats-container,
  .about-us [class*="stats"] {
    gap: 1.5rem !important;
    margin: 2rem 0 !important;
  }

  .about-us .stat-item,
  .about-us .highlight-card {
    flex: 1 1 45% !important;
    padding: 1rem !important;
  }
}

/* Laptop: Refined spacing, professional alignment */
@media (min-width: 992px) and (max-width: 1335px) {

  .about-us-section,
  .about-us {
    width: 85%;
    max-width: 1100px;
    margin: 0 auto 4rem auto !important;
    padding: 2rem !important;
  }

  .about-us h2,
  .about-us .section-title {
    font-size: 2.2rem !important;
    margin-bottom: 2rem !important;
  }

  .about-us p,
  .about-us .about-text {
    font-size: 14px !important;
    max-width: 800px;
    margin: 0 auto 1.5rem auto;
  }

  /* Logo professional sizing */
  .about-us .logo,
  .about-us img[alt*="logo"],
  .about-us .company-logo {
    max-width: 180px !important;
    max-height: 110px !important;
    margin: 0 auto 2rem auto;
  }

  /* 3-column stats on laptop */
  .about-us .stats-grid,
  .about-us .stats-container {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 2rem !important;
    max-width: 900px;
    margin: 3rem auto !important;
  }
}


/* About fisrt mobile*/

@media (min-width: 300px) and (max-width: 767px) {

  /* Prevent horizontal scroll */
  html,
  body {
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  .about-us {
    padding: 30px 16px !important;
  }

  .about-container {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 24px !important;
  }

  /* RIGHT: TEXT FIRST IN MARKUP, BUT VISUALLY LAST */
  .about-right {
    order: 3 !important;
    width: 90% !important;
    text-align: left !important;
    padding: 0 !important;
  }

  .about-right p {
    font-size: 14px !important;
    line-height: 1.6 !important;
    margin-bottom: 16px !important;
  }

  /* LEFT: ABOUT HEADING + LOGO + NUMBER */
  .about-left {
    order: 1 !important;
    width: 100% !important;
    text-align: left !important;
  }

  .about-left h4 .about-intro {
    font-size: 14px !important;
    margin-bottom: 12px !important;
  }

  /* MAIN ABOUT IMAGE UNDER HEADING */
  .aboutimg {
    display: block !important;
    max-width: 240px !important;
    width: 70vw !important;
    height: auto !important;
    margin: 0 auto 18px !important;
  }

  /* LOGO + NUMBER BLOCK: two columns */
  .about-logo-section {
    display: flex !important;
    flex-direction: row !important;
    /* logo | number block */
    align-items: center !important;
    justify-content: center !important;
    gap: 16px !important;
    max-width: 260px !important;
    margin: 0 auto !important;
  }

  /* Logo on the left */
  .about-logo-section img {
    width: 80px !important;
    height: auto !important;
  }

  /* Vertical line between logo and number (optional) */
  .divider {
    width: 1px !important;
    height: 60px !important;
    background: black !important;
  }

  /* Right side: number + text stacked */
  .about-stat {
    display: flex !important;
    flex-direction: column !important;
    /* number on top, text below */
    align-items: flex-start !important;
    margin-top: 0 !important;
  }

  /* Number */
  .about-stat .number {
    font-size: 40px !important;
    font-weight: 700 !important;
    line-height: 1.1 !important;
    margin-bottom: 4px !important;
  }

  /* Plus */
  .about-stat .plus {
    font-size: 20px !important;
  }

  /* Text under number */
  .about-stat p {
    font-size: 10px !important;
    margin: 0 !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
  }

  /* CONTACT BUTTON BELOW TEXT */
  .contact-btn {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 10px 22px !important;
    font-size: 12px !important;
    border-radius: 999px !important;
    margin-top: 10px !important;
  }
}


/* ==========================================================
 Second About   RESPONSIVE BREAKPOINTS 
========================================================== */
/* Tablet: 768px - 991px */
@media (min-width: 768px) and (max-width: 991px) {
  .about-bg .about-card {
    width: 90% !important;
    max-width: 850px !important;
    margin: 0 auto !important;
    padding: 2rem !important;
    text-align: center !important;
  }

  .about-bg h2 {
    font-size: 1.6rem !important;
    margin-bottom: 1rem !important;
  }

  .about-bg .about-logo {
    max-width: 140px !important;
    max-height: 60px !important;
    width: auto !important;
    height: auto !important;
    margin: 0 auto 0.05rem auto !important;
  }

  .about-bg p {
    font-size: 12px !important;
    line-height: 1.5 !important;
    margin-bottom: 1rem !important;
  }

  /* Founders - Small signatures & text */
  .about-bg .founders-section {
    margin-top: 2rem !important;
  }

  .about-bg .founder-box {
    padding: 1rem !important;
    margin: 0 0.5rem !important;
  }

  .about-bg .founder-img {
    max-width: 140px !important;
    max-height: 60px !important;
    margin-bottom: 0.5rem !important;
  }

  .about-bg .founder-box h3 {
    font-size: 1rem !important;
    margin: 0.5rem 0 !important;
  }

  .about-bg .founder-box p {
    font-size: 0.8rem !important;
  }
}

/* Laptop: 992px - 1335px */
@media (min-width: 992px) and (max-width: 1335px) {
  .about-bg .about-card {
    width: 85% !important;
    max-width: 1335px !important;
    margin: 0 auto !important;
    padding: 2.5rem !important;
    text-align: center !important;
  }

  .about-bg h2 {
    font-size: 2rem !important;
    margin-bottom: 1.5rem !important;
  }

  .about-bg .about-logo {
    max-width: 180px !important;
    max-height: 75px !important;
    margin: 0 auto 1.5rem auto !important;
  }

  .about-bg p {
    font-size: 14px !important;
    line-height: 1.6 !important;
    max-width: 700px;
    margin: 0 auto 0.1rem auto !important;
  }

  /* Founders section */
  .about-bg .founders-section {
    display: flex !important;
    justify-content: center !important;
    gap: 2rem !important;
    margin-top: 3rem !important;
  }

  .about-bg .founder-box {
    flex: 1 !important;
    max-width: 300px !important;
    padding: 1.5rem !important;
  }

  .about-bg .founder-img {
    max-width: 180px !important;
    max-height: 80px !important;
    margin-bottom: 1rem !important;
  }

  .about-bg .founder-box h3 {
    font-size: 1.2rem !important;
    margin: 0.8rem 0 !important;
  }

  .about-bg .founder-box p {
    font-size: 13px !important;
  }
}

/* ============ Second About  MOBILE  ============ */
@media (min-width: 300px) and (max-width: 767px) {

    /* Outer background section smaller */
    .about-bg {
        width: 100% !important;
        padding: 40px 16px !important;
        height: auto !important;
    }

    /* Inner white card */
    .about-card {
        max-width: 100% !important;
        padding: 20px 16px !important;
        border-radius: 12px !important;
        box-shadow: 0 6px 18px rgba(0,0,0,0.06) !important;
    }

    /* Logo at top */
    .about-card h2 {
        text-align: center !important;
        margin-bottom: 10px !important;
    }

    .about-card .about-logo {
        max-width: 180px !important;
        width: 70vw !important;
        height: auto !important;
    }

    /* Paragraph text smaller and tighter */
    .about-card p {
        font-size: 11px !important;
        line-height: 1.6 !important;
        margin-bottom: 10px !important;
        text-align: justify !important;
    }

    .about-card p strong {
        font-weight: 600 !important;
    }

    /* Founders row as stacked cards */
    .founders-section {
        display: flex !important;
        flex-direction: column !important;
        gap: 10px !important;
        margin-top: 10px !important;
    }

    .founder-box {
        width: 100% !important;
        text-align: center !important;
    }

    /* Signature image smaller */
    .founder-img {
        width: 170px !important;
        height: auto !important;
        margin-bottom: 8px !important;
    }

    /* Director name */
    .founder-box h3 {
        font-size: 15px !important;
        margin-bottom: 4px !important;
    }

    /* Designation text */
    .founder-box p {
        font-size: 11px !important;
        line-height: 1.5 !important;
        padding: 0 10px !important;
    }
}




/* ================================
           CONTACT
================================ */

/* LAPTOP */
/* LAPTOP ONLY: 992px – 1365px */
@media (min-width: 992px) and (max-width: 1365px) {

  .contact-section {
    padding: 40px 0 !important;
  }

  .contact-section h1 {
    font-size: 28px !important;
    margin-bottom: 22px !important;
  }

  /* Whole section in one line */
  .contact-container {
    max-width: 1120px !important;
    margin: 0 auto !important;
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: flex-start !important;
    gap: 32px !important;
  }

  /* Left: form (smaller) */
  .contact-form {
    flex: 0 0 45% !important;
  }

  .contact-form .form-row {
    display: flex !important;
    gap: 10px !important;
  }

  .contact-form .form-group label {
    font-size: 15px !important;
    margin-bottom: 4px !important;
  }

  .contact-form input,
  .contact-form select,
  .contact-form textarea {
    font-size: 15px !important;
    padding: 7px 9px !important;
  }

  .contact-form textarea {
    min-height: 140px !important;
  }

  .contact-form .btn {
    padding: 8px 22px !important;
    font-size: 13px !important;
  }

  /* Right: one framed block (logo + address + map) */
  .contact-info {

    height: 300px;
    flex: 0 0 45% !important;
    background: #ffffff;
    border-radius: 16px;

    padding: 16px 18px;
    display: grid !important;
    grid-template-rows: auto 220px !important;
    /* top text, bottom map */
    row-gap: 10px !important;
  }

  .info-left {
    margin: 0 !important;
  }

  .add-logo {
    margin-top: 0 !important;
    margin-bottom: 10px !important;
  }

  .project-logo {
    width: 100px !important;
    height: 40px !important;
  }

  .info-left h3 {
    font-size: 18px !important;
    margin-bottom: 6px !important;
  }

  .info-left p,
  .info-left a {
    font-size: 13px !important;
    line-height: 1.4 !important;
  }

  /* Map fills bottom of the same frame */
  .info-right {
    width: 100% !important;
    height: 220px !important;
  }

  .contact-section .map-container {
    width: 100% !important;
    height: 100% !important;
    margin-top: 0 !important;
    border-radius: 10px;
    overflow: hidden;
  }

  .contact-section .map-container iframe {
    width: 100% !important;
    height: 100% !important;
    border: 0;
  }
}

/* TABLET: 768px – 991px */
@media (min-width: 768px) and (max-width: 991px) {

  .contact-section {
    padding: 30px 0 !important;
  }

  .contact-section h1 {
    font-size: 24px !important;
    margin-bottom: 18px !important;
  }

  /* Form + right block in one line, smaller */
  .contact-container {
    max-width: 900px !important;
    margin: 0 auto !important;
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: flex-start !important;
    gap: 24px !important;
  }

  /* Left: form (narrower, reduced fonts) */
  .contact-form {
    flex: 0 0 45% !important;
  }

  .contact-form .form-row {
    display: flex !important;
    gap: 8px !important;
  }

  .contact-form .form-group label {
    font-size: 12px !important;
    margin-bottom: 3px !important;
  }

  .contact-form input,
  .contact-form select,
  .contact-form textarea {
    font-size: 12px !important;
    padding: 6px 8px !important;
  }

  .contact-form textarea {
    min-height: 120px !important;
  }

  .contact-form .btn {
    padding: 7px 18px !important;
    font-size: 12px !important;
  }

  /* Right: one framed block (logo + address + map) */
  .contact-info {
    height: 300px;
    flex: 0 0 46% !important;
    background: #ffffff;
    border-radius: 14px;
    padding: 14px 16px;
    display: grid !important;
    grid-template-rows: auto 200px !important;
    /* top text, bottom map */
    row-gap: 8px !important;
  }

  .add-logo {
    margin-top: 0 !important;
    margin-bottom: 8px !important;
  }

  .project-logo {
    width: 135px !important;
    height: 48px !important;
  }

  .info-left h3 {
    font-size: 16px !important;
    margin-bottom: 5px !important;
  }

  .info-left p,
  .info-left a {
    font-size: 12px !important;
    line-height: 1.35 !important;
  }

  /* Map fills bottom of same frame */
  .info-right {
    width: 100% !important;
    height: 200px !important;
  }

  .contact-section .map-container {
    width: 100% !important;
    height: 100% !important;
    margin-top: 0 !important;
    border-radius: 10px;
    overflow: hidden;
  }

  .contact-section .map-container iframe {
    width: 100% !important;
    height: 100% !important;
    border: 0;
  }
}


/* ---------------------------------------------
   📱 MOBILE (max-width: 768px)
--------------------------------------------- */
@media (min-width:300px) and (max-width:767px) {

  /* Section spacing */
  .contact-section {
    margin: 60px 20px !important;
    padding: 15px 10px !important;
    text-align: left !important;
  }

  .contact-section h1 {
    font-size: 1.5rem !important;
    text-align: center !important;
    margin-bottom: 10px !important;
  }

  /* Main container */
  .contact-container {
    display: block !important;              /* stack form + info */
  }

  /* Form full-width, smaller text */
  .contact-form {
    width: 100% !important;
    max-width: 100% !important;
    padding: 15px 10px !important;
    box-sizing: border-box !important;
  }

  .contact-form .form-row {
    display: block !important;              /* stack name/phone */
  }

  .contact-form .form-row .form-group {
    width: 100% !important;
  }

  .contact-form label {
    font-size: 0.85rem !important;
  }

  .contact-form input,
  .contact-form select,
  .contact-form textarea {
    width: 100% !important;
    font-size: 0.9rem !important;
  }

  .contact-form .btn {
    width: 100% !important;
    font-size: 0.95rem !important;
    padding: 10px !important;
  }

  /* Right side: address + map stacked */
  .contact-info {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 10px !important;
    box-sizing: border-box !important;
  }

  .contact-info .info-left,
  .contact-info .info-right {
    width: 100% !important;
    max-width: 100% !important;
  }

  .contact-info h3 {
    font-size: 1.1rem !important;
  }

  .contact-info p,
  .contact-info a {
    font-size: 0.9rem !important;
  }

  .add-logo {
    margin-top: 30px !important;
    margin-bottom: 20px !important;
    text-align: center !important;
  }

  .add-logo .project-logo {
    height: auto !important;
    width: 140px !important;
  }

  /* Map responsive */
  .info-right .map-container {
    width: 100% !important;
    height: 250px !important;
    margin-top: 25px !important;
    justify-content: center !important;
  }

}



/* ------------------------------------------------------------------
   PERFECT RESPONSIVE FIXES FOR ABT PAGE
-------------------------------------------------------------------*/

/* ===== Tablet (max-width: 992px) ===== */
@media (max-width: 992px) {

  /* HERO */
  .detail-hero {
    height: 65vh;
    padding: 20px;
    background-position: center top;
  }

  .hero-glass {
    flex-direction: column;
    text-align: center;
    padding: 18px;
  }

  .hero-logos {
    justify-content: center;
  }

  .project-title {
    font-size: 24px;
  }

  /* Overview Section */
  .overview-grid {
    grid-template-columns: 1fr;
    margin-left: 0;
    padding: 0 20px;
  }

  .overview-text h2 {
    font-size: 26px;
  }

  .overview-text p,
  .project-meta {
    font-size: 16px;
  }

  .amenity-box {
    width: 200px;
    margin: auto;
  }
}

/* ===== Mobile (max-width: 768px) ===== */
@media (max-width: 768px) {

  /* HERO TITLE */
  .project-title {
    font-size: 20px;
    text-align: center;
  }

  .project-sub {
    font-size: 12px;
    text-align: center;
  }

  /* ACTION BUTTONS */
  .hero-actions {
    flex-direction: column;
    width: 100%;
    gap: 10px;
  }

  .btn-primary,
  .btn-ghost {
    width: 100%;
    text-align: center;
  }

  /* Overview */
  .overview-text h2 {
    font-size: 22px;
  }

  .overview-text p {
    font-size: 15px;
    line-height: 1.6;
  }

  .project-meta li {
    font-size: 15px;
  }

  /* Gallery */
  .container h2 {
    font-size: 22px;
  }

  .grid {
    gap: 12px;
  }

  .card img {
    width: 100%;
    height: auto;
    border-radius: 14px;
  }

  /* Lightbox buttons */
  .nav-btn {
    font-size: 30px;
    padding: 8px 14px;
  }

  .close-btn {
    font-size: 22px;
  }
}

@media (max-width: 768px) {
  .hero-content h1 {
    font-size: 2em;
    /* smaller heading */
  }

  .hero-content p {
    font-size: 1em;
    /* smaller paragraph */
  }

  .hero {
    padding: 40px 16px;
    /* reduce padding on small screens */
  }
}


/* ===== Small Mobile (max-width: 480px) ===== */
@media (max-width: 480px) {

  .detail-hero {
    height: 55vh;
  }

  .small-logo {
    height: 34px;
  }

  .project-title {
    font-size: 18px;
  }

  .overview-text h2 {
    font-size: 20px;
  }

  .overview-text p {
    font-size: 14px;
  }

  .project-meta li {
    font-size: 14px;
  }

  .amenity-box {
    width: 160px;
    padding: 15px;
  }

  .container h2 {
    font-size: 20px;
  }

  .card img {
    border-radius: 12px;
  }
}


/*services */
@media (max-width: 768px) {
  .s-card {
    width: 100% !important;
    /* full width on mobile */
    max-width: 360px;
    /* constrain max width for readability */
    min-height: auto;
    /* remove fixed height */
    margin: 0 auto 24px auto;
    /* center with spacing */
  }

  .s-card img {
    width: 100%;
    /* responsive images */
    height: auto;
    /* maintain aspect ratio */
    max-height: 320px;
  }

  .service-section {
    flex-direction: column !important;
    /* stack service cards vertically */
    align-items: center !important;
    gap: 24px !important;
  }
}

/* value added services */
@media (max-width: 768px) {
  .slider-container {
    width: 100% !important;
    max-width: 1100px !important;
    height: auto !important;
    /* remove large fixed height */
  }

  .slide {
    gap: 40px !important;
    /* reduce gap */
    flex-direction: column !important;
    /* stack horizontally spaced items vertically */
    align-items: flex-start !important;
  }

  .text-area {
    margin-bottom: 20px !important;
    padding: 0 8px !important;
  }

  .text-area p {
    margin-top: 10px !important;
    margin-bottom: 24px !important;
  }
}

/* ===========================================================
   MOBILE RESPONSIVE POPUP (max-width: 768px)
   =========================================================== */
@media (max-width: 768px) {

  .popup-box {
    width: 90%;
    max-width: 360px;
    padding: 26px 20px;
    border-radius: 12px;
  }

  .popup-close {
    right: 10px;
    top: 8px;
    font-size: 24px;
  }

  .popup-form label {
    font-size: 13px;
    margin-bottom: 4px;
  }

  .popup-form input,
  .popup-form select {
    font-size: 14px;
    padding: 10px 8px;
    margin-bottom: 15px;
  }

  .popup-submit {
    font-size: 15px;
    padding: 12px;
    border-radius: 6px;
  }

  .mandatory {
    font-size: 11px;
    margin-bottom: 12px;
  }
}


/* TABLET — Medium Screens (601px to 992px) */
@media (min-width: 601px) and (max-width: 992px) {

  .popup-box {
    width: 80%;
    max-width: 460px;
    padding: 35px 28px;
    border-radius: 14px;
  }

  .popup-form label {
    font-size: 14px;
  }

  .popup-form input,
  .popup-form select {
    padding: 12px;
  }

  .popup-submit {
    padding: 14px;
    font-size: 17px;
    border-radius: 8px;
  }
}

/* LAPTOP — (992px to 1400px) */
@media (min-width: 992px) and (max-width: 1400px) {

  .popup-box {
    width: 70%;
    max-width: 520px;
    padding: 38px 30px;
  }
}

/* LARGE SCREENS — Big Desktop */
@media (min-width: 1401px) {

  .popup-box {
    width: 100%;
    max-width: 600px;
    padding: 40px 35px;
  }
}


/* Public Advisory & Terms and conditions */
/* Laptop: 1335px to 992px */
@media screen and (max-width: 1335px) and (min-width: 992px) {
  .public {
    margin-top: 80px !important;
    padding: 40px 25px !important;
  }

  .heading {
    width: 85% !important;
    max-width: 900px;
  }

  .heading h2 {
    font-size: 28px !important;
    margin-bottom: 10px !important;
    line-height: 1.3;
  }

  .heading p {
    font-size: 15px !important;
    line-height: 1.6;
    margin-bottom: 18px !important;
  }

  .heading .underline {
    width: 150px !important;
    height: 3px !important;
    margin-bottom: 22px !important;
  }
}

/* Tablet: 991px to 768px */
@media screen and (max-width: 991px) and (min-width: 768px) {
  .public {
    margin-top: 65px !important;
    padding: 35px 20px !important;
  }

  .heading {
    width: 92% !important;
    max-width: 750px;
  }

  .heading h2 {
    font-size: 24px !important;
    margin-bottom: 12px !important;
  }

  .heading p {
    font-size: 14px !important;
    margin-bottom: 16px !important;
  }

  .heading .underline {
    width: 130px !important;
    margin-bottom: 20px !important;
  }
}


/* CAREER PAGE RESPONSIVE */

/* TABLET  CAREER PAGE RESPONSIVE */
@media (min-width:768px) and (max-width:1024px){
  
    /* ------- HEADING -------- */

    .heading {
      width: 90% !important;
      margin: auto !important;
      padding: 20px 0 !important;
    }

    .heading h2 {
      font-size: 20px !important;
      margin-bottom: 10px !important;
      color: black !important;
    }

    .heading p {
      font-size: 15px !important;
      color: black !important; 
    }

    /* ------- JOB TABLE -------- */

    .job-table {
      width: 90% !important;
      margin: auto !important;
      margin-top: 20px !important;
    }

    table {
      width: 100% !important;
      border-collapse: collapse !important;
      font-size: 15px !important;
    }

    thead {
      background: #7ac2f1 !important;
    }

    thead th {
      padding: 12px !important;
      text-align: left !important;
    }

    tbody td {
      padding: 12px !important;
      border-bottom: 1px solid #eee !important;
    }

    .apply-btn {
      color: #0071bb !important;
      text-decoration: none !important;
      font-weight: bold !important;
    }

    /* -------- CONTACT AREA -------- */

    .contact-area {
      width: 90% !important;
      margin: auto !important;
      display: flex !important;
      gap: 30px !important;
      margin-top: 120px !important;
    }

    .contact-area .underline {
      width: 150px !important;
      height: 3px !important;
      background: #0071bb !important;
      margin-bottom: 20px !important;
      border-radius: 10px !important;
    }

    .form-box {
      width: 60% !important;
      font-size: 15px !important;
    }

    .info-box {
      width: 40% !important;
      font-size: 15px !important;
    }

    .form-box h3,
    .info-box h3 {
      font-size: 20px !important;
      margin-bottom: 10px !important;
      color: black !important;
    }

    .two-input {
      display: flex !important;
      gap: 20px !important;
    }

    label {
      font-weight: 600 !important;
      margin-top: 15px !important;
      display: block !important;
    }

    input,
    select,
    textarea {
      width: 100% !important;
      padding: 10px !important;
      border: 1px solid #c9c9c9 !important;
      border-radius: 5px !important;
    }

    .submit-btn {
      margin-top: 20px;
      padding: 10px 25px !important;
      border: none !important;
      border-radius: 5px !important;
      background: #0071bb !important;
      color: #fff !important;
      cursor: pointer !important;
      font-size: 15px !important;
    }
}

/* MOBILE  CAREER PAGE RESPONSIVE */
@media (min-width:300px) and (max-width:767px) {

  /* 1. Outer section margin / padding */
  .career-section {
    margin: 10px 0 !important;          /* reduce top/bottom margin */
    padding: 15px 10px !important;      /* tighter inner padding */
  }

  /* 2. Heading text size */
  .career-section .heading h2 {
    font-size: 1.2rem !important;
    text-align: left !important;
  }

  .career-section .heading p {
    font-size: 0.9rem !important;
    line-height: 1.5 !important;
  }

  /* 3. Job table – horizontal scroll */
  .career-section .job-table {
    width: 100% !important; 
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .career-section .job-table table {
    min-width: 500px !important;        /* force wider than screen so scroll shows */
    font-size: 0.85rem !important;      /* smaller text in table */
  }

  .career-section .job-table th,
  .career-section .job-table td {
    padding: 8px 6px !important;
    white-space: nowrap !important;     /* keep cells in one line */
  }

  /* 4. Contact area – stack form & address */
  .career-section .contact-area {
    display: block !important;          /* stack vertically */
  }

  .career-section .form-box,
  .career-section .info-box {
    width: 100% !important;
    max-width: 100% !important;
    padding: 15px 10px !important;
    box-sizing: border-box !important;
  }

  .career-section .form-box h3,
  .career-section .info-box h3,
  .career-section .info-box h4 {
    font-size: 1.1rem !important;
  }

  .career-section .info-box p {
    font-size: 0.9rem !important;
    line-height: 1.5 !important;
  }

  /* 4a. Form inputs full-width & compact */
  .career-section .two-input {
    display: block !important;
  }

  .career-section .two-input > div {
    width: 100% !important; 
  }

  .career-section .form-box label {
    font-size: 0.85rem !important;
  }

  .career-section .form-box input,
  .career-section .form-box select,
  .career-section .form-box textarea {
    width: 100% !important;
    font-size: 0.9rem !important;
  }

  .career-section .submit-btn {
    width: 100% !important;
    padding: 10px !important;
    font-size: 0.95rem !important;
  }
}
