/* ==========================================================================
   COLOR VARIABLES & BASE SETUP
   ========================================================================== */
:root {
    --gold-primary: #b38b40;
    --gold-light: #cda656;
    --gold-dark: #8c6a2b;
    --bg-dark-olive: #292318;
    --bg-cream-light: #f7f4ee;
    --text-dark: #222222;
    --text-muted: #666666;
    --border-color: #e5dec9;
    --font-serif: 'Cormorant Garamond', Georgia, serif;
    --font-sans: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}

.home-page-wrapper {
    width: 100%;
    /* overflow-x: hidden;*/
    font-family: var(--font-serif);
    background-color: #ffffff;
    color: var(--text-dark);
}

.container {
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 20px;
}

/* ==========================================================================
   1. HERO SLIDER SECTION (BANNER BACKGROUND MODE)
   ========================================================================== */
.hero-slider-section {
    position: relative;
    width: 100%;
}

.hero-slide-bg {
    width: 100%;
    min-height: 520px;
    background-size: cover;
    background-position: center right;
    background-repeat: no-repeat;
}

.hero-overlay {
    width: 100%;
    height: 100%;
    min-height: 520px;
    background: linear-gradient(to right, rgba(248, 245, 240, 0.95) 0%, rgba(248, 245, 240, 0.85) 45%, rgba(248, 245, 240, 0.2) 75%, transparent 100%);
    display: flex;
    align-items: center;
}

.hero-container {
    display: flex;
    align-items: center;
    width: 100%;
}

.hero-content {
    max-width: 580px;
    padding: 40px 0;
}

.sub-title {
    font-size: 13px;
    letter-spacing: 2.5px;
    color: #887a6b;
    font-weight: 600;
    display: block;
    margin-bottom: 12px;
}

.main-heading {
    font-size: 52px;
    line-height: 1.15;
    color: var(--gold-primary);
    font-weight: 700;
    margin-bottom: 20px;
}

.mj-title-line {
    width: 80px;
    height: 1px;
    background: linear-gradient(
        to right,
        #8f6b25 0%,
        #b89243 50%,
        #e0c47a 80%
    );
    margin-bottom: 20px;
}

.hero-description {
    font-size: 15px;
    color: #555555;
    line-height: 1.6;
    margin-bottom: 30px;
    font-family: var(--font-sans);
}

.btn-gold {
    display: inline-block;
    background-color: var(--gold-primary);
    color: #ffffff;
    padding: 14px 28px;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 1.5px;
    text-decoration: none;
    border: none;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(179, 139, 64, 0.25);
}

.btn-gold:hover {
    background-color: var(--bg-dark-olive);
    color: var(--gold-light);
    transform: translateY(-2px);
}

/* Swiper Controls Custom Styling */
.swiper-button-next.hero-arrow, 
.swiper-button-prev.hero-arrow {
    color: #444444;
    background-color: #ffffff;
    width: 46px;
    height: 46px;
    border-radius: 50%;
    box-shadow: 0 4px 15px rgba(0,0,0,0.12);
    transition: all 0.3s ease;
}

.swiper-button-next.hero-arrow::after, 
.swiper-button-prev.hero-arrow::after {
    font-size: 16px;
    font-weight: bold;
}

.swiper-button-next.hero-arrow:hover, 
.swiper-button-prev.hero-arrow:hover {
    background-color: var(--gold-primary);
    color: #ffffff;
}

.swiper-pagination-bullet {
    background: #bbb;
    opacity: 0.6;
    width: 10px;
    height: 10px;
}

.swiper-pagination-bullet-active {
    background: var(--gold-primary) !important;
    opacity: 1;
    width: 24px;
    border-radius: 6px;
}

/* ==========================================================================
   2. FEATURES / USP BAR SECTION
   ========================================================================== */
.features-bar-section {
    background-color: var(--bg-cream-light);
    border-top: 1px solid var(--border-color);
    border-bottom: 1px solid var(--border-color);
    padding: 25px 0;
}

.features-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}

.feature-card {
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 0 10px;
    border-right: 1px solid var(--border-color);
}

.feature-card:last-child {
    border-right: none;
}

.feature-icon {
    color: var(--gold-primary);
    flex-shrink: 0;
    
}
.feature-icon .fa-gem{
    font-size: 30px;
}
.feature-icon .fa-user{
    font-size: 30px;
}
.feature-icon .fa-indian-rupee-sign{
    font-size: 30px;
}
.feature-icon .fa-award{
    font-size: 30px;
}

.feature-text h3 {
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 1px;
    color: var(--text-dark);
    margin: 0 0 4px 0;
}

.feature-text p {
    font-size: 12px;
    color: var(--text-muted);
    margin: 0;
    line-height: 1.4;
    font-family: var(--font-sans);
}

/* ==========================================================================
   3. OUR PRODUCTS SECTION
   ========================================================================== */
.products-section {
    padding: 50px 0;
    background-color: #d5a6601c;
}

.section-title-wrapper {
    margin-bottom: 25px;
}

.section-heading {
    font-size: 32px;
    font-weight: 700;
    letter-spacing: 2px;
    color: var(--text-dark);
    margin: 0 0 10px 0;
}

.flourish-divider {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin-bottom: 10px;
}

.flourish-divider .line {
    width: 60px;
    height: 1px;
    background-color: var(--gold-light);
}

.flourish-divider .diamond {
    color: var(--gold-primary);
    font-size: 12px;
}

.section-subheading {
    font-size: 15px;
    color: var(--text-muted);
    font-family: var(--font-sans);
}

.products-grid {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 15px;
}

.product-card {
    background-color: #ffffff;
    border: 1px solid var(--border-color);
    overflow: hidden;
    transition: all 0.4s ease;
    cursor: pointer;
}

.product-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 12px 25px rgba(0,0,0,0.1);
    border-color: var(--gold-primary);
}

.product-img-holder {
    width: 100%;
    height: 200px;
    overflow: hidden;
    background-color: #f9f9f9;
}

.product-img-holder img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s ease;
}

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

.product-title-bar {
    background-color: var(--gold-primary);
    padding: 10px 5px;
    text-align: center;
    transition: background-color 0.3s ease;
}

.product-card:hover .product-title-bar {
    background-color: var(--bg-dark-olive);
}

.product-title-bar h3 {
    color: #ffffff;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 1px;
    margin: 0;
}

.text-center { text-align: center; }
.mt-10 { margin-top: 40px; }

.btn-outline-gold {
    display: inline-block;
    border: 1px solid var(--gold-primary);
    color: var(--gold-primary);
    padding: 12px 30px;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 1.5px;
    text-decoration: none;
    transition: all 0.3s ease;
}

.btn-outline-gold:hover {
    background-color: var(--gold-primary);
    color: #ffffff;
}

/* ==========================================================================
   4. ABOUT BANNER SECTION (EXACT GRADIENT FADE OVERLAY DESIGN)
   ========================================================================== */
.about-banner-section {
    position: relative;
    width: 100%;
    min-height: 500px;
    background-size: cover;
    background-position: center right;
    background-repeat: no-repeat;
}

.about-overlay {
    width: 100%;
    height: 100%;
    min-height: 500px;
    /* Soft Dark Olive Green Gradient: Left side dark & solid, Right side smoothly transparent */
    background: linear-gradient(to right, 
        rgba(38, 35, 22, 0.98) 0%, 
        rgba(38, 35, 22, 0.94) 30%, 
        rgba(38, 35, 22, 0.75) 45%, 
        rgba(38, 35, 22, 0) 65%
    );
    display: flex;
    align-items: center;
    padding: 60px 0;
}

.about-content {
    max-width: 480px;
    color: #ffffff;
}

.sub-title-gold {
    font-size: 13px;
    letter-spacing: 2.5px;
    color: #cbb27a;
    font-weight: 600;
    display: block;
    margin-bottom: 12px;
}

.about-heading {
    font-size: 42px;
    color: #ffffff;
    font-weight: 500;
    font-family: var(--font-serif);
    margin: 0 0 16px 0;
    line-height: 1.15;
}

.flourish-divider-left {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 22px;
}

.flourish-divider-left .line-long {
    width: 60px;
    height: 1px;
    background-color: var(--gold-light);
}

.flourish-divider-left .line-short {
    width: 20px;
    height: 1px;
    background-color: var(--gold-light);
}

.flourish-divider-left .diamond {
    color: var(--gold-light);
    font-size: 9px;
}

.about-text {
    font-size: 16px;
    color: #e5e2d9;
    line-height: 1.65;
    margin-bottom: 30px;
    font-family: var(--font-sans);
    font-weight: 300;
}

.btn-gold-fill {
    display: inline-block;
    background-color: var(--gold-primary);
    color: #ffffff;
    padding: 12px 30px;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 1.5px;
    text-decoration: none;
    border: none;
    transition: all 0.3s ease;
}

.btn-gold-fill:hover {
    background-color: #ffffff;
    color: var(--bg-dark-olive);
    transform: translateY(-2px);
}

/* RESPONSIVE ADJUSTMENT FOR TABLETS & MOBILES */
@media (max-width: 991px) {
    .about-overlay {
        background: linear-gradient(to right, 
            rgba(38, 35, 22, 0.98) 0%, 
            rgba(38, 35, 22, 0.90) 60%, 
            rgba(38, 35, 22, 0.6) 100%
        );
    }
}

@media (max-width: 768px) {
    .about-overlay {
        background: rgba(38, 35, 22, 0.92);
        text-align: center;
        padding: 50px 0;
    }
    .about-content {
        max-width: 100%;
        margin: 0 auto;
    }
    .about-heading {
        font-size: 32px;
    }
    .flourish-divider-left {
        justify-content: center;
    }
}
/* ==========================================================================
   5. BOTTOM INFO / CONTACT BAR
   ========================================================================== */
.info-bar-section {
    background-color: var(--bg-cream-light);
    border-top: 1px solid var(--border-color);
    padding: 35px 0;
}

.info-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

.info-item {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
    text-align: left;
}

.border-middle {
    border-left: 1px solid var(--border-color);
    border-right: 1px solid var(--border-color);
    padding: 0 20px;
}

.info-icon {
    color: var(--gold-primary);
    flex-shrink: 0;
}

.info-details h4 {
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 1px;
    color: var(--text-dark);
    margin: 0 0 3px 0;
}

.info-details p {
    font-size: 12px;
    color: var(--text-muted);
    margin: 0 0 4px 0;
    font-family: var(--font-sans);
}

.info-highlight {
    font-size: 14px;
    font-weight: 700;
    color: var(--text-dark);
    text-decoration: none;
    font-family: var(--font-sans);
}

/* ==========================================================================
   RESPONSIVE DESIGN (ALL DEVICES)
   ========================================================================== */
@media (max-width: 1024px) {
    .main-heading { font-size: 40px; }
    .about-card-dark { width: 60%; }
    .products-grid { grid-template-columns: repeat(3, 1fr); gap: 20px; }
    .features-grid { grid-template-columns: repeat(2, 1fr); gap: 25px; }
    .feature-card { border-right: none; }
}

@media (max-width: 768px) {
    .hero-overlay {
        background: rgba(248, 245, 240, 0.92);
        text-align: center;
    }
    .hero-content {
        max-width: 100%;
        margin: 0 auto;
    }
    .main-heading { font-size: 32px; }
    
    .about-card-dark {
        width: 100%;
        padding: 40px 25px;
        text-align: center;
    }
    .flourish-divider-left { justify-content: center; }

    .products-grid { grid-template-columns: repeat(2, 1fr); }

    .info-grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }
    .border-middle {
        border-left: none;
        border-right: none;
        border-top: 1px solid var(--border-color);
        border-bottom: 1px solid var(--border-color);
        padding: 20px 0;
    }
    .info-item {
        flex-direction: column;
        text-align: center;
    }
    .swiper-button-next.hero-arrow, 
    .swiper-button-prev.hero-arrow {
        display: none;
    }
}

@media (max-width: 480px) {
    .main-heading { font-size: 26px; }
    .about-heading { font-size: 28px; }
    .features-grid { grid-template-columns: 1fr; }
    .products-grid { grid-template-columns: 1fr; }
}

/* ==========================================================================
   EXACT PRODUCT PAGE STYLES - MUKUND JEWELERS
   ========================================================================== */

:root {
    --mj-gold-primary: #9C7D38;
    --mj-gold-dark: #82662B;
    --mj-gold-light: #CBB06A;
    --mj-dark-text: #2E2822;
    --mj-body-bg: #FCFBFA;
    --mj-sidebar-bg: #F8F5F0;
    --mj-border-color: #E8E2D8;
    --mj-card-bg: #FFFFFF;
    --mj-dark-card: #1D1B18;
    --mj-font-serif: 'Playfair Display', Georgia, serif;
    --mj-font-sans: 'Poppins', sans-serif;
}

body {
    background-color: var(--mj-body-bg);
    color: var(--mj-dark-text);
    font-family: var(--mj-font-sans);
    margin: 0;
    padding: 0;
}

.products-page-wrapper {
    overflow-x: hidden;
}

.container {
    max-width: 1240px;
    margin: 0 auto;
    padding: 0 20px;
}
/* PERFECT PRODUCT CARD & BUTTON ALIGNMENT FIX */

/* 1. Make the Card a Full Height Flex Container */
.products-grid .product-card {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
}

/* 2. Make Details take remaining space */
.products-grid .product-details {
    display: flex !important;
    flex-direction: column !important;
    flex-grow: 1 !important;
    width: 100% !important;
}

/* 3. Title Height Uniformity (Handles 1 line & 2 line titles evenly) */
.products-grid .product-title {
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    line-height: 1.35 !important;
    margin-bottom: 6px !important;
	height: stretch;
}

/* 4. Push the Button to the very bottom automatically */
.products-grid .product-action-bar {
    margin-top: auto !important;
    width: 100% !important;
    padding-top: 8px !important;
}

.products-grid .btn-wholesaler-tag {
    width: 100% !important;
    display: block !important;
}

/* =========================================================
   PERFECT HORIZONTAL LIST VIEW FIX
   ========================================================= */

/* 1. List View Container */
.products-grid.products-list-view {
    grid-template-columns: 1fr !important;
    gap: 20px !important;
}

/* 2. Horizontal Card Layout */
.products-grid.products-list-view .product-card {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-start !important;
    text-align: left !important;
    padding: 20px 24px !important;
    gap: 28px !important;
    height: auto !important;
    min-height: 200px !important;
    background: #ffffff !important;
}

/* 3. Image Box Fix (Fixed size on left) */
.products-grid.products-list-view .product-image-box {
    width: 180px !important;
    height: 180px !important;
    flex-shrink: 0 !important;
    margin: 0 !important;
    border-radius: 6px !important;
    background: #faf8f5 !important;
}

.products-grid.products-list-view .product-image-box img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}

/* 4. Product Details (Expanded on right) */
.products-grid.products-list-view .product-details {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: center !important;
    text-align: left !important;
    flex-grow: 1 !important;
    height: auto !important;
    padding: 0 !important;
}

/* 5. Typography Fixes */
.products-grid.products-list-view .product-title {
    font-size: 18px !important;
    font-weight: 600 !important;
    min-height: auto !important;
    height: auto !important;
    margin: 0 0 6px 0 !important;
    text-align: left !important;
}

.products-grid.products-list-view .product-card-diamond {
    margin: 0 0 8px 0 !important;
    text-align: left !important;
}

.products-grid.products-list-view .product-price-bar {
    font-size: 18px !important;
    margin: 0 0 16px 0 !important;
    text-align: left !important;
}

/* 6. Button Alignment Fix */
.products-grid.products-list-view .product-action-bar {
    margin-top: 0 !important;
    padding-top: 0 !important;
    width: auto !important;
}

.products-grid.products-list-view .btn-wholesaler-tag {
    width: auto !important;
    display: inline-block !important;
    padding: 10px 24px !important;
    font-size: 11px !important;
    border-radius: 3px !important;
}

/* 7. Wishlist Heart Button Position in List View */
.products-grid.products-list-view .card-wishlist-toggle {
    top: 16px !important;
    right: 16px !important;
}
#wishlistProductsGrid{
	grid-template-columns: repeat(4, 1fr);
}
#wishlistProductsGrid img{
	height:100%;
	Width:100%;
	border-radius:7px;
}

/* =========================================================
   MOBILE RESPONSIVE LIST VIEW (AMAZON STYLE COMPACT)
   ========================================================= */
@media (max-width: 640px) {
    .products-grid.products-list-view .product-card {
        padding: 12px !important;
        gap: 14px !important;
        min-height: auto !important;
    }

    .products-grid.products-list-view .product-image-box {
        width: 110px !important;
        height: 110px !important;
    }

    .products-grid.products-list-view .product-title {
        font-size: 13px !important;
        line-height: 1.3 !important;
        margin-bottom: 4px !important;
    }

    .products-grid.products-list-view .product-price-bar {
        font-size: 13px !important;
        margin-bottom: 8px !important;
    }

    .products-grid.products-list-view .btn-wholesaler-tag {
        font-size: 8.5px !important;
        padding: 6px 12px !important;
    }
}
/* 1. HERO HEADER BANNER */
.products-hero-section {
    background-color: #FAF6F0;
    background-image: linear-gradient(90deg, rgb(250 246 240 / 57%) 40%, rgb(250 246 240 / 16%) 100%), url('/wp-content/uploads/2026/10/Banner-1.webp?auto=format&fit=crop&w=1920&q=80');
    background-size: cover;
    background-position: center 100%;
    padding: 65px 0;
    border-bottom: 1px solid var(--mj-border-color);
}

.hero-text-content {
    max-width: 550px;
}

.hero-title {
    font-family: var(--mj-font-serif);
    font-size: 42px;
    font-weight: 600;
    color: var(--mj-gold-primary);
    margin: 0 0 10px 0;
    line-height: 1.2;
}

.flourish-divider-small {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 15px;
}

.flourish-divider-small .line {
    width: 40px;
    height: 1px;
    background-color: var(--mj-gold-light);
}

.flourish-divider-small .diamond {
    color: var(--mj-gold-primary);
    font-size: 10px;
}

.hero-subtitle {
    font-size: 16px;
    color: #665F58;
    line-height: 1.6;
    margin: 0;
}

/* 2. MAIN LAYOUT (SIDEBAR + CONTENT) */
.products-main-section {
    padding: 40px 0 60px 0;
}

.products-layout-grid {
    display: flex;
    gap: 30px;
}

.products-sidebar {
    width: 280px;
    flex-shrink: 0;
}

.sidebar-widget {
    background-color: var(--mj-sidebar-bg);
    border: 1px solid var(--mj-border-color);
    padding: 24px 20px;
    margin-bottom: 25px;
    border-radius: 2px;
}

.widget-title {
    font-family: var(--mj-font-sans);
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 1px;
    color: var(--mj-dark-text);
    margin: 0 0 18px 0;
    text-transform: uppercase;
}

.category-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.category-list li {
    border-bottom: 1px dashed var(--mj-border-color);
}

.category-list li:last-child {
    border-bottom: none;
}

.category-list a {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 0;
    color: #554E48;
    font-size: 13px;
    text-decoration: none;
    transition: all 0.3s ease;
}

.category-list a i {
    font-size: 10px;
    color: #A0988E;
    transition: transform 0.3s ease;
}

.category-list li.active a,
.category-list a:hover {
    color: var(--mj-gold-primary);
    font-weight: 500;
}

.category-list li.active a i,
.category-list a:hover i {
    color: var(--mj-gold-primary);
    transform: translateX(3px);
}

.price-labels {
    display: flex;
    justify-content: space-between;
    font-size: 16px;
    font-weight: 500;
    color: var(--mj-dark-text);
    margin-bottom: 12px;
}

.range-slider-wrapper {
    position: relative;
    margin-bottom: 20px;
}

.price-range-input {
    -webkit-appearance: none;
    width: 100%;
    height: 4px;
    background: var(--mj-gold-light);
    border-radius: 2px;
    outline: none;
}

.price-range-input::-webkit-slider-thumb {
    -webkit-appearance: none;
    appearance: none;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: var(--mj-gold-primary);
    border: 2px solid #FFF;
    cursor: pointer;
    box-shadow: 0 2px 4px rgba(0,0,0,0.15);
}

.btn-apply-filter {
    width: 100%;
    background: transparent !important;
    border: 1px solid var(--mj-gold-primary) !important;
    color: var(--mj-gold-primary) !important;
    padding: 9px;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 1px;
    cursor: pointer;
    transition: all 0.3s ease;
    text-transform: uppercase;
}

.btn-apply-filter:hover {
    background: var(--mj-gold-primary) !important;
    color: #FFF !important;
}

.widget-promo-card {
    background-color: var(--mj-dark-card);
    border: 1px solid #38322B;
    padding: 6px;
}

.promo-card-inner {
    border: 1px solid var(--mj-gold-primary);
    padding: 25px 15px;
    text-align: center;
}

.promo-title {
    font-family: var(--mj-font-serif);
    color: var(--mj-gold-light);
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 1px;
    line-height: 1.3;
    margin: 0 0 8px 0;
}

.promo-diamond-line {
    color: var(--mj-gold-primary);
    font-size: 10px;
    margin-bottom: 15px;
}

.promo-features {
    list-style: none;
    padding: 0;
    margin: 0 0 22px 0;
    text-align: left;
}

.promo-features li {
    color: #D4CDC3;
    font-size: 15px;
    margin-bottom: 10px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.promo-features li i {
    color: var(--mj-gold-primary);
    font-size: 11px;
}

.btn-gold-promo {
    display: block;
    width: 100%;
    background-color: var(--mj-gold-primary) !important;
    color: #FFF !important;
    border: none !important;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 1px;
    padding: 11px 0;
    cursor: pointer;
    transition: all 0.3s ease;
}

.btn-gold-promo:hover {
    background-color: var(--mj-gold-dark) !important;
}

/* 3. PRODUCTS CONTENT AREA */
.products-content-area {
    flex-grow: 1;
}

.products-top-bar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 25px;
}

.product-count-info {
    font-size: 13px;
    color: #665F58;
}

.product-sorting-controls {
    display: flex;
    align-items: center;
    gap: 15px;
}

.sort-select {
    background: #FFF;
    border: 1px solid var(--mj-border-color);
    padding: 8px 12px;
    font-size: 12px;
    color: var(--mj-dark-text);
    outline: none;
    border-radius: 2px;
    cursor: pointer;
}

.view-toggle-btns {
    display: flex;
    gap: 5px;
}

.view-btn {
    width: 34px;
    height: 34px;
    background-color: #FFF !important;
    border: 1px solid var(--mj-border-color) !important; 
    color: #776F66 !important;
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex !important;
    align-items: center;
    justify-content: center;
}

.view-btn.active,
.view-btn:hover {
    background-color: var(--mj-gold-primary) !important;
    border-color: var(--mj-gold-primary) !important;
    color: #FFF !important;
}

/* Products Grid */
.products-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

.product-card {
    background: var(--mj-card-bg);
    border: 1px solid var(--mj-border-color);
    border-radius: 2px;
    text-align: center;
    padding: 12px;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    cursor: pointer; 
}

.product-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 20px rgba(0,0,0,0.06);
}

.product-image-box {
    background-color: #F7F4EE;
    overflow: hidden;
    margin-bottom: 12px;
    height: 240px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.product-image-box img {
    max-width: 100%;
   /* max-height: 100%;*/
    object-fit: cover;
    transition: transform 0.5s ease;
}

.product-card:hover .product-image-box img {
    transform: scale(1.06);
}

.product-title {
    font-family: var(--mj-font-serif);
    font-size: 16px;
    font-weight: 500;
    margin: 0 0 4px 0;
    line-height: 1.3;
}

.product-title a {
    color: var(--mj-dark-text);
    text-decoration: none;
    transition: color 0.3s ease;
}

.product-title a:hover {
    color: var(--mj-gold-primary);
}

.product-card-diamond {
    color: var(--mj-gold-primary);
    font-size: 8px;
    margin-bottom: 8px;
}

.product-price-bar {
    font-size: 17px;
    font-weight: 600;
    color: var(--mj-dark-text);
    margin-bottom: 12px;
}

.product-price-bar .unit {
    font-size: 15px;
    font-weight: 400;
    color: #776F66;
}

.btn-wholesaler-tag {
    display: block;
    width: 100%;
    border: 1px solid var(--mj-border-color) !important;
    background-color: #FAF8F5 !important;
    color: var(--mj-gold-primary) !important;
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 0.5px;
    padding: 8px 0;
    text-transform: uppercase;
    transition: all 0.3s ease;
    cursor: pointer;
}

.btn-wholesaler-tag:hover {
    background-color: var(--mj-gold-primary) !!important;
    border-color: var(--mj-gold-primary) !important;
    color: #6e5407 !important;
}

.products-pagination-wrapper {
    margin-top: 35px;
    display: flex;
    justify-content: center;
}

.pagination-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    gap: 8px;
}

.pagination-list .page-link {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    background: #FFF;
    border: 1px solid var(--mj-border-color);
    color: #665F58;
    text-decoration: none;
    font-size: 12px;
    transition: all 0.3s ease;
}

.pagination-list .page-link.active,
.pagination-list .page-link:hover {
    background-color: var(--mj-gold-primary);
    border-color: var(--mj-gold-primary);
    color: #FFF;
}

/* 4. BOTTOM USP BAR */
.products-usp-bar-section {
    background-color: #F8F5F0;
    border-top: 1px solid var(--mj-border-color);
    padding: 35px 0;
}

.usp-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}

.usp-card {
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

.usp-icon {
    font-size: 24px;
    color: var(--mj-gold-primary);
    line-height: 1;
}

.usp-content h4 {
    font-family: var(--mj-font-sans);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.5px;
    color: var(--mj-dark-text);
    margin: 0 0 4px 0;
    text-transform: uppercase;
}

.usp-content p {
    font-size: 11px;
    color: #776F66;
    margin: 0;
    line-height: 1.4;
}

/* LIST VIEW STYLES */
.products-grid.products-list-view {
    grid-template-columns: 1fr !important;
}

.products-grid.products-list-view .product-card {
    display: flex;
    align-items: center;
    text-align: left;
    gap: 20px;
    padding: 15px;
}

.products-grid.products-list-view .product-image-box {
    width: 180px;
    height: 180px;
    margin-bottom: 0;
    flex-shrink: 0;
}

.products-grid.products-list-view .product-details {
    flex-grow: 1;
}

.products-grid.products-list-view .product-card-diamond {
    text-align: left;
}

.products-grid.products-list-view .btn-wholesaler-tag {
    max-width: 220px;
}

@media (max-width: 576px) {
    .products-grid.products-list-view .product-card {
        flex-direction: column;
        text-align: center;
    }
    .products-grid.products-list-view .product-image-box {
        width: 100%;
        height: 220px;
    }
    .products-grid.products-list-view .btn-wholesaler-tag {
        max-width: 100%;
    }
}

/* ==========================================================================
   WHOLESALE INQUIRY POPUP MODAL STYLES (EXACT IMAGE UI)
   ========================================================================== */
.wholesaler-modal-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    backdrop-filter: blur(2px);
    z-index: 99999;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
}

.wholesaler-modal-overlay.active {
    opacity: 1;
    visibility: visible;
}

.wholesaler-modal-box {
    background-color: #FFFFFF;
    width: 100%;
    max-width: 500px;
    border: 2px solid #A28038;
    padding: 40px 35px 35px 35px;
    position: relative;
    transform: scale(0.9);
    transition: transform 0.3s ease;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15);
    box-sizing: border-box;
    
}

.wholesaler-modal-overlay.active .wholesaler-modal-box {
    transform: scale(1);
}

/* Close Button Box (Red Border) */
.modal-close-btn {
    position: absolute;
    top: 15px;
    right: 15px;
    width: 32px;
    height: 32px;
    background: #FFF !important;
    border: 1px solid #D9534F !important;
    color: #D9534F !important;
    font-size: 18px;
    line-height: 1;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;
    border-radius: 2px;
}

.modal-close-btn:hover {
    background-color: #D9534F !important;
    color: #FFF !important;
}

/* Modal Typography */
.modal-header {
    text-align: center;
    margin-bottom: 25px;
}

.modal-sub-title {
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 2px;
    color: #A28038;
    text-transform: uppercase;
    display: block;
    margin-bottom: 5px;
}

.modal-title {
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 32px;
    font-weight: 400;
    color: #333333;
    margin: 0 0 4px 0;
    line-height: 1.2;
}

.modal-product-name {
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 15px;
    color: #777777;
    font-style: italic;
    margin-bottom: 12px;
}

/* Flourish Divider */
.flourish-divider-modal {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
}

.flourish-divider-modal .line {
    width: 45px;
    height: 1px;
    background-color: #A28038;
}

.flourish-divider-modal .diamond {
    color: #A28038;
    font-size: 9px;
}

/* Form Inputs Styling */
.wholesaler-modal-box .wpcf7-form p {
    margin-bottom: 14px;
}

.wholesaler-modal-box input[type="text"],
.wholesaler-modal-box input[type="email"],
.wholesaler-modal-box input[type="tel"],
.wholesaler-modal-box textarea {
    width: 100%;
    padding: 13px 15px;
    border: 1px solid #EBE4D8;
    background-color: #FAF7F2;
    font-family: 'Poppins', sans-serif;
    font-size: 13px;
    color: #555555;
    outline: none;
    border-radius: 2px;
    box-sizing: border-box;
    transition: all 0.3s ease;
    margin-bottom: 12px;
}

.wholesaler-modal-box input[type="text"]::placeholder,
.wholesaler-modal-box input[type="email"]::placeholder,
.wholesaler-modal-box input[type="tel"]::placeholder,
.wholesaler-modal-box textarea::placeholder {
    color: #9E988F;
    font-weight: 400;
}

.wholesaler-modal-box input[type="text"]:focus,
.wholesaler-modal-box input[type="email"]:focus,
.wholesaler-modal-box input[type="tel"]:focus,
.wholesaler-modal-box textarea:focus {
    border-color: #A28038;
    background-color: #FFFFFF;
}

.wholesaler-modal-box textarea {
    height: 100px;
    resize: none;
}

/* Submit Button */
.wholesaler-modal-box input[type="submit"] {
    width: 100%;
    background-color: #9E7E38;
    color: #FFFFFF;
    border: none;
    padding: 14px;
    font-family: 'Poppins', sans-serif;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 1.5px;
    cursor: pointer;
    text-transform: uppercase;
    transition: background-color 0.3s ease;
    border-radius: 2px;
    margin-top: 5px;
}

.wholesaler-modal-box input[type="submit"]:hover {
    background-color: #83672B;
}

.wpcf7-spinner {
    position: absolute;
}

/* ==========================================================================
   RESPONSIVE MEDIA QUERIES
   ========================================================================== */
@media (max-width: 992px) {
    .products-layout-grid {
        flex-direction: column;
    }
    .products-sidebar {
        width: 100%;
    }
    .products-grid {
        grid-template-columns: repeat(3, 1fr);
    }
    .usp-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 25px;
    }
}

@media (max-width: 768px) {
    .products-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 15px;
    }
    .wholesaler-modal-box {
        padding: 25px 20px;
    }
}

@media (max-width: 480px) {
    .products-grid {
        grid-template-columns: 1fr;
    }
    .usp-grid {
        grid-template-columns: 1fr;
    }
}

/* ==========================================================================
   ABOUT US PAGE CUSTOM STYLES
   ========================================================================== */

/* 1. HERO BANNER */
.about-hero-section {
    background-color: #FAF6F0;
    background-image: linear-gradient(90deg, rgb(250 246 240 / 57%) 40%, rgb(250 246 240 / 16%) 100%), url('/wp-content/uploads/2026/10/Banner-2.webp?auto=format&fit=crop&w=1920&q=80');
    background-size: cover;
    background-position: center right;
    padding: 90px 0;
    border-bottom: 1px solid var(--mj-border-color, #E8E2D8);
}

.sub-title-gold {
    font-size: 12px;
    letter-spacing: 2px;
    color: var(--mj-gold-primary, #9C7D38);
    font-weight: 600;
    display: block;
    margin-bottom: 6px;
    text-transform: uppercase;
}

/* 2. OUR STORY SECTION */
.about-story-section {
    padding: 80px 0;
    background-color: #FFFFFF;
}

.story-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: center;
}

.story-image-box {
    position: relative;
}

.image-frame-gold {
    border: 2px solid var(--mj-gold-primary, #9C7D38);
    padding: 10px;
    background: #FAF8F5;
}

.image-frame-gold img {
    width: 100%;
    height: 380px;
    object-fit: cover;
    display: block;
}

.badge-experience {
    position: absolute;
    bottom: -20px;
    right: -20px;
    background-color: var(--mj-dark-card, #1D1B18);
    border: 1px solid var(--mj-gold-primary, #9C7D38);
    color: #FFFFFF;
    padding: 18px 25px;
    text-align: center;
    box-shadow: 0 10px 20px rgba(0,0,0,0.15);
}

.badge-experience .exp-number {
    font-family: var(--mj-font-serif, 'Playfair Display', serif);
    font-size: 32px;
    font-weight: 700;
    color: var(--mj-gold-light, #CBB06A);
    display: block;
    line-height: 1;
}

.badge-experience .exp-text {
    font-size: 11px;
    letter-spacing: 1px;
    color: #D4CDC3;
    text-transform: uppercase;
}

.section-tag {
    font-size: 11px;
    letter-spacing: 2px;
    color: var(--mj-gold-primary, #9C7D38);
    font-weight: 600;
    text-transform: uppercase;
}

.section-title {
    font-family: var(--mj-font-serif, 'Playfair Display', serif);
    font-size: 32px;
    color: var(--mj-dark-text, #2E2822);
    margin: 8px 0 12px 0;
    line-height: 1.25;
}

.flourish-divider-left {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 20px;
}

.flourish-divider-left .line-long {
    width: 50px;
    height: 1px;
    background-color: var(--mj-gold-primary, #9C7D38);
}

.flourish-divider-left .line-short {
    width: 15px;
    height: 1px;
    background-color: var(--mj-gold-primary, #9C7D38);
}

.flourish-divider-left .diamond {
    color: var(--mj-gold-primary, #9C7D38);
    font-size: 9px;
}

.story-paragraph {
    font-size: 14px;
    color: #665F58;
    line-height: 1.7;
    margin-bottom: 15px;
}

.story-highlights {
    display: flex;
    gap: 20px;
    margin-top: 25px;
    padding-top: 20px;
    border-top: 1px dashed var(--mj-border-color, #E8E2D8);
}

.highlight-item {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 13px;
    font-weight: 600;
    color: var(--mj-dark-text, #2E2822);
}

.highlight-item i {
    color: var(--mj-gold-primary, #9C7D38);
    font-size: 16px;
}

/* 3. STATS SECTION */
.about-stats-section {
    background-color: #F8F5F0;
    border-top: 1px solid var(--mj-border-color, #E8E2D8);
    border-bottom: 1px solid var(--mj-border-color, #E8E2D8);
    padding: 45px 0;
}

.stats-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    text-align: center;
}

.stat-card {
    padding: 10px;
    border-right: 1px dashed var(--mj-border-color, #E8E2D8);
}

.stat-card:last-child {
    border-right: none;
}

.stat-number {
    font-family: var(--mj-font-serif, 'Playfair Display', serif);
    font-size: 38px;
    font-weight: 700;
    color: var(--mj-gold-primary, #9C7D38);
    margin: 0 0 5px 0;
}

.stat-label {
    font-size: 12px;
    font-weight: 500;
    color: #665F58;
    margin: 0;
    letter-spacing: 0.5px;
}

/* 4. CORE VALUES SECTION */
.about-values-section {
    padding: 80px 0;
    background-color: #FFFFFF;
}

.values-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 25px;
    margin-top: 40px;
}

.value-card {
    background: #FCFBFA;
    border: 1px solid var(--mj-border-color, #E8E2D8);
    padding: 30px 20px;
    text-align: center;
    transition: all 0.3s ease;
}

.value-card:hover {
    transform: translateY(-6px);
    border-color: var(--mj-gold-primary, #9C7D38);
    box-shadow: 0 10px 25px rgba(0,0,0,0.06);
    background: #FFFFFF;
}

.value-icon {
    width: 60px;
    height: 60px;
    margin: 0 auto 18px auto;
    background-color: #FAF6F0;
    border: 1px solid var(--mj-gold-light, #CBB06A);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--mj-gold-primary, #9C7D38);
    font-size: 22px;
    transition: all 0.3s ease;
}

.value-card:hover .value-icon {
    background-color: var(--mj-gold-primary, #9C7D38);
    color: #FFFFFF;
}

.value-card h3 {
    font-family: var(--mj-font-serif, 'Playfair Display', serif);
    font-size: 18px;
    color: var(--mj-dark-text, #2E2822);
    margin: 0 0 10px 0;
}

.value-card p {
    font-size: 12px;
    color: #665F58;
    line-height: 1.6;
    margin: 0;
}

/* 5. DARK CTA BANNER */
.about-cta-section {
    background-color: var(--mj-dark-card, #1D1B18);
    border-top: 2px solid var(--mj-gold-primary, #9C7D38);
    padding: 70px 0;
    text-align: center;
    color: #FFFFFF;
}

.cta-content {
    max-width: 650px;
    margin: 0 auto;
}

.cta-content h2 {
    font-family: var(--mj-font-serif, 'Playfair Display', serif);
    font-size: 34px;
    color: #FFFFFF;
    margin: 10px 0 12px 0;
    line-height: 1.25;
}
.divider-line{
    justify-self: center;
}

.cta-content p {
    font-size: 14px;
    color: #D4CDC3;
    margin-bottom: 25px;
}

.btn-gold-fill {
    display: inline-block;
    background-color: var(--mj-gold-primary, #9C7D38);
    color: #FFFFFF;
    padding: 13px 32px;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 1.5px;
    text-decoration: none;
    border: none;
    transition: all 0.3s ease;
}

.btn-gold-fill:hover {
    background-color: #FFFFFF;
    color: var(--mj-dark-card, #1D1B18);
    transform: translateY(-2px);
}

/* ==========================================================================
   RESPONSIVE MEDIA QUERIES (ALL DEVICES)
   ========================================================================== */
@media (max-width: 992px) {
    .story-grid {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .badge-experience {
        right: 10px;
        bottom: -15px;
        padding: 12px 18px;
    }

    .values-grid {
        grid-template-columns: repeat(2, 1fr);
    }

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

    .stat-card {
        border-right: none;
        border-bottom: 1px dashed var(--mj-border-color, #E8E2D8);
        padding-bottom: 20px;
    }

    .stat-card:last-child,
    .stat-card:nth-child(3) {
        border-bottom: none;
    }
}

@media (max-width: 768px) {
    .about-hero-section {
        padding: 50px 0;
        text-align: center;
    }

    .flourish-divider-small {
        justify-content: center !important;
    }

    .section-title {
        font-size: 26px;
    }

    .cta-content h2 {
        font-size: 26px;
    }

    .story-highlights {
        flex-direction: column;
        gap: 12px;
    }
}

@media (max-width: 480px) {
    .values-grid {
        grid-template-columns: 1fr;
    }

    .stats-grid {
        grid-template-columns: 1fr;
    }

    .image-frame-gold img {
        height: 280px;
    }

    .stat-number {
        font-size: 32px;
    }
}

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

/* 1. HERO BANNER */
.contact-hero-section {
    background-color: #FAF6F0;
        background-image: linear-gradient(90deg, rgb(250 246 240 / 57%) 40%, rgb(250 246 240 / 16%) 100%), url(/wp-content/uploads/2026/10/Banner-1.webp?auto=format&fit=crop&w=1920&q=80);
    background-size: cover;
    background-position: center 100%;
    padding: 65px 0;
    border-bottom: 1px solid var(--mj-border-color, #E8E2D8);
}

.sub-title-gold {
    font-size: 12px;
    letter-spacing: 2px;
    color: var(--mj-gold-primary, #9C7D38);
    font-weight: 600;
    display: block;
    margin-bottom: 6px;
    text-transform: uppercase;
}

/* 2. INFO CARDS */
.contact-info-section {
    padding: 60px 0;
    background-color: #F8F5F0;
    border-bottom: 1px solid var(--mj-border-color, #E8E2D8);
    position: relative;
    z-index: 2;
}

.info-cards-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    margin-top: -100px; /* Pulling it up slightly into hero section */
}

.info-card {
    background: #FFFFFF;
    border: 1px solid var(--mj-border-color, #E8E2D8);
    padding: 35px 20px;
    text-align: center;
    box-shadow: 0 5px 20px rgba(0,0,0,0.03);
    transition: all 0.3s ease;
}

.info-card:hover {
    transform: translateY(-8px);
    border-color: var(--mj-gold-primary, #9C7D38);
    box-shadow: 0 15px 30px rgba(0,0,0,0.08);
}

.info-icon {
    width: 60px;
    height: 60px;
    margin: 0 auto 20px auto;
    background-color: #FAF6F0;
    border: 1px dashed var(--mj-gold-primary, #9C7D38);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--mj-gold-primary, #9C7D38);
    font-size: 20px;
    transition: all 0.3s ease;
}

.info-card:hover .info-icon {
    background-color: var(--mj-gold-primary, #9C7D38);
    color: #FFFFFF;
    border-style: solid;
}

.info-card h3 {
    font-family: var(--mj-font-serif, 'Playfair Display', serif);
    font-size: 18px;
    color: var(--mj-dark-text, #2E2822);
    margin: 0 0 10px 0;
}

.info-card p {
    font-size: 13px;
    color: #665F58;
    line-height: 1.6;
    margin: 0;
}

/* 3. FORM AND MAP SECTION */
.contact-form-map-section {
    padding: 80px 0;
    background-color: #FFFFFF;
}

.form-map-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    align-items: flex-start;
}

.section-title {
    font-family: var(--mj-font-serif, 'Playfair Display', serif);
    font-size: 32px;
    color: var(--mj-dark-text, #2E2822);
    margin: 8px 0 12px 0;
    line-height: 1.25;
}

.flourish-divider-left {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 20px;
}

.flourish-divider-left .line-long {
    width: 50px;
    height: 1px;
    background-color: var(--mj-gold-primary, #9C7D38);
}

.flourish-divider-left .line-short {
    width: 15px;
    height: 1px;
    background-color: var(--mj-gold-primary, #9C7D38);
}

.flourish-divider-left .diamond {
    color: var(--mj-gold-primary, #9C7D38);
    font-size: 9px;
}

.form-intro-text {
    font-size: 14px;
    color: #665F58;
    line-height: 1.7;
    margin-bottom: 30px;
}

/* Form Styles (Overrides for CF7 to match theme) */
.mj-custom-form input[type="text"],
.mj-custom-form input[type="email"],
.mj-custom-form input[type="tel"],
.mj-custom-form textarea {
    width: 100%;
    padding: 14px 18px;
    border: 1px solid var(--mj-border-color, #E8E2D8);
    background-color: #FCFBFA;
    font-family: 'Poppins', sans-serif;
    font-size: 14px;
    color: var(--mj-dark-text, #2E2822);
    border-radius: 0; /* Sharp edges for luxury feel */
    transition: all 0.3s ease;
}

.mj-custom-form textarea {
    min-height: 120px;
    resize: vertical;
}

.mj-custom-form input:focus,
.mj-custom-form textarea:focus {
    outline: none;
    border-color: var(--mj-gold-primary, #9C7D38);
    background-color: #FFFFFF;
    box-shadow: 0 3px 10px rgba(156, 125, 56, 0.1);
}

.mj-custom-form input[type="submit"] {
    background-color: var(--mj-dark-card, #1D1B18);
    color: #FFFFFF;
    padding: 15px 35px;
    font-family: 'Poppins', sans-serif;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    border: 1px solid var(--mj-dark-card, #1D1B18);
    cursor: pointer;
    transition: all 0.3s ease;
    width: auto;
}

.mj-custom-form input[type="submit"]:hover {
    background-color: var(--mj-gold-primary, #9C7D38);
    border-color: var(--mj-gold-primary, #9C7D38);
    color: #FFFFFF;
}

/* Map Box */
.contact-map-area{
    align-self: anchor-center;
    margin-top: 80px;
}
.map-frame-gold {
    border: 2px solid var(--mj-gold-primary, #9C7D38);
    padding: 10px;
    background: #FAF8F5;
    height: 500px; /* Fixed height for map */
    position: relative;
}

.map-frame-gold iframe {
    width: 100%;
    height: 100%;
    filter: grayscale(20%) contrast(1.1); /* Subtle premium filter */
}


/* ==========================================================================
   RESPONSIVE MEDIA QUERIES (ALL DEVICES)
   ========================================================================== */
@media (max-width: 1200px) {
    .info-cards-grid {
        grid-template-columns: repeat(2, 1fr);
        margin-top: 30px;
    }
}

@media (max-width: 992px) {
    .form-map-grid {
        grid-template-columns: 1fr;
        gap: 50px;
    }

    .map-frame-gold {
        height: 400px;
    }
}

@media (max-width: 768px) {
    .contact-hero-section {
        padding: 50px 0;
        text-align: center;
    }

    .flourish-divider-small {
        justify-content: center;
    }

    .info-cards-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 576px) {
    .info-cards-grid {
        grid-template-columns: 1fr;
    }

    .map-frame-gold {
        height: 300px;
    }

    .mj-custom-form input[type="submit"] {
        width: 100%;
    }
}

/* ==========================================================================
   ENHANCED LUXURY FORM STYLING
   ========================================================================== */

/* Main Outer Card Container */
.mj-luxury-card {
    background: #FFFFFF;
    border: 1px solid #E8E2D8;
    border-top: 4px solid #9C7D38; /* Top Gold Accent Line */
    padding: 40px;
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.04);
    border-radius: 4px;
    position: relative;
}

/* 2-Column Grid Row */
.mj-form-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 25px;
}

.mj-field-wrap {
    margin-bottom: 22px;
    display: flex;
    flex-direction: column;
}

.mj-field-wrap.full-width {
    grid-column: 1 / -1;
}

/* Labels */
.mj-field-wrap label {
    font-family: 'Poppins', sans-serif;
    font-size: 11px;
    font-weight: 600;
    color: #2E2822;
    letter-spacing: 1.5px;
    /* margin-bottom: 8px; */
    text-transform: uppercase;
}

.mj-field-wrap label .req {
    color: #9C7D38;
}

/* Input Box & Icon Wrapper */
.input-box {
    position: relative;
    /*display: flex;*/
    align-items: center;
}

.input-box .icon {
    position: absolute;
    left: 16px;
    top: 41px;
    color: #9C7D38;
    font-size: 15px;
    pointer-events: none;
    transition: color 0.3s ease;
    z-index: 2;
}

.input-box.textarea-box .icon {
    top: 41px;
}

/* Input Fields Styling */
.input-box input[type="text"],
.input-box input[type="email"],
.input-box input[type="tel"],
.input-box textarea {
    width: 100%;
    padding: 14px 16px 14px 45px !important; /* Left padding for icons */
    background-color: #FAF8F5;
    border: 1px solid #E2DBCF;
    border-radius: 2px;
    font-family: 'Poppins', sans-serif;
    font-size: 13.5px;
    color: #2E2822;
    transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
    box-sizing: border-box;
}

.input-box textarea {
    min-height: 130px;
    height:110px;
    resize: vertical;
    padding-top: 14px !important;
}

/* Placeholders */
.input-box input::placeholder,
.input-box textarea::placeholder {
    color: #A0988E;
    font-size: 13px;
    font-weight: 300;
}

/* Field Focus State */
.input-box:focus-within .icon {
    color: #1D1B18;
}

.input-box input:focus,
.input-box textarea:focus {
    outline: none;
    border-color: #9C7D38;
    background-color: #FFFFFF;
    box-shadow: 0 4px 18px rgba(156, 125, 56, 0.15);
}

/* Submit Button Container & Button */
.mj-btn-wrap {
    margin-top: 10px;
}

.mj-luxury-btn {
    background: linear-gradient(135deg, #2E2822 0%, #1D1B18 100%);
    color: #D4AF37 !important; /* Gold Text */
    border: 1px solid #9C7D38;
    padding: 16px 45px;
    font-family: 'Poppins', sans-serif;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 2px;
    text-transform: uppercase;
    cursor: pointer;
    transition: all 0.4s ease;
    border-radius: 2px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
}

.mj-luxury-btn:hover {
    background: #9C7D38;
    color: #FFFFFF !important;
    border-color: #9C7D38;
    box-shadow: 0 8px 25px rgba(156, 125, 56, 0.3);
    transform: translateY(-2px);
}

/* CF7 Output Messages Fix */
div.wpcf7-response-output {
    margin: 20px 0 0 0 !important;
    padding: 12px 18px !important;
    font-size: 13px !important;
    border-radius: 2px !important;
}

/* Responsive Fix */
@media (max-width: 768px) {
    .mj-luxury-card {
        padding: 25px 20px;
    }

    .mj-form-row {
        grid-template-columns: 1fr;
        gap: 0;
    }

    .mj-luxury-btn {
        width: 100%;
        text-align: center;
    }
}