html, body {
    font-family: 'Inter', sans-serif;
    background: #fff;
    color: #000;
    -webkit-font-smoothing: antialiased;
    overflow-x: hidden;
    width: 100%;
    max-width: 100vw;
    position: relative;
    transition: background-color 0.5s, color 0.5s;
}
.tracking-luxury { letter-spacing: 0.25em; }
.header-stack { position: fixed; top: 0; width: 100%; z-index: 100; transition: transform 0.4s ease, opacity 0.3s ease-in-out; will-change: transform, opacity; }
@media (max-width: 1023px) {
  .header-stack.mobile-header-hidden { transform: translateY(-100%); opacity: 0; pointer-events: none; }
  .header-stack.mobile-header-visible { transform: translateY(0); opacity: 1; pointer-events: auto; }
}

@keyframes marquee { 0% { transform: translateX(0); } 100% { transform: translateX(-50%); } }
.animate-marquee { display: inline-block; animation: marquee 30s linear infinite; }

nav { height: 80px; display: flex; align-items: center; justify-content: space-between; padding: 0 20px; transition: all 0.4s ease; }
@media (min-width: 1024px) { nav { padding: 0 40px; } }

.nav-initial { background-color: transparent; color: #fff; border-bottom: 1px solid rgba(255,255,255,0.1); }
.nav-scrolled { background-color: #fff !important; color: #000 !important; border-bottom: 1px solid #eee !important; height: 70px; }

drawer-overlay { opacity: 0; visibility: hidden; transition: all 0.5s ease; background: rgba(0,0,0,0.6); backdrop-filter: blur(6px); position: fixed; inset: 0; z-index: 120; }
.drawer-overlay.active { opacity: 1; visibility: visible; }

#search-overlay { position: fixed; inset: 0; background: white; z-index: 150; transform: translateY(-100%); transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1); }
#search-overlay.active { transform: translateY(0); }

#side-cart { position: fixed; top: 0; right: 0; width: 100%; max-width: 480px; background: white; z-index: 150; transform: translateX(100%); transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1); height: 100vh; display: flex; flex-direction: column; }
#side-cart.active { transform: translateX(0); }
#global-drawer.active { transform: translateX(0); }

@media (min-width: 1024px) {
  .mega-menu { display: none; position: fixed; left: 0; width: 100%; background: white; color: black; border-top: 1px solid #eee; padding: 80px 40px; z-index: 40; top: 112px; box-shadow: 0 20px 40px rgba(0,0,0,0.05); }
  .nav-scrolled .mega-menu { top: 102px; }
  .group:hover .mega-menu { display: block; }

}

.product-card .quick-add { transform: translateY(105%); transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1); }
.product-card:hover .quick-add { transform: translateY(0); }

.product-card-image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  transition: opacity 700ms ease, transform 700ms ease;
  transform: scale(1.01);
}
.product-card-image-main { opacity: 1; }
.product-card-image-hover { opacity: 0; }
.product-card:hover .product-card-image-main { opacity: 0; transform: scale(1.03); }
.product-card:hover .product-card-image-hover { opacity: 1; transform: scale(1.03); }

.hero-container { height: 100vh; width: 100%; position: relative; overflow: hidden; }
.hero-image { width: 100%; height: 100%; object-fit: cover; object-position: 50% 15%; }
@media (max-width: 1023px) { .hero-image { transform: scale(0.98); } }
@media (min-width: 1024px) { .hero-image { object-position: center 38%; } }

.hero-gradient { background: linear-gradient(to bottom, rgba(0,0,0,0.2) 0%, rgba(0,0,0,0) 40%, rgba(0,0,0,0.8) 100%); position: absolute; inset: 0; }
.story-parallax { background-attachment: fixed; background-size: cover; background-position: center; }

::-webkit-scrollbar { width: 4px; }
::-webkit-scrollbar-track { background: inherit; }
::-webkit-scrollbar-thumb { background: #555; }
.btn-selected { background-color: black !important; color: white !important; border-color: black !important; }

.woocommerce ul.products {
  list-style: none !important;
  margin: 0;
  padding: 0;
}
.woocommerce ul.products li.product {
  list-style: none !important;
}
.woocommerce ul.products li.product::marker {
  content: "" !important;
  display: none !important;
}

body.dark-mode { background-color: #050505; color: #fff; }
body.dark-mode .bg-white { background-color: #050505 !important; }
body.dark-mode .nav-scrolled, body.dark-mode .mega-menu, body.dark-mode #side-cart, body.dark-mode #search-overlay { background-color: #0a0a0a !important; color: #fff !important; border-color: #222 !important; }
body.dark-mode #global-drawer { background-color: #0a0a0a !important; color: #fff !important; border-color: #222 !important; }
body.dark-mode .text-black { color: #fff !important; }
body.dark-mode .bg-zinc-100 { background-color: #111 !important; }
body.dark-mode .bg-zinc-50 { background-color: #0a0aa0 !important; }
body.dark-mode .border-zinc-100, body.dark-mode .border-gray-100, body.dark-mode .border-zinc-200 { border-color: #222 !important; }
body.dark-mode .bg-black { background-color: #1a1a1a !important; }

body.dark-mode select, body.dark-mode option { background-color: #0a0a0a !important; color: #fff !important; border-color: #222 !important; }
body.dark-mode .quick-add { background-color: rgba(10,10,10,0.95) !important; border-top: 1px solid #333; }
body.dark-mode .quick-add span, body.dark-mode .quick-add button { color: #fff !important; }

#splash-screen { transition: transform 1s cubic-bezier(0.76, 0, 0.24, 1); }
.splash-up { transform: translateY(-100%); }
.splash-down { transform: translateY(0); }

.goog-te-banner-frame.skiptranslate { display: none !important; }
body { top: 0px !important; }
#goog-gt-tt { display: none !important; }
.goog-text-highlight { background-color: transparent !important; box-shadow: none !important; }
body:not(.dark-mode) .header-stack { background-color: #fff !important; color: #000 !important; }
body:not(.dark-mode) .header-stack nav { color: #000 !important; }
.header-stack .bg-black { color: #fff !important; }

.woocommerce div.product form.cart .variations select {
  width: 100%; padding: 1rem; border: 2px solid #e4e4e7; background: transparent; color: #000; font-size: 11px; text-transform: uppercase; letter-spacing: 0.1em; font-weight: 900; margin-bottom: 1rem; outline: none; cursor: pointer;
}
body.dark-mode .woocommerce div.product form.cart .variations select { border-color: #333; color: white; }
body.dark-mode .woocommerce div.product form.cart .variations select option { background-color: #050505; color: white; }

.woocommerce div.product form.cart .qty {
  width: 70px; padding: 1rem; border: 2px solid #e4e4e7; background: transparent; color: #000; text-align: center; font-weight: 900; font-size: 14px; outline: none;
}
body.dark-mode .woocommerce div.product form.cart .qty { border-color: #333; color: white; }

.woocommerce div.product form.cart .single_add_to_cart_button {
  width: 100%; background-color: #000 !important; color: #fff !important; padding: 1.5rem !important; font-size: 11px !important; font-weight: 900 !important; text-transform: uppercase !important; letter-spacing: 0.25em !important; border: none !important; border-radius: 0 !important; transition: all 0.3s ease !important; margin-top: 1rem; cursor: pointer;
}
.woocommerce div.product form.cart .single_add_to_cart_button:hover { background-color: #27272a !important; }
body.dark-mode .woocommerce div.product form.cart .single_add_to_cart_button { background-color: #fff !important; color: #000 !important; }
body.dark-mode .woocommerce div.product form.cart .single_add_to_cart_button:hover { background-color: #e4e4e7 !important; }


.woocommerce div.product form.cart .reset_variations { display: none !important; }
