/*
Theme Name: sphere-seven
*/




h1,h2,h3,h4,h5,h6{
    font-family: "Cinzel", serif !important;
     letter-spacing: 0.5px;
}

p, a {
   font-family: "Times New Roman", sans-serif;
    color: #ccc !important;  
    font-size: 16px;                                         
}

span{
    font-family: "Poppins", sans-serif;  
}

a:hover{
    text-decoration: none !important;
}

.container {
    max-width: unset !important;
    padding: 0 8% !important;
}

/* width */
::-webkit-scrollbar {
  width: 4px;
}

/* Track */
::-webkit-scrollbar-track {
  background: #1D1D1D;
}

/* Handle */
::-webkit-scrollbar-thumb {
  background: #C4A478;
}

/* Handle on hover */
::-webkit-scrollbar-thumb:hover {
  background: #555;
}

html {
    scroll-behavior: smooth;
    overflow-x: hidden;
}

body{
    background: #0f0f0f !important;
}


 /* header section start */

.header-wrapper {
    width: 100%;
    background: rgba(0, 0, 0, 0.6);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    text-align: center;
    position: fixed;
    top: 0px;
    z-index: 999;
    padding: 8px 0;
    transition: all 0.3s ease;
}

.f-nav .header-wrapper {
    -webkit-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.5);
    -moz-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.5);
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.5);
    padding: 10px 0;
    background: rgba(0, 0, 0, 0.6);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
}

.header-logo a {
    display: inline-block;
    line-height: 0;
    font-size: 0;
}

 .header-logo img {
    max-width: 120px;
    object-fit: cover;
    height: auto;
    display: block;
}

.f-nav .header-wrapper .header-logo img {
    height: auto;
    max-width: 150px;
}

.f-nav .menu-logoheader{
    padding-top: 0;
}

.header-menu {
    display: flex;
    align-items: center;
    justify-content: center;
}

#mega-menu-wrap-primary, 
#mega-menu-wrap-primary #mega-menu-primary {
    background: transparent !important;
}

#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link {
    background: transparent !important;
    color: #ffffff !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px;
    transition: color 0.3s ease;
    padding: 0 25px;
}

#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item:hover > a.mega-menu-link,
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item.mega-current-menu-item > a.mega-menu-link {
    background: transparent !important;
    color: #C4A478 !important;
}

/* ---- Off-canvas sidebar navigation — used at ALL screen sizes ---- */

#mega-menu-wrap-primary .mega-menu-toggle {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    background: none !important;
    height: 32px;
    line-height: 32px;
    width: 42px;
    position: relative;
    z-index: 1060;
}

#mega-menu-wrap-primary .mega-menu-toggle .mega-toggle-animated-inner,
#mega-menu-wrap-primary .mega-menu-toggle .mega-toggle-animated-inner::before,
#mega-menu-wrap-primary .mega-menu-toggle .mega-toggle-animated-inner::after {
    background-color: #C4A478 !important;
}

/* Dimmed backdrop behind the sidebar */
#mega-menu-wrap-primary::before {
    content: "";
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.6);
    z-index: 1040;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.4s ease, visibility 0.4s ease;
    pointer-events: none;
}

body.mega-menu-primary-mobile-open #mega-menu-wrap-primary::before {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

body.mega-menu-primary-mobile-open {
    overflow: hidden;
}

/* Off-canvas sidebar sliding in from the right */
#mega-menu-wrap-primary .mega-menu-toggle + #mega-menu-primary {
    display: flex !important;
    flex-direction: column;
    align-items: stretch;
    position: fixed !important;
    top: 0;
    right: 0;
    left: auto;
    width: 78%;
    max-width: 320px;
    height: 100vh;
    max-height: none;
    margin: 0;
    background-color: #0f0f0f !important;
    border-left: 1px solid rgba(196, 164, 120, 0.25);
    border-radius: 0;
    padding: 0 0 30px !important;
    box-shadow: -15px 0 45px rgba(0, 0, 0, 0.6);
    z-index: 9999;
    overflow-y: auto;
    transform: translateX(100%);
    transition: transform 0.45s cubic-bezier(0.16, 1, 0.3, 1);
}

#mega-menu-wrap-primary .mega-menu-toggle.mega-menu-open + #mega-menu-primary {
    transform: translateX(0);
}

#mega-menu-wrap-primary .mega-menu-toggle + #mega-menu-primary > li.mega-menu-item > a.mega-menu-link {
    display: block !important;
    width: 100%;
    font-family: "Roboto", sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #C4A478 !important;
    transition: background-color 0.3s ease, color 0.3s ease;
}

#mega-menu-wrap-primary .mega-menu-toggle + #mega-menu-primary > li.mega-current-menu-item > a.mega-menu-link {
    background-color: #C4A478 !important;
    color: #171410 !important;
}

.header-right-btn {
    display: flex;
    align-items: center; 
    justify-content: flex-end;
}

.header-btn-enquire {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    border: 1px solid #C4A478;
    color: #ffffff !important;
    padding: 10px 20px;
    border-radius: 0;
    font-size: 13px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 1px;
    transition: all 0.3s ease;
    text-decoration: none !important;
    background: transparent;
}

.header-btn-enquire:hover {
    background: #C4A478;
    color: #000000;
}

/* header section ends */



/* banner section start  */

.banner-section {
    height: 100vh;
    min-height: 700px;
    overflow: hidden;
    position: relative;
}

.banner-slider-track,
.banner-slider-track .slick-list,
.banner-slider-track .slick-track {
    height: 100%;
}

.banner-slide {
    height: 100%;
    position: relative;
    outline: none;
}

.banner-bg {
    position: absolute;
    inset: 0;
    overflow: hidden;
}

.banner-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: scale(1.08);
    transition: transform 7s ease;
}

.slick-current .banner-image {
    transform: scale(1);
}

.banner-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(120deg, rgba(0,0,0,.72), rgba(0,0,0,.2));
    z-index: 1;
}

.banner-split-overlay {
    position: absolute;
    top: 0;
    height: 100%;
    width: 35%;
    z-index: 2;
}

.banner-left {
    left: 0;
    background: linear-gradient(to right, rgba(0,0,0,.45), transparent);
}

.banner-right {
    right: 0;
    background: linear-gradient(to left, rgba(0,0,0,.15), transparent);
}

.banner-content {
    display: flex;
    gap: 30px;
    position: absolute;
    z-index: 9;
    top: 55%;
    left: 120px;
    transform: translateY(-45%);
    max-width: 720px;
}

.banner-line {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-top: 10px;
}

.banner-dot {
    width: 6px;
    height: 6px;
    background: #fff;
    border-radius: 50%;
    margin: 5px 0;
}

.banner-dot-top {
    background: #C4A478;
}

.banner-line-shape {
    width: 2px;
    height: 120px;
    background: rgba(255,255,255,.25);
    position: relative;
    overflow: hidden;
}

.banner-line-shape::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 0%;
    background: #C4A478;
}

.banner-line-shape.active::before {
    height: 100%;
    transition: height 6s linear;
}

.banner-subtitle {
    font-size: 12px;
    color: #C4A478;
    text-transform: uppercase;
    letter-spacing: 4px;
    font-weight: 600;
    margin-bottom: 22px;
}

.banner-title {
    font-size: 55px;
    color: #fff;
    font-weight: 400;
    line-height: 1.1;
    margin-bottom: 20px;
}

.banner-description {
    font-size: 16px;
    color: #ccc;
    max-width: 480px;
    line-height: 1.7;
    margin-bottom: 40px;
}

.banner-description p {
    color: #ccc;
}

.banner-btn {
    background: #C4A478;
    border: 1px solid #C4A478;
    color: #000 !important;
    padding: 15px 30px;
    font-size: 14px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    display: inline-block;
    text-decoration: none;
    transition: 0.3s ease-in-out;
}

.banner-btn:hover {
    background: transparent;
    border: 1px solid #C4A478;
    color: #fff !important;
}

/* banner section end  */



/* about us section start  */


.about-us-section {
    padding: 60px 0;
}

.about-us-tag {
    font-size: 12px;
    color: #c4a478;
    text-transform: uppercase;
    letter-spacing: 4px;
    display: block;
    margin-bottom: 25px;
    font-weight: 600;
}

.about-us-page-content h2 {
    font-size: 40px;
    line-height: 1.2;
    font-weight: 400;
    margin-bottom: 25px;
    color: #fff;
}

.about-us-page-content p {
    line-height: 1.7;
}

.about-us-stats {
    display: grid;
    grid-template-columns: repeat(2,1fr);
    gap: 30px;
    margin-top: 40px;
}

.about-us-stat-item h3 {
    font-size: 32px;
    margin-bottom: 5px;
}

.about-us-stat-item span {
    color: #777;
    font-size: 14px;
}

.about-us-images {
    height: 520px;
    position: relative;
}

.about-us-main-image {
    width: 58%;
    height: 100%;
    overflow: hidden;
    border-radius: 12px;
    box-shadow: 0 10px 40px rgba(0,0,0,0.5);
}

.about-us-main-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.about-us-small-image {
    position: absolute;
    right: 0;
    width: 41%;
    overflow: hidden;
    border-radius: 12px;
    box-shadow: 0 10px 40px rgba(0,0,0,0.5);
}

.about-us-small-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.about-us-image-two {
    top: 0;
    height: 51%;
}

.about-us-image-three {
    bottom: 0;
    height: 48%;
}



/* service section start  */


.services-section {
    padding: 60px 0;
    position: relative;
    overflow: hidden;
}

.services-section-header {
    margin: 0 auto 60px;
    will-change: opacity, transform;
    text-align: center;
    max-width: 660px;
}

.services-tag {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    font-size: 12px;
    font-family: "Cinzel", serif;
    font-weight: 600;
    color: #C4A478;
    text-transform: uppercase;
    letter-spacing: 4px;
    margin-bottom: 18px;
    position: relative;
}

.services-tag::before,
.services-tag::after {
    content: "";
    width: 30px;
    height: 1px;
    background: #C4A478;
    opacity: 0.6;
}

.services-heading {
    font-size: 40px;
    font-weight: 400;
    line-height: 1.2;
    color: #ffffff;
    margin-bottom: 20px;
}

.services-subtext {
    font-size: 16px;
    line-height: 1.7;
    color: #ccc;    
}

.services-grid {
    row-gap: 28px;
    margin-top: 0;
}

.services-col {
    padding: 0 14px;
    will-change: opacity, transform;
}

.service-card {
    position: relative;
    background: linear-gradient(145deg, #181614 0%, #0a0a0a 100%);
    border: 1px solid rgba(196, 164, 120, 0.14);
    padding: 40px 32px 36px;
    height: 100%;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    transition: border-color 0.4s ease, transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), box-shadow 0.4s ease;
    cursor: default;
}

.service-card::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, rgba(196,164,120,0.06) 0%, transparent 65%);
    opacity: 0;
    transition: opacity 0.4s ease;
    pointer-events: none;
}

.service-card:hover {
    border-color: rgba(196, 164, 120, 0.55);
    transform: translateY(-6px);
    box-shadow: 0 24px 60px rgba(0, 0, 0, 0.35), 0 0 0 1px rgba(196, 164, 120, 0.12);
}

.service-card:hover::after {
    opacity: 1;
}

.service-card-corner {
    position: absolute;
    top: 0;
    right: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 40px 40px 0;
    border-color: transparent rgba(196, 164, 120, 0.22) transparent transparent;
    transition: border-color 0.4s ease;
}

.service-card:hover .service-card-corner {
    border-color: transparent rgba(196, 164, 120, 0.65) transparent transparent;
}

.service-card-icon-wrap {
    position: relative;
    width: 64px;
    height: 64px;
    margin-bottom: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.service-card-icon-wrap::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 16px;
    background: rgba(196, 164, 120, 0.1);
    border: 1px solid rgba(196, 164, 120, 0.2);
    transition: background 0.4s ease, border-color 0.4s ease;
}

.service-card:hover .service-card-icon-wrap::before {
    background: rgba(196, 164, 120, 0.18);
    border-color: rgba(196, 164, 120, 0.45);
}

.service-card-icon-img {
    width: 38px;
    height: 38px;
    object-fit: contain;
    position: relative;
    z-index: 1;
    filter: brightness(0) saturate(100%) invert(75%) sepia(28%) saturate(500%) hue-rotate(6deg) brightness(100%);
    transition: filter 0.4s ease, transform 0.4s ease;
}

.service-card:hover .service-card-icon-img {
    filter: brightness(0) saturate(100%) invert(82%) sepia(40%) saturate(400%) hue-rotate(6deg) brightness(105%);
    transform: scale(1.08);
}

.service-card-icon-fallback {
    font-size: 28px;
    color: #C4A478;
    position: relative;
    z-index: 1;
    transition: transform 0.4s ease, color 0.4s ease;
}

.service-card:hover .service-card-icon-fallback {
    transform: scale(1.12) rotate(-4deg);
    color: #d4b488;
}

/* Radial glow behind icon */
.service-card-icon-glow {
    position: absolute;
    inset: -10px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(196,164,120,0.18) 0%, transparent 70%);
    opacity: 0;
    transition: opacity 0.4s ease;
    pointer-events: none;
}

.service-card:hover .service-card-icon-glow {
    opacity: 1;
}

.service-card-body {
    display: flex;
    flex-direction: column;
    flex: 1;
}

.service-card-title {
    font-size: 22px;
    font-weight: 500;
    color: #ffffff;
    line-height: 1.3;
    margin-bottom: 12px;
    letter-spacing: 0.3px;
    transition: color 0.3s ease;
}

.service-card:hover .service-card-title {
    color: #C4A478;
}

.service-card-excerpt p {
    font-family: "Roboto", sans-serif;
    font-size: 14px;
    line-height: 1.75;
    margin-bottom: 24px;}

/* Custom Lists in Excerpt */
.service-card-excerpt ul {
    list-style: none;
    padding: 0;
    margin: 0 0 15px;
}

.service-card-excerpt ul li {
    position: relative;
    padding-left: 24px;
    margin-bottom: 10px;
    color: #888;
    line-height: 1.6;
}

.service-card-excerpt ul li:last-child {
    margin-bottom: 0;
}

.service-card-excerpt ul li::before {
    content: "\f00c";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    position: absolute;
    left: 0;
    top: 2px;
    color: #C4A478;
    font-size: 13px;
    transition: transform 0.3s ease;
}

.service-card:hover .service-card-excerpt ul li::before {
    transform: scale(1.1);
    color: #d4b488;
}


/* service section end  */


/* why choose us section start  */

.why-section {
    padding: 60px 0;
    position: relative;
    overflow: hidden;
}

.why-grid {
    display: flex;
    flex-direction: column;
    gap: 0;
}

.why-row {
    align-items: stretch;
    min-height: 320px;
    border-bottom: 1px solid rgba(196, 164, 120, 0.07);
}

.why-row:last-child {
    border-bottom: none;
}

.why-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px 48px 40px 40px;
    height: 100%;
}

.why-block-top {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 28px;
}

.why-index-label {
    font-family: "Cinzel", serif;
    font-size: 24px;
    font-weight: 600;
    color: #C4A478;
    letter-spacing: 3px;
    flex-shrink: 0;
}

.why-accent-line {
    display: block;
    height: 1px;
    flex: 1;
    background: linear-gradient(to right, rgba(196, 164, 120, 0.5), transparent);
    transform-origin: left;
    transform: scaleX(0.35);
    transition: transform 0.55s cubic-bezier(0.16, 1, 0.3, 1);
}

.why-row:hover .why-accent-line {
    transform: scaleX(1);
}

.why-title {
    font-family: "Cormorant Garamond", serif;
    font-size: 32px;
    font-weight: 500;
    color: #e0e0e0;
    line-height: 1.25;
    margin: 0 0 18px;
    transition: color 0.35s ease;
}

.why-row:hover .why-title {
    color: #C4A478;
}

.why-desc {
    font-size: 15px;
    color: #555;
    line-height: 1.8;
    transition: color 0.35s ease;
}

.why-row:hover .why-desc {
    color: #888;
}

.why-desc p {
    margin: 0;
    font-size: 15px;
    line-height: 1.8;
}

.why-img-wrap {
    position: relative;
    width: 100%;
    height: 100%;
    min-height: 320px;
    overflow: hidden;
}

.why-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.8s cubic-bezier(0.25, 1, 0.5, 1);
}

.why-row:hover .why-img {
    transform: scale(1.04);
}

/* Gold overlay tint on image */
.why-img-wrap::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, rgba(196, 164, 120, 0.12) 0%, rgba(8, 8, 8, 0.35) 100%);
    transition: opacity 0.5s ease;
    pointer-events: none;
}

/* Placeholder when no image set */
.why-img-placeholder {
    width: 100%;
    height: 100%;
    min-height: 320px;
    background: linear-gradient(135deg, #111 0%, #1a1510 100%);
    border: 1px solid rgba(196, 164, 120, 0.1);
}


/* why choose us section end  */



/* vastu shastra section start  */

.vastu-section {
    padding: 60px 0;
    position: relative;
    overflow: hidden;
}

.vastu-box {
    position: relative;
    min-height: 450px;
    border-radius: 16px;
    overflow: hidden;
    display: flex;
    align-items: center;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.vastu-box::before {
    content: "";
    position: absolute;
    inset: 0;
    width: 80%;
    background: linear-gradient(to right, rgba(10, 10, 10, 0.96) 0%, rgba(10, 10, 10, 0.88) 30%, rgba(10, 10, 10, 0.55) 60%, rgba(10, 10, 10, 0) 100%);
    pointer-events: none;
}

.vastu-content-wrap {
    position: relative;
    z-index: 2;
    max-width: 640px;
    padding: 0 60px;
}

.vastu-tag {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-family: "Cinzel", serif;
    font-size: 12px;
    font-weight: 600;
    color: #C4A478;
    text-transform: uppercase;
    letter-spacing: 4px;
    margin-bottom: 22px;
}

.vastu-tag::before {
    content: "";
    width: 30px;
    height: 1px;
    background: #C4A478;
    opacity: 0.7;
}

.vastu-title {
    font-family: "Cormorant Garamond", serif;
    font-size: 46px;
    font-weight: 500;
    font-style: italic;
    color: #ffffff;
    line-height: 1.2;
    letter-spacing: 0.3px;
    margin: 0 0 24px;
    text-shadow: 0 2px 18px rgba(0, 0, 0, 0.4);
}

.vastu-desc {
    font-family: "Roboto", sans-serif;
    font-size: 16px;
    font-weight: 300;
    line-height: 1.5;
    letter-spacing: 0.2px;
    color: #d8d8d8 !important;
}

.vastu-desc p {
    margin: 0 0 16px;
}

.vastu-desc p:last-child {
    margin-bottom: 0;
}

/* vastu shastra section end  */


/* gallery section start   */

.gallery-section {
    padding: 60px 0;
    background: #0f0f0f;
    position: relative;
    overflow: hidden;
}

.gallery-filters {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 50px;
}

.gallery-filter-btn {
    background: transparent;
    border: 1px solid rgba(196,164,120,.2);
    color: #999;
    padding: 8px 24px;
    font-family: "Roboto", sans-serif;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 1px;
    cursor: pointer;
    transition: .3s;
}

.gallery-filter-btn:hover,
.gallery-filter-btn.active {
    background: #C4A478;
    border-color: #C4A478;
    color: #000 !important;
}

.gallery-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 15px;
    grid-auto-flow: dense;
}

.gallery-item {
    position: relative;
    overflow: hidden;
    border-radius: 8px;
}

.gallery-item:nth-child(1) {
    grid-column: span 2;
    grid-row: span 2;
}

.gallery-item:nth-child(4) {
    grid-column: span 2;
}

.gallery-img-wrap {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.gallery-img {
    width: 100%;
    height: 320px;
    display: block;
    object-fit: cover;
    transition: transform .8s cubic-bezier(.25,1,.5,1);
}

.gallery-item:nth-child(1) .gallery-img {
    height: 655px;
}

.gallery-item:hover .gallery-img {
    transform: scale(1.08);
}

.gallery-overlay {
    position: absolute;
    inset: 0;
    display: flex;
    justify-content: flex-end;
    flex-direction: column;
    padding: 15px;
    background: linear-gradient(to top, rgba(0,0,0,.85), rgba(0,0,0,.25), transparent);
    opacity: 0;
    transition: opacity .4s ease;
}

.gallery-item:hover .gallery-overlay {
    opacity: 1;
}

.gallery-overlay-cat {
    font-family: "Cinzel", serif;
    font-size: 12px;
    color: #ffffff;
    text-transform: uppercase;
    letter-spacing: 2px;
    transform: translateY(15px);
    transition: .35s;
}

.gallery-item:hover .gallery-overlay-cat {
    transform: translateY(0);
}



/* gallery section end  */



/* video section starts  */

.video-section{
    padding: 60px 0;
}

.video-box{
    position:relative;
    overflow:hidden;
    border-radius:20px;
    background:#000;
    aspect-ratio: 16 / 9;
    max-height: 420px;
    margin: 0 auto;
}

/* YouTube iframe fills the box */
.yt-iframe{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    border:none;
    border-radius:20px;
}

/* video section ends  */



/* testimonials section start  */


.testi-section {
    padding: 60px 0;
    position: relative;
    overflow: hidden;
}


.testi-slider-wrapper {
    opacity: 0;
    transform: translateY(40px);
    will-change: opacity, transform;
    position: relative;
}

.testi-slider .slick-slide { 
    padding: 12px; 
}

.testi-slider .slick-slide:not(.slick-center) .testi-card {
    opacity: 0.98;
    transform: scale(0.93);
    filter: brightness(0.98);
    pointer-events: auto;
}

/* Center card — highlighted */
.testi-slider .slick-center .testi-card {
    background: linear-gradient(150deg, #221e18 0%, #171410 100%);
    border-color: rgba(196, 164, 120, 0.55);
    transform: scale(1.04);
    box-shadow: 0 24px 70px rgba(0,0,0,0.6), 0 0 0 1px rgba(196,164,120,0.12);
    opacity: 1;
    filter: none;
}

/* Card */
.testi-card {
    background: #111010;
    border: 1px solid rgba(196, 164, 120, 0.1);
    border-radius: 16px;
    padding: 36px 28px 30px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), border-color 0.4s ease, box-shadow 0.4s ease, opacity 0.4s ease, filter 0.4s ease;
}

/* Avatar */
.testi-avatar-wrap {
    width: 72px;
    height: 72px;
    border-radius: 50%;
    overflow: hidden;
    border: 2px solid rgba(196, 164, 120, 0.35);
    margin-bottom: 18px;
    flex-shrink: 0;
}

.testi-avatar-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.testi-avatar-fallback {
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, rgba(196,164,120,0.25), rgba(196,164,120,0.08));
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: "Cinzel", serif;
    font-size: 26px;
    font-weight: 600;
    color: #C4A478;
}

/* Name & Designation */
.testi-name {
    font-family: "Cinzel", serif;
    font-size: 15px;
    font-weight: 600;
    color: #fff;
    margin: 0 0 6px 0;
    letter-spacing: 0.8px;
}

.testi-designation {
    font-family: "Roboto", sans-serif;
    font-size: 11px;
    color: #C4A478;
    text-transform: uppercase;
    letter-spacing: 2px;
    display: block;
    margin-bottom: 20px;
}

/* Review */
.testi-review {
    border-top: 1px solid rgba(196, 164, 120, 0.1);
    padding-top: 18px;
}

.testi-review-preview {
    font-family: "Roboto", sans-serif;
    font-size: 14px;
    line-height: 1.8;
    color: #888;
    margin: 0 0 16px 0;
}

/* Read More Button */
.testi-readmore-btn {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    background: transparent;
    border: 1px solid rgba(196, 164, 120, 0.35);
    color: #C4A478;
    padding: 8px 18px;
    font-family: "Roboto", sans-serif;
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    cursor: pointer;
    border-radius: 2px;
    transition: all 0.3s ease;
    margin-top: 4px;
}

.testi-readmore-btn i {
    font-size: 10px; 
    transition: transform 0.3s ease; 
}

.testi-readmore-btn:hover {
    background: #C4A478;
    border-color: #C4A478;
    color: #000;
}

.testi-readmore-btn:hover i { 
    transform: translateX(4px); 
}

/* ── Testimonial Modal ── */
.testi-modal {
    display: none;
    position: fixed;
    inset: 0;
    z-index: 10100;
    align-items: center;
    justify-content: center;
}

.testi-modal.show { 
    display: flex; 
}

.testi-modal-overlay {
    position: absolute;
    inset: 0;
    background: rgba(0,0,0,0.75);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    cursor: pointer;
    animation: testi-fade-in 0.3s ease;
}

.testi-modal-box {
    position: relative;
    z-index: 1;
    background: #0d0c0a;
    border: 1px solid rgba(196,164,120,0.35);
    width: 90%;
    max-width: 560px;
    height: auto;
    max-height: 90vh;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    box-shadow: 0 40px 100px rgba(0,0,0,0.8);
    animation: testi-slide-up 0.4s cubic-bezier(0.16,1,0.3,1);
}

/* Gold top bar */
.testi-modal-top-bar {
    flex-shrink: 0;
    height: 3px;
    background: linear-gradient(90deg, transparent, #C4A478, transparent);
}

/* Close button */
.testi-modal-close {
    position: absolute;
    top: 14px;
    right: 16px;
    background: transparent;
    border: none;
    color: #555;
    font-size: 18px;
    cursor: pointer;
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    transition: all 0.3s ease;
    z-index: 2;
}

.testi-modal-close:hover { 
    background: rgba(196,164,120,0.15); 
    color: #C4A478; 
}

/* Scrollable body area */
.testi-modal-body-wrap {
    flex: 1;
    overflow-y: auto;
    padding: 0 36px 36px;
}
.testi-modal-body-wrap::-webkit-scrollbar { width: 3px; }
.testi-modal-body-wrap::-webkit-scrollbar-track { background: #111; }
.testi-modal-body-wrap::-webkit-scrollbar-thumb { background: #C4A478; }

/* Avatar circle */
.testi-modal-avatar-wrap {
    flex-shrink: 0;
    display: flex;
    justify-content: center;
    padding: 28px 36px 12px;
}
.testi-modal-initial {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background: linear-gradient(135deg, rgba(196,164,120,0.25), rgba(196,164,120,0.08));
    border: 2px solid rgba(196,164,120,0.4);
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: "Cinzel", serif;
    font-size: 22px;
    font-weight: 600;
    color: #C4A478;
}

/* Name / designation */
.testi-modal-name {
    font-family: "Cinzel", serif;
    font-size: 18px;
    font-weight: 600;
    color: #fff;
    text-align: center;
    margin: 0;
    padding: 0 36px 4px;
    letter-spacing: 0.8px;
}
.testi-modal-designation {
    font-size: 12px;
    color: #C4A478;
    text-transform: uppercase;
    letter-spacing: 2px;
    text-align: center;
    display: block;
    padding: 0 36px;
}

/* Divider */
.testi-modal-divider {
    flex-shrink: 0;
    width: 50px;
    height: 1px;
    background: rgba(196,164,120,0.35);
    margin: 20px auto 0;
}

/* Scrollable review text */
.testi-modal-body {
    flex: 0 1 auto;
    min-height: 0;
    overflow-y: auto;
    padding: 20px 36px 36px;
}

.testi-modal-body::-webkit-scrollbar {
    width: 3px; 
}

.testi-modal-body::-webkit-scrollbar-track { 
    background: #111; 
}

.testi-modal-body::-webkit-scrollbar-thumb { 
    background: #C4A478; 
}

.testi-modal-body p {
    font-size: 16px;
    line-height: 1.85;
    color: #aaa;
    margin: 0;
}

/* Animations */
@keyframes testi-fade-in  { from { opacity:0 } to { opacity:1 } }
@keyframes testi-slide-up { from { opacity:0; transform:translateY(30px) } to { opacity:1; transform:translateY(0) } }

/* Circular Nav Buttons */
.testi-nav {
    display: flex;
    justify-content: center;
    gap: 14px;
    margin-top: 36px;
}
.testi-btn {
    width: 46px;
    height: 46px;
    border-radius: 50%;
    background: transparent;
    border: 1px solid rgba(196, 164, 120, 0.35);
    color: rgba(196, 164, 120, 0.6);
    font-size: 14px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
}
.testi-btn:hover {
    background: #C4A478;
    border-color: #C4A478;
    color: #000;
}

/* testimonial section end  */



/* cta section start   */

.cta-section {
    background: url(./assets/img/cta-back.webp);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    background-attachment: fixed;
}

.cta-section::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgb(0 0 0 / 60%);
    z-index: 1;
}

.cta-contain-fuil {
    padding: 0 !important;
}

.cta-card {
    position: relative;
    border: 1px solid rgba(196, 164, 120, 0.22);
    padding: 30px;
    text-align: center;
    overflow: hidden;
}

.cta-content-card {
    position: relative;
    z-index: 99;
}

/* Decorative glows */
.cta-glow {
    position: absolute;
    width: 260px;
    height: 260px;
    border-radius: 50%;
    filter: blur(80px);
    pointer-events: none;
}

/* Pill tag */
.cta-tag-wrap { 
    margin-bottom: 28px; 
}

.cta-tag {
    display: inline-block;
    border: 1px solid rgba(196, 164, 120, 0.35);
    color: #C4A478;
    background: #0f0f0f;
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 2.5px;
    padding: 7px 20px;
    border-radius: 100px;
}

.cta-heading {
    font-size: 58px;
    font-weight: 400;
    line-height: 1.15;
    color: #fff;
    margin: 0 0 10px;
}

.cta-heading-accent {
    color: #C4A478;
    margin-bottom: 25px;
}

/* Subtext */
.cta-subtext {
    font-family: "Roboto", sans-serif;
    font-size: 16px;
    line-height: 1.8;
    color: #777;
    max-width: 560px;
    margin: 0 auto 44px;
}

/* Actions row */
.cta-actions {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 28px;
    flex-wrap: wrap;
}

/* Primary button */
.cta-btn-primary {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: #C4A478;
    color: #0a0a0a !important;
    font-family: "Roboto", sans-serif;
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    padding: 16px 36px;
    border-radius: 100px;
    text-decoration: none;
    transition: all 0.3s ease;
}

.cta-btn-primary i { 
    transition: transform 0.3s ease; 
}

.cta-btn-primary:hover {
    background: #d4b48a;
    box-shadow: 0 10px 40px rgba(196, 164, 120, 0.35);
    color: #0a0a0a;
    text-decoration: none;
}
.cta-btn-primary:hover i { 
    transform: translateX(5px); 
}


 /* CTA section ends */


/* footer section start  */

.footer-section {
    background: #0a0a0a !important;
    color: #ccc;
    font-family: "Roboto", sans-serif;
    position: relative;
    z-index: 1;
    padding: 0 !important;
    border: none !important;
}

.footer-section,
.footer-section::before,
.footer-section::after {
    box-sizing: border-box;
}

.footer-section-main {
    padding: 80px 0 60px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
    background: #0a0a0a !important;
}

.footer-section-grid {
    gap: 40px 0;
}

.footer-section-brand {
    padding-right: 40px;
}

.footer-section-logo {
    margin-bottom: 24px;
}

.footer-section-logo-img {
    max-width: 140px;
    height: auto;
    display: block;
}

.footer-section-tagline {
    font-size: 14px;
    line-height: 1.8;
    max-width: 300px;
    margin: 0;
}

.footer-section-tagline p {
    font-size: 14px;
    line-height: 1.8;
    margin-bottom: 0;
}

.footer-brochure-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: 20px;
    background: transparent;
    border: 1px solid rgba(196, 164, 120, 15%);
    color: #C4A478 !important;
    padding: 9px 18px;
    font-family: "Roboto", sans-serif;
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    border-radius: 2px;
    text-decoration: none;
    transition: all 0.3s ease;
}

.footer-brochure-btn i {
    font-size: 11px;
    transition: transform 0.3s ease;
}

.footer-brochure-btn:hover {
    background: #C4A478;
    border-color: #C4A478;
    color: #000 !important;
}

.footer-brochure-btn:hover i {
    transform: translateY(2px);
}

.footer-section-title {
    font-family: "Cinzel", serif !important;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 3px;
    color: #C4A478 !important;
    margin-bottom: 24px;
    padding-bottom: 12px;
    border-bottom: 1px solid rgba(196, 164, 120, 0.3);
    width: fit-content;
}

.footer-section .footer-quick-links ul, 
.footer-section .footer-service-links ul {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    background: #0a0a0a !important;
}

.footer-section .footer-quick-links li,
.footer-section .footer-service-links li {
    border: none !important;
    padding: 0 !important;
    margin-bottom: 10px !important;
    background: transparent !important;
    display: block !important;
    width: 100% !important;
}

.footer-section .footer-quick-links li a, 
.footer-section .footer-service-links li a {
    font-size: 14px !important;
    background-color: transparent !important;
    font-weight: 400 !important;
}

.footer-section-contact-list {
    list-style: none !important;
    padding: 0;
    margin: 0 0 28px;
}

.footer-section-contact-item {
    display: flex !important;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 14px !important;
    font-size: 14px;
    color: #888;
    line-height: 1.6;
    background: transparent !important;
}

.footer-section-contact-icon {
    color: #C4A478;
    font-size: 14px;
    margin-top: 3px;
    flex-shrink: 0;
}

.footer-section-contact-item a, .footer-section-contact-item p {
    font-size: 14px !important;
    background-color: transparent !important;
    font-weight: 400 !important;
    margin-bottom: 10px !important;
}

.footer-section-contact-item a:hover {
    color: #C4A478 !important;
}

.footer-section-social {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin-top: 4px;
}

.footer-section-social-link {
    width: 40px;
    height: 40px;
    border: 1px solid rgba(196, 164, 120, 0.35) !important;
    border-radius: 50%;
    display: flex !important;
    align-items: center;
    justify-content: center;
    color: #999 !important;
    font-size: 14px;
    text-decoration: none !important;
    background: transparent !important;
    transition: all 0.3s ease;
    line-height: 1;
}

.footer-section-social-link:hover {
    background: #C4A478 !important;
    border-color: #C4A478 !important;
    color: #000 !important;
    transform: translateY(-3px);
}

.footer-section-social-link i {
    pointer-events: none;
}

.footer-section-bottom {
    padding: 15px 0;
    background: #060606 !important;
    border-top: 1px solid rgba(255, 255, 255, 0.04);
}

.footer-section-bottom-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 10px;
}

.footer-section-copy,
.footer-section-credit {
    font-size: 13px;
    color: #555 !important;
    margin: 0;
}

.footer-section-credit a {
    color: #C4A478 !important;
    font-size: 13px;
    text-decoration: none !important;
    transition: opacity 0.3s ease;
}

.footer-section-credit a:hover {
    opacity: 0.75;
}

/* footer section end  */



/* Enquire Modal Styles */
.enquire-modal {
    display: none;
    position: fixed;
    z-index: 10000;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgba(0, 0, 0, 53%);
    backdrop-filter: blur(5px);
    -webkit-backdrop-filter: blur(5px);
    opacity: 0;
    transition: opacity 0.3s ease;
}

.enquire-modal.show {
    opacity: 1;
}

.enquire-modal-content {
    background: #0a0a0a;
    margin: 5% auto;
    padding: 25px;
    border: 1px solid #C4A478;
    width: 90%;
    max-width: 550px;
    position: relative;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.8);
    transform: translateY(-20px);
    transition: transform 0.3s ease;
}

.enquire-modal.show .enquire-modal-content {
    transform: translateY(0);
}

.enquire-modal-close {
    color: #C4A478;
    position: absolute;
    top: 5px;
    right: 20px;
    font-size: 28px;
    font-weight: bold;
    cursor: pointer;
    transition: color 0.3s ease;
}

.enquire-modal-close:hover,
.enquire-modal-close:focus {
    color: #ffffff;
    text-decoration: none;
}

.enquire-modal-header {
    text-align: center;
    margin-bottom: 20px;
}

/* CF7 Form Styles in Modal */
.enquire-modal-body label {
    font-size: 14px;
    color: #ccc;
    margin-bottom: 6px;
    display: block;
    text-align: left;
}

.enquire-modal-body .wpcf7-form-control-wrap input,
.enquire-modal-body .wpcf7-form-control-wrap textarea,
.enquire-modal-body .wpcf7-form-control-wrap select {
    width: 100%;
    background: #181614;
    border: 1px solid rgba(196, 164, 120, 0.3);
    color: #fff;
    padding: 12px 15px;
    margin-bottom: 4px;
    font-family: "Roboto", sans-serif;
    transition: border-color 0.3s ease;
    box-sizing: border-box;
}

.enquire-modal-body .wpcf7-form-control-wrap input,
.enquire-modal-body .wpcf7-form-control-wrap select {
    height: 48px;
}

.enquire-modal-body .wpcf7-form-control-wrap textarea {
    height: 100px;
    resize: vertical;
}

.enquire-modal-body .wpcf7-form-control-wrap input:focus,
.enquire-modal-body .wpcf7-form-control-wrap textarea:focus,
.enquire-modal-body .wpcf7-form-control-wrap select:focus {
    outline: none;
    border-color: #C4A478;
}

.enquire-modal-body .wpcf7-submit {
    background: #C4A478;
    border: 1px solid #C4A478;
    color: #000 !important;
    padding: 14px 30px;
    font-size: 14px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    width: 100%;
    cursor: pointer;
    transition: all 0.3s ease;
    margin-top: 10px;
}

.enquire-modal-body .wpcf7-submit:hover {
    background: transparent;
    color: #fff !important;
}

.wpcf7-spinner {
    display: none;
}

.enquire-modal-body .wpcf7 form.invalid .wpcf7-response-output {
    color: #fff;
    padding: 0;
    margin: 0;
}






/* Inner pages banner start  */

.page-banner {
    position: relative;
    height: 100vh;
    min-height: 620px;
    background-color: #080705;
    display: flex;
    align-items: flex-end;
    padding-bottom: 80px;
    overflow: hidden;
}
.page-banner::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 0;
    background-image: var(--banner-img);
    background-size: cover;
    background-position: center;
    transform: scale(1.15);
    animation: bannerZoom 9s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}
@keyframes bannerZoom {
    to { transform: scale(1); }
}
.page-banner-overlay {
    position: absolute;
    inset: 0;
    z-index: 1;
    background: linear-gradient(
        to top,
        rgba(0,0,0,0.85) 0%,
        rgba(0,0,0,0.45) 50%,
        rgba(0,0,0,0.2) 100%
    );
    opacity: 0;
    animation: bannerOverlayIn 1.6s ease-out 0.1s forwards;
}
@keyframes bannerOverlayIn {
    to { opacity: 1; }
}

.page-banner .container,
.page-banner .row {
    height: 100%;
}

.page-banner .container,
.page-banner .row,
.page-banner .col-12 {
    position: relative;
    z-index: 2;
}

.page-banner-content { padding-bottom: 20px; }
.page-banner-eyebrow {
    display: inline-block;
    font-family: "Roboto", sans-serif;
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 4px;
    color: #C4A478;
    margin-bottom: 18px;
}
.page-banner-title {
    font-family: "Cormorant Garamond", serif !important;
    font-size: 72px;
    font-weight: 400;
    line-height: 1.1;
    color: #fff !important;
    margin: 0 0 22px;
}
.page-banner-title em {
    font-style: italic;
    color: #C4A478 !important;
}
.page-banner-sub {
    font-family: "Roboto", sans-serif;
    font-size: 16px;
    color: rgba(255,255,255,0.65) !important;
    max-width: 500px;
    line-height: 1.7;
    margin: 0;
}
.page-banner-line {
    width: 60px;
    height: 2px;
    background: #C4A478;
    margin-top: 28px;
}

/* Initial-load reveal animation for page-banner content */
.au-anim {
    opacity: 0;
    transform: translateY(38px) scale(0.97);
    filter: blur(6px);
    transition: opacity 1s cubic-bezier(0.16, 1, 0.3, 1),
                transform 1s cubic-bezier(0.16, 1, 0.3, 1),
                filter 1s cubic-bezier(0.16, 1, 0.3, 1);
}
.au-anim.au-in {
    opacity: 1;
    transform: translateY(0) scale(1);
    filter: blur(0);
}

/* Eyebrow gets a subtle letter-spacing expand alongside the base fade */
.page-banner-eyebrow.au-anim {
    letter-spacing: 0.5px;
    transition: opacity 0.8s ease,
                transform 0.8s cubic-bezier(0.16, 1, 0.3, 1),
                filter 0.8s ease,
                letter-spacing 1s cubic-bezier(0.16, 1, 0.3, 1);
}
.page-banner-eyebrow.au-anim.au-in {
    letter-spacing: 4px;
}

/* Accent line reveals as a left-to-right sweep instead of a slide */
.page-banner-line.au-anim {
    transform: scaleX(0);
    transform-origin: left center;
    filter: none;
    transition: opacity 0.5s ease,
                transform 0.9s cubic-bezier(0.65, 0, 0.35, 1);
}
.page-banner-line.au-anim.au-in {
    transform: scaleX(1);
}


/* page banner end  */



/* inner page about us section start  */

.inner-about-section {
    position: relative;
    padding: 80px 0;
    overflow: hidden;
}

.inner-about-tag {
    display: inline-block;
    font-size: 18px;
    font-weight: 500;
    color: #d4a24b;
    margin-bottom: 20px;
    font-family: "Cormorant Garamond", serif;
}

.inner-about-content h1, .inner-about-content h2, 
.inner-about-content h3, .inner-about-content h4, 
.inner-about-content h5, .inner-about-content h6 {
    font-size: 40px;
    line-height: 1.2;
    font-weight: 400;
    margin-bottom: 25px;
    color: #fff;
}

.inner-about-heading span {
    color: #d4a24b;
}

.inner-about-description {
    font-size: 16px;
    line-height: 1.9;
    color: #666;
    margin-bottom: 35px;
}

.inner-about-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 15px 35px;
    background: #222;
    color: #fff;
    text-decoration: none;
    border-radius: 50px;
    transition: 0.35s;
    font-weight: 500;
}

.inner-about-button:hover {
    background: #d4a24b;
    color: #fff;
}

.inner-about-image-wrapper {
    position: relative;
    min-height: 560px;
}

.inner-about-image-left {
    position: absolute;
    top: 0;
    left: 0;
    width: 280px;
    z-index: 2;
}

.inner-about-image-left img {
    width: 100%;
    height: 330px;
    object-fit: cover;
    border-radius: 6px;
    display: block;
}

.inner-about-image-right {
    position: absolute;
    right: 0;
    bottom: 0;
    width: 330px;
    z-index: 2;
}

.inner-about-image-right img {
    width: 100%;
    height: 360px;
    object-fit: cover;
    border-radius: 6px;
    display: block;
}

.inner-about-dots {
    position: absolute;
    bottom: 5px;
    left: 50px;
    width: 185px;
    z-index: 1;
    opacity: .7;
    animation: dotsMove 5s ease-in-out infinite;
}

@keyframes dotsMove {

    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-18px);
    }
}

.inner-about-wave {
    position: absolute;
    right: -20px;
    bottom: 70px;
    width: 120px;
    z-index: 1;
    opacity: .8;
}



/* what we do section  */


.inner-what-we-do-section {
    padding: 80px 0;
}

/* Don't show wave on the last item */
.speciality-col:not(:last-child)::after {
    content: "";
    position: absolute;
    top: 60px; /* Adjust based on icon size */
    right: -25%;
    width: 50%;
    height: 40px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 20' preserveAspectRatio='none'%3E%3Cpath d='M0,10 Q25,0 50,10 T100,10' stroke='%23d9d9d9' stroke-width='1' fill='none'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: contain;
    z-index: 1;
}

.inner-what-we-do-icon-wrap {
    width: 130px;
    height: 130px;
    margin: 0 auto;
    border: 1px solid #ffffff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    z-index: 2;
    background: transparent;
    padding: 8px;
}

.inner-icon {
    width: 100%;
    height: 100%;
    background: #544116;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: 0.3s ease;
}

.inner-icon img {
    width: 50px; /* Icon Size */
    height: auto;
    object-fit: contain;
}

.inner-what-we-do-card.is-red .inner-icon {
    background: #554216;
}

.inner-what-we-do-card.is-red .inner-icon {
    background: #554216;
}

.inner-what-we-do-card.is-red .inner-icon img {
    filter: brightness(0) invert(1); /* Makes black icons white */
}

.inner-what-we-do-number {
    display: block;
    font-size: 30px;
    font-weight: 700;
    margin: 20px 0 10px;
    color: #ffffff;
    text-align: center;
}

.inner-what-we-do-title {
    font-size: 16px;
    font-weight: 600;
    color: #ffffff;
    line-height: 1.4;
    text-align: center;
    margin: 0 auto 20px;
    max-width: 250px;
}

.inner-what-we-do-content p {
    font-size: 14px;
    color: #666;
    text-align: center;
    line-height: 1.6;
    padding: 0 10px;
}


/* why choose us  */


.inner-about-why-section {
    padding: 80px 0;
    background: #080808;
    position: relative;
    overflow: hidden;
}

.inner-about-why-section::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image:
        radial-gradient(ellipse at 90% 15%, rgba(196, 164, 120, 0.05) 0%, transparent 55%),
        radial-gradient(ellipse at 8% 85%, rgba(196, 164, 120, 0.04) 0%, transparent 50%);
    pointer-events: none;
    z-index: 0;
}

.inner-about-why-header-row {
    margin-bottom: 70px;
}

.inner-about-why-tag {
    display: inline-block;
    font-family: "Cinzel", serif;
    font-size: 11px;
    font-weight: 600;
    color: #C4A478;
    text-transform: uppercase;
    letter-spacing: 4px;
    margin-bottom: 20px;
    position: relative;
    padding-left: 30px;
}

.inner-about-why-tag::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    width: 20px;
    height: 1px;
    background: #C4A478;
    opacity: 0.7;
    transform: translateY(-50%);
}

.inner-about-why-heading {
    font-family: "Cormorant Garamond", serif;
    font-size: 48px;
    font-weight: 400;
    color: #ffffff;
    line-height: 1.15;
    margin-bottom: 20px;
}

.inner-about-why-subtext {
    font-size: 15px;
    color: #666;
    line-height: 1.85;
    max-width: 420px;
    margin: 0;
}

.inner-about-why-list-row {
    border-top: 1px solid rgba(255, 255, 255, 0.05);
}

.inner-about-why-item {
    padding: 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
    position: relative;
}

.inner-about-why-item-inner {
    display: flex;
    align-items: center;
    padding: 48px 0;
    position: relative;
    transition: padding-left 0.4s ease;
}

.inner-about-why-item-inner::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0;
    height: 1px;
    background: linear-gradient(to right, rgba(196, 164, 120, 0.7), transparent);
    transition: width 0.65s cubic-bezier(0.16, 1, 0.3, 1);
}

.inner-about-why-item:hover .inner-about-why-item-inner::after {
    width: 100%;
}

.inner-about-why-number {
    flex: 0 0 160px;
    text-align: left;
}

.inner-about-why-num-text {
    display: block;
    font-family: "Cinzel", serif;
    font-size: 72px;
    font-weight: 700;
    line-height: 1;
    color: transparent;
    -webkit-text-stroke: 1.5px rgba(196, 164, 120, 0.2);
    text-stroke: 1.5px rgba(196, 164, 120, 0.2);
    transition: -webkit-text-stroke-color 0.4s ease;
    user-select: none;
}

.inner-about-why-item:hover .inner-about-why-num-text {
    -webkit-text-stroke-color: rgba(196, 164, 120, 0.55);
}

.inner-about-why-divider {
    flex: 0 0 1px;
    width: 1px;
    height: 72px;
    background: rgba(196, 164, 120, 0.2);
    transition: background 0.4s ease, height 0.4s ease;
}

.inner-about-why-item:hover .inner-about-why-divider {
    background: rgba(196, 164, 120, 0.5);
    height: 90px;
}

.inner-about-why-content {
    flex: 1;
    padding-left: 56px;
    display: flex;
    align-items: center;
    gap: 56px;
}

.inner-about-why-title {
    font-family: "Cormorant Garamond", serif;
    font-size: 27px;
    font-weight: 500;
    color: #e0e0e0;
    line-height: 1.3;
    flex: 0 0 260px;
    margin: 0;
    transition: color 0.35s ease;
}

.inner-about-why-item:hover .inner-about-why-title {
    color: #C4A478;
}

.inner-about-why-desc {
    flex: 1;
    font-size: 15px;
    color: #5a5a5a;
    line-height: 1.8;
    transition: color 0.35s ease;
}

.inner-about-why-item:hover .inner-about-why-desc {
    color: #888;
}

.inner-about-why-desc p {
    margin: 0;
    font-size: 15px;
    line-height: 1.8;
    color: inherit;
}


/* team section  */


.team-slider-section {
    padding: 80px 0;
}

.team-card {
    padding: 0 10px; /* Space between slides */
}

.team-card-inner {
    position: relative;
    border-radius: 20px; /* Matches your image */
    overflow: hidden;
    height: 400px; /* Adjust height as needed */
}

.team-card-inner img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* Dark gradient at the bottom for text readability */
.team-info-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 40px 20px 20px;
    background: linear-gradient(transparent, rgba(0, 0, 0, 0.8));
    text-align: center;
}

.team-name {
    color: #ffffff;
    font-size: 25px;
    font-weight: 600;
    margin: 0;
}

.team-designation {
    color: #cccccc;
    font-size: 16px;
    margin: 5px 0 0;
}





/* ============================================================
   CONTACT US PAGE
   ============================================================ */

.cu-section {
    padding: 80px 0;
}

/* ── Section 1: Info Cards ── */
.cu-info-section {
    background: #0a0a0a;
}

.cu-intro-text {
    font-family: "Roboto", sans-serif;
    font-size: 15px;
    line-height: 1.85;
    color: #777 !important;
    max-width: 560px;
    margin: 0 auto;
}

.cu-info-card {
    background: linear-gradient(140deg, #131109, #0d0c0a);
    border: 1px solid rgba(196, 164, 120, 0.14);
    border-radius: 16px;
    padding: 40px 32px;
    height: 100%;
    text-align: center;
    transition: border-color 0.35s ease, transform 0.35s ease;
}

.cu-info-card:hover {
    border-color: rgba(196, 164, 120, 0.45);
    transform: translateY(-6px);
}

.cu-info-icon {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: rgba(196, 164, 120, 0.1);
    border: 1px solid rgba(196, 164, 120, 0.25);
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 20px;
    font-size: 20px;
    color: #C4A478;
    transition: background 0.35s ease, border-color 0.35s ease;
}

.cu-info-card:hover .cu-info-icon {
    background: rgba(196, 164, 120, 0.18);
    border-color: rgba(196, 164, 120, 0.5);
}

.cu-info-title {
    font-family: "Cinzel", serif !important;
    font-size: 15px;
    font-weight: 600;
    color: #fff !important;
    margin-bottom: 10px;
    letter-spacing: 0.5px;
}

.cu-info-text {
    font-family: "Roboto", sans-serif;
    font-size: 14px;
    line-height: 1.75;
    color: #888 !important;
    margin: 0;
}

.cu-info-link {
    display: inline-block;
    text-decoration: none !important;
    transition: color 0.3s ease;
}

.cu-info-link:hover {
    color: #C4A478 !important;
}


/* ── Section 2: Form + Sidebar ── */
.cu-form-section {
    background: #060504;
}

/* Form wrap */
.cu-form-wrap {
    padding-right: 20px;
}

.cu-form-sub {
    font-family: "Roboto", sans-serif;
    font-size: 15px;
    line-height: 1.8;
    color: #666 !important;
    margin-bottom: 36px;
}

/* CF7 styling within contact page */
.cu-cf7-wrap label {
    font-family: "Roboto", sans-serif;
    font-size: 13px;
    font-weight: 500;
    color: #aaa;
    display: block;
    margin-bottom: 8px;
    text-transform: uppercase;
    letter-spacing: 0.8px;
}

.cu-cf7-wrap .wpcf7-form-control-wrap input,
.cu-cf7-wrap .wpcf7-form-control-wrap textarea,
.cu-cf7-wrap .wpcf7-form-control-wrap select {
    width: 100%;
    background: rgba(196, 164, 120, 0.04);
    border: 1px solid rgba(196, 164, 120, 0.2);
    color: #fff;
    padding: 14px 18px;
    font-family: "Roboto", sans-serif;
    font-size: 14px;
    border-radius: 4px;
    transition: border-color 0.3s ease, background 0.3s ease;
    box-sizing: border-box;
}

.cu-cf7-wrap .wpcf7-form-control-wrap input,
.cu-cf7-wrap .wpcf7-form-control-wrap select {
    height: 52px;
}

.cu-cf7-wrap .wpcf7-form-control-wrap textarea {
    height: 130px;
    resize: vertical;
}

.cu-cf7-wrap .wpcf7-form-control-wrap input:focus,
.cu-cf7-wrap .wpcf7-form-control-wrap textarea:focus,
.cu-cf7-wrap .wpcf7-form-control-wrap select:focus {
    outline: none;
    border-color: #C4A478;
    background: rgba(196, 164, 120, 0.07);
}

.cu-cf7-wrap .wpcf7-form-control-wrap select option {
    background: #0f0f0f;
    color: #fff;
}

.cu-cf7-wrap .wpcf7-submit {
    background: #C4A478;
    border: 1px solid #C4A478;
    color: #000 !important;
    padding: 16px 40px;
    font-family: "Roboto", sans-serif;
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    cursor: pointer;
    border-radius: 4px;
    transition: all 0.3s ease;
    width: 100%;
    margin-top: 8px;
}

.cu-cf7-wrap .wpcf7-submit:hover {
    background: transparent;
    color: #C4A478 !important;
}

.cu-cf7-wrap .wpcf7-not-valid-tip {
    font-size: 12px;
    color: #e07070 !important;
    margin-top: 4px;
    display: block;
}

.cu-cf7-wrap .wpcf7-response-output {
    border: 1px solid rgba(196, 164, 120, 0.35) !important;
    background: rgba(196, 164, 120, 0.06);
    color: #C4A478 !important;
    padding: 12px 16px !important;
    border-radius: 4px;
    font-size: 13px;
    margin-top: 16px !important;
}

/* Sidebar */
.cu-sidebar {
    display: flex;
    flex-direction: column;
    gap: 0;
}

.cu-sidebar-block {
    padding: 28px 30px;
    border: 1px solid rgba(196, 164, 120, 0.14);
    border-bottom: none;
    background: linear-gradient(140deg, #131109, #0d0c0a);
}

.cu-sidebar-block:first-child {
    border-radius: 16px 16px 0 0;
}

.cu-sidebar-block:last-child {
    border-bottom: 1px solid rgba(196, 164, 120, 0.14);
    border-radius: 0 0 16px 16px;
}

.cu-sidebar-title {
    font-family: "Cinzel", serif !important;
    font-size: 13px;
    font-weight: 600;
    color: #C4A478 !important;
    text-transform: uppercase;
    letter-spacing: 2px;
    margin-bottom: 18px;
    padding-bottom: 10px;
    border-bottom: 1px solid rgba(196, 164, 120, 0.15);
}

.cu-sidebar-text {
    font-family: "Roboto", sans-serif;
    font-size: 13px;
    line-height: 1.75;
    color: #666 !important;
    margin-bottom: 16px;
}

/* Hours */
.cu-hours-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.cu-hours-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 8px 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.04);
    background: transparent !important;
}

.cu-hours-item:last-child {
    border-bottom: none;
}

.cu-hours-day {
    font-family: "Roboto", sans-serif;
    font-size: 14px;
    color: #999;
}

.cu-hours-time {
    font-family: "Roboto", sans-serif;
    font-size: 16px;
    color: #C4A478;
    font-weight: 500;
}

/* Social row */
.cu-social-row {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.cu-social-btn {
    width: 42px;
    height: 42px;
    border: 1px solid rgba(196, 164, 120, 0.3);
    border-radius: 50%;
    display: flex !important;
    align-items: center;
    justify-content: center;
    color: #888 !important;
    font-size: 15px;
    text-decoration: none !important;
    background: transparent !important;
    transition: all 0.3s ease;
}

.cu-social-btn:hover {
    background: #C4A478 !important;
    border-color: #C4A478 !important;
    color: #000 !important;
    transform: translateY(-3px);
}

/* Response badge */
.cu-response-badge {
    display: flex;
    align-items: center;
    gap: 14px;
}

.cu-badge-icon {
    font-size: 22px;
    color: #C4A478;
    flex-shrink: 0;
}

.cu-badge-title {
    display: block;
    font-family: "Cinzel", serif;
    font-size: 13px;
    font-weight: 600;
    color: #fff;
    letter-spacing: 0.5px;
    margin-bottom: 3px;
}

.cu-badge-sub {
    font-family: "Roboto", sans-serif;
    font-size: 12px;
    color: #666;
}


/* ── Location Section ── */
.cu-location-section {
    background: #0a0a0a;
    border-top: 1px solid rgba(196, 164, 120, 0.08);
}

.cu-location-content {
    border-radius: 16px;
}

.cu-location-content h1,
.cu-location-content h2,
.cu-location-content h3,
.cu-location-content h4,
.cu-location-content h5,
.cu-location-content h6 {
    font-family: "Cormorant Garamond", serif !important;
    color: #fff !important;
    margin-bottom: 14px;
}

.cu-location-content p {
    font-family: "Roboto", sans-serif;
    font-size: 15px;
    line-height: 1.85;
    color: #888 !important;
    margin-bottom: 14px;
}

.cu-location-content a {
    color: #C4A478 !important;
    text-decoration: none !important;
    transition: opacity 0.3s ease;
}

.cu-location-content a:hover {
    opacity: 0.75;
}

.cu-location-content iframe {
    width: 100%;
    border: none;
    border-radius: 10px;
    display: block;
    margin-top: 8px;
    filter: grayscale(60%) brightness(0.8) contrast(1.1);
    transition: filter 0.4s ease;
}

.cu-location-content iframe:hover { filter: grayscale(20%) brightness(0.95) contrast(1.05); }


/* ── Service Page ── */

.service-page-section {
    padding: 100px 0;
    background-color: #0f0f0f;
    position: relative;
    overflow: hidden;
}

.service-page-section .row {
    row-gap: 30px;
}

.service-page-anim-item {
    opacity: 0;
    transform: translateY(40px);
    transition: opacity 0.8s ease, transform 0.8s ease;
}

.service-page-anim-item.service-page-anim-visible {
    opacity: 1;
    transform: translateY(0);
}

.service-page-card {
    position: relative;
    background: linear-gradient(145deg, #181614 0%, #0a0a0a 100%);
    border: 1px solid rgba(196, 164, 120, 0.14);
    padding: 40px 32px 36px;
    height: 100%;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    margin-bottom: 30px;
    transition: border-color 0.4s ease, transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), box-shadow 0.4s ease;
    border-radius: 0;
}

.service-page-card::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, rgba(196,164,120,0.06) 0%, transparent 65%);
    opacity: 0;
    transition: opacity 0.4s ease;
    pointer-events: none;
}

.service-page-card:hover {
    border-color: rgba(196, 164, 120, 0.55);
    transform: translateY(-6px);
    box-shadow: 0 24px 60px rgba(0, 0, 0, 0.35), 0 0 0 1px rgba(196, 164, 120, 0.12);
}

.service-page-card:hover::after {
    opacity: 1;
}

.service-page-card::before {    /* Golden Corner */
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 40px 40px 0;
    border-color: transparent rgba(196, 164, 120, 0.22) transparent transparent;
    transition: border-color 0.4s ease;
    z-index: 10;
}

.service-page-card:hover::before {
    border-color: transparent rgba(196, 164, 120, 0.65) transparent transparent;
}

.service-page-img-wrap {
    position: relative;
    width: 64px;
    height: 64px;
    margin-bottom: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    border-radius: 16px;
    background: rgba(196, 164, 120, 0.1);
    border: 1px solid rgba(196, 164, 120, 0.2);
    transition: background 0.4s ease, border-color 0.4s ease;
}

.service-page-card:hover .service-page-img-wrap {
    background: rgba(196, 164, 120, 0.18);
    border-color: rgba(196, 164, 120, 0.45);
}

.service-page-img {
    width: 38px;
    height: 38px;
    object-fit: contain;
    position: relative;
    z-index: 1;
    filter: brightness(0) saturate(100%) invert(75%) sepia(28%) saturate(500%) hue-rotate(6deg) brightness(100%);
    transition: filter 0.4s ease, transform 0.4s ease;
}

.service-page-card:hover .service-page-img {
    filter: brightness(0) saturate(100%) invert(82%) sepia(40%) saturate(400%) hue-rotate(6deg) brightness(105%);
    transform: scale(1.08);
}

.service-page-img-placeholder {
    display: none;
}

.service-page-overlay {
    display: none;
}

.service-page-content {
    display: flex;
    flex-direction: column;
    flex: 1;
    padding: 0;
}

.service-page-title {
    font-size: 22px;
    font-weight: 500;
    line-height: 1.3;
    margin-bottom: 12px;
    letter-spacing: 0.3px;
    transition: color 0.3s ease;
    margin-top: 0;
}

.service-page-title a {
    color: #ffffff;
    text-decoration: none;
    font-family: "Cinzel", serif !important;
    transition: color 0.3s ease;
}

.service-page-card:hover .service-page-title a {
    color: #C4A478;
}

.service-page-desc p {
    font-family: "Roboto", sans-serif;
    font-size: 14px;
    color: #888;
    line-height: 1.75;
    margin-bottom: 24px;
    flex: 1;
}

.service-page-desc ul {
    list-style: none;
    padding: 0;
    margin: 0 0 15px;
}

.service-page-desc ul li {
    position: relative;
    padding-left: 24px;
    margin-bottom: 10px;
    color: #888;
    line-height: 1.6;
}

.service-page-desc ul li:last-child {
    margin-bottom: 0;
}

.service-page-desc ul li::before {
    content: "\f00c";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    position: absolute;
    left: 0;
    top: 2px;
    color: #C4A478;
    font-size: 13px;
    transition: transform 0.3s ease;
}

.service-page-card:hover .service-page-desc ul li::before {
    transform: scale(1.1);
    color: #d4b488;
}


/* ============================================================
   GALLERY PAGE  
   ============================================================ */

.glp-section {
    padding: 110px 0 120px;
    background-color: #0f0f0f;
    position: relative;
    overflow: hidden;
}

/* ── Filter Tabs ── */
.glp-filters {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 56px;
}

.glp-filter-btn {
    background: transparent;
    border: 1px solid rgba(196, 164, 120, 0.2);
    color: #999;
    padding: 8px 24px;
    font-family: "Roboto", sans-serif;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 1px;
    cursor: pointer;
    transition: all 0.3s ease;
    border-radius: 0;
}

.glp-filter-btn:hover,
.glp-filter-btn.active {
    background: #C4A478;
    color: #000 !important;
    border-color: #C4A478;
}

/* ── Masonry Grid (4 columns) ── */
.glp-grid {
    column-count: 4;
    column-gap: 18px;
}

.glp-item {
    display: inline-block;
    width: 100%;
    break-inside: avoid;
    margin-bottom: 18px;
}

.glp-item.glp-hidden {
    display: none;
}

/* ── View More ── */
.glp-more-wrap {
    margin-top: 34px;
}

.glp-more-btn {
    cursor: pointer;
}

.glp-card {
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(196, 164, 120, 0.14);
    background: linear-gradient(145deg, #181614 0%, #0a0a0a 100%);
    transition: border-color 0.4s ease, transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), box-shadow 0.4s ease;
}

.glp-card:hover {
    border-color: rgba(196, 164, 120, 0.55);
    transform: translateY(-6px);
    box-shadow: 0 24px 60px rgba(0, 0, 0, 0.35), 0 0 0 1px rgba(196, 164, 120, 0.12);
}

.glp-img-wrap {
    position: relative;
    width: 100%;
    max-height: 260px;
    overflow: hidden;
    display: block;
    cursor: pointer;
}

.glp-img-wrap:focus-visible {
    outline: 2px solid #C4A478;
    outline-offset: -2px;
}

.glp-img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: transform 0.8s cubic-bezier(0.25, 1, 0.5, 1);
}

.glp-card:hover .glp-img {
    transform: scale(1.08);
}

.glp-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0,0,0,0.88) 0%, rgba(0,0,0,0.25) 55%, transparent 100%);
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 26px;
    opacity: 0;
    transition: opacity 0.4s ease;
}

.glp-card:hover .glp-overlay {
    opacity: 1;
}

.glp-cat {
    font-family: "Cinzel", serif;
    font-size: 10px;
    color: #C4A478;
    text-transform: uppercase;
    letter-spacing: 2px;
    margin-bottom: 8px;
    opacity: 0;
    transform: translateY(14px);
    transition: opacity 0.4s ease 0.05s, transform 0.4s ease 0.05s;
}

.glp-card:hover .glp-cat {
    opacity: 1;
    transform: translateY(0);
}

.glp-empty {
    text-align: center;
    font-family: "Roboto", sans-serif;
    color: #888;
    font-size: 15px;
    padding: 40px 0;
}

/* ── Delayed entrance animation on viewport enter ── */
.glp-anim {
    opacity: 0;
    transform: translateY(40px);
    transition: opacity 0.8s cubic-bezier(0.16, 1, 0.3, 1), transform 0.8s cubic-bezier(0.16, 1, 0.3, 1);
}

.glp-anim.glp-visible {
    opacity: 1;
    transform: translateY(0);
}

/* ── Image Popup ── */
.glp-modal {
    display: none;
    position: fixed;
    inset: 0;
    z-index: 10100;
    align-items: center;
    justify-content: center;
}

.glp-modal.show { display: flex; }

.glp-modal-overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.88);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    cursor: pointer;
    animation: glp-modal-fade 0.3s ease;
}

.glp-modal-box {
    position: relative;
    z-index: 1;
    width: 92%;
    max-width: 920px;
    max-height: 88vh;
    display: flex;
    flex-direction: column;
    background: #0d0c0a;
    border: 1px solid rgba(196, 164, 120, 0.3);
    box-shadow: 0 40px 100px rgba(0, 0, 0, 0.8);
    overflow: hidden;
    animation: glp-modal-pop 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

.glp-modal-figure {
    position: relative;
    flex: 1;
    min-height: 0;
    background: #000;
    display: flex;
    align-items: center;
    justify-content: center;
}

.glp-modal-img {
    max-width: 100%;
    max-height: 76vh;
    width: auto;
    height: auto;
    object-fit: contain;
    display: block;
}

.glp-modal-caption {
    flex-shrink: 0;
    padding: 18px 40px 22px;
    text-align: center;
    border-top: 1px solid rgba(196, 164, 120, 0.15);
}

.glp-modal-cat {
    display: block;
    font-family: "Cinzel", serif;
    font-size: 10px;
    color: #C4A478;
    text-transform: uppercase;
    letter-spacing: 2px;
    margin-bottom: 6px;
}

.glp-modal-title {
    margin: 0;
    font-family: "Cormorant Garamond", serif;
    font-size: 22px;
    color: #fff;
}

.glp-modal-close {
    position: absolute;
    top: 14px;
    right: 16px;
    background: transparent;
    border: none;
    color: #999;
    font-size: 18px;
    cursor: pointer;
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    transition: all 0.3s ease;
    z-index: 2;
}

.glp-modal-close:hover {
    background: rgba(196, 164, 120, 0.15);
    color: #C4A478;
}

.glp-modal-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(0, 0, 0, 0.45);
    border: 1px solid rgba(196, 164, 120, 0.3);
    color: #C4A478;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
    z-index: 2;
}

.glp-modal-nav:hover {
    background: rgba(196, 164, 120, 0.2);
    border-color: #C4A478;
}

.glp-modal-prev { left: 14px; }
.glp-modal-next { right: 14px; }

@keyframes glp-modal-fade { from { opacity: 0; } to { opacity: 1; } }
@keyframes glp-modal-pop {
    from { opacity: 0; transform: scale(0.92) translateY(20px); }
    to   { opacity: 1; transform: scale(1) translateY(0); }
}


/* gallery page — yt video section start  */

.gallery-yt-section {
    padding: 60px 0 90px;
    background: #0f0f0f;
    position: relative;
    overflow: hidden;
}

.gallery-yt-grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 28px;
}

.gallery-yt-item {
    flex: 1 1 380px;
    max-width: 560px;
}

.gallery-yt-item.is-short {
    flex: 0 1 240px;
    max-width: 240px;
}

.gallery-yt-frame {
    position: relative;
    overflow: hidden;
    border-radius: 20px;
    background: #000;
    border: 1px solid rgba(196, 164, 120, 0.16);
    aspect-ratio: 16 / 9;
    isolation: isolate;
}

.gallery-yt-item.is-short .gallery-yt-frame {
    aspect-ratio: 9 / 16;
}

.gallery-yt-frame .yt-iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: none;
    z-index: 1;
}

/* gallery page — yt video section end  */



/* ============================================================
   PROJECTS PAGE
   ============================================================ */

.prj-section {
    padding: 100px 0 110px;
    background-color: #0f0f0f;
    position: relative;
    overflow: hidden;
}

.prj-section .row {
    row-gap: 30px;
}

/* ── Delayed entrance animation on viewport enter ── */
.prj-anim {
    opacity: 0;
    transform: translateY(40px);
    transition: opacity 0.8s cubic-bezier(0.16, 1, 0.3, 1), transform 0.8s cubic-bezier(0.16, 1, 0.3, 1);
}

.prj-anim.prj-visible {
    opacity: 1;
    transform: translateY(0);
}

.prj-card {
    position: relative;
    display: block;
    overflow: hidden;
    border: 1px solid rgba(196, 164, 120, 0.14);
    background: linear-gradient(145deg, #181614 0%, #0a0a0a 100%);
    transition: border-color 0.4s ease, transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), box-shadow 0.4s ease;
    text-decoration: none !important;
}

.prj-card:hover {
    border-color: rgba(196, 164, 120, 0.55);
    transform: translateY(-6px);
    box-shadow: 0 24px 60px rgba(0, 0, 0, 0.35), 0 0 0 1px rgba(196, 164, 120, 0.12);
}

.prj-img-wrap {
    position: relative;
    width: 100%;
    height: 320px;
    overflow: hidden;
    background: #141210;
}

.prj-img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: transform 0.8s cubic-bezier(0.25, 1, 0.5, 1);
}

.prj-card:hover .prj-img {
    transform: scale(1.08);
}

.prj-img-placeholder {
    width: 100%;
    height: 100%;
    background: linear-gradient(145deg, #1c1a17 0%, #0a0a0a 100%);
}

.prj-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0,0,0,0.85) 0%, rgba(0,0,0,0.2) 55%, transparent 100%);
    display: flex;
    align-items: flex-end;
    justify-content: center;
    padding-bottom: 28px;
    opacity: 0;
    transition: opacity 0.4s ease;
}

.prj-card:hover .prj-overlay {
    opacity: 1;
}

.prj-view {
    font-family: "Cinzel", serif;
    font-size: 11px;
    color: #C4A478;
    text-transform: uppercase;
    letter-spacing: 2px;
    padding: 10px 26px;
    border: 1px solid rgba(196, 164, 120, 0.5);
    opacity: 0;
    transform: translateY(14px);
    transition: opacity 0.4s ease 0.05s, transform 0.4s ease 0.05s;
}

.prj-card:hover .prj-view {
    opacity: 1;
    transform: translateY(0);
}

.prj-content {
    padding: 26px 28px 30px;
}

.prj-title {
    font-size: 20px;
    font-weight: 500;
    line-height: 1.3;
    letter-spacing: 0.3px;
    color: #ffffff;
    margin: 0;
    transition: color 0.3s ease;
}

.prj-card:hover .prj-title {
    color: #C4A478;
}

.prj-empty {
    text-align: center;
    font-family: "Roboto", sans-serif;
    color: #888;
    font-size: 15px;
    padding: 40px 0;
}


/* ============================================================
   TESTIMONIALS PAGE
   ============================================================ */

.trv-section {
    padding: 100px 0 110px;
    background-color: #0a0a0a;
    position: relative;
    overflow: hidden;
}

.trv-section::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image:
        radial-gradient(ellipse at 15% 50%, rgba(196, 164, 120, 0.05) 0%, transparent 55%),
        radial-gradient(ellipse at 85% 20%, rgba(196, 164, 120, 0.04) 0%, transparent 50%);
    pointer-events: none;
}

.trv-section .container { position: relative; z-index: 1; }

.trv-section .row {
    row-gap: 30px;
}

.trv-item { will-change: opacity, transform; }

.trv-card {
    position: relative;
    height: 100%;
    background: #111010;
    border: 1px solid rgba(196, 164, 120, 0.1);
    border-radius: 16px;
    padding: 40px 30px 34px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), border-color 0.4s ease, box-shadow 0.4s ease;
}

.trv-card:hover {
    border-color: rgba(196, 164, 120, 0.4);
    transform: translateY(-6px);
    box-shadow: 0 24px 60px rgba(0, 0, 0, 0.4), 0 0 0 1px rgba(196, 164, 120, 0.1);
}

.trv-quote-icon {
    font-size: 22px;
    color: #C4A478;
    opacity: 0.85;
    margin-bottom: 20px;
}

.trv-avatar-wrap {
    width: 76px;
    height: 76px;
    border-radius: 50%;
    overflow: hidden;
    border: 2px solid rgba(196, 164, 120, 0.35);
    margin-bottom: 20px;
    flex-shrink: 0;
}

.trv-avatar-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.trv-avatar-fallback {
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, rgba(196,164,120,0.25), rgba(196,164,120,0.08));
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: "Cinzel", serif;
    font-size: 28px;
    font-weight: 600;
    color: #C4A478;
}

.trv-name {
    font-family: "Cinzel", serif;
    font-size: 16px;
    font-weight: 600;
    color: #fff;
    margin: 0 0 6px 0;
    letter-spacing: 0.6px;
}

.trv-designation {
    font-family: "Roboto", sans-serif;
    font-size: 11px;
    color: #C4A478;
    text-transform: uppercase;
    letter-spacing: 2px;
    display: block;
    margin-bottom: 22px;
}

.trv-review {
    font-family: "Roboto", sans-serif;
    font-size: 14px;
    line-height: 1.85;
    color: #999;
    margin: 0 0 22px 0;
    border-top: 1px solid rgba(196, 164, 120, 0.1);
    padding-top: 20px;
}

.trv-empty {
    text-align: center;
    font-family: "Roboto", sans-serif;
    color: #888;
    font-size: 15px;
    padding: 40px 0;
}

/* Read More Button */
.trv-readmore-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: transparent;
    border: 1px solid rgba(196, 164, 120, 0.35);
    color: #C4A478;
    padding: 9px 22px;
    font-family: "Roboto", sans-serif;
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    cursor: pointer;
    border-radius: 2px;
    transition: all 0.3s ease;
    margin-top: auto;
}
.trv-readmore-btn i { font-size: 10px; transition: transform 0.3s ease; }
.trv-readmore-btn:hover {
    background: #C4A478;
    border-color: #C4A478;
    color: #000;
}
.trv-readmore-btn:hover i { transform: translateX(4px); }

/* ── Read-More Modal ── */
.trv-modal {
    display: none;
    position: fixed;
    inset: 0;
    z-index: 10100;
    align-items: center;
    justify-content: center;
}
.trv-modal.show { display: flex; }

.trv-modal-overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.75);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    cursor: pointer;
    animation: trv-modal-fade-in 0.3s ease;
}

.trv-modal-box {
    position: relative;
    z-index: 1;
    background: #0d0c0a;
    border: 1px solid rgba(196, 164, 120, 0.35);
    width: 90%;
    max-width: 560px;
    max-height: 80vh;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    box-shadow: 0 40px 100px rgba(0, 0, 0, 0.8);
    animation: trv-modal-slide-up 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

.trv-modal-top-bar {
    flex-shrink: 0;
    height: 3px;
    background: linear-gradient(90deg, transparent, #C4A478, transparent);
}

.trv-modal-close {
    position: absolute;
    top: 14px;
    right: 16px;
    background: transparent;
    border: none;
    color: #555;
    font-size: 18px;
    cursor: pointer;
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    transition: all 0.3s ease;
    z-index: 2;
}
.trv-modal-close:hover { background: rgba(196, 164, 120, 0.15); color: #C4A478; }

.trv-modal-avatar-wrap {
    flex-shrink: 0;
    display: flex;
    justify-content: center;
    padding: 32px 36px 12px;
}
.trv-modal-avatar-img {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    object-fit: cover;
    border: 2px solid rgba(196, 164, 120, 0.4);
}
.trv-modal-initial {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    background: linear-gradient(135deg, rgba(196,164,120,0.25), rgba(196,164,120,0.08));
    border: 2px solid rgba(196, 164, 120, 0.4);
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: "Cinzel", serif;
    font-size: 24px;
    font-weight: 600;
    color: #C4A478;
}

.trv-modal-name {
    font-family: "Cinzel", serif;
    font-size: 18px;
    font-weight: 600;
    color: #fff;
    text-align: center;
    margin: 0;
    padding: 0 36px 4px;
    letter-spacing: 0.8px;
}

.trv-modal-designation {
    font-family: "Roboto", sans-serif;
    font-size: 11px;
    color: #C4A478;
    text-transform: uppercase;
    letter-spacing: 2px;
    text-align: center;
    display: block;
    padding: 0 36px;
}

.trv-modal-divider {
    flex-shrink: 0;
    width: 50px;
    height: 1px;
    background: rgba(196, 164, 120, 0.35);
    margin: 20px auto 0;
}

.trv-modal-body {
    flex: 1;
    overflow-y: auto;
    padding: 20px 36px 36px;
}
.trv-modal-body::-webkit-scrollbar { width: 3px; }
.trv-modal-body::-webkit-scrollbar-track { background: #111; }
.trv-modal-body::-webkit-scrollbar-thumb { background: #C4A478; }
.trv-modal-body p {
    font-family: "Roboto", sans-serif;
    font-size: 15px;
    line-height: 1.85;
    color: #aaa;
    margin: 0;
}

@keyframes trv-modal-fade-in  { from { opacity: 0; } to { opacity: 1; } }
@keyframes trv-modal-slide-up {
    from { opacity: 0; transform: translateY(30px); }
    to   { opacity: 1; transform: translateY(0); }
}


/* ============================================================
   FLOATING WHATSAPP BUTTON
   ============================================================ */

.wa-float-btn {
    position: fixed;
    right: 26px;
    bottom: 26px;
    width: 60px;
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 9999;
}

.wa-float-face {
    position: relative;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background: #25D366;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.45), 0 0 0 1px rgba(196, 164, 120, 0.25);
    z-index: 2;
    transition: transform 0.3s cubic-bezier(0.25, 1, 0.5, 1), box-shadow 0.3s ease;
}

.wa-float-btn:hover .wa-float-face {
    transform: scale(1.08);
    box-shadow: 0 14px 38px rgba(0, 0, 0, 0.55), 0 0 0 1px rgba(196, 164, 120, 0.45);
}

.wa-float-icon {
    position: relative;
    z-index: 2;
    color: #fff;
    font-size: 30px;
    line-height: 1;
}

/* Ambient pulsing ripple rings */
.wa-float-ripple {
    position: absolute;
    inset: 0;
    border-radius: 50%;
    background: rgba(37, 211, 101, 0.23);
    animation: wa-float-pulse 2.4s cubic-bezier(0.2, 0.7, 0.4, 1) infinite;
    pointer-events: none;
    z-index: 1;
}

.wa-float-ripple-delay {
    animation-delay: 1.2s;
}

@keyframes wa-float-pulse {
    0%   { transform: scale(1);   opacity: 0.55; }
    100% { transform: scale(1.8); opacity: 0; }
}

/* Click burst ripple */
.float-click-burst {
    position: absolute;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.55);
    transform: scale(0);
    opacity: 1;
    pointer-events: none;
    animation: wa-float-click-burst 0.6s ease-out forwards;
}

@keyframes wa-float-click-burst {
    to { transform: scale(1.8); opacity: 0; }
}

/* ============================================================
   FLOATING INSTAGRAM BUTTON
   ============================================================ */

.ig-float-btn {
    position: fixed;
    right: 26px;
    bottom: 115px;
    width: 60px;
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 9999;
    -webkit-tap-highlight-color: transparent;
}

.ig-float-face {
    position: relative;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285AEB 90%);
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.45), 0 0 0 1px rgba(196, 164, 120, 0.25);
    z-index: 2;
    transition: transform 0.3s cubic-bezier(0.25, 1, 0.5, 1), box-shadow 0.3s ease;
}

.ig-float-btn:hover .ig-float-face {
    transform: scale(1.08);
    box-shadow: 0 14px 38px rgba(0, 0, 0, 0.55), 0 0 0 1px rgba(196, 164, 120, 0.45);
}

.ig-float-icon {
    position: relative;
    z-index: 2;
    color: #fff;
    font-size: 28px;
    line-height: 1;
}


/* Floating Call Button */
.call-float-btn {
    position: fixed;
    right: 26px;
    bottom: 200px;
    width: 60px;
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 9999;
    -webkit-tap-highlight-color: transparent;
}

.call-float-face {
    position: relative;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background: #C4A478;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.45), 0 0 0 1px rgba(196, 164, 120, 0.25);
    z-index: 2;
    transition: transform 0.3s cubic-bezier(0.25, 1, 0.5, 1), box-shadow 0.3s ease;
}

.call-float-btn:hover .call-float-face {
    transform: scale(1.08);
    box-shadow: 0 14px 38px rgba(0, 0, 0, 0.55), 0 0 0 1px rgba(196, 164, 120, 0.45);
}

.call-float-icon {
    position: relative;
    z-index: 2;
    color: #000;
    font-size: 26px;
    line-height: 1;
    transform: rotate(-8deg);
}




/* ==================RESPONSE================== */


@media only screen and (min-width: 300px) and (max-width: 576.98px) {

    /* Header */

    .header-btn-enquire {
        display: none;
    }

    .header-logo img {
        max-width: 95px;
    }

    .header-menu {
        justify-content: flex-end;
    }

    /* Hero Section */

    .banner-section,
    .banner-slide {
        min-height: 550px;
    }

    .banner-content {
        left: 0;
        right: 0;
        width: 100%;
        max-width: 100%;
        padding: 0 8%;
        box-sizing: border-box;
        gap: 16px;
    }

    .banner-line {
        display: none;
    }

    .banner-text {
        width: 100%;
    }

    .banner-subtitle {
        font-size: 11px;
        letter-spacing: 2px;
        margin-bottom: 14px;
    }

    .banner-title {
        font-size: 32px;
        line-height: 1.25;
        margin-bottom: 14px;
    }

    .banner-description {
        font-size: 14px;
        max-width: 100%;
        margin-bottom: 26px;
    }

    .banner-btn {
        padding: 12px 22px;
        font-size: 12px;
    }


    /* About Section */

    .about-us-section {
        padding: 60px 0;
    }

    .about-us-tag {
        font-size: 11px;
        margin-bottom: 16px;
    }

    .about-us-page-content h2 {
        font-size: 28px;
        line-height: 1.3;
        margin-bottom: 16px;
    }

    .about-us-page-content p {
        font-size: 14px;
        line-height: 1.5;
    }

    .about-us-images {
        height: 360px;
        margin-top: 30px;
    }


    /* Services Section */

    .services-section {
        padding: 50px 0;
    }

    .services-section-header {
        margin: 0 auto 36px;
    }

    .services-tag {
        font-size: 11px;
    }

    .services-heading {
        font-size: 26px;
        margin-bottom: 14px;
    }

    .services-subtext {
        font-size: 14px;
    }

    .services-grid {
        row-gap: 20px;
    }

    .services-col {
        padding: 0 8px;
    }

    .service-card {
        padding: 28px 22px 26px;
    }

    .service-card-icon-wrap {
        width: 52px;
        height: 52px;
        margin-bottom: 18px;
    }

    .service-card-icon-img {
        width: 30px;
        height: 30px;
    }

    .service-card-title {
        font-size: 19px;
        margin-bottom: 10px;
    }

    .service-card-excerpt p {
        font-size: 13.5px;
        margin-bottom: 16px;
    }

    .service-card-excerpt ul li {
        line-height: 1.4;
        font-size: 14px;
    }


    /* Why Choose Us Section */

    .why-section {
        padding: 50px 0;
    }

    .why-row {
        min-height: 0;
    }

    .why-content {
        padding: 30px 6px;
    }

    .why-block-top {
        margin-bottom: 18px;
    }

    .why-index-label {
        font-size: 20px;
    }

    .why-title {
        font-size: 26px;
        margin-bottom: 12px;
    }

    .why-desc,
    .why-desc p {
        font-size: 14px;
        line-height: 1.7;
    }

    .why-img-wrap,
    .why-img,
    .why-img-placeholder {
        min-height: 240px;
    }


    /* Vastu Shastra Section */

    .vastu-section {
        padding: 50px 0;
    }

    .vastu-box {
        min-height: 380px;
    }

    .vastu-box::before {
        width: 100%;
        background: linear-gradient(180deg, rgba(10, 10, 10, 0.55) 0%, rgba(10, 10, 10, 0.85) 35%, rgba(10, 10, 10, 0.95) 100%);
    }

    .vastu-content-wrap {
        max-width: 100%;
        padding: 36px 24px;
    }

    .vastu-tag {
        font-size: 11px;
        letter-spacing: 2px;
        margin-bottom: 16px;
    }

    .vastu-title {
        font-size: 28px;
        line-height: 1.3;
        margin-bottom: 16px;
    }

    .vastu-desc,
    .vastu-desc p {
        font-size: 14px;
        line-height: 1.7;
    }


    /* Gallery Section */

    .gallery-section {
        padding: 60px 0;
    }

    .gallery-filters {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
        margin-bottom: 30px;
    }

    .gallery-filter-btn {
        padding: 9px 10px;
        font-size: 11px;
        letter-spacing: 0.5px;
        text-align: center;
        min-width: 0;
    }

    .gallery-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 10px;
    }

    .gallery-item:nth-child(1),
    .gallery-item:nth-child(4) {
        grid-column: auto;
        grid-row: auto;
    }

    .gallery-img,
    .gallery-item:nth-child(1) .gallery-img {
        height: 160px;
    }


    /* Video Section */

    .video-section {
        padding: 50px 0;
    }

    .video-section .col-lg-6 {
        margin-bottom: 24px;
    }

    .video-box video {
        height: 360px;
    }

    .video-section .col-lg-6:last-child {
        margin-bottom: 0;
    }


    /* Testimonials Section */

    .testi-section {
        padding: 50px 0;
    }

    .testi-card {
        padding: 30px 20px 26px;
    }

    .testi-avatar-wrap {
        width: 60px;
        height: 60px;
        margin-bottom: 14px;
    }

    .testi-name {
        font-size: 14px;
    }

    .testi-designation {
        margin-bottom: 16px;
    }

    .testi-review-preview {
        font-size: 13.5px;
    }

    .testi-nav {
        margin-top: 24px;
    }

    .testi-btn {
        width: 40px;
        height: 40px;
    }

    .testi-modal-body p {
        font-size: 14px;
        line-height: 1.6;
    }

    .testi-modal-avatar-wrap {
        padding: 24px 24px 10px;
    }

    .testi-modal-name,
    .testi-modal-designation {
        padding-left: 24px;
        padding-right: 24px;
    }

    .testi-modal-body-wrap,
    .testi-modal-body {
        padding: 16px 24px 24px;
    }


    /* CTA Section */

    .cta-card {
        padding: 24px 20px;
    }

    .cta-tag-wrap {
        margin-bottom: 20px;
    }

    .cta-tag {
        font-size: 10px;
        letter-spacing: 1.5px;
        padding: 6px 16px;
    }

    .cta-heading {
        font-size: 30px;
        line-height: 1.25;
        margin-bottom: 6px;
    }

    .cta-heading-accent {
        font-size: 28px;
        margin-bottom: 16px;
    }

    .cta-subtext {
        font-size: 14px;
        line-height: 1.5;
        max-width: 100%;
        margin: 0 auto 28px;
    }

    .cta-btn-primary {
        padding: 14px 26px;
        font-size: 12px;
    }


    /* Footer Section */

    .footer-section-brand {
        padding-right: 0;
        margin-bottom: 20px;
    }

    .footer-quick-links,
    .footer-service-links {
        flex: 0 0 100% !important;
        max-width: 100% !important;
        margin-bottom: 24px;
    }

    /* Quick Links & Services menus are powered by Max Mega Menu, which collapses
       them into a hidden off-canvas toggle below 1200px. That's wrong for a plain
       footer link list, so force them to always render as a static list here. */
    #mega-menu-wrap-max_mega_menu_1 .mega-menu-toggle,
    #mega-menu-wrap-max_mega_menu_2 .mega-menu-toggle {
        display: none !important;
    }

    #mega-menu-wrap-max_mega_menu_1 #mega-menu-max_mega_menu_1,
    #mega-menu-wrap-max_mega_menu_2 #mega-menu-max_mega_menu_2 {
        display: flex !important;
        position: static !important;
        flex-direction: column !important;
        width: 100% !important;
        height: auto !important;
        max-height: none !important;
        background: transparent !important;
        padding: 0 !important;
        margin: 0 !important;
        transform: none !important;
        box-shadow: none !important;
        visibility: visible !important;
    }

    /* The plugin highlights the current-page link with a light gray gradient
       meant for a light theme, which clashes here — swap it for the site's gold */
    #mega-menu-wrap-max_mega_menu_1 #mega-menu-max_mega_menu_1 > li.mega-menu-item.mega-current-menu-item > a.mega-menu-link,
    #mega-menu-wrap-max_mega_menu_2 #mega-menu-max_mega_menu_2 > li.mega-menu-item.mega-current-menu-item > a.mega-menu-link {
        background: transparent !important;
        color: #C4A478 !important;
    }

    .footer-section-contact {
        margin-bottom: 0;
    }

    .footer-section-copy, .footer-section-credit a {
        font-size: 11px;
    }


    /* WhatsApp Floating Button */

    .wa-float-btn {
        width: 46px;
        height: 46px;
        right: 16px;
        bottom: 16px;
    }

    .wa-float-icon {
        font-size: 22px;
    }
	
	/* Instagram Floating Button */

    .ig-float-btn {
        width: 46px;
        height: 46px;
        right: 16px;
        bottom: 70px;
    }

    .ig-float-icon {
        font-size: 21px;
    }

    /* Call Floating Button */

    .call-float-btn {
        width: 46px;
        height: 46px;
        right: 16px;
        bottom: 125px;
    }

    .call-float-icon {
        font-size: 19px;
    }


    /* Inner Page Banner */

    .page-banner {
		height: 60vh;
        min-height: 450px;
        padding-bottom: 50px;
    }

    .page-banner-eyebrow {
        font-size: 10px;
        letter-spacing: 2px;
        margin-bottom: 12px;
    }

    .page-banner-title {
        font-size: 28px;
        line-height: 1.2;
        margin: 0 0 14px;
    }

    .page-banner-sub {
        font-size: 14px;
        line-height: 1.6;
        max-width: 100%;
    }

    .page-banner-line {
        margin-top: 18px;
    }


    /*============= About Page starts here =========*/

    /* Inner About Section */

    .inner-about-section {
        padding: 50px 0;
    }

    .inner-about-tag {
        font-size: 15px;
        margin-bottom: 14px;
    }

    .inner-about-content h1,
    .inner-about-content h2,
    .inner-about-content h3,
    .inner-about-content h4,
    .inner-about-content h5,
    .inner-about-content h6 {
        font-size: 28px;
        line-height: 1.2;
        margin-bottom: 16px;
    }

    .inner-about-content p {
        font-size: 14px;
    }

    .inner-about-image-wrapper {
        min-height: 0;
        margin-top: 30px;
    }

    .inner-about-image-left,
    .inner-about-image-right {
        position: static;
        width: 100%;
    }

    .inner-about-image-left {
        margin-bottom: 16px;
    }

    .inner-about-image-left img {
        height: 240px;
    }

    .inner-about-image-right img {
        height: 240px;
    }


    /* What We Do Section */

    .inner-what-we-do-section {
        padding: 50px 0;
    }

    .speciality-col {
        margin-bottom: 20px;
    }

    /* Cards stack vertically here, so the horizontal wave connector
       between cards no longer makes sense — hide it. Must match the base
       rule's :not(:last-child) selector, otherwise this loses the
       specificity tie-break and the connector stays visible. */
    .speciality-col:not(:last-child)::after {
        display: none;
    }

    .inner-what-we-do-icon-wrap {
        width: 100px;
        height: 100px;
    }

    .inner-icon img {
        width: 38px;
    }

    .inner-what-we-do-number {
        font-size: 24px;
        margin: 14px 0 8px;
    }

    .inner-what-we-do-title {
        font-size: 15px;
        max-width: 100%;
    }


    /* Inner About "Why Choose Us" Section */

    .inner-about-why-section {
        padding: 50px 0;
    }

    .inner-about-why-header-row {
        margin-bottom: 20px;
    }

    .inner-about-why-item-inner {
        flex-direction: column;
        align-items: flex-start;
        padding: 28px 0;
    }

    .inner-about-why-number {
        flex: 0 0 auto;
        margin-bottom: 12px;
    }

    .inner-about-why-num-text {
        font-size: 40px;
    }

    /* Vertical divider only made sense next to a horizontal row */
    .inner-about-why-divider {
        display: none;
    }

    .inner-about-why-content {
        flex-direction: column;
        align-items: flex-start;
        padding-left: 0;
        gap: 8px;
        width: 100%;
    }

    .inner-about-why-title {
        flex: 0 0 auto;
        font-size: 20px;
    }

    .inner-about-why-desc,
    .inner-about-why-desc p {
        font-size: 14px;
        line-height: 1.7;
    }


    /* Services Page - Service Cards Section */

    .service-page-section {
        padding: 50px 0;
    }

    .service-page-section .row {
        row-gap: 20px;
    }

    .service-page-card {
        padding: 28px 22px 26px;
    }

    .service-page-img-wrap {
        width: 52px;
        height: 52px;
        margin-bottom: 18px;
    }

    .service-page-img {
        width: 30px;
        height: 30px;
    }

    .service-page-title {
        font-size: 19px;
        margin-bottom: 10px;
    }

    .service-page-desc p {
        font-size: 13.5px;
        margin-bottom: 16px;
    }

    .service-page-desc ul li {
        font-size: 14px;
        line-height: 1.4;
    }


    /* ======== Contact Page ============ */

    .cu-section {
        padding: 50px 0;
    }

    .cu-info-card {
        padding: 20px 18px;
    }

    .cu-info-icon {
        width: 40px;
        height: 40px;
        font-size: 15px;
        margin-bottom: 12px;
    }

    .cu-info-title {
        font-size: 14px;
        margin-bottom: 6px;
    }

    .cu-info-text {
        font-size: 13px;
    }

    .cu-info-section .row.gy-4 {
        row-gap: 16px !important;
    }

    .cu-form-wrap {
        padding-right: 0;
    }

    .cu-sidebar-block {
        padding: 18px 16px;
    }

    .cu-sidebar-title {
        margin-bottom: 12px;
        padding-bottom: 8px;
    }

    .cu-sidebar-text {
        margin-bottom: 12px;
    }

    .cu-hours-item {
        padding: 6px 0;
    }

    .cu-hours-day {
        font-size: 13px;
    }

    .cu-hours-time {
        font-size: 14px;
    }

    .cu-social-row {
        gap: 8px;
    }

    .cu-social-btn {
        width: 36px;
        height: 36px;
        font-size: 13px;
    }

    .cu-response-badge {
        gap: 10px;
    }

    .cu-badge-icon {
        font-size: 18px;
    }

    .cu-location-content iframe {
        height: 300px;
    }

}


@media only screen and (min-width: 576px) and (max-width: 767.98px) {

    /* Header */

    .header-btn-enquire {
        display: none;
    }

    .header-logo img {
        max-width: 95px;
    }

    .header-menu {
        justify-content: flex-end;
    }


    /* Hero Section */

    .banner-section,
    .banner-slide {
        min-height: 550px;
    }

    .banner-content {
        left: 6%;
        right: 6%;
        max-width: none;
    }

    .banner-title {
        font-size: 42px;
        line-height: 1.15;
    }

    .banner-description {
        max-width: 100%;
    }


    /* About Section */

    .about-us-section {
        padding: 60px 0;
    }

    .about-us-page-content h2 {
        font-size: 32px;
    }

    .about-us-images {
        height: 420px;
    }


    /* Services Section */

    .services-section {
        padding: 60px 0;
    }

    .services-heading {
        font-size: 32px;
    }

    .services-subtext {
        font-size: 15px;
    }

    .services-grid {
        row-gap: 22px;
    }

    .service-card {
        padding: 32px 26px 30px;
    }

    .service-card-icon-wrap {
        width: 56px;
        height: 56px;
        margin-bottom: 22px;
    }

    .service-card-icon-img {
        width: 34px;
        height: 34px;
    }

    .service-card-title {
        font-size: 20px;
    }

    .service-card-excerpt p {
        font-size: 13.5px;
    }


    /* Why Choose Us Section */

    .why-section {
        padding: 60px 0;
    }

    .why-row {
        min-height: 0;
    }

    .why-content {
        padding: 30px 20px;
    }

    .why-block-top {
        margin-bottom: 20px;
    }

    .why-index-label {
        font-size: 22px;
    }

    .why-title {
        font-size: 26px;
        margin-bottom: 14px;
    }

    .why-desc,
    .why-desc p {
        font-size: 14px;
    }

    .why-img-wrap,
    .why-img,
    .why-img-placeholder {
        min-height: 280px;
    }


    /* Vastu Shastra Section */

    .vastu-section {
        padding: 60px 0;
    }

    .vastu-box {
        min-height: 400px;
    }

    .vastu-content-wrap {
        max-width: 420px;
        padding: 0 40px;
    }

    .vastu-title {
        font-size: 32px;
    }

    .vastu-desc,
    .vastu-desc p {
        font-size: 14px;
    }


    /* Gallery Section */

    .gallery-section {
        padding: 60px 0;
    }

    .gallery-filters {
        margin-bottom: 34px;
    }

    .gallery-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 12px;
    }

    .gallery-item:nth-child(1),
    .gallery-item:nth-child(4) {
        grid-column: auto;
        grid-row: auto;
    }

    .gallery-img,
    .gallery-item:nth-child(1) .gallery-img {
        height: 200px;
    }


    /* Video Section */

    .video-section {
        padding: 60px 0;
    }

    .video-section .col-lg-6 {
        margin-bottom: 24px;
    }

    .video-section .col-lg-6:last-child {
        margin-bottom: 0;
    }

    .video-box video {
        height: 400px;
    }


    /* CTA Section */

    .cta-card {
        padding: 26px;
    }

    .cta-tag-wrap {
        margin-bottom: 22px;
    }

    .cta-tag {
        font-size: 10px;
    }

    .cta-heading {
        font-size: 40px;
    }

    .cta-heading-accent {
        margin-bottom: 20px;
    }

    .cta-subtext {
        font-size: 15px;
        max-width: 90%;
        margin-bottom: 32px;
    }

    .cta-btn-primary {
        padding: 14px 28px;
        font-size: 12px;
    }


    /* Footer Section */

    .footer-section-brand {
        margin-bottom: 24px;
    }

    /* Quick Links & Services menus are powered by Max Mega Menu, which collapses
       them into a hidden off-canvas toggle below 1200px. That's wrong for a plain
       footer link list, so force them to always render as a static list here. */
    #mega-menu-wrap-max_mega_menu_1 .mega-menu-toggle,
    #mega-menu-wrap-max_mega_menu_2 .mega-menu-toggle {
        display: none !important;
    }

    #mega-menu-wrap-max_mega_menu_1 #mega-menu-max_mega_menu_1,
    #mega-menu-wrap-max_mega_menu_2 #mega-menu-max_mega_menu_2 {
        display: flex !important;
        position: static !important;
        flex-direction: column !important;
        width: 100% !important;
        height: auto !important;
        max-height: none !important;
        background: transparent !important;
        padding: 0 !important;
        margin: 0 !important;
        transform: none !important;
        box-shadow: none !important;
        visibility: visible !important;
    }

    #mega-menu-wrap-max_mega_menu_1 #mega-menu-max_mega_menu_1 > li.mega-menu-item.mega-current-menu-item > a.mega-menu-link,
    #mega-menu-wrap-max_mega_menu_2 #mega-menu-max_mega_menu_2 > li.mega-menu-item.mega-current-menu-item > a.mega-menu-link {
        background: transparent !important;
        color: #C4A478 !important;
    }

    .footer-section .footer-quick-links li a,
    .footer-section .footer-service-links li a {
        font-size: 13px !important;
    }


    /* Inner Page Banner */

    .page-banner {
        min-height: 560px;
        padding-bottom: 60px;
    }

    .page-banner-eyebrow {
        font-size: 11px;
        letter-spacing: 3px;
        margin-bottom: 14px;
    }

    .page-banner-title {
        font-size: 46px;
        line-height: 1.15;
        margin: 0 0 16px;
    }

    .page-banner-sub {
        font-size: 15px;
        max-width: 90%;
    }

    .page-banner-line {
        margin-top: 22px;
    }


    /* Inner About Section */

    .inner-about-section {
        padding: 60px 0;
    }

    .inner-about-tag {
        font-size: 16px;
        margin-bottom: 16px;
    }

    .inner-about-content h1,
    .inner-about-content h2,
    .inner-about-content h3,
    .inner-about-content h4,
    .inner-about-content h5,
    .inner-about-content h6 {
        font-size: 32px;
        line-height: 1.25;
        margin-bottom: 20px;
    }

    .inner-about-content p {
        font-size: 15px;
    }

    .inner-about-image-wrapper {
        min-height: 420px;
        margin-top: 24px;
    }

    .inner-about-image-left {
        width: 240px;
    }

    .inner-about-image-left img {
        height: 280px;
    }

    .inner-about-image-right {
        width: 280px;
    }

    .inner-about-image-right img {
        height: 300px;
    }


    /* What We Do Section */

    .inner-what-we-do-section {
        padding: 60px 0;
    }

    .speciality-col {
        margin-bottom: 28px;
    }

    .speciality-col:not(:last-child)::after {
        display: none;
    }

    .inner-what-we-do-icon-wrap {
        width: 110px;
        height: 110px;
    }

    .inner-icon img {
        width: 42px;
    }

    .inner-what-we-do-number {
        font-size: 26px;
        margin: 16px 0 8px;
    }

    .inner-what-we-do-title {
        font-size: 15px;
    }


    /* Inner About "Why Choose Us" Section */

    .inner-about-why-section {
        padding: 60px 0;
    }

    .inner-about-why-header-row {
        margin-bottom: 30px;
    }

    .inner-about-why-item-inner {
        flex-direction: column;
        align-items: flex-start;
        padding: 36px 0;
    }

    .inner-about-why-number {
        flex: 0 0 auto;
        margin-bottom: 14px;
    }

    .inner-about-why-num-text {
        font-size: 52px;
    }

    .inner-about-why-divider {
        display: none;
    }

    .inner-about-why-content {
        flex-direction: column;
        align-items: flex-start;
        padding-left: 0;
        gap: 10px;
        width: 100%;
    }

    .inner-about-why-title {
        flex: 0 0 auto;
        font-size: 23px;
    }

    .inner-about-why-desc,
    .inner-about-why-desc p {
        font-size: 15px;
        line-height: 1.75;
    }


    /* Services Page - Service Cards Section */

    .service-page-section {
        padding: 70px 0;
    }

    .service-page-section .row {
        row-gap: 24px;
    }

    .service-page-card {
        padding: 30px 24px 28px;
    }

    .service-page-img-wrap {
        width: 56px;
        height: 56px;
        margin-bottom: 22px;
    }

    .service-page-img {
        width: 34px;
        height: 34px;
    }

    .service-page-title {
        font-size: 19px;
        margin-bottom: 10px;
    }

    .service-page-desc p {
        font-size: 13.5px;
        margin-bottom: 18px;
    }

    .service-page-desc ul li {
        font-size: 14px;
    }


    /* ======== Contact Page ============ */

    .cu-section {
        padding: 60px 0;
    }

    .cu-info-card {
        padding: 28px 24px;
    }

    .cu-info-icon {
        width: 48px;
        height: 48px;
        font-size: 18px;
        margin-bottom: 16px;
    }

    .cu-info-title {
        font-size: 15px;
        margin-bottom: 8px;
    }

    .cu-info-text {
        font-size: 13.5px;
    }

    .cu-info-section .row.gy-4 {
        row-gap: 20px !important;
    }

    .cu-form-wrap {
        padding-right: 0;
    }

    .cu-form-sub {
        font-size: 14px;
        margin-bottom: 28px;
    }

    .cu-cf7-wrap .wpcf7-form-control-wrap input,
    .cu-cf7-wrap .wpcf7-form-control-wrap select {
        height: 48px;
    }

    .cu-cf7-wrap .wpcf7-form-control-wrap textarea {
        height: 110px;
    }

    .cu-cf7-wrap .wpcf7-submit {
        padding: 15px 32px;
    }

    .cu-sidebar-block {
        padding: 24px 26px;
    }

    .cu-sidebar-title {
        margin-bottom: 16px;
        padding-bottom: 8px;
    }

    .cu-hours-day {
        font-size: 13.5px;
    }

    .cu-social-btn {
        width: 40px;
        height: 40px;
        font-size: 14px;
    }

    .cu-response-badge {
        gap: 12px;
    }

    .cu-badge-icon {
        font-size: 20px;
    }

    .cu-location-content iframe {
        height: 380px;
    }

}


@media only screen and (min-width: 768px) and (max-width: 991.98px) {

    /* Header */

    .header-logo img {
        max-width: 105px;
    }

    .header-btn-enquire {
        display: none;
    }

    .header-right-actions {
        display: none !important;
    }

    .header-menu {
        flex: 0 0 75% !important;
        max-width: 75% !important;
        width: 75% !important;
        justify-content: flex-end;
    }

    /* Hero Section */

    .banner-section,
    .banner-slide {
        min-height: 580px;
    }

    .banner-content {
        top: 50%;
        transform: translateY(-50%);
        left: 8%;
        right: 8%;
        max-width: none;
    }

    .banner-title {
        font-size: 46px;
        line-height: 1.15;
    }

    .banner-description {
        max-width: 100%;
    }


    /* Vastu Shastra Section */

    .vastu-section {
        padding: 70px 0;
    }

    .vastu-box {
        min-height: 420px;
    }

    .vastu-content-wrap {
        max-width: 460px;
        padding: 0 44px;
    }

    .vastu-title {
        font-size: 34px;
    }

    .vastu-desc,
    .vastu-desc p {
        font-size: 15px;
    }


    /* Gallery Section */

    .gallery-section {
        padding: 70px 0;
    }

    .gallery-filters {
        margin-bottom: 40px;
    }

    .gallery-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 14px;
    }

    .gallery-item:nth-child(1),
    .gallery-item:nth-child(4) {
        grid-column: auto;
        grid-row: auto;
    }

    .gallery-img,
    .gallery-item:nth-child(1) .gallery-img {
        height: 260px;
    }


    /* Video Section */

    .video-section {
        padding: 70px 0;
    }

    .video-section .col-lg-6 {
        margin-bottom: 24px;
    }

    .video-section .col-lg-6:last-child {
        margin-bottom: 0;
    }

    .video-box video {
        height: 420px;
    }


    /* CTA Section */

    .cta-card {
        padding: 28px;
    }

    .cta-tag-wrap {
        margin-bottom: 24px;
    }

    .cta-heading {
        font-size: 44px;
    }

    .cta-heading-accent {
        margin-bottom: 22px;
    }

    .cta-subtext {
        font-size: 15px;
        max-width: 85%;
        margin-bottom: 36px;
    }

    .cta-btn-primary {
        padding: 15px 30px;
        font-size: 12px;
    }


    /* Footer Section */

    .footer-section-brand {
        margin-bottom: 24px;
    }

    #mega-menu-wrap-max_mega_menu_1 .mega-menu-toggle,
    #mega-menu-wrap-max_mega_menu_2 .mega-menu-toggle {
        display: none !important;
    }

    #mega-menu-wrap-max_mega_menu_1 #mega-menu-max_mega_menu_1,
    #mega-menu-wrap-max_mega_menu_2 #mega-menu-max_mega_menu_2 {
        display: flex !important;
        position: static !important;
        flex-direction: column !important;
        width: 100% !important;
        height: auto !important;
        max-height: none !important;
        background: transparent !important;
        padding: 0 !important;
        margin: 0 !important;
        transform: none !important;
        box-shadow: none !important;
        visibility: visible !important;
    }

    #mega-menu-wrap-max_mega_menu_1 #mega-menu-max_mega_menu_1 > li.mega-menu-item.mega-current-menu-item > a.mega-menu-link,
    #mega-menu-wrap-max_mega_menu_2 #mega-menu-max_mega_menu_2 > li.mega-menu-item.mega-current-menu-item > a.mega-menu-link {
        background: transparent !important;
        color: #C4A478 !important;
    }

    .footer-section .footer-quick-links li a,
    .footer-section .footer-service-links li a {
        font-size: 13px !important;
    }


    /* Inner Page Banner */

    .page-banner {
		height: 50vh;
        min-height: 500px;
        padding-bottom: 70px;
    }

    .page-banner-eyebrow {
        font-size: 11px;
        letter-spacing: 3px;
        margin-bottom: 14px;
    }

    .page-banner-title {
        font-size: 52px;
        line-height: 1.15;
        margin: 0 0 16px;
    }

    .page-banner-sub {
        font-size: 15px;
        max-width: 90%;
    }

    .page-banner-line {
        margin-top: 22px;
    }


    /* Inner About Section */

    .inner-about-section {
        padding: 60px 0;
    }

    .inner-about-tag {
        font-size: 16px;
        margin-bottom: 16px;
    }

    .inner-about-content h1,
    .inner-about-content h2,
    .inner-about-content h3,
    .inner-about-content h4,
    .inner-about-content h5,
    .inner-about-content h6 {
        font-size: 34px;
        line-height: 1.25;
        margin-bottom: 18px;
    }

    .inner-about-content p {
        font-size: 15px;
    }

    .inner-about-image-wrapper {
        min-height: 480px;
        margin-top: 30px;
    }

    .inner-about-image-left {
        width: 46%;
    }

    .inner-about-image-left img {
        height: 300px;
    }

    .inner-about-image-right {
        width: 50%;
    }

    .inner-about-image-right img {
        height: 320px;
    }


    /* What We Do Section */

    .speciality-col {
        margin-bottom: 36px;
    }

    .speciality-col:not(:last-child)::after {
        display: none;
    }


    /* Inner About "Why Choose Us" Section */

    .inner-about-why-section {
        padding: 60px 0;
    }

    .inner-about-why-header-row {
        margin-bottom: 36px;
    }

    .inner-about-why-item-inner {
        flex-direction: column;
        align-items: flex-start;
        padding: 36px 0;
    }

    .inner-about-why-number {
        flex: 0 0 auto;
        margin-bottom: 14px;
    }

    .inner-about-why-num-text {
        font-size: 56px;
    }

    .inner-about-why-divider {
        display: none;
    }

    .inner-about-why-content {
        flex-direction: column;
        align-items: flex-start;
        padding-left: 0;
        gap: 10px;
        width: 100%;
    }

    .inner-about-why-title {
        flex: 0 0 auto;
        font-size: 24px;
    }

    .inner-about-why-desc,
    .inner-about-why-desc p {
        font-size: 15px;
        line-height: 1.8;
    }


    /* ======== Contact Page ============ */

    .cu-section {
        padding: 70px 0;
    }

    .cu-info-card {
        padding: 34px 28px;
    }

    .cu-info-icon {
        width: 52px;
        height: 52px;
        font-size: 19px;
        margin-bottom: 18px;
    }

    .cu-info-section .row.gy-4 {
        row-gap: 22px !important;
    }

}


@media only screen and (min-width: 991px) and (max-width: 1200.98px) {

    /* Header */

    .header-right-actions {
        display: none !important;
    }

    .header-menu {
        flex: 0 0 83.3333% !important;
        max-width: 83.3333% !important;
        width: 83.3333% !important;
        justify-content: flex-end;
    }

    /* Hero Section */

    .banner-section,
    .banner-slide {
        min-height: 620px;
    }

    .banner-content {
        top: 50%;
        transform: translateY(calc(-50% + 30px));
        max-width: 640px;
    }

    .banner-title {
        font-size: 42px;
        line-height: 1.12;
    }

    .banner-description {
        max-width: 440px;
    }

    /* About Section */

    .about-us-page-content h2 {
        font-size: 33x;
    }

    .about-us-page-content p {
        font-size: 14px;
        line-height: 1.6;
    }

    .about-us-images {
        height: 440px;
    }

    /* Gallery Section */

    .gallery-section {
        padding: 75px 0;
    }

    .gallery-filters {
        margin-bottom: 44px;
    }

    .gallery-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 16px;
    }

    .gallery-item:nth-child(1),
    .gallery-item:nth-child(4) {
        grid-column: auto;
        grid-row: auto;
    }

    .gallery-img,
    .gallery-item:nth-child(1) .gallery-img {
        height: 280px;
    }

    /* Video Section */

    .video-section {
        padding: 75px 0;
    }

    .video-box video {
        height: 460px;
    }

    /* Testimonials Section */

    .testi-section {
        padding: 75px 0;
    }

    .testi-card {
        padding: 34px 26px 28px;
    }

    .testi-avatar-wrap {
        width: 68px;
        height: 68px;
        margin-bottom: 17px;
    }

    .testi-designation {
        margin-bottom: 18px;
    }

    .testi-nav {
        margin-top: 32px;
    }

    .testi-btn {
        width: 44px;
        height: 44px;
    }

    /* CTA Section */

    .cta-card {
        padding: 29px;
    }

    .cta-tag-wrap {
        margin-bottom: 26px;
    }

    .cta-heading {
        font-size: 50px;
    }

    .cta-heading-accent {
        margin-bottom: 24px;
    }

    .cta-subtext {
        font-size: 15px;
        max-width: 58%;
        margin-bottom: 40px;
    }

    .cta-btn-primary {
        padding: 15px 33px;
        font-size: 13px;
    }

    /* Footer Section */

    #mega-menu-wrap-max_mega_menu_1 .mega-menu-toggle,
    #mega-menu-wrap-max_mega_menu_2 .mega-menu-toggle {
        display: none !important;
    }

    #mega-menu-wrap-max_mega_menu_1 #mega-menu-max_mega_menu_1,
    #mega-menu-wrap-max_mega_menu_2 #mega-menu-max_mega_menu_2 {
        display: flex !important;
        position: static !important;
        flex-direction: column !important;
        width: 100% !important;
        height: auto !important;
        max-height: none !important;
        background: transparent !important;
        padding: 0 !important;
        margin: 0 !important;
        transform: none !important;
        box-shadow: none !important;
        visibility: visible !important;
    }

    #mega-menu-wrap-max_mega_menu_1 #mega-menu-max_mega_menu_1 > li.mega-menu-item.mega-current-menu-item > a.mega-menu-link,
    #mega-menu-wrap-max_mega_menu_2 #mega-menu-max_mega_menu_2 > li.mega-menu-item.mega-current-menu-item > a.mega-menu-link {
        background: transparent !important;
        color: #C4A478 !important;
    }


    /* Inner About Section */

    .inner-about-section {
        padding: 75px 0;
    }

    .inner-about-tag {
        font-size: 17px;
        margin-bottom: 18px;
    }

    .inner-about-content h1,
    .inner-about-content h2,
    .inner-about-content h3,
    .inner-about-content h4,
    .inner-about-content h5,
    .inner-about-content h6 {
        font-size: 36px;
        margin-bottom: 22px;
    }

    .inner-about-description {
        font-size: 15px;
        margin-bottom: 30px;
    }

    .inner-about-image-wrapper {
        min-height: 500px;
    }

    .inner-about-image-left {
        width: 48%;
    }

    .inner-about-image-left img {
        height: 300px;
    }

    .inner-about-image-right {
        width: 56%;
    }

    .inner-about-image-right img {
        height: 330px;
    }


    /* What We Do Section */

    .inner-what-we-do-section {
        padding: 75px 0;
    }

    .speciality-col:not(:last-child)::after {
        top: 52px;
    }

    .inner-what-we-do-icon-wrap {
        width: 115px;
        height: 115px;
    }

    .inner-icon img {
        width: 44px;
    }

    .inner-what-we-do-number {
        font-size: 27px;
        margin: 18px 0 9px;
    }

    .inner-what-we-do-title {
        font-size: 15px;
        max-width: 100%;
    }

    .inner-what-we-do-content p {
        padding: 0;
    }


    /* Inner Page Banner */

    .page-banner {
        min-height: 560px;
        padding-bottom: 75px;
    }

    .page-banner-eyebrow {
        letter-spacing: 3.5px;
        margin-bottom: 16px;
    }

    .page-banner-title {
        font-size: 62px;
        line-height: 1.12;
        margin: 0 0 19px;
    }

    .page-banner-sub {
        font-size: 15.5px;
        max-width: 52%;
    }

    .page-banner-line {
        margin-top: 25px;
    }

}


/* ==================DESKTOP NAV (1200px and up)================== */

@media only screen and (min-width: 1200px) {

    /* Hide the hamburger toggle and restore the standard horizontal nav bar */

    #mega-menu-wrap-primary .mega-menu-toggle {
        display: none !important;
    }

    #mega-menu-wrap-primary::before {
        display: none !important;
    }

    #mega-menu-wrap-primary .mega-menu-toggle + #mega-menu-primary {
        display: flex !important;
        flex-direction: row;
        align-items: center;
        position: static !important;
        top: auto;
        right: auto;
        left: auto;
        width: auto;
        max-width: none;
        height: auto;
        max-height: none;
        margin: 0;
        background-color: transparent !important;
        border-left: none;
        box-shadow: none;
        padding: 0 !important;
        z-index: auto;
        overflow: visible;
        transform: none;
        transition: none;
    }

    #mega-menu-wrap-primary .mega-menu-toggle + #mega-menu-primary > li.mega-menu-item > a.mega-menu-link {
        display: inline-block !important;
        width: auto;
        font-family: inherit !important;
        font-size: 13px !important;
        font-weight: 500 !important;
        padding: 0 25px;
        color: #ffffff !important;
        background: transparent !important;
    }

    #mega-menu-wrap-primary .mega-menu-toggle + #mega-menu-primary > li.mega-menu-item:hover > a.mega-menu-link,
    #mega-menu-wrap-primary .mega-menu-toggle + #mega-menu-primary > li.mega-current-menu-item > a.mega-menu-link {
        background-color: transparent !important;
        color: #C4A478 !important;
    }

    body.mega-menu-primary-mobile-open {
        overflow: visible;
    }

}