/* Montaage Inc. Luxury Design Override V2 */

:root {
   --montaage-ivory: #f7f1e8;
   --montaage-cream: #fffdf8;
   --montaage-sand: #e2d6c5;
   --montaage-taupe: #b8a58a;
   --montaage-gold: #b08a4a;
   --montaage-navy: #0e2a47;
   --montaage-charcoal: #1f1f1f;
   --montaage-brown: #3b2d24;
   --montaage-burgundy: #7a2e2e;
}

/* Global */
html,
body {
   background: var(--montaage-ivory) !important;
   color: var(--montaage-charcoal) !important;
   font-family: "Segoe UI", Arial, sans-serif;
}

main {
   background:
      radial-gradient(circle at top center, rgba(255, 253, 248, 0.95), rgba(247, 241, 232, 1) 55%),
      var(--montaage-ivory);
   padding-bottom: 3rem;
}

.container {
   max-width: 1320px !important;
}

/* Header */
header,
.navbar,
.navbar-light,
.navbar-default {
   background: var(--montaage-cream) !important;
   border-bottom: 1px solid var(--montaage-sand) !important;
}

.navbar {
   padding-top: 0.75rem !important;
   padding-bottom: 0.75rem !important;
}

.navbar a,
.nav-link {
   color: var(--montaage-charcoal) !important;
   font-weight: 500;
}

.navbar a:hover,
.nav-link:hover {
   color: var(--montaage-gold) !important;
}

/* Search */
.form-control,
input[type="text"],
input[type="search"] {
   border: 1px solid var(--montaage-sand) !important;
   border-radius: 0.45rem !important;
   background: #fff !important;
}

.form-control:focus,
input[type="text"]:focus,
input[type="search"]:focus {
   border-color: var(--montaage-gold) !important;
   box-shadow: 0 0 0 0.15rem rgba(176, 138, 74, 0.18) !important;
}

/* Buttons */
.btn-primary,
.btn-success,
button.btn-primary,
button.btn-success {
   background: var(--montaage-navy) !important;
   border-color: var(--montaage-navy) !important;
   color: #fff !important;
   border-radius: 0.35rem !important;
   font-weight: 600 !important;
}

.btn-primary:hover,
.btn-success:hover,
button.btn-primary:hover,
button.btn-success:hover {
   background: var(--montaage-brown) !important;
   border-color: var(--montaage-brown) !important;
}

.btn-dark {
   background: var(--montaage-brown) !important;
   border-color: var(--montaage-brown) !important;
}

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

/* Hero banner */
.montaage-hero-section {
   margin-top: 2rem !important;
   margin-bottom: 2.5rem !important;
}

.montaage-hero-section .container {
   max-width: 1320px !important;
}

.montaage-hero-slider,
.hero-slider,
.montaage-hero-banner {
   border-radius: 1rem !important;
   overflow: hidden;
   background: var(--montaage-cream);
   box-shadow: 0 18px 45px rgba(31, 31, 31, 0.14);
}

.montaage-hero-slide img {
   width: 100%;
   height: auto;
   display: block;
   border-radius: 1rem;
}

/* Homepage spacing */
.mt-lg-12 {
   margin-top: 2.5rem !important;
}

.mb-lg-14 {
   margin-bottom: 4rem !important;
}

/* Product content section */
.product-content {
   background: rgba(255, 253, 248, 0.82);
   border: 1px solid var(--montaage-sand);
   border-radius: 1.1rem;
   padding: 2rem;
   box-shadow: 0 16px 40px rgba(31, 31, 31, 0.07);
}

.product-content h3,
.product-content h3.mb-0 {
   font-size: 2rem !important;
   font-weight: 700 !important;
   color: var(--montaage-brown) !important;
   text-align: center;
   margin-bottom: 2rem !important;
   padding-bottom: 1rem;
   border-bottom: 1px solid var(--montaage-sand);
}

.product-content h3::after,
.product-content h3.mb-0::after {
   content: "";
   display: block;
   width: 70px;
   height: 2px;
   background: var(--montaage-gold);
   margin: 0.8rem auto 0;
}

/* Product cards */
.card,
.product-card,
.card-product,
.product {
   background: var(--montaage-cream) !important;
   border: 1px solid var(--montaage-sand) !important;
   border-radius: 0.95rem !important;
   box-shadow: 0 8px 22px rgba(31, 31, 31, 0.07);
   transition: all 0.22s ease;
   overflow: hidden;
}

.card:hover,
.product-card:hover,
.card-product:hover,
.product:hover {
   transform: translateY(-4px);
   box-shadow: 0 18px 38px rgba(31, 31, 31, 0.14);
}

.card img,
.product-card img,
.card-product img,
.product img {
   background: #faf7f2;
   border-radius: 0.75rem;
}

.card-body {
   padding: 1rem !important;
}

.card-title,
.product-title,
.product-name {
   color: var(--montaage-brown) !important;
   font-weight: 600 !important;
   line-height: 1.35;
}

.price,
.product-price,
.text-primary {
   color: var(--montaage-burgundy) !important;
   font-weight: 700 !important;
}

/* Badges */
.badge,
.bg-success,
.bg-primary {
   background: var(--montaage-gold) !important;
   color: #fff !important;
   border-radius: 999px !important;
   font-weight: 600 !important;
}

/* Modal / popup */
.modal-content {
   border-radius: 1rem !important;
   border: 1px solid var(--montaage-sand) !important;
   background: var(--montaage-cream) !important;
   box-shadow: 0 25px 70px rgba(31, 31, 31, 0.25) !important;
}

.modal h2 {
   color: var(--montaage-brown) !important;
}

.modal .lead {
   color: var(--montaage-charcoal) !important;
}

/* Footer */
footer {
   background: var(--montaage-navy) !important;
   color: #f8f1e8 !important;
   border-top: 4px solid var(--montaage-gold);
   margin-top: 4rem !important;
}

footer a {
   color: #f8f1e8 !important;
}

footer a:hover {
   color: var(--montaage-gold) !important;
}

/* Mobile */
@media (max-width: 768px) {
   .container {
      max-width: 100% !important;
      padding-left: 1rem !important;
      padding-right: 1rem !important;
   }

   .product-content {
      padding: 1.25rem;
      border-radius: 0.85rem;
   }

   .product-content h3,
   .product-content h3.mb-0 {
      font-size: 1.45rem !important;
   }

   .montaage-hero-section {
      margin-top: 1rem !important;
      margin-bottom: 1.5rem !important;
   }
}
/* SEO intro block */
.montaage-seo-intro {
   margin-top: -0.5rem;
   margin-bottom: 2.5rem;
}

.montaage-seo-card {
   max-width: 1080px;
   margin: 0 auto;
   text-align: center;
   background: rgba(255, 253, 248, 0.78);
   border: 1px solid var(--montaage-sand);
   border-radius: 1rem;
   padding: 2rem 2.5rem;
   box-shadow: 0 12px 32px rgba(31, 31, 31, 0.06);
}

.montaage-seo-card h1 {
   font-size: 2.1rem;
   color: var(--montaage-brown);
   margin-bottom: 0.35rem;
}

.montaage-seo-card h2 {
   font-size: 1.2rem;
   font-weight: 500;
   color: var(--montaage-navy);
   margin-bottom: 1rem;
}

.montaage-seo-card p {
   max-width: 900px;
   margin: 0 auto;
   color: #4a4038;
   line-height: 1.75;
   font-size: 1rem;
}

@media (max-width: 768px) {
   .montaage-seo-card {
      padding: 1.25rem;
   }

   .montaage-seo-card h1 {
      font-size: 1.55rem;
   }

   .montaage-seo-card h2 {
      font-size: 1rem;
   }
}
/* SEO intro links */
.montaage-seo-card a {
   color: var(--montaage-navy);
   font-weight: 600;
   text-decoration: none;
   border-bottom: 1px solid rgba(176, 138, 74, 0.45);
}

.montaage-seo-card a:hover {
   color: var(--montaage-gold);
   border-bottom-color: var(--montaage-gold);
}
/* Homepage collection navigation */
.montaage-collection-nav {
   margin-bottom: 3rem;
}

.montaage-section-heading {
   text-align: center;
   max-width: 820px;
   margin: 0 auto 2rem;
}

.montaage-section-heading span {
   display: inline-block;
   color: var(--montaage-gold);
   font-weight: 700;
   letter-spacing: 0.12em;
   text-transform: uppercase;
   font-size: 0.78rem;
   margin-bottom: 0.5rem;
}

.montaage-section-heading h2 {
   color: var(--montaage-brown);
   font-size: 2rem;
   margin-bottom: 0.6rem;
}

.montaage-section-heading p {
   color: #5a4d42;
   line-height: 1.65;
   margin-bottom: 0;
}

.montaage-collection-card {
   display: block;
   height: 100%;
   background: rgba(255, 253, 248, 0.9);
   border: 1px solid var(--montaage-sand);
   border-radius: 1rem;
   padding: 1.5rem;
   text-decoration: none;
   box-shadow: 0 10px 26px rgba(31, 31, 31, 0.06);
   transition: all 0.22s ease;
}

.montaage-collection-card:hover {
   transform: translateY(-4px);
   box-shadow: 0 18px 40px rgba(31, 31, 31, 0.12);
   border-color: rgba(176, 138, 74, 0.55);
}

.montaage-card-label {
   display: inline-block;
   color: var(--montaage-gold);
   font-size: 0.72rem;
   font-weight: 700;
   letter-spacing: 0.12em;
   text-transform: uppercase;
   margin-bottom: 0.8rem;
}

.montaage-collection-card h3 {
   color: var(--montaage-brown);
   font-size: 1.2rem;
   margin-bottom: 0.6rem;
}

.montaage-collection-card p {
   color: #5a4d42;
   font-size: 0.95rem;
   line-height: 1.6;
   margin-bottom: 0;
}

@media (max-width: 768px) {
   .montaage-section-heading h2 {
      font-size: 1.5rem;
   }

   .montaage-collection-card {
      padding: 1.25rem;
   }
}
/* Luxury product card upgrade */
.montaage-product-grid {
   align-items: stretch;
}

.montaage-product-card {
   position: relative;
}

.montaage-product-card .card-body {
   padding: 1.15rem !important;
}

.montaage-product-image-area {
   margin-bottom: 0.75rem;
}

.montaage-product-image-wrap {
   background: linear-gradient(180deg, #fffdf8 0%, #f6efe5 100%);
   border: 1px solid rgba(226, 214, 197, 0.85);
   border-radius: 0.85rem;
   padding: 0.75rem;
   min-height: 300px;
   display: flex;
   align-items: center;
   justify-content: center;
   overflow: hidden;
}

.montaage-product-image {
   width: 100%;
   height: 280px;
   object-fit: contain;
   margin-bottom: 0 !important;
   transition: transform 0.28s ease;
}

.montaage-product-card:hover .montaage-product-image {
   transform: scale(1.025);
}

.montaage-product-badge-wrap {
   z-index: 3;
   margin: 0.55rem;
}

.montaage-product-thumbs {
   display: flex;
   gap: 0.35rem;
   flex-wrap: wrap;
   margin: 0.55rem 0 0.75rem;
}

.montaage-product-thumbs img {
   height: 42px !important;
   width: 42px;
   object-fit: cover;
   border-radius: 0.35rem;
   border: 1px solid var(--montaage-sand);
   background: #fff;
}

.montaage-product-maker {
   color: var(--montaage-gold);
   font-size: 0.72rem;
   font-weight: 700;
   letter-spacing: 0.08em;
   text-transform: uppercase;
   margin-bottom: 0.25rem;
}

.montaage-product-code {
   color: #7a6b5a;
   font-size: 0.78rem;
   font-weight: 600;
   margin-bottom: 0.35rem;
}

.montaage-product-title {
   font-size: 1rem;
   line-height: 1.38;
   margin-bottom: 0.5rem;
   color: var(--montaage-brown);
}

.montaage-product-title a {
   color: var(--montaage-brown);
}

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

.montaage-product-note {
   font-size: 0.82rem;
   color: #6b5c4c;
   line-height: 1.4;
   margin-bottom: 0.75rem;
}

.montaage-product-bottom {
   border-top: 1px solid var(--montaage-sand);
}

.montaage-product-price {
   color: var(--montaage-burgundy);
   font-weight: 800;
   font-size: 0.98rem;
}

.montaage-details-btn {
   padding: 0.45rem 0.75rem !important;
   font-size: 0.78rem !important;
   letter-spacing: 0.03em;
}

@media (max-width: 768px) {
   .montaage-product-image-wrap {
      min-height: 220px;
      padding: 0.5rem;
   }

   .montaage-product-image {
      height: 205px;
   }

   .montaage-product-card .card-body {
      padding: 0.85rem !important;
   }

   .montaage-product-title {
      font-size: 0.9rem;
   }

   .montaage-product-note {
      display: none;
   }
}
/* Hide old thumbnail/color text output */
.img-small,
.montaage-product-thumbs {
   display: none !important;
}/* Product detail page refinement */
.montaage-product-detail-section {
   margin-top: 2.5rem !important;
}

.montaage-product-detail-section .container {
   max-width: 1320px !important;
   background: rgba(255, 253, 248, 0.86);
   border: 1px solid var(--montaage-sand);
   border-radius: 1.1rem;
   padding: 2rem;
   box-shadow: 0 18px 45px rgba(31, 31, 31, 0.08);
}

.montaage-product-detail-section .product {
   background: #fffdf8;
   border: 1px solid var(--montaage-sand);
   border-radius: 1rem;
   padding: 1rem;
   box-shadow: 0 12px 34px rgba(31, 31, 31, 0.08);
}

.montaage-product-detail-section .zoom {
   background-size: contain !important;
   background-repeat: no-repeat !important;
   background-position: center !important;
   border-radius: 0.85rem;
   overflow: hidden;
}

.montaage-product-detail-section .zoom img {
   width: 100%;
   max-height: 620px;
   object-fit: contain;
   display: block;
   margin: 0 auto;
}

.montaage-product-detail-info {
   background: rgba(255, 253, 248, 0.95);
   border: 1px solid var(--montaage-sand);
   border-radius: 1rem;
   padding: 2rem !important;
   box-shadow: 0 10px 28px rgba(31, 31, 31, 0.06);
}

.montaage-product-detail-info h1 {
   color: var(--montaage-brown);
   font-size: 2.3rem;
   font-weight: 800;
   line-height: 1.15;
}

.montaage-product-detail-info > a {
   color: var(--montaage-gold) !important;
   font-size: 0.8rem;
   font-weight: 800;
   letter-spacing: 0.1em;
   text-transform: uppercase;
   text-decoration: none;
}

.montaage-detail-price-box {
   background: #fffdf8;
   border: 1px solid var(--montaage-sand);
   border-radius: 0.85rem;
   padding: 1rem 1.25rem;
   margin-top: 1rem;
}

.montaage-detail-price {
   color: var(--montaage-burgundy);
   font-size: 1.55rem;
   font-weight: 800;
}

.montaage-detail-assurance {
   color: #6b5c4c;
   font-size: 0.9rem;
   margin-top: 0.45rem;
}

.colorImages {
   background: #fffdf8;
   border: 1px solid var(--montaage-sand);
   border-radius: 0.85rem;
   padding: 1rem;
}

.colorImages img {
   border: 1px solid var(--montaage-sand);
   border-radius: 0.4rem;
   padding: 0.15rem;
   background: #fff;
}

#spSizes table {
   background: #fffdf8;
   border: 1px solid var(--montaage-sand);
   border-radius: 0.85rem;
   overflow: hidden;
   margin-top: 1rem;
}

#spSizes table td {
   padding: 0.9rem 1rem;
   vertical-align: middle;
   border-color: var(--montaage-sand);
}

#spSizes .sizePrice,
#spSizes td:nth-child(2) {
   color: var(--montaage-burgundy);
   font-weight: 800;
}

#spSizes .btnAddCartNew {
   background: var(--montaage-navy) !important;
   color: #fff !important;
   border-radius: 0.35rem !important;
   font-weight: 700 !important;
   border: none !important;
   padding: 0.45rem 0.75rem !important;
}

#spSizes .btnAddCartNew:hover {
   background: var(--montaage-gold) !important;
}

.montaage-product-detail-info table td:first-child {
   color: var(--montaage-brown);
   font-weight: 700;
   width: 38%;
}

.nav-lb-tab .nav-link.active {
   background: var(--montaage-navy) !important;
   color: #fff !important;
}

.nav-lb-tab .nav-link {
   color: var(--montaage-brown) !important;
   font-weight: 700;
}

.tab-content {
   background: rgba(255, 253, 248, 0.86);
   border: 1px solid var(--montaage-sand);
   border-radius: 0 0 1rem 1rem;
   padding: 0 1.5rem;
}

@media (max-width: 768px) {
   .montaage-product-detail-section .container {
      padding: 1.25rem;
   }

   .montaage-product-detail-info {
      padding: 1.25rem !important;
   }

   .montaage-product-detail-info h1 {
      font-size: 1.65rem;
   }

   .montaage-product-detail-section .zoom img {
      max-height: 420px;
   }
}
/* Category / department page upgrade */
.montaage-category-page {
   background:
      radial-gradient(circle at top center, rgba(255,253,248,0.96), rgba(247,241,232,1) 55%),
      var(--montaage-ivory);
   padding-bottom: 4rem;
}

.montaage-category-page aside .offcanvas-body {
   background: rgba(255,253,248,0.9);
   border: 1px solid var(--montaage-sand);
   border-radius: 1rem;
   padding: 1.25rem !important;
   box-shadow: 0 12px 34px rgba(31,31,31,0.06);
}

.montaage-category-page aside h5 {
   color: var(--montaage-brown);
   font-weight: 800;
   border-bottom: 1px solid var(--montaage-sand);
   padding-bottom: 0.65rem;
}

.montaage-category-page .nav-category .nav-link {
   color: var(--montaage-brown) !important;
   font-weight: 600;
   padding-left: 0;
   padding-right: 0;
}

.montaage-category-page .nav-category .nav-link:hover {
   color: var(--montaage-gold) !important;
}

.montaage-category-page .form-check-label {
   color: #5a4d42;
   font-size: 0.92rem;
}

.montaage-category-page .form-check-input:checked {
   background-color: var(--montaage-navy);
   border-color: var(--montaage-navy);
}

.montaage-category-hero {
   background: rgba(255,253,248,0.9);
   border: 1px solid var(--montaage-sand);
   border-radius: 1.1rem;
   padding: 2rem 2.25rem;
   box-shadow: 0 16px 40px rgba(31,31,31,0.07);
}

.montaage-category-eyebrow {
   display: inline-block;
   color: var(--montaage-gold);
   font-size: 0.78rem;
   font-weight: 800;
   letter-spacing: 0.12em;
   text-transform: uppercase;
   margin-bottom: 0.6rem;
}

.montaage-category-hero h1 {
   color: var(--montaage-brown);
   font-size: 2.35rem;
   font-weight: 800;
   margin-bottom: 0.75rem;
}

.montaage-category-hero p {
   color: #5a4d42;
   max-width: 920px;
   line-height: 1.7;
   margin-bottom: 0;
}

.montaage-category-notes {
   margin-top: 1rem;
   color: #4a4038;
   line-height: 1.7;
}

.montaage-category-page .d-lg-flex.justify-content-between.align-items-center {
   background: rgba(255,253,248,0.86);
   border: 1px solid var(--montaage-sand);
   border-radius: 0.85rem;
   padding: 1rem;
   margin-bottom: 1.5rem;
}

.montaage-category-page .form-select {
   border-color: var(--montaage-sand);
   color: var(--montaage-brown);
}

@media (max-width: 768px) {
   .montaage-category-hero {
      padding: 1.35rem;
   }

   .montaage-category-hero h1 {
      font-size: 1.7rem;
   }
}
/* Fix long category sidebar */
.montaage-category-page .row.gx-10 {
   align-items: flex-start;
}

.montaage-category-page aside {
   align-self: flex-start;
}

.montaage-category-page aside .offcanvas-body {
   max-height: calc(100vh - 130px);
   overflow-y: auto;
   position: sticky;
   top: 1rem;
   scrollbar-width: thin;
}

/* Hide old discount sidebar banner */
.montaage-category-page aside .mb-8.position-relative {
   display: none !important;
}

/* Keep product area visually pulled up */
.montaage-category-page section.col-lg-9 {
   align-self: flex-start;
}

.montaage-category-hero {
   margin-bottom: 1.25rem !important;
}

@media (max-width: 991px) {
   .montaage-category-page aside .offcanvas-body {
      max-height: none;
      overflow-y: visible;
      position: static;
   }

   .montaage-category-page aside .mb-8.position-relative {
      display: block !important;
   }
}
/* Amazon-style compact category filter sidebar */
.montaage-category-page .row.gx-10 {
   align-items: flex-start !important;
}

/* Left filter column */
.montaage-category-page aside {
   align-self: flex-start !important;
}

/* Make sidebar sticky and internally scrollable */
.montaage-category-page aside .offcanvas-body {
   height: calc(100vh - 110px) !important;
   max-height: calc(100vh - 110px) !important;
   overflow-y: auto !important;
   position: sticky !important;
   top: 80px !important;
   background: rgba(255, 253, 248, 0.96) !important;
   border: 1px solid var(--montaage-sand) !important;
   border-radius: 1rem !important;
   padding: 1.15rem !important;
   box-shadow: 0 12px 34px rgba(31,31,31,0.06) !important;
}

/* Make each filter group compact */
.montaage-category-page aside .offcanvas-body > .mb-8 {
   margin-bottom: 1.25rem !important;
   padding-bottom: 1rem !important;
   border-bottom: 1px solid var(--montaage-sand);
}

/* Amazon-style section headings */
.montaage-category-page aside h5 {
   font-size: 1rem !important;
   font-weight: 800 !important;
   color: var(--montaage-brown) !important;
   margin-bottom: 0.75rem !important;
}

/* Limit long filter groups like Material */
.montaage-category-page aside .offcanvas-body > .mb-8:not(:first-child) {
   max-height: 260px;
   overflow-y: auto;
   padding-right: 0.4rem;
}

/* Keep Categories section fully visible */
.montaage-category-page aside .offcanvas-body > .mb-8:first-child {
   max-height: none !important;
   overflow: visible !important;
}

/* Compact checkbox rows */
.montaage-category-page .form-check {
   margin-bottom: 0.45rem !important;
}

.montaage-category-page .form-check-label {
   font-size: 0.88rem !important;
   line-height: 1.35 !important;
   color: #4f453c !important;
}

/* Cleaner category links */
.montaage-category-page .nav-category .nav-link {
   font-size: 0.92rem !important;
   font-weight: 700 !important;
   color: var(--montaage-brown) !important;
   padding: 0.55rem 0 !important;
}

/* Remove old sidebar promo banner */
.montaage-category-page aside .mb-8.position-relative {
   display: none !important;
}

/* Right product area should start high */
.montaage-category-page section.col-lg-9 {
   align-self: flex-start !important;
}

.montaage-category-hero {
   margin-bottom: 1rem !important;
   padding: 1.6rem 1.9rem !important;
}

/* Product count / sort bar */
.montaage-category-page .d-lg-flex.justify-content-between.align-items-center {
   margin-top: 0 !important;
   margin-bottom: 1.5rem !important;
   background: rgba(255, 253, 248, 0.92) !important;
   border: 1px solid var(--montaage-sand) !important;
   border-radius: 0.9rem !important;
   padding: 1rem 1.25rem !important;
}

/* Custom thin scrollbars */
.montaage-category-page aside .offcanvas-body,
.montaage-category-page aside .offcanvas-body > .mb-8 {
   scrollbar-width: thin;
   scrollbar-color: var(--montaage-gold) rgba(226,214,197,0.45);
}

@media (max-width: 991px) {
   .montaage-category-page aside .offcanvas-body {
      height: auto !important;
      max-height: none !important;
      overflow-y: visible !important;
      position: static !important;
   }

   .montaage-category-page aside .offcanvas-body > .mb-8 {
      max-height: none !important;
      overflow: visible !important;
   }
}
/* Amazon-style category page layout fix */
@media (min-width: 992px) {
   .montaage-category-page .container > .row.gx-10 {
      display: grid !important;
      grid-template-columns: 280px minmax(0, 1fr) !important;
      column-gap: 2rem !important;
      align-items: start !important;
   }

   .montaage-category-page aside.col-lg-3,
   .montaage-category-page section.col-lg-9 {
      width: auto !important;
      max-width: none !important;
      flex: unset !important;
      padding-left: 0 !important;
      padding-right: 0 !important;
   }

   .montaage-category-page aside {
      grid-column: 1 !important;
      grid-row: 1 !important;
   }

   .montaage-category-page section.col-lg-9 {
      grid-column: 2 !important;
      grid-row: 1 !important;
   }

   .montaage-category-page aside .offcanvas-body {
      position: sticky !important;
      top: 90px !important;
      height: calc(100vh - 110px) !important;
      max-height: calc(100vh - 110px) !important;
      overflow-y: auto !important;
      background: rgba(255, 253, 248, 0.96) !important;
      border: 1px solid var(--montaage-sand) !important;
      border-radius: 1rem !important;
      padding: 1rem !important;
      box-shadow: 0 12px 34px rgba(31,31,31,0.06) !important;
   }
}

/* Make filter sections compact */
.montaage-category-page aside .offcanvas-body > .mb-8 {
   margin-bottom: 1rem !important;
   padding-bottom: 0.85rem !important;
   border-bottom: 1px solid var(--montaage-sand);
}

/* Limit long filter groups such as Material */
.montaage-category-page aside .offcanvas-body > .mb-8:not(:first-child) {
   max-height: 210px !important;
   overflow-y: auto !important;
   padding-right: 0.35rem !important;
}

/* Categories should remain fully visible */
.montaage-category-page aside .offcanvas-body > .mb-8:first-child {
   max-height: none !important;
   overflow: visible !important;
}

/* Hide old promotional sidebar banner */
.montaage-category-page aside .mb-8.position-relative {
   display: none !important;
}

/* Compact filter text */
.montaage-category-page .form-check {
   margin-bottom: 0.35rem !important;
}

.montaage-category-page .form-check-label {
   font-size: 0.84rem !important;
   line-height: 1.3 !important;
}

/* Compact category hero so products appear sooner */
.montaage-category-hero {
   padding: 1.35rem 1.65rem !important;
   margin-bottom: 1rem !important;
}

.montaage-category-hero h1 {
   font-size: 2rem !important;
   margin-bottom: 0.5rem !important;
}

.montaage-category-hero p {
   font-size: 0.95rem !important;
   line-height: 1.55 !important;
}

/* Product count / sorting bar stays in right column */
.montaage-category-page section.col-lg-9 .d-lg-flex.justify-content-between.align-items-center {
   margin-top: 0 !important;
   margin-bottom: 1.25rem !important;
   width: 100% !important;
}

/* Better scrollbar */
.montaage-category-page aside .offcanvas-body,
.montaage-category-page aside .offcanvas-body > .mb-8 {
   scrollbar-width: thin;
   scrollbar-color: var(--montaage-gold) rgba(226,214,197,0.45);
}

@media (max-width: 991px) {
   .montaage-category-page aside .offcanvas-body {
      height: auto !important;
      max-height: none !important;
      overflow: visible !important;
      position: static !important;
   }

   .montaage-category-page aside .offcanvas-body > .mb-8 {
      max-height: none !important;
      overflow: visible !important;
   }
}
/* Compact Amazon-style product cards on category pages */
.montaage-category-page .product-content {
   padding: 0 !important;
   background: transparent !important;
   border: none !important;
   box-shadow: none !important;
}

.montaage-category-page .montaage-product-card .card-body {
   padding: 0.85rem !important;
}

.montaage-category-page .montaage-product-image-wrap {
   min-height: 210px !important;
   height: 210px !important;
   padding: 0.55rem !important;
}

.montaage-category-page .montaage-product-image {
   height: 190px !important;
   max-height: 190px !important;
   object-fit: contain !important;
}

.montaage-category-page .montaage-product-maker {
   font-size: 0.66rem !important;
   margin-bottom: 0.15rem !important;
}

.montaage-category-page .montaage-product-code {
   font-size: 0.72rem !important;
   margin-bottom: 0.25rem !important;
}

.montaage-category-page .montaage-product-title {
   font-size: 0.92rem !important;
   line-height: 1.25 !important;
   margin-bottom: 0.35rem !important;
}

.montaage-category-page .montaage-product-note {
   display: none !important;
}

.montaage-category-page .montaage-product-bottom {
   padding-top: 0.65rem !important;
}

.montaage-category-page .montaage-product-price {
   font-size: 0.9rem !important;
}

.montaage-category-page .montaage-details-btn {
   font-size: 0.72rem !important;
   padding: 0.38rem 0.55rem !important;
}

@media (max-width: 768px) {
   .montaage-category-page .montaage-product-image-wrap {
      min-height: 180px !important;
      height: 180px !important;
   }

   .montaage-category-page .montaage-product-image {
      height: 165px !important;
      max-height: 165px !important;
   }
}
/* Department landing page tiles */
.montaage-department-grid {
   display: grid;
   grid-template-columns: repeat(4, minmax(0, 1fr));
   gap: 1rem;
   margin-bottom: 2rem;
}

.montaage-department-tile {
   display: block;
   background: rgba(255, 253, 248, 0.94);
   border: 1px solid var(--montaage-sand);
   border-radius: 0.9rem;
   padding: 1.1rem 1.25rem;
   text-decoration: none;
   box-shadow: 0 10px 28px rgba(31,31,31,0.06);
   transition: all 0.2s ease;
}

.montaage-department-tile:hover {
   transform: translateY(-3px);
   border-color: var(--montaage-gold);
   box-shadow: 0 18px 40px rgba(31,31,31,0.12);
}

.montaage-department-tile span {
   display: block;
   color: var(--montaage-brown);
   font-weight: 800;
   text-transform: uppercase;
   font-size: 0.95rem;
   margin-bottom: 0.35rem;
}

.montaage-department-tile strong {
   color: var(--montaage-gold);
   font-size: 0.85rem;
}

@media (max-width: 991px) {
   .montaage-department-grid {
      grid-template-columns: repeat(2, minmax(0, 1fr));
   }
}

@media (max-width: 575px) {
   .montaage-department-grid {
      grid-template-columns: 1fr;
   }
}
/* Department landing image tiles */
.montaage-department-image-grid {
   display: grid;
   grid-template-columns: repeat(4, minmax(0, 1fr));
   gap: 1.1rem;
   margin-top: 1rem;
   margin-bottom: 2rem;
}

.montaage-department-image-tile {
   display: block;
   background: rgba(255, 253, 248, 0.96);
   border: 1px solid var(--montaage-sand);
   border-radius: 1rem;
   overflow: hidden;
   text-decoration: none;
   box-shadow: 0 12px 32px rgba(31,31,31,0.08);
   transition: all 0.22s ease;
}

.montaage-department-image-tile:hover {
   transform: translateY(-4px);
   border-color: var(--montaage-gold);
   box-shadow: 0 20px 44px rgba(31,31,31,0.14);
}

.montaage-department-tile-photo {
   height: 155px;
   background: #f6efe5;
   overflow: hidden;
}

.montaage-department-tile-photo img {
   width: 100%;
   height: 100%;
   object-fit: cover;
   display: block;
   transition: transform 0.28s ease;
}

.montaage-department-image-tile:hover .montaage-department-tile-photo img {
   transform: scale(1.04);
}

.montaage-department-tile-content {
   padding: 1rem 1.1rem;
}

.montaage-department-tile-content span {
   display: block;
   color: var(--montaage-brown);
   font-size: 0.92rem;
   font-weight: 800;
   text-transform: uppercase;
   letter-spacing: 0.02em;
   margin-bottom: 0.35rem;
}

.montaage-department-tile-content strong {
   color: var(--montaage-gold);
   font-size: 0.82rem;
   font-weight: 800;
}

@media (max-width: 1199px) {
   .montaage-department-image-grid {
      grid-template-columns: repeat(3, minmax(0, 1fr));
   }
}

@media (max-width: 768px) {
   .montaage-department-image-grid {
      grid-template-columns: repeat(2, minmax(0, 1fr));
   }

   .montaage-department-tile-photo {
      height: 135px;
   }
}

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