/* ═══════════════════════════════════════════════════════════════
   JOURY HEADER — Navigation + brand bar
   ═══════════════════════════════════════════════════════════════ */

.joury-header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: var(--z-nav);
  transition: background var(--t), box-shadow var(--t), transform var(--t);
  will-change: transform;
}

/* Transparent over hero */
.joury-header--transparent {
  background: transparent;
}

/* Scrolled state */
.joury-header--scrolled {
  background: rgba(13, 6, 8, 0.88);
  backdrop-filter: blur(20px) saturate(1.4);
  -webkit-backdrop-filter: blur(20px) saturate(1.4);
  border-bottom: 1px solid rgba(255,255,255,.06);
  box-shadow: 0 4px 32px rgba(0,0,0,.3);
}

.cosmetique-theme .joury-header--scrolled,
.cosmetique-page .joury-header--scrolled {
  background: rgba(255, 248, 242, 0.92);
  border-bottom-color: rgba(196,154,108,.15);
  box-shadow: 0 4px 24px rgba(196,154,108,.12);
}

/* Hidden on scroll down */
.joury-header--hidden { transform: translateY(-100%); }

/* ─── Nav inner ──────────────────────────────────────────────────── */
.joury-nav {
  position: relative; /* Allows mega menu to span exactly the nav container width */
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 70px;
  padding-inline: var(--gutter);
  max-width: var(--container);
  margin-inline: auto;
  gap: 24px;
}

li.has-mega-menu {
  position: static;
}

/* ─── Logo ───────────────────────────────────────────────────────── */
.joury-logo {
  flex-shrink: 0;
  display: flex;
  align-items: center;
}
.joury-logo img {
  height: 42px;
  width: auto;
  object-fit: contain;
}
.joury-logo__text {
  font-family: var(--font-display);
  font-size: 1.7rem;
  font-weight: 700;
  color: var(--brand-red);
  letter-spacing: -.02em;
}
.joury-logo__text span { color: var(--brand-caramel); }

/* ─── Department switcher ────────────────────────────────────────── */
.joury-dept-switch {
  display: flex;
  align-items: center;
  gap: 4px;
  background: var(--bg-glass, rgba(255,255,255,.06));
  border: 1px solid var(--border, rgba(255,255,255,.08));
  border-radius: var(--radius-pill);
  padding: 4px;
  backdrop-filter: blur(8px);
}

.joury-dept-switch__btn {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 7px 16px;
  border-radius: var(--radius-pill);
  font-size: 13px;
  font-weight: 600;
  color: var(--text-2, rgba(255,255,255,.5));
  cursor: pointer;
  transition: all var(--t-fast);
  text-decoration: none;
  border: none;
  background: none;
}
.joury-dept-switch__btn:hover { color: var(--text-1, #fff); }
.joury-dept-switch__btn.is-active {
  background: var(--accent);
  color: #fff;
  box-shadow: 0 2px 12px rgba(200,16,46,.3);
}

/* ─── Right actions ──────────────────────────────────────────────── */
.joury-nav__actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
}

.joury-icon-btn {
  position: relative;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: var(--bg-glass, rgba(255,255,255,.06));
  border: 1px solid var(--border, rgba(255,255,255,.08));
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--text-1, #fff);
  text-decoration: none;
  transition: all var(--t-fast);
  cursor: pointer;
}

/* Fallback to forcibly hide the account icon if it persists from cache or parent theme */
.joury-nav__actions .joury-icon-btn[aria-label*="compte" i],
.joury-nav__actions a[href*="my-account"] {
  display: none !important;
}
  align-items: center;
  justify-content: center;
  color: var(--text-1, #fff);
  font-size: 17px;
  cursor: pointer;
  transition: all var(--t-fast);
  text-decoration: none;
}
.joury-icon-btn:hover {
  background: var(--accent);
  border-color: var(--accent);
  color: #fff;
  transform: scale(1.06);
}

.joury-cart-count {
  position: absolute;
  top: -4px;
  right: -4px;
  min-width: 18px;
  height: 18px;
  background: var(--brand-red);
  color: #fff;
  border-radius: var(--radius-pill);
  font-size: 10px;
  font-weight: 800;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 4px;
  border: 2px solid var(--bg, #0D0608);
}

/* ─── Search toggle ───────────────────────────────────────────────── */
.joury-search-wrap {
  position: relative;
}

.joury-search-form {
  position: absolute;
  top: 50%;
  right: calc(100% + 8px);
  transform: translateY(-50%) scaleX(0);
  transform-origin: right center;
  display: flex;
  align-items: center;
  background: rgba(13, 6, 8, 0.92);
  border: 1px solid rgba(255,255,255,.12);
  border-radius: var(--radius-pill);
  backdrop-filter: blur(20px);
  overflow: hidden;
  width: 0;
  opacity: 0;
  pointer-events: none;
  transition: width 0.3s var(--ease), opacity 0.25s var(--ease), transform 0.3s var(--ease);
}

.joury-search-form.is-open {
  width: clamp(200px, 30vw, 360px);
  opacity: 1;
  pointer-events: auto;
  transform: translateY(-50%) scaleX(1);
}

.cosmetique-theme .joury-search-form,
.cosmetique-page .joury-search-form {
  background: rgba(255, 248, 242, 0.95);
  border-color: rgba(196,154,108,.25);
}

.joury-search-form__input {
  flex: 1;
  padding: 10px 16px;
  background: transparent;
  border: none;
  outline: none;
  font-family: var(--font-sans);
  font-size: 14px;
  color: #1A0E08;
  min-width: 0;
  -webkit-appearance: none;
  appearance: none;
}
.joury-search-form__input::placeholder { color: rgba(26,14,8,.5); }

.joury-search-form__submit {
  width: 38px;
  height: 38px;
  margin: 3px;
  flex-shrink: 0;
  background: var(--accent);
  border: none;
  border-radius: var(--radius-pill);
  color: #fff;
  font-size: 16px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background var(--t-fast);
}
.joury-search-form__submit:hover { background: var(--accent-hover); }

@media (max-width: 600px) {
  .joury-search-form {
    position: fixed;
    top: 60px;
    right: var(--gutter);
    left: var(--gutter);
    transform: scaleX(1) translateY(-8px);
    transform-origin: top right;
    width: auto !important;
    opacity: 0;
  }
  .joury-search-form.is-open {
    opacity: 1;
    transform: scaleX(1) translateY(0);
  }
}


.joury-hamburger {
  display: none;
  width: 42px;
  height: 42px;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 5px;
  background: none;
  border: none;
  cursor: pointer;
  padding: 0;
}
.joury-hamburger span {
  width: 22px;
  height: 2px;
  background: var(--text-1, #fff);
  border-radius: 2px;
  transition: all var(--t-fast);
  display: block;
}
.joury-hamburger.is-open span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.joury-hamburger.is-open span:nth-child(2) { opacity: 0; }
.joury-hamburger.is-open span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

/* ─── Body offset ────────────────────────────────────────────────── */
/* Override any Astra dynamic header padding — we handle this ourselves */
html body { padding-top: 70px !important; }
html body.joury-home { padding-top: 0 !important; }

/* Admin bar pushes the fixed header down */
.admin-bar .joury-header { top: 32px; }
html .admin-bar body { padding-top: calc(70px + 32px) !important; }
html body.joury-home.admin-bar { padding-top: 32px !important; }

@media screen and (max-width: 782px) {
  .admin-bar .joury-header { top: 46px; }
  html .admin-bar body { padding-top: calc(60px + 46px) !important; }
  html body.joury-home.admin-bar { padding-top: 46px !important; }
}

@media (max-width: 768px) {
  .joury-dept-switch { display: none; }
  .joury-hamburger { display: flex; }
  .joury-nav { height: 60px; }
  html body { padding-top: 60px !important; }
  html body.joury-home { padding-top: 0 !important; }
}

/* ═══════════════════════════════════════════════════════════════
   FOOTER
   ═══════════════════════════════════════════════════════════════ */

.joury-footer {
  background: #0A0406;
  border-top: 1px solid rgba(255,255,255,.05);
  color: rgba(255,255,255,.5);
}

/* ─── Top section ────────────────────────────────────────────────── */
.joury-footer__top {
  display: grid;
  grid-template-columns: 1.4fr 1fr 1fr 1.2fr;
  gap: 48px;
  padding: 72px 0 56px;
}

/* Brand col */
.joury-footer__brand {}
.joury-footer__brand .joury-logo { margin-bottom: 16px; display: inline-block; }
.joury-footer__brand-desc {
  font-size: 13px;
  line-height: 1.7;
  color: rgba(255,255,255,.35);
  max-width: 220px;
  margin-bottom: 22px;
}
.joury-footer__socials { display: flex; gap: 8px; }
.joury-footer__social {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(255,255,255,.07);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 15px;
  transition: all var(--t-fast);
  text-decoration: none;
  color: rgba(255,255,255,.5);
}
.joury-footer__social:hover {
  background: var(--brand-red);
  border-color: var(--brand-red);
  color: #fff;
  transform: scale(1.1);
}

/* Link columns */
.joury-footer__col-title {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: rgba(255,255,255,.25);
  margin-bottom: 18px;
}
.joury-footer__links {
  list-style: none;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.joury-footer__links a {
  font-size: 13px;
  color: rgba(255,255,255,.45);
  transition: color var(--t-fast);
  text-decoration: none;
}
.joury-footer__links a:hover { color: #fff; }

/* Contact list */
.joury-footer__contact-list {
  list-style: none;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.joury-footer__contact-list li {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  font-size: 13px;
  color: rgba(255,255,255,.45);
  line-height: 1.5;
}
.joury-footer__contact-list a {
  color: rgba(255,255,255,.45);
  text-decoration: none;
  transition: color var(--t-fast);
  word-break: break-all;
}
.joury-footer__contact-list a:hover { color: #fff; }
.joury-footer__contact-icon { font-size: 16px; flex-shrink: 0; margin-top: 1px; }

/* ─── Bottom bar ────────────────────────────────────────────────── */
.joury-footer__bottom {
  border-top: 1px solid rgba(255,255,255,.05);
  padding: 22px 0;
}
.joury-footer__bottom-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}
.joury-footer__copy { font-size: 12px; color: rgba(255,255,255,.2); }
.joury-footer__legal {
  display: flex;
  gap: 20px;
}
.joury-footer__legal a { font-size: 12px; color: rgba(255,255,255,.25); text-decoration: none; transition: color var(--t-fast); }
.joury-footer__legal a:hover { color: rgba(255,255,255,.6); }

/* ═══════════════════════════════════════════════════════════════
   MOBILE NAV DRAWER
   ═══════════════════════════════════════════════════════════════ */

.joury-mobile-nav {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  width: min(320px, 85vw);
  background: #160B0E;
  border-left: 1px solid rgba(255,255,255,.07);
  z-index: calc(var(--z-nav) + 10);
  transform: translateX(100%);
  transition: transform 0.35s var(--ease);
  display: flex;
  flex-direction: column;
  overflow-y: auto;
}
.joury-mobile-nav.is-open { transform: translateX(0); }

.joury-mobile-nav__inner {
  display: flex;
  flex-direction: column;
  height: 100%;
  padding: 24px;
}
.joury-mobile-nav__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 32px;
}
.joury-mobile-nav__close {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.08);
  color: rgba(255,255,255,.6);
  font-size: 16px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all var(--t-fast);
}
.joury-mobile-nav__close:hover { background: var(--brand-red); border-color: var(--brand-red); color: #fff; }

.joury-mobile-nav__links {
  display: flex;
  flex-direction: column;
  gap: 4px;
  flex: 1;
}
.joury-mobile-nav__link {
  display: block;
  padding: 12px 16px;
  border-radius: var(--radius-md);
  font-size: 15px;
  font-weight: 600;
  color: rgba(255,255,255,.7);
  text-decoration: none;
  transition: all var(--t-fast);
}
.joury-mobile-nav__link:hover { background: rgba(255,255,255,.04); color: #fff; }
.joury-mobile-nav__link--sm { font-size: 13px; color: rgba(255,255,255,.4); }

.joury-mobile-nav__sep {
  height: 1px;
  background: rgba(255,255,255,.05);
  margin: 12px 0;
}

.joury-mobile-nav__backdrop {
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,.6);
  backdrop-filter: blur(4px);
  z-index: calc(var(--z-nav) + 9);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.35s var(--ease);
}
.joury-mobile-nav.is-open ~ .joury-mobile-nav__backdrop {
  opacity: 1;
  pointer-events: auto;
}

/* ─── Footer responsive ─────────────────────────────────────────── */
@media (max-width: 1024px) {
  .joury-footer__top { grid-template-columns: 1fr 1fr; gap: 40px; }
}
@media (max-width: 600px) {
  .joury-footer__top { grid-template-columns: 1fr; gap: 32px; padding: 48px 0 40px; }
  .joury-footer__bottom-inner { flex-direction: column; text-align: center; }
}

/* ═══════════════════════════════════════════════════════════════
   PRIMARY NAVIGATION MENU
   ═══════════════════════════════════════════════════════════════ */
.joury-nav__center {
  display: flex;
  align-items: center;
  gap: 32px;
  flex: 1;
  justify-content: center;
}

.joury-nav__menu {
  display: none;
}

@media (min-width: 1025px) {
  .joury-nav__menu {
    display: block;
  }
}

.joury-menu-list {
  display: flex;
  gap: 24px;
  list-style: none;
  padding: 0;
  margin: 0;
}

.joury-menu-list li a {
  color: var(--text-2, rgba(255,255,255,.7));
  text-decoration: none;
  font-size: 14px;
  font-weight: 500;
  transition: color var(--t-fast);
}

.joury-menu-list li a:hover,
.joury-menu-list li.current-menu-item > a {
  color: var(--text-1, #fff);
}

/* ═══════════════════════════════════════════════════════════════
   MEGA MENU & DROPDOWN
   ═══════════════════════════════════════════════════════════════ */
.joury-menu-list > li.has-mega-menu {
  position: relative; /* Anchor the floating card to this li */
}

.joury-menu-list > li {
  position: relative;
  display: flex;
  align-items: center;
  height: 100%;
}

.joury-menu-link {
  position: relative;
  display: flex;
  align-items: center;
  gap: 6px;
  height: 70px;
  padding: 0 12px;
  color: var(--text-2, rgba(255,255,255,.7));
  text-decoration: none;
  font-size: 14px;
  font-weight: 600;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

/* Animated hover underline */
.joury-menu-link::after {
  content: "";
  position: absolute;
  bottom: 20px;
  left: 12px;
  right: 12px;
  height: 2px;
  border-radius: 2px;
  background: var(--brand-red);
  transform: scaleX(0);
  transform-origin: right;
  transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}
.cosmetique-theme .joury-menu-link::after,
.cosmetique-page .joury-menu-link::after {
  background: var(--brand-caramel);
}

.joury-menu-link:hover {
  color: var(--text-1, #fff);
  transform: translateY(-2px);
  text-shadow: 0 4px 12px rgba(255,255,255,0.2);
}
.joury-menu-link:hover::after,
.joury-menu-list li.current-menu-item > .joury-menu-link::after {
  transform: scaleX(1);
  transform-origin: left;
}

/* ── Floating card mega menu ── */
.joury-mega-menu {
  position: absolute;
  top: calc(100% + 10px);
  left: 50%;
  transform: translateX(-50%) translateY(8px);
  width: 560px;

  background: rgba(16, 9, 11, 0.97);
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 20px;
  box-shadow:
    0 4px 6px rgba(0,0,0,.12),
    0 20px 60px rgba(0,0,0,.55),
    0 0 0 1px rgba(255,255,255,.04) inset;
  backdrop-filter: blur(28px) saturate(1.3);
  -webkit-backdrop-filter: blur(28px) saturate(1.3);

  opacity: 0;
  visibility: hidden;
  transition: opacity .28s var(--ease), transform .28s var(--ease), visibility .28s;
  z-index: 200;
  overflow: hidden;
}

/* Caret / arrow pointing up */
.joury-mega-menu::before {
  content: '';
  position: absolute;
  top: -6px;
  left: 50%;
  transform: translateX(-50%) rotate(45deg);
  width: 12px;
  height: 12px;
  background: rgba(16, 9, 11, 0.97);
  border-top: 1px solid rgba(255,255,255,.1);
  border-left: 1px solid rgba(255,255,255,.1);
  border-radius: 3px 0 0 0;
}

.has-mega-menu:hover .joury-mega-menu {
  opacity: 1;
  visibility: visible;
  transform: translateX(-50%) translateY(0);
}

/* Inner grid */
.joury-mega-menu__inner {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  gap: 0;
  padding: 0;
}

/* Each column */
.joury-mega-menu__col {
  padding: 24px 22px 22px;
  display: flex;
  flex-direction: column;
}

/* Food column — faint red tint */
.joury-mega-menu__col:first-child {
  background: rgba(200,16,46,.03);
}
/* Beauty column — faint caramel tint */
.joury-mega-menu__col:last-child {
  background: rgba(196,154,108,.03);
}

/* Category title */
.joury-mega-menu__title {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 12px;
  font-weight: 800;
  color: #fff;
  margin-bottom: 4px;
  text-transform: uppercase;
  letter-spacing: .1em;
  text-decoration: none;
  transition: color var(--t-fast);
}
.joury-mega-menu__title:hover { color: var(--brand-caramel); }

/* Icon badge */
.joury-mega-menu__icon {
  font-size: 16px;
  width: 32px;
  height: 32px;
  border-radius: 10px;
  background: rgba(255,255,255,.06);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

/* Short description */
.joury-mega-menu__desc {
  font-size: 11px;
  color: rgba(255,255,255,.3);
  line-height: 1.5;
  margin: 0 0 14px 0;
  padding-left: 42px; /* align under title text, past icon */
}

/* Sub links */
.joury-mega-menu__sub {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 1px;
}

.joury-mega-link {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 7px 10px;
  border-radius: 10px;
  color: rgba(255,255,255,.5);
  font-size: 13px;
  font-weight: 500;
  text-decoration: none;
  transition: all .2s var(--ease);
}

/* Dot indicator */
.joury-mega-link::before {
  content: '';
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: rgba(255,255,255,.18);
  flex-shrink: 0;
  transition: background .2s, transform .2s;
}

.joury-mega-link:hover {
  color: #fff;
  background: rgba(255,255,255,.07);
  transform: translateX(3px);
}
.joury-mega-link:hover::before {
  background: var(--brand-caramel);
  transform: scale(1.4);
}

/* Vertical separator */
.joury-mega-menu__sep {
  width: 1px;
  margin: 16px 0;
  background: linear-gradient(
    to bottom,
    transparent 0%,
    rgba(255,255,255,.09) 25%,
    rgba(255,255,255,.09) 75%,
    transparent 100%
  );
  flex-shrink: 0;
}


/* ═══════════════════════════════════════════════════════════════
   INLINE AJAX SEARCH
   ═══════════════════════════════════════════════════════════════ */
.joury-header-search {
  position: relative;
  display: flex;
  align-items: center;
}

.joury-search-form-inline {
  display: flex;
  align-items: center;
  background: var(--bg-glass, rgba(255,255,255,.06));
  border: 1px solid var(--border, rgba(255,255,255,.08));
  border-radius: var(--radius-pill);
  padding: 6px 16px;
  backdrop-filter: blur(8px);
  transition: all var(--t-fast);
  width: 240px;
}

.joury-search-form-inline:focus-within {
  width: 320px;
  background: rgba(255,255,255,.1);
  border-color: rgba(255,255,255,.2);
}

.joury-search-form-inline .joury-search-icon {
  color: var(--text-2, rgba(255,255,255,.5));
  margin-right: 10px;
}

.cosmetique-theme .joury-search-form-inline,
.cosmetique-page .joury-search-form-inline {
  background: rgba(26,14,8,.04);
  border-color: rgba(26,14,8,.12);
}
.cosmetique-theme .joury-search-form-inline:focus-within,
.cosmetique-page .joury-search-form-inline:focus-within {
  background: rgba(26,14,8,.08);
  border-color: rgba(196,154,108,.3);
}
.cosmetique-theme .joury-search-form-inline .joury-search-icon,
.cosmetique-page .joury-search-form-inline .joury-search-icon {
  color: rgba(26,14,8,.5);
}

.joury-inline-search-input {
  background: transparent !important;
  border: none;
  color: rgba(255,255,255,.9);
  font-size: 14px;
  font-family: inherit;
  width: 100%;
  outline: none;
  -webkit-appearance: none;
  appearance: none;
  -webkit-text-fill-color: rgba(255,255,255,.9);
}

.joury-inline-search-input::placeholder {
  color: rgba(255,255,255,.4);
}

.joury-inline-search-input:-webkit-autofill,
.joury-inline-search-input:-webkit-autofill:focus {
  -webkit-box-shadow: 0 0 0 100px rgba(22, 11, 14, 1) inset !important;
  -webkit-text-fill-color: rgba(255,255,255,.9) !important;
}

.cosmetique-theme .joury-inline-search-input,
.cosmetique-page .joury-inline-search-input {
  color: #1A0E08;
  -webkit-text-fill-color: #1A0E08;
}

.cosmetique-theme .joury-inline-search-input::placeholder,
.cosmetique-page .joury-inline-search-input::placeholder {
  color: rgba(26,14,8,.5);
}

.cosmetique-theme .joury-inline-search-input:-webkit-autofill,
.cosmetique-page .joury-inline-search-input:-webkit-autofill {
  -webkit-box-shadow: 0 0 0 100px rgba(255, 248, 242, 1) inset !important;
  -webkit-text-fill-color: #1A0E08 !important;
}

.joury-search-results-inline {
  position: absolute;
  top: calc(100% + 16px);
  right: 0;
  width: 380px;
  background: var(--bg-surface, #160B0E);
  border: 1px solid var(--border, rgba(255,255,255,.08));
  border-radius: var(--radius-md, 12px);
  overflow: hidden;
  box-shadow: 0 12px 40px rgba(0,0,0,0.5);
  opacity: 0;
  visibility: hidden;
  transform: translateY(10px);
  transition: all 0.3s var(--ease);
  z-index: 200;
}

.joury-search-results-inline.has-results {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.joury-ajax-results-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.joury-ajax-results-list li {
  border-bottom: 1px solid rgba(255,255,255,.05);
}
.joury-ajax-results-list li:last-child {
  border-bottom: none;
}

.joury-ajax-results-list a {
  display: flex;
  align-items: center;
  padding: 12px 16px;
  gap: 16px;
  text-decoration: none;
  transition: background var(--t-fast);
}
.joury-ajax-results-list a:hover {
  background: rgba(255,255,255,.03);
}

.joury-ajax-result-img img {
  width: 48px;
  height: 48px;
  object-fit: cover;
  border-radius: 6px;
  border: 1px solid rgba(255,255,255,.1);
}

.joury-ajax-result-info {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.joury-ajax-result-title {
  color: #fff;
  font-size: 14px;
  font-weight: 500;
}

.joury-ajax-result-price {
  color: var(--brand-caramel, #C49A6C);
  font-size: 13px;
  font-weight: 600;
}

.joury-ajax-results-all {
  display: block;
  text-align: center;
  padding: 12px;
  background: rgba(255,255,255,.02);
  color: #fff;
  font-size: 13px;
  font-weight: 600;
  text-decoration: none;
  transition: background var(--t-fast);
}
.joury-ajax-results-all:hover {
  background: rgba(255,255,255,.05);
}

.joury-ajax-results-empty {
  padding: 24px;
  text-align: center;
  color: rgba(255,255,255,.5);
  font-size: 14px;
}

/* ═══════════════════════════════════════════════════════════════
   LOGO-COLOR TEXT ANIMATIONS — Header & Footer
   ═══════════════════════════════════════════════════════════════ */

/* Logo main text — flowing shimmer through all 5 brand colors */
.joury-logo__text {
  background: linear-gradient(90deg,
    #C8102E, #A00D24, #C49A6C, #D4B896, #A0784A, #C8102E
  );
  background-size: 300% auto;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  animation: j-shimmer-sweep 5s linear infinite;
}

/* Logo subtitle span — reverse shimmer in the caramel range */
.joury-logo__text span {
  background: linear-gradient(90deg,
    #A0784A, #C49A6C, #D4B896, #C8102E, #C49A6C, #A0784A
  );
  background-size: 300% auto;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  animation: j-shimmer-sweep 5s linear infinite reverse;
}

/* Primary nav links hover — gradient shimmer with all logo colors */
.joury-menu-link:hover {
  background: linear-gradient(90deg,
    #FFF8F2, #D4B896, #C49A6C, #C8102E, #A00D24, #FFF8F2
  );
  background-size: 300% auto;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  animation: j-shimmer-sweep 2s linear infinite;
  transform: translateY(-2px);
  text-shadow: none;
}

/* Mega menu section titles hover — caramel + red shimmer */
.joury-mega-menu__title:hover {
  background: linear-gradient(90deg,
    #D4B896, #C49A6C, #C8102E, #A00D24, #D4B896
  );
  background-size: 300% auto;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  animation: j-shimmer-sweep 2.5s linear infinite;
}

/* Mega menu item links hover — caramel glow */
.joury-mega-link:hover {
  color: var(--brand-caramel-lt);
  text-shadow: 0 0 12px rgba(196,154,108,.38);
}

/* Footer nav links hover — caramel highlight + glow */
.joury-footer__links a:hover {
  color: var(--brand-caramel-lt);
  text-shadow: 0 0 10px rgba(196,154,108,.32);
}

/* Footer contact links hover — caramel glow */
.joury-footer__contact-list a:hover {
  color: var(--brand-caramel-lt);
  text-shadow: 0 0 10px rgba(196,154,108,.28);
}

/* Mobile nav links hover — caramel glow */
.joury-mobile-nav__link:hover {
  color: var(--brand-caramel-lt);
  text-shadow: 0 0 12px rgba(196,154,108,.32);
}
