/* ==========================================================================
   COMPATIBILITY LAYER
   Maps all PHP template class names to the design system.
   This file bridges mismatches between templates & main.css.
   ========================================================================== */


/* ==========================================================================
   1. TOP BAR — template uses .top-bar__inner, .top-bar__contact, .top-bar__link, .top-bar__promo
      CSS uses .top-bar__left, .top-bar__right
   ========================================================================== */

.top-bar__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.top-bar__contact {
  display: flex;
  align-items: center;
  gap: var(--space-lg);
}

.top-bar__contact a,
.top-bar__link {
  color: var(--color-text-muted);
  font-size: var(--fs-xs);
  display: inline-flex;
  align-items: center;
  gap: var(--space-xs);
  text-decoration: none;
  transition: var(--transition);
}

.top-bar__contact a:hover,
.top-bar__link:hover {
  color: var(--color-primary);
}

.top-bar__promo {
  display: flex;
  align-items: center;
  gap: var(--space-xs);
  color: var(--color-text);
  font-weight: var(--fw-semi);
  font-size: var(--fs-xs);
}


/* ==========================================================================
   2. HEADER — template uses .site-header__*, CSS uses .site-logo, .main-nav, .header-action-btn, etc.
   ========================================================================== */

.site-header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
/* Logo — Responsive Auto-Adjust System (Horizontal Layout)
   Uses !important to override WordPress inline width/height on <img> tags.
   Desktop: max 220px | Tablet: 180px | Mobile: 150px | Small: 130px */
.site-header__logo {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  max-width: 220px;
  transition: max-width 0.3s ease;
}

/* WordPress custom-logo (uploaded via Customizer) + fallback logo */
.site-header__logo .custom-logo-link,
.site-header__logo > a {
  display: flex;
  align-items: center;
  max-width: 100%;
}

.site-header__logo .custom-logo-link img,
.site-header__logo .custom-logo,
.site-header__logo img {
  width: auto !important;
  max-width: 220px !important;
  height: auto !important;
  max-height: 55px !important;
  object-fit: contain !important;
  transition: all 0.3s ease;
}

/* When header is scrolled/compact, shrink slightly */
.site-header.scrolled .site-header__logo .custom-logo-link img,
.site-header.scrolled .site-header__logo .custom-logo,
.site-header.scrolled .site-header__logo img {
  max-width: 180px !important;
  max-height: 46px !important;
}

/* Text logo fallback */
.site-header__logo-text {
  display: flex;
  flex-direction: column;
  text-decoration: none;
  line-height: 1.1;
}

.site-header__logo-primary {
  font-family: var(--font-heading);
  font-weight: var(--fw-bold);
  font-size: var(--fs-xl);
  background: var(--gradient-primary);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  transition: font-size 0.3s ease;
}

.site-header__logo-secondary {
  font-family: var(--font-heading);
  font-size: var(--fs-xs);
  color: var(--color-text-muted);
  text-transform: uppercase;
  letter-spacing: 0.15em;
}

/* ── Footer logo ── */
.site-footer__logo .custom-logo-link img,
.site-footer__logo .custom-logo,
.site-footer__logo img {
  width: auto !important;
  max-width: 220px !important;
  height: auto !important;
  max-height: 50px !important;
  object-fit: contain !important;
}

/* ── Mobile menu logo ── */
.mobile-menu .custom-logo-link img,
.mobile-menu .custom-logo,
.mobile-menu img {
  width: auto !important;
  max-width: 200px !important;
  height: auto !important;
  max-height: 42px !important;
  object-fit: contain !important;
}

/* ── Tablet (≤ 992px) ── */
@media (max-width: 992px) {
  .site-header__logo {
    max-width: 180px;
  }
  .site-header__logo .custom-logo-link img,
  .site-header__logo .custom-logo,
  .site-header__logo img {
    max-width: 180px !important;
    max-height: 46px !important;
  }
}

/* ── Mobile (≤ 768px) ── */
@media (max-width: 768px) {
  .site-header__logo {
    max-width: 150px;
  }
  .site-header__logo .custom-logo-link img,
  .site-header__logo .custom-logo,
  .site-header__logo img {
    max-width: 150px !important;
    max-height: 40px !important;
  }
  .site-footer__logo .custom-logo-link img,
  .site-footer__logo .custom-logo,
  .site-footer__logo img {
    max-width: 160px !important;
    max-height: 42px !important;
  }
}

/* ── Small Mobile (≤ 576px) ── */
@media (max-width: 576px) {
  .site-header__logo {
    max-width: 130px;
  }
  .site-header__logo .custom-logo-link img,
  .site-header__logo .custom-logo,
  .site-header__logo img {
    max-width: 130px !important;
    max-height: 34px !important;
  }
}

/* Navigation — .nav-main wraps wp_nav_menu with .nav-main__list */
.nav-main {
  display: flex;
  align-items: center;
}

.nav-main__list {
  display: flex;
  align-items: center;
  gap: var(--space-xl);
  list-style: none;
  margin: 0;
  padding: 0;
}

.nav-main__list li {
  position: relative;
}

.nav-main__list li a {
  color: var(--color-text);
  font-family: var(--font-heading);
  font-weight: var(--fw-semi);
  font-size: var(--fs-base);
  text-transform: uppercase;
  letter-spacing: 0.05em;
  padding: var(--space-sm) 0;
  position: relative;
  transition: var(--transition);
  text-decoration: none;
}

.nav-main__list li a::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0;
  height: 2px;
  background: var(--gradient-primary);
  transition: var(--transition);
}

.nav-main__list li a:hover,
.nav-main__list li.current-menu-item > a {
  color: var(--color-primary);
}

.nav-main__list li a:hover::after,
.nav-main__list li.current-menu-item > a::after {
  width: 100%;
}

/* Sub-menu dropdown */
.nav-main__list .sub-menu {
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%) translateY(10px);
  min-width: 220px;
  background: var(--glass-bg);
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur);
  border: var(--glass-border);
  border-radius: var(--radius-lg);
  padding: var(--space-sm) 0;
  opacity: 0;
  visibility: hidden;
  transition: var(--transition);
  box-shadow: var(--shadow-lg);
  z-index: var(--z-dropdown);
  list-style: none;
}

.nav-main__list li:hover > .sub-menu {
  opacity: 1;
  visibility: visible;
  transform: translateX(-50%) translateY(0);
}

.nav-main__list .sub-menu li a {
  display: block;
  padding: var(--space-sm) var(--space-lg);
  color: var(--color-text-muted);
  font-size: var(--fs-sm);
  text-transform: none;
  letter-spacing: 0;
}

.nav-main__list .sub-menu li a::after { display: none; }

.nav-main__list .sub-menu li a:hover {
  color: var(--color-text);
  background: rgba(233,69,96,0.1);
  padding-left: var(--space-xl);
}

/* Header actions */
.site-header__actions {
  display: flex;
  align-items: center;
  gap: var(--space-md);
}

.site-header__action-btn {
  position: relative;
  width: 42px;
  height: 42px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: var(--radius-circle);
  color: var(--color-text);
  background: transparent;
  border: none;
  cursor: pointer;
  transition: var(--transition);
}

.site-header__action-btn:hover {
  background: rgba(233,69,96,0.15);
  color: var(--color-primary);
}

.site-header__action-btn svg {
  width: 20px;
  height: 20px;
}

/* Cart count */
.site-header__cart {
  position: relative;
}

.site-header__cart-count {
  position: absolute;
  top: 0;
  right: 0;
  width: 18px;
  height: 18px;
  background: var(--gradient-primary);
  color: var(--color-text);
  font-size: 10px;
  font-weight: var(--fw-bold);
  border-radius: var(--radius-circle);
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
}

/* Mini cart dropdown */
.site-header__mini-cart {
  position: absolute;
  top: calc(100% + 10px);
  right: 0;
  min-width: 320px;
  background: var(--glass-bg);
  backdrop-filter: var(--glass-blur);
  border: var(--glass-border);
  border-radius: var(--radius-lg);
  padding: var(--space-lg);
  box-shadow: var(--shadow-xl);
  opacity: 0;
  visibility: hidden;
  transform: translateY(10px);
  transition: var(--transition);
  z-index: var(--z-dropdown);
}

.site-header__cart:hover .site-header__mini-cart {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

/* Hamburger */
.site-header__hamburger {
  display: none;
  flex-direction: column;
  justify-content: center;
  gap: 5px;
  width: 42px;
  height: 42px;
  padding: 10px;
  cursor: pointer;
  border: none;
  background: none;
  z-index: calc(var(--z-header) + 5);
}

.site-header__hamburger-line {
  display: block;
  width: 100%;
  height: 2px;
  background: var(--color-text);
  border-radius: 2px;
  transition: var(--transition);
  transform-origin: center;
}

/* Search overlay */
.site-header__search-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(13, 13, 26, 0.95);
  backdrop-filter: blur(20px);
  z-index: calc(var(--z-header) + 10);
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  visibility: hidden;
  transition: var(--transition);
}

.site-header__search-overlay.active {
  opacity: 1;
  visibility: visible;
}

.site-header__search-form {
  width: 100%;
  max-width: 700px;
  padding: 0 var(--space-xl);
  display: flex;
  align-items: center;
  gap: var(--space-md);
}

.site-header__search-input {
  flex: 1;
  border: none;
  border-bottom: 2px solid var(--color-surface-light);
  background: transparent;
  color: var(--color-text);
  font-family: var(--font-heading);
  font-size: var(--fs-2xl);
  font-weight: var(--fw-semi);
  padding: var(--space-md) 0;
  outline: none;
  transition: var(--transition);
}

.site-header__search-input:focus {
  border-bottom-color: var(--color-primary);
}

.site-header__search-input::placeholder {
  color: var(--color-text-muted);
}

.site-header__search-submit,
.site-header__search-close {
  background: none;
  border: none;
  color: var(--color-text-muted);
  cursor: pointer;
  padding: var(--space-sm);
  transition: var(--transition);
}

.site-header__search-submit:hover,
.site-header__search-close:hover {
  color: var(--color-primary);
}


/* ==========================================================================
   3. MOBILE MENU — template uses .mobile-menu, .mobile-menu__*
      CSS uses .mobile-nav, .mobile-nav-overlay
   ========================================================================== */

.mobile-menu {
  position: fixed;
  top: 0;
  right: 0;
  width: 320px;
  max-width: 85vw;
  height: 100%;
  background: rgba(22, 33, 62, 0.95);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border-left: var(--glass-border);
  z-index: calc(var(--z-header) + 2);
  transform: translateX(100%);
  transition: var(--transition-slow);
  padding: var(--space-xl);
  overflow-y: auto;
  display: flex;
  flex-direction: column;
}

.mobile-menu.active {
  transform: translateX(0);
}

.mobile-menu__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-bottom: var(--space-lg);
  border-bottom: 1px solid rgba(255,255,255,0.05);
  margin-bottom: var(--space-lg);
}

.mobile-menu__title {
  font-family: var(--font-heading);
  font-size: var(--fs-lg);
  font-weight: var(--fw-bold);
  color: var(--color-text);
}

.mobile-menu__close {
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: none;
  border: none;
  color: var(--color-text-muted);
  cursor: pointer;
  border-radius: var(--radius-circle);
  transition: var(--transition);
}

.mobile-menu__close:hover {
  color: var(--color-primary);
  background: rgba(233,69,96,0.1);
}

.mobile-menu__nav {
  flex: 1;
}

.mobile-menu__list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.mobile-menu__list li {
  border-bottom: 1px solid rgba(255,255,255,0.05);
}

.mobile-menu__list li a {
  display: block;
  padding: var(--space-md) 0;
  color: var(--color-text);
  font-family: var(--font-heading);
  font-size: var(--fs-lg);
  font-weight: var(--fw-semi);
  text-transform: uppercase;
  letter-spacing: 0.05em;
  transition: var(--transition);
  text-decoration: none;
}

.mobile-menu__list li a:hover {
  color: var(--color-primary);
  padding-left: var(--space-md);
}

.mobile-menu__actions {
  margin-top: auto;
  padding-top: var(--space-xl);
  border-top: 1px solid rgba(255,255,255,0.05);
  display: flex;
  flex-direction: column;
  gap: var(--space-md);
}

.mobile-menu__link {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
  color: var(--color-text-muted);
  font-size: var(--fs-base);
  text-decoration: none;
  transition: var(--transition);
}

.mobile-menu__link:hover {
  color: var(--color-primary);
}

.mobile-menu__backdrop {
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0.6);
  z-index: calc(var(--z-header) + 1);
  opacity: 0;
  visibility: hidden;
  transition: var(--transition);
}

.mobile-menu__backdrop.active {
  opacity: 1;
  visibility: visible;
}


/* ==========================================================================
   4. HERO — template uses .hero__badge, .hero__actions, .btn--primary, .btn--outline, .btn--lg, .btn__icon
      CSS uses .hero__tag, .hero__buttons, .btn-primary, .btn-outline, .btn-lg
   ========================================================================== */

.hero__overlay {
  position: absolute;
  inset: 0;
  background: var(--gradient-hero);
  z-index: 0;
}

.hero__container {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
}

.hero__badge {
  display: inline-flex;
  align-items: center;
  gap: var(--space-sm);
  background: rgba(233, 69, 96, 0.15);
  border: 1px solid rgba(233, 69, 96, 0.3);
  color: var(--color-primary);
  font-size: var(--fs-sm);
  font-weight: var(--fw-semi);
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: var(--space-xs) var(--space-lg);
  border-radius: var(--radius-pill);
  margin-bottom: var(--space-lg);
}

.hero__badge-icon {
  font-size: var(--fs-lg);
}

.hero__actions {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-lg);
  flex-wrap: wrap;
}

.hero__scroll-text {
  font-size: var(--fs-xs);
  text-transform: uppercase;
  letter-spacing: 0.15em;
  color: var(--color-text-muted);
  margin-bottom: var(--space-xs);
}

.hero__scroll-arrow {
  animation: float 3s ease-in-out infinite;
}

.hero__scroll-arrow svg {
  color: var(--color-text-muted);
}

/* Particle canvas container */
.hero__particles {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
}

.particles-canvas {
  width: 100%;
  height: 100%;
}

.hero__cursor-glow {
  position: absolute;
  width: 400px;
  height: 400px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(233,69,96,0.08) 0%, transparent 70%);
  transform: translate(-50%, -50%);
  pointer-events: none;
  z-index: 1;
}

/* Button variants from templates */
.btn--primary { background: var(--gradient-primary); color: var(--color-text); border: none; }
.btn--primary:hover { box-shadow: 0 8px 25px rgba(233,69,96,0.4); color: var(--color-text); }
.btn--outline { background: transparent; color: var(--color-text); border: 2px solid rgba(255,255,255,0.3); }
.btn--outline:hover { border-color: var(--color-primary); color: var(--color-primary); background: rgba(233,69,96,0.05); }
.btn--lg { padding: 1.1rem 2.75rem; font-size: var(--fs-md); }
.btn--white { background: var(--color-text); color: var(--color-primary); border: none; font-weight: var(--fw-bold); }
.btn--white:hover { background: var(--color-bg); color: var(--color-text); }
.btn--outline-white { background: transparent; color: var(--color-text); border: 2px solid rgba(255,255,255,0.5); }
.btn--outline-white:hover { background: rgba(255,255,255,0.1); border-color: white; }
.btn__icon { display: inline-flex; align-items: center; }
.btn__icon svg { width: 20px; height: 20px; }


/* ==========================================================================
   5. SECTION HEADERS — template uses .section-header, .section-header__title, .section-header__underline, .section-header__subtitle
   ========================================================================== */

.section-header {
  text-align: center;
  margin-bottom: var(--space-3xl);
}

.section-header__title {
  font-family: var(--font-heading);
  font-size: var(--fs-4xl);
  font-weight: var(--fw-bold);
  color: var(--color-text);
  margin-bottom: var(--space-md);
  position: relative;
  display: inline-block;
}

.section-header__underline {
  display: block;
  width: 60px;
  height: 4px;
  background: var(--gradient-primary);
  margin: var(--space-md) auto 0;
  border-radius: 2px;
}

.section-header__subtitle {
  font-size: var(--fs-md);
  color: var(--color-text-muted);
  max-width: 600px;
  margin: 0 auto;
  line-height: 1.8;
}


/* ==========================================================================
   6. FEATURED PRODUCTS — template uses .featured-products, .featured-products__grid, .featured-products__card, etc.
   ========================================================================== */

.featured-products {
  background: var(--color-bg);
}

.featured-products__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--space-xl);
}

.featured-products__card { /* extends .product-card */
  position: relative;
  background: var(--glass-bg);
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur);
  border: var(--glass-border);
  border-radius: var(--radius-lg);
  overflow: hidden;
  transition: var(--transition);
  display: flex;
  flex-direction: column;
}

.featured-products__card:hover {
  transform: translateY(-8px);
  box-shadow: var(--shadow-xl);
  border-color: rgba(233,69,96,0.4);
}

.featured-products__view-all {
  text-align: center;
  margin-top: var(--space-3xl);
}

@media (max-width: 992px) {
  .featured-products__grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 576px) {
  .featured-products__grid { grid-template-columns: 1fr; }
}


/* ==========================================================================
   7. CATEGORY SHOWCASE — template uses .category-showcase, .category-showcase__grid, .category-showcase__card, etc.
   ========================================================================== */

.category-showcase__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: var(--space-xl);
}

.category-showcase__card {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: var(--space-2xl) var(--space-lg);
  background: var(--glass-bg);
  backdrop-filter: var(--glass-blur);
  border: var(--glass-border);
  border-radius: var(--radius-lg);
  transition: var(--transition);
  text-decoration: none;
  color: var(--color-text);
  position: relative;
  overflow: hidden;
}

.category-showcase__card:hover {
  transform: translateY(-8px);
  box-shadow: var(--shadow-xl);
  border-color: rgba(233,69,96,0.4);
  color: var(--color-text);
}

.category-showcase__icon {
  width: 70px;
  height: 70px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(233,69,96,0.1);
  border-radius: var(--radius-lg);
  margin-bottom: var(--space-lg);
  color: var(--color-primary);
  transition: var(--transition);
}

.category-showcase__card:hover .category-showcase__icon {
  background: var(--gradient-primary);
  color: var(--color-text);
}

.category-showcase__icon svg { width: 40px; height: 40px; }

.category-showcase__name {
  font-family: var(--font-heading);
  font-size: var(--fs-xl);
  font-weight: var(--fw-bold);
  margin-bottom: var(--space-sm);
}

.category-showcase__desc {
  font-size: var(--fs-sm);
  color: var(--color-text-muted);
  line-height: 1.6;
  margin-bottom: var(--space-md);
}

.category-showcase__count {
  display: inline-block;
  font-size: var(--fs-xs);
  color: var(--color-primary);
  background: rgba(233,69,96,0.1);
  padding: var(--space-xs) var(--space-md);
  border-radius: var(--radius-pill);
  margin-bottom: var(--space-md);
}

.category-showcase__arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: var(--radius-circle);
  border: 1px solid rgba(255,255,255,0.1);
  color: var(--color-text-muted);
  transition: var(--transition);
}

.category-showcase__card:hover .category-showcase__arrow {
  background: var(--gradient-primary);
  border-color: transparent;
  color: var(--color-text);
}

@media (max-width: 992px) {
  .category-showcase__grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 576px) {
  .category-showcase__grid { grid-template-columns: 1fr; }
}


/* ==========================================================================
   8. BRAND STORY — template uses .brand-story__image-col, .brand-story__content-col,
      .brand-story__subtitle-pill, .brand-story__heading, .brand-story__description,
      .brand-story__features, .brand-story__feature, .brand-story__stats, .brand-story__stat, etc.
   ========================================================================== */

.brand-story__image-col {
  position: relative;
}

.brand-story__image-wrapper {
  position: relative;
  border-radius: var(--radius-lg);
  overflow: hidden;
  min-height: 400px;
  background: var(--color-surface);
}

.brand-story__image-wrapper img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.brand-story__image-placeholder {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100%;
  min-height: 400px;
  background: linear-gradient(135deg, var(--color-surface) 0%, var(--color-surface-light) 100%);
  color: var(--color-primary);
  gap: var(--space-md);
  border-radius: var(--radius-lg);
}

.brand-story__image-placeholder span {
  font-family: var(--font-heading);
  font-weight: var(--fw-bold);
  font-size: var(--fs-lg);
  color: var(--color-text-muted);
}

.brand-story__image-accent {
  position: absolute;
  bottom: -10px;
  left: -10px;
  width: 6px;
  height: 60%;
  background: var(--gradient-primary);
  border-radius: 3px;
}

.brand-story__content-col {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.brand-story__subtitle-pill {
  display: inline-block;
  color: var(--color-primary);
  font-size: var(--fs-sm);
  font-weight: var(--fw-semi);
  text-transform: uppercase;
  letter-spacing: 0.15em;
  margin-bottom: var(--space-md);
  background: rgba(233,69,96,0.1);
  padding: var(--space-xs) var(--space-md);
  border-radius: var(--radius-pill);
}

.brand-story__heading {
  font-size: var(--fs-4xl);
  margin-bottom: var(--space-lg);
}

.brand-story__description {
  color: var(--color-text-muted);
  line-height: 1.8;
  margin-bottom: var(--space-lg);
}

.brand-story__features {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-md);
}

.brand-story__feature {
  display: flex;
  align-items: flex-start;
  gap: var(--space-md);
}

.brand-story__feature-icon {
  flex-shrink: 0;
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(233,69,96,0.15);
  border-radius: var(--radius-md);
  color: var(--color-primary);
}

.brand-story__feature-content {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.brand-story__feature-title {
  font-weight: var(--fw-semi);
  color: var(--color-text);
  font-size: var(--fs-base);
}

.brand-story__feature-desc {
  font-size: var(--fs-sm);
  color: var(--color-text-muted);
}

/* Stats row */
.brand-story__stats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: var(--space-lg);
  margin-top: var(--space-3xl);
}

.brand-story__stat {
  text-align: center;
  padding: var(--space-lg);
  background: rgba(15,52,96,0.3);
  border-radius: var(--radius-lg);
  border: 1px solid rgba(233,69,96,0.1);
  transition: var(--transition);
}

.brand-story__stat:hover {
  border-color: rgba(233,69,96,0.3);
  transform: translateY(-3px);
}

.brand-story__stat-number {
  font-family: var(--font-heading);
  font-size: var(--fs-4xl);
  font-weight: var(--fw-bold);
  background: var(--gradient-primary);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  line-height: 1;
  margin-bottom: var(--space-xs);
  display: block;
}

.brand-story__stat-label {
  font-size: var(--fs-sm);
  color: var(--color-text-muted);
  text-transform: uppercase;
  letter-spacing: 0.1em;
}

@media (max-width: 768px) {
  .brand-story__stats { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 576px) {
  .brand-story__stats { grid-template-columns: 1fr; }
}


/* ==========================================================================
   9. TESTIMONIALS — template uses .testimonials__carousel-wrapper, .testimonials__carousel,
      .testimonials__card, .testimonials__quote-icon, .testimonials__text, .testimonials__stars,
      .testimonials__customer, .testimonials__avatar, .testimonials__customer-info, etc.
   ========================================================================== */

.testimonials__carousel-wrapper {
  position: relative;
  display: flex;
  align-items: center;
  gap: var(--space-md);
}

.testimonials__carousel {
  display: flex;
  gap: var(--space-xl);
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  -ms-overflow-style: none;
  scrollbar-width: none;
  padding: var(--space-md) 0;
  flex: 1;
}

.testimonials__carousel::-webkit-scrollbar { display: none; }

.testimonials__card {
  flex: 0 0 calc(33.333% - var(--space-xl));
  scroll-snap-align: start;
  background: var(--glass-bg);
  backdrop-filter: var(--glass-blur);
  border: var(--glass-border);
  border-radius: var(--radius-lg);
  padding: var(--space-2xl);
  display: flex;
  flex-direction: column;
  position: relative;
  min-width: 300px;
}

.testimonials__quote-icon {
  color: var(--color-primary);
  opacity: 0.3;
  margin-bottom: var(--space-md);
}

.testimonials__text {
  font-size: var(--fs-base);
  color: var(--color-text-muted);
  line-height: 1.8;
  margin-bottom: var(--space-xl);
  flex: 1;
  border: none;
  padding: 0;
  background: none;
  font-style: normal;
}

.testimonials__text p {
  margin: 0;
  color: inherit;
}

.testimonials__stars {
  display: flex;
  gap: 2px;
  margin-bottom: var(--space-md);
}

.testimonials__stars .star {
  font-size: var(--fs-base);
}

.testimonials__stars .star--filled { color: var(--color-star); }
.testimonials__stars .star--empty { color: var(--color-surface-light); }

.testimonials__customer {
  display: flex;
  align-items: center;
  gap: var(--space-md);
  margin-top: auto;
}

.testimonials__avatar {
  width: 48px;
  height: 48px;
  border-radius: var(--radius-circle);
  background: var(--gradient-primary);
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--font-heading);
  font-weight: var(--fw-bold);
  font-size: var(--fs-base);
  color: var(--color-text);
  flex-shrink: 0;
}

.testimonials__customer-info {
  display: flex;
  flex-direction: column;
}

.testimonials__customer-name {
  font-family: var(--font-heading);
  font-weight: var(--fw-semi);
  font-size: var(--fs-base);
  color: var(--color-text);
}

.testimonials__customer-motor {
  font-size: var(--fs-sm);
  color: var(--color-text-muted);
}

/* Nav arrows */
.testimonials__nav {
  flex-shrink: 0;
  width: 44px;
  height: 44px;
  border-radius: var(--radius-circle);
  border: 1px solid rgba(255,255,255,0.15);
  background: transparent;
  color: var(--color-text);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: var(--transition);
}

.testimonials__nav:hover {
  background: var(--gradient-primary);
  border-color: transparent;
}

/* Dots */
.testimonials__dot--active {
  width: 24px;
  border-radius: var(--radius-pill);
  background: var(--gradient-primary);
}

@media (max-width: 992px) {
  .testimonials__card { flex: 0 0 calc(50% - var(--space-md)); }
}
@media (max-width: 576px) {
  .testimonials__card { flex: 0 0 calc(100% - var(--space-md)); min-width: 260px; }
  .testimonials__nav { display: none; }
}


/* ==========================================================================
   10. CTA — template uses .cta-section__subtitle, .cta-section__actions, .cta-section__phone, etc.
   ========================================================================== */

.cta-section__subtitle {
  font-size: var(--fs-md);
  color: rgba(255,255,255,0.85);
  margin-bottom: var(--space-2xl);
  max-width: 600px;
  margin-left: auto;
  margin-right: auto;
}

.cta-section__actions {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-lg);
  flex-wrap: wrap;
  margin-bottom: var(--space-lg);
}

.cta-section__phone {
  margin-top: var(--space-lg);
  font-size: var(--fs-base);
  color: rgba(255,255,255,0.7);
}

.cta-section__phone a {
  color: var(--color-text);
  font-weight: var(--fw-bold);
  text-decoration: underline;
}

.cta-section__shape {
  position: absolute;
  border-radius: var(--radius-circle);
  opacity: 0.1;
  pointer-events: none;
}

.cta-section__shape--1 { top: -40px; right: -40px; width: 200px; height: 200px; background: rgba(255,255,255,0.1); }
.cta-section__shape--2 { bottom: -60px; left: -30px; width: 150px; height: 150px; background: rgba(255,255,255,0.08); }
.cta-section__shape--3 { top: 50%; left: 50%; width: 100px; height: 100px; background: rgba(255,255,255,0.05); }


/* ==========================================================================
   11. FOOTER — template uses .site-footer__*, CSS uses .footer__*
   ========================================================================== */

.site-footer__main {
  padding-bottom: var(--space-3xl);
}

.site-footer__grid {
  display: grid;
  grid-template-columns: 1.5fr 1fr 1fr 1.5fr;
  gap: var(--space-3xl);
}

.site-footer__col {}

.site-footer__logo {
  margin-bottom: var(--space-lg);
}

.site-footer__logo-text {
  display: flex;
  flex-direction: column;
  text-decoration: none;
  line-height: 1.1;
}

.site-footer__logo-primary {
  font-family: var(--font-heading);
  font-weight: var(--fw-bold);
  font-size: var(--fs-xl);
  background: var(--gradient-primary);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.site-footer__logo-secondary {
  font-family: var(--font-heading);
  font-size: var(--fs-xs);
  color: var(--color-text-muted);
  text-transform: uppercase;
  letter-spacing: 0.15em;
}

.site-footer__description {
  font-size: var(--fs-sm);
  color: var(--color-text-muted);
  line-height: 1.8;
  margin-bottom: var(--space-lg);
}

.site-footer__heading {
  font-family: var(--font-heading);
  font-size: var(--fs-lg);
  font-weight: var(--fw-semi);
  color: var(--color-text);
  margin-bottom: var(--space-lg);
  position: relative;
}

.site-footer__heading::after {
  content: '';
  display: block;
  width: 30px;
  height: 2px;
  background: var(--gradient-primary);
  margin-top: var(--space-sm);
  border-radius: 1px;
}

.site-footer__links {
  list-style: none;
  margin: 0;
  padding: 0;
}

.site-footer__links li {
  margin-bottom: var(--space-sm);
}

.site-footer__links a {
  color: var(--color-text-muted);
  font-size: var(--fs-sm);
  transition: var(--transition);
  text-decoration: none;
}

.site-footer__links a:hover {
  color: var(--color-primary);
  padding-left: var(--space-sm);
}

/* Contact list */
.site-footer__contact-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.site-footer__contact-item {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
  margin-bottom: var(--space-md);
  color: var(--color-text-muted);
  font-size: var(--fs-sm);
}

.site-footer__contact-item svg {
  flex-shrink: 0;
  color: var(--color-primary);
}

.site-footer__contact-item a {
  color: var(--color-text-muted);
  text-decoration: none;
  transition: var(--transition);
}

.site-footer__contact-item a:hover {
  color: var(--color-primary);
}

/* Social */
.site-footer__social {
  display: flex;
  gap: var(--space-sm);
}

.site-footer__social-link {
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: var(--radius-circle);
  border: 1px solid rgba(255,255,255,0.1);
  color: var(--color-text-muted);
  transition: var(--transition);
}

.site-footer__social-link:hover {
  border-color: var(--color-primary);
  color: var(--color-primary);
  background: rgba(233,69,96,0.1);
  box-shadow: 0 0 15px rgba(233,69,96,0.2);
}

/* Newsletter */
.site-footer__newsletter {
  margin-top: var(--space-xl);
}

.site-footer__newsletter-title {
  font-family: var(--font-heading);
  font-size: var(--fs-base);
  font-weight: var(--fw-semi);
  margin-bottom: var(--space-sm);
}

.site-footer__newsletter-desc {
  font-size: var(--fs-sm);
  color: var(--color-text-muted);
  margin-bottom: var(--space-md);
}

.site-footer__newsletter-form {
  display: flex;
  gap: var(--space-sm);
}

.site-footer__newsletter-input {
  flex: 1;
  padding: 0.75rem 1rem;
  background: var(--color-surface);
  border: 1px solid var(--color-surface-light);
  border-radius: var(--radius-md);
  color: var(--color-text);
  font-size: var(--fs-sm);
  outline: none;
  transition: var(--transition);
}

.site-footer__newsletter-input:focus {
  border-color: var(--color-primary);
}

.site-footer__newsletter-btn {
  padding: 0.75rem;
  background: var(--gradient-primary);
  color: var(--color-text);
  border: none;
  border-radius: var(--radius-md);
  cursor: pointer;
  transition: var(--transition);
  display: flex;
  align-items: center;
  justify-content: center;
}

.site-footer__newsletter-btn:hover {
  box-shadow: 0 4px 15px rgba(233,69,96,0.4);
  transform: translateY(-2px);
}

/* Footer bottom */
.site-footer__bottom {
  border-top: 1px solid rgba(255,255,255,0.05);
  padding: var(--space-lg) 0;
}

.site-footer__bottom-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: var(--space-md);
}

.site-footer__copyright {
  font-size: var(--fs-sm);
  color: var(--color-text-muted);
  margin: 0;
}

.site-footer__bottom-links {
  display: flex;
  gap: var(--space-lg);
}

.site-footer__bottom-links a {
  font-size: var(--fs-sm);
  color: var(--color-text-muted);
  text-decoration: none;
  transition: var(--transition);
}

.site-footer__bottom-links a:hover {
  color: var(--color-primary);
}

@media (max-width: 992px) {
  .site-footer__grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 576px) {
  .site-footer__grid { grid-template-columns: 1fr; }
  .site-footer__bottom-inner { flex-direction: column; text-align: center; }
}


/* ==========================================================================
   12. WHATSAPP FLOAT — template uses .floating-whatsapp
      CSS uses .whatsapp-float
   ========================================================================== */

.floating-whatsapp {
  position: fixed;
  bottom: var(--space-xl);
  right: var(--space-xl);
  width: 60px;
  height: 60px;
  background: var(--color-whatsapp);
  border-radius: var(--radius-circle);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  box-shadow: 0 4px 20px rgba(37,211,102,0.4);
  z-index: var(--z-whatsapp);
  transition: var(--transition);
  text-decoration: none;
  cursor: pointer;
}

.floating-whatsapp:hover {
  transform: scale(1.1);
  box-shadow: 0 6px 30px rgba(37,211,102,0.6);
  color: #fff;
}

.floating-whatsapp__pulse {
  position: absolute;
  inset: 0;
  border-radius: var(--radius-circle);
  background: var(--color-whatsapp);
  animation: pulse 2s ease-in-out infinite;
  z-index: -1;
}

.floating-whatsapp__icon {
  width: 28px;
  height: 28px;
}


/* ==========================================================================
   13. SOUND PLAYER STYLES
   ========================================================================== */

.sound-player {
  background: var(--glass-bg);
  backdrop-filter: var(--glass-blur);
  border: var(--glass-border);
  border-radius: var(--radius-lg);
  padding: var(--space-xl);
  margin: var(--space-xl) 0;
}

.sound-player__title-bar {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
  margin-bottom: var(--space-lg);
  color: var(--color-text);
}

.sound-player__icon { color: var(--color-primary); }

.sound-player__title-text {
  font-family: var(--font-heading);
  font-weight: var(--fw-semi);
  font-size: var(--fs-lg);
}

.sound-player__modes {
  display: flex;
  gap: var(--space-md);
  margin-bottom: var(--space-lg);
  flex-wrap: wrap;
}

.sound-player__mode-btn {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
  padding: var(--space-sm) var(--space-lg);
  background: var(--color-surface);
  border: 1px solid var(--color-surface-light);
  border-radius: var(--radius-pill);
  color: var(--color-text-muted);
  cursor: pointer;
  transition: var(--transition);
  font-size: var(--fs-sm);
}

.sound-player__mode-btn:hover {
  border-color: var(--color-primary);
  color: var(--color-primary);
}

.sound-player__mode-btn--active {
  background: rgba(233,69,96,0.15);
  border-color: var(--color-primary);
  color: var(--color-primary);
  box-shadow: 0 0 15px rgba(233,69,96,0.2);
}

.sound-player__waveform {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  gap: 3px;
  height: 40px;
  margin-bottom: var(--space-lg);
  --wave-color: var(--color-primary);
}

.sound-player__wave-bar {
  width: 3px;
  height: 4px;
  background: var(--wave-color, var(--color-primary));
  border-radius: 2px;
  transition: height 0.1s ease;
}

.sound-player__waveform--playing .sound-player__wave-bar {
  animation: soundWave 0.8s ease-in-out infinite alternate;
}

@keyframes soundWave {
  0% { height: 4px; }
  100% { height: calc(4px + var(--random-h, 30px)); }
}

.sound-player__wave-bar:nth-child(1) { --random-h: 20px; }
.sound-player__wave-bar:nth-child(2) { --random-h: 35px; }
.sound-player__wave-bar:nth-child(3) { --random-h: 15px; }
.sound-player__wave-bar:nth-child(4) { --random-h: 28px; }
.sound-player__wave-bar:nth-child(5) { --random-h: 38px; }
.sound-player__wave-bar:nth-child(6) { --random-h: 12px; }
.sound-player__wave-bar:nth-child(7) { --random-h: 32px; }
.sound-player__wave-bar:nth-child(8) { --random-h: 22px; }
.sound-player__wave-bar:nth-child(9) { --random-h: 36px; }
.sound-player__wave-bar:nth-child(10) { --random-h: 18px; }
.sound-player__wave-bar:nth-child(11) { --random-h: 25px; }
.sound-player__wave-bar:nth-child(12) { --random-h: 33px; }
.sound-player__wave-bar:nth-child(13) { --random-h: 10px; }
.sound-player__wave-bar:nth-child(14) { --random-h: 30px; }
.sound-player__wave-bar:nth-child(15) { --random-h: 16px; }
.sound-player__wave-bar:nth-child(16) { --random-h: 38px; }
.sound-player__wave-bar:nth-child(odd) { animation-direction: alternate-reverse; }

.sound-player__controls {
  display: flex;
  align-items: center;
  gap: var(--space-md);
}

.sound-player__play-btn {
  width: 44px;
  height: 44px;
  background: var(--gradient-primary);
  border: none;
  border-radius: var(--radius-circle);
  color: var(--color-text);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: var(--transition);
  flex-shrink: 0;
}

.sound-player__play-btn:hover {
  transform: scale(1.1);
  box-shadow: 0 4px 15px rgba(233,69,96,0.4);
}

.sound-player__progress-wrap {
  flex: 1;
  cursor: pointer;
  padding: var(--space-sm) 0;
}

.sound-player__progress-bar {
  height: 4px;
  background: var(--color-surface-light);
  border-radius: 2px;
  position: relative;
}

.sound-player__progress-fill {
  height: 100%;
  background: var(--gradient-primary);
  border-radius: 2px;
  width: 0%;
  transition: width 0.1s linear;
}

.sound-player__progress-handle {
  position: absolute;
  top: 50%;
  left: 0%;
  transform: translate(-50%, -50%);
  width: 12px;
  height: 12px;
  background: var(--color-primary);
  border-radius: var(--radius-circle);
  cursor: grab;
  opacity: 0;
  transition: opacity 0.2s;
}

.sound-player__progress-wrap:hover .sound-player__progress-handle {
  opacity: 1;
}

.sound-player__time {
  font-size: var(--fs-xs);
  color: var(--color-text-muted);
  font-family: monospace;
  white-space: nowrap;
}

.sound-player__volume-wrap {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
}

.sound-player__volume-btn {
  background: none;
  border: none;
  color: var(--color-text-muted);
  cursor: pointer;
  display: flex;
  align-items: center;
  padding: 0;
  transition: var(--transition);
}

.sound-player__volume-btn:hover {
  color: var(--color-primary);
}

.sound-player__volume-slider {
  width: 80px;
  height: 4px;
  -webkit-appearance: none;
  appearance: none;
  background: var(--color-surface-light);
  border-radius: 2px;
  outline: none;
}

.sound-player__volume-slider::-webkit-slider-thumb {
  -webkit-appearance: none;
  width: 12px;
  height: 12px;
  background: var(--color-primary);
  border-radius: 50%;
  cursor: pointer;
}

.sound-player__now-playing {
  margin-top: var(--space-md);
  font-size: var(--fs-sm);
  color: var(--color-text-muted);
  text-align: center;
}

.sound-player__fallback {
  padding: var(--space-xl);
  text-align: center;
  color: var(--color-text-muted);
}


/* ==========================================================================
   14. RESPONSIVE — HEADER
   ========================================================================== */

@media (max-width: 992px) {
  .nav-main { display: none; }
  .site-header__hamburger { display: flex; }
}

@media (max-width: 768px) {
  .top-bar__contact { display: none; }
  .top-bar__inner { justify-content: center; }
  .hero__actions { flex-direction: column; align-items: stretch; }
  .hero__actions .btn { width: 100%; justify-content: center; text-align: center; }
  .section-header__title { font-size: var(--fs-3xl); }
}

@media (max-width: 576px) {
  .sound-player__volume-wrap { display: none; }
  .sound-player__controls { flex-wrap: wrap; }
  .floating-whatsapp { width: 52px; height: 52px; bottom: var(--space-md); right: var(--space-md); }
}


/* ==========================================================================
   15. TEXT REVEAL ANIMATION
   ========================================================================== */

.text-reveal--ready .reveal-word {
  display: inline-block;
  opacity: 0;
  transform: translateY(30px);
  transition: opacity 0.6s ease, transform 0.6s ease;
}

.text-reveal--visible .reveal-word {
  opacity: 1;
  transform: translateY(0);
}

/* Image reveal */
.image-reveal {
  clip-path: inset(0 100% 0 0);
  transition: clip-path 0.8s cubic-bezier(0.4, 0, 0.2, 1);
}

.image-revealed {
  clip-path: inset(0 0 0 0);
}

/* Staggered fade in */
.stagger-fade-in {
  animation: fadeInUp 0.6s ease both;
}

@keyframes fadeInUp {
  from { opacity: 0; transform: translateY(30px); }
  to { opacity: 1; transform: translateY(0); }
}

/* Section visible */
.section-visible {
  animation: fadeInUp 0.8s ease both;
}

/* Float animation */
@keyframes float {
  0%, 100% { transform: translateX(-50%) translateY(0); }
  50% { transform: translateX(-50%) translateY(-10px); }
}

/* Pulse animation */
@keyframes pulse {
  0% { transform: scale(1); opacity: 0.7; }
  50% { transform: scale(1.15); opacity: 0; }
  100% { transform: scale(1); opacity: 0; }
}

/* Scroll progress */
.scroll-progress {
  position: fixed;
  top: 0;
  left: 0;
  width: 0%;
  height: 3px;
  background: var(--gradient-primary);
  z-index: calc(var(--z-header) + 10);
  transition: width 0.05s linear;
}

/* ==========================================================================
   HERO VIDEO BACKGROUND
   ========================================================================== */

/* Video wrapper — covers the entire hero section */
.hero__video-wrap {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  overflow: hidden;
}

.hero__video {
  position: absolute;
  top: 50%;
  left: 50%;
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  transform: translate(-50%, -50%) scale(1.05);
  object-fit: cover;
  z-index: 0;
  /* Subtle slow zoom for cinematic feel */
  animation: heroVideoZoom 20s ease-in-out infinite alternate;
}

@keyframes heroVideoZoom {
  0%   { transform: translate(-50%, -50%) scale(1.0); }
  100% { transform: translate(-50%, -50%) scale(1.08); }
}

/* Gradient overlay — sits on top of video */
.hero--has-video .hero__overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(
    135deg,
    rgba(13, 13, 26, 0.55) 0%,
    rgba(26, 26, 46, 0.45) 40%,
    rgba(15, 52, 96, 0.35) 100%
  );
  z-index: 1;
}

/* Content stays above overlay */
.hero--has-video .hero__container,
.hero--has-video .hero__content,
.hero--has-video .hero__scroll-indicator {
  position: relative;
  z-index: 3;
}

/* Particles layer — between overlay and content */
.hero--has-video .hero__particles,
.hero__particles {
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
}

/* When hero has video, remove inline bg-image style */
.hero--has-video {
  background: none !important;
}

/* ── Mobile: hide video, show poster image instead ── */
@media (max-width: 768px) {
  .hero__video-wrap {
    display: none;
  }

  .hero--has-video {
    background-image: linear-gradient(
      135deg,
      rgba(26, 26, 46, 0.92) 0%,
      rgba(22, 33, 62, 0.88) 50%,
      rgba(15, 52, 96, 0.85) 100%
    );
    background-size: cover;
    background-position: center;
  }
}

/* ── Reduce motion preference ── */
@media (prefers-reduced-motion: reduce) {
  .hero__video {
    animation: none;
    transform: translate(-50%, -50%) scale(1);
  }
}


/* HOME interaction and hero loading fixes. */
html { overflow-x: hidden; }
.hero--has-video { background: #0d0d1a !important; }
.hero__video { background: #0d0d1a; }
.site-header__hamburger.active .site-header__hamburger-line:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.site-header__hamburger.active .site-header__hamburger-line:nth-child(2) { opacity: 0; transform: scaleX(0); }
.site-header__hamburger.active .site-header__hamburger-line:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }


/* Official marketplace links in the footer. */
.site-footer__marketplaces {
	border-top: 1px solid rgba(255, 255, 255, 0.1);
	background: rgba(0, 0, 0, 0.16);
}
.site-footer__marketplaces-inner {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 24px;
	padding-top: 22px;
	padding-bottom: 22px;
}
.site-footer__marketplaces-title {
	margin: 0;
	color: #fff;
	font-family: "Rajdhani", sans-serif;
	font-size: 1rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}
.site-footer__marketplaces-links {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 10px;
}
.marketplace-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	min-height: 42px;
	padding: 9px 15px;
	border: 1px solid rgba(255, 255, 255, 0.16);
	border-radius: 8px;
	background: rgba(255, 255, 255, 0.06);
	color: #fff;
	font-size: 0.9rem;
	font-weight: 700;
	line-height: 1;
	text-decoration: none;
	transition: transform 0.2s ease, border-color 0.2s ease, background 0.2s ease;
}
.marketplace-link:hover,
.marketplace-link:focus-visible {
	transform: translateY(-2px);
	border-color: currentColor;
	background: rgba(255, 255, 255, 0.12);
	color: #fff;
}
.marketplace-link__icon {
	display: inline-flex;
	width: 24px;
	height: 24px;
	align-items: center;
	justify-content: center;
	border-radius: 6px;
}
.marketplace-link__icon svg {
	width: 20px;
	height: 20px;
	fill: currentColor;
}
.marketplace-link--shopee .marketplace-link__icon { color: #ee4d2d; }
.marketplace-link--tokopedia .marketplace-link__icon { color: #42b549; }
.marketplace-link--tiktok .marketplace-link__icon { color: #fff; }
@media (max-width: 767px) {
	.site-footer__marketplaces-inner {
		flex-direction: column;
		gap: 14px;
		padding-top: 20px;
		padding-bottom: 20px;
	}
	.site-footer__marketplaces-links {
		width: 100%;
	}
	.marketplace-link {
		flex: 1 1 145px;
		justify-content: center;
	}
}


/* Functional WhatsApp assistance replacing the inactive newsletter form. */
.site-footer__support-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 42px;
	padding: 10px 16px;
	border-radius: 8px;
	background: #25d366;
	color: #08130c;
	font-size: 0.9rem;
	font-weight: 700;
	line-height: 1;
	text-decoration: none;
	transition: transform 0.2s ease, background 0.2s ease;
}
.site-footer__support-link:hover,
.site-footer__support-link:focus-visible {
	transform: translateY(-2px);
	background: #44df7a;
	color: #08130c;
}
.site-footer__support-link svg { flex: 0 0 auto; }
