/* ============================================================
   MULTIVERSE THEME
   Loaded last. Re-skins the base store CSS with the Multiverse
   comic identity: Bangers + Barlow, red/blue/yellow/cyan on cream,
   3px black keylines, hard offset shadows.
   ============================================================ */

/* ---- 1. Tokens ------------------------------------------------ */
:root {
  --mv-red:    #C0272D;
  --mv-blue:   #1A3D8F;
  --mv-yellow: #F5A623;
  --mv-cyan:   #2BAACC;
  --mv-black:  #111111;
  --mv-cream:  #F9F5EE;
  --mv-ink:    3px solid var(--mv-black);
  --mv-pop:    3px 3px 0 var(--mv-black);
  --mv-pop-lg: 6px 6px 0 var(--mv-black);

  /* Remap the base stylesheet's variables so most of it inherits for free */
  --primary-color: #C0272D;
  --primary-light: #d94b51;
  --primary-dark:  #8f1d22;
  --secondary-color: #1A3D8F;
  --accent-gold:   #F5A623;
  --accent-cream:  #F9F5EE;
  --text-dark:     #111111;
  --text-light:    #4a4a4a;
  --bg-light:      #F9F5EE;
  --white:         #ffffff;
  --border-color:  #111111;
  --shadow-sm: 2px 2px 0 rgba(17, 17, 17, 1);
  --shadow-md: 3px 3px 0 rgba(17, 17, 17, 1);
  --shadow-lg: 6px 6px 0 rgba(17, 17, 17, 1);
}

/* ---- 2. Type -------------------------------------------------- */
body {
  font-family: 'Barlow', 'Helvetica Neue', Arial, sans-serif;
  background: var(--mv-cream);
  color: var(--mv-black);
}

h1, h2, h3, h4,
.hero-title, .section-title, .shop-title, .category-title,
.home-categories-title, .home-offers-title, .reviews-title,
.about-section-title, .footer-heading, .product-name,
.sidebar-header h2, .btn, .see-all-btn, .hero-link {
  font-family: 'Bangers', 'Barlow', cursive;
  letter-spacing: 0.04em;
  font-weight: 400;
}

.product-name, .footer-heading { letter-spacing: 0.03em; }

/* ---- 3. Buttons: comic stickers -------------------------------- */
.btn,
.btn-primary,
.btn-secondary,
.btn-add-to-cart,
.see-all-btn,
.home-shop-expand {
  border: var(--mv-ink);
  border-radius: 6px;
  box-shadow: var(--mv-pop);
  font-family: 'Bangers', cursive;
  letter-spacing: 0.05em;
  font-size: 1.05rem;
  padding: 0.62rem 1.35rem;
  transition: transform 0.1s ease, box-shadow 0.1s ease, background 0.15s;
  cursor: pointer;
}
.btn-primary, .btn-add-to-cart {
  background: var(--mv-red);
  color: #fff;
}
.btn-secondary {
  background: var(--mv-cream);
  color: var(--mv-black);
}
.see-all-btn, .home-shop-expand {
  background: var(--mv-yellow);
  color: var(--mv-black);
}
.btn:hover,
.btn-primary:hover,
.btn-secondary:hover,
.btn-add-to-cart:hover,
.see-all-btn:hover,
.home-shop-expand:hover {
  transform: translate(-2px, -2px);
  box-shadow: 5px 5px 0 var(--mv-black);
}
.btn:active,
.btn-primary:active,
.btn-add-to-cart:active {
  transform: translate(1px, 1px);
  box-shadow: 1px 1px 0 var(--mv-black);
}
.btn-primary:hover, .btn-add-to-cart:hover {
  background: var(--mv-yellow);
  color: var(--mv-black);
}
.btn:disabled, .btn-add-to-cart:disabled {
  background: #bdbdbd; color: #666;
  box-shadow: var(--mv-pop); transform: none; cursor: not-allowed;
}

/* Keyboard focus stays visible everywhere */
a:focus-visible, button:focus-visible,
input:focus-visible, select:focus-visible, textarea:focus-visible {
  outline: 3px solid var(--mv-cyan);
  outline-offset: 2px;
}

/* ---- 4. Header / navbar ---------------------------------------- */
.site-header { border-bottom: var(--mv-ink); }

.navbar {
  background: var(--mv-black);
  border-bottom: none;
  box-shadow: none;
}
.nav-container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.55rem 1.25rem;
}
.logo img { height: 46px; width: auto; }

.navbar .search-btn,
.navbar .cart-btn,
.navbar .hamburger { color: var(--mv-cream); }

.navbar .search-btn:hover,
.navbar .cart-btn:hover { color: var(--mv-yellow); }

.cart-count {
  background: var(--mv-red);
  color: #fff;
  border: 2px solid var(--mv-black);
  font-family: 'Barlow', sans-serif;
  font-weight: 700;
}

/* Desktop nav links live in the category bar */
.hero-categories-bar,
.nav-categories-bar {
  background: var(--mv-yellow);
  border-top: var(--mv-ink);
  border-bottom: var(--mv-ink);
}
.hero-categories-bar a,
.nav-categories-bar a {
  font-family: 'Bangers', cursive;
  letter-spacing: 0.05em;
  color: var(--mv-black);
  font-size: 1.02rem;
}
.hero-categories-bar a:hover,
.nav-categories-bar a:hover {
  background: var(--mv-black);
  color: var(--mv-yellow);
  border-radius: 4px;
}

.top-strip {
  background: var(--mv-blue);
  color: #fff;
  border-bottom: var(--mv-ink);
  font-family: 'Bangers', cursive;
  letter-spacing: 0.05em;
}

/* ---- 5. Hamburger: three bars that morph into an X ------------- */
.hamburger {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 5px;
  width: 44px;
  height: 44px;
  padding: 0;
  background: transparent;
  border: none;
  cursor: pointer;
}
.hamburger span {
  display: block;
  width: 26px;
  height: 3px;
  background: var(--mv-cream);
  border-radius: 2px;
  transition: transform 0.25s ease, opacity 0.2s ease, background 0.2s;
}
.hamburger:hover span { background: var(--mv-yellow); }
.hamburger.active span:nth-child(1) { transform: translateY(8px) rotate(45deg); }
.hamburger.active span:nth-child(2) { opacity: 0; }
.hamburger.active span:nth-child(3) { transform: translateY(-8px) rotate(-45deg); }

/* ---- 6. Side menu drawer --------------------------------------- */
.side-menu-content {
  background: var(--mv-cream);
  border-right: var(--mv-ink);
}
.side-menu-overlay { background: rgba(17, 17, 17, 0.55); }
.close-menu {
  font-family: 'Bangers', cursive;
  color: var(--mv-black);
  background: var(--mv-yellow);
  border: var(--mv-ink);
  border-radius: 6px;
  box-shadow: 2px 2px 0 var(--mv-black);
  width: 38px; height: 38px;
  line-height: 1;
}
.close-menu:hover { background: var(--mv-red); color: #fff; }

.menu-links > li { border-bottom: 2px solid rgba(17, 17, 17, 0.12); }
.menu-links a,
.menu-cat-link {
  font-family: 'Bangers', cursive;
  letter-spacing: 0.045em;
  font-size: 1.12rem;
  color: var(--mv-black);
}
.menu-links a:hover,
.menu-cat-link:hover { color: var(--mv-red); }
.menu-cat-sub a, .menu-cat-sub-sub a {
  font-family: 'Barlow', sans-serif;
  font-weight: 600;
  font-size: 0.96rem;
  letter-spacing: 0;
}
.menu-cat-expand {
  font-family: 'Bangers', cursive;
  background: var(--mv-cream);
  border: 2px solid var(--mv-black);
  border-radius: 4px;
  color: var(--mv-black);
}
.menu-item-highlight a { color: var(--mv-blue); }

/* ---- 7. Hero ---------------------------------------------------- */
.hero {
  background: var(--mv-blue);
  border-bottom: var(--mv-ink);
  position: relative;
  overflow: hidden;
}
/* Comic grid wash, echoing the landing page hero panel */
.hero::after {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    repeating-linear-gradient(0deg, transparent, transparent 39px, rgba(0,0,0,0.12) 39px, rgba(0,0,0,0.12) 40px),
    repeating-linear-gradient(90deg, transparent, transparent 39px, rgba(0,0,0,0.12) 39px, rgba(0,0,0,0.12) 40px);
  z-index: 1;
}
.hero-overlay { background: rgba(26, 61, 143, 0.35); }
.hero-content { position: relative; z-index: 2; }
.hero-title {
  color: var(--mv-cream);
  text-shadow: 4px 4px 0 var(--mv-black);
  font-size: clamp(2.6rem, 6vw, 5rem);
  line-height: 1;
}
.hero-link {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  margin-top: 1.4rem;
  padding: 0.65rem 1.5rem;
  background: var(--mv-yellow);
  color: var(--mv-black);
  border: var(--mv-ink);
  border-radius: 6px;
  box-shadow: var(--mv-pop);
  font-size: 1.15rem;
  text-decoration: none;
  transition: transform 0.1s, box-shadow 0.1s;
}
.hero-link:hover {
  transform: translate(-2px, -2px);
  box-shadow: 5px 5px 0 var(--mv-black);
  background: var(--mv-red);
  color: #fff;
}

/* ---- 8. Section titles: hand-stamped banner --------------------- */
.shop-title,
.home-categories-title,
.home-offers-title,
.reviews-title,
.collections-title {
  display: inline-block;
  background: var(--mv-yellow);
  color: var(--mv-black);
  border: var(--mv-ink);
  border-radius: 6px;
  box-shadow: var(--mv-pop);
  padding: 0.25rem 1.1rem;
  font-size: clamp(1.7rem, 3.4vw, 2.5rem);
  transform: rotate(-1deg);
}

.category-title {
  font-size: 1.55rem;
  color: var(--mv-black);
  border-bottom: var(--mv-ink);
  padding-bottom: 0.2rem;
}
.category-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  flex-wrap: wrap;
}

/* ---- 9. SIGNATURE: product cards as comic stickers -------------- */
.product-card,
.home-category-card,
.offer-bundle-card,
.bundle-item-card,
.review-item,
.review-card {
  background: #fff;
  border: var(--mv-ink);
  border-radius: 8px;
  box-shadow: var(--mv-pop);
  transition: transform 0.12s ease, box-shadow 0.12s ease;
  overflow: hidden;
}
.product-card:hover,
.home-category-card:hover,
.offer-bundle-card:hover {
  transform: translate(-3px, -3px);
  box-shadow: var(--mv-pop-lg);
}

.product-image { background: var(--mv-cream); position: relative; }
.product-image img { mix-blend-mode: multiply; }
.product-image-placeholder {
  background: var(--mv-cream);
  color: #999;
  font-family: 'Bangers', cursive;
  letter-spacing: 0.05em;
}

.product-name { font-size: 1.12rem; line-height: 1.15; }

.product-card-price,
.product-price {
  font-family: 'Bangers', cursive;
  letter-spacing: 0.04em;
  color: var(--mv-red);
  font-size: 1.3rem;
}
.product-price-original {
  color: #8a8a8a;
  text-decoration: line-through;
  font-size: 0.85em;
  margin-right: 0.35rem;
}
.product-price-discount { color: var(--mv-red); }

/* Out of stock: a rubber stamp, not a grey label */
.product-card-out-of-stock {
  position: absolute;
  top: 12px;
  left: 12px;
  z-index: 3;
  background: var(--mv-black);
  color: var(--mv-yellow);
  font-family: 'Bangers', cursive;
  letter-spacing: 0.08em;
  font-size: 0.9rem;
  padding: 0.15rem 0.6rem;
  border: 2px solid var(--mv-yellow);
  border-radius: 4px;
  transform: rotate(-8deg);
  box-shadow: 2px 2px 0 rgba(0, 0, 0, 0.35);
}
.product-card:has(.product-card-out-of-stock) .product-image img { opacity: 0.55; }

.product-out-of-stock {
  display: inline-block;
  background: var(--mv-black);
  color: var(--mv-yellow) !important;
  font-family: 'Bangers', cursive;
  letter-spacing: 0.08em;
  font-size: 1.15rem;
  padding: 0.3rem 1rem;
  border: 2px solid var(--mv-yellow);
  border-radius: 5px;
  transform: rotate(-3deg);
}

/* Category tiles: white card, PNG logo centred, name on a solid black band.
   Square to match the source art; `contain` so nothing is ever cropped. */
.home-category-image,
.shop-sections-group .home-category-image {
  padding-top: 100%;
  background-color: #fff;
  background-size: 72% auto;
  background-repeat: no-repeat;
  background-position: center 40%;
  border-bottom: none;
  overflow: hidden;
}
/* Kill the inherited hover zoom — it re-declares background-size and would
   break `contain` on a transparent PNG. */
.shop-sections-group .home-category-card:hover .home-category-image::before,
.shop-sections-group .home-brand-card:hover .home-brand-image::before {
  display: none;
}
.home-category-name,
.shop-sections-group .home-category-name {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 0.5rem 0.6rem;
  background: var(--mv-black);
  background-image: none;
  font-family: 'Bangers', cursive;
  letter-spacing: 0.05em;
  font-size: 1.05rem;
  font-weight: 400;
  text-transform: none;
  text-align: center;
  color: var(--mv-cream);
  text-shadow: none;
  border-top: var(--mv-ink);
}
.home-category-card:hover .home-category-name { color: var(--mv-yellow); }

/* enhance.css shrinks this to 0.58rem !important on mobile — far too small
   for a display face. Restore a legible size. */
@media (max-width: 768px) {
  .home-category-name,
  .shop-sections-group .home-category-name {
    font-size: 0.92rem !important;
    padding: 0.4rem 0.4rem !important;
    letter-spacing: 0.04em !important;
  }
  .home-category-image,
  .shop-sections-group .home-category-image {
    background-size: 76% auto;
  }
}

/* ---- 10. Stars -------------------------------------------------- */
.star { color: #d8d2c7; }
.star.filled { color: var(--mv-yellow); }

/* ---- 11. Cart modal + search panel ------------------------------ */
.modal-content,
.search-panel {
  background: var(--mv-cream);
  border: var(--mv-ink);
  border-radius: 10px;
  box-shadow: var(--mv-pop-lg);
}
.modal-header, .search-panel-header {
  background: var(--mv-black);
  color: var(--mv-cream);
  border-bottom: var(--mv-ink);
}
.modal-header h3, .search-panel-title {
  font-family: 'Bangers', cursive;
  letter-spacing: 0.05em;
  color: var(--mv-cream);
  font-size: 1.4rem;
}
.close-modal, .search-panel-close {
  color: var(--mv-cream);
  background: transparent;
  border: none;
  font-size: 1.7rem;
  cursor: pointer;
}
.close-modal:hover, .search-panel-close:hover { color: var(--mv-yellow); }

.cart-item { border-bottom: 2px dashed rgba(17, 17, 17, 0.18); }
.cart-total {
  border-top: var(--mv-ink);
  font-family: 'Bangers', cursive;
  letter-spacing: 0.04em;
  font-size: 1.3rem;
}
#cartTotal { color: var(--mv-red); }

.search-input, .search-panel-input,
.form-group input, .form-group select, .form-group textarea {
  border: 2px solid var(--mv-black);
  border-radius: 6px;
  font-family: 'Barlow', sans-serif;
}
.search-input:focus, .search-panel-input:focus,
.form-group input:focus, .form-group select:focus, .form-group textarea:focus {
  border-color: var(--mv-red);
  box-shadow: 2px 2px 0 var(--mv-black);
}

/* ---- 12. Bottom nav (mobile) ------------------------------------ */
.bottom-nav {
  background: var(--mv-black);
  border-top: var(--mv-ink);
}
.bottom-nav-item {
  color: var(--mv-cream);
  font-family: 'Barlow', sans-serif;
  font-weight: 600;
}
.bottom-nav-item:hover, .bottom-nav-item.active { color: var(--mv-yellow); }
.bottom-nav-cart-count {
  background: var(--mv-red);
  color: #fff;
  border: 2px solid var(--mv-cream);
}

/* ---- 13. Floating WhatsApp -------------------------------------- */
.whatsapp-float {
  background: #25D366;
  border: var(--mv-ink);
  border-radius: 50%;
  box-shadow: var(--mv-pop);
  transition: transform 0.12s ease, box-shadow 0.12s ease;
  bottom: calc(20px + env(safe-area-inset-bottom, 0px));
}
.whatsapp-float:hover {
  transform: translate(-2px, -2px);
  box-shadow: 5px 5px 0 var(--mv-black);
}
@media (max-width: 768px) {
  /* Lift clear of the bottom nav bar */
  .whatsapp-float { bottom: calc(80px + env(safe-area-inset-bottom, 0px)); }
}

/* ---- 14. Footer -------------------------------------------------- */
.footer {
  background: var(--mv-black);
  color: var(--mv-cream);
  border-top: var(--mv-ink);
}
.footer a { color: var(--mv-cream); }
.footer a:hover { color: var(--mv-yellow); }
.footer-heading {
  color: var(--mv-yellow);
  font-size: 1.3rem;
}
.footer-tagline { font-family: 'Bangers', cursive; letter-spacing: 0.05em; font-size: 1.25rem; }
.footer-logo { filter: drop-shadow(3px 3px 0 rgba(0, 0, 0, 0.6)); }
.footer-bottom { border-top: 2px solid rgba(249, 245, 238, 0.2); }

/* ---- 15. Checkout ----------------------------------------------- */
.checkout-page h1 {
  display: inline-block;
  background: var(--mv-red);
  color: var(--mv-cream);
  border: var(--mv-ink);
  border-radius: 6px;
  box-shadow: var(--mv-pop);
  padding: 0.25rem 1.1rem;
  transform: rotate(-1deg);
}
.order-summary, .checkout-form-section {
  background: #fff;
  border: var(--mv-ink);
  border-radius: 8px;
  box-shadow: var(--mv-pop);
}
.order-summary-line { font-family: 'Barlow', sans-serif; }

/* ---- 16. Product detail page ------------------------------------ */
.back-link {
  display: inline-block;
  font-family: 'Bangers', cursive;
  letter-spacing: 0.05em;
  color: var(--mv-blue);
  text-decoration: none;
}
.back-link:hover { color: var(--mv-red); }
.main-image {
  background: #fff;
  border: var(--mv-ink);
  border-radius: 10px;
  box-shadow: var(--mv-pop-lg);
  overflow: hidden;
}
.gallery-thumb {
  border: 2px solid var(--mv-black);
  border-radius: 6px;
  cursor: pointer;
}
.gallery-thumb:hover { border-color: var(--mv-red); box-shadow: 2px 2px 0 var(--mv-black); }
.product-category {
  display: inline-block;
  background: var(--mv-cyan);
  color: var(--mv-black);
  border: 2px solid var(--mv-black);
  border-radius: 4px;
  padding: 0.1rem 0.6rem;
  font-family: 'Bangers', cursive;
  letter-spacing: 0.05em;
}
.product-description h3 { font-size: 1.35rem; }

/* ---- 17. Sort bar ------------------------------------------------ */
.shop-sort-btn {
  font-family: 'Bangers', cursive;
  letter-spacing: 0.05em;
  background: var(--mv-cream);
  border: 2px solid var(--mv-black);
  border-radius: 6px;
  box-shadow: 2px 2px 0 var(--mv-black);
  color: var(--mv-black);
}
.shop-sort-btn:hover { background: var(--mv-yellow); }
.shop-sort-dropdown {
  background: var(--mv-cream);
  border: var(--mv-ink);
  border-radius: 6px;
  box-shadow: var(--mv-pop);
}
.shop-sort-dropdown a { color: var(--mv-black); font-weight: 600; }
.shop-sort-dropdown a:hover { background: var(--mv-yellow); }

/* ---- 18. About section ------------------------------------------ */
.about-section { background: var(--mv-cream); border-top: var(--mv-ink); }
.about-section-title { font-size: clamp(1.8rem, 3.5vw, 2.6rem); }
.about-image-wrap {
  border: var(--mv-ink);
  border-radius: 10px;
  box-shadow: var(--mv-pop-lg);
  overflow: hidden;
}
.about-action-btn {
  border: var(--mv-ink);
  border-radius: 6px;
  box-shadow: var(--mv-pop);
  font-family: 'Bangers', cursive;
  letter-spacing: 0.05em;
  transition: transform 0.1s, box-shadow 0.1s;
}
.about-action-btn:hover { transform: translate(-2px, -2px); box-shadow: 5px 5px 0 var(--mv-black); }
.about-action-whatsapp { background: #25D366; color: var(--mv-black); }
.about-action-phone   { background: var(--mv-blue);   color: #fff; }
.about-action-email   { background: var(--mv-yellow); color: var(--mv-black); }
.about-action-map     { background: var(--mv-red);    color: #fff; }

/* ---- 19. Offers -------------------------------------------------- */
.offers-slider-wrapper {
  border: var(--mv-ink);
  border-radius: 10px;
  box-shadow: var(--mv-pop-lg);
  overflow: hidden;
}
.offers-slider-btn {
  background: var(--mv-yellow);
  color: var(--mv-black);
  border: 2px solid var(--mv-black);
  border-radius: 50%;
  font-family: 'Bangers', cursive;
}
.offer-bundle-price { font-family: 'Bangers', cursive; color: var(--mv-red); font-size: 1.3rem; }
.offer-bundle-name { font-size: 1.25rem; }

/* ---- 20. Reviews slider ----------------------------------------- */
.slider-btn {
  background: var(--mv-yellow);
  color: var(--mv-black);
  border: 2px solid var(--mv-black);
  border-radius: 50%;
  box-shadow: 2px 2px 0 var(--mv-black);
  font-family: 'Bangers', cursive;
}
.slider-btn:hover { background: var(--mv-red); color: #fff; }
.review-quote { color: var(--mv-red); font-family: 'Bangers', cursive; }

/* ---- 21. Empty / error states ----------------------------------- */
.no-results {
  font-family: 'Bangers', cursive;
  letter-spacing: 0.05em;
  font-size: 1.35rem;
  color: var(--mv-black);
  background: var(--mv-yellow);
  border: var(--mv-ink);
  border-radius: 8px;
  box-shadow: var(--mv-pop);
  padding: 1rem 1.4rem;
  display: inline-block;
  transform: rotate(-1deg);
}

/* ---- 22. Motion preferences ------------------------------------- */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.001ms !important;
    scroll-behavior: auto !important;
  }
  .btn:hover, .product-card:hover, .home-category-card:hover { transform: none; }
}


/* ---- 23. Navbar wordmark --------------------------------------- */
.logo .logo-link {
  display: flex;
  align-items: center;
  gap: 0.7rem;
  text-decoration: none;
}
.logo .logo-name {
  font-family: 'Bangers', cursive;
  letter-spacing: 0.06em;
  font-size: 1.45rem;
  line-height: 1;
  color: var(--mv-cream);
  white-space: nowrap;
  transition: color 0.15s;
}
.logo .logo-link:hover .logo-name { color: var(--mv-yellow); }

/* Tight phones: keep the mark, drop the word rather than wrap the bar */
@media (max-width: 380px) {
  .logo .logo-name { display: none; }
}

/* ---- 24. Search suggestions with thumbnails -------------------- */
.search-results .search-result-item,
.search-panel-results .search-result-item {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 0.75rem;
  padding: 0.6rem 0.7rem;
  cursor: pointer;
  border-bottom: 2px dashed rgba(17, 17, 17, 0.12);
}
.search-results .search-result-item:last-child,
.search-panel-results .search-result-item:last-child { border-bottom: none; }
.search-results .search-result-item:hover,
.search-panel-results .search-result-item:hover { background: rgba(245, 166, 35, 0.22); }

.search-result-thumb {
  flex: 0 0 52px;
  width: 52px;
  height: 52px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fff;
  border: 2px solid var(--mv-black);
  border-radius: 6px;
  overflow: hidden;
}
.search-result-thumb img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  mix-blend-mode: multiply;
}
.search-result-thumb-empty {
  font-family: 'Bangers', cursive;
  font-size: 1.3rem;
  color: #c9c2b6;
}

.search-result-text {
  display: flex;
  flex-direction: column;
  gap: 0.1rem;
  min-width: 0;
}
.search-result-text .search-result-name {
  font-family: 'Barlow', sans-serif;
  font-weight: 600;
  font-size: 0.95rem;
  color: var(--mv-black);
  line-height: 1.25;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.search-result-text .search-result-meta {
  font-family: 'Bangers', cursive;
  letter-spacing: 0.04em;
  font-size: 0.92rem;
  color: var(--mv-red);
}

/* ---- 25. Footer logo: full colour, not knocked out to white ---- */
.footer-logo,
.footer .footer-logo,
.footer-logo-link img {
  filter: drop-shadow(3px 3px 0 rgba(0, 0, 0, 0.55)) !important;
  opacity: 1 !important;
}
.footer-logo-link img { filter: drop-shadow(3px 3px 0 rgba(0, 0, 0, 0.55)) !important; }

/* ---- 26. Brand tiles: no colour block, logo fills the card ----- */
.home-brand-card {
  background: #fff;
  border: var(--mv-ink);
  border-radius: 8px;
  box-shadow: var(--mv-pop);
  overflow: hidden;
}
.home-brand-card:hover {
  transform: translate(-3px, -3px);
  box-shadow: var(--mv-pop-lg);
}
.shop-section-brands .home-brand-image,
.home-brand-card .home-category-image,
.home-brand-card .home-brand-image {
  /* Source logos are square (600x600, mark centred) — so is the tile. */
  padding-top: 100%;
  background-color: #fff;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  border-bottom: none;
}
.home-brand-card .home-category-name { display: none; }
