 /* --- Core Base Styles & Variables --- */
        :root {
            --luxury-deep: #2C1B24;
            --luxury-gold: #C5A880;
            --luxury-accent: #1F1119;
            --luxury-cream: #F9F6F0;
            --white: #ffffff;
            --gray-100: #f3f4f6;
            --gray-200: #e5e7eb;
            --gray-300: #d1d5db;
            --gray-400: #9ca3af;
            --gray-500: #6b7280;
            --gray-600: #4b5563;
        }

        * {
            box-sizing: border-box;
            margin: 0;
            padding: 0;
        }

        html {
            scroll-behavior: smooth;
        }

        body {
            background-color: var(--luxury-cream);
            color: var(--luxury-deep);
            /*font-family: 'Montserrat', sans-serif; 'Rajdhani',*/
           font-family: sans-serif;
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing: grayscale;
            overflow-x: hidden;
        }

        h1, h2, h3, h4, .font-serif {
            font-family: 'Cinzel', serif;
        }

        a {
            text-decoration: none;
            color: inherit;
        }

        button {
            background: none;
            border: none;
            cursor: pointer;
            font-family: inherit;
        }

        .container {
            width: 100%;
            max-width: 1280px;
            margin-right: auto;
            margin-left: auto;
            padding-left: 24px;
            padding-right: 24px;
        }

        /* --- Section Shared Typography --- */
        .section-header {
            text-align: center;
            margin-bottom: 50px;
        }
        .section-tag {
            color: var(--luxury-gold);
            letter-spacing: 0.15em;
            text-transform: uppercase;
            font-size: 12px;
            font-weight: 600;
            display: block;
            margin-bottom: 8px;
        }
        .section-title {
            font-size: 28px;
            font-weight: 700;
            color: var(--luxury-deep);
            letter-spacing: 0.05em;
        }
        @media (min-width: 768px) {
            .section-title { font-size: 38px; }
        }

        /* --- Utility Helper Styles --- */
        .uppercase { text-transform: uppercase; }
        .tracking-wider { letter-spacing: 0.05em; }
        .tracking-widest { letter-spacing: 0.15em; }
        .font-light { font-weight: 300; }
        .font-medium { font-weight: 500; }
        .font-semibold { font-weight: 600; }
        .font-bold { font-weight: 700; }

        /* --- Component Premium Effects --- */
        .glossy-card {
            position: relative;
            overflow: hidden;
        }
        .glossy-card::before {
            content: '';
            position: absolute;
            top: 0; left: -150%; width: 50%; height: 100%;
            background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.3) 50%, rgba(255,255,255,0) 100%);
            transform: skewX(-25deg);
            transition: 0.75s;
            z-index: 2;
        }
        .glossy-card:hover::before {
            left: 150%;
        }

        .premium-btn {
            position: relative;
            overflow: hidden;
            transition: all 0.4s ease;
            display: inline-block;
            font-size: 12px;
            font-weight: 600;
            letter-spacing: 0.15em;
            padding: 16px 32px;
            text-transform: uppercase;
            z-index: 1;
        }
        .premium-btn::after {
            content: '';
            position: absolute;
            top: 0; left: -100%; width: 100%; height: 100%;
            background: linear-gradient(90deg, #e0af72, rgb(227 217 205), #a6732d);
            transition: all 0.9s ease;
            z-index: -1;
        }
        .premium-btn:hover::after { 
            left: 100%; 
        }

        .premium-footer-link {
            position: relative;
            display: inline-block;
            padding-bottom: 4px;
            transition: color 0.3s;
        }
        .premium-footer-link::after {
            content: '';
            position: absolute;
            width: 100%;
            height: 2px;
            bottom: 0;
            left: 0;
            background-color: var(--luxury-gold);
            transform: scaleX(0);
            transform-origin: bottom right;
            transition: transform 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
        }
        .premium-footer-link:hover::after {
            transform: scaleX(1);
            transform-origin: bottom left;
        }

        /* --- 1. Top Announcement Bar --- */
        .top-bar {
            display: none;
            background-color: var(--luxury-accent);
            color: var(--white);
            font-size: 12px;
            padding: 10px 0;
            border-bottom: 1px solid rgba(197, 168, 128, 0.2);
            letter-spacing: 0.05em;
        }
        .top-bar-content {
            display: flex;
            justify-content: space-between;
            align-items: center;
        }
        .top-bar-contacts {
            display: flex;
            align-items: center;
            gap: 24px;
        }
        .top-bar-contacts a {
            display: flex;
            align-items: center;
            transition: color 0.3s;
        }
        .top-bar-contacts a i {
            margin-right: 8px;
            color: var(--luxury-gold);
        }
        .top-bar-contacts a:hover {
            color: var(--luxury-gold);
        }
        .top-bar-socials {
            display: flex;
            align-items: center;
            gap: 16px;
            font-size: 14px;
        }
        .top-bar-socials a {
            transition: color 0.3s;
        }
        .top-bar-socials a:hover {
            color: var(--luxury-gold);
        }

        @media (min-width: 768px) {
            .top-bar { display: block; }
        }

        /* --- 2. Navigation Header --- */
        header {
            position: sticky;
            top: 0;
            z-index: 100;
            background-color: #e4dace;
            box-shadow: 0 1px 3px rgba(0,0,0,0.05);
            border-bottom: 1px solid var(--gray-100);
        }
        .nav-container {
            display: flex;
            justify-content: space-between;
            align-items: center;
            padding: 16px 24px;
        }
        .logo {
            font-size: 30px;
            font-weight: 700;
            letter-spacing: 0.15em;
            color: var(--luxury-deep);
            flex-shrink: 0;
            display: flex;
            align-items: center;
        }
        .desktop-nav {
            display: none;
            align-items: center;
            gap: 30px;
            font-weight: 500;
            letter-spacing: 0.05em;
            font-size: 11px;
            text-transform: uppercase;
        }
        @media (min-width: 1140px) {
            .desktop-nav { gap: 67px; font-size: 13px; }
        }
        .desktop-nav > a, .desktop-dropdown-trigger {
            color: var(--gray-600);
            padding-bottom: 4px;
            transition: color 0.3s;
            border-bottom: 2px solid transparent;
        }
        .desktop-nav > a:hover, .desktop-dropdown-trigger:hover {
            color: var(--luxury-gold);
        }
        .desktop-nav a.active-link {
            color: var(--luxury-deep);
            border-bottom: 2px solid var(--luxury-gold);
            font-weight: 700;
        }
        
        /* Desktop Dropdown Submenu */
        .desktop-dropdown {
            position: relative;
            padding: 8px 0;
        }
        .desktop-dropdown-trigger i {
            font-size: 10px;
            margin-left: 4px;
        }
        .desktop-dropdown-menu {
            position: absolute;
            left: 0;
            top: 100%;
            margin-top: 8px;
            width: 224px;
            background-color: var(--luxury-deep);
            color: var(--white);
            box-shadow: 0 10px 25px rgba(0,0,0,0.15);
            opacity: 0;
            visibility: hidden;
            transform: translateY(8px);
            transition: all 0.3s ease;
            border-top: 2px solid var(--luxury-gold);
            z-index: 50;
        }
        .desktop-dropdown:hover .desktop-dropdown-menu {
            opacity: 1;
            visibility: visible;
            transform: translateY(0);
        }
        .desktop-dropdown-menu a {
            display: block;
            padding: 14px 20px;
            font-size: 11px;
            letter-spacing: 0.05em;
            border-bottom: 1px solid rgba(255,255,255,0.05);
            transition: all 0.3s;
        }
        .desktop-dropdown-menu a:last-child {
            border-bottom: none;
        }
        .desktop-dropdown-menu a:hover {
            background-color: var(--luxury-gold);
            color: var(--luxury-deep);
        }

        .mobile-menu-btn {
            display: block;
            color: var(--luxury-deep);
            font-size: 24px;
        }

        @media (min-width: 1024px) {
            .desktop-nav { display: flex; }
            .mobile-menu-btn { display: none; }
        }
        
        
        
        
        
        
       
        
        .desktop-nav > a,
.desktop-dropdown-trigger{
    position: relative;
    color: var(--gray-600);
    padding-bottom: 8px;
    transition: color 0.3s ease;
}

/* Golden line */
.desktop-nav > a::after,
.desktop-dropdown-trigger::after{
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 0;
    height: 2px;
    background: #c8a165; /* Golden Color */
    transition: width 0.4s ease;
}

/* Hover Effect */
.desktop-nav > a:hover::after,
.desktop-dropdown-trigger:hover::after{
    width: 100%;
}

.desktop-nav > a:hover,
.desktop-dropdown-trigger:hover{
    color: #2c2230;
}












        /* FIXED Mobile Drawer Menu (With Scroll Capability) */
        .mobile-menu {
            display: none;
            background-color: var(--white);
            border-top: 1px solid var(--gray-100);
            padding: 16px 24px;
            box-shadow: 0 10px 15px rgba(0,0,0,0.05);
            max-height: 85vh;
            overflow-y: auto;
        }
        .mobile-menu.open {
            display: block;
        }
        .mobile-menu > a, .mobile-dropdown-btn-wrapper button {
            display: block;
            font-weight: 500;
            color: var(--gray-600);
            padding: 12px 0;
            width: 100%;
            text-align: left;
            font-size: 14px;
            text-transform: uppercase;
            letter-spacing: 0.05em;
            border-bottom: 1px solid var(--gray-100);
        }
        .mobile-menu > a:hover, .mobile-dropdown-btn-wrapper button:hover {
            color: var(--luxury-gold);
        }
        .mobile-dropdown-btn-wrapper button {
            display: flex;
            justify-content: space-between;
            align-items: center;
        }
        
        .mobile-dropdown-content {
            max-height: 0;
            overflow-y: hidden;
            transition: max-height 0.35s cubic-bezier(0.4, 0, 0.2, 1);
            padding-left: 16px;
        }
        .mobile-dropdown-content.open {
            max-height: 100px;
            overflow-y: auto;
            margin-top: 4px;
            margin-bottom: 8px;
        }
        .mobile-dropdown-content a {
            display: block;
            font-size: 13px;
            color: var(--gray-500);
            padding: 8px 0;
            transition: color 0.2s;
        }
         
        /* Fixes the active line rendering on the desktop Services button element */
        button.desktop-dropdown-trigger.active-link {
           color: #2c2230 !important; /* Forces your var(--luxury-deep) tone */
        }
      button.desktop-dropdown-trigger.active-link::after {
           width: 100% !important; /* Keeps the golden accent line underneath filled */
        }

/* Optional mobile layout active styling highlights */
.mobile-menu > a.active-link,
.mobile-dropdown-btn-wrapper button.active-link {
    color: var(--luxury-gold) !important;
    font-weight: 700;
}
        /* --- 3. Hero Carousel Slider --- */
        .hero-section {
            position: relative;
            height: 500px;
            overflow: hidden;
            background-color: var(--luxury-accent);
        }
        @media (min-width: 768px) {
            .hero-section { height: 650px; }
        }
        .hero-slide {
            position: absolute;
            inset: 0;
            z-index: 10;
            opacity: 0;
            pointer-events: none;
            transition: opacity 1s ease-in-out;
        }
        .hero-slide.active {
            opacity: 1;
            pointer-events: auto;
        }
        .hero-slide img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            opacity: 0.45;
        }
        .hero-overlay {
            position: absolute;
            inset: 0;
            display: flex;
            align-items: center;
            justify-content: center;
            background-color: rgba(0,0,0,0.3);
        }
        .hero-content {
            text-align: center;
            color: var(--white);
            padding: 0 24px;
            max-width: 800px;
        }
        .hero-tagline {
            color: var(--luxury-gold);
            text-transform: uppercase;
            letter-spacing: 0.15em;
            font-size: 13px;
            font-weight: 600;
            display: block;
            margin-bottom: 16px;
        }
        .hero-title {
            font-size: 36px;
            font-weight: 700;
            letter-spacing: 0.05em;
            line-height: 1.2;
            margin-bottom: 20px;
        }
        @media (min-width: 768px) {
            .hero-title { font-size: 56px; }
        }
        .hero-desc {
            font-size: 14px;
            font-weight: 300;
            max-width: 600px;
            margin: 0 auto 32px auto;
            color: var(--gray-200);
            line-height: 1.6;
        }
        .hero-btn {
            background-color: var(--luxury-gold);
            color: var(--luxury-deep);
        }
        .hero-btn:hover {
            background-color: var(--white);
        }

        .hero-control {
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
            background-color: rgba(255,255,255,0.1);
            color: var(--white);
            width: 50px;
            height: 50px;
            display: flex;
            align-items: center;
            justify-content: center;
            border-radius: 50%;
            transition: all 0.3s;
            z-index: 30;
            backdrop-filter: blur(4px);
            border: 1px solid rgba(255,255,255,0.2);
        }
        .hero-control:hover {
            background-color: var(--luxury-gold);
            color: var(--luxury-deep);
        }
        .hero-prev { left: 16px; }
        .hero-next { right: 16px; }

        /* --- 4. About Section --- */
        .about-section {
            padding: 80px 0;
            background-color: var(--white);
        }
        .about-grid {
            display: grid;
            grid-template-columns: 1fr;
            gap: 48px;
            align-items: center;
        }
        @media (min-width: 1024px) {
            .about-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 80px; }
        }
        .about-image-wrapper {
            position: relative;
        }
        .about-image-border {
            border: 2px solid var(--luxury-gold);
            position: absolute;
            top: 16px; left: 16px; width: 100%; height: 100%;
            z-index: 0;
        }
        .about-img-box {
            position: relative;
            z-index: 10;
            width: 100%;
            height: 450px;
            box-shadow: 0 20px 40px rgba(0,0,0,0.1);
        }
        .about-img-box img {
            width: 100%;
            height: 100%;
            object-fit: cover;
        }
        .about-info {
            display: flex;
            flex-direction: column;
            gap: 20px;
        }
        .about-tag {
            color: var(--luxury-gold);
            font-weight: 600;
            letter-spacing: 0.15em;
            font-size: 12px;
            text-transform: uppercase;
        }
        .about-title {
            font-size: 28px;
            font-weight: 700;
            color: var(--luxury-deep);
            letter-spacing: 0.05em;
        }
        @media (min-width: 768px) {
            .about-title { font-size: 40px; }
        }
        .about-p {
            color: var(--gray-600);
            line-height: 1.7;
            font-size: 14px;
            font-weight: 300;
        }
        .about-btn {
            border: 1px solid var(--luxury-deep);
            color: var(--luxury-deep);
            align-self: flex-start;
            margin-top: 12px;
        }
        .about-btn:hover {
            background-color: var(--luxury-deep);
            color: var(--white);
        }

        /* --- 5. SERVICES SECTION (INFINITE LOOP RE-ENGINEERED) --- */
        .services-section {
            padding: 80px 0;
            background-color: var(--luxury-accent);
            color: var(--white);
        }
        .services-header {
            display: flex;
            flex-direction: column;
            justify-content: space-between;
            align-items: flex-start;
            margin-bottom: 40px;
        }
        @media (min-width: 768px) {
            .services-header { flex-direction: row; align-items: flex-end; }
        }
        .services-controls {
            display: flex;
            gap: 12px;
            margin-top: 16px;
        }
        @media (min-width: 768px) {
            .services-controls { margin-top: 0; }
        }
        .services-btn {
            background-color: var(--luxury-deep);
            border: 1px solid rgba(255,255,255,0.1);
            color: var(--white);
            width: 46px;
            height: 46px;
            display: flex;
            align-items: center;
            justify-content: center;
            transition: 0.3s;
        }
        .services-btn:hover {
            background-color: var(--luxury-gold);
            color: var(--luxury-deep);
        }

        .services-carousel-window {
            overflow: hidden;
            width: 100%;
        }
        .services-track {
            display: flex;
            gap: 24px;
        }
        .service-card {
            width: 100%;
            min-width: 100%;
            height: 420px;
            position: relative;
            background-color: var(--luxury-deep);
            border: 1px solid rgba(255,255,255,0.05);
            flex-shrink: 0;
        }
        @media (min-width: 640px) {
            .service-card { width: calc(50% - 12px); min-width: calc(50% - 12px); }
        }
        @media (min-width: 1024px) {
            .service-card { width: calc(33.333% - 16px); min-width: calc(33.333% - 16px); }
        }
        .service-card img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            opacity: 0.6;
            transition: transform 0.7s;
        }
        .service-card:hover img {
            transform: scale(1.05);
        }
        .service-card-overlay {
            position: absolute;
            inset: 0;
            background: linear-gradient(to top, var(--luxury-accent) 0%, transparent 60%);
            padding: 24px;
            display: flex;
            flex-direction: column;
            justify-content: flex-end;
        }
        .service-card h3 {
            font-size: 18px;
            font-weight: 700;
            color: var(--luxury-gold);
        }
        .service-card p {
            font-size: 13px;
            color: var(--gray-300);
            margin-top: 8px;
            line-height: 1.4;
        }

        /* --- 6. WHY CHOOSE US SECTION (FIXED PARALLAX EMBEDDED) --- */
        .choose-section {
            padding: 100px 0;
            background-image: linear-gradient(rgba(255, 255, 255, 0.9), rgba(255, 255, 255, 0.9)), url('https://images.unsplash.com/photo-1590736969955-71cb94801750?auto=format&fit=crop&w=1920&q=80');
            background-attachment: fixed;
            background-position: center;
            background-repeat: no-repeat;
            background-size: cover;
        }
        /* Mobile Performance Fallback for Background Fixed */
        @media (max-width: 1024px) {
            .choose-section {
                background-attachment: scroll;
            }
        }
        .choose-grid {
            display: grid;
            grid-template-columns: 1fr;
            gap: 30px;
        }
        @media (min-width: 768px) {
            .choose-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
        }
        @media (min-width: 1024px) {
            .choose-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
        }
        .choose-card {
            background-color: rgba(249, 246, 240, 0.85);
            backdrop-filter: blur(8px);
            padding: 40px 30px;
            border: 1px solid var(--gray-200);
            text-align: center;
            transition: all 0.3s ease;
        }
        .choose-card:hover {
            transform: translateY(-5px);
            border-color: var(--luxury-gold);
            background-color: var(--white);
            box-shadow: 0 15px 30px rgba(0,0,0,0.07);
        }
        .choose-icon-box {
            font-size: 32px;
            color: var(--luxury-gold);
            margin-bottom: 20px;
        }
        .choose-card h3 {
            font-size: 18px;
            font-weight: 600;
            margin-bottom: 12px;
            letter-spacing: 0.05em;
        }
        .choose-card p {
            font-size: 14px;
            color: var(--gray-600);
            line-height: 1.6;
        }

        /* --- 7. Artists & Visionaries Section --- */
        .artists-section {
            padding: 80px 0;
            background-color: var(--luxury-cream);
        }
        .artists-grid {
            display: grid;
            grid-template-columns: 1fr;
            gap: 30px;
        }
        @media (min-width: 640px) {
            .artists-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
        }
        @media (min-width: 1024px) {
            .artists-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
        }
        .artist-card {
            background-color: var(--white);
            border: 1px solid var(--gray-200);
            overflow: hidden;
        }
        .artist-img-container {
            height: 320px;
            overflow: hidden;
            position: relative;
        }
        .artist-img-container img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: transform 0.5s;
        }
        .artist-card:hover .artist-img-container img {
            transform: scale(1.06);
        }
        .artist-meta {
            padding: 20px;
            text-align: center;
        }
        .artist-meta h3 {
            font-size: 16px;
            font-weight: 700;
            letter-spacing: 0.05em;
            margin-bottom: 4px;
        }
        .artist-meta span {
            font-size: 12px;
            color: var(--luxury-gold);
            text-transform: uppercase;
            font-weight: 500;
            letter-spacing: 0.1em;
        }

        /* --- 8. Stats Grid Bar --- */
        .stats-section {
            padding: 60px 0;
            background-color: var(--white);
        }
        .stats-grid {
            display: grid;
            grid-template-columns: 1fr;
            background-color: var(--luxury-deep);
            color: var(--white);
            border: 1px solid rgba(197, 168, 128, 0.3);
        }
        @media (min-width: 640px) {
            .stats-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
        }
        @media (min-width: 1024px) {
            .stats-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
        }
        .stats-card {
            padding: 36px;
            text-align: center;
            border-bottom: 1px solid rgba(197, 168, 128, 0.2);
        }
        @media (min-width: 640px) {
            .stats-card { border-right: 1px solid rgba(197, 168, 128, 0.2); }
            .stats-grid div:nth-child(2n) { border-right: none; }
        }
        @media (min-width: 1024px) {
            .stats-card { border-bottom: none; border-right: 1px solid rgba(197, 168, 128, 0.2); }
            .stats-grid div:last-child { border-right: none; }
        }
        .stats-num {
            font-size: 42px;
            font-weight: 700;
            color: var(--luxury-gold);
        }
        .stats-label {
            font-size: 11px;
            text-transform: uppercase;
            letter-spacing: 0.1em;
            color: var(--gray-400);
            margin-top: 6px;
        }

        /* --- 9. Testimonials Section --- */
        .testimonials-section {
            padding: 80px 0;
            background-color: var(--luxury-accent);
            color: var(--white);
        }
        .testimonials-grid {
            display: grid;
            grid-template-columns: 1fr;
            gap: 30px;
        }
        @media (min-width: 768px) {
            .testimonials-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
        }
        @media (min-width: 1024px) {
            .testimonials-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
        }
        .testimonial-card {
            background-color: var(--luxury-deep);
            border: 1px solid rgba(255,255,255,0.05);
            padding: 40px 30px;
            display: flex;
            flex-direction: column;
            justify-content: space-between;
        }
        .stars-box {
            color: var(--luxury-gold);
            font-size: 14px;
            margin-bottom: 16px;
        }
        .testimonial-text {
            font-size: 14px;
            line-height: 1.7;
            color: var(--gray-300);
            font-style: italic;
            margin-bottom: 24px;
        }
        .client-info h4 {
            font-size: 15px;
            color: var(--luxury-gold);
            font-weight: 600;
        }
        .client-info span {
            font-size: 11px;
            color: var(--gray-400);
            text-transform: uppercase;
        }

        /* --- 10. Insights Journal Section --- */
        .journal-section {
            padding: 80px 0;
            background-color: var(--white);
        }
        .journal-grid {
            display: grid;
            grid-template-columns: 1fr;
            gap: 30px;
        }
        @media (min-width: 768px) {
            .journal-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
        }
        @media (min-width: 1024px) {
            .journal-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
        }
        .journal-card {
            background-color: var(--white);
            border: 1px solid var(--gray-200);
        }
        .journal-img-container {
            height: 240px;
            overflow: hidden;
        }
        .journal-img-container img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: transform 0.5s;
        }
        .journal-card:hover .journal-img-container img {
            transform: scale(1.05);
        }
        .journal-meta {
            padding: 24px;
        }
        .journal-date {
            font-size: 11px;
            color: var(--luxury-gold);
            text-transform: uppercase;
            font-weight: 600;
            letter-spacing: 0.1em;
            display: block;
            margin-bottom: 8px;
        }
        .journal-card h3 {
            font-size: 18px;
            font-weight: 600;
            line-height: 1.4;
            margin-bottom: 12px;
        }
        .journal-card p {
            font-size: 13px;
            color: var(--gray-600);
            line-height: 1.6;
        }

        /* --- 11. FAQ Section --- */
        .faq-section {
            padding: 80px 0;
            background-color: var(--luxury-cream);
        }
        .faq-container {
            max-width: 800px;
            margin: 0 auto;
        }
        .faq-list {
            display: flex;
            flex-direction: column;
            gap: 16px;
        }
        .faq-card {
            border: 1px solid var(--gray-200);
            background-color: var(--white);
        }
        .faq-card.active-card {
            background-color: var(--white);
            border-color: var(--luxury-gold);
        }
        .faq-trigger {
            width: 100%;
            display: flex;
            justify-content: space-between;
            align-items: center;
            padding: 20px 24px;
            text-align: left;
            font-weight: 600;
            color: var(--luxury-deep);
            background-color: #e4dace;
        }
        .faq-trigger span {
            font-size: 15px;
        }
        .faq-symbol {
            font-size: 18px;
            color: var(--luxury-gold);
        }
        .faq-panel {
            max-height: 0;
            overflow: hidden;
            transition: max-height 0.3s ease-out;
        }
        .faq-panel-inner {
            padding: 0 24px 20px 24px;
            font-size: 14px;
            color: var(--gray-600);
            line-height: 1.6;
        }

        /* --- 12. Map & Contact Section --- */
        .map-section {
            padding: 80px 0;
            background-color: var(--white);
        }
        .map-grid {
            display: grid;
            grid-template-columns: 1fr;
            gap: 40px;
        }
        @media (min-width: 1024px) {
            .map-grid { grid-template-columns: 4fr 5fr; gap: 60px; }
        }
        .contact-details-box {
            display: flex;
            flex-direction: column;
            gap: 24px;
        }
        .contact-item {
            display: flex;
            gap: 20px;
            align-items: flex-start;
        }
        .contact-icon {
            width: 46px;
            height: 46px;
            background-color: var(--luxury-cream);
            border: 1px solid var(--luxury-gold);
            display: flex;
            align-items: center;
            justify-content: center;
            color: var(--luxury-deep);
            font-size: 18px;
            flex-shrink: 0;
        }
        .contact-info-text h4 {
            font-size: 16px;
            font-weight: 600;
            margin-bottom: 4px;
        }
        .contact-info-text p {
            font-size: 14px;
            color: var(--gray-600);
            line-height: 1.5;
        }
        .map-wrapper {
            position: relative;
            width: 100%;
            height: 350px;
            border: 1px solid var(--gray-200);
            box-shadow: 0 10px 30px rgba(0,0,0,0.05);
        }
        @media (min-width: 1024px) {
            .map-wrapper { height: 100%; min-height: 400px; }
        }
        .map-wrapper iframe {
            width: 100%;
            height: 100%;
            border: 0;
        }

        /* --- 13. Premium Footer Section --- */
        .premium-footer {
            background-color: var(--luxury-accent);
            color: var(--white);
            padding: 80px 0 30px 0;
        }
        .footer-grid {
            display: grid;
            grid-template-columns: 1fr;
            gap: 40px;
            border-bottom: 1px solid rgba(255,255,255,0.1);
            padding-bottom: 48px;
        }
        @media (min-width: 768px) {
            .footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
        }
        @media (min-width: 1024px) {
            .footer-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
        }
        .footer-col {
            display: flex;
            flex-direction: column;
            gap: 16px;
        }
        .footer-brand {
            font-size: 24px;
            font-weight: 700;
            letter-spacing: 0.15em;
        }
        .footer-brand span { color: var(--luxury-gold); }
        .brand-text {
            font-size: 13px;
            color: var(--gray-300);
            line-height: 1.6;
        }
        .footer-socials {
            display: flex;
            gap: 12px;
            margin-top: 8px;
        }
        .footer-socials a {
            width: 36px;
            height: 36px;
            border: 1px solid rgba(255,255,255,0.1);
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            transition: 0.3s;
        }
        .footer-socials a:hover {
            background-color: var(--luxury-gold);
            color: var(--luxury-deep);
        }
        .footer-heading {
            font-size: 14px;
            font-weight: 600;
            text-transform: uppercase;
            letter-spacing: 0.05em;
            padding-bottom: 8px;
            border-bottom: 1px solid rgba(255,255,255,0.1);
        }
        .footer-links {
            list-style: none;
            display: flex;
            flex-direction: column;
            gap: 12px;
            font-size: 13px;
            color: var(--gray-300);
        }
        .footer-links a:hover { color: var(--luxury-gold); }
        
        .footer-bottom {
            margin-top: 30px;
            display: flex;
            flex-direction: column;
            justify-content: space-between;
            align-items: center;
            gap: 12px;
            font-size: 12px;
            color: var(--gray-400);
        }
        @media (min-width: 768px) {
            .footer-bottom { flex-direction: row; }
        }
        .footer-designer a { color: var(--luxury-gold); font-weight: 600; }

        /* --- 14. Floating Widgets --- */
        .floating-matrix {
            position: fixed;
            bottom: 66px;
            right: 24px;
            display: flex;
            flex-direction: column;
            gap: 12px;
            z-index: 90;
        }
        .float-btn {
            width: 48px;
            height: 48px;
            display: flex;
            align-items: center;
            justify-content: center;
            border-radius: 50%;
            box-shadow: 0 10px 20px rgba(0,0,0,0.15);
            transition: 0.3s;
        }
        .scroll-top-btn {
            display: none;
            background-color: var(--luxury-deep);
            color: var(--white);
            border: 1px solid rgba(197,168,128,0.3);
        }
        .scroll-top-btn:hover { background-color: var(--luxury-gold); color: var(--luxury-deep); }
        .whatsapp-btn { background-color: #25D366; color: var(--white); font-size: 22px; }


        .voe-testimonial-section{
    padding:80px 15px;
}

.voe-container{
    max-width:1100px;
    margin:auto;
}

.voe-heading-wrap{
    text-align:center;
    margin-bottom:40px;
}

.voe-main-heading{
    font-size:42px;
    font-weight:700;
    color:#2b1720;
    text-transform:uppercase;
    letter-spacing:2px;
}

.voe-slider-box{
    max-width:850px;
    margin:auto;
    background:#fff;
    border-radius:12px;
    box-shadow:0 10px 30px rgba(0,0,0,0.08);
    position:relative;
    overflow:hidden;
}

.voe-slider-wrapper{
    padding:50px 80px;
}

.voe-slide{
    display:none;
    text-align:center;
    animation:voeFade .5s ease;
}

.voe-slide.active{
    display:block;
}

@keyframes voeFade{
    from{
        opacity:0;
        transform:translateY(15px);
    }
    to{
        opacity:1;
        transform:translateY(0);
    }
}

.voe-review-text{
    font-size:20px;
    line-height:1.8;
    color:#6d7480;
    font-style:italic;
    margin-bottom:30px;
}

.voe-client-box{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:15px;
}

.voe-client-box img{
    width:60px;
    height:60px;
    border-radius:50%;
    object-fit:cover;
    border:2px solid #d7b87a;
}

.voe-client-box h4{
    font-size:18px;
    color:#2b1720;
    font-weight:700;
    margin-bottom:4px;
}

.voe-client-box span{
    font-size:14px;
    color:#8a919d;
}

.voe-nav-btn{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    width:45px;
    height:45px;
    border:none;
    border-radius:50%;
    background:#f3eee8;
    color:#2b1720;
    font-size:20px;
    cursor:pointer;
    transition:all .3s ease;
    z-index:2;
}

.voe-nav-btn:hover{
    background:#2b1720;
    color:#fff;
    transform:translateY(-50%) scale(1.08);
}

.voe-prev-btn{
    left:15px;
}

.voe-next-btn{
    right:15px;
}

/* Responsive */

@media(max-width:768px){

    .voe-testimonial-section{
        padding:60px 15px;
    }

    .voe-main-heading{
        font-size:28px;
    }

    .voe-slider-wrapper{
        padding:40px 55px;
    }

    .voe-review-text{
        font-size:16px;
        line-height:1.7;
    }

    .voe-client-box{
        flex-direction:column;
        text-align:center;
    }

    .voe-nav-btn{
        width:38px;
        height:38px;
        font-size:16px;
    }
}

@media(max-width:480px){

    .voe-slider-wrapper{
        padding:35px 45px;
    }

    .voe-main-heading{
        font-size:24px;
    }

    .voe-review-text{
        font-size:15px;
    }

    .voe-client-box img{
        width:50px;
        height:50px;
    }

    .voe-client-box h4{
        font-size:16px;
    }
}



/* ===========================
   WHY CHOOSE SECTION
=========================== */

.zkc-whychoose-section{
    position:relative;
    width:100%;
    padding:50px 0;
    background:url("../images/premium-quality-materials.jpeg") center center/cover no-repeat;
    background-attachment:fixed;
}

.zkc-whychoose-overlay{
    position:absolute;
    inset:0;
    background:rgba(0,0,0,0.35);
}

.zkc-whychoose-container{
    max-width:1200px;
    margin:auto;
    padding:0 20px;
    position:relative;
    z-index:2;
}

.zkc-whychoose-box{
    width:380px;
    background:rgba(42,22,32,0.55);
    backdrop-filter:blur(3px);
    -webkit-backdrop-filter:blur(3px);
    padding:22px 25px;
    border-top:3px solid #d4b07a;
    transition:0.4s;
}

.zkc-whychoose-box:hover{
    background:rgba(42,22,32,0.65);
}

.zkc-whychoose-subtitle{
    display:block;
    color:#d4b07a;
    font-size:12px;
    letter-spacing:2px;
    font-weight:700;
    margin-bottom:10px;
}

.zkc-whychoose-title{
    color:#ffffff;
    font-size:24px;
    line-height:1.3;
    margin-bottom:20px;
    font-family:Georgia, serif;
}

.zkc-whychoose-item{
    display:flex;
    gap:12px;
    margin-bottom:15px;
}

.zkc-whychoose-item:last-child{
    margin-bottom:0;
}

.zkc-whychoose-icon{
    width:38px;
    height:38px;
    min-width:38px;
    border-radius:50%;
    background:#d4b07a;
    color:#2a1620;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:14px;
    font-weight:bold;
}

.zkc-whychoose-content h3{
    color:#ffffff;
    font-size:16px;
    margin-bottom:4px;
}

.zkc-whychoose-content p{
    color:#dddddd;
    font-size:13px;
    line-height:1.6;
    margin:0;
}

/* ===========================
   TABLET
=========================== */

@media(max-width:991px){

    .zkc-whychoose-box{
        width:340px;
    }
}

/* ===========================
   MOBILE
=========================== */

@media(max-width:767px){

    .zkc-whychoose-section{
        padding:40px 0;
        background-attachment:scroll;
    }

    .zkc-whychoose-box{
        width:100%;
        max-width:100%;
        padding:20px;
    }

    .zkc-whychoose-title{
        font-size:22px;
    }

    .zkc-whychoose-item{
        gap:10px;
    }

    .zkc-whychoose-icon{
        width:34px;
        height:34px;
        min-width:34px;
    }
}

.btq-premium-stats{
    width:100%;
    padding:0;
    padding: 20px 0px;
}

.btq-stat-row{
    display:flex;
    flex-wrap:wrap;
}

.btq-stat-box{
    width:25%;
    height:200px;
    
    position:relative;
    overflow:hidden;
    border-right:1px solid rgba(255,255,255,0.1);
}

.btq-stat-box:last-child{
    border-right:none;
}

.btq-stat-bg{
    position:absolute;
    inset:0;
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat;
    /* background-attachment:fixed; */
    opacity:0.25;
    transition:0.6s ease;
}

.btq-stat-overlay{
    position:absolute;
    inset:0;
    background:rgb(35 15 25 / 66%);
}

.btq-stat-content{
    position:relative;
    z-index:2;
    height:100%;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    text-align:center;
    padding:20px;
}

.btq-stat-content span{
    font-size:36px;
    margin-bottom:10px;
}

.btq-stat-content h4{
    color:#d8b07a;
    font-size:34px;
    font-weight:700;
    margin:0 0 8px;
}

.btq-stat-content p{
    color:#ffffff;
    font-size:14px;
    letter-spacing:2px;
    margin:0;
    text-transform:uppercase;
}

.btq-stat-box:hover .btq-stat-bg{
    transform:scale(1.15);
    opacity:0.4;
}

/* Tablet */
@media(max-width:991px){
    .btq-stat-box{
        width:50%;
        height:180px;
    }
}

/* Mobile */
@media(max-width:576px){
    .btq-stat-box{
        width:100%;
        height:160px;
        border-right:none;
        border-bottom:1px solid rgba(255,255,255,0.1);
    }

    .btq-stat-content h4{
        font-size:28px;
    }

    .btq-stat-content p{
        font-size:13px;
        letter-spacing:1px;
    }
}

        /* ============================================================
           ABOUT PAGE BANNER — all classes prefixed "zka-"
           Zero collision with any existing or sarees-page class.
        ============================================================ */

        .zka-banner {
            position: relative;
            width: 100%;
            overflow: hidden;
            display: flex;
            align-items: center;
            justify-content: center;
            /* Mobile: no topbar */
            height: calc(100vh - 72px);
            min-height: 420px;
        }

        /* Desktop & up: subtract topbar too */
        @media (min-width: 768px) {
            .zka-banner {
                height: calc(100vh - 41px - 72px);
                min-height: 500px;
            }
        }

        /* ------ Fixed background image ------ */
        .zka-banner-bg-about-us {
            position: absolute;
            inset: 0;
            background-image: url('assets/images/about-us-banner.jpg');
            background-attachment: fixed;
            background-position: center center;
            background-size: cover;
            background-repeat: no-repeat;
            z-index: 0;
        }

        @media (max-width: 1024px) {
            .zka-banner-bg-about-us {
                background-attachment: scroll;
            }
        }

        /* ------ Dark gradient overlay ------ */
        .zka-banner-overlay {
            position: absolute;
            inset: 0;
            background: linear-gradient(
                160deg,
                rgba(44, 27, 36, 0.85) 0%,
                rgba(31, 17, 25, 0.65) 50%,
                rgba(44, 27, 36, 0.90) 100%
            );
            z-index: 1;
        }

        /* Subtle gold vignette ring — purely decorative */
        .zka-banner-vignette {
            position: absolute;
            inset: 0;
            background: radial-gradient(
                ellipse at center,
                transparent 40%,
                rgba(44, 27, 36, 0.45) 100%
            );
            z-index: 2;
            pointer-events: none;
        }

        /* ------ Content container ------ */
        .zka-banner-content {
            position: relative;
            z-index: 3;
            text-align: center;
            color: #ffffff;
            padding: 0 24px;
            max-width: 920px;
            width: 100%;
        }

        /* Top ornament line */
        .zka-banner-ornament {
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 14px;
            margin-bottom: 22px;
            opacity: 0;
            animation: zkaFadeUp 0.7s 0.1s ease forwards;
        }

        .zka-banner-ornament::before,
        .zka-banner-ornament::after {
            content: '';
            display: block;
            width: 60px;
            height: 1px;
            background: linear-gradient(to right, transparent, var(--luxury-gold));
        }

        .zka-banner-ornament::after {
            background: linear-gradient(to left, transparent, var(--luxury-gold));
        }

        .zka-banner-ornament i {
            color: var(--luxury-gold);
            font-size: 14px;
        }

        /* Eyebrow label */
        .zka-banner-eyebrow {
            display: block;
            color: var(--luxury-gold);
            font-size: 11px;
            font-weight: 700;
            letter-spacing: 0.28em;
            text-transform: uppercase;
            margin-bottom: 18px;
            opacity: 0;
            animation: zkaFadeUp 0.7s 0.25s ease forwards;
        }

        /* Main heading */
        .zka-banner-title {
            font-family: 'Cinzel', serif;
            font-size: 48px;
            font-weight: 700;
            letter-spacing: 0.04em;
            line-height: 1.2;
            color: #ffffff;
            margin-bottom: 10px;
            opacity: 0;
            animation: zkaFadeUp 0.8s 0.4s ease forwards;
        }

        .zka-banner-title .zka-title-gold {
            color: var(--luxury-gold);
            display: inline;
        }

       
        /* Stat pills row */
        .zka-banner-stats {
            display: flex;
            align-items: center;
            justify-content: center;
            flex-wrap: wrap;
            gap: 0;
            margin-bottom: 36px;
            opacity: 0;
            animation: zkaFadeUp 0.8s 0.7s ease forwards;
        }

        .zka-stat-item {
            padding: 14px 24px;
            border-right: 1px solid rgba(197, 168, 128, 0.3);
            text-align: center;
        }

        .zka-stat-item:last-child {
            border-right: none;
        }

        .zka-stat-num {
            display: block;
            font-family: 'Cinzel', serif;
            font-size: clamp(20px, 2.8vw, 30px);
            font-weight: 700;
            color: var(--luxury-gold);
            line-height: 1;
            margin-bottom: 4px;
            white-space: nowrap;
        }

        .zka-stat-label {
            display: block;
            font-size: 10px;
            font-weight: 600;
            letter-spacing: 0.15em;
            text-transform: uppercase;
            color: rgba(255, 255, 255, 0.55);
        }

        /* CTA button — gold-fill */
        .zka-btn {
            position: relative;
            overflow: hidden;
            display: inline-block;
            font-size: 11px;
            font-weight: 700;
            letter-spacing: 0.18em;
            padding: 15px 36px;
            text-transform: uppercase;
            background-color: var(--luxury-gold);
            color: var(--luxury-deep);
            border: 1px solid var(--luxury-gold);
            transition: color 0.4s ease;
            z-index: 1;
            opacity: 0;
            animation: zkaFadeUp 0.8s 0.85s ease forwards;
        }

        .zka-btn::after {
            content: '';
            position: absolute;
            top: 0;
            left: -100%;
            width: 100%;
            height: 100%;
            background: linear-gradient(90deg, #e0af72, rgb(227 217 205), #a6732d);
            transition: left 0.9s ease;
            z-index: -1;
        }

        .zka-btn:hover::after { left: 100%; }
        .zka-btn:hover { color: var(--luxury-deep); }

        /* ------ Breadcrumb (bottom-centre) ------ */
        .zka-breadcrumb {
            position: absolute;
            bottom: 80px;
            left: 50%;
            transform: translateX(-50%);
            z-index: 4;
            display: flex;
            align-items: center;
            gap: 8px;
            font-size: 11px;
            color: rgba(255, 255, 255, 0.5);
            letter-spacing: 0.06em;
            white-space: nowrap;
            opacity: 0;
            animation: zkaFadeIn 1s 1.1s ease forwards;
        }

        .zka-breadcrumb a {
            color: rgba(255, 255, 255, 0.5);
            transition: color 0.3s;
        }

        .zka-breadcrumb a:hover { color: var(--luxury-gold); }

        .zka-bc-sep {
            color: var(--luxury-gold);
            font-size: 8px;
        }

        .zka-bc-current { color: var(--luxury-gold); }

        /* ------ Scroll-down indicator (bottom) ------ */
        .zka-scroll-hint {
            position: absolute;
            bottom: 26px;
            right: 32px;
            z-index: 4;
            display: flex;
            flex-direction: column;
            align-items: center;
            gap: 6px;
            opacity: 0;
            animation: zkaFadeIn 1.2s 1.3s ease forwards;
        }

        .zka-scroll-hint span {
            font-size: 9px;
            font-weight: 700;
            letter-spacing: 0.15em;
            text-transform: uppercase;
            color: rgba(255, 255, 255, 0.45);
            writing-mode: vertical-rl;
            text-orientation: mixed;
        }

        .zka-scroll-line {
            width: 1px;
            height: 44px;
            background: linear-gradient(to bottom, var(--luxury-gold), transparent);
            animation: zkaScrollPulse 1.8s ease-in-out infinite;
        }

        @keyframes zkaScrollPulse {
            0%, 100% { transform: scaleY(1);   opacity: 1; }
            50%       { transform: scaleY(0.5); opacity: 0.4; }
        }

        /* ------ Keyframe animations ------ */
        @keyframes zkaFadeUp {
            from { opacity: 0; transform: translateY(28px); }
            to   { opacity: 1; transform: translateY(0);    }
        }

        @keyframes zkaFadeIn {
            from { opacity: 0; }
            to   { opacity: 1; }
        }

        @media (max-width: 600px) {
            .zka-stat-item {
                padding: 8px 12px;
                border-right: none;
            }
            .zka-banner-stats {
                gap: 10px;
            }
            .zka-scroll-hint {
                display: none;
            }
        }

/* ------ Fixed background image ------ */
        .zka-banner-bg-blogs {
            position: absolute;
            inset: 0;
            background-image: url('assets/images/blog-banner.jpg');
            background-attachment: fixed;
            background-position: center center;
            background-size: cover;
            background-repeat: no-repeat;
            z-index: 0;
        }

        @media (max-width: 1024px) {
            .zka-banner-bg-blogs {
                background-attachment: scroll;
            }
        }

/* Fixed-position background image */
.zks-banner-bg-boutique-atelier {
    position: absolute;
    inset: 0;
    background-image: url('assets/images/zakira-women-botique.jpg');
    background-attachment: fixed; 
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    z-index: 1;
}

/* Mobile fallback for fixed attachment */
@media (max-width: 1024px) {
    .zks-banner-bg-boutique-atelier {
        background-attachment: scroll;
    }
}

/* ------ Fixed background image ------ */
        .zka-banner-bg-contact-us {
            position: absolute;
            inset: 0;
            background-image: url('assets/images/contact-us-banner.jpg');
            background-attachment: fixed;
            background-position: center center;
            background-size: cover;
            background-repeat: no-repeat;
            z-index: 0;
        }

        @media (max-width: 1024px) {
            .zka-banner-bg-contact-us {
                background-attachment: scroll;
            }
        }
/* Fixed-position background image */
.zks-banner-bg-dupattas {
    position: absolute;
    inset: 0;
    background-image: url('assets/images/designer-dupattas.jpg');
    background-attachment: fixed; 
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    z-index: 1;
}

/* Mobile fallback for fixed attachment */
@media (max-width: 1024px) {
    .zks-banner-bg-dupattas {
        background-attachment: scroll;
    }
}

* Fixed-position background image */
.zks-banner-bg-dress-material {
    position: absolute;
    inset: 0;
    background-image: url('assets/images/zakira-dress-materials.jpg');
    background-attachment: fixed; 
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    z-index: 1;
}

/* Mobile fallback for fixed attachment */
@media (max-width: 1024px) {
    .zks-banner-bg-dress-material {
        background-attachment: scroll;
    }
}
/* ------ Fixed background image ------ */
        .zka-banner-bg-gallery {
            position: absolute;
            inset: 0;
            background-image: url('assets/images/gallery-banner.jpg');
            background-attachment: fixed;
            background-position: center center;
            background-size: cover;
            background-repeat: no-repeat;
            z-index: 0;
        }

        @media (max-width: 1024px) {
            .zka-banner-bg-gallery {
                background-attachment: scroll;
            }
        }

/* Fixed-position background image */
.zks-banner-bg-luxury-bottoms {
    position: absolute;
    inset: 0;
    background-image: url('assets/images/luxury-bottom-wear-banner.jpg');
    background-attachment: fixed; 
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    z-index: 1;
}

/* Mobile fallback for fixed attachment */
@media (max-width: 1024px) {
    .zks-banner-bg-luxury-bottoms {
        background-attachment: scroll;
    }
} 
/* Fixed-position background image */
.zks-banner-bg-premium-fabrics {
    position: absolute;
    inset: 0;
    background-image: url('assets/images/zakira-fabrics.jpg');
    background-attachment: fixed; 
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    z-index: 1;
}

/* Mobile fallback for fixed attachment */
@media (max-width: 1024px) {
    .zks-banner-bg-premium-fabrics {
        background-attachment: scroll;
    }
}

/* Fixed-position background image */
.zks-banner-bg-saree-collections {
    position: absolute;
    inset: 0;
    background-image: url('assets/images/zakira-sarees-warangal.jpg');
    background-attachment: fixed; 
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    z-index: 1;
}

/* Mobile fallback for fixed attachment */
@media (max-width: 1024px) {
    .zks-banner-bg-saree-collections {
        background-attachment: scroll;
    }
}


    /* ========================================================
   ZAKIRA PREMIUM CONTACT PAGE LAYOUT ENGINE
   ======================================================== */

/* Main Section Outer Frame & Base Spacing */
.zk-contact-section-wrapper {
    background-color: var(--luxury-cream);
    color: var(--luxury-deep);
    width: 100%;
    padding: 80px 0;
    box-sizing: border-box;
}

@media(max-width: 767px) {
    .zk-contact-section-wrapper {
        padding: 40px 0;
    }
}

/* Core Content Inner Layout Structure */
.zk-contact-content-container {
    width: 100%;
    max-width: 1280px;
    margin: 0 auto 60px auto;
    padding: 0 24px;
    display: grid;
    grid-template-columns: 5fr 7fr; /* Perfectly balances detailed info and long form fields */
    gap: 60px;
    align-items: start;
    box-sizing: border-box;
}

@media(max-width: 1024px) {
    .zk-contact-content-container {
        grid-template-columns: 1fr; /* Stacks column pairs smoothly for smaller interfaces */
        gap: 50px;
        margin-bottom: 40px;
    }
}

@media(max-width: 767px) {
    .zk-contact-content-container {
        padding: 0 16px;
    }
}

/* --- Left Column: Studio Information Block --- */
.zk-contact-info-block {
    display: flex;
    flex-direction: column;
}

.zk-contact-subtitle-label {
    color: var(--luxury-gold);
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.15em;
    font-weight: 600;
    margin-bottom: 12px;
    display: block;
}

.zk-contact-main-title {
    font-family: 'Cinzel', serif;
    font-size: 38px;
    font-weight: 700;
    line-height: 1.25;
    color: var(--luxury-deep);
    margin-bottom: 20px;
    letter-spacing: 0.02em;
}

@media(max-width: 767px) {
    .zk-contact-main-title {
        font-size: 28px;
    }
}

.zk-contact-description-text {
    font-size: 14px;
    line-height: 1.7;
    color: var(--gray-600);
    font-weight: 300;
    margin-bottom: 40px;
}

/* Detail Listing Cards Frame */
.zk-contact-details-list {
    display: flex;
    flex-direction: column;
    gap: 30px;
}

.zk-contact-detail-card {
    display: flex;
    gap: 20px;
    align-items: flex-start;
}

.zk-contact-detail-icon {
    width: 44px;
    height: 44px;
    min-width: 44px;
    background-color: var(--white);
    border: 1px solid var(--luxury-gold);
    color: var(--luxury-deep);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    font-weight: bold;
    transition: all 0.35s ease;
}

/* Interactive subtle lift on card element hover */
.zk-contact-detail-card:hover .zk-contact-detail-icon {
    background-color: var(--luxury-deep);
    color: var(--white);
    border-color: var(--luxury-deep);
    transform: rotate(45deg);
}

.zk-contact-detail-content {
    display: flex;
    flex-direction: column;
}

.zk-contact-detail-label {
    font-family: 'Cinzel', serif;
    font-size: 15px;
    font-weight: 700;
    color: var(--luxury-deep);
    margin: 0 0 6px 0;
    letter-spacing: 0.05em;
}

.zk-contact-detail-value {
    font-size: 13.5px;
    line-height: 1.6;
    color: var(--gray-600);
    font-weight: 300;
    margin: 0;
}


/* --- Right Column: Premium Inquiry Form --- */
.zk-contact-form-block {
    background-color: var(--white);
    border: 1px solid var(--gray-200);
    padding: 45px;
    position: relative;
    box-sizing: border-box;
}

/* Embeds the premium shimmery effect used in home components */
.zk-contact-form-block::before {
    content: '';
    position: absolute;
    top: 0; left: -150%; width: 50%; height: 100%;
    background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.3) 50%, rgba(255,255,255,0) 100%);
    transform: skewX(-25deg);
    transition: 0.85s;
    z-index: 2;
    pointer-events: none;
}

.zk-contact-form-block:hover::before {
    left: 150%;
}

@media(max-width: 767px) {
    .zk-contact-form-block {
        padding: 24px 20px;
    }
}

.zk-contact-interactive-form {
    display: flex;
    flex-direction: column;
    gap: 24px;
    width: 100%;
}

/* Inline Form Side-By-Side Structure */
.zk-contact-form-row-dual {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
}

@media(max-width: 640px) {
    .zk-contact-form-row-dual {
        grid-template-columns: 1fr;
        gap: 24px;
    }
}

.zk-contact-input-group {
    display: flex;
    flex-direction: column;
    gap: 8px;
    width: 100%;
}

.zk-contact-field-label {
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-weight: 600;
    color: var(--luxury-deep);
}

/* Universal Styling Architecture for Fields, Selectors, and Textareas */
.zk-contact-input-element,
.zk-contact-select-element,
.zk-contact-textarea-element {
    width: 100%;
    background-color: var(--luxury-cream);
    color: var(--luxury-deep);
    border: 1px solid var(--gray-200);
    padding: 14px 16px;
    font-size: 14px;
    font-family: sans-serif;
    outline: none;
    box-sizing: border-box;
    transition: all 0.3s ease;
    border-radius: 0; /* Maintains enterprise clean industrial aesthetics */
}

.zk-contact-select-element {
    cursor: pointer;
    appearance: none; /* Strips default styling out */
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='6' fill='none'><path stroke='%232C1B24' stroke-width='1.5' d='m1 1 4 4 4-4'/></svg>");
    background-repeat: no-repeat;
    background-position: right 18px center;
    padding-right: 40px;
}

.zk-contact-textarea-element {
    resize: vertical;
}

/* Interactive focus borders drawing from site brand identity colors */
.zk-contact-input-element:focus,
.zk-contact-select-element:focus,
.zk-contact-textarea-element:focus {
    border-color: var(--luxury-gold);
    background-color: var(--white);
    box-shadow: 0 4px 12px rgba(195, 168, 128, 0.08);
}

/* Custom Premium Interface Action Button */
.zk-contact-submit-button {
    background-color: var(--luxury-deep);
    color: var(--white);
    border: 1px solid var(--luxury-deep);
    padding: 16px 32px;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    cursor: pointer;
    align-self: flex-start;
    display: inline-flex;
    align-items: center;
    gap: 12px;
    position: relative;
    overflow: hidden;
    z-index: 1;
    transition: all 0.4s ease;
}

.zk-contact-submit-button span {
    transition: transform 0.3s ease;
    display: inline-block;
}

.zk-contact-submit-button::after {
    content: '';
    position: absolute;
    top: 0; left: -100%; width: 100%; height: 100%;
    background: linear-gradient(90deg, #e0af72, rgb(227, 217, 205), #a6732d);
    transition: all 0.6s ease;
    z-index: -1;
}

/* Interactive dynamic motion mapping on hover states */
.zk-contact-submit-button:hover::after {
    left: 100%;
}

.zk-contact-submit-button:hover {
    color: var(--luxury-deep);
    border-color: var(--luxury-gold);
    background-color: var(--white);
}

.zk-contact-submit-button:hover span {
    transform: translateX(4px);
}

@media(max-width: 640px) {
    .zk-contact-submit-button {
        width: 100%;
        justify-content: center;
    }
}


/* --- Bottom Section: Map Element Framework --- */
.zk-contact-bottom-map-wrapper {
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 24px;
    box-sizing: border-box;
}

@media(max-width: 767px) {
    .zk-contact-bottom-map-wrapper {
        padding: 0 16px;
    }
}

.zk-contact-map-container {
    position: relative;
    width: 100%;
    height: 450px;
    border: 1px solid var(--gray-200);
    box-shadow: 0 12px 35px rgba(0,0,0,0.04);
    background-color: var(--white);
}

@media(max-width: 767px) {
    .zk-contact-map-container {
        height: 320px;
    }
}

.zk-contact-iframe-map {
    width: 100%;
    height: 100%;
    border: 0;
    display: block;
}


    /* ========================================================
   ZAKIRA FIXED BLOG GRID & SIDEBAR STYLE MATRIX
   ======================================================== */

/* Root Content Frame Spacing */
.zkb-blog-layout-container {
    width: 100%;
    max-width: 1280px;
    margin: 80px auto;
    padding: 0 24px;
    box-sizing: border-box;
}

/* Base structural layout using explicit grid parameters */
.zkb-blog-layout-grid {
    display: grid;
    grid-template-columns: 8.5fr 3.5fr; /* Keeps sidebar proportioned correctly */
    gap: 40px; 
    align-items: start;
}

/* STRICT 2*N Grid Format Engine */
.zkb-blog-posts-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 30px; /* Uniform horizontal and vertical card spacing */
}

/* Modern Blog Card Item Frame */
.zkb-post-card {
    background-color: var(--white);
    border: 1px solid var(--gray-200);
    padding-bottom: 26px;
    display: flex;
    flex-direction: column;
    transition: all 0.35s ease;
}

.zkb-post-card:hover {
    transform: translateY(-4px);
    border-color: var(--luxury-gold);
    box-shadow: 0 12px 30px rgba(44, 27, 36, 0.05);
}

/* Card Visual Header */
.zkb-post-img-wrapper {
    position: relative;
    width: 100%;
    height: 240px;
    overflow: hidden;
    background-color: var(--luxury-accent);
}

.zkb-post-img-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.zkb-post-card:hover .zkb-post-img-wrapper img {
    transform: scale(1.05);
}

.zkb-post-category {
    position: absolute;
    bottom: 0;
    left: 0;
    background-color: var(--luxury-deep);
    color: var(--luxury-gold);
    font-size: 11px;
    text-transform: uppercase;
    font-weight: 600;
    letter-spacing: 0.1em;
    padding: 6px 14px;
    border-top: 2px solid var(--luxury-gold);
}

/* Inside Card Spacing Parameters */
.zkb-post-meta {
    padding: 20px 24px 10px 24px;
    font-size: 12px;
    color: var(--gray-500);
}

.zkb-post-meta i {
    color: var(--luxury-gold);
    margin-right: 4px;
}

.zkb-post-title {
    font-family: 'Cinzel', serif;
    font-size: 18px;
    line-height: 1.4;
    font-weight: 700;
    padding: 0 24px 12px 24px;
}

.zkb-post-title a {
    color: var(--luxury-deep);
    transition: color 0.3s ease;
}

.zkb-post-title a:hover {
    color: var(--luxury-gold);
}

.zkb-post-excerpt {
    font-size: 13.5px;
    line-height: 1.6;
    color: var(--gray-600);
    padding: 0 24px 20px 24px;
    font-weight: 300;
    flex-grow: 1; /* Pushes layout actions uniformly to the baseline */
}

/* Action Trigger Golden Line Interaction */
.zkb-readmore-link {
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.15em;
    font-weight: 600;
    color: var(--luxury-deep);
    margin-left: 24px;
    align-self: flex-start;
    position: relative;
    padding-bottom: 4px;
}

.zkb-readmore-link::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 20px;
    height: 2px;
    background: #c8a165; 
    transition: width 0.35s ease;
}

.zkb-post-card:hover .zkb-readmore-link::after {
    width: 100%;
}

/* --- SIDEBAR WIDGET SYSTEM --- */
.zkb-blog-sidebar {
    width: 100%;
}

.zkb-sidebar-widget {
    background-color: var(--white);
    border: 1px solid var(--gray-200);
    padding: 30px 24px;
}

.zkb-widget-title {
    font-family: 'Cinzel', serif;
    font-size: 15px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: var(--luxury-deep);
}

.zkb-widget-divider {
    width: 35px;
    height: 2px;
    background-color: var(--luxury-gold);
    margin: 12px 0 24px 0;
}

/* Recent Posts Module Layout */
.zkb-recent-posts-list {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.zkb-recent-item {
    display: flex;
    gap: 14px;
    align-items: center;
    text-decoration: none;
}

.zkb-recent-img {
    width: 65px;
    height: 65px;
    flex-shrink: 0;
    background-color: var(--luxury-accent);
}

.zkb-recent-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.zkb-recent-info h4 {
    font-size: 13px;
    font-weight: 600;
    line-height: 1.4;
    color: var(--luxury-deep);
    margin: 0 0 4px 0;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    transition: color 0.3s;
}

.zkb-recent-item:hover h4 {
    color: var(--luxury-gold);
}

.zkb-recent-info span {
    font-size: 11px;
    color: var(--gray-400);
    text-transform: uppercase;
}

/* --- HOME PAGE GLOSSY EFFECT BRIDGE --- */
.zkb-glossy-card {
    position: relative;
    overflow: hidden;
}
.zkb-glossy-card::before {
    content: '';
    position: absolute;
    top: 0; left: -150%; width: 50%; height: 100%;
    background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.25) 50%, rgba(255,255,255,0) 100%);
    transform: skewX(-25deg);
    transition: 0.75s;
    z-index: 2;
}
.zkb-post-card:hover::before {
    left: 150%;
}

/* ========================================================
   RESPONSIVE LAYOUT ENGINE FOR MOBILE AND TABLET
   ======================================================== */

/* Tablet Viewports */
@media (max-width: 1024px) {
    .zkb-blog-layout-container {
        margin: 50px auto;
        padding: 0 20px;
    }
    .zkb-blog-layout-grid {
        grid-template-columns: 1fr; /* Stacks sidebar cleanly below the main view */
        gap: 50px;
    }
}

/* Mobile Viewports */
@media (max-width: 767px) {
    .zkb-blog-layout-container {
        margin: 40px auto;
        padding: 0 16px;
    }
    .zkb-blog-posts-grid {
        grid-template-columns: 1fr; /* Converts strictly to 1 column pattern on tiny mobile screens */
        gap: 30px;
    }
    .zkb-post-img-wrapper {
        height: 210px;
    }
    .zkb-post-title {
        font-size: 17px;
    }
}


/* ========================================================
   ZAKIRA PREMIUM SERVICE GALLERY INTEGRATED STYLING
   ======================================================== */

.zkg-gallery-page-wrapper {
    background-color: var(--luxury-cream);
    color: var(--luxury-deep);
    width: 100%;
    padding: 40px 0 80px 0;
    box-sizing: border-box;
}

.zkg-gallery-section {
    max-width: 1280px;
    margin: 0 auto 80px auto;
    padding: 0 24px;
    box-sizing: border-box;
}

@media(max-width: 767px) {
    .zkg-gallery-section {
        margin-bottom: 50px;
        padding: 0 16px;
    }
}

/* Heading Alignment Elements */
.zkg-section-header {
    text-align: center;
    margin-bottom: 36px;
}

.zkg-section-tag {
    color: var(--luxury-gold);
    letter-spacing: 0.15em;
    text-transform: uppercase;
    font-size: 11px;
    font-weight: 600;
    display: block;
    margin-bottom: 6px;
}

.zkg-section-title {
    font-family: 'Cinzel', serif;
    font-size: 30px;
    font-weight: 700;
    color: var(--luxury-deep);
    letter-spacing: 0.05em;
    margin: 0;
}

@media(max-width: 767px) {
    .zkg-section-title { font-size: 24px; }
}

/* STRICT 4*N Grid Structural Engine */
.zkg-gallery-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 24px;
}

@media (max-width: 1024px) {
    .zkg-gallery-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 20px;
    }
}

@media (max-width: 576px) {
    .zkg-gallery-grid {
        grid-template-columns: repeat(1, minmax(0, 1fr));
        gap: 20px;
    }
}

/* Gallery Inner Card Framework */
.zkg-gallery-item {
    background-color: var(--white);
    border: 1px solid var(--gray-200);
    height: 380px;
    overflow: hidden;
    cursor: pointer;
    position: relative;
    box-sizing: border-box;
}

.zkg-gallery-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.zkg-gallery-item:hover img {
    transform: scale(1.05);
}

/* Embedded Glossy Card Transition Framework */
.zkg-glossy-card {
    position: relative;
}
.zkg-glossy-card::before {
    content: '';
    position: absolute;
    top: 0; left: -150%; width: 50%; height: 100%;
    background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.25) 50%, rgba(255,255,255,0) 100%);
    transform: skewX(-25deg);
    transition: 0.75s ease;
    z-index: 2;
}
.zkg-gallery-item:hover::before {
    left: 150%;
}

/* ========================================================
   LIGHTBOX ARCHITECTURE & ZOOM SYSTEM
   ======================================================== */

.zkg-lightbox-overlay {
    position: fixed;
    inset: 0;
    background-color: rgba(31, 17, 25, 0.96); 
    z-index: 2000;
    display: none;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.zkg-lightbox-overlay.zkg-active {
    display: flex;
    opacity: 1;
}

/* RIGHT-ALIGNED LIGHTBOX HEAD GROUP CONTAINER */
.zkg-lightbox-top-right-group {
    position: absolute;
    top: 30px;
    right: 40px;
    display: flex;
    align-items: center;
    gap: 24px;
    z-index: 2015;
}

/* ZOOM CONTROL ENGINE PANELS */
.zkg-zoom-controls {
    display: flex;
    gap: 8px;
}

.zkg-zoom-controls button {
    background: rgba(44, 27, 36, 0.6);
    border: 1px solid rgba(197, 168, 128, 0.4);
    color: var(--luxury-gold);
    width: 40px;
    height: 40px;
    font-size: 20px;
    font-weight: 400;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
    border-radius: 4px;
    line-height: 1;
}

.zkg-zoom-controls button:hover {
    background-color: var(--luxury-gold);
    color: var(--luxury-deep);
    border-color: var(--luxury-gold);
    transform: scale(1.05);
}

/* Reset baseline layout close button positioning styles */
.zkg-lightbox-close {
    position: relative;
    top: auto;
    right: auto;
    background: none;
    border: none;
    color: var(--luxury-gold);
    font-size: 44px;
    line-height: 1;
    cursor: pointer;
    transition: color 0.3s, transform 0.3s;
}

.zkg-lightbox-close:hover {
    color: var(--white);
    transform: scale(1.1);
}

@media(max-width: 767px) {
    .zkg-lightbox-top-right-group {
        top: 20px;
        right: 20px;
        gap: 12px;
    }
    .zkg-zoom-controls button {
        width: 34px;
        height: 34px;
        font-size: 16px;
    }
    .zkg-lightbox-close {
        font-size: 36px;
    }
}

.zkg-lightbox-view {
    max-width: 85%;
    max-height: 80vh;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}

.zkg-lightbox-view img {
    max-width: 100%;
    max-height: 80vh;
    object-fit: contain;
    box-shadow: 0 20px 50px rgba(0,0,0,0.5);
    cursor: zoom-in;
    /* Transition applies on transform scales to ensure silky performance */
    transition: transform 0.2s ease-out;
    user-select: none;
}

/* Navigation Arrow System */
.zkg-lightbox-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(44, 27, 36, 0.6);
    border: 1px solid rgba(197, 168, 128, 0.4);
    color: var(--luxury-gold);
    width: 54px;
    height: 54px;
    font-size: 18px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
    z-index: 2005;
}

.zkg-lightbox-nav:hover {
    background-color: var(--luxury-gold);
    color: var(--luxury-deep);
    border-color: var(--luxury-gold);
}

.zkg-nav-left { left: 30px; }
.zkg-nav-right { right: 30px; }

@media(max-width: 767px) {
    .zkg-lightbox-nav {
        width: 42px;
        height: 42px;
        font-size: 14px;
    }
    .zkg-nav-left { left: 10px; }
    .zkg-nav-right { right: 10px; }
}
/* The active class that JavaScript will inject */






  /*==============================
    ZKBX CATEGORY SECTION
==============================*/

.zkbx-category-section{
    padding:70px 20px;
    background:#fff;
}

.zkbx-category-container{
    max-width:1180px;
    margin:auto;
    display:grid;
    grid-template-columns:repeat(5,1fr);
    gap:16px;
}

.zkbx-category-box{
    height:60px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#fff;
    border:1px solid #e7d6c4;
    color:#23172a;
    font-size:16px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:1px;
    /*cursor:pointer;*/
    transition:all .35s ease;
    user-select:none;
    text-align: center;
}

/* Same hover effect as your screenshot */
.zkbx-category-box:hover,
.zkbx-category-box.zkbx-active{
    background:#d8bc91;
    border-color:#d8bc91;
    color:#23172a;
}

/* Optional lift effect */
.zkbx-category-box:hover{
    transform:translateY(-2px);
}

/* Responsive */

@media (max-width:991px){

    .zkbx-category-container{
        grid-template-columns:repeat(3,1fr);
    }

}

@media (max-width:767px){

    .zkbx-category-container{
        grid-template-columns:repeat(2,1fr);
        gap:12px;
    }

    .zkbx-category-box{
        height:56px;
        font-size:14px;
    }

}

@media (max-width:480px){

    .zkbx-category-container{
        grid-template-columns:1fr;
    }

}









/*===============================
NSH Premium Gallery
===============================*/

.nshgalleryx-section{
    padding:90px 20px;
    background:#fafafa;
}

.nshgalleryx-container{
    max-width:1200px;
    margin:auto;
}

.nshgalleryx-heading{
    text-align:center;
    margin-bottom:55px;
}

.nshgalleryx-heading span{
    color:#b88746;
    font-size:15px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:2px;
}

.nshgalleryx-heading h2{
    margin:12px 0;
    font-size:42px;
    color:#222;
}

.nshgalleryx-heading p{
    max-width:700px;
    margin:auto;
    color:#666;
    line-height:1.8;
}

/* Grid */

.nshgalleryx-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:25px;
}

/* Card */

.nshgalleryx-card{
    position:relative;
    overflow:hidden;
    border-radius:16px;
    background:#fff;
    box-shadow:0 12px 35px rgba(0,0,0,.08);
    cursor:pointer;
}

.nshgalleryx-card img{
    width:100%;
    height:270px;
    object-fit:cover;
    display:block;
    transition:.6s ease;
}

/* Premium Gold Overlay */

.nshgalleryx-overlay{
    position:absolute;
    inset:0;
    display:flex;
    justify-content:center;
    align-items:center;
    background:linear-gradient(135deg, rgba(74, 52, 18, .15) 0%, rgb(124 107 83 / 45%) 35%, rgb(124 110 86 / 70%) 65%, rgba(240, 218, 168, .45) 100%);
    opacity:0;
    transition:.45s ease;
}

.nshgalleryx-overlay span{

    color:#fff;
    font-size:18px;
    font-weight:600;
    letter-spacing:1px;
    text-transform:uppercase;

    padding:12px 26px;

    border:1px solid rgba(255,255,255,.45);

    background:rgba(255,255,255,.12);

    backdrop-filter:blur(4px);

    transform:translateY(20px);

    transition:.4s ease;

}

.nshgalleryx-card:hover img{

    transform:scale(1.08);

}

.nshgalleryx-card:hover .nshgalleryx-overlay{

    opacity:1;

}

.nshgalleryx-card:hover .nshgalleryx-overlay span{

    transform:translateY(0);

}

/*=========================
Responsive
=========================*/

@media(max-width:1100px){

.nshgalleryx-grid{

grid-template-columns:repeat(3,1fr);

}

}

@media(max-width:768px){

.nshgalleryx-grid{

grid-template-columns:repeat(2,1fr);
gap:18px;

}

.nshgalleryx-card img{

height:230px;

}

.nshgalleryx-heading h2{

font-size:34px;

}

}

@media(max-width:576px){

.nshgalleryx-section{

padding:70px 15px;

}

.nshgalleryx-grid{

grid-template-columns:1fr;

}

.nshgalleryx-card img{

height:250px;

}

.nshgalleryx-heading h2{

font-size:28px;

}

.nshgalleryx-overlay span{

font-size:16px;
padding:10px 20px;

}

}
















        /* ============================================================
           ABOUT PAGE BANNER — all classes prefixed "zka-"
           Zero collision with any existing or sarees-page class.
        ============================================================ */

        .zka-banner {
            position: relative;
            width: 100%;
            overflow: hidden;
            display: flex;
            align-items: center;
            justify-content: center;
            /* Mobile: no topbar */
            height: calc(100vh - 72px);
            min-height: 420px;
        }

        /* Desktop & up: subtract topbar too */
        @media (min-width: 768px) {
            .zka-banner {
                height: calc(100vh - 41px - 72px);
                min-height: 500px;
            }
        }

        

        /* ------ Dark gradient overlay ------ */
        .zka-banner-overlay {
            position: absolute;
            inset: 0;
            background: linear-gradient(
                160deg,
                rgba(44, 27, 36, 0.85) 0%,
                rgba(31, 17, 25, 0.65) 50%,
                rgba(44, 27, 36, 0.90) 100%
            );
            z-index: 1;
        }

        /* Subtle gold vignette ring — purely decorative */
        .zka-banner-vignette {
            position: absolute;
            inset: 0;
            background: radial-gradient(
                ellipse at center,
                transparent 40%,
                rgba(44, 27, 36, 0.45) 100%
            );
            z-index: 2;
            pointer-events: none;
        }

        /* ------ Content container ------ */
        .zka-banner-content {
            position: relative;
            z-index: 3;
            text-align: center;
            color: #ffffff;
            padding: 0 24px;
            max-width: 920px;
            width: 100%;
        }

        /* Top ornament line */
        .zka-banner-ornament {
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 14px;
            margin-bottom: 22px;
            opacity: 0;
            animation: zkaFadeUp 0.7s 0.1s ease forwards;
        }

        .zka-banner-ornament::before,
        .zka-banner-ornament::after {
            content: '';
            display: block;
            width: 60px;
            height: 1px;
            background: linear-gradient(to right, transparent, var(--luxury-gold));
        }

        .zka-banner-ornament::after {
            background: linear-gradient(to left, transparent, var(--luxury-gold));
        }

        .zka-banner-ornament i {
            color: var(--luxury-gold);
            font-size: 14px;
        }

        /* Eyebrow label */
        .zka-banner-eyebrow {
            display: block;
            color: var(--luxury-gold);
            font-size: 11px;
            font-weight: 700;
            letter-spacing: 0.28em;
            text-transform: uppercase;
            margin-bottom: 18px;
            opacity: 0;
            animation: zkaFadeUp 0.7s 0.25s ease forwards;
        }

        /* Main heading */
        .zka-banner-title {
            font-family: 'Cinzel', serif;
            font-size: 48px;
            font-weight: 700;
            letter-spacing: 0.04em;
            line-height: 1.2;
            color: #ffffff;
            margin-bottom: 10px;
            opacity: 0;
            animation: zkaFadeUp 0.8s 0.4s ease forwards;
        }

        .zka-banner-title .zka-title-gold {
            color: var(--luxury-gold);
            display: inline;
        }

       
        /* Stat pills row */
        .zka-banner-stats {
            display: flex;
            align-items: center;
            justify-content: center;
            flex-wrap: wrap;
            gap: 0;
            margin-bottom: 36px;
            opacity: 0;
            animation: zkaFadeUp 0.8s 0.7s ease forwards;
        }

        .zka-stat-item {
            padding: 14px 24px;
            border-right: 1px solid rgba(197, 168, 128, 0.3);
            text-align: center;
        }

        .zka-stat-item:last-child {
            border-right: none;
        }

        .zka-stat-num {
            display: block;
            font-family: 'Cinzel', serif;
            font-size: clamp(20px, 2.8vw, 30px);
            font-weight: 700;
            color: var(--luxury-gold);
            line-height: 1;
            margin-bottom: 4px;
            white-space: nowrap;
        }

        .zka-stat-label {
            display: block;
            font-size: 10px;
            font-weight: 600;
            letter-spacing: 0.15em;
            text-transform: uppercase;
            color: rgba(255, 255, 255, 0.55);
        }

        /* CTA button — gold-fill */
        .zka-btn {
            position: relative;
            overflow: hidden;
            display: inline-block;
            font-size: 11px;
            font-weight: 700;
            letter-spacing: 0.18em;
            padding: 15px 36px;
            text-transform: uppercase;
            background-color: var(--luxury-gold);
            color: var(--luxury-deep);
            border: 1px solid var(--luxury-gold);
            transition: color 0.4s ease;
            z-index: 1;
            opacity: 0;
            animation: zkaFadeUp 0.8s 0.85s ease forwards;
        }

        .zka-btn::after {
            content: '';
            position: absolute;
            top: 0;
            left: -100%;
            width: 100%;
            height: 100%;
            background: linear-gradient(90deg, #e0af72, rgb(227 217 205), #a6732d);
            transition: left 0.9s ease;
            z-index: -1;
        }

        .zka-btn:hover::after { left: 100%; }
        .zka-btn:hover { color: var(--luxury-deep); }

        /* ------ Breadcrumb (bottom-centre) ------ */
        .zka-breadcrumb {
            position: absolute;
            bottom: 80px;
            left: 50%;
            transform: translateX(-50%);
            z-index: 4;
            display: flex;
            align-items: center;
            gap: 8px;
            font-size: 11px;
            color: rgba(255, 255, 255, 0.5);
            letter-spacing: 0.06em;
            white-space: nowrap;
            opacity: 0;
            animation: zkaFadeIn 1s 1.1s ease forwards;
        }

        .zka-breadcrumb a {
            color: rgba(255, 255, 255, 0.5);
            transition: color 0.3s;
        }

        .zka-breadcrumb a:hover { color: var(--luxury-gold); }

        .zka-bc-sep {
            color: var(--luxury-gold);
            font-size: 8px;
        }

        .zka-bc-current { color: var(--luxury-gold); }

        /* ------ Scroll-down indicator (bottom) ------ */
        .zka-scroll-hint {
            position: absolute;
            bottom: 26px;
            right: 32px;
            z-index: 4;
            display: flex;
            flex-direction: column;
            align-items: center;
            gap: 6px;
            opacity: 0;
            animation: zkaFadeIn 1.2s 1.3s ease forwards;
        }

        .zka-scroll-hint span {
            font-size: 9px;
            font-weight: 700;
            letter-spacing: 0.15em;
            text-transform: uppercase;
            color: rgba(255, 255, 255, 0.45);
            writing-mode: vertical-rl;
            text-orientation: mixed;
        }

        .zka-scroll-line {
            width: 1px;
            height: 44px;
            background: linear-gradient(to bottom, var(--luxury-gold), transparent);
            animation: zkaScrollPulse 1.8s ease-in-out infinite;
        }

        @keyframes zkaScrollPulse {
            0%, 100% { transform: scaleY(1);   opacity: 1; }
            50%       { transform: scaleY(0.5); opacity: 0.4; }
        }

        /* ------ Keyframe animations ------ */
        @keyframes zkaFadeUp {
            from { opacity: 0; transform: translateY(28px); }
            to   { opacity: 1; transform: translateY(0);    }
        }

        @keyframes zkaFadeIn {
            from { opacity: 0; }
            to   { opacity: 1; }
        }

        @media (max-width: 600px) {
            .zka-stat-item {
                padding: 8px 12px;
                border-right: none;
            }
            .zka-banner-stats {
                gap: 10px;
            }
            .zka-scroll-hint {
                display: none;
            }
        }
        
        
        /* ============================================================
           ABOUT PAGE BANNER — all classes prefixed "zka-"
           Zero collision with any existing or sarees-page class.
        ============================================================ */

        .zka-banner {
            position: relative;
            width: 100%;
            overflow: hidden;
            display: flex;
            align-items: center;
            justify-content: center;
            /* Mobile: no topbar */
            height: calc(100vh - 72px);
            min-height: 420px;
        }

        /* Desktop & up: subtract topbar too */
        @media (min-width: 768px) {
            .zka-banner {
                height: calc(100vh - 41px - 72px);
                min-height: 500px;
            }
        }

       

        /* ------ Dark gradient overlay ------ */
        .zka-banner-overlay {
            position: absolute;
            inset: 0;
            background: linear-gradient(
                160deg,
                rgba(44, 27, 36, 0.85) 0%,
                rgba(31, 17, 25, 0.65) 50%,
                rgba(44, 27, 36, 0.90) 100%
            );
            z-index: 1;
        }

        /* Subtle gold vignette ring — purely decorative */
        .zka-banner-vignette {
            position: absolute;
            inset: 0;
            background: radial-gradient(
                ellipse at center,
                transparent 40%,
                rgba(44, 27, 36, 0.45) 100%
            );
            z-index: 2;
            pointer-events: none;
        }

        /* ------ Content container ------ */
        .zka-banner-content {
            position: relative;
            z-index: 3;
            text-align: center;
            color: #ffffff;
            padding: 0 24px;
            max-width: 920px;
            width: 100%;
        }

        /* Top ornament line */
        .zka-banner-ornament {
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 14px;
            margin-bottom: 22px;
            opacity: 0;
            animation: zkaFadeUp 0.7s 0.1s ease forwards;
        }

        .zka-banner-ornament::before,
        .zka-banner-ornament::after {
            content: '';
            display: block;
            width: 60px;
            height: 1px;
            background: linear-gradient(to right, transparent, var(--luxury-gold));
        }

        .zka-banner-ornament::after {
            background: linear-gradient(to left, transparent, var(--luxury-gold));
        }

        .zka-banner-ornament i {
            color: var(--luxury-gold);
            font-size: 14px;
        }

        /* Eyebrow label */
        .zka-banner-eyebrow {
            display: block;
            color: var(--luxury-gold);
            font-size: 11px;
            font-weight: 700;
            letter-spacing: 0.28em;
            text-transform: uppercase;
            margin-bottom: 18px;
            opacity: 0;
            animation: zkaFadeUp 0.7s 0.25s ease forwards;
        }

        /* Main heading */
        .zka-banner-title {
            font-family: 'Cinzel', serif;
            font-size: 48px;
            font-weight: 700;
            letter-spacing: 0.04em;
            line-height: 1.2;
            color: #ffffff;
            margin-bottom: 10px;
            opacity: 0;
            animation: zkaFadeUp 0.8s 0.4s ease forwards;
        }

        .zka-banner-title .zka-title-gold {
            color: var(--luxury-gold);
            display: inline;
        }

       
        /* Stat pills row */
        .zka-banner-stats {
            display: flex;
            align-items: center;
            justify-content: center;
            flex-wrap: wrap;
            gap: 0;
            margin-bottom: 36px;
            opacity: 0;
            animation: zkaFadeUp 0.8s 0.7s ease forwards;
        }

        .zka-stat-item {
            padding: 14px 24px;
            border-right: 1px solid rgba(197, 168, 128, 0.3);
            text-align: center;
        }

        .zka-stat-item:last-child {
            border-right: none;
        }

        .zka-stat-num {
            display: block;
            font-family: 'Cinzel', serif;
            font-size: clamp(20px, 2.8vw, 30px);
            font-weight: 700;
            color: var(--luxury-gold);
            line-height: 1;
            margin-bottom: 4px;
            white-space: nowrap;
        }

        .zka-stat-label {
            display: block;
            font-size: 10px;
            font-weight: 600;
            letter-spacing: 0.15em;
            text-transform: uppercase;
            color: rgba(255, 255, 255, 0.55);
        }

        /* CTA button — gold-fill */
        .zka-btn {
            position: relative;
            overflow: hidden;
            display: inline-block;
            font-size: 11px;
            font-weight: 700;
            letter-spacing: 0.18em;
            padding: 15px 36px;
            text-transform: uppercase;
            background-color: var(--luxury-gold);
            color: var(--luxury-deep);
            border: 1px solid var(--luxury-gold);
            transition: color 0.4s ease;
            z-index: 1;
            opacity: 0;
            animation: zkaFadeUp 0.8s 0.85s ease forwards;
        }

        .zka-btn::after {
            content: '';
            position: absolute;
            top: 0;
            left: -100%;
            width: 100%;
            height: 100%;
            background: linear-gradient(90deg, #e0af72, rgb(227 217 205), #a6732d);
            transition: left 0.9s ease;
            z-index: -1;
        }

        .zka-btn:hover::after { left: 100%; }
        .zka-btn:hover { color: var(--luxury-deep); }

        /* ------ Breadcrumb (bottom-centre) ------ */
        .zka-breadcrumb {
            position: absolute;
            bottom: 80px;
            left: 50%;
            transform: translateX(-50%);
            z-index: 4;
            display: flex;
            align-items: center;
            gap: 8px;
            font-size: 11px;
            color: rgba(255, 255, 255, 0.5);
            letter-spacing: 0.06em;
            white-space: nowrap;
            opacity: 0;
            animation: zkaFadeIn 1s 1.1s ease forwards;
        }

        .zka-breadcrumb a {
            color: rgba(255, 255, 255, 0.5);
            transition: color 0.3s;
        }

        .zka-breadcrumb a:hover { color: var(--luxury-gold); }

        .zka-bc-sep {
            color: var(--luxury-gold);
            font-size: 8px;
        }

        .zka-bc-current { color: var(--luxury-gold); }

        /* ------ Scroll-down indicator (bottom) ------ */
        .zka-scroll-hint {
            position: absolute;
            bottom: 26px;
            right: 32px;
            z-index: 4;
            display: flex;
            flex-direction: column;
            align-items: center;
            gap: 6px;
            opacity: 0;
            animation: zkaFadeIn 1.2s 1.3s ease forwards;
        }

        .zka-scroll-hint span {
            font-size: 9px;
            font-weight: 700;
            letter-spacing: 0.15em;
            text-transform: uppercase;
            color: rgba(255, 255, 255, 0.45);
            writing-mode: vertical-rl;
            text-orientation: mixed;
        }

        .zka-scroll-line {
            width: 1px;
            height: 44px;
            background: linear-gradient(to bottom, var(--luxury-gold), transparent);
            animation: zkaScrollPulse 1.8s ease-in-out infinite;
        }

        @keyframes zkaScrollPulse {
            0%, 100% { transform: scaleY(1);   opacity: 1; }
            50%       { transform: scaleY(0.5); opacity: 0.4; }
        }

        /* ------ Keyframe animations ------ */
        @keyframes zkaFadeUp {
            from { opacity: 0; transform: translateY(28px); }
            to   { opacity: 1; transform: translateY(0);    }
        }

        @keyframes zkaFadeIn {
            from { opacity: 0; }
            to   { opacity: 1; }
        }

        @media (max-width: 600px) {
            .zka-stat-item {
                padding: 8px 12px;
                border-right: none;
            }
            .zka-banner-stats {
                gap: 10px;
            }
            .zka-scroll-hint {
                display: none;
            }
        }
        
        /* ============================================================
           ABOUT PAGE BANNER — all classes prefixed "zka-"
           Zero collision with any existing or sarees-page class.
        ============================================================ */

        .zka-banner {
            position: relative;
            width: 100%;
            overflow: hidden;
            display: flex;
            align-items: center;
            justify-content: center;
            /* Mobile: no topbar */
            height: calc(100vh - 72px);
            min-height: 420px;
        }

        /* Desktop & up: subtract topbar too */
        @media (min-width: 768px) {
            .zka-banner {
                height: calc(100vh - 41px - 72px);
                min-height: 500px;
            }
        }

        

        /* ------ Dark gradient overlay ------ */
        .zka-banner-overlay {
            position: absolute;
            inset: 0;
            background: linear-gradient(
                160deg,
                rgba(44, 27, 36, 0.85) 0%,
                rgba(31, 17, 25, 0.65) 50%,
                rgba(44, 27, 36, 0.90) 100%
            );
            z-index: 1;
        }

        /* Subtle gold vignette ring — purely decorative */
        .zka-banner-vignette {
            position: absolute;
            inset: 0;
            background: radial-gradient(
                ellipse at center,
                transparent 40%,
                rgba(44, 27, 36, 0.45) 100%
            );
            z-index: 2;
            pointer-events: none;
        }

        /* ------ Content container ------ */
        .zka-banner-content {
            position: relative;
            z-index: 3;
            text-align: center;
            color: #ffffff;
            padding: 0 24px;
            max-width: 920px;
            width: 100%;
        }

        /* Top ornament line */
        .zka-banner-ornament {
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 14px;
            margin-bottom: 22px;
            opacity: 0;
            animation: zkaFadeUp 0.7s 0.1s ease forwards;
        }

        .zka-banner-ornament::before,
        .zka-banner-ornament::after {
            content: '';
            display: block;
            width: 60px;
            height: 1px;
            background: linear-gradient(to right, transparent, var(--luxury-gold));
        }

        .zka-banner-ornament::after {
            background: linear-gradient(to left, transparent, var(--luxury-gold));
        }

        .zka-banner-ornament i {
            color: var(--luxury-gold);
            font-size: 14px;
        }

        /* Eyebrow label */
        .zka-banner-eyebrow {
            display: block;
            color: var(--luxury-gold);
            font-size: 11px;
            font-weight: 700;
            letter-spacing: 0.28em;
            text-transform: uppercase;
            margin-bottom: 18px;
            opacity: 0;
            animation: zkaFadeUp 0.7s 0.25s ease forwards;
        }

        /* Main heading */
        .zka-banner-title {
            font-family: 'Cinzel', serif;
            font-size: 48px;
            font-weight: 700;
            letter-spacing: 0.04em;
            line-height: 1.2;
            color: #ffffff;
            margin-bottom: 10px;
            opacity: 0;
            animation: zkaFadeUp 0.8s 0.4s ease forwards;
        }

        .zka-banner-title .zka-title-gold {
            color: var(--luxury-gold);
            display: inline;
        }

       
        /* Stat pills row */
        .zka-banner-stats {
            display: flex;
            align-items: center;
            justify-content: center;
            flex-wrap: wrap;
            gap: 0;
            margin-bottom: 36px;
            opacity: 0;
            animation: zkaFadeUp 0.8s 0.7s ease forwards;
        }

        .zka-stat-item {
            padding: 14px 24px;
            border-right: 1px solid rgba(197, 168, 128, 0.3);
            text-align: center;
        }

        .zka-stat-item:last-child {
            border-right: none;
        }

        .zka-stat-num {
            display: block;
            font-family: 'Cinzel', serif;
            font-size: clamp(20px, 2.8vw, 30px);
            font-weight: 700;
            color: var(--luxury-gold);
            line-height: 1;
            margin-bottom: 4px;
            white-space: nowrap;
        }

        .zka-stat-label {
            display: block;
            font-size: 10px;
            font-weight: 600;
            letter-spacing: 0.15em;
            text-transform: uppercase;
            color: rgba(255, 255, 255, 0.55);
        }

        /* CTA button — gold-fill */
        .zka-btn {
            position: relative;
            overflow: hidden;
            display: inline-block;
            font-size: 11px;
            font-weight: 700;
            letter-spacing: 0.18em;
            padding: 15px 36px;
            text-transform: uppercase;
            background-color: var(--luxury-gold);
            color: var(--luxury-deep);
            border: 1px solid var(--luxury-gold);
            transition: color 0.4s ease;
            z-index: 1;
            opacity: 0;
            animation: zkaFadeUp 0.8s 0.85s ease forwards;
        }

        .zka-btn::after {
            content: '';
            position: absolute;
            top: 0;
            left: -100%;
            width: 100%;
            height: 100%;
            background: linear-gradient(90deg, #e0af72, rgb(227 217 205), #a6732d);
            transition: left 0.9s ease;
            z-index: -1;
        }

        .zka-btn:hover::after { left: 100%; }
        .zka-btn:hover { color: var(--luxury-deep); }

        /* ------ Breadcrumb (bottom-centre) ------ */
        .zka-breadcrumb {
            position: absolute;
            bottom: 80px;
            left: 50%;
            transform: translateX(-50%);
            z-index: 4;
            display: flex;
            align-items: center;
            gap: 8px;
            font-size: 11px;
            color: rgba(255, 255, 255, 0.5);
            letter-spacing: 0.06em;
            white-space: nowrap;
            opacity: 0;
            animation: zkaFadeIn 1s 1.1s ease forwards;
        }

        .zka-breadcrumb a {
            color: rgba(255, 255, 255, 0.5);
            transition: color 0.3s;
        }

        .zka-breadcrumb a:hover { color: var(--luxury-gold); }

        .zka-bc-sep {
            color: var(--luxury-gold);
            font-size: 8px;
        }

        .zka-bc-current { color: var(--luxury-gold); }

        /* ------ Scroll-down indicator (bottom) ------ */
        .zka-scroll-hint {
            position: absolute;
            bottom: 26px;
            right: 32px;
            z-index: 4;
            display: flex;
            flex-direction: column;
            align-items: center;
            gap: 6px;
            opacity: 0;
            animation: zkaFadeIn 1.2s 1.3s ease forwards;
        }

        .zka-scroll-hint span {
            font-size: 9px;
            font-weight: 700;
            letter-spacing: 0.15em;
            text-transform: uppercase;
            color: rgba(255, 255, 255, 0.45);
            writing-mode: vertical-rl;
            text-orientation: mixed;
        }

        .zka-scroll-line {
            width: 1px;
            height: 44px;
            background: linear-gradient(to bottom, var(--luxury-gold), transparent);
            animation: zkaScrollPulse 1.8s ease-in-out infinite;
        }

        @keyframes zkaScrollPulse {
            0%, 100% { transform: scaleY(1);   opacity: 1; }
            50%       { transform: scaleY(0.5); opacity: 0.4; }
        }

        /* ------ Keyframe animations ------ */
        @keyframes zkaFadeUp {
            from { opacity: 0; transform: translateY(28px); }
            to   { opacity: 1; transform: translateY(0);    }
        }

        @keyframes zkaFadeIn {
            from { opacity: 0; }
            to   { opacity: 1; }
        }

        @media (max-width: 600px) {
            .zka-stat-item {
                padding: 8px 12px;
                border-right: none;
            }
            .zka-banner-stats {
                gap: 10px;
            }
            .zka-scroll-hint {
                display: none;
            }
        }
    </style>
<style>
    /* ========================================================
   ZAKIRA FIXED BLOG GRID & SIDEBAR STYLE MATRIX
   ======================================================== */

/* Root Content Frame Spacing */
.zkb-blog-layout-container {
    width: 100%;
    max-width: 1280px;
    margin: 80px auto;
    padding: 0 24px;
    box-sizing: border-box;
}

/* Base structural layout using explicit grid parameters */
.zkb-blog-layout-grid {
    display: grid;
    grid-template-columns: 8.5fr 3.5fr; /* Keeps sidebar proportioned correctly */
    gap: 40px; 
    align-items: start;
}

/* STRICT 2*N Grid Format Engine */
.zkb-blog-posts-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 30px; /* Uniform horizontal and vertical card spacing */
}

/* Modern Blog Card Item Frame */
.zkb-post-card {
    background-color: var(--white);
    border: 1px solid var(--gray-200);
    padding-bottom: 26px;
    display: flex;
    flex-direction: column;
    transition: all 0.35s ease;
}

.zkb-post-card:hover {
    transform: translateY(-4px);
    border-color: var(--luxury-gold);
    box-shadow: 0 12px 30px rgba(44, 27, 36, 0.05);
}

/* Card Visual Header */
.zkb-post-img-wrapper {
    position: relative;
    width: 100%;
    height: 240px;
    overflow: hidden;
    background-color: var(--luxury-accent);
}

.zkb-post-img-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.zkb-post-card:hover .zkb-post-img-wrapper img {
    transform: scale(1.05);
}

.zkb-post-category {
    position: absolute;
    bottom: 0;
    left: 0;
    background-color: var(--luxury-deep);
    color: var(--luxury-gold);
    font-size: 11px;
    text-transform: uppercase;
    font-weight: 600;
    letter-spacing: 0.1em;
    padding: 6px 14px;
    border-top: 2px solid var(--luxury-gold);
}

/* Inside Card Spacing Parameters */
.zkb-post-meta {
    padding: 20px 24px 10px 24px;
    font-size: 12px;
    color: var(--gray-500);
}

.zkb-post-meta i {
    color: var(--luxury-gold);
    margin-right: 4px;
}

.zkb-post-title {
    font-family: 'Cinzel', serif;
    font-size: 18px;
    line-height: 1.4;
    font-weight: 700;
    padding: 0 24px 12px 24px;
}

.zkb-post-title a {
    color: var(--luxury-deep);
    transition: color 0.3s ease;
}

.zkb-post-title a:hover {
    color: var(--luxury-gold);
}

.zkb-post-excerpt {
    font-size: 13.5px;
    line-height: 1.6;
    color: var(--gray-600);
    padding: 0 24px 20px 24px;
    font-weight: 300;
    flex-grow: 1; /* Pushes layout actions uniformly to the baseline */
}

/* Action Trigger Golden Line Interaction */
.zkb-readmore-link {
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.15em;
    font-weight: 600;
    color: var(--luxury-deep);
    margin-left: 24px;
    align-self: flex-start;
    position: relative;
    padding-bottom: 4px;
}

.zkb-readmore-link::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 20px;
    height: 2px;
    background: #c8a165; 
    transition: width 0.35s ease;
}

.zkb-post-card:hover .zkb-readmore-link::after {
    width: 100%;
}

/* --- SIDEBAR WIDGET SYSTEM --- */
.zkb-blog-sidebar {
    width: 100%;
}

.zkb-sidebar-widget {
    background-color: var(--white);
    border: 1px solid var(--gray-200);
    padding: 30px 24px;
}

.zkb-widget-title {
    font-family: 'Cinzel', serif;
    font-size: 15px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: var(--luxury-deep);
}

.zkb-widget-divider {
    width: 35px;
    height: 2px;
    background-color: var(--luxury-gold);
    margin: 12px 0 24px 0;
}

/* Recent Posts Module Layout */
.zkb-recent-posts-list {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.zkb-recent-item {
    display: flex;
    gap: 14px;
    align-items: center;
    text-decoration: none;
}

.zkb-recent-img {
    width: 65px;
    height: 65px;
    flex-shrink: 0;
    background-color: var(--luxury-accent);
}

.zkb-recent-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.zkb-recent-info h4 {
    font-size: 13px;
    font-weight: 600;
    line-height: 1.4;
    color: var(--luxury-deep);
    margin: 0 0 4px 0;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    transition: color 0.3s;
}

.zkb-recent-item:hover h4 {
    color: var(--luxury-gold);
}

.zkb-recent-info span {
    font-size: 11px;
    color: var(--gray-400);
    text-transform: uppercase;
}

/* --- HOME PAGE GLOSSY EFFECT BRIDGE --- */
.zkb-glossy-card {
    position: relative;
    overflow: hidden;
}
.zkb-glossy-card::before {
    content: '';
    position: absolute;
    top: 0; left: -150%; width: 50%; height: 100%;
    background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.25) 50%, rgba(255,255,255,0) 100%);
    transform: skewX(-25deg);
    transition: 0.75s;
    z-index: 2;
}
.zkb-post-card:hover::before {
    left: 150%;
}

/* ========================================================
    RESPONSIVE LAYOUT ENGINE FOR MOBILE AND TABLET
    ======================================================== */

/* Tablet Viewports */
@media (max-width: 1024px) {
    .zkb-blog-layout-container {
        margin: 50px auto;
        padding: 0 20px;
    }
    .zkb-blog-layout-grid {
        grid-template-columns: 1fr; /* Stacks sidebar cleanly below the main view */
        gap: 50px;
    }
}

/* Mobile Viewports */
@media (max-width: 767px) {
    .zkb-blog-layout-container {
        margin: 40px auto;
        padding: 0 16px;
    }
    .zkb-blog-posts-grid {
        grid-template-columns: 1fr; /* Converts strictly to 1 column pattern on tiny mobile screens */
        gap: 30px;
    }
    .zkb-post-img-wrapper {
        height: 210px;
    }
    .zkb-post-title {
        font-size: 17px;
    }
}








 /* ============================================================
           SAREES PAGE — ALL CLASS NAMES PREFIXED WITH "zks-"
           (zero overlap with any existing class)
        ============================================================ */

      /* ---------- PAGE BANNER ---------- */
.zks-banner {
    position: relative;
    width: 100%;
    /* Fills the exact viewport space minus header components */
    height: calc(100vh - 40px - 72px);
    min-height: 520px; /* Adjusted slightly to guarantee comfortable padding for inner elements */
    overflow: hidden;
    display: flex;
    flex-direction: column; /* Allows vertical stacking of content + breadcrumb seamlessly */
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    padding: 40px 24px 80px; /* Prevents text from colliding with top boundaries or bottom breadcrumbs */
}



/* Solid black overlay with precise opacity control */
.zks-banner-overlay {
    position: absolute;
    inset: 0;
    background-color: #000000; 
    opacity: 0.65;             
    z-index: 2;                
}

/* CHANGED: Enhanced container constraints to adapt content safely inside the bounds */
.zks-banner-content {
    position: relative;
    z-index: 3;                
    text-align: center;
    color: #fff;
    width: 100%;
    max-width: 800px;
    margin: auto 0; /* Vertically centers the main group within the flex parent */
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin-bottom: 0px;
}

.zks-banner-tag {
    display: inline-block;
    color: var(--luxury-gold);
    font-size: clamp(11px, 1.5vw, 13px); /* Fluid typography */
    font-weight: 700;
    letter-spacing: 0.25em;
    text-transform: uppercase;
    margin-bottom: 14px;
    opacity: 0;
    animation: zksFadeUp 0.8s 0.2s forwards;
}

.zks-banner-title {
    font-family: 'Cinzel', serif;
    font-size: clamp(26px, 4.5vw, 52px); /* Scale title dynamically to prevent overflow */
    font-weight: 700;
    letter-spacing: 0.04em;
    line-height: 1.2;
    color: #fff;
    margin-bottom: 16px;
    opacity: 0;
    animation: zksFadeUp 0.8s 0.4s forwards;
}

.zks-banner-title span {
    color: var(--luxury-gold);
}

.zks-banner-desc {
    font-size: clamp(13px, 1.4vw, 15px); /* Highly readable, fluid sizing */
    font-weight: 300;
    line-height: 1.6;
    color: #e5e7eb;
    max-width: 640px;
    margin: 0 auto 2px;
    opacity: 0;
    animation: zksFadeUp 0.8s 0.6s forwards;
}

.zks-banner-btns {
    display: flex;
    gap: 16px;
    justify-content: center;
    flex-wrap: wrap;
    opacity: 0;
    animation: zksFadeUp 0.8s 0.8s forwards;
    width: 100%;
}

/* Banner button style */
.zks-btn-primary {
    position: relative;
    overflow: hidden;
    display: inline-block;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.18em;
    padding: 15px 34px;
    text-transform: uppercase;
    background-color: var(--luxury-gold);
    color: var(--luxury-deep);
    border: 1px solid var(--luxury-gold);
    transition: all 0.4s ease;
    z-index: 1;
}

.zks-btn-primary::after {
    content: '';
    position: absolute;
    top: 0; left: -100%; width: 100%; height: 100%;
    background: linear-gradient(90deg, #e0af72, rgb(227 217 205), #a6732d);
    transition: all 0.9s ease;
    z-index: -1;
}

.zks-btn-primary:hover::after { left: 100%; }
.zks-btn-primary:hover { color: var(--luxury-deep); }

/* Breadcrumb trail */
.zks-breadcrumb {
    position: absolute;
    bottom: 24px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 4;
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 12px;
    color: rgba(255,255,255,0.6);
    letter-spacing: 0.05em;
    white-space: nowrap; /* Keeps trail inline on smaller breakpoints */
}

.zks-breadcrumb a {
    color: rgba(255,255,255,0.6);
    transition: color 0.3s;
}

.zks-breadcrumb a:hover { color: var(--luxury-gold); }
.zks-breadcrumb .zks-bc-sep { color: var(--luxury-gold); }
.zks-breadcrumb .zks-bc-current { color: var(--luxury-gold); }

/* Additional layout fix if viewport height becomes exceptionally tiny */
@media (max-height: 600px) {
    .zks-banner {
        height: auto;
        padding: 80px 24px 100px;
    }
    .zks-breadcrumb {
        position: relative;
        bottom: auto;
        left: auto;
        transform: none;
        margin-top: 40px;
    }
}

/* ---------- KEYFRAMES ---------- */
@keyframes zksFadeUp {
    from { opacity: 0; transform: translateY(30px); }
    to   { opacity: 1; transform: translateY(0); }
}

@keyframes zksShimmer {
    0%   { background-position: -200% center; }
    100% { background-position: 200% center; }
}
        /* ---------- INTRO SECTION ---------- */
        .zks-intro-section {
            padding: 90px 0 70px;
            background-color: var(--white);
        }

        .zks-intro-grid {
            display: grid;
            grid-template-columns: 1fr;
            gap: 60px;
            align-items: center;
        }

        @media (min-width: 1024px) {
            .zks-intro-grid { grid-template-columns: 1fr 1fr; gap: 80px; }
        }

        .zks-intro-image-wrap {
            position: relative;
        }

        .zks-intro-img-border {
            border: 2px solid var(--luxury-gold);
            position: absolute;
            top: 16px; left: 16px; width: 100%; height: 100%;
            z-index: 0;
        }

        .zks-intro-img-box {
            position: relative;
            z-index: 1;
            width: 100%;
            height: 460px;
            overflow: hidden;
            box-shadow: 0 20px 50px rgba(0,0,0,0.12);
        }

        .zks-intro-img-box img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: transform 0.8s ease;
        }

        .zks-intro-img-box:hover img {
            transform: scale(1.05);
        }

        /* Gold badge on image */
        .zks-intro-badge {
            position: absolute;
            bottom: -20px;
            right: -20px;
            width: 90px;
            height: 90px;
            background-color: var(--luxury-gold);
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            z-index: 4;
            box-shadow: 0 10px 25px rgba(197,168,128,0.4);
        }

        .zks-intro-badge span:first-child {
            font-family: 'Cinzel', serif;
            font-size: 22px;
            font-weight: 700;
            color: var(--luxury-deep);
            line-height: 1;
        }

        .zks-intro-badge span:last-child {
            font-size: 9px;
            font-weight: 700;
            letter-spacing: 0.08em;
            text-transform: uppercase;
            color: var(--luxury-deep);
            text-align: center;
            line-height: 1.3;
            margin-top: 4px;
        }

        .zks-intro-text {
            display: flex;
            flex-direction: column;
            gap: 18px;
        }

        .zks-intro-tag {
            display: inline-block;
            color: var(--luxury-gold);
            font-size: 12px;
            font-weight: 600;
            letter-spacing: 0.2em;
            text-transform: uppercase;
        }

        .zks-intro-heading {
            font-family: 'Cinzel', serif;
            font-size: clamp(26px, 3.5vw, 40px);
            font-weight: 700;
            color: var(--luxury-deep);
            letter-spacing: 0.04em;
            line-height: 1.3;
        }

        .zks-intro-para {
            font-size: 15px;
            color: var(--gray-600);
            line-height: 1.75;
            font-weight: 400;
        }

        .zks-collection-pills {
            display: flex;
            flex-wrap: wrap;
            gap: 10px;
            margin-top: 4px;
        }

        .zks-pill {
            background-color: var(--luxury-cream);
            border: 1px solid rgba(197,168,128,0.4);
            color: var(--luxury-deep);
            font-size: 12px;
            font-weight: 600;
            letter-spacing: 0.05em;
            padding: 7px 16px;
            text-transform: uppercase;
            transition: all 0.3s ease;
        }

        .zks-pill:hover {
            background-color: var(--luxury-gold);
            color: var(--luxury-deep);
            border-color: var(--luxury-gold);
        }

        /* Non-banner button style (border, no bg) */
        .zks-btn-outline {
            position: relative;
            overflow: hidden;
            display: inline-block;
            font-size: 11px;
            font-weight: 700;
            letter-spacing: 0.18em;
            padding: 15px 34px;
            text-transform: uppercase;
            border: 1px solid var(--luxury-deep);
            color: var(--luxury-deep);
            background-color: transparent;
            transition: all 0.4s ease;
            align-self: flex-start;
            margin-top: 8px;
            z-index: 1;
        }

        .zks-btn-outline::after {
            content: '';
            position: absolute;
            top: 0; left: 0; width: 0; height: 100%;
            background-color: var(--luxury-deep);
            transition: width 0.4s ease;
            z-index: -1;
        }

        .zks-btn-outline:hover { color: var(--white); }
        .zks-btn-outline:hover::after { width: 100%; }

        /* ---------- BRIDAL SECTION ---------- */
        .zks-bridal-section {
            padding: 90px 0;
            background-color: var(--luxury-accent);
            color: var(--white);
            position: relative;
            overflow: hidden;
        }

        .zks-bridal-section::before {
            content: '';
            position: absolute;
            top: -100px; right: -100px;
            width: 400px; height: 400px;
            border-radius: 50%;
            border: 1px solid rgba(197,168,128,0.1);
            pointer-events: none;
        }

        .zks-bridal-section::after {
            content: '';
            position: absolute;
            bottom: -80px; left: -80px;
            width: 300px; height: 300px;
            border-radius: 50%;
            border: 1px solid rgba(197,168,128,0.08);
            pointer-events: none;
        }

        .zks-bridal-grid {
            display: grid;
            grid-template-columns: 1fr;
            gap: 60px;
            align-items: center;
            position: relative;
            z-index: 2;
        }

        @media (min-width: 1024px) {
            .zks-bridal-grid { grid-template-columns: 1fr 1fr; gap: 80px; }
        }

        .zks-bridal-text {
            display: flex;
            flex-direction: column;
            gap: 18px;
        }

        .zks-bridal-tag {
            color: var(--luxury-gold);
            font-size: 11px;
            font-weight: 700;
            letter-spacing: 0.2em;
            text-transform: uppercase;
        }

        .zks-bridal-heading {
            font-family: 'Cinzel', serif;
            font-size: clamp(26px, 3.5vw, 40px);
            color: var(--white);
            font-weight: 700;
            line-height: 1.3;
        }

        .zks-bridal-para {
            font-size: 15px;
            color: #d1d5db;
            line-height: 1.75;
        }

        .zks-bridal-options {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 12px;
            margin-top: 6px;
        }

        .zks-bridal-option-item {
            display: flex;
            align-items: center;
            gap: 10px;
            font-size: 13px;
            color: #e5e7eb;
        }

        .zks-bridal-option-item i {
            color: var(--luxury-gold);
            font-size: 14px;
            flex-shrink: 0;
        }

        /* Bridal btn — on dark bg, use gold fill */
        .zks-btn-gold {
            position: relative;
            overflow: hidden;
            display: inline-block;
            font-size: 11px;
            font-weight: 700;
            letter-spacing: 0.18em;
            padding: 15px 34px;
            text-transform: uppercase;
            background-color: var(--luxury-gold);
            color: var(--luxury-deep);
            border: 1px solid var(--luxury-gold);
            transition: all 0.4s ease;
            align-self: flex-start;
            z-index: 1;
        }

        .zks-btn-gold::after {
            content: '';
            position: absolute;
            top: 0; left: -100%; width: 100%; height: 100%;
            background: linear-gradient(90deg, #e0af72, #fff, #a6732d);
            transition: all 0.9s ease;
            z-index: -1;
        }

        .zks-btn-gold:hover::after { left: 100%; }

        /* Bridal images mosaic */
        .zks-bridal-mosaic {
            display: grid;
            grid-template-columns: 1fr 1fr;
            grid-template-rows: 280px 200px;
            gap: 12px;
        }

        .zks-mosaic-img {
            overflow: hidden;
            position: relative;
        }

        .zks-mosaic-img:first-child {
            grid-row: span 2;
        }

        .zks-mosaic-img img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: transform 0.7s ease;
        }

        .zks-mosaic-img:hover img {
            transform: scale(1.07);
        }

        .zks-mosaic-label {
            position: absolute;
            bottom: 0; left: 0; right: 0;
            background: linear-gradient(to top, rgba(44,27,36,0.85), transparent);
            padding: 20px 16px 12px;
            font-size: 12px;
            font-weight: 600;
            letter-spacing: 0.08em;
            text-transform: uppercase;
            color: var(--luxury-gold);
        }

        /* ---------- FABRIC GRID SECTION ---------- */
        .zks-fabrics-section {
            padding: 90px 0;
            background-color: var(--luxury-cream);
        }

        .zks-fabrics-grid {
            display: grid;
            grid-template-columns: repeat(2, 1fr);
            gap: 20px;
            margin-top: 50px;
        }

        @media (min-width: 640px) {
            .zks-fabrics-grid { grid-template-columns: repeat(3, 1fr); }
        }

        @media (min-width: 1024px) {
            .zks-fabrics-grid { grid-template-columns: repeat(5, 1fr); gap: 16px; }
        }

        .zks-fabric-card {
            background-color: var(--white);
            border: 1px solid var(--gray-200);
            overflow: hidden;
            position: relative;
            transition: all 0.35s ease;
            cursor: default;
        }

        .zks-fabric-card:hover {
            border-color: var(--luxury-gold);
            transform: translateY(-6px);
            box-shadow: 0 15px 35px rgba(197,168,128,0.2);
        }

        .zks-fabric-img {
            height: 180px;
            overflow: hidden;
            position: relative;
        }

        .zks-fabric-img img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: transform 0.6s ease;
        }

        .zks-fabric-card:hover .zks-fabric-img img {
            transform: scale(1.08);
        }

        .zks-fabric-img-overlay {
            position: absolute;
            inset: 0;
            background: rgba(44,27,36,0.2);
            transition: background 0.3s;
        }

        .zks-fabric-card:hover .zks-fabric-img-overlay {
            background: rgba(44,27,36,0.1);
        }

        .zks-fabric-meta {
            padding: 14px 16px;
            text-align: center;
        }

        .zks-fabric-meta h4 {
            font-family: 'Cinzel', serif;
            font-size: 13px;
            font-weight: 600;
            color: var(--luxury-deep);
            letter-spacing: 0.05em;
        }

        .zks-fabric-meta span {
            font-size: 11px;
            color: var(--luxury-gold);
            font-weight: 500;
            display: block;
            margin-top: 3px;
            text-transform: uppercase;
            letter-spacing: 0.08em;
        }

        /* ---------- TRAD & CONTEMPORARY SECTION ---------- */
        .zks-trad-section {
            padding: 90px 0;
            background-color: var(--white);
        }

        .zks-trad-grid {
            display: grid;
            grid-template-columns: 1fr;
            gap: 30px;
            margin-top: 50px;
        }

        @media (min-width: 768px) {
            .zks-trad-grid { grid-template-columns: 1fr 1fr; }
        }

        .zks-trad-card {
            position: relative;
            height: 420px;
            overflow: hidden;
        }

        .zks-trad-card img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: transform 0.8s ease;
        }

        .zks-trad-card:hover img {
            transform: scale(1.06);
        }

        .zks-trad-card-overlay {
            position: absolute;
            inset: 0;
            background: linear-gradient(to top, rgba(44,27,36,0.9) 0%, transparent 55%);
            display: flex;
            flex-direction: column;
            justify-content: flex-end;
            padding: 32px 28px;
        }

        .zks-trad-card-label {
            font-size: 10px;
            font-weight: 700;
            letter-spacing: 0.2em;
            text-transform: uppercase;
            color: var(--luxury-gold);
            margin-bottom: 8px;
        }

        .zks-trad-card h3 {
            font-family: 'Cinzel', serif;
            font-size: 22px;
            color: var(--white);
            font-weight: 700;
            margin-bottom: 10px;
        }

        .zks-trad-card p {
            font-size: 13px;
            color: #d1d5db;
            line-height: 1.6;
        }

        .zks-trad-card-link {
            display: inline-flex;
            align-items: center;
            gap: 6px;
            font-size: 11px;
            font-weight: 700;
            letter-spacing: 0.12em;
            text-transform: uppercase;
            color: var(--luxury-gold);
            margin-top: 14px;
            transition: gap 0.3s;
        }

        .zks-trad-card-link:hover { gap: 10px; }

        /* ---------- OCCASIONS SECTION ---------- */
        .zks-occasions-section {
            padding: 90px 0;
            background-color: var(--luxury-accent);
            color: var(--white);
        }

        .zks-occasions-flex {
            display: grid;
            grid-template-columns: repeat(2, 1fr);
            gap: 16px;
            margin-top: 50px;
        }

        @media (min-width: 640px) {
            .zks-occasions-flex { grid-template-columns: repeat(3, 1fr); }
        }

        @media (min-width: 1024px) {
            .zks-occasions-flex { grid-template-columns: repeat(5, 1fr); gap: 20px; }
        }

        .zks-occasion-tile {
            background-color: rgba(255,255,255,0.05);
            border: 1px solid rgba(197,168,128,0.15);
            padding: 28px 16px;
            text-align: center;
            transition: all 0.35s ease;
            position: relative;
            overflow: hidden;
        }

        .zks-occasion-tile::before {
            content: '';
            position: absolute;
            inset: 0;
            background: linear-gradient(135deg, rgba(197,168,128,0.08), transparent);
            opacity: 0;
            transition: opacity 0.3s;
        }

        .zks-occasion-tile:hover {
            background-color: rgba(197,168,128,0.12);
            border-color: var(--luxury-gold);
            transform: translateY(-4px);
        }

        .zks-occasion-tile:hover::before { opacity: 1; }

        .zks-occasion-icon {
            font-size: 28px;
            color: var(--luxury-gold);
            margin-bottom: 12px;
        }

        .zks-occasion-tile h4 {
            font-family: 'Cinzel', serif;
            font-size: 14px;
            font-weight: 600;
            color: var(--white);
            letter-spacing: 0.04em;
        }

        /* ---------- TRENDS SECTION ---------- */
        .zks-trends-section {
            padding: 90px 0;
            background-image: url('https://images.unsplash.com/photo-1596783074918-c84cb06531ca?auto=format&fit=crop&w=1920&q=80');
            background-attachment: fixed;
            background-position: center;
            background-size: cover;
            background-repeat: no-repeat;
            position: relative;
        }

        @media (max-width: 1024px) {
            .zks-trends-section { background-attachment: scroll; }
        }

        .zks-trends-overlay {
            position: absolute;
            inset: 0;
            background: rgba(249,246,240,0.93);
        }

        .zks-trends-inner {
            position: relative;
            z-index: 2;
        }

        .zks-trends-grid {
            display: grid;
            grid-template-columns: 1fr;
            gap: 24px;
            margin-top: 50px;
        }

        @media (min-width: 640px) {
            .zks-trends-grid { grid-template-columns: repeat(2, 1fr); }
        }

        @media (min-width: 1024px) {
            .zks-trends-grid { grid-template-columns: repeat(3, 1fr); gap: 30px; }
        }

        .zks-trend-card {
            background-color: var(--white);
            border: 1px solid var(--gray-200);
            overflow: hidden;
            transition: all 0.35s ease;
        }

        .zks-trend-card:hover {
            border-color: var(--luxury-gold);
            box-shadow: 0 15px 40px rgba(0,0,0,0.08);
            transform: translateY(-5px);
        }

        .zks-trend-img {
            height: 220px;
            overflow: hidden;
            position: relative;
        }

        .zks-trend-img img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: transform 0.6s ease;
        }

        .zks-trend-card:hover .zks-trend-img img {
            transform: scale(1.06);
        }

        .zks-trend-label {
            position: absolute;
            top: 16px; left: 16px;
            background-color: var(--luxury-gold);
            color: var(--luxury-deep);
            font-size: 9px;
            font-weight: 700;
            letter-spacing: 0.12em;
            text-transform: uppercase;
            padding: 5px 12px;
        }

        .zks-trend-meta {
            padding: 22px 20px;
        }

        .zks-trend-meta h4 {
            font-family: 'Cinzel', serif;
            font-size: 16px;
            font-weight: 600;
            color: var(--luxury-deep);
            margin-bottom: 8px;
        }

        .zks-trend-meta p {
            font-size: 13px;
            color: var(--gray-600);
            line-height: 1.6;
        }

        /* ---------- WHY CHOOSE SECTION ---------- */
        .zks-why-section {
            padding: 90px 0;
            background-color: var(--white);
        }

        .zks-why-grid {
            display: grid;
            grid-template-columns: 1fr;
            gap: 24px;
            margin-top: 50px;
        }

        @media (min-width: 640px) {
            .zks-why-grid { grid-template-columns: repeat(2, 1fr); }
        }

        @media (min-width: 1024px) {
            .zks-why-grid { grid-template-columns: repeat(3, 1fr); }
        }

        .zks-why-card {
            background-color: var(--luxury-cream);
            border: 1px solid var(--gray-200);
            padding: 36px 28px;
            text-align: center;
            transition: all 0.35s ease;
            position: relative;
            overflow: hidden;
        }

        .zks-why-card::after {
            content: '';
            position: absolute;
            bottom: 0; left: 0; right: 0;
            height: 3px;
            background-color: var(--luxury-gold);
            transform: scaleX(0);
            transform-origin: left;
            transition: transform 0.4s ease;
        }

        .zks-why-card:hover {
            background-color: var(--white);
            border-color: var(--luxury-gold);
            transform: translateY(-6px);
            box-shadow: 0 15px 35px rgba(0,0,0,0.08);
        }

        .zks-why-card:hover::after { transform: scaleX(1); }

        .zks-why-icon {
            width: 60px;
            height: 60px;
            background-color: var(--luxury-deep);
            color: var(--luxury-gold);
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 22px;
            margin: 0 auto 20px;
            transition: all 0.3s ease;
        }

        .zks-why-card:hover .zks-why-icon {
            background-color: var(--luxury-gold);
            color: var(--luxury-deep);
        }

        .zks-why-card h3 {
            font-family: 'Cinzel', serif;
            font-size: 16px;
            font-weight: 600;
            color: var(--luxury-deep);
            margin-bottom: 12px;
            letter-spacing: 0.04em;
        }

        .zks-why-card p {
            font-size: 13px;
            color: var(--gray-600);
            line-height: 1.6;
        }

        /* ---------- CONCLUSION / CTA SECTION ---------- */
        .zks-cta-section {
            position: relative;
            padding: 100px 0;
            background-image: url('https://images.unsplash.com/photo-1594938298603-c8148c4b4d28?auto=format&fit=crop&w=1920&q=80');
            background-attachment: fixed;
            background-position: center;
            background-size: cover;
            background-repeat: no-repeat;
            text-align: center;
        }

        @media (max-width: 1024px) {
            .zks-cta-section { background-attachment: scroll; }
        }

        .zks-cta-overlay {
            position: absolute;
            inset: 0;
            background: linear-gradient(135deg, rgba(44,27,36,0.85), rgba(31,17,25,0.75));
        }

        .zks-cta-content {
            position: relative;
            z-index: 2;
            color: var(--white);
            max-width: 760px;
            margin: 0 auto;
            padding: 0 24px;
        }

        .zks-cta-tag {
            color: var(--luxury-gold);
            font-size: 11px;
            font-weight: 700;
            letter-spacing: 0.25em;
            text-transform: uppercase;
            display: block;
            margin-bottom: 16px;
        }

        .zks-cta-heading {
            font-family: 'Cinzel', serif;
            font-size: clamp(26px, 4vw, 44px);
            color: var(--white);
            font-weight: 700;
            line-height: 1.25;
            margin-bottom: 18px;
        }

        .zks-cta-para {
            font-size: 15px;
            color: #e5e7eb;
            line-height: 1.75;
            margin-bottom: 36px;
        }

        .zks-cta-btns {
            display: flex;
            gap: 16px;
            justify-content: center;
            flex-wrap: wrap;
        }

        /* divider ornament */
        .zks-ornament {
            text-align: center;
            margin: 40px 0;
        }

        .zks-ornament span {
            display: inline-flex;
            align-items: center;
            gap: 14px;
            color: var(--luxury-gold);
            font-size: 18px;
        }

        .zks-ornament span::before,
        .zks-ornament span::after {
            content: '';
            display: inline-block;
            width: 80px;
            height: 1px;
            background: linear-gradient(to right, transparent, var(--luxury-gold));
        }

        .zks-ornament span::after {
            background: linear-gradient(to left, transparent, var(--luxury-gold));
        }

        /* Scroll reveal utility */
        .zks-reveal {
            opacity: 0;
            transform: translateY(30px);
            transition: opacity 0.7s ease, transform 0.7s ease;
        }

        .zks-reveal.zks-visible {
            opacity: 1;
            transform: translateY(0);
        }

        .zks-reveal-delay-1 { transition-delay: 0.1s; }
        .zks-reveal-delay-2 { transition-delay: 0.2s; }
        .zks-reveal-delay-3 { transition-delay: 0.3s; }
        .zks-reveal-delay-4 { transition-delay: 0.4s; }
        .zks-reveal-delay-5 { transition-delay: 0.5s; }

        /* Topbar height compensation: when topbar shows, adjust banner height */
        @media (min-width: 768px) {
            .zks-banner {
                /* topbar visible = 40px, header = 72px */
                height: calc(100vh - 40px - 72px);
            }
        }

        /* When topbar is hidden (mobile) */
        @media (max-width: 767px) {
            .zks-banner {
                height: calc(100vh - 72px);
                min-height: 400px;
            }
        }
        
        
        
        
        
        
         /* ============================================================
           ABOUT PAGE BANNER — all classes prefixed "zka-"
           Zero collision with any existing or sarees-page class.
        ============================================================ */

        .zka-banner {
            position: relative;
            width: 100%;
            overflow: hidden;
            display: flex;
            align-items: center;
            justify-content: center;
            /* Mobile: no topbar */
            height: calc(100vh - 72px);
            min-height: 420px;
        }

        /* Desktop & up: subtract topbar too */
        @media (min-width: 768px) {
            .zka-banner {
                height: calc(100vh - 41px - 72px);
                min-height: 500px;
            }
        }

       

        /* ------ Dark gradient overlay ------ */
        .zka-banner-overlay {
            position: absolute;
            inset: 0;
            background: linear-gradient(
                160deg,
                rgba(44, 27, 36, 0.85) 0%,
                rgba(31, 17, 25, 0.65) 50%,
                rgba(44, 27, 36, 0.90) 100%
            );
            z-index: 1;
        }

        /* Subtle gold vignette ring — purely decorative */
        .zka-banner-vignette {
            position: absolute;
            inset: 0;
            background: radial-gradient(
                ellipse at center,
                transparent 40%,
                rgba(44, 27, 36, 0.45) 100%
            );
            z-index: 2;
            pointer-events: none;
        }

        /* ------ Content container ------ */
        .zka-banner-content {
            position: relative;
            z-index: 3;
            text-align: center;
            color: #ffffff;
            padding: 0 24px;
            max-width: 920px;
            width: 100%;
        }

        /* Top ornament line */
        .zka-banner-ornament {
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 14px;
            margin-bottom: 22px;
            opacity: 0;
            animation: zkaFadeUp 0.7s 0.1s ease forwards;
        }

        .zka-banner-ornament::before,
        .zka-banner-ornament::after {
            content: '';
            display: block;
            width: 60px;
            height: 1px;
            background: linear-gradient(to right, transparent, var(--luxury-gold));
        }

        .zka-banner-ornament::after {
            background: linear-gradient(to left, transparent, var(--luxury-gold));
        }

        .zka-banner-ornament i {
            color: var(--luxury-gold);
            font-size: 14px;
        }

        /* Eyebrow label */
        .zka-banner-eyebrow {
            display: block;
            color: var(--luxury-gold);
            font-size: 11px;
            font-weight: 700;
            letter-spacing: 0.28em;
            text-transform: uppercase;
            margin-bottom: 18px;
            opacity: 0;
            animation: zkaFadeUp 0.7s 0.25s ease forwards;
        }

        /* Main heading */
        .zka-banner-title {
            font-family: 'Cinzel', serif;
            font-size: 48px;
            font-weight: 700;
            letter-spacing: 0.04em;
            line-height: 1.2;
            color: #ffffff;
            margin-bottom: 10px;
            opacity: 0;
            animation: zkaFadeUp 0.8s 0.4s ease forwards;
        }

        .zka-banner-title .zka-title-gold {
            color: var(--luxury-gold);
            display: inline;
        }

       
        /* Stat pills row */
        .zka-banner-stats {
            display: flex;
            align-items: center;
            justify-content: center;
            flex-wrap: wrap;
            gap: 0;
            margin-bottom: 36px;
            opacity: 0;
            animation: zkaFadeUp 0.8s 0.7s ease forwards;
        }

        .zka-stat-item {
            padding: 14px 24px;
            border-right: 1px solid rgba(197, 168, 128, 0.3);
            text-align: center;
        }

        .zka-stat-item:last-child {
            border-right: none;
        }

        .zka-stat-num {
            display: block;
            font-family: 'Cinzel', serif;
            font-size: clamp(20px, 2.8vw, 30px);
            font-weight: 700;
            color: var(--luxury-gold);
            line-height: 1;
            margin-bottom: 4px;
            white-space: nowrap;
        }

        .zka-stat-label {
            display: block;
            font-size: 10px;
            font-weight: 600;
            letter-spacing: 0.15em;
            text-transform: uppercase;
            color: rgba(255, 255, 255, 0.55);
        }

        /* CTA button — gold-fill */
        .zka-btn {
            position: relative;
            overflow: hidden;
            display: inline-block;
            font-size: 11px;
            font-weight: 700;
            letter-spacing: 0.18em;
            padding: 15px 36px;
            text-transform: uppercase;
            background-color: var(--luxury-gold);
            color: var(--luxury-deep);
            border: 1px solid var(--luxury-gold);
            transition: color 0.4s ease;
            z-index: 1;
            opacity: 0;
            animation: zkaFadeUp 0.8s 0.85s ease forwards;
        }

        .zka-btn::after {
            content: '';
            position: absolute;
            top: 0;
            left: -100%;
            width: 100%;
            height: 100%;
            background: linear-gradient(90deg, #e0af72, rgb(227 217 205), #a6732d);
            transition: left 0.9s ease;
            z-index: -1;
        }

        .zka-btn:hover::after { left: 100%; }
        .zka-btn:hover { color: var(--luxury-deep); }

        /* ------ Breadcrumb (bottom-centre) ------ */
        .zka-breadcrumb {
            position: absolute;
            bottom: 80px;
            left: 50%;
            transform: translateX(-50%);
            z-index: 4;
            display: flex;
            align-items: center;
            gap: 8px;
            font-size: 11px;
            color: rgba(255, 255, 255, 0.5);
            letter-spacing: 0.06em;
            white-space: nowrap;
            opacity: 0;
            animation: zkaFadeIn 1s 1.1s ease forwards;
        }

        .zka-breadcrumb a {
            color: rgba(255, 255, 255, 0.5);
            transition: color 0.3s;
        }

        .zka-breadcrumb a:hover { color: var(--luxury-gold); }

        .zka-bc-sep {
            color: var(--luxury-gold);
            font-size: 8px;
        }

        .zka-bc-current { color: var(--luxury-gold); }

        /* ------ Scroll-down indicator (bottom) ------ */
        .zka-scroll-hint {
            position: absolute;
            bottom: 26px;
            right: 32px;
            z-index: 4;
            display: flex;
            flex-direction: column;
            align-items: center;
            gap: 6px;
            opacity: 0;
            animation: zkaFadeIn 1.2s 1.3s ease forwards;
        }

        .zka-scroll-hint span {
            font-size: 9px;
            font-weight: 700;
            letter-spacing: 0.15em;
            text-transform: uppercase;
            color: rgba(255, 255, 255, 0.45);
            writing-mode: vertical-rl;
            text-orientation: mixed;
        }

        .zka-scroll-line {
            width: 1px;
            height: 44px;
            background: linear-gradient(to bottom, var(--luxury-gold), transparent);
            animation: zkaScrollPulse 1.8s ease-in-out infinite;
        }

        @keyframes zkaScrollPulse {
            0%, 100% { transform: scaleY(1);   opacity: 1; }
            50%       { transform: scaleY(0.5); opacity: 0.4; }
        }

        /* ------ Keyframe animations ------ */
        @keyframes zkaFadeUp {
            from { opacity: 0; transform: translateY(28px); }
            to   { opacity: 1; transform: translateY(0);    }
        }

        @keyframes zkaFadeIn {
            from { opacity: 0; }
            to   { opacity: 1; }
        }

        @media (max-width: 600px) {
            .zka-stat-item {
                padding: 8px 12px;
                border-right: none;
            }
            .zka-banner-stats {
                gap: 10px;
            }
            .zka-scroll-hint {
                display: none;
            }
        }
    </style>

  

<style>
    /* ========================================================
   ZAKIRA PREMIUM CONTACT PAGE LAYOUT ENGINE
   ======================================================== */

/* Main Section Outer Frame & Base Spacing */
.zk-contact-section-wrapper {
    background-color: var(--luxury-cream);
    color: var(--luxury-deep);
    width: 100%;
    padding: 80px 0;
    box-sizing: border-box;
}

@media(max-width: 767px) {
    .zk-contact-section-wrapper {
        padding: 40px 0;
    }
}

/* Core Content Inner Layout Structure */
.zk-contact-content-container {
    width: 100%;
    max-width: 1280px;
    margin: 0 auto 60px auto;
    padding: 0 24px;
    display: grid;
    grid-template-columns: 5fr 7fr; /* Perfectly balances detailed info and long form fields */
    gap: 60px;
    align-items: start;
    box-sizing: border-box;
}

@media(max-width: 1024px) {
    .zk-contact-content-container {
        grid-template-columns: 1fr; /* Stacks column pairs smoothly for smaller interfaces */
        gap: 50px;
        margin-bottom: 40px;
    }
}

@media(max-width: 767px) {
    .zk-contact-content-container {
        padding: 0 16px;
    }
}

/* --- Left Column: Studio Information Block --- */
.zk-contact-info-block {
    display: flex;
    flex-direction: column;
}

.zk-contact-subtitle-label {
    color: var(--luxury-gold);
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.15em;
    font-weight: 600;
    margin-bottom: 12px;
    display: block;
}

.zk-contact-main-title {
    font-family: 'Cinzel', serif;
    font-size: 38px;
    font-weight: 700;
    line-height: 1.25;
    color: var(--luxury-deep);
    margin-bottom: 20px;
    letter-spacing: 0.02em;
}

@media(max-width: 767px) {
    .zk-contact-main-title {
        font-size: 28px;
    }
}

.zk-contact-description-text {
    font-size: 14px;
    line-height: 1.7;
    color: var(--gray-600);
    font-weight: 300;
    margin-bottom: 40px;
}

/* Detail Listing Cards Frame */
.zk-contact-details-list {
    display: flex;
    flex-direction: column;
    gap: 30px;
}

.zk-contact-detail-card {
    display: flex;
    gap: 20px;
    align-items: flex-start;
}

.zk-contact-detail-icon {
    width: 44px;
    height: 44px;
    min-width: 44px;
    background-color: var(--white);
    border: 1px solid var(--luxury-gold);
    color: var(--luxury-deep);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    font-weight: bold;
    transition: all 0.35s ease;
}

/* Interactive subtle lift on card element hover */
.zk-contact-detail-card:hover .zk-contact-detail-icon {
    background-color: var(--luxury-deep);
    color: var(--white);
    border-color: var(--luxury-deep);
    transform: rotate(45deg);
}

.zk-contact-detail-content {
    display: flex;
    flex-direction: column;
}

.zk-contact-detail-label {
    font-family: 'Cinzel', serif;
    font-size: 15px;
    font-weight: 700;
    color: var(--luxury-deep);
    margin: 0 0 6px 0;
    letter-spacing: 0.05em;
}

.zk-contact-detail-value {
    font-size: 13.5px;
    line-height: 1.6;
    color: var(--gray-600);
    font-weight: 300;
    margin: 0;
}


/* --- Right Column: Premium Inquiry Form --- */
.zk-contact-form-block {
    background-color: var(--white);
    border: 1px solid var(--gray-200);
    padding: 45px;
    position: relative;
    box-sizing: border-box;
}

/* Embeds the premium shimmery effect used in home components */
.zk-contact-form-block::before {
    content: '';
    position: absolute;
    top: 0; left: -150%; width: 50%; height: 100%;
    background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.3) 50%, rgba(255,255,255,0) 100%);
    transform: skewX(-25deg);
    transition: 0.85s;
    z-index: 2;
    pointer-events: none;
}

.zk-contact-form-block:hover::before {
    left: 150%;
}

@media(max-width: 767px) {
    .zk-contact-form-block {
        padding: 24px 20px;
    }
}

.zk-contact-interactive-form {
    display: flex;
    flex-direction: column;
    gap: 24px;
    width: 100%;
}

/* Inline Form Side-By-Side Structure */
.zk-contact-form-row-dual {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
}

@media(max-width: 640px) {
    .zk-contact-form-row-dual {
        grid-template-columns: 1fr;
        gap: 24px;
    }
}

.zk-contact-input-group {
    display: flex;
    flex-direction: column;
    gap: 8px;
    width: 100%;
}

.zk-contact-field-label {
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-weight: 600;
    color: var(--luxury-deep);
}

/* Universal Styling Architecture for Fields, Selectors, and Textareas */
.zk-contact-input-element,
.zk-contact-select-element,
.zk-contact-textarea-element {
    width: 100%;
    background-color: var(--luxury-cream);
    color: var(--luxury-deep);
    border: 1px solid var(--gray-200);
    padding: 14px 16px;
    font-size: 14px;
    font-family: sans-serif;
    outline: none;
    box-sizing: border-box;
    transition: all 0.3s ease;
    border-radius: 0; /* Maintains enterprise clean industrial aesthetics */
}

.zk-contact-select-element {
    cursor: pointer;
    appearance: none; /* Strips default styling out */
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='6' fill='none'><path stroke='%232C1B24' stroke-width='1.5' d='m1 1 4 4 4-4'/></svg>");
    background-repeat: no-repeat;
    background-position: right 18px center;
    padding-right: 40px;
}

.zk-contact-textarea-element {
    resize: vertical;
}

/* Interactive focus borders drawing from site brand identity colors */
.zk-contact-input-element:focus,
.zk-contact-select-element:focus,
.zk-contact-textarea-element:focus {
    border-color: var(--luxury-gold);
    background-color: var(--white);
    box-shadow: 0 4px 12px rgba(195, 168, 128, 0.08);
}

/* Custom Premium Interface Action Button */
.zk-contact-submit-button {
    background-color: var(--luxury-deep);
    color: var(--white);
    border: 1px solid var(--luxury-deep);
    padding: 16px 32px;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    cursor: pointer;
    align-self: flex-start;
    display: inline-flex;
    align-items: center;
    gap: 12px;
    position: relative;
    overflow: hidden;
    z-index: 1;
    transition: all 0.4s ease;
}

.zk-contact-submit-button span {
    transition: transform 0.3s ease;
    display: inline-block;
}

.zk-contact-submit-button::after {
    content: '';
    position: absolute;
    top: 0; left: -100%; width: 100%; height: 100%;
    background: linear-gradient(90deg, #e0af72, rgb(227, 217, 205), #a6732d);
    transition: all 0.6s ease;
    z-index: -1;
}

/* Interactive dynamic motion mapping on hover states */
.zk-contact-submit-button:hover::after {
    left: 100%;
}

.zk-contact-submit-button:hover {
    color: var(--luxury-deep);
    border-color: var(--luxury-gold);
    background-color: var(--white);
}

.zk-contact-submit-button:hover span {
    transform: translateX(4px);
}

@media(max-width: 640px) {
    .zk-contact-submit-button {
        width: 100%;
        justify-content: center;
    }
}


/* --- Bottom Section: Map Element Framework --- */
.zk-contact-bottom-map-wrapper {
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 24px;
    box-sizing: border-box;
}

@media(max-width: 767px) {
    .zk-contact-bottom-map-wrapper {
        padding: 0 16px;
    }
}

.zk-contact-map-container {
    position: relative;
    width: 100%;
    height: 450px;
    border: 1px solid var(--gray-200);
    box-shadow: 0 12px 35px rgba(0,0,0,0.04);
    background-color: var(--white);
}

@media(max-width: 767px) {
    .zk-contact-map-container {
        height: 320px;
    }
}

.zk-contact-iframe-map {
    width: 100%;
    height: 100%;
    border: 0;
    display: block;
}






 /* ============================================================
           SAREES PAGE — ALL CLASS NAMES PREFIXED WITH "zks-"
           (zero overlap with any existing class)
        ============================================================ */

      /* ---------- PAGE BANNER ---------- */
.zks-banner {
    position: relative;
    width: 100%;
    /* Fills the exact viewport space minus header components */
    height: calc(100vh - 40px - 72px);
    min-height: 520px; /* Adjusted slightly to guarantee comfortable padding for inner elements */
    overflow: hidden;
    display: flex;
    flex-direction: column; /* Allows vertical stacking of content + breadcrumb seamlessly */
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    padding: 40px 24px 80px; /* Prevents text from colliding with top boundaries or bottom breadcrumbs */
}



/* Solid black overlay with precise opacity control */
.zks-banner-overlay {
    position: absolute;
    inset: 0;
    background-color: #000000; 
    opacity: 0.65;             
    z-index: 2;                
}

/* CHANGED: Enhanced container constraints to adapt content safely inside the bounds */
.zks-banner-content {
    position: relative;
    z-index: 3;                
    text-align: center;
    color: #fff;
    width: 100%;
    max-width: 800px;
    margin: auto 0; /* Vertically centers the main group within the flex parent */
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin-bottom: 0px;
}

.zks-banner-tag {
    display: inline-block;
    color: var(--luxury-gold);
    font-size: clamp(11px, 1.5vw, 13px); /* Fluid typography */
    font-weight: 700;
    letter-spacing: 0.25em;
    text-transform: uppercase;
    margin-bottom: 14px;
    opacity: 0;
    animation: zksFadeUp 0.8s 0.2s forwards;
}

.zks-banner-title {
    font-family: 'Cinzel', serif;
    font-size: clamp(26px, 4.5vw, 52px); /* Scale title dynamically to prevent overflow */
    font-weight: 700;
    letter-spacing: 0.04em;
    line-height: 1.2;
    color: #fff;
    margin-bottom: 16px;
    opacity: 0;
    animation: zksFadeUp 0.8s 0.4s forwards;
}

.zks-banner-title span {
    color: var(--luxury-gold);
}

.zks-banner-desc {
    font-size: clamp(13px, 1.4vw, 15px); /* Highly readable, fluid sizing */
    font-weight: 300;
    line-height: 1.6;
    color: #e5e7eb;
    max-width: 640px;
    margin: 0 auto 2px;
    opacity: 0;
    animation: zksFadeUp 0.8s 0.6s forwards;
}

.zks-banner-btns {
    display: flex;
    gap: 16px;
    justify-content: center;
    flex-wrap: wrap;
    opacity: 0;
    animation: zksFadeUp 0.8s 0.8s forwards;
    width: 100%;
}

/* Banner button style */
.zks-btn-primary {
    position: relative;
    overflow: hidden;
    display: inline-block;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.18em;
    padding: 15px 34px;
    text-transform: uppercase;
    background-color: var(--luxury-gold);
    color: var(--luxury-deep);
    border: 1px solid var(--luxury-gold);
    transition: all 0.4s ease;
    z-index: 1;
}

.zks-btn-primary::after {
    content: '';
    position: absolute;
    top: 0; left: -100%; width: 100%; height: 100%;
    background: linear-gradient(90deg, #e0af72, rgb(227 217 205), #a6732d);
    transition: all 0.9s ease;
    z-index: -1;
}

.zks-btn-primary:hover::after { left: 100%; }
.zks-btn-primary:hover { color: var(--luxury-deep); }

/* Breadcrumb trail */
.zks-breadcrumb {
    position: absolute;
    bottom: 24px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 4;
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 12px;
    color: rgba(255,255,255,0.6);
    letter-spacing: 0.05em;
    white-space: nowrap; /* Keeps trail inline on smaller breakpoints */
}

.zks-breadcrumb a {
    color: rgba(255,255,255,0.6);
    transition: color 0.3s;
}

.zks-breadcrumb a:hover { color: var(--luxury-gold); }
.zks-breadcrumb .zks-bc-sep { color: var(--luxury-gold); }
.zks-breadcrumb .zks-bc-current { color: var(--luxury-gold); }

/* Additional layout fix if viewport height becomes exceptionally tiny */
@media (max-height: 600px) {
    .zks-banner {
        height: auto;
        padding: 80px 24px 100px;
    }
    .zks-breadcrumb {
        position: relative;
        bottom: auto;
        left: auto;
        transform: none;
        margin-top: 40px;
    }
}

/* ---------- KEYFRAMES ---------- */
@keyframes zksFadeUp {
    from { opacity: 0; transform: translateY(30px); }
    to   { opacity: 1; transform: translateY(0); }
}

@keyframes zksShimmer {
    0%   { background-position: -200% center; }
    100% { background-position: 200% center; }
}
        /* ---------- INTRO SECTION ---------- */
        .zks-intro-section {
            padding: 90px 0 70px;
            background-color: var(--white);
        }

        .zks-intro-grid {
            display: grid;
            grid-template-columns: 1fr;
            gap: 60px;
            align-items: center;
        }

        @media (min-width: 1024px) {
            .zks-intro-grid { grid-template-columns: 1fr 1fr; gap: 80px; }
        }

        .zks-intro-image-wrap {
            position: relative;
        }

        .zks-intro-img-border {
            border: 2px solid var(--luxury-gold);
            position: absolute;
            top: 16px; left: 16px; width: 100%; height: 100%;
            z-index: 0;
        }

        .zks-intro-img-box {
            position: relative;
            z-index: 1;
            width: 100%;
            height: 460px;
            overflow: hidden;
            box-shadow: 0 20px 50px rgba(0,0,0,0.12);
        }

        .zks-intro-img-box img {
            width: 100%;
            height: 110%;
            /*object-fit: cover;*/
            transition: transform 0.8s ease;
        }

        .zks-intro-img-box:hover img {
            transform: scale(1.05);
        }

        /* Gold badge on image */
        .zks-intro-badge {
            position: absolute;
            bottom: -20px;
            right: -20px;
            width: 90px;
            height: 90px;
            background-color: var(--luxury-gold);
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            z-index: 4;
            box-shadow: 0 10px 25px rgba(197,168,128,0.4);
        }

        .zks-intro-badge span:first-child {
            font-family: 'Cinzel', serif;
            font-size: 22px;
            font-weight: 700;
            color: var(--luxury-deep);
            line-height: 1;
        }

        .zks-intro-badge span:last-child {
            font-size: 9px;
            font-weight: 700;
            letter-spacing: 0.08em;
            text-transform: uppercase;
            color: var(--luxury-deep);
            text-align: center;
            line-height: 1.3;
            margin-top: 4px;
        }

        .zks-intro-text {
            display: flex;
            flex-direction: column;
            gap: 18px;
        }

        .zks-intro-tag {
            display: inline-block;
            color: var(--luxury-gold);
            font-size: 12px;
            font-weight: 600;
            letter-spacing: 0.2em;
            text-transform: uppercase;
        }

        .zks-intro-heading {
            font-family: 'Cinzel', serif;
            font-size: clamp(26px, 3.5vw, 40px);
            font-weight: 700;
            color: var(--luxury-deep);
            letter-spacing: 0.04em;
            line-height: 1.3;
        }

        .zks-intro-para {
            font-size: 15px;
            color: var(--gray-600);
            line-height: 1.75;
            font-weight: 400;
        }

        .zks-collection-pills {
            display: flex;
            flex-wrap: wrap;
            gap: 10px;
            margin-top: 4px;
        }

        .zks-pill {
            background-color: var(--luxury-cream);
            border: 1px solid rgba(197,168,128,0.4);
            color: var(--luxury-deep);
            font-size: 12px;
            font-weight: 600;
            letter-spacing: 0.05em;
            padding: 7px 16px;
            text-transform: uppercase;
            transition: all 0.3s ease;
        }

        .zks-pill:hover {
            background-color: var(--luxury-gold);
            color: var(--luxury-deep);
            border-color: var(--luxury-gold);
        }

        /* Non-banner button style (border, no bg) */
        .zks-btn-outline {
            position: relative;
            overflow: hidden;
            display: inline-block;
            font-size: 11px;
            font-weight: 700;
            letter-spacing: 0.18em;
            padding: 15px 34px;
            text-transform: uppercase;
            border: 1px solid var(--luxury-deep);
            color: var(--luxury-deep);
            background-color: transparent;
            transition: all 0.4s ease;
            align-self: flex-start;
            margin-top: 8px;
            z-index: 1;
        }

        .zks-btn-outline::after {
            content: '';
            position: absolute;
            top: 0; left: 0; width: 0; height: 100%;
            background-color: var(--luxury-deep);
            transition: width 0.4s ease;
            z-index: -1;
        }

        .zks-btn-outline:hover { color: var(--white); }
        .zks-btn-outline:hover::after { width: 100%; }

        /* ---------- BRIDAL SECTION ---------- */
        .zks-bridal-section {
            padding: 90px 0;
            background-color: var(--luxury-accent);
            color: var(--white);
            position: relative;
            overflow: hidden;
        }

        .zks-bridal-section::before {
            content: '';
            position: absolute;
            top: -100px; right: -100px;
            width: 400px; height: 400px;
            border-radius: 50%;
            border: 1px solid rgba(197,168,128,0.1);
            pointer-events: none;
        }

        .zks-bridal-section::after {
            content: '';
            position: absolute;
            bottom: -80px; left: -80px;
            width: 300px; height: 300px;
            border-radius: 50%;
            border: 1px solid rgba(197,168,128,0.08);
            pointer-events: none;
        }

        .zks-bridal-grid {
            display: grid;
            grid-template-columns: 1fr;
            gap: 60px;
            align-items: center;
            position: relative;
            z-index: 2;
        }

        @media (min-width: 1024px) {
            .zks-bridal-grid { grid-template-columns: 1fr 1fr; gap: 80px; }
        }

        .zks-bridal-text {
            display: flex;
            flex-direction: column;
            gap: 18px;
        }

        .zks-bridal-tag {
            color: var(--luxury-gold);
            font-size: 11px;
            font-weight: 700;
            letter-spacing: 0.2em;
            text-transform: uppercase;
        }

        .zks-bridal-heading {
            font-family: 'Cinzel', serif;
            font-size: clamp(26px, 3.5vw, 40px);
            color: var(--white);
            font-weight: 700;
            line-height: 1.3;
        }

        .zks-bridal-para {
            font-size: 15px;
            color: #d1d5db;
            line-height: 1.75;
        }

        .zks-bridal-options {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 12px;
            margin-top: 6px;
        }

        .zks-bridal-option-item {
            display: flex;
            align-items: center;
            gap: 10px;
            font-size: 13px;
            color: #e5e7eb;
        }

        .zks-bridal-option-item i {
            color: var(--luxury-gold);
            font-size: 14px;
            flex-shrink: 0;
        }

        /* Bridal btn — on dark bg, use gold fill */
        .zks-btn-gold {
            position: relative;
            overflow: hidden;
            display: inline-block;
            font-size: 11px;
            font-weight: 700;
            letter-spacing: 0.18em;
            padding: 15px 34px;
            text-transform: uppercase;
            background-color: var(--luxury-gold);
            color: var(--luxury-deep);
            border: 1px solid var(--luxury-gold);
            transition: all 0.4s ease;
            align-self: flex-start;
            z-index: 1;
        }

        .zks-btn-gold::after {
            content: '';
            position: absolute;
            top: 0; left: -100%; width: 100%; height: 100%;
            background: linear-gradient(90deg, #e0af72, #fff, #a6732d);
            transition: all 0.9s ease;
            z-index: -1;
        }

        .zks-btn-gold:hover::after { left: 100%; }

        /* Bridal images mosaic */
        .zks-bridal-mosaic {
            display: grid;
            grid-template-columns: 1fr 1fr;
            grid-template-rows: 280px 200px;
            gap: 12px;
        }

        .zks-mosaic-img {
            overflow: hidden;
            position: relative;
        }

        .zks-mosaic-img:first-child {
            grid-row: span 2;
        }

        .zks-mosaic-img img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: transform 0.7s ease;
        }

        .zks-mosaic-img:hover img {
            transform: scale(1.07);
        }

        .zks-mosaic-label {
            position: absolute;
            bottom: 0; left: 0; right: 0;
            background: linear-gradient(to top, rgba(44,27,36,0.85), transparent);
            padding: 20px 16px 12px;
            font-size: 12px;
            font-weight: 600;
            letter-spacing: 0.08em;
            text-transform: uppercase;
            color: var(--luxury-gold);
        }

        /* ---------- FABRIC GRID SECTION ---------- */
        .zks-fabrics-section {
            padding: 90px 0;
            background-color: var(--luxury-cream);
        }

        .zks-fabrics-grid {
            display: grid;
            grid-template-columns: repeat(2, 1fr);
            gap: 20px;
            margin-top: 50px;
        }

        @media (min-width: 640px) {
            .zks-fabrics-grid { grid-template-columns: repeat(3, 1fr); }
        }

        @media (min-width: 1024px) {
            .zks-fabrics-grid { grid-template-columns: repeat(5, 1fr); gap: 16px; }
        }

        .zks-fabric-card {
            background-color: var(--white);
            border: 1px solid var(--gray-200);
            overflow: hidden;
            position: relative;
            transition: all 0.35s ease;
            cursor: default;
        }

        .zks-fabric-card:hover {
            border-color: var(--luxury-gold);
            transform: translateY(-6px);
            box-shadow: 0 15px 35px rgba(197,168,128,0.2);
        }

        .zks-fabric-img {
            height: 180px;
            overflow: hidden;
            position: relative;
        }

        .zks-fabric-img img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: transform 0.6s ease;
        }

        .zks-fabric-card:hover .zks-fabric-img img {
            transform: scale(1.08);
        }

        .zks-fabric-img-overlay {
            position: absolute;
            inset: 0;
            background: rgba(44,27,36,0.2);
            transition: background 0.3s;
        }

        .zks-fabric-card:hover .zks-fabric-img-overlay {
            background: rgba(44,27,36,0.1);
        }

        .zks-fabric-meta {
            padding: 14px 16px;
            text-align: center;
        }

        .zks-fabric-meta h4 {
            font-family: 'Cinzel', serif;
            font-size: 13px;
            font-weight: 600;
            color: var(--luxury-deep);
            letter-spacing: 0.05em;
        }

        .zks-fabric-meta span {
            font-size: 11px;
            color: var(--luxury-gold);
            font-weight: 500;
            display: block;
            margin-top: 3px;
            text-transform: uppercase;
            letter-spacing: 0.08em;
        }

        /* ---------- TRAD & CONTEMPORARY SECTION ---------- */
        .zks-trad-section {
            padding: 90px 0;
            background-color: var(--white);
        }

        .zks-trad-grid {
            display: grid;
            grid-template-columns: 1fr;
            gap: 30px;
            margin-top: 50px;
        }

        @media (min-width: 768px) {
            .zks-trad-grid { grid-template-columns: 1fr 1fr; }
        }

        .zks-trad-card {
            position: relative;
            height: 420px;
            overflow: hidden;
        }

        .zks-trad-card img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: transform 0.8s ease;
        }

        .zks-trad-card:hover img {
            transform: scale(1.06);
        }

        .zks-trad-card-overlay {
            position: absolute;
            inset: 0;
            background: linear-gradient(to top, rgba(44,27,36,0.9) 0%, transparent 55%);
            display: flex;
            flex-direction: column;
            justify-content: flex-end;
            padding: 32px 28px;
        }

        .zks-trad-card-label {
            font-size: 10px;
            font-weight: 700;
            letter-spacing: 0.2em;
            text-transform: uppercase;
            color: var(--luxury-gold);
            margin-bottom: 8px;
        }

        .zks-trad-card h3 {
            font-family: 'Cinzel', serif;
            font-size: 22px;
            color: var(--white);
            font-weight: 700;
            margin-bottom: 10px;
        }

        .zks-trad-card p {
            font-size: 13px;
            color: #d1d5db;
            line-height: 1.6;
        }

        .zks-trad-card-link {
            display: inline-flex;
            align-items: center;
            gap: 6px;
            font-size: 11px;
            font-weight: 700;
            letter-spacing: 0.12em;
            text-transform: uppercase;
            color: var(--luxury-gold);
            margin-top: 14px;
            transition: gap 0.3s;
        }

        .zks-trad-card-link:hover { gap: 10px; }

        /* ---------- OCCASIONS SECTION ---------- */
        .zks-occasions-section {
            padding: 90px 0;
            background-color: var(--luxury-accent);
            color: var(--white);
        }

        .zks-occasions-flex {
            display: grid;
            grid-template-columns: repeat(2, 1fr);
            gap: 16px;
            margin-top: 50px;
        }

        @media (min-width: 640px) {
            .zks-occasions-flex { grid-template-columns: repeat(3, 1fr); }
        }

        @media (min-width: 1024px) {
            .zks-occasions-flex { grid-template-columns: repeat(5, 1fr); gap: 20px; }
        }

        .zks-occasion-tile {
            background-color: rgba(255,255,255,0.05);
            border: 1px solid rgba(197,168,128,0.15);
            padding: 28px 16px;
            text-align: center;
            transition: all 0.35s ease;
            position: relative;
            overflow: hidden;
        }

        .zks-occasion-tile::before {
            content: '';
            position: absolute;
            inset: 0;
            background: linear-gradient(135deg, rgba(197,168,128,0.08), transparent);
            opacity: 0;
            transition: opacity 0.3s;
        }

        .zks-occasion-tile:hover {
            background-color: rgba(197,168,128,0.12);
            border-color: var(--luxury-gold);
            transform: translateY(-4px);
        }

        .zks-occasion-tile:hover::before { opacity: 1; }

        .zks-occasion-icon {
            font-size: 28px;
            color: var(--luxury-gold);
            margin-bottom: 12px;
        }

        .zks-occasion-tile h4 {
            font-family: 'Cinzel', serif;
            font-size: 14px;
            font-weight: 600;
            color: var(--white);
            letter-spacing: 0.04em;
        }

        /* ---------- TRENDS SECTION ---------- */
        .zks-trends-section {
            padding: 90px 0;
            background-image: url('https://images.unsplash.com/photo-1596783074918-c84cb06531ca?auto=format&fit=crop&w=1920&q=80');
            background-attachment: fixed;
            background-position: center;
            background-size: cover;
            background-repeat: no-repeat;
            position: relative;
        }

        @media (max-width: 1024px) {
            .zks-trends-section { background-attachment: scroll; }
        }

        .zks-trends-overlay {
            position: absolute;
            inset: 0;
            background: rgba(249,246,240,0.93);
        }

        .zks-trends-inner {
            position: relative;
            z-index: 2;
        }

        .zks-trends-grid {
            display: grid;
            grid-template-columns: 1fr;
            gap: 24px;
            margin-top: 50px;
        }

        @media (min-width: 640px) {
            .zks-trends-grid { grid-template-columns: repeat(2, 1fr); }
        }

        @media (min-width: 1024px) {
            .zks-trends-grid { grid-template-columns: repeat(3, 1fr); gap: 30px; }
        }

        .zks-trend-card {
            background-color: var(--white);
            border: 1px solid var(--gray-200);
            overflow: hidden;
            transition: all 0.35s ease;
        }

        .zks-trend-card:hover {
            border-color: var(--luxury-gold);
            box-shadow: 0 15px 40px rgba(0,0,0,0.08);
            transform: translateY(-5px);
        }

        .zks-trend-img {
            height: 220px;
            overflow: hidden;
            position: relative;
        }

        .zks-trend-img img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: transform 0.6s ease;
        }

        .zks-trend-card:hover .zks-trend-img img {
            transform: scale(1.06);
        }

        .zks-trend-label {
            position: absolute;
            top: 16px; left: 16px;
            background-color: var(--luxury-gold);
            color: var(--luxury-deep);
            font-size: 9px;
            font-weight: 700;
            letter-spacing: 0.12em;
            text-transform: uppercase;
            padding: 5px 12px;
        }

        .zks-trend-meta {
            padding: 22px 20px;
        }

        .zks-trend-meta h4 {
            font-family: 'Cinzel', serif;
            font-size: 16px;
            font-weight: 600;
            color: var(--luxury-deep);
            margin-bottom: 8px;
        }

        .zks-trend-meta p {
            font-size: 13px;
            color: var(--gray-600);
            line-height: 1.6;
        }

        /* ---------- WHY CHOOSE SECTION ---------- */
        .zks-why-section {
            padding: 90px 0;
            background-color: var(--white);
        }

        .zks-why-grid {
            display: grid;
            grid-template-columns: 1fr;
            gap: 24px;
            margin-top: 50px;
        }

        @media (min-width: 640px) {
            .zks-why-grid { grid-template-columns: repeat(2, 1fr); }
        }

        @media (min-width: 1024px) {
            .zks-why-grid { grid-template-columns: repeat(3, 1fr); }
        }

        .zks-why-card {
            background-color: var(--luxury-cream);
            border: 1px solid var(--gray-200);
            padding: 36px 28px;
            text-align: center;
            transition: all 0.35s ease;
            position: relative;
            overflow: hidden;
        }

        .zks-why-card::after {
            content: '';
            position: absolute;
            bottom: 0; left: 0; right: 0;
            height: 3px;
            background-color: var(--luxury-gold);
            transform: scaleX(0);
            transform-origin: left;
            transition: transform 0.4s ease;
        }

        .zks-why-card:hover {
            background-color: var(--white);
            border-color: var(--luxury-gold);
            transform: translateY(-6px);
            box-shadow: 0 15px 35px rgba(0,0,0,0.08);
        }

        .zks-why-card:hover::after { transform: scaleX(1); }

        .zks-why-icon {
            width: 60px;
            height: 60px;
            background-color: var(--luxury-deep);
            color: var(--luxury-gold);
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 22px;
            margin: 0 auto 20px;
            transition: all 0.3s ease;
        }

        .zks-why-card:hover .zks-why-icon {
            background-color: var(--luxury-gold);
            color: var(--luxury-deep);
        }

        .zks-why-card h3 {
            font-family: 'Cinzel', serif;
            font-size: 16px;
            font-weight: 600;
            color: var(--luxury-deep);
            margin-bottom: 12px;
            letter-spacing: 0.04em;
        }

        .zks-why-card p {
            font-size: 13px;
            color: var(--gray-600);
            line-height: 1.6;
        }

        /* ---------- CONCLUSION / CTA SECTION ---------- */
        .zks-cta-section {
            position: relative;
            padding: 100px 0;
            background-image: url('https://images.unsplash.com/photo-1594938298603-c8148c4b4d28?auto=format&fit=crop&w=1920&q=80');
            background-attachment: fixed;
            background-position: center;
            background-size: cover;
            background-repeat: no-repeat;
            text-align: center;
        }

        @media (max-width: 1024px) {
            .zks-cta-section { background-attachment: scroll; }
        }

        .zks-cta-overlay {
            position: absolute;
            inset: 0;
            background: linear-gradient(135deg, rgba(44,27,36,0.85), rgba(31,17,25,0.75));
        }

        .zks-cta-content {
            position: relative;
            z-index: 2;
            color: var(--white);
            max-width: 760px;
            margin: 0 auto;
            padding: 0 24px;
        }

        .zks-cta-tag {
            color: var(--luxury-gold);
            font-size: 11px;
            font-weight: 700;
            letter-spacing: 0.25em;
            text-transform: uppercase;
            display: block;
            margin-bottom: 16px;
        }

        .zks-cta-heading {
            font-family: 'Cinzel', serif;
            font-size: clamp(26px, 4vw, 44px);
            color: var(--white);
            font-weight: 700;
            line-height: 1.25;
            margin-bottom: 18px;
        }

        .zks-cta-para {
            font-size: 15px;
            color: #e5e7eb;
            line-height: 1.75;
            margin-bottom: 36px;
        }

        .zks-cta-btns {
            display: flex;
            gap: 16px;
            justify-content: center;
            flex-wrap: wrap;
        }

        /* divider ornament */
        .zks-ornament {
            text-align: center;
            margin: 40px 0;
        }

        .zks-ornament span {
            display: inline-flex;
            align-items: center;
            gap: 14px;
            color: var(--luxury-gold);
            font-size: 18px;
        }

        .zks-ornament span::before,
        .zks-ornament span::after {
            content: '';
            display: inline-block;
            width: 80px;
            height: 1px;
            background: linear-gradient(to right, transparent, var(--luxury-gold));
        }

        .zks-ornament span::after {
            background: linear-gradient(to left, transparent, var(--luxury-gold));
        }

        /* Scroll reveal utility */
        .zks-reveal {
            opacity: 0;
            transform: translateY(30px);
            transition: opacity 0.7s ease, transform 0.7s ease;
        }

        .zks-reveal.zks-visible {
            opacity: 1;
            transform: translateY(0);
        }

        .zks-reveal-delay-1 { transition-delay: 0.1s; }
        .zks-reveal-delay-2 { transition-delay: 0.2s; }
        .zks-reveal-delay-3 { transition-delay: 0.3s; }
        .zks-reveal-delay-4 { transition-delay: 0.4s; }
        .zks-reveal-delay-5 { transition-delay: 0.5s; }

        /* Topbar height compensation: when topbar shows, adjust banner height */
        @media (min-width: 768px) {
            .zks-banner {
                /* topbar visible = 40px, header = 72px */
                height: calc(100vh - 40px - 72px);
            }
        }

        /* When topbar is hidden (mobile) */
        @media (max-width: 767px) {
            .zks-banner {
                height: calc(100vh - 72px);
                min-height: 400px;
            }
        }
        
         /* ============================================================
           SAREES PAGE — ALL CLASS NAMES PREFIXED WITH "zks-"
           (zero overlap with any existing class)
        ============================================================ */

      /* ---------- PAGE BANNER ---------- */
.zks-banner {
    position: relative;
    width: 100%;
    /* Fills the exact viewport space minus header components */
    height: calc(100vh - 40px - 72px);
    min-height: 520px; /* Adjusted slightly to guarantee comfortable padding for inner elements */
    overflow: hidden;
    display: flex;
    flex-direction: column; /* Allows vertical stacking of content + breadcrumb seamlessly */
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    padding: 40px 24px 80px; /* Prevents text from colliding with top boundaries or bottom breadcrumbs */
}



/* Solid black overlay with precise opacity control */
.zks-banner-overlay {
    position: absolute;
    inset: 0;
    background-color: #000000; 
    opacity: 0.65;             
    z-index: 2;                
}

/* CHANGED: Enhanced container constraints to adapt content safely inside the bounds */
.zks-banner-content {
    position: relative;
    z-index: 3;                
    text-align: center;
    color: #fff;
    width: 100%;
    max-width: 800px;
    margin: auto 0; /* Vertically centers the main group within the flex parent */
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin-bottom: 0px;
}

.zks-banner-tag {
    display: inline-block;
    color: var(--luxury-gold);
    font-size: clamp(11px, 1.5vw, 13px); /* Fluid typography */
    font-weight: 700;
    letter-spacing: 0.25em;
    text-transform: uppercase;
    margin-bottom: 14px;
    opacity: 0;
    animation: zksFadeUp 0.8s 0.2s forwards;
}

.zks-banner-title {
    font-family: 'Cinzel', serif;
    font-size: clamp(26px, 4.5vw, 52px); /* Scale title dynamically to prevent overflow */
    font-weight: 700;
    letter-spacing: 0.04em;
    line-height: 1.2;
    color: #fff;
    margin-bottom: 16px;
    opacity: 0;
    animation: zksFadeUp 0.8s 0.4s forwards;
}

.zks-banner-title span {
    color: var(--luxury-gold);
}

.zks-banner-desc {
    font-size: clamp(13px, 1.4vw, 15px); /* Highly readable, fluid sizing */
    font-weight: 300;
    line-height: 1.6;
    color: #e5e7eb;
    max-width: 640px;
    margin: 0 auto 2px;
    opacity: 0;
    animation: zksFadeUp 0.8s 0.6s forwards;
}

.zks-banner-btns {
    display: flex;
    gap: 16px;
    justify-content: center;
    flex-wrap: wrap;
    opacity: 0;
    animation: zksFadeUp 0.8s 0.8s forwards;
    width: 100%;
}

/* Banner button style */
.zks-btn-primary {
    position: relative;
    overflow: hidden;
    display: inline-block;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.18em;
    padding: 15px 34px;
    text-transform: uppercase;
    background-color: var(--luxury-gold);
    color: var(--luxury-deep);
    border: 1px solid var(--luxury-gold);
    transition: all 0.4s ease;
    z-index: 1;
}

.zks-btn-primary::after {
    content: '';
    position: absolute;
    top: 0; left: -100%; width: 100%; height: 100%;
    background: linear-gradient(90deg, #e0af72, rgb(227 217 205), #a6732d);
    transition: all 0.9s ease;
    z-index: -1;
}

.zks-btn-primary:hover::after { left: 100%; }
.zks-btn-primary:hover { color: var(--luxury-deep); }

/* Breadcrumb trail */
.zks-breadcrumb {
    position: absolute;
    bottom: 24px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 4;
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 12px;
    color: rgba(255,255,255,0.6);
    letter-spacing: 0.05em;
    white-space: nowrap; /* Keeps trail inline on smaller breakpoints */
}

.zks-breadcrumb a {
    color: rgba(255,255,255,0.6);
    transition: color 0.3s;
}

.zks-breadcrumb a:hover { color: var(--luxury-gold); }
.zks-breadcrumb .zks-bc-sep { color: var(--luxury-gold); }
.zks-breadcrumb .zks-bc-current { color: var(--luxury-gold); }

/* Additional layout fix if viewport height becomes exceptionally tiny */
@media (max-height: 600px) {
    .zks-banner {
        height: auto;
        padding: 80px 24px 100px;
    }
    .zks-breadcrumb {
        position: relative;
        bottom: auto;
        left: auto;
        transform: none;
        margin-top: 40px;
    }
}

/* ---------- KEYFRAMES ---------- */
@keyframes zksFadeUp {
    from { opacity: 0; transform: translateY(30px); }
    to   { opacity: 1; transform: translateY(0); }
}

@keyframes zksShimmer {
    0%   { background-position: -200% center; }
    100% { background-position: 200% center; }
}
        /* ---------- INTRO SECTION ---------- */
        .zks-intro-section {
            padding: 90px 0 70px;
            background-color: var(--white);
        }

        .zks-intro-grid {
            display: grid;
            grid-template-columns: 1fr;
            gap: 60px;
            align-items: center;
        }

        @media (min-width: 1024px) {
            .zks-intro-grid { grid-template-columns: 1fr 1fr; gap: 80px; }
        }

        .zks-intro-image-wrap {
            position: relative;
        }

        .zks-intro-img-border {
            border: 2px solid var(--luxury-gold);
            position: absolute;
            top: 16px; left: 16px; width: 100%; height: 100%;
            z-index: 0;
        }

        .zks-intro-img-box {
            position: relative;
            z-index: 1;
            width: 100%;
            height: 645px;
            overflow: hidden;
            box-shadow: 0 20px 50px rgba(0,0,0,0.12);
        }

        .zks-intro-img-box img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: transform 0.8s ease;
        }

        .zks-intro-img-box:hover img {
            transform: scale(1.05);
        }

        /* Gold badge on image */
        .zks-intro-badge {
            position: absolute;
            bottom: -20px;
            right: -20px;
            width: 90px;
            height: 90px;
            background-color: var(--luxury-gold);
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            z-index: 4;
            box-shadow: 0 10px 25px rgba(197,168,128,0.4);
        }

        .zks-intro-badge span:first-child {
            font-family: 'Cinzel', serif;
            font-size: 22px;
            font-weight: 700;
            color: var(--luxury-deep);
            line-height: 1;
        }

        .zks-intro-badge span:last-child {
            font-size: 9px;
            font-weight: 700;
            letter-spacing: 0.08em;
            text-transform: uppercase;
            color: var(--luxury-deep);
            text-align: center;
            line-height: 1.3;
            margin-top: 4px;
        }

        .zks-intro-text {
            display: flex;
            flex-direction: column;
            gap: 18px;
        }

        .zks-intro-tag {
            display: inline-block;
            color: var(--luxury-gold);
            font-size: 12px;
            font-weight: 600;
            letter-spacing: 0.2em;
            text-transform: uppercase;
        }

        .zks-intro-heading {
            font-family: 'Cinzel', serif;
            font-size: clamp(26px, 3.5vw, 40px);
            font-weight: 700;
            color: var(--luxury-deep);
            letter-spacing: 0.04em;
            line-height: 1.3;
        }

        .zks-intro-para {
            font-size: 15px;
            color: var(--gray-600);
            line-height: 1.75;
            font-weight: 400;
        }

        .zks-collection-pills {
            display: flex;
            flex-wrap: wrap;
            gap: 10px;
            margin-top: 4px;
        }

        .zks-pill {
            background-color: var(--luxury-cream);
            border: 1px solid rgba(197,168,128,0.4);
            color: var(--luxury-deep);
            font-size: 12px;
            font-weight: 600;
            letter-spacing: 0.05em;
            padding: 7px 16px;
            text-transform: uppercase;
            transition: all 0.3s ease;
        }

        .zks-pill:hover {
            background-color: var(--luxury-gold);
            color: var(--luxury-deep);
            border-color: var(--luxury-gold);
        }

        /* Non-banner button style (border, no bg) */
        .zks-btn-outline {
            position: relative;
            overflow: hidden;
            display: inline-block;
            font-size: 11px;
            font-weight: 700;
            letter-spacing: 0.18em;
            padding: 15px 34px;
            text-transform: uppercase;
            border: 1px solid var(--luxury-deep);
            color: var(--luxury-deep);
            background-color: transparent;
            transition: all 0.4s ease;
            align-self: flex-start;
            margin-top: 8px;
            z-index: 1;
        }

        .zks-btn-outline::after {
            content: '';
            position: absolute;
            top: 0; left: 0; width: 0; height: 100%;
            background-color: var(--luxury-deep);
            transition: width 0.4s ease;
            z-index: -1;
        }

        .zks-btn-outline:hover { color: var(--white); }
        .zks-btn-outline:hover::after { width: 100%; }

        /* ---------- BRIDAL SECTION ---------- */
        .zks-bridal-section {
            padding: 90px 0;
            background-color: var(--luxury-accent);
            color: var(--white);
            position: relative;
            overflow: hidden;
        }

        .zks-bridal-section::before {
            content: '';
            position: absolute;
            top: -100px; right: -100px;
            width: 400px; height: 400px;
            border-radius: 50%;
            border: 1px solid rgba(197,168,128,0.1);
            pointer-events: none;
        }

        .zks-bridal-section::after {
            content: '';
            position: absolute;
            bottom: -80px; left: -80px;
            width: 300px; height: 300px;
            border-radius: 50%;
            border: 1px solid rgba(197,168,128,0.08);
            pointer-events: none;
        }

        .zks-bridal-grid {
            display: grid;
            grid-template-columns: 1fr;
            gap: 60px;
            align-items: center;
            position: relative;
            z-index: 2;
        }

        @media (min-width: 1024px) {
            .zks-bridal-grid { grid-template-columns: 1fr 1fr; gap: 80px; }
        }

        .zks-bridal-text {
            display: flex;
            flex-direction: column;
            gap: 18px;
        }

        .zks-bridal-tag {
            color: var(--luxury-gold);
            font-size: 11px;
            font-weight: 700;
            letter-spacing: 0.2em;
            text-transform: uppercase;
        }

        .zks-bridal-heading {
            font-family: 'Cinzel', serif;
            font-size: clamp(26px, 3.5vw, 40px);
            color: var(--white);
            font-weight: 700;
            line-height: 1.3;
        }

        .zks-bridal-para {
            font-size: 15px;
            color: #d1d5db;
            line-height: 1.75;
        }

        .zks-bridal-options {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 12px;
            margin-top: 6px;
        }

        .zks-bridal-option-item {
            display: flex;
            align-items: center;
            gap: 10px;
            font-size: 13px;
            color: #e5e7eb;
        }

        .zks-bridal-option-item i {
            color: var(--luxury-gold);
            font-size: 14px;
            flex-shrink: 0;
        }

        /* Bridal btn — on dark bg, use gold fill */
        .zks-btn-gold {
            position: relative;
            overflow: hidden;
            display: inline-block;
            font-size: 11px;
            font-weight: 700;
            letter-spacing: 0.18em;
            padding: 15px 34px;
            text-transform: uppercase;
            background-color: var(--luxury-gold);
            color: var(--luxury-deep);
            border: 1px solid var(--luxury-gold);
            transition: all 0.4s ease;
            align-self: flex-start;
            z-index: 1;
        }

        .zks-btn-gold::after {
            content: '';
            position: absolute;
            top: 0; left: -100%; width: 100%; height: 100%;
            background: linear-gradient(90deg, #e0af72, #fff, #a6732d);
            transition: all 0.9s ease;
            z-index: -1;
        }

        .zks-btn-gold:hover::after { left: 100%; }

        /* Bridal images mosaic */
        .zks-bridal-mosaic {
            display: grid;
            grid-template-columns: 1fr 1fr;
            grid-template-rows: 280px 200px;
            gap: 12px;
        }

        .zks-mosaic-img {
            overflow: hidden;
            position: relative;
        }

        .zks-mosaic-img:first-child {
            grid-row: span 2;
        }

        .zks-mosaic-img img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: transform 0.7s ease;
        }

        .zks-mosaic-img:hover img {
            transform: scale(1.07);
        }

        .zks-mosaic-label {
            position: absolute;
            bottom: 0; left: 0; right: 0;
            background: linear-gradient(to top, rgba(44,27,36,0.85), transparent);
            padding: 20px 16px 12px;
            font-size: 12px;
            font-weight: 600;
            letter-spacing: 0.08em;
            text-transform: uppercase;
            color: var(--luxury-gold);
        }

        /* ---------- FABRIC GRID SECTION ---------- */
        .zks-fabrics-section {
            padding: 90px 0;
            background-color: var(--luxury-cream);
        }

        .zks-fabrics-grid {
            display: grid;
            grid-template-columns: repeat(2, 1fr);
            gap: 20px;
            margin-top: 50px;
        }

        @media (min-width: 640px) {
            .zks-fabrics-grid { grid-template-columns: repeat(3, 1fr); }
        }

        @media (min-width: 1024px) {
            .zks-fabrics-grid { grid-template-columns: repeat(5, 1fr); gap: 16px; }
        }

        .zks-fabric-card {
            background-color: var(--white);
            border: 1px solid var(--gray-200);
            overflow: hidden;
            position: relative;
            transition: all 0.35s ease;
            cursor: default;
        }

        .zks-fabric-card:hover {
            border-color: var(--luxury-gold);
            transform: translateY(-6px);
            box-shadow: 0 15px 35px rgba(197,168,128,0.2);
        }

        .zks-fabric-img {
            height: 180px;
            overflow: hidden;
            position: relative;
        }

        .zks-fabric-img img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: transform 0.6s ease;
        }

        .zks-fabric-card:hover .zks-fabric-img img {
            transform: scale(1.08);
        }

        .zks-fabric-img-overlay {
            position: absolute;
            inset: 0;
            background: rgba(44,27,36,0.2);
            transition: background 0.3s;
        }

        .zks-fabric-card:hover .zks-fabric-img-overlay {
            background: rgba(44,27,36,0.1);
        }

        .zks-fabric-meta {
            padding: 14px 16px;
            text-align: center;
        }

        .zks-fabric-meta h4 {
            font-family: 'Cinzel', serif;
            font-size: 13px;
            font-weight: 600;
            color: var(--luxury-deep);
            letter-spacing: 0.05em;
        }

        .zks-fabric-meta span {
            font-size: 11px;
            color: var(--luxury-gold);
            font-weight: 500;
            display: block;
            margin-top: 3px;
            text-transform: uppercase;
            letter-spacing: 0.08em;
        }

        /* ---------- TRAD & CONTEMPORARY SECTION ---------- */
        .zks-trad-section {
            padding: 90px 0;
            background-color: var(--white);
        }

        .zks-trad-grid {
            display: grid;
            grid-template-columns: 1fr;
            gap: 30px;
            margin-top: 50px;
        }

        @media (min-width: 768px) {
            .zks-trad-grid { grid-template-columns: 1fr 1fr; }
        }

        .zks-trad-card {
            position: relative;
            height: 420px;
            overflow: hidden;
        }

        .zks-trad-card img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: transform 0.8s ease;
        }

        .zks-trad-card:hover img {
            transform: scale(1.06);
        }

        .zks-trad-card-overlay {
            position: absolute;
            inset: 0;
            background: linear-gradient(to top, rgba(44,27,36,0.9) 0%, transparent 55%);
            display: flex;
            flex-direction: column;
            justify-content: flex-end;
            padding: 32px 28px;
        }

        .zks-trad-card-label {
            font-size: 10px;
            font-weight: 700;
            letter-spacing: 0.2em;
            text-transform: uppercase;
            color: var(--luxury-gold);
            margin-bottom: 8px;
        }

        .zks-trad-card h3 {
            font-family: 'Cinzel', serif;
            font-size: 22px;
            color: var(--white);
            font-weight: 700;
            margin-bottom: 10px;
        }

        .zks-trad-card p {
            font-size: 13px;
            color: #d1d5db;
            line-height: 1.6;
        }

        .zks-trad-card-link {
            display: inline-flex;
            align-items: center;
            gap: 6px;
            font-size: 11px;
            font-weight: 700;
            letter-spacing: 0.12em;
            text-transform: uppercase;
            color: var(--luxury-gold);
            margin-top: 14px;
            transition: gap 0.3s;
        }

        .zks-trad-card-link:hover { gap: 10px; }

        /* ---------- OCCASIONS SECTION ---------- */
        .zks-occasions-section {
            padding: 90px 0;
            background-color: var(--luxury-accent);
            color: var(--white);
        }

        .zks-occasions-flex {
            display: grid;
            grid-template-columns: repeat(2, 1fr);
            gap: 16px;
            margin-top: 50px;
        }

        @media (min-width: 640px) {
            .zks-occasions-flex { grid-template-columns: repeat(3, 1fr); }
        }

        @media (min-width: 1024px) {
            .zks-occasions-flex { grid-template-columns: repeat(5, 1fr); gap: 20px; }
        }

        .zks-occasion-tile {
            background-color: rgba(255,255,255,0.05);
            border: 1px solid rgba(197,168,128,0.15);
            padding: 28px 16px;
            text-align: center;
            transition: all 0.35s ease;
            position: relative;
            overflow: hidden;
        }

        .zks-occasion-tile::before {
            content: '';
            position: absolute;
            inset: 0;
            background: linear-gradient(135deg, rgba(197,168,128,0.08), transparent);
            opacity: 0;
            transition: opacity 0.3s;
        }

        .zks-occasion-tile:hover {
            background-color: rgba(197,168,128,0.12);
            border-color: var(--luxury-gold);
            transform: translateY(-4px);
        }

        .zks-occasion-tile:hover::before { opacity: 1; }

        .zks-occasion-icon {
            font-size: 28px;
            color: var(--luxury-gold);
            margin-bottom: 12px;
        }

        .zks-occasion-tile h4 {
            font-family: 'Cinzel', serif;
            font-size: 14px;
            font-weight: 600;
            color: var(--white);
            letter-spacing: 0.04em;
        }

        /* ---------- TRENDS SECTION ---------- */
        .zks-trends-section {
            padding: 90px 0;
            background-image: url('https://images.unsplash.com/photo-1596783074918-c84cb06531ca?auto=format&fit=crop&w=1920&q=80');
            background-attachment: fixed;
            background-position: center;
            background-size: cover;
            background-repeat: no-repeat;
            position: relative;
        }

        @media (max-width: 1024px) {
            .zks-trends-section { background-attachment: scroll; }
        }

        .zks-trends-overlay {
            position: absolute;
            inset: 0;
            background: rgba(249,246,240,0.93);
        }

        .zks-trends-inner {
            position: relative;
            z-index: 2;
        }

        .zks-trends-grid {
            display: grid;
            grid-template-columns: 1fr;
            gap: 24px;
            margin-top: 50px;
        }

        @media (min-width: 640px) {
            .zks-trends-grid { grid-template-columns: repeat(2, 1fr); }
        }

        @media (min-width: 1024px) {
            .zks-trends-grid { grid-template-columns: repeat(3, 1fr); gap: 30px; }
        }

        .zks-trend-card {
            background-color: var(--white);
            border: 1px solid var(--gray-200);
            overflow: hidden;
            transition: all 0.35s ease;
        }

        .zks-trend-card:hover {
            border-color: var(--luxury-gold);
            box-shadow: 0 15px 40px rgba(0,0,0,0.08);
            transform: translateY(-5px);
        }

        .zks-trend-img {
            height: 220px;
            overflow: hidden;
            position: relative;
        }

        .zks-trend-img img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: transform 0.6s ease;
        }

        .zks-trend-card:hover .zks-trend-img img {
            transform: scale(1.06);
        }

        .zks-trend-label {
            position: absolute;
            top: 16px; left: 16px;
            background-color: var(--luxury-gold);
            color: var(--luxury-deep);
            font-size: 9px;
            font-weight: 700;
            letter-spacing: 0.12em;
            text-transform: uppercase;
            padding: 5px 12px;
        }

        .zks-trend-meta {
            padding: 22px 20px;
        }

        .zks-trend-meta h4 {
            font-family: 'Cinzel', serif;
            font-size: 16px;
            font-weight: 600;
            color: var(--luxury-deep);
            margin-bottom: 8px;
        }

        .zks-trend-meta p {
            font-size: 13px;
            color: var(--gray-600);
            line-height: 1.6;
        }

        /* ---------- WHY CHOOSE SECTION ---------- */
        .zks-why-section {
            padding: 90px 0;
            background-color: var(--white);
        }

        .zks-why-grid {
            display: grid;
            grid-template-columns: 1fr;
            gap: 24px;
            margin-top: 50px;
        }

        @media (min-width: 640px) {
            .zks-why-grid { grid-template-columns: repeat(2, 1fr); }
        }

        @media (min-width: 1024px) {
            .zks-why-grid { grid-template-columns: repeat(3, 1fr); }
        }

        .zks-why-card {
            background-color: var(--luxury-cream);
            border: 1px solid var(--gray-200);
            padding: 36px 28px;
            text-align: center;
            transition: all 0.35s ease;
            position: relative;
            overflow: hidden;
        }

        .zks-why-card::after {
            content: '';
            position: absolute;
            bottom: 0; left: 0; right: 0;
            height: 3px;
            background-color: var(--luxury-gold);
            transform: scaleX(0);
            transform-origin: left;
            transition: transform 0.4s ease;
        }

        .zks-why-card:hover {
            background-color: var(--white);
            border-color: var(--luxury-gold);
            transform: translateY(-6px);
            box-shadow: 0 15px 35px rgba(0,0,0,0.08);
        }

        .zks-why-card:hover::after { transform: scaleX(1); }

        .zks-why-icon {
            width: 60px;
            height: 60px;
            background-color: var(--luxury-deep);
            color: var(--luxury-gold);
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 22px;
            margin: 0 auto 20px;
            transition: all 0.3s ease;
        }

        .zks-why-card:hover .zks-why-icon {
            background-color: var(--luxury-gold);
            color: var(--luxury-deep);
        }

        .zks-why-card h3 {
            font-family: 'Cinzel', serif;
            font-size: 16px;
            font-weight: 600;
            color: var(--luxury-deep);
            margin-bottom: 12px;
            letter-spacing: 0.04em;
        }

        .zks-why-card p {
            font-size: 13px;
            color: var(--gray-600);
            line-height: 1.6;
        }

        /* ---------- CONCLUSION / CTA SECTION ---------- */
        .zks-cta-section {
            position: relative;
            padding: 100px 0;
            background-image: url('https://images.unsplash.com/photo-1594938298603-c8148c4b4d28?auto=format&fit=crop&w=1920&q=80');
            background-attachment: fixed;
            background-position: center;
            background-size: cover;
            background-repeat: no-repeat;
            text-align: center;
        }

        @media (max-width: 1024px) {
            .zks-cta-section { background-attachment: scroll; }
        }

        .zks-cta-overlay {
            position: absolute;
            inset: 0;
            background: linear-gradient(135deg, rgba(44,27,36,0.85), rgba(31,17,25,0.75));
        }

        .zks-cta-content {
            position: relative;
            z-index: 2;
            color: var(--white);
            max-width: 760px;
            margin: 0 auto;
            padding: 0 24px;
        }

        .zks-cta-tag {
            color: var(--luxury-gold);
            font-size: 11px;
            font-weight: 700;
            letter-spacing: 0.25em;
            text-transform: uppercase;
            display: block;
            margin-bottom: 16px;
        }

        .zks-cta-heading {
            font-family: 'Cinzel', serif;
            font-size: clamp(26px, 4vw, 44px);
            color: var(--white);
            font-weight: 700;
            line-height: 1.25;
            margin-bottom: 18px;
        }

        .zks-cta-para {
            font-size: 15px;
            color: #e5e7eb;
            line-height: 1.75;
            margin-bottom: 36px;
        }

        .zks-cta-btns {
            display: flex;
            gap: 16px;
            justify-content: center;
            flex-wrap: wrap;
        }

        /* divider ornament */
        .zks-ornament {
            text-align: center;
            margin: 40px 0;
        }

        .zks-ornament span {
            display: inline-flex;
            align-items: center;
            gap: 14px;
            color: var(--luxury-gold);
            font-size: 18px;
        }

        .zks-ornament span::before,
        .zks-ornament span::after {
            content: '';
            display: inline-block;
            width: 80px;
            height: 1px;
            background: linear-gradient(to right, transparent, var(--luxury-gold));
        }

        .zks-ornament span::after {
            background: linear-gradient(to left, transparent, var(--luxury-gold));
        }

        /* Scroll reveal utility */
        .zks-reveal {
            opacity: 0;
            transform: translateY(30px);
            transition: opacity 0.7s ease, transform 0.7s ease;
        }

        .zks-reveal.zks-visible {
            opacity: 1;
            transform: translateY(0);
        }

        .zks-reveal-delay-1 { transition-delay: 0.1s; }
        .zks-reveal-delay-2 { transition-delay: 0.2s; }
        .zks-reveal-delay-3 { transition-delay: 0.3s; }
        .zks-reveal-delay-4 { transition-delay: 0.4s; }
        .zks-reveal-delay-5 { transition-delay: 0.5s; }

        /* Topbar height compensation: when topbar shows, adjust banner height */
        @media (min-width: 768px) {
            .zks-banner {
                /* topbar visible = 40px, header = 72px */
                height: calc(100vh - 40px - 72px);
            }
        }

        /* When topbar is hidden (mobile) */
        @media (max-width: 767px) {
            .zks-banner {
                height: calc(100vh - 72px);
                min-height: 400px;
            }
        }
        
        
        
        
        
        
       
/* ========================================================
   ZAKIRA PREMIUM SERVICE GALLERY INTEGRATED STYLING
   ======================================================== */

.zkg-gallery-page-wrapper {
    background-color: var(--luxury-cream);
    color: var(--luxury-deep);
    width: 100%;
    padding: 40px 0 80px 0;
    box-sizing: border-box;
}

.zkg-gallery-section {
    max-width: 1280px;
    margin: 0 auto 80px auto;
    padding: 0 24px;
    box-sizing: border-box;
}

@media(max-width: 767px) {
    .zkg-gallery-section {
        margin-bottom: 50px;
        padding: 0 16px;
    }
}

/* Heading Alignment Elements */
.zkg-section-header {
    text-align: center;
    margin-bottom: 36px;
}

.zkg-section-tag {
    color: var(--luxury-gold);
    letter-spacing: 0.15em;
    text-transform: uppercase;
    font-size: 11px;
    font-weight: 600;
    display: block;
    margin-bottom: 6px;
}

.zkg-section-title {
    font-family: 'Cinzel', serif;
    font-size: 30px;
    font-weight: 700;
    color: var(--luxury-deep);
    letter-spacing: 0.05em;
    margin: 0;
}

@media(max-width: 767px) {
    .zkg-section-title { font-size: 24px; }
}

/* STRICT 4*N Grid Structural Engine */
.zkg-gallery-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 24px;
}

@media (max-width: 1024px) {
    .zkg-gallery-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 20px;
    }
}

@media (max-width: 576px) {
    .zkg-gallery-grid {
        grid-template-columns: repeat(1, minmax(0, 1fr));
        gap: 20px;
    }
}

/* Gallery Inner Card Framework */
.zkg-gallery-item {
    background-color: var(--white);
    border: 1px solid var(--gray-200);
    height: 419px;
    overflow: hidden;
    cursor: pointer;
    position: relative;
    box-sizing: border-box;
}

.zkg-gallery-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.zkg-gallery-item:hover img {
    transform: scale(1.05);
}

/* Embedded Glossy Card Transition Framework */
.zkg-glossy-card {
    position: relative;
}
.zkg-glossy-card::before {
    content: '';
    position: absolute;
    top: 0; left: -150%; width: 50%; height: 100%;
    background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.25) 50%, rgba(255,255,255,0) 100%);
    transform: skewX(-25deg);
    transition: 0.75s ease;
    z-index: 2;
}
.zkg-gallery-item:hover::before {
    left: 150%;
}

/* ========================================================
   LIGHTBOX ARCHITECTURE & ZOOM SYSTEM
   ======================================================== */

.zkg-lightbox-overlay {
    position: fixed;
    inset: 0;
    background-color: rgba(31, 17, 25, 0.96); 
    z-index: 2000;
    display: none;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.zkg-lightbox-overlay.zkg-active {
    display: flex;
    opacity: 1;
}

/* RIGHT-ALIGNED LIGHTBOX HEAD GROUP CONTAINER */
.zkg-lightbox-top-right-group {
    position: absolute;
    top: 30px;
    right: 40px;
    display: flex;
    align-items: center;
    gap: 24px;
    z-index: 2015;
}

/* ZOOM CONTROL ENGINE PANELS */
.zkg-zoom-controls {
    display: flex;
    gap: 8px;
}

.zkg-zoom-controls button {
    background: rgba(44, 27, 36, 0.6);
    border: 1px solid rgba(197, 168, 128, 0.4);
    color: var(--luxury-gold);
    width: 40px;
    height: 40px;
    font-size: 20px;
    font-weight: 400;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
    border-radius: 4px;
    line-height: 1;
}

.zkg-zoom-controls button:hover {
    background-color: var(--luxury-gold);
    color: var(--luxury-deep);
    border-color: var(--luxury-gold);
    transform: scale(1.05);
}

/* Reset baseline layout close button positioning styles */
.zkg-lightbox-close {
    position: relative;
    top: auto;
    right: auto;
    background: none;
    border: none;
    color: var(--luxury-gold);
    font-size: 44px;
    line-height: 1;
    cursor: pointer;
    transition: color 0.3s, transform 0.3s;
}

.zkg-lightbox-close:hover {
    color: var(--white);
    transform: scale(1.1);
}

@media(max-width: 767px) {
    .zkg-lightbox-top-right-group {
        top: 20px;
        right: 20px;
        gap: 12px;
    }
    .zkg-zoom-controls button {
        width: 34px;
        height: 34px;
        font-size: 16px;
    }
    .zkg-lightbox-close {
        font-size: 36px;
    }
}

.zkg-lightbox-view {
    max-width: 85%;
    max-height: 80vh;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}

.zkg-lightbox-view img {
    max-width: 100%;
    max-height: 80vh;
    object-fit: contain;
    box-shadow: 0 20px 50px rgba(0,0,0,0.5);
    cursor: zoom-in;
    /* Transition applies on transform scales to ensure silky performance */
    transition: transform 0.2s ease-out;
    user-select: none;
}

/* Navigation Arrow System */
.zkg-lightbox-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(44, 27, 36, 0.6);
    border: 1px solid rgba(197, 168, 128, 0.4);
    color: var(--luxury-gold);
    width: 54px;
    height: 54px;
    font-size: 18px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
    z-index: 2005;
}

.zkg-lightbox-nav:hover {
    background-color: var(--luxury-gold);
    color: var(--luxury-deep);
    border-color: var(--luxury-gold);
}

.zkg-nav-left { left: 30px; }
.zkg-nav-right { right: 30px; }

@media(max-width: 767px) {
    .zkg-lightbox-nav {
        width: 42px;
        height: 42px;
        font-size: 14px;
    }
    .zkg-nav-left { left: 10px; }
    .zkg-nav-right { right: 10px; }
}














/* =========================================
   ZAKIRA MISSION & VISION SECTION
========================================= */

.zakira-purpose-section {
    width: 100%;
    padding: 100px 20px;
    background: #f7f3ed;
    position: relative;
    overflow: hidden;
}


/* =========================================
   BACKGROUND DECORATION
========================================= */

.zakira-purpose-section::before {
    content: "";
    position: absolute;
    width: 420px;
    height: 420px;
    border: 1px solid #d7c29b;
    border-radius: 50%;
    top: -250px;
    left: -220px;
    opacity: 0.45;
}

.zakira-purpose-section::after {
    content: "";
    position: absolute;
    width: 360px;
    height: 360px;
    border: 1px solid #d7c29b;
    border-radius: 50%;
    right: -210px;
    bottom: -220px;
    opacity: 0.45;
}


/* =========================================
   CONTAINER
========================================= */

.zakira-purpose-container {
    width: 100%;
    max-width: 1180px;
    margin: 0 auto;
    position: relative;
    z-index: 2;
}


/* =========================================
   HEADER
========================================= */

.zakira-purpose-header {
    max-width: 780px;
    margin: 0 auto 60px;
    text-align: center;
}

.zakira-purpose-overline {
    display: block;
    margin-bottom: 13px;
    color: #b58a43;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 3px;
    text-transform: uppercase;
}

.zakira-purpose-header h2 {
    margin: 0;
    color: #241019;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 43px;
    font-weight: 600;
    line-height: 1.2;
}

.zakira-purpose-header h2 span {
    color: #b58a43;
}


/* =========================================
   HEADING DECORATION
========================================= */

.zakira-purpose-heading-line {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin: 20px auto;
}

.zakira-purpose-heading-line span {
    display: block;
    width: 55px;
    height: 1px;
    background: #c9a15b;
}

.zakira-purpose-heading-line i {
    color: #c9a15b;
    font-size: 9px;
    transform: rotate(45deg);
}

.zakira-purpose-header p {
    max-width: 700px;
    margin: 0 auto;
    color: #6d6467;
    font-size: 14px;
    line-height: 1.9;
}


/* =========================================
   GRID
========================================= */

.zakira-purpose-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
    align-items: stretch;
}


/* =========================================
   CARD
========================================= */

.zakira-purpose-card {
    position: relative;
    padding: 45px 42px;
    overflow: hidden;
    border: 1px solid #dfd5c8;
    transition: all 0.4s ease;
}


/* Gold top border */

/*.zakira-purpose-card::before {*/
/*    content: "";*/
/*    position: absolute;*/
/*    top: 0;*/
/*    left: 0;*/
/*    width: 0;*/
/*    height: 4px;*/
/*    background: #c9a15b;*/
/*    transition: width 0.45s ease;*/
/*}*/

.zakira-purpose-card:hover::before {
    width: 100%;
}


/* Background ornament */

.zakira-purpose-card::after {
    content: "";
    position: absolute;
    width: 210px;
    height: 210px;
    border-radius: 50%;
    right: -120px;
    bottom: -120px;
    transition: all 0.5s ease;
}

.zakira-purpose-card:hover::after {
    width: 270px;
    height: 270px;
}


/* =========================================
   MISSION CARD
========================================= */

.zakira-purpose-mission {
    background: #ffffff;
}

.zakira-purpose-mission::after {
    background: #f0e8dc;
}


/* =========================================
   VISION CARD
========================================= */

.zakira-purpose-vision {
    background: #241019;
    border-color: #241019;
}

.zakira-purpose-vision::after {
    background: #38252e;
}


/* =========================================
   CARD TOP
========================================= */

.zakira-purpose-card-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 30px;
}


/* =========================================
   ICON
========================================= */

.zakira-purpose-icon {
    width: 66px;
    height: 66px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #241019;
    color: #e2bb70;
    font-size: 22px;
    position: relative;
    z-index: 2;
    transition: all 0.4s ease;
}

.zakira-purpose-card:hover .zakira-purpose-icon {
    background: #c9a15b;
    color: #241019;
    transform: rotateY(180deg);
}


/* Vision icon */

.zakira-purpose-vision .zakira-purpose-icon {
    background: #c9a15b;
    color: #241019;
}


/* =========================================
   NUMBER
========================================= */

.zakira-purpose-number {
    color: #d3b57c;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 42px;
    font-weight: 600;
    line-height: 1;
    opacity: 0.55;
}


/* =========================================
   LABEL
========================================= */

.zakira-purpose-label {
    display: block;
    margin-bottom: 12px;
    color: #b58a43;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 3px;
}


/* =========================================
   TITLE
========================================= */

.zakira-purpose-card h3 {
    max-width: 500px;
    margin: 0;
    color: #241019;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 28px;
    font-weight: 600;
    line-height: 1.35;
}

.zakira-purpose-vision h3 {
    color: #ffffff;
}


/* =========================================
   DIVIDER
========================================= */

.zakira-purpose-divider {
    width: 60px;
    height: 2px;
    margin: 23px 0 25px;
    background: #c9a15b;
    transition: width 0.4s ease;
}

.zakira-purpose-card:hover .zakira-purpose-divider {
    width: 100px;
}


/* =========================================
   CONTENT
========================================= */

.zakira-purpose-card p {
    position: relative;
    z-index: 2;
    margin: 0 0 15px;
    color: #62595d;
    font-size: 13.5px;
    line-height: 1.85;
}

.zakira-purpose-vision p {
    color: #d5cdd0;
}


/* =========================================
   FEATURE
========================================= */

.zakira-purpose-feature {
    position: relative;
    z-index: 3;
    display: flex;
    align-items: center;
    gap: 12px;
    margin-top: 25px;
    padding-top: 20px;
    border-top: 1px solid #e2d8ca;
}

.zakira-purpose-feature i {
    width: 28px;
    height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #c9a15b;
    color: #241019;
    font-size: 11px;
    flex-shrink: 0;
}

.zakira-purpose-feature span {
    color: #3f3438;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.5;
}

.zakira-purpose-vision .zakira-purpose-feature {
    border-top-color: #4a363e;
}

.zakira-purpose-vision .zakira-purpose-feature span {
    color: #ffffff;
}


/* =========================================
   HOVER
========================================= */

.zakira-purpose-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 45px rgba(36, 16, 25, 0.12);
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .zakira-purpose-section {
        padding: 80px 20px;
    }

    .zakira-purpose-header {
        margin-bottom: 45px;
    }

    .zakira-purpose-header h2 {
        font-size: 36px;
    }

    .zakira-purpose-grid {
        gap: 24px;
    }

    .zakira-purpose-card {
        padding: 35px 30px;
    }

    .zakira-purpose-card h3 {
        font-size: 24px;
    }

    .zakira-purpose-card p {
        font-size: 13px;
        line-height: 1.75;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .zakira-purpose-section {
        padding: 65px 16px;
    }

    .zakira-purpose-header {
        margin-bottom: 35px;
    }

    .zakira-purpose-overline {
        font-size: 10px;
        letter-spacing: 2.5px;
    }

    .zakira-purpose-header h2 {
        font-size: 30px;
    }

    .zakira-purpose-header p {
        font-size: 13px;
        line-height: 1.75;
    }

    .zakira-purpose-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .zakira-purpose-card {
        padding: 32px 25px;
    }

    .zakira-purpose-card-top {
        margin-bottom: 25px;
    }

    .zakira-purpose-icon {
        width: 58px;
        height: 58px;
        font-size: 19px;
    }

    .zakira-purpose-number {
        font-size: 34px;
    }

    .zakira-purpose-card h3 {
        font-size: 23px;
    }

    .zakira-purpose-card p {
        font-size: 13px;
        line-height: 1.75;
    }

}


/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 480px) {

    .zakira-purpose-section {
        padding: 55px 14px;
    }

    .zakira-purpose-header h2 {
        font-size: 27px;
    }

    .zakira-purpose-heading-line {
        margin: 16px auto;
    }

    .zakira-purpose-heading-line span {
        width: 40px;
    }

    .zakira-purpose-card {
        padding: 28px 21px;
    }

    .zakira-purpose-card-top {
        margin-bottom: 22px;
    }

    .zakira-purpose-icon {
        width: 54px;
        height: 54px;
        font-size: 18px;
    }

    .zakira-purpose-number {
        font-size: 30px;
    }

    .zakira-purpose-card h3 {
        font-size: 21px;
    }

    .zakira-purpose-card p {
        font-size: 12.5px;
        line-height: 1.75;
    }

    .zakira-purpose-feature span {
        font-size: 11px;
    }

}






