/* ==== MEMORIS 2025 â GLOBAL BASE (NO CLASS) ==== */

:root {
  --mem-bg-dark: #0e0e0e;
  --mem-bg-deep: #141414;
  --mem-text-light: #f5f5f5;
  --mem-text-muted: #b3b3b3;
  --mem-primary: #caa56b;
  --mem-primary-hover: #e0be85;
  --mem-border: rgba(255, 255, 255, 0.08);
}

html, body {
    overscroll-behavior: none;
    overscroll-behavior-x: none;
    overscroll-behavior-y: none;
    touch-action: pan-y;
}

html {
  scroll-behavior: smooth;
}

/* Global Reset */
body {
  background-color: var(--mem-bg-dark);
  color: var(--mem-text-light);
  font-family: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 1rem;
  line-height: 1.7;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  overflow-x: hidden;
}

/* Headings */
h1, h2, h3, h4, h5, h6 {
  font-family: "Plus Jakarta Sans", "Inter", sans-serif;
  font-weight: 700;
  color: var(--mem-text-light);
  letter-spacing: -0.02em;
}

/* Links */
a {
  color: var(--mem-primary);
  text-decoration: none;
  transition: color 0.2s ease;
}
a:hover {
  color: var(--mem-primary-hover);
}

/* Text utilities */
.text-muted {
  color: var(--mem-text-muted) !important;
}

/* Containers */
.container {
  max-width: 1200px;
}



/* ==== MEMORIS HEADER 2025 ==== */

.mem-header {
  background-color: var(--mem-bg-dark);
  border-bottom: 1px solid var(--mem-border);
  z-index: 1000;
    background: rgba(10, 10, 10, 0.55); /* translucent base */
  backdrop-filter: blur(14px) saturate(160%);
  -webkit-backdrop-filter: blur(14px) saturate(160%);
  border-bottom: 1px solid rgba(202, 165, 107, 0.15);
  transition: background 0.4s ease, backdrop-filter 0.4s ease, box-shadow 0.4s ease;
}

/* NAVBAR */
.mem-header .navbar {
  padding: 0.8rem 0;
}

.mem-header .navbar-brand img {
  height: 46px;
  transition: opacity 0.3s;
}
.mem-header .navbar-brand img:hover {
  opacity: 0.8;
}

.mem-header .nav-link {
  color: var(--mem-text-muted);
  font-weight: 500;
  font-size: 0.95rem;
  transition: color 0.2s ease;
}
.mem-header .nav-link:hover,
.mem-header .nav-link.active {
  color: var(--mem-primary);
}

/* ICONS */
.mem-header .header-icons .icon-btn {
  background: transparent;
  border: none;
  color: var(--mem-text-light);
  font-size: 1.15rem;
  cursor: pointer;
  position: relative;
  transition: color 0.2s;
}
.mem-header .header-icons .icon-btn:hover {
  color: var(--mem-primary);
}

.mem-header .badge {
  font-size: 0.65rem;
  background-color: var(--mem-primary);
  color: #000;
}

/* DROPDOWN (User Menu) */
.mem-header .dropdown-menu.dropdown-dark {
  background-color: var(--mem-bg-deep);
  border: 1px solid var(--mem-border);
  border-radius: 0.5rem;
  min-width: 180px;
}
.mem-header .dropdown-menu.dropdown-dark .dropdown-item {
  color: var(--mem-text-light);
  font-size: 0.9rem;
}
.mem-header .dropdown-menu.dropdown-dark .dropdown-item:hover {
  background-color: rgba(255, 255, 255, 0.05);
  color: var(--mem-primary);
}


@media (max-width: 991.98px) {
  /* Bigger clickable area & icon size */
  .mem-header .header-icons .icon-btn {
    font-size: 1.6rem;        /* increased icon size */
    padding: 0.2rem 0.6rem;          /* larger tap area */
    border-radius: 50%;       /* round buttons */
  }

  /* Optional â make them stand out slightly with subtle background */
  .mem-header .header-icons .icon-btn {
    background: rgba(255, 255, 255, 0.05);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    transition: background 0.3s ease, transform 0.2s ease;
  }

  .mem-header .header-icons .icon-btn:hover {
    background: rgba(255, 255, 255, 0.12);
    color: var(--mem-primary);
    transform: translateY(-2px);
  }

  /* Slight badge adjustment for the larger icons */
  .mem-header .badge {
    transform: scale(0.9);
    
    
  }
}


/* ==== SEARCH OVERLAY (optimized) ==== */
.search-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh; /* â ensures full height on every device */
  background: rgba(0, 0, 0, 0.706);
  backdrop-filter: blur(24px);
  -webkit-backdrop-filter: blur(24px);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.4s ease, visibility 0.4s ease;
  z-index: 1080;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1rem;
  overflow-y: auto; /* â allow scroll if needed */
  overscroll-behavior: contain; /* â prevent iOS bounce scroll */
}
.search-overlay .easy-autocomplete{
    width:100% !important;
}
.search-overlay.active {
  opacity: 1;
  visibility: visible;
}

.overlay-content {
  position: relative;
  width: 100%;
  max-width: 700px;
  padding: 2rem 1rem;
  text-align: center;
  animation: fadeUp 0.45s ease;
}

/* Close button */
.close-overlay {
  position: absolute;
  top: -3rem;
  right: 0;
  background: none;
  border: none;
  color: var(--bs-light);
  font-size: 1.8rem;
  transition: transform 0.3s ease, color 0.3s ease;
  z-index: 1100;
}
.close-overlay:hover {
  color: var(--bs-primary);
  transform: rotate(90deg);
}

/* Search Form (desktop) */
.search-form {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(202,165,107,0.15);
  border-radius: 50px;
  padding: 0.5rem;
  box-shadow: 0 10px 35px rgba(0, 0, 0, 0.4);
  backdrop-filter: blur(25px);
  -webkit-backdrop-filter: blur(25px);
}

.search-form input {
  flex: 1;
  background: transparent;
  border: none;
  color: var(--bs-light);
  font-size: 1.1rem;
  padding: 0.75rem 1rem;
  outline: none;
}

.search-form input::placeholder {
  color: rgba(255, 255, 255, 0.5);
}

.search-form .btn {
  border-radius: 50px;
  font-weight: 600;
  padding: 0.7rem 1.5rem;
  transition: all 0.3s ease;
}

.search-form .btn:hover {
  box-shadow: 0 0 20px rgba(202,165,107,0.4);
  transform: translateY(-2px);
}

/* Focus glow */
.search-form input:focus {
  box-shadow: 0 0 0 2px rgba(202,165,107,0.25);
  border-radius: 50px;
}

/* Mobile optimization */
@media (max-width: 768px) {
  .overlay-content {
    padding: 1.5rem 0.5rem;
    animation: fadeUp 0.3s ease;
  }

  .search-form {
    flex-direction: column;
    border-radius: 1rem;
    padding: 1rem;
  }

  .search-form input {
    width: 100%;
    font-size: 1rem;
    padding: 0.9rem;
    border-radius: 0.6rem;
    background: rgba(255,255,255,0.04);
    border: 1px solid rgba(202,165,107,0.1);
    margin-bottom: 0.75rem;
  }

  .search-form .btn {
    width: 100%;
    font-size: 1rem;
    padding: 0.9rem;
    border-radius: 0.6rem;
  }

  .close-overlay {
    top: 1rem;
    right: 1rem;
    font-size: 1.5rem;
  }
}

/* Animation */
@keyframes fadeUp {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}


/* ==== LEFT SLIDE MENU ==== */
.slide-menu.left {
  position: fixed;
  top: 0;
  left: -100%;
  width: 300px;
  height: 100vh;
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  background: rgba(10, 10, 10, 0.65);
  box-shadow: 4px 0 25px rgba(0, 0, 0, 0.5);
  border-right: 1px solid rgba(202,165,107,0.15);
  transition: left 0.45s ease;
  z-index: 1050;
  color: var(--bs-light);
}

.slide-menu.left.active {
  left: 0;
}

/* Inner layout */
.slide-inner {
  padding: 2rem 1.5rem;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}

.slide-inner .slide-logo img{
  max-width:60%;
}
/* Close button */
.close-slide {
  background: none;
  border: none;
  color: var(--bs-light);
  font-size: 1.6rem;
  position: absolute;
  top: 1.2rem;
  right: 1.2rem;
  transition: color 0.3s ease;
}
.close-slide:hover {
  color: var(--bs-primary);
}

/* Links */
.slide-nav {
  margin-top: 2rem;
}

.slide-nav li {
  margin-bottom: 1.2rem;
}

.slide-nav a {
  color: rgba(255,255,255,0.85);
  text-decoration: none;
  font-size: 1.1rem;
  font-weight: 500;
  transition: all 0.3s ease;
  display: inline-block;
  position: relative;
}

.slide-nav a::after {
  display: none;
}

.slide-nav a:hover {
  color: var(--bs-primary);
}
.slide-nav a:hover::after {
  width: 100%;
}

/* Contact info */
.slide-contact {
  margin-top: auto;
  font-size: 0.9rem;
  color: rgba(255,255,255,0.7);
}

.slide-contact a {
  color: var(--bs-primary);
  text-decoration: none;
  transition: color 0.3s ease;
}

.slide-contact a:hover {
  text-decoration: underline;
}

/* Overlay with blur effect */
.menu-overlay {
  position: fixed;
  inset: 0;
  width: 100%;
  height: 100vh; /* â ensure full coverage on all devices */
  background: rgba(0, 0, 0, 0.55);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.4s ease, visibility 0.4s ease;
  z-index: 1040;
  display: flex;
  overflow-y: auto; /* â allow scroll if items overflow */
}

/* ===========================
   Active State
   =========================== */
.menu-overlay.active {
  opacity: 1;
  visibility: visible;
}

/* ==== MEMORIS HERO SECTION ==== */

.mem-hero {
  position: relative;
  min-height: 85vh;
  overflow: hidden;
  margin-top: -50px;
  z-index: 0;
}

/* Background layer */
.mem-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background: url('../img/screens/home-hero.avif') center center / cover no-repeat;
  animation: heroDrift 20s ease-in-out infinite alternate;
  transform-origin: center;
  z-index: -1;
}

/* â¨ Background-only motion â top-left drift + zoom */
@keyframes heroDrift {
  0% {
    background-position: 50% 50%;
    transform: scale(1.05);
  }
  100% {
    background-position: 40% 30%; /* moves slightly up-left */
    transform: scale(1.15); /* zoom a bit more */
  }
}





.mem-hero-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom right, rgba(0,0,0,0.8), rgba(0,0,0,0.7));
  backdrop-filter: blur(2px);
  z-index: 1;
}

.mem-hero .hero-content {
  position: relative;
  z-index: 2;
}

.mem-hero .hero-title {
  font-family: "Plus Jakarta Sans", sans-serif;
  font-weight: 700;
  font-size: clamp(2rem, 4vw, 3rem);
  color: var(--mem-text-light);
  line-height: 1.2;
  letter-spacing: -0.02em;
}

.mem-hero .hero-subtitle {
  font-family: "Inter", sans-serif;
  font-size: 1.1rem;
  color: var(--mem-text-muted);
  max-width: 650px;
  margin-left: auto;
  margin-right: auto;
}

/* Buttons */
.mem-hero .btn-lg {
  border-radius: 50px;
  padding: 0.8rem 1.8rem;
  font-weight: 600;
  letter-spacing: 0.02em;
}

.mem-hero .btn-primary {
  background-color: var(--mem-primary);
  color: #000;
  border: none;
}
.mem-hero .btn-primary:hover {
  background-color: var(--mem-primary-hover);
}

.mem-hero .btn-outline-light {
  color: var(--mem-text-light);
  border: 2px solid var(--mem-text-light);
}
.mem-hero .btn-outline-light:hover {
  background-color: var(--mem-text-light);
  color: var(--mem-bg-dark);
}


/* ==== MEMORIS HERO — MOBILE OPTIMIZATION ==== */
@media (max-width: 768px) {
  .mem-hero {
    min-height: 60vh;
    margin-top: -30px;
    padding: 2.5rem 0 1.5rem;
  }
  .mem-hero .hero-title {
    font-size: clamp(1.4rem, 6vw, 2.1rem);
    line-height: 1.15;
  }
  .mem-hero .hero-subtitle {
    font-size: 1rem;
    max-width: 95vw;
    margin-left: 0;
    margin-right: 0;
    padding: 0 0.5rem;
  }
  .mem-hero .btn-lg {
    width: 100%;
    padding: 0.9rem 0.5rem;
    font-size: 1rem;
    margin-bottom: 0.7rem;
  }
  .mem-hero .hero-content {
    padding: 0 0.5rem;
  }
}
/* ==== HERO INFO PILL — LARGE ==== */
.hero-pill {
  display: flex;
  justify-content: center;
}

.hero-pill-link {
  display: inline-flex;
  align-items: center;
  gap: 0.75rem;

  padding: 0.7rem 1.8rem; /* 👈 mai mare */
  border-radius: 999px;

  font-size: 1rem;       /* 👈 text mai vizibil */
  font-weight: 600;
  letter-spacing: 0.01em;

  color: var(--mem-text-light);
  background: rgba(255, 255, 255, 0.12);
  border: 1px solid rgba(255, 255, 255, 0.25);

  text-decoration: none;
  backdrop-filter: blur(8px);
  box-shadow: 0 6px 20px rgba(0,0,0,0.35);

  transition: all .25s ease;
}

.hero-pill-link i {
  color: var(--mem-primary);
  font-size: 1.1rem;
}

.hero-pill-link:hover {
  background: rgba(255, 255, 255, 0.18);
  border-color: var(--mem-primary);
  transform: translateY(-2px);
}


/* ==== WHY MEMORIS SECTION ==== */

.mem-why {
  background: radial-gradient(circle at top, rgba(202,165,107,0.08) 0%, rgba(14,14,14,1) 45%, rgba(14,14,14,1) 100%);
  border-bottom: 1px solid rgba(255,255,255,0.03);
}

.mem-why .eyebrow {
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-size: 0.7rem;
  color: var(--bs-secondary);
  font-weight: 600;
}

.mem-why .why-title {
  font-family: "Plus Jakarta Sans", sans-serif;
  font-weight: 700;
  font-size: clamp(1.9rem, 3vw, 2.4rem);
  color: #fff;
}

.mem-why .why-text {
  color: rgba(245,245,245,0.8);
  max-width: 520px;
}


/* Trust grid */
.trust-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}

/* ==== TRUST CARD â PREMIUM INTERACTIVE STYLE ==== */

.trust-card {
  position: relative;
  background: linear-gradient(145deg, rgba(20, 20, 20, 0.7) 0%, rgba(14, 14, 14, 0.95) 100%);
  border: 1px solid rgba(202,165,107,0.08);
  border-radius: 1rem;
  padding: 1.4rem 1.2rem;
  overflow: hidden;
  backdrop-filter: blur(6px);
  transition: all 0.4s ease;
}

/* Decorative gradient light that activates on hover */
.trust-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(
    circle at 30% 20%,
    rgba(202,165,107,0.15),
    transparent 60%
  );
  opacity: 0;
  transition: opacity 0.6s ease, transform 0.6s ease;
  z-index: 0;
}

/* Animated gold border edge */
.trust-card::after {
  content: "";
  position: absolute;
  inset: -1px;
  border-radius: inherit;
  background: linear-gradient(135deg, rgba(202,165,107,0.3), rgba(202,165,107,0.05));
  opacity: 0;
  transition: opacity 0.4s ease;
  z-index: 1;
  pointer-events: none;
}

/* Hover effects */
.trust-card:hover {
  transform: translateY(-6px) scale(1.02);
  border-color: rgba(202,165,107,0.35);
}
.trust-card:hover::before {
  opacity: 1;
  transform: scale(1.15);
}
.trust-card:hover::after {
  opacity: 1;
}

/* Content */
.trust-card h3 {
  font-size: 1.9rem;
  margin-bottom: 0.5rem;
  color: var(--bs-light);
  font-weight: 700;
  position: relative;
  z-index: 2;
}

.trust-card p {
  font-size: 0.85rem;
  color: rgba(245,245,245,0.75);
  margin: 0;
  line-height: 1.5;
  position: relative;
  z-index: 2;
}

/* Buttons inherit from your theme */
.mem-why .btn-outline-light {
  border-radius: 999px;
  border-width: 1.5px;
  color: #fff;
}
.mem-why .btn-outline-light:hover {
  background: #fff;
  color: #000;
}

/* Responsive */
@media (max-width: 991.98px) {
  .trust-grid {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 575.98px) {
  .trust-grid {
    grid-template-columns: 1fr;
  }
}



/* ==== MEMORIS â PACHETE FUNERARE ==== */
.mem-packages {
  background: linear-gradient(180deg, #0d0d0d 0%, #141414 100%);
  color: var(--bs-light);
  position: relative;
  overflow: hidden;
  padding-top: 4rem;
  padding-bottom: 5rem;
}

.section-title {
  font-family: 'Cinzel', serif;
  text-transform: uppercase;
  font-weight: 600;
  font-size: clamp(1.8rem, 3vw, 2.5rem);
  color: var(--bs-primary);
  letter-spacing: 0.05em;
  position: relative;
  display: inline-block;
  padding-bottom: 0.75rem;
}

.section-title::after {
  content: "";
  display: block;
  width: 80px;
  height: 2px;
  background: linear-gradient(90deg, rgba(202,165,107,0.8), rgba(202,165,107,0));
  margin: 0.75rem auto 0;
  border-radius: 3px;
  transition: width 0.4s ease, opacity 0.4s ease;
}

/* When hovered or visible on scroll (optional) */
.section-title:hover::after {
  width: 120px;
  opacity: 1;
}

.section-subtitle {
  max-width: 700px;
  margin: 0 auto;
  color: rgba(255,255,255,0.7);
  font-size: 1rem;
  line-height: 1.6;
}

/* Card Container */
.package-card {
  background: rgba(255,255,255,0.02);
  border: 1px solid rgba(202,165,107,0.1);
  border-radius: 1rem;
  overflow: hidden;
  transition: all 0.4s ease;
  display: flex;
  flex-direction: column;
  height: 100%;
}

.package-card:hover {
  border-color: rgba(202,165,107,0.35);
  box-shadow: 0 12px 30px rgba(0,0,0,0.45);
  transform: translateY(-6px);
}

/* Image */
.package-image {
  width: 100%;
  height: 200px;
  overflow: hidden;
  background: #111;
  display: flex;
  justify-content: center;
  align-items: center;
}

.package-image img {
  width: 100%;
  height: auto;
  
  transition: transform 0.6s ease;
}

.package-card:hover .package-image img {
  transform: scale(1.05);
}

/* Content */
.package-content {
  padding: 1.5rem 1.2rem 2rem;
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.package-content h3 {
  font-size: 1.1rem;
  font-weight: 600;
  text-transform: uppercase;
  color: var(--bs-light);
  margin-bottom: 0.6rem;
}

.package-content p {
  color: rgba(255,255,255,0.65);
  font-size: 0.9rem;
  line-height: 1.5;
  min-height: 45px;
}

.package-price {
  font-size: 1.2rem;
  color: var(--bs-primary);
  font-weight: 700;
  letter-spacing: 0.02em;
  margin-top: 0.8rem;
}

.btn-outline-primary.btn-sm {
  border-radius: 50px;
  padding: 0.35rem 1.2rem;
  font-size: 0.85rem;
}

/* ===== CTA Button at Bottom of Packages ===== */
.mem-btn-viewall {
  background: linear-gradient(90deg, var(--bs-primary) 0%, var(--bs-primary-hover) 100%);
  border: none;
  color: #000;
  font-weight: 700;
  letter-spacing: 0.03em;
  padding: 0.9rem 2rem;
  border-radius: 50px;
  transition: all 0.3s ease;
  box-shadow: 0 0 0 rgba(202,165,107,0);
}

.mem-btn-viewall:hover {
  background: linear-gradient(90deg, var(--bs-primary-hover) 0%, var(--bs-primary-active) 100%);
  box-shadow: 0 0 20px rgba(202,165,107,0.35);
  transform: translateY(-2px);
  color: #000;
}

.mem-btn-viewall:active {
  transform: translateY(0);
  box-shadow: 0 0 0 rgba(0,0,0,0);
}

/* ==== MEMORIS â SPRIJIN & PERSONALIZARE ==== */
.mem-support {
  background: radial-gradient(circle at top center, #0d0d0d 0%, #070707 100%);
  color: var(--bs-light);
  position: relative;
  overflow: hidden;
}

.mem-support .section-title {
  color: var(--bs-primary);
  font-family: 'Cinzel', serif;
  font-weight: 700;
  text-transform: uppercase;
}

.mem-support .section-subtitle {
  color: rgba(255,255,255,0.7);
  max-width: 720px;
  margin: 0 auto;
  font-size: 1rem;
  line-height: 1.6;
}

/* Cards */
.support-card {
  background: linear-gradient(160deg, rgba(255,255,255,0.04), rgba(255,255,255,0.02));
  border: 1px solid rgba(202,165,107,0.15);
  border-radius: 1rem;
  padding: 2rem;
  height: 100%;
  position: relative;
  overflow: hidden;
  transition: all 0.4s ease;
  z-index: 0; /* ensures ::before is behind the content */
}
.support-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at top left, rgba(202,165,107,0.15), transparent 60%);
  opacity: 0;
  transition: opacity 0.6s ease, transform 0.6s ease;
    z-index: -1; /* pushes the glow behind everything */
  pointer-events: none; /* ensures it never blocks clicks */
}
.support-card:hover::before {
  opacity: 1;
  transform: scale(1.15);
}
.support-card:hover {
  border-color: rgba(202,165,107,0.4);
  transform: translateY(-6px);
  box-shadow: 0 10px 25px rgba(0,0,0,0.4);
}

/* Content */
.support-content h3 {
  font-family: 'Plus Jakarta Sans', sans-serif;
  font-weight: 600;
  color: var(--bs-light);
  font-size: 1.2rem;
  margin-bottom: 1rem;
}
.support-content p {
  font-size: 0.95rem;
  color: rgba(255,255,255,0.7);
  line-height: 1.6;
}
.support-content a.link-light {
  color: var(--bs-primary);
  text-decoration: none;
  font-weight: 600;
}
.support-content a.link-light:hover {
  text-decoration: underline;
}

/* ==== MEMORIS â AVANTAJE ==== */
.mem-advantages {
  background: linear-gradient(180deg, #0b0b0b 0%, #141414 100%);
  color: var(--bs-light);
  position: relative;
}

.mem-advantages .section-title {
  color: var(--bs-primary);
  font-weight: 700;
  text-transform: uppercase;
  margin-bottom: 0.5rem;
}

.mem-advantages .section-subtitle {
  color: rgba(255,255,255,0.7);
  font-size: 1rem;
  max-width: 720px;
  margin: 0 auto;
  line-height: 1.6;
}

/* Cards */
.adv-card {
  position: relative;
  height: 100%;
  background: linear-gradient(160deg, rgba(255,255,255,0.03), rgba(255,255,255,0.02));
  border: 1px solid rgba(202,165,107,0.15);
  border-radius: 1rem;
  padding: 2rem 1.5rem;
  transition: all 0.4s ease;
  overflow: hidden;
}

.adv-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 30% 20%, rgba(202,165,107,0.12), transparent 60%);
  opacity: 0;
  transition: opacity 0.6s ease, transform 0.6s ease;
}

.adv-card:hover::before {
  opacity: 1;
  transform: scale(1.15);
}

.adv-card:hover {
  transform: translateY(-6px);
  border-color: rgba(202,165,107,0.4);
  box-shadow: 0 10px 25px rgba(0,0,0,0.45);
}

.adv-inner {
  position: relative;
  z-index: 2;
}

.adv-inner h3 {
  font-size: 1.1rem;
  font-weight: 600;
  text-transform: uppercase;
  color: var(--bs-primary);
  margin-bottom: 1rem;
}

.adv-inner p {
  font-size: 0.9rem;
  color: rgba(255,255,255,0.7);
  line-height: 1.6;
  margin: 0;
}

/* ==== MEMORIS â FINAL CTA ==== */
.mem-cta {
  background: radial-gradient(circle at center, #111 0%, #050505 100%);
  color: var(--bs-light);
  position: relative;
  overflow: hidden;
}

.mem-cta::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at center, rgba(202,165,107,0.15), transparent 70%);
  opacity: 0.3;
  z-index: 0;
}

.mem-cta .container {
  position: relative;
  z-index: 1;
}

.cta-title {
  font-family: 'Cinzel', serif;
  font-weight: 700;
  font-size: 2rem;
  color: var(--bs-primary);
  text-transform: uppercase;
}

.cta-subtitle {
  color: rgba(255,255,255,0.75);
  font-size: 1rem;
  max-width: 720px;
  margin: 0 auto;
  line-height: 1.6;
}

/* Buttons */
.mem-cta .btn {
  border-radius: 50px;
  font-weight: 600;
  padding: 0.7rem 1.8rem;
  letter-spacing: 0.03em;
  min-width: 220px;
  transition: all 0.3s ease;
}

.mem-cta .btn i {
  margin-right: 0.4rem;
}

.mem-cta .btn-primary {
  background: linear-gradient(90deg, var(--bs-primary) 0%, var(--bs-primary-hover) 100%);
  border: none;
  color: #000;
  box-shadow: 0 0 0 rgba(202,165,107,0);
}

.mem-cta .btn-primary:hover {
  background: linear-gradient(90deg, var(--bs-primary-hover) 0%, var(--bs-primary-active) 100%);
  color: #000;
  box-shadow: 0 0 15px rgba(202,165,107,0.35);
  transform: translateY(-2px);
}

.mem-cta .btn-outline-primary {
  color: var(--bs-primary);
  border-color: var(--bs-primary);
}

.mem-cta .btn-outline-primary:hover {
  background: var(--bs-primary);
  color: #000;
  box-shadow: 0 0 15px rgba(202,165,107,0.35);
}

.mem-cta .btn-outline-light {
  color: var(--bs-light);
  border-color: var(--bs-light);
}

.mem-cta .btn-outline-light:hover {
  background: var(--bs-light);
  color: var(--bs-dark);
  box-shadow: 0 0 15px rgba(255,255,255,0.15);
}

/* Glow on hover */
.mem-cta .btn:hover {
  transform: translateY(-2px);
}


@media (max-width: 768px) {
  .mem-cta {
    padding: 2.2rem 0 1.5rem;
  }
  .cta-title {
    font-size: 1.3rem;
  }
  .cta-subtitle {
    font-size: 0.95rem;
    padding: 0 0.5rem;
  }
  .mem-cta .btn {
    width: 100%;
    padding: 0.9rem 0.5rem;
    font-size: 1rem;
    margin-bottom: 0.7rem;
  }
}

/* ==== MEMORIS â FOOTER ==== */
.mem-footer {
  background: linear-gradient(180deg, #0d0d0d 0%, #121212 100%);
  box-shadow: inset 0 40px 120px rgba(202,165,107,0.07);
  color: #fff;
  padding-top: 4rem;
  padding-bottom: 3rem;
  border-top: 1px solid rgba(202,165,107,0.1);
}

.footer-block {
  position: relative;
}

.footer-title {
  color: var(--bs-primary);
  font-family: 'Plus Jakarta Sans', sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  margin-bottom: 1rem;
  font-size: 0.9rem;
}

.footer-links li {
  margin-bottom: 0.4rem;
}

.footer-links a {
  color: rgba(255,255,255,0.7);
  text-decoration: none;
  transition: color 0.3s ease;
}

.footer-links a:hover {
  color: var(--bs-primary);
}

.footer-contact li a {
  color: var(--bs-primary);
  text-decoration: none;
}

.footer-contact li a:hover {
  text-decoration: underline;
}

.footer-text {
  color: rgba(255,255,255,0.6);
  line-height: 1.6;
}

.footer-social a {
  color: rgba(255,255,255,0.7);
  font-size: 1.1rem;
  transition: all 0.3s ease;
}

.footer-social a:hover {
  color: var(--bs-primary);
  transform: translateY(-3px);
}

.footer-divider {
  border-color: rgba(202,165,107,0.15);
}

.footer-bottom {
  color: rgba(255,255,255,0.6);
}

.footer-bottom a {
  color: var(--bs-primary);
  text-decoration: none;
  font-weight: 500;
}

.footer-bottom a:hover {
  text-decoration: underline;
}

.mem-footer .footer-links{}


/* ==== GLOBAL SECTION BACKGROUNDS ==== */

/* Pure dark (use for header, footer, CTA) */
.bg-dark-deep {
  background-color: #0b0b0b;
  color: #fff;
}

/* Slightly lighter dark (default page sections) */
.bg-dark-soft {
  background-color: #141414;
  color: #fff;
}

/* Gradient depth â adds richness to middle sections */
.bg-gradient-dark {
  background: linear-gradient(160deg, #0e0e0e 0%, #1b1b1b 100%);
  color: #fff;
}

/* Gold-tinted glow (hero / highlight) */
.bg-gold-glow {
  background: radial-gradient(circle at top left, rgba(202,165,107,0.12), transparent 60%),
              linear-gradient(180deg, #0d0d0d 0%, #151515 100%);
  color: #fff;
}

/* Glassy overlay look â great for testimonials or quotes */
.bg-glass-dark {
  background: rgba(255,255,255,0.03);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border: 1px solid rgba(202,165,107,0.1);
  color: #fff;
}

/* Soft vignette for emotional sections */
.bg-vignette {
  background: radial-gradient(circle at center, rgba(255,255,255,0.05) 0%, #0a0a0a 80%);
  color: #fff;
}

/* Warm black + gold undertone (subtle luxury feel) */
.bg-rich {
  background: linear-gradient(180deg, #111 0%, #0c0c0c 100%);
  box-shadow: inset 0 0 120px rgba(202,165,107,0.05);
  color: #fff;
}

/* Gradient separator band (use between two dark sections) */
.bg-separator {
  background: linear-gradient(90deg, rgba(202,165,107,0.2) 0%, rgba(202,165,107,0.05) 50%, rgba(202,165,107,0.2) 100%);
  height: 2px;
  width: 100%;
  opacity: 0.5;
}


/* ==== FLOATING CALL BUTTON ==== */
.floating-call-btn {
  position: fixed;
  bottom: 2rem;
  right: 2rem;
  display: flex;
  align-items: center;
  gap: 0.75rem;
  background: rgba(202,165,107,0.15);
  border: 1px solid rgba(202,165,107,0.3);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  color: #fff;
  text-decoration: none;
  padding: 0.75rem 1.25rem;
  border-radius: 50px;
  z-index: 1090;
  box-shadow: 0 0 20px rgba(0,0,0,0.3);
  transition: all 0.4s ease;
  overflow: hidden;
}

/* glowing pulse behind it */
.floating-call-btn::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: radial-gradient(circle at center, rgba(202,165,107,0.25), transparent 70%);
  opacity: 0;
  transform: scale(0.8);
  transition: opacity 0.5s ease, transform 0.5s ease;
  z-index: -1;
}

/* Icon */
.floating-call-btn .call-icon {
  background: rgba(202,165,107,0.3);
  color: #000;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.25rem;
  box-shadow: inset 0 0 10px rgba(0,0,0,0.5);
  transition: all 0.3s ease;
}

/* Text */
.floating-call-btn .call-text {
  display: flex;
  flex-direction: column;
  line-height: 1.2;
}

.floating-call-btn .label {
  font-size: 0.85rem;
  opacity: 0.8;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.floating-call-btn .number {
  font-size: 1.1rem;
  font-weight: 600;
  color: #caa56b;
}

/* Hover / focus */
.floating-call-btn:hover,
.floating-call-btn:focus {
  background: rgba(202,165,107,0.25);
  border-color: rgba(202,165,107,0.5);
  transform: translateY(-2px);
  box-shadow: 0 0 30px rgba(202,165,107,0.2);
}

.floating-call-btn:hover::before {
  opacity: 1;
  transform: scale(1);
}

.floating-call-btn:hover .call-icon {
  background: var(--bs-primary);
  color: #000;
  transform: scale(1.05);
}

/* Mobile Optimization */
@media (max-width: 768px) {
 .floating-call-btn {
    right: 1rem;
    bottom: 1.2rem;

    padding: 0.9rem;
    border-radius: 999px;

    background: linear-gradient(
      135deg,
      rgba(202,165,107,0.35),
      rgba(202,165,107,0.18)
    );

    border: 1px solid rgba(202,165,107,0.6);
    box-shadow:
      0 0 0 6px rgba(202,165,107,0.15),
      0 12px 35px rgba(0,0,0,0.45);

    animation: callPulse 3s ease-in-out infinite;
  }

  /* icon bigger & brighter */
  .floating-call-btn .call-icon {
    width: 52px;
    height: 52px;
    font-size: 1.25rem;

    background: var(--mem-primary);
    color: #000;

    box-shadow:
      0 0 0 6px rgba(202,165,107,0.25),
      inset 0 0 12px rgba(0,0,0,0.4);
  }

  /* text stays hidden on mobile */
  .floating-call-btn .call-text {
    display: none;
  }
}

/* 🔁 Subtle pulse animation */
@keyframes callPulse {
  0% {
    box-shadow:
      0 0 0 0 rgba(202,165,107,0.35),
      0 12px 35px rgba(0,0,0,0.45);
  }
  70% {
    box-shadow:
      0 0 0 12px rgba(202,165,107,0),
      0 12px 35px rgba(0,0,0,0.45);
  }
  100% {
    box-shadow:
      0 0 0 0 rgba(202,165,107,0),
      0 12px 35px rgba(0,0,0,0.45);
  }
}

/* Optional subtle pulse animation */
@keyframes callPulse {
  0% { box-shadow: 0 0 0 0 rgba(202,165,107,0.4); }
  70% { box-shadow: 0 0 0 15px rgba(202,165,107,0); }
  100% { box-shadow: 0 0 0 0 rgba(202,165,107,0); }
}

.floating-call-btn .call-icon {
  animation: callPulse 2.5s infinite ease-out;
}



/* ===============================
   đď¸ MEMORIS SHOP PAGE
   =============================== */
.mem-shop {
    background: linear-gradient(180deg, #0a0a0a 0%, #131313 40%, #1a1a1a 100%);
    color: #ffffff;
    padding: 50px 0; /* top/bottom */
}

@media (max-width: 768px) {
    .mem-shop {
        padding: 30px 0;
    }
}

/* ===== Breadcrumb ===== */
.mem-shop .breadcrumb {
  background: none;
  padding: 0;
  margin-bottom: 2rem;
}

.mem-shop .breadcrumb-item + .breadcrumb-item::before {
  color: rgba(202,165,107,0.4);
}

.mem-shop .breadcrumb-item a {
  background: linear-gradient(90deg, #d4af37, #e9c46a);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-weight: 600;
  text-decoration: none;
  transition: opacity 0.3s ease;
}

.mem-shop .breadcrumb-item a:hover {
  opacity: 0.8;
}

.mem-shop .breadcrumb-item.active {
  color: rgba(255,255,255,0.7);
}

/* ===== Sidebar ===== */
.mem-shop .shop-sidebar {
  background: rgba(20,20,20,0.4);
  backdrop-filter: blur(10px);
  border: 1px solid rgba(202,165,107,0.15);
  border-radius: 1rem;
  padding: 1.8rem;
  position: sticky;
  top: 90px;
}

.mem-shop .sidebar-title {
  font-family: 'Cinzel', serif;
  color: var(--mem-primary);
  font-weight: 600;
  font-size: 1.2rem;
  text-transform: uppercase;
  margin-bottom: 0.5rem;
}

.mem-shop .sidebar-desc {
  color: var(--mem-text-muted);
  font-size: 0.9rem;
  margin-bottom: 1.2rem;
}

.mem-shop .category-list li {
  margin-bottom: 0.6rem;
}

.mem-shop .category-list a {
  color: var(--mem-text-light);
  text-decoration: none;
  font-weight: 500;
  font-size: 0.95rem;
  display: block;
  padding: 0.4rem 0.6rem;
  border-radius: 0.3rem;
  transition: all 0.25s ease;
}

.mem-shop .category-list a:hover {
  background: rgba(202,165,107,0.1);
  color: var(--mem-primary);
  transform: translateX(3px);
}

/* ===== Shop Header ===== */
.mem-shop .shop-header {
  margin-bottom: 2rem;
}

.mem-shop .shop-title {
  font-family: 'Cinzel', serif;
  color: var(--mem-primary);
  text-transform: uppercase;
  font-size: 1.8rem;
  margin-bottom: 0.8rem;
}

/* Base text */
.mem-shop .shop-desc {
  color: var(--mem-text-muted);
  font-size: 1rem;
  line-height: 1.65;
  max-width: 100%;
  margin-bottom: 2rem;
}

/* Headings inside CKEditor */
.mem-shop .shop-desc h1,
.mem-shop .shop-desc h2,
.mem-shop .shop-desc h3,
.mem-shop .shop-desc h4,
.mem-shop .shop-desc h5,
.mem-shop .shop-desc h6 {
  font-family: 'Cinzel', serif;
  color: var(--mem-primary);
  line-height: 1.3;
  margin-top: 1.6rem;
  margin-bottom: .8rem;
  font-weight: 600;
}

/* Individual adjustments */
.mem-shop .shop-desc h1 { font-size: 2rem; }
.mem-shop .shop-desc h2 { font-size: 1.7rem; }
.mem-shop .shop-desc h3 { font-size: 1.45rem; }
.mem-shop .shop-desc h4 { font-size: 1.25rem; }
.mem-shop .shop-desc h5 { font-size: 1.1rem; }
.mem-shop .shop-desc h6 { font-size: 1rem; }

/* Paragraph spacing */
.mem-shop .shop-desc p {
  margin-bottom: 1rem;
}

/* Links */
.mem-shop .shop-desc a {
  color: var(--mem-primary);
  text-decoration: none;
  border-bottom: 1px solid rgba(202,165,107,0.4);
  transition: all .25s ease;
}
.mem-shop .shop-desc a:hover {
  color: #fff;
  border-bottom-color: var(--mem-primary);
}

/* Lists */
.mem-shop .shop-desc ul,
.mem-shop .shop-desc ol {
  margin: 1rem 0 1rem 1.5rem;
  padding-left: 1rem;
  color: var(--mem-text-light);
}

.mem-shop .shop-desc ul li,
.mem-shop .shop-desc ol li {
  margin-bottom: .6rem;
  line-height: 1.6;
}

/* Blockquote */
.mem-shop .shop-desc blockquote {
  margin: 1.5rem 0;
  padding: 1rem 1.2rem;
  background: rgba(255,255,255,0.04);
  border-left: 3px solid var(--mem-primary);
  border-radius: .5rem;
  font-style: italic;
  color: var(--mem-text-light);
}

/* Images */
.mem-shop .shop-desc img {
  max-width: 100%;
  height: auto;
  border-radius: .6rem;
  margin: 1.2rem 0;
  display: block;
}

/* Tables */
.mem-shop .shop-desc table {
  width: 100%;
  border-collapse: collapse;
  margin: 1.5rem 0;
  background: rgba(255,255,255,0.03);
  border-radius: .6rem;
  overflow: hidden;
}

.mem-shop .shop-desc th,
.mem-shop .shop-desc td {
  padding: .8rem 1rem;
  border-bottom: 1px solid rgba(255,255,255,0.05);
}

.mem-shop .shop-desc th {
  background: rgba(202,165,107,0.12);
  color: var(--mem-primary);
  font-weight: 600;
}

/* Horizontal rule */
.mem-shop .shop-desc hr {
  border: 0;
  border-bottom: 1px solid rgba(255,255,255,0.08);
  margin: 2rem 0;
}
/* ===== Product Cards ===== */
.mem-shop .product-card {
  position: relative;
  background: linear-gradient(
    to bottom right,
    rgba(255, 255, 255, 0.03) 0%,
    rgba(255, 255, 255, 0.03) 60%,
    rgba(202, 165, 107, 0.10) 100%
  ); /* đ¨ soft gold triangle in bottom-right */
  border: 1px solid rgba(202,165,107,0.15);
  border-radius: 1rem;
  overflow: hidden;
  transition: all 0.3s ease;
  display: flex;
  flex-direction: column;
  height: 100%;
  z-index: 0;
}

/* Optional hover enhancement for subtle motion */
.mem-shop .product-card:hover {
  transform: translateY(-4px);
  border-color: rgba(202,165,107,0.35);
  background: linear-gradient(
    to bottom right,
    rgba(255, 255, 255, 0.05) 0%,
    rgba(255, 255, 255, 0.05) 60%,
    rgba(202, 165, 107, 0.18) 100%
  );
  box-shadow: 0 0 12px rgba(202,165,107,0.1);
}
.mem-shop .product-image {
  background: rgba(0, 0, 0, 0.3);
  aspect-ratio: 16/9;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1rem; /* â adds visual breathing room */
  overflow: hidden;
  border-bottom: 1px solid rgba(202,165,107,0.1); /* subtle divider */
}

.mem-shop .product-image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  transition: transform 0.5s ease;
  filter: drop-shadow(0 2px 6px rgba(0,0,0,0.4)); /* â subtle lift */
}

.mem-shop .product-card:hover .product-image img {
  transform: scale(1.07);
}

.mem-shop .product-info {
  padding: 1.5rem 1rem;
  text-align: center;
  flex-grow: 1;
}

.mem-shop .product-title {
  font-family: 'Plus Jakarta Sans', sans-serif;
  font-weight: 600;
  color: #fff;
  font-size: 1.05rem;
  margin-bottom: 0.5rem;
  transition: color 0.25s ease;

  /* â Line clamp setup */
  display: -webkit-box;
  -webkit-line-clamp: 2;       /* limit to 2 lines */
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  min-height: 2.8em;           /* ensures same height visually */
  line-height: 1.4;
}

.mem-shop .product-card:hover .product-title {
  color: var(--mem-primary);
}

.mem-shop .product-price {
  color: var(--mem-primary);
  font-weight: 600;
  margin-bottom: 0.4rem;
}

.mem-shop .product-location {
  color: var(--mem-text-muted);
  font-size: 0.9rem;
  margin-bottom: 0.8rem;
}

/* đˇď¸ Product Badge Styles */
.mem-shop .product-badge {
  position: absolute;
  top: 1rem;
  left: 1rem;
  padding: 0.35rem 0.75rem;
  font-size: 0.75rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  border-radius: 50px;
  color: #000;
  z-index: 2;
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  box-shadow: 0 0 12px rgba(0, 0, 0, 0.2);
  transition: transform 0.3s ease, opacity 0.3s ease;
}

.mem-shop .product-badge.premium {
  background: linear-gradient(135deg, #d4af37, #caa56b);
}

.mem-shop .product-badge.deluxe {
  background: linear-gradient(135deg, #b8860b, #a1753d);
  color: #fff;
}

/* subtle pop on hover */
.mem-shop .product-card:hover .product-badge {
  transform: scale(1.05);
  opacity: 0.95;
}

/* ===== Responsive ===== */
@media (max-width: 992px) {
  .mem-shop .shop-sidebar {
    position: relative;
    top: auto;
    margin-bottom: 2rem;
  }
}



/* PAGE WRAPPER */
.mem-page {
  padding-top: 4rem;
}

/* HEADER SECTION */
.mem-page-header {
  padding: 3rem 0 2rem;
  background: rgba(255,255,255,0.03);
  border-bottom: 1px solid rgba(202,165,107,0.10);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}

/* BREADCRUMB */
.mem-page .breadcrumb-wrapper {
  margin-bottom: 1.2rem;
}

.mem-page .breadcrumb {
  background: transparent;
  margin: 0;
  padding: 0;
}

.mem-page .breadcrumb-item a {
  color: var(--mem-primary);
  font-weight: 500;
  text-decoration: none;
}

.mem-page .breadcrumb-item + .breadcrumb-item::before {
  color: rgba(255,255,255,0.3);
}

.mem-page .breadcrumb-item.active {
  color: rgba(255,255,255,0.7);
}

/* PAGE TITLE */
.mem-page .page-title {
  font-family: 'Cinzel', serif;
  font-size: 2.4rem;
  color: #fff;
  letter-spacing: 0.5px;
  margin: 0;
  position: relative;
  padding-bottom: 0.4rem;
}

.mem-page .page-title::after {
  content: "";
  width: 65px;
  height: 3px;
  background: linear-gradient(90deg, var(--mem-primary), transparent);
  display: block;
  margin-top: 0.6rem;
  border-radius: 2px;
}

/* CONTENT AREA */
.mem-page-content {
  padding: 3rem 0;
}

.mem-page .content-inner {
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(202,165,107,0.12);
  border-radius: 1rem;
  padding: 2.2rem;
  line-height: 1.75;
  font-size: 1.05rem;
  color: #ccc;
  box-shadow: 0 0 25px rgba(202,165,107,0.04);
}

/* TYPOGRAPHY INSIDE CONTENT */
.mem-page .content-inner h2,
.mem-page .content-inner h3 {
  font-family: 'Cinzel', serif;
  color: #fff;
  margin-top: 2.2rem;
  margin-bottom: 1rem;
}

.mem-page .content-inner p {
  margin-bottom: 1.4rem;
}

.mem-page .content-inner ul li {
  margin-bottom: 0.5rem;
}

/* MOBILE */
@media (max-width: 768px) {
  .mem-page .page-title {
    font-size: 1.9rem;
  }

  .mem-page .content-inner {
    padding: 1.5rem;
  }
}


.card-border-gold {
  padding: 1.8rem 2rem;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(202, 165, 107, 0.25);
  border-radius: 1rem;

  /* subtle golden glow from bottom-right */
  background-image: linear-gradient(
    to bottom right,
    rgba(255,255,255,0.02) 0%,
    rgba(202,165,107,0.12) 100%
  );

  box-shadow: 0 0 20px rgba(202, 165, 107, 0.05);
  margin-bottom: 1.5rem;
  transition: border-color 0.3s ease, box-shadow 0.3s ease, transform 0.25s ease;
  height:100%;
  
}

/* On hover (optional — remove if you don’t want it interactive inside pages) */
.card-border-gold:hover {
  border-color: rgba(202,165,107,0.45);
  box-shadow: 0 0 26px rgba(202,165,107,0.12);
  transform: translateY(-2px);
}

/* Typography inside */
.card-border-gold h2,
.card-border-gold h3,
.card-border-gold h4 {
  font-family: 'Cinzel', serif;
  color: #fff;
  margin-bottom: 1rem;
}

.card-border-gold p {
  color: #ccc;
  line-height: 1.7;
}

.card-border-gold ul li,
.card-border-gold ol li {
  margin-bottom: 0.4rem;
  color: #ccc;
}

/* Responsive Golden Video Frame */
.ts-video-iframe {
  width: 100%;
  aspect-ratio: 16 / 9;
  border: none;
  border-radius: 1rem;

  /* Dark background placeholder for loading videos */
  background: rgba(255,255,255,0.03);

  /* Gold border + glow */
  border: 1px solid rgba(202,165,107,0.35);
  box-shadow:
    0 0 18px rgba(202,165,107,0.08),
    inset 0 0 10px rgba(202,165,107,0.06);

  overflow: hidden;
  display: block;

  /* Smooth animation */
  transition: border-color 0.25s ease, box-shadow 0.25s ease, transform 0.25s ease;
}

/* Optional Hover */
.ts-video-iframe:hover {
  border-color: rgba(202,165,107,0.55);
  box-shadow:
    0 0 25px rgba(202,165,107,0.12),
    inset 0 0 14px rgba(202,165,107,0.10);
  transform: translateY(-2px);
}

/* Mobile Fixes */
@media (max-width: 576px) {
  .ts-video-iframe {
    border-radius: 0.8rem;
    box-shadow: 0 0 12px rgba(202,165,107,0.06);
  }
}



/*******************************************
          CONTACT PAGE (Memoris)
********************************************/
.mem-contact {
  padding-bottom: 4rem;
}

/* MAP */
.mem-contact .contact-map {
  width: 100%;
  height: 380px;
  border-bottom: 1px solid rgba(202,165,107,0.25);
  border-top: 1px solid rgba(202,165,107,0.25);
  background: #111;
  overflow: hidden;
}

/* TITLES */
.mem-contact .contact-title {
  font-family: 'Cinzel', serif;
  font-size: 2.2rem;
  color: #fff;
  margin-bottom: 1rem;
}

.mem-contact .contact-subtitle {
  color: #bbb;
  margin-bottom: 2rem;
  line-height: 1.6;
}

/* CONTACT INFO CARDS */
.mem-contact .contact-card {
  display: flex;
  gap: 1rem;
  align-items: flex-start;
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(202,165,107,0.22);
  border-radius: 0.9rem;
  padding: 1.2rem 1.4rem;
  margin-bottom: 1rem;
  backdrop-filter: blur(10px);
  transition: 0.3s;
}

.mem-contact .contact-card:hover {
  border-color: rgba(202,165,107,0.42);
  background: rgba(255,255,255,0.06);
}

.mem-contact .contact-card i {
  font-size: 1.4rem;
  color: var(--mem-primary);
  margin-top: 3px;
}

.mem-contact .contact-card h4 {
  font-family: 'Plus Jakarta Sans', sans-serif;
  color: #fff;
  margin-bottom: 10px;
  font-size: 1rem;
}

.mem-contact .contact-card p,
.mem-contact .contact-card a {
  color: #ccc;
  font-size: 0.95rem;
  line-height: 1.4;
  text-decoration: none;
}

/* FORM WRAPPER */
.mem-contact .contact-form-wrapper {
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(202,165,107,0.18);
  border-radius: 1rem;
  padding: 2rem;
  backdrop-filter: blur(10px);
}

.mem-contact .form-title {
  font-family: 'Cinzel', serif;
  color: #fff;
  margin-bottom: 1.5rem;
  font-size: 1.6rem;
}

/* FORM ELEMENTS */
.mem-contact-form label {
  color: #ddd;
  font-weight: 500;
  margin-bottom: 6px;
}

.mem-contact-form .form-control {
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(202,165,107,0.15);
  color: #fff;
  border-radius: 0.6rem;
  padding: 0.75rem;
  transition: 0.25s;
}

.mem-contact-form .form-control:focus {
  background: rgba(255,255,255,0.08);
  border-color: var(--mem-primary);
  box-shadow: 0 0 0 0.25rem rgba(202,165,107,0.15);
}

/* MOBILE */
@media (max-width: 768px) {
  .mem-contact .contact-title {
    font-size: 1.9rem;
  }
  .mem-contact .contact-form-wrapper {
    padding: 1.4rem;
  }
}

/* Darken the tiles without breaking the tile source */
#contact-map .leaflet-tile {
  filter: brightness(0.55) contrast(1.15) saturate(0.8);
}

#contact-map {
  filter: drop-shadow(0 0 10px rgba(0,0,0,0.6));
  border-radius: 12px;
  overflow: hidden;
}

.leaflet-marker-icon {
  filter: drop-shadow(0 0 6px rgba(202,165,107,0.55));
}

/* ================================
   LEAFLET POPUP CONTAINER
================================ */

.leaflet-popup-content-wrapper {
  background: rgba(20, 20, 20, 0.92) !important;
  border: 1px solid rgba(202,165,107,0.35) !important;
  border-radius: 14px !important;
  padding: 0 !important;
}

.leaflet-popup-content-wrapper .leaflet-popup-content {
  margin: 0 !important;
  padding: 18px 22px !important;
}

.leaflet-popup-tip {
  background: rgba(20, 20, 20, 0.92) !important;
  border: 1px solid rgba(202,165,107,0.35) !important;
}

/* ================================
   MEMORIS POPUP (Nested by parent)
================================ */

.mem-popup {
  font-family: 'Inter', sans-serif;
  color: #e9e6df;
}

/* Title */
.mem-popup .mem-popup-title {
  font-family: 'Cinzel', serif;
  font-size: 1.2rem;
  font-weight: 700;
  color: var(--mem-primary, #caa56b);
  margin-bottom: 6px;
}

/* Address text */
.mem-popup .mem-popup-address {
  font-size: 0.92rem;
  line-height: 1.45;
  color: #d1c8b1;
  margin-bottom: 14px;
}

/* Link button */
.mem-popup .mem-popup-link {
  display: inline-block;
  padding: 7px 14px;
  border-radius: 6px;
  background: linear-gradient(90deg, #caa56b, #a88954);
  color: #000;
  text-decoration: none;
  font-weight: 600;
  font-size: 0.85rem;
  transition: opacity 0.25s ease;
}

.mem-popup .mem-popup-link:hover {
  opacity: 0.85;
}


/* ===========================
   PREMIUM MEMORIS DROPDOWN
   =========================== */

.dropdown-menu {
  background: rgba(20, 20, 20, 0.92);
  backdrop-filter: blur(12px) saturate(150%);
  -webkit-backdrop-filter: blur(12px) saturate(150%);
  border: 1px solid rgba(202, 165, 107, 0.28);
  border-radius: 0.6rem;
  padding: 0.4rem 0;
  min-width: 180px;

  /* smooth animation */
  transform: translateY(6px);
  opacity: 0;
  visibility: hidden;
  transition: all 0.25s ease-out;
}

/* Show state */
.dropdown-menu.show {
  transform: translateY(0px);
  opacity: 1;
  visibility: visible;
}

/* Dropdown items */
.dropdown-menu .dropdown-item {
  padding: 0.55rem 1rem;
  font-size: 0.95rem;
  color: var(--mem-text-light);
  border-radius: 0.35rem;
  transition: all 0.25s ease;
  position: relative;
}

/* Hover effect with gold glow */
.dropdown-menu .dropdown-item:hover {
  background: rgba(202, 165, 107, 0.12);
  color: var(--mem-primary);
}

/* Optional subtle left gold bar on hover */
.dropdown-menu .dropdown-item:hover::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 3px;
  height: 60%;
  background: var(--mem-primary);
  border-radius: 2px;
}

/* Divider styling */
.dropdown-divider {
  border-top: 1px solid rgba(255,255,255,0.06);
  margin: 0.3rem 0;
}

/* Dropdown arrow fix (optional) */
.dropdown-toggle::after {
  border: none;
  font-family: "Font Awesome 6 Pro";
  content: "\f078"; /* fa-chevron-down */
  font-size: 0.65rem;
  margin-left: 6px;
  opacity: 0.7;
}

/* On open */
.show > .dropdown-toggle::after {
  transform: rotate(180deg);
  opacity: 1;
  transition: transform 0.25s ease;
}


/* ===============================
   MEMORIS SUBCATEGORY CARD
   =============================== */

.mem-subcategory-card {
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(202,165,107,0.18);
  border-radius: 1rem;
  padding: 1rem;
  text-align: center;
  height: 100%;
  overflow: hidden;
  position: relative;
  transition: all 0.35s ease;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}

/* Gold glow bottom-right */
.mem-subcategory-card::after {
  content: "";
  position: absolute;
  bottom: -2px;
  right: -2px;
  width: 70px;
  height: 70px;
  background: radial-gradient(circle at bottom right, rgba(202,165,107,0.35), transparent 65%);
  pointer-events: none;
}

/* Hover glow */
.mem-subcategory-card:hover {
  transform: translateY(-5px);
  border-color: rgba(202,165,107,0.35);
  background: rgba(255, 255, 255, 0.05);
}

/* IMAGE */
.mem-subcategory-card .msc-image {
  width: 100%;
  aspect-ratio: 4/3; /* consistent square-ish image */
  overflow: hidden;
  border-radius: 0.8rem;
  background: rgba(255,255,255,0.04);
  display: flex;
  align-items: center;
  justify-content: center;
}

.mem-subcategory-card .msc-image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  padding: 0.6rem;
  transition: transform 0.4s ease;
}

.mem-subcategory-card:hover .msc-image img {
  transform: scale(1.08);
}

/* INFO SECTION */
.mem-subcategory-card .msc-info {
  margin-top: 0.9rem;
}

.mem-subcategory-card .msc-title a {
  font-family: 'Plus Jakarta Sans', sans-serif;
  font-weight: 600;
  font-size: 1.05rem;
  color: #fff;
  text-decoration: none;
  transition: color 0.3s ease;
  line-height: 1.35;
}

/* Gold hover */
.mem-subcategory-card .msc-title a:hover {
  color: var(--mem-primary);
}

/* ===========================================
   MEMORIS PRODUCT CARD — FULLY WORKING VERSION
   =========================================== */

.mem-product-card {
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(202,165,107,0.15);
  border-radius: 1rem;
  padding: 1rem;
  height: 100%;
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: all 0.35s ease;
}

/* Gold corner glow */
.mem-product-card::after {
  content: "";
  position: absolute;
  bottom: -2px;
  right: -2px;
  width: 80px;
  height: 80px;
  background: radial-gradient(circle at bottom right, rgba(202,165,107,0.35), transparent 70%);
  pointer-events: none;
}

/* Hover elevation */
.mem-product-card:hover {
  transform: translateY(-6px);
  border-color: rgba(202,165,107,0.35);
  background: rgba(255,255,255,0.05);
}

/* IMAGE WRAPPER */
.mem-product-card .mpc-image {
  width: 100%;

  border-radius: .8rem;
  overflow: hidden;
  background: rgba(255,255,255,0.04);
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

/* Base image *//* PRODUCT IMAGE WRAPPER */
.mem-product-card .mpc-image {
  width: 100%;
  background: rgba(255,255,255,0.03);
  border-radius: 1rem;
  overflow: hidden;
  position: relative;
  padding: 0.75rem;
    display: flex;
    align-items: center;
    justify-content: center;
    height:368px;
}

/* STACKED IMAGES – flow layout */
.mem-product-card .mpc-rollover {
  position: relative;
}

/* Base image styles */
.mem-product-card .mpc-img {
  display: block;
  object-fit: contain;
  transition: opacity .35s ease, transform .35s ease;

      max-width: 100%;
    max-height: 368px;
}

/* Bottom image sits EXACTLY under top image */
.mem-product-card .mpc-img-bottom {
 display:none;
}

/* Hover effect */
.mem-product-card:hover .mpc-img-top {
  display:none;

}

.mem-product-card:hover .mpc-img-bottom {
    display:block;

}

/* INFO AREA */
.mem-product-card .mpc-info {
  margin-top: 1rem;
  display: flex;
  flex-direction: column;
  flex: 1;
}

/* TITLE */
.mem-product-card .mpc-title a {
  font-family: 'Plus Jakarta Sans', sans-serif;
  font-size: 1.1rem;
  font-weight: 600;
  color: #fff;
  text-decoration: none;
  line-height: 1.3;

  /* Clamp 2 lines */
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: 2.9em;
  transition: color .25s ease;
}

.mem-product-card .mpc-title a:hover {
  color: var(--mem-primary);
}

/* SHORT DESCRIPTION */
.mem-product-card .mpc-short {
  color: var(--mem-text-muted);
  font-size: .9rem;
  margin: .5rem 0;
  min-height: 3.2em;
}

/* PRICE BLOCK */
.mem-product-card .mpc-price {
  display: flex;
  align-items: center;
  gap: 0.7rem;
  margin: 0.6rem 0;
}

.mem-product-card .mpc-price-new {
  font-size: 1.2rem;
  font-weight: 700;
  color: var(--mem-primary);
}

.mem-product-card .mpc-price-old {
  color: #888;
  text-decoration: line-through;
  font-size: 0.95rem;
}

/* DELIVERY TAG */
.mem-product-card .mpc-delivery {
  margin-bottom: 0.8rem;
}

.mem-product-card .mpc-badge {
  background: rgba(202,165,107,0.18);
  color: #fff;
  padding: 0.35rem 0.7rem;
  border-radius: 50px;
  font-size: .85rem;
  display: inline-flex;
  align-items: center;
  gap: .4rem;
}

.mem-product-card .mpc-badge.disabled {
  background: rgba(255,0,0,0.25);
}

/* ACTION BUTTON */


/* PRODUCT CARD ACTION AREA */
.mem-product-card .mpc-actions {
  margin-top: auto;
  display: flex;
  flex-direction: column;
  gap: 0.45rem;
  padding-top: 0.75rem;
}

/* Compare button (outline gold) */
.mem-product-card .mpc-btn-compare {
  border: 1px solid var(--mem-primary);
  color: var(--mem-primary);
  background: transparent;
  transition: .3s ease;
}

.mem-product-card .mpc-btn-compare:hover {
  background: var(--mem-primary);
  color: #000;
}

/* Add to cart (solid gold) */
.mem-product-card .mpc-btn-cart {
  background: var(--mem-primary);
  border: none;
  color: #000;
  transition: .3s ease;
}

.mem-product-card .mpc-btn-cart:hover {
  background: var(--mem-primary-hover);
}

/* Details button (outline subtle) */
.mem-product-card .mpc-btn-details {
  border: 1px solid var(--mem-border);
  color: var(--mem-text-light);
  background: transparent;
  transition: .3s ease;
}

.mem-product-card .mpc-btn-details:hover {
  border-color: var(--mem-primary);
  color: var(--mem-primary);
}

/* Mobile adjustments */
@media (max-width: 576px) {
  .mem-product-card .mpc-actions {
    gap: 0.35rem;
  }
}



/* ===========================
  MEM PRODUCT CARD — MOBILE
  =========================== */
@media (max-width: 576px) {
  .mem-product-card {
   padding: 0.7rem;
   border-radius: 0.7rem;
  }
  .mem-product-card .mpc-image {
   height: 180px;
   padding: 0.4rem;
   border-radius: 0.6rem;
  }
  .mem-product-card .mpc-img {
   max-height: 180px;
  }
  .mem-product-card .mpc-info {
   margin-top: 0.7rem;
   padding: 0;
  }
  .mem-product-card .mpc-title a {
   font-size: 1rem;
   min-height: 2.2em;
  }
  .mem-product-card .mpc-short {
   font-size: 0.85rem;
   min-height: 0px;
  }
  .mem-product-card .mpc-price-new {
   font-size: 1rem;
  }
  .mem-product-card .mpc-price-old {
   font-size: 0.85rem;
  }
  .mem-product-card .mpc-badge {
   font-size: 0.8rem;
   padding: 0.25rem 0.6rem;
  }
}




/* OUTER WRAPPER */
/* FIXED SIDEBAR ON LEFT */
.mem-side-nav {
  position: fixed;
  bottom: 25px;           /* spacing from bottom */
  left: 25px;             /* spacing from left */
  width: 260px;
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(202,165,107,0.15);
  backdrop-filter: blur(10px);
  padding: 1.2rem;
  border-radius: 1rem;
  z-index: 20;
  max-height: calc(100vh - 140px);
  overflow-y: auto; /* scrollable if too tall */
  scrollbar-width: thin;
}

/* SCROLLBAR */
.mem-side-nav::-webkit-scrollbar {
  width: 6px;
}
.mem-side-nav::-webkit-scrollbar-thumb {
  background: rgba(202,165,107,0.4);
  border-radius: 10px;
}

/* MAIN CONTENT SHIFTED RIGHT */
.mem-shop-content {
  margin-left: 300px !important; /* space for sidebar */
}
/* TITLE */
.mem-side-nav .mem-side-nav-title {
  font-family: 'Cinzel', serif;
  color: var(--mem-primary);
  font-size: 1.1rem;
  margin-bottom: 1rem;
  display: flex;
  align-items: center;
  gap: .6rem;
}

/* LEVEL UL */
.msn-ul {
  list-style: none;
  margin: 0;
  padding-left: 0;
}

/* ITEM */
.msn-item {
  margin-bottom: .3rem;
}

/* HEADER */
.msn-item-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: rgba(255,255,255,0.02);
  border-radius: .6rem;
  border: 1px solid transparent;
  padding: .55rem .8rem;
  cursor: pointer;
  transition: all .25s ease;
}

/* LINK */
.msn-link {
  color: var(--mem-text-light);
  font-size: .95rem;
  font-weight: 500;
  text-decoration: none;
  flex: 1;
}

.msn-item-header:hover,
.msn-item.active > .msn-item-header {
  background: rgba(202,165,107,0.15);
  border-color: rgba(202,165,107,0.25);
}

.msn-item.active .msn-link,
.msn-item-header:hover .msn-link {
  color: var(--mem-primary);
}

/* TOGGLE ICON */
.msn-toggle {
  color: var(--mem-primary);
  margin-left: .5rem;
  transition: transform .3s ease;
}

.msn-item.open > .msn-item-header .msn-toggle {
  transform: rotate(180deg);
}

/* CHILDREN */
.msn-ul ul {
  margin-left: 1rem;
  padding-left: .6rem;
  margin-top: .4rem;
  border-left: 1px solid rgba(202,165,107,0.12);
  display: none;
}

.msn-item.open > ul {
  display: block;
}

/* SUBMENU LINKS */
.msn-ul ul .msn-item-header {
  background: transparent;
}

.msn-ul ul .msn-item-header:hover {
  background: rgba(255,255,255,0.04);
}

.msn-ul ul .msn-link {
  font-size: .9rem;
  color: var(--mem-text-muted);
}

.msn-ul ul .msn-item-header:hover .msn-link {
  color: var(--mem-primary);
}

/* RESPONSIVE */
@media (max-width: 991px) {
  .mem-side-nav {
    position: relative;
    width: 100%;
    left: 0;
    top: 0;
    max-height: unset;
    margin-bottom: 1.5rem;
  }

  .mem-shop-content {
    margin-left: 0 !important;
  }
}




/* WRAPPER */
.mem-cat-floating {
  position: fixed;
  bottom: 25px;
  left: 25px;
  z-index: 1500;
}

/* COLLAPSED BUTTON */
.mem-cat-toggle {
  background: rgba(202,165,107,0.2);
  color: var(--mem-primary);
  border: 1px solid rgba(202,165,107,0.3);
  padding: 10px 16px;
  font-weight: 600;
  border-radius: 50px;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  cursor: pointer;
  transition: all .3s ease;
}

.mem-cat-toggle:hover {
  background: rgba(202,165,107,0.35);
}

/* PANEL (hidden by default) */
.mem-cat-panel {
  position: absolute;
  bottom: 60px;
  left: 0;
  width: 280px;
  max-height: 70vh;
  overflow-y: auto;

  background: rgba(15,15,15,0.75);
  border: 1px solid rgba(202,165,107,0.15);
  border-radius: 1rem;
  backdrop-filter: blur(14px) saturate(160%);
  -webkit-backdrop-filter: blur(14px) saturate(160%);

  padding: 1rem;
  box-shadow: 0 8px 25px rgba(0,0,0,.45);

  opacity: 0;
  transform: translateY(20px);
  pointer-events: none;
  transition: all .35s ease;
}

/* ACTIVE STATE */
.mem-cat-floating.active .mem-cat-panel {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}

/* MOBILE */
@media (max-width: 991px) {
  .mem-cat-panel {
    width: calc(100vw - 40px);
    left: 0;
  }
}

/* MAIN WRAPPER */
.mem-account-header {
    background: rgba(20,20,20,0.45);
    border-bottom: 1px solid rgba(202,165,107,0.15);
    backdrop-filter: blur(14px) saturate(160%);
    -webkit-backdrop-filter: blur(14px) saturate(160%);
    padding: 1rem 0;
    margin-bottom: 2rem;
    z-index: 800;
}

/* CONTAINER */
.mem-account-header .container {
    position: relative;
}

/* TOGGLER BUTTON */
.mem-account-header .account-toggle-btn {
    background: rgba(255,255,255,0.05);
    border: 1px solid rgba(202,165,107,0.25);
    border-radius: 10px;
    padding: .45rem .75rem;
    color: var(--mem-primary);
    font-size: 1.2rem;
    transition: all .25s ease;
}

.mem-account-header .account-toggle-btn:hover {
    background: rgba(255,255,255,0.1);
}

/* MENU LIST */
.mem-account-header .mem-account-list {
    list-style: none;
    display: flex;
    align-items: center;
    gap: 1rem;
    padding-left: 0;
    margin: 0;
    flex-wrap: wrap;
}

/* ITEM */
.mem-account-header .mem-account-item {}

/* LINKS */
.mem-account-header .mem-account-item .mem-account-link {
    display: flex;
    align-items: center;
    gap: .6rem;
    padding: .55rem 1.1rem;
    border-radius: 10px;
    font-weight: 500;
    font-size: .95rem;
    color: var(--mem-text-muted);
    text-decoration: none;
    transition: all .25s ease;
}

.mem-account-header .mem-account-item .mem-account-link i {
    font-size: 1.1rem;
    opacity: .9;
}

/* ACTIVE + HOVER */
.mem-account-header .mem-account-item.active .mem-account-link,
.mem-account-header .mem-account-item .mem-account-link:hover {
    background: rgba(202,165,107,0.15);
    color: var(--mem-primary);
}

.mem-account-header .mem-account-item.active .mem-account-link i,
.mem-account-header .mem-account-item .mem-account-link:hover i {
    opacity: 1;
}

/* MOBILE FIXES */
@media (max-width: 992px) {
    .mem-account-header .account-toggle-btn {
        display: inline-flex;
        margin-bottom: 1rem;
    }

    .mem-account-header .mem-account-list {
        flex-direction: column;
        gap: .5rem;
        padding: .5rem 0;
    }

    .mem-account-header .mem-account-item .mem-account-link {
        width: 100%;
        padding: .75rem 1rem;
        border-radius: 8px;
        justify-content: flex-start;
    }
}


/* MAIN ACCOUNT CONTENT WRAPPER */
.mem-account-container {
    background: rgba(255,255,255,0.03);
    border: 1px solid rgba(202,165,107,0.15);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    padding: 2rem;
    border-radius: 1.2rem;
    margin-top: 1.5rem;
    margin-bottom: 3rem;
}

/* TITLE */
.mem-account-container .mac-title {
    font-family: 'Cinzel', serif;
    font-weight: 600;
    font-size: 2rem;
    color: var(--mem-primary);
    margin-bottom: 0.5rem;
    position: relative;
}

/* GOLD UNDERLINE */
.mem-account-container .mac-title::after {
    content: "";
    display: block;
    width: 60px;
    height: 3px;
    margin-top: 0.6rem;
    background: linear-gradient(90deg, rgba(202,165,107,0.9), rgba(202,165,107,0.2));
    border-radius: 4px;
}

/* DESCRIPTION UNDER TITLE */
.mem-account-container .mac-desc {
    color: var(--mem-text-muted);
    font-size: 1rem;
    margin-bottom: 2rem;
    max-width: 650px;
}

/* CONTENT AREA */
.mem-account-container .mac-content {
    color: var(--mem-text-light);
    font-size: 1rem;
    line-height: 1.6;
}

/* STYLE ALL HEADERS INSIDE CKEDITOR CONTENT */
.mem-account-container .mac-content h2,
.mem-account-container .mac-content h3,
.mem-account-container .mac-content h4,
.mem-account-container .mac-content h5 {
    color: var(--mem-primary);
    font-family: 'Cinzel', serif;
    margin-top: 2rem;
    margin-bottom: 1rem;
}

/* PARAGRAPHS */
.mem-account-container .mac-content p {
    margin-bottom: 1rem;
    color: var(--mem-text-muted);
}

/* FORMS INSIDE ACCOUNT CONTAINER */
.mem-account-container .mac-content .form-group label {
    color: var(--mem-primary);
    margin-bottom: .35rem;
}

.mem-account-container .mac-content .form-control {
    background: rgba(255,255,255,0.05);
    border: 1px solid rgba(202,165,107,0.25);
    color: #fff;
}

.mem-account-container .mac-content .form-control:focus {
    border-color: var(--mem-primary);
    box-shadow: 0 0 0 2px rgba(202,165,107,0.25);
}

/* RESPONSIVE */
@media (max-width: 768px) {
    .mem-account-container {
        padding: 1.5rem;
    }

    .mem-account-container .mac-title {
        font-size: 1.6rem;
    }
}

/* WRAPPER */
.mem-orders {
    margin-top: 2rem;
}

/* TITLE */
.mem-orders .mem-orders-title h2 {
    font-family: 'Cinzel', serif;
    color: var(--mem-primary);
    margin-bottom: 1.5rem;
    font-size: 1.8rem;
}

/* TABLE */
.mem-orders .mem-orders-table {
    background: rgba(255,255,255,0.03);
    border: 1px solid rgba(202,165,107,0.15);
    border-radius: 1rem;
    overflow: hidden;
}

.mem-orders .mem-orders-table thead {
    background: rgba(255,255,255,0.05);
}

.mem-orders .mem-orders-table th {
    color: var(--mem-primary);
    font-weight: 600;
    padding: 1rem .75rem;
}

.mem-orders .mem-orders-table td {
    color: var(--mem-text-light);
    padding: .85rem .75rem;
    vertical-align: middle;
}

/* PDF ICON */
.mem-orders .pdf-link {
    color: var(--mem-primary);
    margin-right: .3rem;
    font-size: 1rem;
}

/* BADGES */
.mem-orders .mem-badge {
    font-size: 0.8rem;
    padding: 0.35rem .55rem;
    border-radius: .4rem;
}

/* MOBILE ORDER CARD */
.mem-orders .mem-order-card {
    background: rgba(255,255,255,0.03);
    border: 1px solid rgba(202,165,107,0.15);
    border-radius: 1rem;
    padding: 1rem 1.2rem;
    margin-bottom: 1rem;
}

.mem-orders .mem-order-card .moc-row {
    display: flex;
    justify-content: space-between;
    padding: .3rem 0;
    color: var(--mem-text-muted);
}

.mem-orders .mem-order-card .moc-row strong {
    color: var(--mem-text-light);
}

/* MOBILE ACTIONS */
.mem-orders .moc-actions {
    margin-top: 1rem;
}

/* EMPTY STATE */
.mem-orders .mem-orders-empty {
    padding: 3rem 1rem;
    color: var(--mem-text-muted);
}

.mem-orders .mem-orders-empty i {
    font-size: 3rem;
    color: var(--mem-primary);
    margin-bottom: 1rem;
}


/* ------------------------------------------------------
   MEMORIS CART PAGE — PREMIUM TWO-COLUMN DESIGN (OPTION C)
-------------------------------------------------------*/

.mem-cart-page {
    padding: 2.5rem 0;
}

/* -------------------------- */
/* Header */
/* -------------------------- */
.mem-cart-page .mem-cart-header {
    margin-bottom: 2rem;
}

.mem-cart-page .mem-cart-header .mch-title {
    font-family: 'Cinzel', serif;
    color: var(--mem-primary);
    font-size: 2rem;
    margin-bottom: .25rem;
}

.mem-cart-page .mem-cart-header .mch-sub {
    color: var(--mem-text-muted);
    font-size: 1rem;
}

/* -------------------------- */
/* Empty Cart */
/* -------------------------- */
.mem-cart-page .mem-cart-empty {
    background: rgba(255,255,255,0.03);
    border: 1px solid rgba(202,165,107,0.15);
    padding: 2rem;
    text-align: center;
    border-radius: 1rem;
    margin-top: 2rem;
}

.mem-cart-page .mem-cart-empty i {
    font-size: 3rem;
    color: var(--mem-primary);
    margin-bottom: 1rem;
}

.mem-cart-page .mem-cart-empty h3 {
    color: #fff;
    margin-bottom: .5rem;
}

/* -------------------------- */
/* Cart layout grid */
/* -------------------------- */
.mem-cart-page .mem-cart-bottom {
    margin-top: 2rem;
    row-gap: 2rem;
}

/* -------------------------- */
/* TABLE (desktop) */
/* -------------------------- */
.mem-cart-page .mem-cart-table {
    background: rgba(255,255,255,0.02);
    border: 1px solid rgba(202,165,107,0.15);
    border-radius: 1rem;
    overflow: hidden;
}

.mem-cart-page .mem-cart-table thead tr {
    background: rgba(202,165,107,0.08);
}

.mem-cart-page .mem-cart-table th {
    padding: .9rem;
    color: var(--mem-primary);
    font-weight: 600;
    border-bottom: 1px solid rgba(202,165,107,0.15);
}

.mem-cart-page .mem-cart-table td {
    padding: 1rem .75rem;
    color: #ddd;
    vertical-align: middle;
}

/* product thumbnail */
.mem-cart-page .mem-cart-thumb {
    border-radius: .5rem;
    width: 90px;
}

/* remove icon */
.mem-cart-page .remove-cell a {
    color: #c0392b;
    font-size: 1.2rem;
    transition: .25s;
}
.mem-cart-page .remove-cell a:hover {
    opacity: .7;
}

/* Quantity box */
.mem-cart-page .mem-qty-box input {
    max-width: 70px;
    background: rgba(255,255,255,0.05);
    border: 1px solid rgba(202,165,107,0.25);
    color: #fff;
}

/* -------------------------- */
/* MOBILE CARDS */
/* -------------------------- */
.mem-cart-page .mem-cart-mobile .mem-cart-card {
    background: rgba(255,255,255,0.03);
    border: 1px solid rgba(202,165,107,0.12);
    border-radius: 1rem;
    margin-bottom: 1rem;
    overflow: hidden;
    padding: 1rem;
}

.mem-cart-page .mem-cart-mobile .mcc-top {
    display: flex;
    justify-content: space-between;
}

.mem-cart-page .mem-cart-mobile .mcc-img {
    width: 100px;
    border-radius: .5rem;
}

.mem-cart-page .mem-cart-mobile .mcc-remove {
    background: none;
    border: 0;
    color: #c0392b;
    font-size: 1.5rem;
}

.mem-cart-page .mem-cart-mobile .mcc-title {
    font-size: 1.1rem;
    color: #fff;
    margin-top: .5rem;
    margin-bottom: .5rem;
    font-weight: 600;
}

.mem-cart-page .mem-cart-mobile .mcc-row {
    display: flex;
    justify-content: space-between;
    border-bottom: 1px dashed rgba(202,165,107,0.2);
    padding: .4rem 0;
    color: #ddd;
}

/* -------------------------- */
/* COUPON BOX */
/* -------------------------- */
.mem-cart-page .mem-cart-coupon {
    background: rgba(255,255,255,0.03);
    padding: 1.5rem;
    border-radius: 1rem;
    border: 1px solid rgba(202,165,107,0.15);
}

.mem-cart-page .mem-cart-coupon h4 {
    font-family: 'Plus Jakarta Sans', sans-serif;
    font-weight: 600;
    color: var(--mem-primary);
    margin-bottom: 1rem;
}

/* -------------------------- */
/* TOTALS BOX (premium right box) */
/* -------------------------- */
.mem-cart-page .mem-cart-totals {
    background: rgba(255,255,255,0.05);
    padding: 1.5rem;
    border-radius: 1rem;
    border: 1px solid rgba(202,165,107,0.2);
}

.mem-cart-page .mem-cart-totals table {
    width: 100%;
    margin-bottom: 1rem;
}

.mem-cart-page .mem-cart-totals th {
    color: var(--mem-text-muted);
    font-weight: 500;
    padding: .5rem 0;
}

.mem-cart-page .mem-cart-totals td {
    color: #fff;
    text-align: right;
    font-weight: 600;
}

.mem-cart-page .mem-cart-totals tr.total td,
.mem-cart-page .mem-cart-totals tr.total th {
    color: var(--mem-primary);
    font-size: 1.15rem;
}

/* -------------------------- */
/* Minimum order warning */
/* -------------------------- */
.mem-cart-page .mem-cart-minorder {
    margin-top: 2rem;
    font-size: 1rem;
}

/* -------------------------- */
/* Related products */
/* -------------------------- */
.mem-cart-page .related-title {
    font-family: 'Cinzel', serif;
    color: var(--mem-primary);
    margin-top: 2.5rem;
    margin-bottom: 1.5rem;
    font-size: 1.7rem;
}

/* -------------------------- */
/* Responsive */
/* -------------------------- */
@media (max-width: 768px) {

    .mem-cart-page .mem-cart-header .mch-title {
        font-size: 1.5rem;
    }

    .mem-cart-page .mem-cart-totals,
    .mem-cart-page .mem-cart-coupon {
        padding: 1rem;
    }

    .mem-cart-page .related-title {
        font-size: 1.4rem;
    }
}
.mem-cart-page .mem-qty-box{
    display:inline-block;
    padding:10px;
}


/* ----------------------------------------------
   MEMORIS CHECKOUT — LUXURY DARK THEME 2025
-----------------------------------------------*/
.mem-checkout {
    padding: 2.5rem 0;
}

/* ----- HEADER ----- */
.mem-checkout .mem-co-header .mch-title {
    font-family: 'Cinzel', serif;
    color: var(--mem-primary);
    font-size: 2.2rem;
    margin-bottom: .5rem;
}
.mem-checkout .mem-co-header .mch-sub {
    color: var(--mem-text-muted);
    margin-bottom: 1.5rem;
}

/* ----- MAIN LAYOUT ----- */
.mem-checkout .mem-co-main {
    margin-top: 1rem;
}

/* ----- FORM BOXES ----- */
.mem-checkout .mem-co-box {
    background: rgba(255,255,255,0.03);
    border: 1px solid rgba(202,165,107,0.15);
    border-radius: 1rem;
    margin-bottom: 1.8rem;
    overflow: hidden;
}
.mem-checkout .mem-co-box .mcb-title {
    background: rgba(202,165,107,0.08);
    padding: 1rem 1.2rem;
    font-weight: 600;
    font-size: 1.1rem;
    color: var(--mem-primary);
    border-bottom: 1px solid rgba(202,165,107,0.12);
}
.mem-checkout .mem-co-box .mcb-body {
    padding: 1.4rem 1.2rem;
}

/* ----- FORM FIELDS ----- */
.mem-checkout .mem-co-box label {
    color: var(--mem-primary);
    font-weight: 500;
    margin-bottom: .25rem;
}
.mem-checkout .mem-co-box .form-control {
    background: rgba(255,255,255,0.05);
    border-width: 1px;
    border-style: solid;
    border-color: rgba(202,165,107,0.25);
    color: #fff;
}
.mem-checkout .mem-co-box .form-control:focus {
    border-color: var(--mem-primary);
    box-shadow: 0 0 0 2px rgba(202,165,107,0.25);
}

.form-control.is-valid, .was-validated .form-control:valid{
  border-color: #28a745;
}
.form-control.is-invalid, .was-validated .form-control:invalid{
  border-color: #dc3545;
}




/* ----- PAYMENT OPTIONS ----- */
.mem-checkout .mem-payment-item {
    display: flex;
    align-items: center;
    border: 1px solid rgba(202,165,107,0.15);
    padding: .7rem 1rem;
    border-radius: .6rem;
    margin-bottom: .6rem;
    background: rgba(255,255,255,0.03);
    cursor: pointer;
}
.mem-checkout .mem-payment-item input {
    margin-right: .6rem;
}
.mem-checkout .mem-payment-item .mpi-icon {
    width: 40px;
    margin-left: auto;
}

/* ----- SUMMARY (RIGHT COLUMN) ----- */
.mem-checkout .mem-co-summary {
    position: sticky;
    top: 90px;
    background: rgba(255,255,255,0.04);
    border: 1px solid rgba(202,165,107,0.18);
    padding: 1.5rem;
    border-radius: 1rem;
}
.mem-checkout .mem-co-summary h4 {
    font-family: 'Cinzel', serif;
    color: var(--mem-primary);
    margin-bottom: 1rem;
}

/* ----- TERMS ----- */
.mem-checkout .mem-co-terms {
    background: rgba(255,230,0,0.08);
    border: 1px solid rgba(202,165,107,0.35);
    font-weight: 600;
}

/* ----- RESPONSIVE ----- */
@media(max-width: 992px) {
    .mem-checkout .mem-co-summary {
        position: relative;
        top: unset;
        margin-top: 2rem;
    }
}

.mem-co-items .card-header h4 {
  font-family: "Cinzel", serif;
  color: var(--mem-primary);
}

.mem-co-item-list {
  padding: 0px;
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
}

.mem-co-item {
  display: flex;
  gap: 1rem;
  padding: 1rem;
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(202,165,107,0.12);
  border-radius: 0.8rem;
  backdrop-filter: blur(6px);
  transition: 0.25s;
}

.mem-co-item:hover {
  border-color: var(--mem-primary);
  background: rgba(202,165,107,0.07);
}

.mem-co-item-image img {
  width: 90px;
  height: 90px;
  object-fit: cover;
  border-radius: 0.6rem;
  border: 1px solid rgba(202,165,107,0.15);
}

.mem-co-item-info {
  flex: 1;
}

.mem-co-item-title a {
  font-size: 1.05rem;
  font-weight: 600;
  color: #fff;
  text-decoration: none;
}

.mem-co-item-title a:hover {
  color: var(--mem-primary);
}

.mem-co-item-meta small,
.mem-co-item-meta {
  color: var(--mem-text-muted);
  font-size: 0.85rem;
}

.mem-co-shipping {
  margin-top: 0.3rem;
}

.mem-co-item-price {
  min-width: 120px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  font-weight: 600;
  color: #fff;
}

.mem-co-price-single {
  font-size: 0.9rem;
  opacity: 0.8;
}

.mem-co-price-qty {
  font-size: 0.9rem;
  opacity: 0.6;
}

.mem-co-price-total {
  font-size: 1.1rem;
  color: var(--mem-primary);
  margin-top: 0.2rem;
}


/* ✅ Mobile */
@media (max-width: 768px) {
  .mem-co-item {
    flex-direction: column;
    text-align: center;
  }

  .mem-co-item-price {
    text-align: center !important;
  }
}

/* MODAL WRAPPER */
.mem-delivery-modal .modal-content {
  background: rgba(20, 20, 20, 0.75);
  backdrop-filter: blur(18px) saturate(160%);
  border: 1px solid rgba(202, 165, 107, 0.25);
  border-radius: 1rem;
  padding: 0.5rem;
}

/* HEADER */
.mem-delivery-modal .modal-header {
  border-bottom: 1px solid rgba(202,165,107,0.2);
}

.mem-delivery-modal .modal-title {
  color: var(--mem-primary);
  font-weight: 600;
  font-family: "Cinzel", serif;
}

/* FOOTER */
.mem-delivery-modal .modal-footer {
  border-top: 1px solid rgba(202,165,107,0.2);
}

/* SECTION TITLE */
.mem-delivery-modal .section-title-modal {
  font-size: 1rem;
  font-weight: 600;
  color: #fff;
}

/* DIVIDER */
.mem-delivery-modal .modal-divider {
  border-color: rgba(255,255,255,0.07);
  margin: 1.2rem 0;
}

/* SELECT2 inside modal */
.mem-delivery-modal .select2-container--default .select2-selection--single {
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(202,165,107,0.15);
  color: #fff;
  height: 42px;
}

/* Placeholder color */
.mem-delivery-modal .select2-selection__placeholder {
  color: #aaa !important;
}

/* Text inside select */
.mem-delivery-modal .select2-selection__rendered {
  color: #fff !important;
  line-height: 42px !important;
}

/* SELECT2 Dropdown */
.select2-dropdown {
  background: #1a1a1a;
  border: 1px solid rgba(202,165,107,0.25);
}

.select2-results__option {
  color: #fff;
}

.select2-results__option--highlighted {
  background: var(--mem-primary) !important;
  color: #000 !important;
}

/* SAVE BUTTON */
.mem-delivery-modal .modal-save-btn {
  background: var(--mem-primary);
  border-color: var(--mem-primary);
  color: #000;
  font-weight: 600;
  border-radius: 50px;
  padding: 0.6rem 1.4rem;
}

/* DATE container */
.mem-delivery-modal .delivery-date-container {
  padding: 0.8rem;
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(202,165,107,0.15);
  border-radius: 0.7rem;
}

/* HOURS text */
.mem-delivery-modal .show-delivery-hours {
  padding: 0.5rem 0;
  font-size: 0.9rem;
}
.delivery-date-container .pick-deliv-date{
    display:none;
}

.select2-container--open {
    z-index: 999999 !important;
}


.delivery-date-container{
    text-align:center;
}

.delivery-date-container .flatpickr-calendar.inline{
    margin:0 auto;
}

/* ===========================
   DELIVERY DATE CONTAINER
   (Memoris Dark Gold Style)
   =========================== */
.delivery-date-container {
  padding: 1rem 0;
}

/* Info text / hours message */
.delivery-date-container .show-delivery-hours {
  padding: 14px 18px;
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(202,165,107,0.2);
  border-radius: 12px;
  color: var(--mem-text-muted);
  font-size: 0.95rem;
  text-align: center;
  backdrop-filter: blur(8px);
  margin-top:1rem;
}

/* Delivery interval buttons */
.delivery-date-container .select-interval {
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(202,165,107,0.2);
  color: #fff;
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48%;
  margin: 6px 0;
  padding: 10px 14px;
  cursor: pointer;
  border-radius: 10px;
  transition: all 0.25s ease;
  backdrop-filter: blur(6px);
}

/* Hover effect */
.delivery-date-container .select-interval:hover {
  background: rgba(202,165,107,0.15);
  border-color: rgba(202,165,107,0.35);
  color: var(--mem-primary);
  transform: translateY(-2px);
  box-shadow: 0 0 12px rgba(202,165,107,0.12);
}

/* Active interval */
.delivery-date-container .select-interval.active {
  background: rgba(202,165,107,0.25);
  border-color: var(--mem-primary);
  color: #000;
  font-weight: 700;
  transform: translateY(-1px);
  box-shadow: 0 0 18px rgba(202,165,107,0.25);
}

/* MOBILE */
@media (max-width: 576px) {
  .delivery-date-container .select-interval {
    width: 100%;
    padding: 12px;
  }
}
/*===========================
    CART TOTALS TABLE
===========================*/
.cart-totals {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0 10px; /* spacing between rows */
  margin-top: 1rem;
  color: var(--mem-text-light);
  font-size: 1rem;
}

/* ROW – shared styles */
.cart-totals tr {
  background: rgba(255,255,255,0.03);
  border-radius: 12px;
  overflow: hidden;
}

/* apply rounded corners */
.cart-totals tr th,
.cart-totals tr td {
  padding: 14px 18px;
  border: none !important;
}

/* LEFT COLUMN (labels) */
.cart-totals tr th {
  font-weight: 600;
  color: var(--mem-text-muted);
  text-align: left;
  white-space: nowrap;
}

/* RIGHT COLUMN (prices) */
.cart-totals tr td {
  text-align: right;
  font-weight: 600;
  color: #fff;
}

/* SUBTOTAL */
.cart-totals tr.cart-subtotal {
  background: linear-gradient(90deg,
      rgba(202,165,107,0.08),
      rgba(255,255,255,0.02) 70%);
  border-left: 2px solid rgba(202,165,107,0.25);
}

/* TOTAL LINE – highlight */
.cart-totals tr.total {
  background: linear-gradient(90deg,
      rgba(202,165,107,0.2),
      rgba(255,255,255,0.03) 70%);
  border-left: 2px solid var(--mem-primary);
  box-shadow: 0 0 18px rgba(202,165,107,0.15);
}

.cart-totals tr.total .amount {
  font-size: 1.2rem;
  color: var(--mem-primary);
}

/* AMOUNTS */
.cart-totals .amount {
  display: inline-block;
  font-weight: 700;
  letter-spacing: 0.3px;
}

/* MOBILE OPTIMIZATIONS */
@media (max-width: 576px) {
  .cart-totals tr th,
  .cart-totals tr td {
    padding: 10px 12px;
    font-size: 0.9rem;
  }

  .cart-totals .amount {
    font-size: 1rem;
  }
}

/* ===========================
   CHECKOUT LOCATION + DATE
   =========================== */

/* Parent container */
.checkoutPage .location-select,
.checkoutPage .delivery-date {
  margin-bottom: 1.4rem;
}

/* LABELS */
.checkoutPage .location-select label,
.checkoutPage .delivery-date label {
  color: var(--mem-text-light);
  font-weight: 600;
  margin-bottom: 6px;
  display: block;
}

/* ========== LOCATION SELECT ========== */
.checkoutPage .location-select .loc-btn {
  display: block;
  padding: 14px 16px;
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(202,165,107,0.2);
  border-radius: 12px;
  color: #fff;
  font-weight: 500;
  letter-spacing: 0.3px;
  backdrop-filter: blur(10px);
  transition: all 0.25s ease;
}

.checkoutPage .location-select .loc-btn i {
  color: var(--mem-primary);
  margin-right: 6px;
  font-size: 1.1rem;
}

.checkoutPage .location-select .loc-btn:hover {
  background: rgba(202,165,107,0.12);
  border-color: rgba(202,165,107,0.35);
  transform: translateY(-2px);
  color: var(--mem-primary);
}

/* ========== DELIVERY DATE SELECTOR ========== */

.checkoutPage .delivery-date {
  padding: 14px 16px;
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(202,165,107,0.2);
  border-radius: 12px;
  backdrop-filter: blur(10px);
  transition: all 0.25s ease;
}

.checkoutPage .delivery-date.active {
  background: rgba(202,165,107,0.12);
  border-color: var(--mem-primary);
  box-shadow: 0 0 18px rgba(202,165,107,0.15);
}

/* Sub-container */
.checkoutPage .delivery-date .magic-delivery-date {
  margin-top: 8px;
  display: flex;
  align-items: center;
  gap: 10px;
}

/* Icons block */
.checkoutPage .delivery-date .magic-delivery-date .icons i {
  color: var(--mem-primary);
  font-size: 1.1rem;
  margin-right: 4px;
}

/* Text link */
.checkoutPage .delivery-date .magic-delivery-date .change-text a {
  color: #fff;
  font-weight: 500;
  border-bottom: 1px dashed var(--mem-primary);
  padding-bottom: 2px;
  transition: all 0.25s ease;
}

.checkoutPage .delivery-date .magic-delivery-date .change-text a:hover {
  color: var(--mem-primary);
}

/* ========== MOBILE OPTIMIZATIONS ========== */
@media (max-width: 576px) {
  .checkoutPage .location-select .loc-btn,
  .checkoutPage .delivery-date {
    padding: 12px 14px;
  }

  .checkoutPage .delivery-date .magic-delivery-date {
    flex-direction: column;
    align-items: flex-start;
    gap: 6px;
  }
}



/* =========================================================
   CHECKOUT SUMMARY — Memoris Gold + Glass Theme
   Everything nested under .checkout-summary
   ========================================================= */

.checkout-summary {
    padding-top: 20px;
}

/* Page Titles */
.checkout-summary .page-title {
    color: var(--mem-primary);
    font-family: "Cinzel", serif;
    font-size: 2rem;
}
.checkout-summary .page-subtitle {
    color: var(--mem-text-muted);
    margin-bottom: 15px;
}

/* Card */
.checkout-summary .cs-card {
    background: rgba(255,255,255,0.03);
    border: 1px solid rgba(202,165,107,0.15);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border-radius: 14px;
    overflow: hidden;
    margin-bottom: 25px;
}

/* Card Header */
.checkout-summary .cs-card-header {
    background: rgba(255,255,255,0.04);
    padding: 14px 18px;
    border-bottom: 1px solid rgba(202,165,107,0.15);
    font-size: 1.05rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: var(--mem-primary);
}
.checkout-summary .cs-card-header .edit-btn {
    color: var(--mem-text-muted);
    font-size: 0.9rem;
}
.checkout-summary .cs-card-header .edit-btn:hover {
    color: var(--mem-primary);
}

/* Card Body */
.checkout-summary .cs-card-body {
    padding: 18px;
}

/* Section Title */
.checkout-summary .cs-section-title {
    font-weight: 600;
    color: var(--mem-primary);
    margin: 8px 18px 6px;
}

/* Tables */
.checkout-summary .cs-table {
    width: 100%;
    margin: 0;
    color: var(--mem-text-light);
}
.checkout-summary .cs-table td,
.checkout-summary .cs-table th {
    padding: 10px 14px;
    border-bottom: 1px solid rgba(255,255,255,0.05);
}
.checkout-summary .cs-table tr:last-child td {
    border-bottom: 0;
}

/* Product row */
.checkout-summary .cs-prod {
    display: flex;
    align-items: center;
    gap: 12px;
}
.checkout-summary .cs-prod-img {
    width: 65px;
    height: 65px;
    border-radius: 8px;
    object-fit: cover;
    opacity: 0.9;
}
.checkout-summary .cs-prod-info a {
    color: #fff;
    font-weight: 600;
}
.checkout-summary .cs-prod-info a:hover {
    color: var(--mem-primary);
}
.checkout-summary .cs-prod-info .shipping-type {
    font-size: 0.8rem;
    opacity: 0.8;
}

/* Notes */
.checkout-summary .cs-notes {
    height: 200px;
    background: rgba(255,255,255,0.04);
    color: #fff;
    border: 1px solid rgba(202,165,107,0.2);
}

/* Footer Buttons */
.checkout-summary .checkout-actions {
    display: flex;
    justify-content: space-between;
    margin-top: 25px;
}
.checkout-summary .checkout-actions .btn {
    width: auto;
    padding: 12px 26px;
    font-size: 1.1rem;
}


/* ============================================================
   THEME 0 — Product Page (Memoris Premium)
   ============================================================ */


   /* ============================================================
   UNIVERSAL PRODUCT PAGE WRAPPER STYLING
============================================================ */

.product-page,
.product-page-pachet {
    background: radial-gradient(
        circle at top,
        rgba(202,165,107,0.08) 0%,
        rgba(0,0,0,0.35) 50%,
        rgba(0,0,0,0.85) 100%
    );
    padding-top: 40px;
    padding-bottom: 60px;
    min-height: 100vh;
}

/* Container spacing */
.product-page .container,
.product-page-pachet .container {
    padding-top: 20px;
    padding-bottom: 40px;
}

/* ============================================================
   CARD GOLD BORDER (used in all themes)
============================================================ */
.product-page .card-border-gold,
.product-page-pachet .card-border-gold {
    background: rgba(255,255,255,0.03);
    border: 1px solid rgba(202,165,107,0.3);
    border-radius: 12px;
    padding: 25px 30px;
    margin-top: 20px;
    margin-bottom: 30px;
    backdrop-filter: blur(6px);
}

/* Inside text */
.product-page .card-border-gold p,
.product-page-pachet .card-border-gold p {
    color: var(--mem-text-muted, #ccc);
    line-height: 1.7;
}

/* ============================================================
   PRODUCT GALLERY AREA
============================================================ */
.product-page .product-gallery,
.product-page-pachet .image {
    background: rgba(255,255,255,0.02);
    border-radius: 12px;
    padding: 20px;
    border: 1px solid rgba(202,165,107,0.15);
}

/* Thumbnail track */
.product-page .thumbs,
.product-page-pachet .thumbs {
    margin-top: 15px;
    padding: 0;
    display: flex;
    gap: 10px;
    overflow-x: auto;
    list-style: none;
}

.product-page .thumbs img,
.product-page-pachet .thumbs img {
    border-radius: 8px;
    border: 1px solid rgba(202,165,107,0.2);
    transition: 0.25s ease;
}

.product-page .thumbs img:hover,
.product-page-pachet .thumbs img:hover {
    border-color: #caa56b;
    transform: scale(1.05);
}

/* ============================================================
   PRODUCT SUMMARY AREA
============================================================ */
.product-page .summary,
.product-page-pachet .summary {
    background: rgba(255,255,255,0.02);
    padding: 25px;
    border: 1px solid rgba(202,165,107,0.2);
    border-radius: 12px;
    margin-bottom: 30px;
}

/* Price formatting */
.product-page .price,
.product-page-pachet .price {
    font-size: 2.2rem;
    font-weight: 700;
    font-family: "MemorisTitle", serif;
    color: #caa56b;
    margin-top: 15px;
}

.product-page .price span,
.product-page-pachet .price span {
    color: #fff;
}

/* ============================================================
   GOLD HR DIVIDER
============================================================ */
.gold-hr {
    height: 2px;
    width: 90px;
    background: #caa56b;
    margin: 40px auto;
    border-radius: 2px;
}

/* ============================================================
   RESPONSIVE SPACING
============================================================ */
@media (max-width: 768px) {
    .product-page,
    .product-page-pachet {
        padding-top: 25px;
        padding-bottom: 40px;
    }

    .product-page .summary,
    .product-page-pachet .summary {
        padding: 18px;
    }

    .product-page .card-border-gold,
    .product-page-pachet .card-border-gold {
        padding: 20px;
    }

    .product-page .price,
    .product-page-pachet .price {
        font-size: 1.8rem;
    }
}

.product-page.theme-0 {
    --pp-bg: rgba(255,255,255,0.03);
    --pp-border: rgba(202,165,107,0.25);
    --pp-primary: #caa56b;
}

/* Title */
.product-page.theme-0 .pp-title {
    text-align: center;
    font-size: 2rem;
    color: #fff;
}

/* Breadcrumb */
.product-page.theme-0 .pp-breadcrumb {
    background: transparent;
    justify-content: center;
}
.product-page.theme-0 .pp-breadcrumb a { color: var(--pp-primary); }

/* ------------------------------------------------------------
   GALLERY
------------------------------------------------------------ */

.product-page.theme-0 .pp-gallery {
    background: var(--pp-bg);
    border: 1px solid var(--pp-border);
    padding: 20px;
    border-radius: 14px;
}

.product-page.theme-0 .pp-thumbs {
    list-style: none;
    padding: 0;
    display: flex;
    gap: 10px;
    overflow-x: auto;
    margin-bottom: 15px;
}

.product-page.theme-0 .pp-thumbs img {
    width: 70px;
    height: 70px;
    border-radius: 8px;
    object-fit: cover;
    border: 1px solid var(--pp-border);
    cursor: pointer;
}

.product-page.theme-0 .pp-main-image{
    text-align: center;
}
.product-page.theme-0 .pp-main-image img {
    width: auto;
    border-radius: 12px;
    max-height:500px;
}

/* Guarantee Box */
.product-page.theme-0 .pp-guarantee {
    margin-top: 15px;
    background: rgba(255,255,255,0.05);
    padding: 12px;
    border-radius: 10px;
    color: #fff;
}

/* ------------------------------------------------------------
   SUMMARY (RIGHT SIDE)
------------------------------------------------------------ */

.product-page.theme-0 .pp-summary {
    background: var(--pp-bg);
    border: 1px solid var(--pp-border);
    padding: 20px;
    border-radius: 14px;
    color: #fff;
}

.product-page.theme-0 .pp-price {
    font-size: 2rem;
    color: var(--pp-primary);
}

.product-page.theme-0 .pp-shipping {
    font-size: 0.9rem;
    opacity: 0.8;
}

/* Variants */
.product-page.theme-0 .pp-variants .variant-group {
    margin-bottom: 18px;
}
.product-page.theme-0 .pp-variants .variant-title {
    font-weight: bold;
    margin-bottom: 8px;
    color: var(--pp-primary);
}
.product-page.theme-0 .pp-variants .variant-item {
    display: flex;
    align-items: center;
    gap: 8px;
    background: rgba(255,255,255,0.04);
    padding: 8px;
    border-radius: 8px;
    margin-bottom: 6px;
    cursor: pointer;
}
.product-page.theme-0 .pp-variants .variant-item .color {
    width: 20px;
    height: 20px;
    border-radius: 50%;
}

/* Add to cart */
.product-page.theme-0 .pp-buy {
    display: flex;
    gap: 10px;
    align-items: center;
    margin: 20px 0;
}

.product-page.theme-0 .pp-buy .pQty {
    width: 70px;
}

/* Short Description */
.product-page.theme-0 .pp-shortdesc {
    margin-top: 15px;
    color: var(--mem-text-muted);
}

/* Tags */
.product-page.theme-0 .pp-tags a {
    display: inline-block;
    padding: 4px 10px;
    background: rgba(202,165,107,0.2);
    border-radius: 8px;
    margin: 3px;
    color: #fff;
}

/* Note */
.product-page.theme-0 .pp-note {
    margin-top: 15px;
    background: rgba(255,255,255,0.05);
    padding: 12px;
    border-radius: 8px;
    color: #fff;
}

/* Description */
.product-page.theme-0 .pp-description {
    background: var(--pp-bg);
    padding: 20px;
    border: 1px solid var(--pp-border);
    border-radius: 12px;
    margin-top: 40px;
}


/* ============================================================
   THEME 1 — PACHET FUNERAR
   ============================================================ */

.theme-pachet {
    --gold: #caa56b;
    --gold-soft: rgba(202,165,107,0.25);
    --bg-soft: rgba(255,255,255,0.03);
    --text-muted: #cccccc;
}

/* Title */
.theme-pachet .ppp-title {
    text-align: center;
    font-size: 2.1rem;
    margin-bottom: 10px;
    color: #fff;
}

/* Breadcrumb */
.theme-pachet .ppp-breadcrumb {
    background: transparent;
}
.theme-pachet .ppp-breadcrumb a {
    color: var(--gold);
}

/* ------------------------------------------------------------
   TOP SECTION
------------------------------------------------------------ */

.theme-pachet .ppp-image img {
    border-radius: 12px;
    border: 1px solid var(--gold-soft);
}

.theme-pachet .ppp-desc {
    background: var(--bg-soft);
    border: 1px solid var(--gold-soft);
    padding: 20px;
    color: #fff;
    border-radius: 12px;
    font-size: 1rem;
}

/* Gold HR */
.theme-pachet .gold-hr {
    height: 2px;
    background: var(--gold);
    margin: 35px 0;
}

/* ------------------------------------------------------------
   PACKAGE BOXES
------------------------------------------------------------ */

.theme-pachet .package-box {
    background: var(--bg-soft);
    border: 1px solid var(--gold-soft);
    padding: 20px;
    border-radius: 12px;
    color: #fff;
    height:100%;
}

.theme-pachet .package-box .title {
    font-size: 1.2rem;
    font-weight: 600;
    color: var(--gold);
    margin-bottom: 12px;
}

.theme-pachet .package-box .inside {
    line-height: 1.6;
    opacity: 0.9;
}

/* ------------------------------------------------------------
   PRICE
------------------------------------------------------------ */

.theme-pachet .ppp-price-box {
    text-align: center;
    margin: 35px 0 20px 0;
}

.theme-pachet .ppp-price .amount {
    font-size: 2.4rem;
    font-weight: bold;
    color: var(--gold);
}

.theme-pachet .ppp-price small {
    display: block;
    margin-top: 5px;
    font-size: 0.8rem;
    color: var(--text-muted);
}

/* ------------------------------------------------------------
   TABS
------------------------------------------------------------ */

.theme-pachet .ppp-tabs .nav-link {
    font-weight: 500;
    color: #fff;
    border-radius: 8px 8px 0 0;
    background: rgba(255,255,255,0.05);
    margin-right: 5px;
    border: 1px solid var(--gold-soft);
}

.theme-pachet .ppp-tabs .nav-link.active {
    background: var(--gold);
    color: #000;
    border-color: var(--gold);
}

/* TAB CONTENT */
.theme-pachet .ppp-tab-content {
    background: var(--bg-soft);
    border: 1px solid var(--gold-soft);
    padding: 20px;
    border-radius: 0 0 12px 12px;
    color: #fff;
}

.theme-pachet .ppp-tab-content h5 {
    color: var(--gold);
    margin-top: 15px;
}

/* ------------------------------------------------------------
   RESPONSIVE
------------------------------------------------------------ */

@media (max-width: 768px) {
    .theme-pachet .ppp-title {
        font-size: 1.7rem;
    }
    .theme-pachet .package-box {
        margin-bottom: 20px;
    }
}



/* ============================================================
   THEME 2 — SICRIU
   ============================================================ */

.theme-sicriu {
    --gold: #caa56b;
    --gold-soft: rgba(202,165,107,0.25);
    --bg-soft: rgba(255,255,255,0.03);
    --text-muted: #cccccc;
    color: #fff;
}

/* ------------------------------------------------------------
   TITLE + BREADCRUMBS
------------------------------------------------------------ */

.theme-sicriu .sicriu-title {
    text-align: center;
    font-size: 2.1rem;
    margin-bottom: 10px;
    color: #fff;
}

.theme-sicriu .sicriu-breadcrumb {
    background: transparent;
}
.theme-sicriu .sicriu-breadcrumb a {
    color: var(--gold);
}

/* ------------------------------------------------------------
   TOP SECTION
------------------------------------------------------------ */

.theme-sicriu .sicriu-image img {
    border-radius: 12px;
    border: 1px solid var(--gold-soft);
}

.theme-sicriu .sicriu-desc {
    background: var(--bg-soft);
    padding: 20px;
    border-radius: 12px;
    border: 1px solid var(--gold-soft);
    font-size: 1rem;
}

/* ------------------------------------------------------------
   GOLD DIVIDER
------------------------------------------------------------ */

.theme-sicriu .sicriu-gold-hr {
    height: 2px;
    background: var(--gold);
    margin: 35px 0;
}

/* ------------------------------------------------------------
   DETAILS BOXES
------------------------------------------------------------ */

.theme-sicriu .sicriu-box {
    background: var(--bg-soft);
    border: 1px solid var(--gold-soft);
    padding: 20px;
    border-radius: 12px;
}

.theme-sicriu .sicriu-box .title {
    font-size: 1.3rem;
    color: var(--gold);
    font-weight: 600;
    margin-bottom: 10px;
}

.theme-sicriu .sicriu-box .inside {
    line-height: 1.65;
    color: #eee;
}

/* ------------------------------------------------------------
   PRICE
------------------------------------------------------------ */

.theme-sicriu .sicriu-price-box {
    text-align: center;
    margin: 40px 0 30px;
}

.theme-sicriu .sicriu-price .amount {
    font-size: 2.3rem;
    color: var(--gold);
    font-weight: bold;
}

.theme-sicriu .sicriu-price small {
    display: block;
    font-size: 0.8rem;
    color: var(--text-muted);
    margin-top: 5px;
}

/* ------------------------------------------------------------
   FAQ / TEXT BLOCK
------------------------------------------------------------ */

.theme-sicriu .sicriu-faq {
    background: var(--bg-soft);
    border: 1px solid var(--gold-soft);
    border-radius: 12px;
    padding: 25px;
    margin-top: 20px;
}

.theme-sicriu .sicriu-faq h5 {
    color: var(--gold);
    margin-top: 15px;
}

.theme-sicriu .sicriu-faq p {
    color: #ddd;
    line-height: 1.65;
    margin-bottom: 20px;
}

/* ------------------------------------------------------------
   RESPONSIVE
------------------------------------------------------------ */

@media (max-width: 768px) {
    .theme-sicriu .sicriu-title {
        font-size: 1.7rem;
    }
    .theme-sicriu .sicriu-box {
        margin-bottom: 20px;
    }
}


/* ============================================================
   THEME 3 — PARASTAS
============================================================ */

.theme-parastas {
    --gold: #caa56b;
    --gold-soft: rgba(202,165,107,0.25);
    --bg-soft: rgba(255,255,255,0.03);
    --text-muted: #cccccc;
    color: #fff;
}

/* TITLE ----------------------------------------------------- */

.theme-parastas .parastas-title {
    text-align: center;
    font-size: 2.2rem;
    margin-bottom: 10px;
}

/* BREADCRUMB ------------------------------------------------ */

.theme-parastas .parastas-breadcrumb {
    background: transparent;
}
.theme-parastas .parastas-breadcrumb a {
    color: var(--gold);
}

/* MAIN IMAGE ------------------------------------------------ */

.theme-parastas .parastas-main-image img {
    border-radius: 12px;
    border: 1px solid var(--gold-soft);
}

/* GOLD HR --------------------------------------------------- */

.theme-parastas .parastas-gold-hr {
    height: 2px;
    background: var(--gold);
    margin: 35px 0;
}

/* BOXES ----------------------------------------------------- */

.theme-parastas .parastas-box {
    background: var(--bg-soft);
    border: 1px solid var(--gold-soft);
    padding: 20px;
    border-radius: 12px;
}

.theme-parastas .parastas-box .title {
    color: var(--gold);
    font-size: 1.3rem;
    margin-bottom: 10px;
    font-weight: 600;
}

.theme-parastas .parastas-box .inside {
    color: #eee;
    line-height: 1.65;
}

/* FAQ -------------------------------------------------------- */

.theme-parastas .parastas-faq {
    background: var(--bg-soft);
    border: 1px solid var(--gold-soft);
    padding: 25px;
    border-radius: 12px;
    margin-top: 30px;
}

.theme-parastas .parastas-faq h5 {
    color: var(--gold);
}

.theme-parastas .parastas-faq p {
    color: #ddd;
    line-height: 1.6;
}

/* PRICE ------------------------------------------------------ */

.theme-parastas .parastas-price-box {
    text-align: center;
    margin-top: 30px;
}

.theme-parastas .parastas-price .amount {
    font-size: 2.3rem;
    color: var(--gold);
    font-weight: bold;
}

.theme-parastas .parastas-price small {
    color: var(--text-muted);
    display: block;
    margin-top: 5px;
}

/* RESPONSIVE ------------------------------------------------ */

@media (max-width: 768px) {
    .theme-parastas .parastas-title {
        font-size: 1.8rem;
    }
    .theme-parastas .parastas-box {
        margin-bottom: 20px;
    }
}


/* ================================================
   LOGIN PAGE — Premium Dark/Gold
================================================ */

.login-page {
    max-width: 420px;
    margin: 70px auto 30px;
    padding: 0 20px;
    text-align: center;
}

/* Title */
.login-page h1 {
    font-family: "Cinzel", serif;
    font-size: 2rem;
    color: #fff;
    font-weight: 600;
    margin-bottom: 25px;
    position: relative;
    display: inline-block;
}

.login-page h1::after {
    content: "";
    display: block;
    width: 70px;
    height: 3px;
    background: linear-gradient(90deg,
        rgba(202,165,107,0) 0%,
        rgba(202,165,107,0.7) 50%,
        rgba(202,165,107,0) 100%);
    margin: 10px auto 0;
    border-radius: 2px;
}

/* Error Message */
.login-page .login-alert {
    border-radius: 0.6rem;
    border: 1px solid rgba(255,0,0,0.3);
    background: rgba(120,0,0,0.35);
    color: #ffbcbc;
    font-weight: 500;
}

/* Form */
.login-page .login-form {
    background: rgba(255,255,255,0.04);
    border: 1px solid rgba(202,165,107,0.15);
    backdrop-filter: blur(12px);
    padding: 30px 25px;
    border-radius: 1rem;
    text-align: left;
    box-shadow: 0 0 20px rgba(0,0,0,0.25);
}

/* Inputs */
.login-page .login-form .form-control {
    background: rgba(255,255,255,0.05);
    border: 1px solid rgba(255,255,255,0.15);
    color: #fff;
    padding: 12px 15px;
    border-radius: 8px;
}

.login-page .login-form .form-control:focus {
    border-color: #caa56b;
    background: rgba(255,255,255,0.09);
    box-shadow: 0 0 0 2px rgba(202,165,107,0.25);
}

/* Password Toggle */
.login-page .login-form .password-wrapper .input-group-text {
    background: rgba(255,255,255,0.05);
    border: 1px solid rgba(255,255,255,0.15);
    cursor: pointer;
    color: #fff;
    border-left: none;
}

.login-page .login-form .password-wrapper .input-group-text:hover {
    background: rgba(255,255,255,0.12);
}

/* Submit button */
.login-page .login-btn {
    width: 100%;
    padding: 12px;
    font-weight: 600;
    border-radius: 50px;
    transition: 0.25s ease;
}

.login-page .login-btn:hover {
    filter: brightness(1.1);
}

/* Lost Password */
.lost-password-link {
    color: #caa56b;
    font-size: 0.95rem;
    text-decoration: none;
}

.lost-password-link:hover {
    color: #e7c78f;
}

/* Mobile */
@media (max-width: 480px) {
    .login-page {
        margin-top: 40px;
    }
    .login-page h1 {
        font-size: 1.7rem;
    }
}


/* ===================================================
   REGISTER PAGE — Premium Dark/Gold Theme
=================================================== */

.register-page {
    max-width: 720px;
    padding: 20px;
    margin: 50px auto;
}

/* Page Title */
.register-page h1 {
    font-family: "Cinzel", serif;
    font-size: 2.2rem;
    color: #fff;
    font-weight: 600;
    text-align: center;
    margin-bottom: 30px;
}

.register-page h1::after {
    content: "";
    display: block;
    width: 90px;
    height: 3px;
    background: linear-gradient(
        90deg,
        rgba(202,165,107,0) 0%,
        rgba(202,165,107,1) 50%,
        rgba(202,165,107,0) 100%
    );
    margin: 12px auto 0;
    border-radius: 3px;
}

/* Error Box */
.register-page .register-alert {
    border-radius: 0.8rem;
    border: 1px solid rgba(255,0,0,0.3);
    background: rgba(120,0,0,0.4);
    color: #ffdede;
    padding: 15px;
    font-size: 0.95rem;
}

/* Form Container */
.register-page .register-form {
    background: rgba(255,255,255,0.04);
    border: 1px solid rgba(202,165,107,0.15);
    backdrop-filter: blur(12px);
    padding: 30px 25px;
    border-radius: 1rem;
    box-shadow: 0 0 30px rgba(0,0,0,0.2);
}

/* Section Titles */
.register-page .section-title {
    font-family: "Cinzel", serif;
    color: #caa56b;
    font-size: 1.3rem;
    margin: 25px 0 10px;
    text-align: left;
    position: relative;
}

.register-page .section-title::after {
    content: "";
    display: block;
    width: 60px;
    height: 2px;
    background: #caa56b;
    margin-top: 4px;
}

/* Inputs */
.register-page .register-form .form-control {
    background: rgba(255,255,255,0.05);
    color: #fff;
    border: 1px solid rgba(255,255,255,0.15);
    padding: 12px;
    border-radius: 8px;
}

.register-page .register-form .form-control:focus {
    border-color: #caa56b;
    background: rgba(255,255,255,0.10);
    box-shadow: 0 0 0 2px rgba(202,165,107,0.25);
}

/* Buttons */
.register-page .register-btn {
    padding: 12px 30px;
    font-weight: 600;
    border-radius: 50px;
    transition: 0.25s ease;
}

.register-page .register-btn:hover {
    filter: brightness(1.15);
}

/* Checkbox */
.register-page .form-check-label {
    color: #ccc;
}

/* Mobile */
@media (max-width: 600px) {
    .register-page {
        margin-top: 30px;
    }
    .register-page h1 {
        font-size: 1.9rem;
    }
}


/* ==================================================
   POSTS PAGES — Dark/Gold Premium Theme
   Nested selectors: .posts-page .post-card .child
================================================== */

/* General page wrapper */
.posts-page,
.post-detail-page {
    padding: 40px 0;
}

/* Titles */
.posts-page h1,
.post-detail-page h1,
.posts-page-title {
    font-family: "Cinzel", serif;
    color: #fff;
    font-size: 2.2rem;
    text-align: center;
    margin-bottom: 25px;
}

.posts-page h1::after,
.posts-page-title::after,
.post-detail-page h1::after {
    content: "";
    display: block;
    width: 90px;
    height: 3px;
    background: linear-gradient(90deg, transparent, #caa56b, transparent);
    margin: 12px auto 0;
}

/* Breadcrumbs */
.posts-page .breadcrumb,
.post-detail-page .breadcrumb {
    background: none;
    padding: 0;
    margin-bottom: 30px;
}

.posts-page .breadcrumb a,
.post-detail-page .breadcrumb a {
    color: #caa56b;
}

/* =========================================
   POST CARD (LIST ITEM)
========================================= */
.posts-page .post-card,
.posts-page .post-category-section .post-card {
    display: flex;
    gap: 20px;
    padding: 20px;
    background: rgba(255,255,255,0.03);
    border: 1px solid rgba(202,165,107,0.18);
    border-radius: 14px;
    margin-bottom: 20px;
    transition: 0.25s ease;
}

.posts-page .post-card:hover {
    background: rgba(255,255,255,0.06);
}

/* Image section */
.posts-page .post-card .post-image img {
    width: 100%;
    max-width: 260px;
    border-radius: 10px;
}

/* Content */
.posts-page .post-card .post-content h3 {
    font-family: "Cinzel", serif;
    color: #fff;
    margin-bottom: 8px;
    font-size: 1.25rem;
}

.posts-page .post-card .post-content h3 a {
    color: #fff;
    text-decoration: none;
}

.posts-page .post-card .post-content p {
    color: #ccc;
    font-size: 0.95rem;
    line-height: 1.5;
}

.posts-page .post-card .read-more {
    color: #caa56b;
    font-weight: 600;
    font-size: 0.95rem;
    text-decoration: none;
}

/* Smaller version inside categories */
.posts-page .post-category-section .post-card.small .post-image img {
    max-width: 200px;
}

/* =========================================
   CATEGORY SECTIONS
========================================= */
.posts-page .post-category-section h2 {
    font-family: "Cinzel", serif;
    color: #caa56b;
    margin-bottom: 15px;
}

/* =========================================
   POST DETAIL PAGE
========================================= */
.post-detail-page .post-detail {
    background: rgba(255,255,255,0.03);
    padding: 30px;
    border-radius: 14px;
    border: 1px solid rgba(202,165,107,0.15);
}

.post-detail-page .post-body {
    color: #ddd;
    line-height: 1.7;
}

.post-detail-page .post-actions {
    float: right;
    margin-left: 20px;
}

/* Mobile */
@media (max-width: 768px) {
    .posts-page .post-card {
        flex-direction: column;
        text-align: center;
    }
    .posts-page .post-card .post-image img {
        max-width: 100%;
    }
}

/* Fix container layering */
.easy-autocomplete, 
.easy-autocomplete-container {
    z-index: 99999 !important;
}

/* Dropdown Box */
.easy-autocomplete-container ul {
    background: #1a1a1a !important;
    border: 1px solid #333 !important;
    border-radius: 8px !important;
    padding: 0 !important;
    margin: 0 !important;
    list-style: none !important;
    margin-top:5px !important;
}

/* Each LI */
.easy-autocomplete-container li {
    padding: 0 !important;
    border-bottom: 1px solid rgba(255,255,255,0.08) !important;
}

.easy-autocomplete-container li:last-child {
    border-bottom: none !important;
}

/* Inner wrapper */
.easy-autocomplete-container .eac-item {
    padding: 0 !important;
    cursor: pointer !important;
}

/* Main product template item */
.product-search-item {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;

    padding: 12px 14px !important;
    background: transparent !important;

    transition: background 0.2s ease !important;
}

/* Hover + keyboard-selected state */
.easy-autocomplete-container li.selected .product-search-item,
.product-search-item:hover {
    background: rgba(202,165,107,0.18) !important;
}

/* Image */
.product-search-item img {
    width: 55px !important;
    height: 55px !important;
    object-fit: cover !important;
    border-radius: 6px !important;
    border: 1px solid rgba(255,255,255,0.2) !important;
}

/* Product Name */
.product-search-item .name {
    display: block !important;
    font-size: 0.95rem !important;
    font-weight: 600 !important;
    color: #fff !important;
    line-height: 1.2 !important;
}

/* Description Wrapper */
.product-search-item .description {
    display: block !important;
    color: #ccc !important;
    font-size: 0.8rem !important;
    margin-top: 2px !important;
}

/* Price */
.product-search-item .price {
    color: #caa56b !important;
    font-weight: 700 !important;
    margin-left: 4px !important;
}

/* Fix clearfix */
.product-search-item .clearfix {
    display: none !important;
}

/* Mobile adjustments */
@media (max-width: 480px) {
    .product-search-item img {
        width: 42px !important;
        height: 42px !important;
    }
    .product-search-item {
        padding: 10px !important;
        gap: 10px !important;
    }
}

.easy-autocomplete-container ul li.selected {
    background: transparent !important;
    border: none !important;
    cursor: pointer !important;
}
.easy-autocomplete-container ul li,
.easy-autocomplete-container ul .eac-category {
    border: none !important;
    border-bottom: none !important;
    border-top: none !important;
    background: transparent !important;
}

/* MAIN WRAPPER */
.mem-pachete-slider-wrapper {
    position: relative;
    padding: 20px 0;
}

/* SWIPER */
.mem-pachete-slider {
    overflow: hidden;        /* KEEP hidden so slides don’t leak */
}

/* Slide auto height */
.mem-pachete-slider .swiper-slide {
    height: auto !important;
}

/* ARROWS – premium gold style */
.mem-pachete-slider-wrapper .swiper-button-next,
.mem-pachete-slider-wrapper .swiper-button-prev {
    width: 52px;
    height: 52px;
    border-radius: 50%;
    border: 2px solid rgba(234, 209, 129, 0.7); /* softer gold */
    background: rgba(20, 20, 20, 0.65);         /* more opaque, premium */
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    color: rgba(234, 209, 129, 0.9);
    transition: all .35s ease;
    top: 50%;
    transform: translateY(-50%);
    z-index: 20;

    /* subtle shadow */
    box-shadow: 0 4px 12px rgba(0,0,0,0.45);
}

/* Arrow icons */
.mem-pachete-slider-wrapper .swiper-button-next::after,
.mem-pachete-slider-wrapper .swiper-button-prev::after {
    font-size: 22px;
    font-weight: 600;
}

/* HOVER: luxury gold fill */
.mem-pachete-slider-wrapper .swiper-button-next:hover,
.mem-pachete-slider-wrapper .swiper-button-prev:hover {
    background: #caa56b;              /* full gold */
    border-color: #caa56b;
    color: #000;                      /* black icon */
    box-shadow: 0 6px 18px rgba(234, 209, 129, 0.5); /* gold glow */
}

/* ARROW POSITION OUTSIDE */
.mem-pachete-slider-wrapper .swiper-button-prev {
    left: -55px;
}

.mem-pachete-slider-wrapper .swiper-button-next {
    right: -55px;
}

/* Pagination dots */
.mem-pachete-slider-wrapper .swiper-pagination{
  display:block;
  text-align:center;
  padding-top:20px;
  position:relative;
  display:none;
}
.mem-pachete-slider-wrapper .swiper-pagination-bullet {
    background: #444;
    opacity: 1;
    width: 10px;
    height: 10px;
    transition: .3s ease;
    position:relative;
}

.mem-pachete-slider-wrapper .swiper-pagination-bullet-active {
    background: #caa56b !important;
    width: 14px;
    height: 14px;
}

/* MOBILE: hide arrows, show dots */
@media (max-width: 768px) {

    /* Hide arrows */
    .mem-pachete-slider-wrapper .swiper-button-next,
    .mem-pachete-slider-wrapper .swiper-button-prev {
        display: none !important;
    }

    /* Show pagination dots */
    .mem-pachete-slider-wrapper .swiper-pagination {
        display: block !important;
    }

    .mem-pachete-slider-wrapper .swiper-pagination-bullet {
        width: 10px;
        height: 10px;
        background: #666;
        opacity: 1;
    }

    .mem-pachete-slider-wrapper .swiper-pagination-bullet-active {
        background: #caa56b !important;
        width: 12px;
        height: 12px;
    }
}


/* Fix Swiper weird sliding */
.swiper {
    touch-action: pan-y !important;
}

/* Prevent double-tap zoom */
button, a {
    touch-action: manipulation;
}

/* 404 PAGE WRAPPER */
.page-404 {
    padding: 90px 0;
    background: linear-gradient(180deg, #0b0b0b, #111);
    color: #e6e6e6;
    text-align: center;
    font-family: inherit;
}

/* ICON */
.page-404 .error-icon {
    font-size: 85px;
    color: #caa56b;
    opacity: 0.95;
    margin-bottom: 25px;
}

/* TITLE */
.page-404 .error-title {
    font-size: 46px;
    font-weight: 700;
    color: #caa56b;
    text-transform: uppercase;
    margin-bottom: 15px;
    letter-spacing: 1px;
}

/* SUBTITLE */
.page-404 .error-subtitle {
    font-size: 19px;
    color: #c8c8c8;
    margin-bottom: 35px;
    line-height: 1.5;
}

/* SEARCH BOX */
.page-404 .error-search .input-group {
    max-width: 600px;
    margin: 0 auto;
}

.page-404 .error-search input {
    background: #161616;
    border: 1px solid #2a2a2a;
    color: #fff;
    padding-left: 15px;
    height: 50px;
    border-radius: 8px 0 0 8px !important;
    transition: .3s ease;
}

.page-404 .error-search input:focus {
    background: #1b1b1b;
    border-color: #caa56b;
    box-shadow: none !important;
}

.page-404 .error-search input::placeholder {
    color: #777;
}

/* SEARCH BUTTON */
.page-404 .error-search button {
    background: #caa56b;
    border: none;
    color: #000;
    font-weight: 600;
    width: 60px;
    border-radius: 0 8px 8px 0 !important;
    transition: .3s ease;
}

.page-404 .error-search button:hover {
    background: #d8c073;
}

/* HOME BUTTON */
.page-404 .error-home-btn {
    display: inline-block;
    margin-top: 35px;
    padding: 12px 28px;
    font-size: 16px;
    border-radius: 8px;
    border: 1px solid #caa56b;
    background: transparent;
    color: #caa56b;
    transition: .3s ease;
}

.page-404 .error-home-btn:hover {
    background: #caa56b;
    color: #000;
}

/* RECOMMENDED TITLE */
.page-404 .recommended-title {
    margin-top: 60px;
    margin-bottom: 25px;
    font-size: 30px;
    font-weight: 700;
    color: #caa56b;
}

/* PRODUCT ITEMS */
.page-404 .product-list .product {
    background: #151515;
    border: 1px solid rgba(255,255,255,0.06);
    border-radius: 6px;
    padding: 15px;
    transition: .3s ease;
}

.page-404 .product-list .product:hover {
    transform: translateY(-3px);
    border-color: #caa56b;
}

/* RESPONSIVE TWEAKS */
@media(max-width: 576px) {
    .page-404 {
        padding: 60px 0;
    }

    .page-404 .error-title {
        font-size: 32px;
        letter-spacing: 0.5px;
    }

    .page-404 .error-icon {
        font-size: 60px;
    }
}



.mem-page .content-inner .accordion-header{
  padding:0px;
  margin:0px;
}

/* ===== Accordion Container ===== */
.acordeon-servicii {
  margin-top: 20px;
}

/* ===== Accordion Item ===== */
.acordeon-servicii .accordion-item {
  background: var(--mem-bg-dark);
  border: 1px solid var(--mem-border);
  margin-bottom: 10px;
  border-radius: 6px;
  overflow: hidden;
}

/* ===== Accordion Button ===== */
.acordeon-servicii .accordion-button {
  background: var(--mem-bg-deep);
  color: var(--mem-primary);
  font-weight: 600;
  font-family: 'Cinzel', serif;
  padding: 15px;
  text-transform: none;
  letter-spacing: 0.5px;
}

/* Icon inside header */
.acordeon-servicii .accordion-button i {
  color: var(--mem-primary);
}

/* Remove Bootstrap focus halo */
.acordeon-servicii .accordion-button:focus {
  box-shadow: none !important;
}

/* Collapsed state */
.acordeon-servicii .accordion-button.collapsed {
  background: var(--mem-bg-dark);
  color: var(--mem-primary);
}

/* Hover */
.acordeon-servicii .accordion-button:hover {
  background: var(--mem-bg-deep);
  color: var(--mem-primary-hover);
}

/* ===== Accordion Body ===== */
.acordeon-servicii .accordion-body {
  background: var(--mem-bg-dark);
  color: var(--mem-text-muted);
  padding: 20px 25px;
  line-height: 1.65;
}

/* Lists inside body */
.acordeon-servicii ol,
.acordeon-servicii ul {
  margin-top: 10px;
  padding-left: 20px;
}

.acordeon-servicii strong {
  color: var(--mem-primary);
}

/* ===== Accordion Arrow – Default (Collapsed) ===== */
.acordeon-servicii .accordion-button::after {
  filter: brightness(0) saturate(100%) invert(76%) sepia(45%) 
          saturate(456%) hue-rotate(355deg) brightness(92%);
  /* Matches your gold tone */
}

/* ===== Arrow on Hover ===== */
.acordeon-servicii .accordion-button:hover::after {
  filter: brightness(0) saturate(100%) invert(83%) sepia(60%)
          saturate(510%) hue-rotate(356deg) brightness(105%);
}

/* ===== Arrow When Open (Expanded) ===== */
.acordeon-servicii .accordion-button:not(.collapsed)::after {
  filter: brightness(0) saturate(100%) invert(76%) sepia(42%)
          saturate(520%) hue-rotate(355deg) brightness(98%);
}

/* Smooth animation for rotation & color */
.acordeon-servicii .accordion-button::after {
  transition: transform .3s ease, filter .3s ease;
}

/* MOBILE ONLY */
@media (max-width: 575px) {

  /* Make tabs scroll horizontally */
  .nav-tabs-mem {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
    gap: 6px;
    padding-bottom: 6px;
    border-bottom: 1px solid var(--mem-border);
  }

  /* Hide scrollbars */
  .nav-tabs-mem::-webkit-scrollbar {
    display: none;
  }

  /* Individual tab links */
  .nav-tabs-mem .nav-link {
    padding: 10px 16px;
    font-size: 0.9rem;
    border: none !important;
    background: transparent;
    color: var(--mem-text-muted);
    border-bottom: 2px solid transparent !important;
  }

  /* Active tab */
  .nav-tabs-mem .nav-link.active {
    color: var(--mem-bg-dark) !important;
    border-bottom: 2px solid var(--mem-primary) !important;
  }
}


.compare-toast {
    position: fixed;
    bottom: 20px;
    right: 20px;
    background: #141414;
    padding: 12px 18px;
    border-radius: 8px;
    color: #fff;
    opacity: 0;
    transform: translateY(20px);
    transition: .3s ease;
    z-index: 99999;
    border-left: 4px solid var(--mem-primary);
    font-size: 14px;
}

.compare-toast.show {
    opacity: 1;
    transform: translateY(0);
}

.compare-toast.error {
    border-left-color: #d9534f;
}


/* ===== DEFAULT DESKTOP COMPARE BAR ===== */
.compare-bar {
    position: fixed;
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%);
    background: var(--mem-bg-deep);
    color: var(--mem-text-light);
    border: 1px solid var(--mem-primary);
    padding: 12px 20px;
    border-radius: 10px;
    box-shadow: 0 8px 20px rgba(0,0,0,0.35);
    z-index: 9999;
    min-width: 260px;
    opacity: 0;
    pointer-events: none;
    transition: 0.35s ease;
}

.compare-bar.show {
    opacity: 1;
    pointer-events: auto;
    bottom: 30px;
}

.compare-bar .compare-bar-inner {
    display: flex;
    align-items: center;
    gap: 15px;
}

.compare-bar .compare-count {
    font-size: 15px;
    color: var(--mem-primary);
    white-space: nowrap;
}

/* ===== MOBILE — ICON + NUMBER ONLY ===== */
@media (max-width: 576px) {

    .compare-bar {
        width: auto;
        min-width: auto;
        padding: 10px 16px;
        border-radius: 30px;
        bottom: 25px;
        cursor: pointer;
    }

    /* Hide everything except icon + number */
    .compare-bar .compare-bar-inner {
        flex-direction: row;
        align-items: center;
        justify-content: center;
        gap: 8px;
    }

    .compare-bar button {
        display: none !important;
    }

    .compare-bar .compare-text {
        display: none !important;
    }
}


.mem-compare .compare-title {
    font-family: 'Cinzel', serif;
    text-transform: uppercase;
    font-size: 2rem;
    color: var(--mem-primary);
}

.mem-compare .compare-subtitle {
    color: var(--mem-text-muted);
    font-size: 1.1rem;
}

.compare-table-wrapper {
    border-radius: 12px;
    border: 1px solid var(--mem-border);
    background: var(--mem-bg-dark);
    padding: 20px;
}

.compare-table-wrapper .compare-table {
    color: var(--mem-text-light);
}

.compare-table-wrapper .compare-table thead th {
    text-align: center;
    padding-bottom: 20px;
}

.compare-table-wrapper .compare-product-head img.compare-img {
    width: 120px;
    height: auto;
    border-radius: 8px;
    margin-bottom: 10px;
}

.compare-table-wrapper .compare-product-name {
    font-size: 1rem;
    margin: 10px 0;
    min-height: 48px;
}

.compare-table-wrapper .compare-price {
    color: var(--mem-primary);
    font-weight: 700;
    margin-bottom: 5px;
}

.compare-table-wrapper .compare-label {
    color: var(--mem-primary);
    width: 180px;
    font-weight: bold;
    vertical-align: middle;
}

.compare-table-wrapper .compare-table td {
    vertical-align: middle;
}

.compare-table-wrapper .remove-from-compare {
    color: #ff6b6b;
    border-color: #ff6b6b;
}

.remove-from-compare:hover {
    background: #ff6b6b;
    color: #000;
}

@media(max-width: 768px) {
    .compare-product-head img.compare-img {
        width: 80px;
    }
}







/* ================================
   MEMORIS – Cookie Dialog (Premium)
   ================================ */

#gdpr-cookie-message {
    position: fixed;
    bottom: 20px;
    right: 20px;
    z-index: 99999;
    max-width: 360px;

    background: rgba(20, 20, 20, 0.92);
    backdrop-filter: blur(6px);
    border: 1px solid var(--mem-border);
    border-radius: 14px;

    padding: 22px;
    color: var(--mem-text-light);
    font-family: "Inter", sans-serif;

    box-shadow: 0 8px 30px rgba(0,0,0,0.6);
    animation: fadeInUp 0.45s ease forwards;
}

/* Fade-in animation */
@keyframes fadeInUp {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}

/* Titles */
#gdpr-cookie-message h4 {
    font-size: 20px;
    font-weight: 600;
    margin-bottom: 8px;
    color: var(--mem-primary);
}

#gdpr-cookie-message h5 {
    font-size: 15px;
    font-weight: 500;
    margin: 12px 0 6px;
    color: var(--mem-primary);
}

/* Text */
#gdpr-cookie-message p,
#gdpr-cookie-message ul {
    font-size: 14px;
    color: var(--mem-text-muted);
    line-height: 1.55;
}

/* Links */
#gdpr-cookie-message a {
    color: var(--mem-primary);
    text-decoration: none;
    border-bottom: 1px dotted var(--mem-primary);
    transition: 0.25s ease;
}

#gdpr-cookie-message a:hover {
    color: var(--mem-primary-hover);
    border-bottom-color: var(--mem-primary-hover);
}

/* Checkbox styling */
#gdpr-cookie-message input[type="checkbox"] {
    width: 16px;
    height: 16px;
    accent-color: var(--mem-primary);
}

/* Buttons container */
#gdpr-cookie-message .cookie-buttons {
    margin-top: 18px;
    display: flex;
    gap: 10px;
    justify-content: flex-end;
}

/* Universal Button Style */
#gdpr-cookie-message button {
    appearance: none;
    border: none;
    cursor: pointer;

    padding: 9px 16px;
    font-size: 14px;
    font-weight: 600;
    border-radius: 8px;

    transition: 0.25s ease;
}

/* Accept Button */
#gdpr-cookie-message #gdpr-cookie-accept {
    background: var(--mem-primary);
    color: #000;
}
#gdpr-cookie-message #gdpr-cookie-accept:hover {
    background: var(--mem-primary-hover);
}

/* Settings Button */
#gdpr-cookie-message #gdpr-cookie-advanced {
    background: transparent;
    border: 1px solid var(--mem-primary);
    color: var(--mem-primary);
}
#gdpr-cookie-message #gdpr-cookie-advanced:hover {
    background: var(--mem-primary);
    color: #000;
}

/* Disabled state */
#gdpr-cookie-message button:disabled {
    opacity: 0.5;
    cursor: not-allowed;
}

/* ====================
   Mobile Optimization
   ==================== */
@media (max-width: 576px) {
    #gdpr-cookie-message {
        right:10px;
       width:90%;
        bottom: 15px;
        padding: 18px;
    }

    #gdpr-cookie-message .cookie-buttons {
        flex-direction: column;
        justify-content: stretch;
    }

    #gdpr-cookie-message button {
        width: 100%;
    }
}


.mags-clamp {
    color: var(--mem-text-muted);
    font-size: 0.95rem;
    line-height: 1.7;
}

/* text clamp */
.mags-clamp-inside {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: var(--clamp-rows, 5);
    overflow: hidden;
}

/* expanded */
.mags-clamp.is-expanded .mags-clamp-inside {
    -webkit-line-clamp: unset;
    overflow: visible;
}

/* toggle */
.mags-clamp-toggle {
    display: inline-block;
    margin-top: .5rem;
    padding: 0;
    background: none;
    border: 0;
    color: var(--mem-primary);
    font-weight: 500;
    cursor: pointer;
}

.mags-clamp-toggle:hover {
    color: var(--mem-primary-hover);
    text-decoration: underline;
}

.pickup-info {
  display: flex;
  gap: 0.75rem;
  padding: 0.75rem 1rem;
  border-radius: 10px;
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(202,165,107,0.25);
  color: #fff;
  font-size: 0.9rem;
  line-height: 1.4;
}

.pickup-info .pi-icon {
  flex: 0 0 38px;
  height: 38px;
  border-radius: 50%;
  background: rgba(202,165,107,0.25);
  color: #000;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.1rem;
}

.pickup-info .pi-title {
  font-weight: 600;
  color: var(--mem-primary);
  margin-bottom: 0.15rem;
}

.pickup-info .pi-hours {
  font-size: 0.85rem;
  color: #ddd;
}

.pickup-info .pi-note {
  font-size: 0.8rem;
  color: var(--mem-text-muted);
  margin-top: 0.2rem;
}

/* Mobile */
@media (max-width: 576px) {
  .pickup-info {
    padding: 0.6rem 0.8rem;
    gap: 0.6rem;
  }
  .pickup-info .pi-icon {
    width: 34px;
    height: 34px;
    font-size: 1rem;
  }
}