:root {
--primary: #950606;
--primary-dark: #750505;
--header-red-dark: #2b0505;
--footerBg: var(--header-red-dark);
--textMain: #1A1A1A;
--textMuted: #6F6F6F;
--bgLight: #FAFAFA;
--borderGray: #E5E5E5;
--accent-ofertas: #950606;
--desc-gray: #374151;
--gold: #950606;
--whatsapp: #25D366;
--gray-50: #F9FAFB;
--gray-100: #F3F4F6;
--gray-200: #E5E7EB;
--gray-300: #D1D5DB;
--gray-400: #9CA3AF;
--yellow-400: #FACC15;
--red-50: #FEF2F2;
--red-800: #950606;
--black: #000000;
--white: #FFFFFF;
--dark1: #1A1A1A;
--dark2: #111111;
--offwhite: #F9F9F9;
--z-navbar:          50;
--rl-banner-h:       0px;
--z-promo-bar:       58;
--z-float-btn:       60;
--z-drawer:          70;
--z-modal-info:     105;
--z-modal-checkout: 110;
--z-modal-login:    115;
--z-modal-quickview:120;
--z-modal-lightbox: 125;
--z-modal-auth:     130;
--z-modal-review:   135;
--z-modal-sizeguide:140;
--z-modal-welcome:  145;
--z-toast:          200;
}
*, *::before, *::after { box-sizing: border-box; border-width: 0; border-style: solid; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
body { margin: 0; overflow-x: hidden; max-width: 100%; }
h1, h2, h3, h4, h5, h6, p { margin: 0; }
a { color: inherit; text-decoration: none; }
b, strong { font-weight: bolder; }
button, input, optgroup, select, textarea { font-family: inherit; font-size: 100%; font-weight: inherit; line-height: inherit; color: inherit; margin: 0; padding: 0; }
button, select { text-transform: none; }
button, [type='button'], [type='submit'] { -webkit-appearance: button; background-color: transparent; background-image: none; cursor: pointer; }
input::placeholder, textarea::placeholder { opacity: 1; color: var(--textMuted); }
ul, ol { list-style: none; margin: 0; padding: 0; }
img, svg, video { display: block; vertical-align: middle; }
img, video { max-width: 100%; height: auto; }
svg { fill: none; }
body {
font-family: 'Manrope', sans-serif;
color: var(--textMain);
background-color: #FFFFFF;
}
h1, h2, h3 {
font-family: 'Manrope', sans-serif;
font-weight: 700;
letter-spacing: -0.02em;
}
.menu {
font-family: 'Manrope', sans-serif;
font-weight: 500;
}
.btn {
font-family: 'Manrope', sans-serif;
font-weight: 600;
letter-spacing: 0.04em;
}

@media (max-width: 768px) {
input[type="text"], input[type="email"], input[type="password"],
input[type="search"], input[type="tel"], input[type="number"], textarea, select {
    font-size: 16px !important;
}
}

.font-display {
font-family: 'Manrope', sans-serif;
text-transform: uppercase;
letter-spacing: 0.01em;
font-weight: 300;
}
p, .text-body { line-height: 1.6; }
.hide-scrollbar::-webkit-scrollbar { display: none; }
.hide-scrollbar { -ms-overflow-style: none; scrollbar-width: none; }
.hover-zoom-container { overflow: hidden; }
.hover-zoom-container img { transition: transform 0.5s ease; }
.hover-zoom-container:hover img { transform: scale(1.05); }
.btn-primary { background-color: var(--primary); color: white; transition: background 0.2s ease; }
.btn-primary:hover { background-color: var(--primary-dark); }
.btn-primary:active { transform: scale(0.98); }

#toast-container { position: fixed; bottom: 20px; right: 20px; z-index: var(--z-toast); }
.toast {
background: rgba(255, 255, 255, 0.88);
backdrop-filter: blur(20px) saturate(160%);
-webkit-backdrop-filter: blur(20px) saturate(160%);
border: 1px solid rgba(255,255,255,0.7);
box-shadow: 0 8px 32px rgba(0,0,0,0.10), 0 2px 8px rgba(0,0,0,0.06);
color: var(--textMain, #1A1A1A);
padding: 12px 20px;
border-radius: 10px;
margin-top: 10px;
opacity: 0;
transform: translateY(12px) scale(0.97);
transition: opacity 0.35s cubic-bezier(0.16,1,0.3,1), transform 0.35s cubic-bezier(0.16,1,0.3,1);
display: flex;
align-items: center;
gap: 10px;
font-size: 13px;
font-weight: 500;
}
.toast.show { opacity: 1; transform: translateY(0) scale(1); }
#fomo-toast-container {
position: fixed;
bottom: 20px;
left: 20px;
z-index: 9995;
max-width: 300px;
pointer-events: none;
}
.fomo-toast {
display: flex;
align-items: flex-start;
gap: 12px;
background: #fff;
border: 1px solid rgba(0,0,0,0.08);
color: var(--textMain, #1A1A1A);
padding: 13px 16px;
border-radius: 12px;
box-shadow: 0 6px 24px rgba(0,0,0,0.12), 0 2px 6px rgba(0,0,0,0.06);
border-left: 3px solid var(--primary, #950606);
opacity: 0;
transform: translateX(-22px) scale(0.97);
transition: opacity 0.45s cubic-bezier(0.16,1,0.3,1), transform 0.45s cubic-bezier(0.16,1,0.3,1);
pointer-events: auto;
cursor: default;
}
.fomo-toast.show { opacity: 1; transform: translateX(0) scale(1); }
.fomo-toast.hide { opacity: 0; transform: translateX(-14px) scale(0.98); }
.fomo-toast-icon {
width: 32px; height: 32px; flex: none;
border-radius: 50%;
background: var(--primary);
display: flex; align-items: center; justify-content: center;
}
.fomo-toast-icon i { width: 15px; height: 15px; color: #FFFFFF; }
.fomo-toast-text { font-size: 12px; line-height: 1.45; color: var(--textMain, #1A1A1A); }
.fomo-toast-text strong { font-weight: 700; }
.fomo-toast-time { display: block; font-size: 10px; color: var(--textMuted, #6F6F6F); margin-top: 3px; letter-spacing: 0.02em; }
@media (max-width: 768px) {
#fomo-toast-container { left: 12px; right: auto; max-width: min(calc(100% - 96px), 320px); bottom: 90px; }
.fomo-toast { max-width: none; }
}
@media (prefers-reduced-motion: reduce) {
.fomo-toast { transition: opacity 0.45s cubic-bezier(0.16,1,0.3,1), transform 0.45s cubic-bezier(0.16,1,0.3,1); transform: none !important; }
}
.trust-grid { perspective: 900px; }
.trust-card { transition: transform 0.35s ease; }
.trust-icon {
width: 3.5rem; height: 3.5rem;
margin: 0 auto 1rem;
border-radius: 9999px;
background-color: #FFFFFF;
box-shadow: 0 1px 2px rgba(0,0,0,0.06);
display: flex; align-items: center; justify-content: center;
color: var(--primary);
position: relative;
transform-style: preserve-3d;
transition: transform 0.5s cubic-bezier(.16,1,.3,1), box-shadow 0.5s ease;
will-change: transform;
}
.trust-icon::before {
content: '';
position: absolute;
inset: -7px;
border-radius: 9999px;
background: radial-gradient(circle, rgba(194,0,14,0.35), transparent 70%);
opacity: 0;
transform: scale(0.8);
transition: opacity 0.4s ease, transform 0.4s ease;
z-index: -1;
}
.trust-icon i { transition: transform 0.5s cubic-bezier(.16,1,.3,1); }
.trust-card:hover .trust-icon {
transform: rotateY(16deg) rotateX(8deg) translateY(-4px);
box-shadow: 0 14px 26px rgba(0,0,0,0.15), 0 0 0 1px rgba(255,255,255,0.1);
}
.trust-card:hover .trust-icon::before { opacity: 1; transform: scale(1); }
.trust-card:hover .trust-icon i { transform: rotateY(-16deg) scale(1.1); }
.trust-card:hover h3 { color: var(--primary); }
.trust-card h3 { transition: color 0.3s ease; }
@media (prefers-reduced-motion: reduce) {
.trust-icon, .trust-icon::before, .trust-icon i { transition: none !important; }
.trust-card:hover .trust-icon { transform: none; }
}
.faq-container { max-width: 760px; margin: 0 auto; }
.faq-list { display: flex; flex-direction: column; }

.faq-item {
background-color: #FFFFFF;
border: none;
border-top: 1px solid var(--borderGray);
overflow: hidden;
}
.faq-item:last-child { border-bottom: 1px solid var(--borderGray); }
.faq-item:hover { background: none; }
.faq-item > summary { list-style: none; }
.faq-item > summary::-webkit-details-marker { display: none; }
.faq-item > summary::marker { content: ""; font-size: 0; }

.faq-question {
display: flex;
align-items: center;
justify-content: space-between;
gap: 16px;
cursor: pointer;
font-size: 13.5px;
font-weight: 700;
color: var(--textMain);
line-height: 1.4;
transition: background-color 0.25s ease, color 0.25s ease;
-webkit-tap-highlight-color: transparent;
}
.faq-question:hover { background-color: transparent; color: var(--primary); }
.faq-item[open] > .faq-question { color: var(--primary); }

.faq-icon {
flex: none;
color: var(--primary);
transition: transform 0.35s cubic-bezier(.4,0,.2,1);
}
.faq-item[open] .faq-icon { transform: rotate(180deg); }
.faq-panel {
display: grid !important;
grid-template-rows: 0fr;
opacity: 0;
transition: grid-template-rows 0.35s cubic-bezier(.4,0,.2,1), opacity 0.3s ease;
}
.faq-item[open] > .faq-panel { grid-template-rows: 1fr; opacity: 1; }

.faq-answer {
overflow: hidden;
min-height: 0;
color: var(--textMuted);
border-top: 1px solid var(--borderGray);
}
.faq-answer p { margin: 0; }
.faq-answer strong { color: var(--textMain); }

@media (prefers-reduced-motion: reduce) {
.faq-panel, .faq-icon { transition: none !important; }
}

.reveal { opacity: 0; transform: translateY(30px); transition: all 0.8s ease-out; }
.reveal.active { opacity: 1; transform: translateY(0); }
.glass-header {
background-color: var(--header-red-dark);
color: #FFFFFF;
box-shadow: 0 2px 16px rgba(0, 0, 0, 0.28);
}

header.glass-header { top: calc(var(--promo-bar-h, 0px) + var(--rl-banner-h, 0px)); }
#cart-counter { transition: transform 0.2s ease; }
.header-icon {
width: 22px;
height: 22px;
stroke: currentColor;
stroke-width: 1.5;
stroke-linecap: round;
stroke-linejoin: round;
fill: none;
}

#header-logo-img {
max-height: var(--header-logo-h, 32px);
width: auto;
height: auto;
filter: brightness(0) invert(1);
}
@media (max-width: 767px) {
#header-logo-img, #header-logo-text { max-width: 100%; }
}

@keyframes marqueeScroll {
from { transform: translateX(0); }
to   { transform: translateX(-50%); }
}
#marquee-track {
animation: marqueeScroll 30s linear infinite;
will-change: transform;
}
#marquee-container:hover #marquee-track { animation-play-state: paused; }
@media (prefers-reduced-motion: reduce) { #marquee-track { animation: none !important; } }
@keyframes spin { from { transform: rotate(0deg); } to { transform: rotate(360deg); } }
.marquee-item {
display: inline-flex;
align-items: center;
gap: 5px;
margin-right: 4rem;
font-size: 12px;
font-weight: 500;
text-transform: uppercase;
letter-spacing: 0.08em;
white-space: nowrap;
}
@media (max-width: 768px) {
#marquee-container { padding: 8px 0; }
.marquee-item { font-size: 11px; margin-right: 2rem; gap: 4px; }
#marquee-container .w-4 { width: 14px; height: 14px; }
}
@media (max-width: 420px) {
.marquee-item { font-size: 10px; margin-right: 1.5rem; }
}
.-right-2 { right: -0.5rem; }
.-top-12 { top: -3rem; }
.-top-2 { top: -0.5rem; }
.-translate-x-1 { transform: translateX(-0.25rem); }
.-translate-x-1\/2 { transform: translateX(-50%); }
.-translate-x-full { transform: translateX(-100%); }
.absolute { position: absolute; }
.accent-primary { accent-color: var(--primary); }
.animate-spin { animation: spin 1s linear infinite; }
.antialiased { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
.aspect-\[21\/9\] { aspect-ratio: 21 / 9; }
.aspect-\[3\/4\] { aspect-ratio: 3 / 4; }
.aspect-\[4\/3\] { aspect-ratio: 4 / 3; }
.aspect-\[4\/5\] { aspect-ratio: 4 / 5; }
.aspect-auto { aspect-ratio: auto; }
.aspect-square { aspect-ratio: 1 / 1; }
.backdrop-blur { backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); }
.bg-\[\#111\] { background-color: var(--dark2); }
.bg-\[\#1a1a1a\] { background-color: var(--dark1); }
.bg-\[\#25D366\] { background-color: var(--whatsapp); }
.bg-\[\#D4AF37\] { background-color: var(--gold); }
.bg-\[\#F9F9F9\] { background-color: var(--offwhite); }
.bg-bgLight { background-color: var(--bgLight); }
.bg-black { background-color: var(--black); }
.bg-black\/10 { background-color: rgba(0, 0, 0, 0.1); }
.bg-black\/50 { background-color: rgba(0, 0, 0, 0.5); }
.bg-black\/60 { background-color: rgba(0, 0, 0, 0.6); }
.bg-black\/70 { background-color: rgba(0, 0, 0, 0.7); }
.bg-black\/90 { background-color: rgba(0, 0, 0, 0.9); }
.bg-center { background-position: center; }
.bg-cover { background-size: cover; }
.bg-footerBg { background-color: var(--footerBg); }

.footer-location {
font-family: 'Manrope', sans-serif;
text-transform: uppercase;
font-size: 12px;
letter-spacing: 0.25em;
color: rgba(255, 255, 255, 0.55);
}
.footer-info-link {
font-family: 'Manrope', sans-serif;
font-size: 13px;
font-weight: 300;
color: rgba(255, 255, 255, 0.7);
}
.footer-info-link:hover { color: #FFFFFF; }
.bg-gray-100 { background-color: var(--gray-100); }
.bg-gray-50 { background-color: var(--gray-50); }
.bg-primary { background-color: var(--primary); }
.bg-red-50 { background-color: var(--red-50); }
.bg-red-800 { background-color: var(--red-800); }
.bg-textMain { background-color: var(--textMain); }
.bg-transparent { background-color: transparent; }
.bg-white { background-color: var(--white); }
.bg-white\/10 { background-color: rgba(255, 255, 255, 0.1); }
.bg-white\/25 { background-color: rgba(255, 255, 255, 0.25); }
.bg-white\/90 { background-color: rgba(255, 255, 255, 0.9); }
.block { display: block; }
.blur-xl { filter: blur(24px); }
.border { border-width: 1px; }
.border-2 { border-width: 2px; }
.border-\[\#333\] { border-color: #333333; }
.border-\[\#D4AF37\] { border-color: var(--gold); }
.border-\[\#D4AF37\]\/30 { border-color: rgba(212, 175, 55, 0.3); }
.border-b { border-bottom-width: 1px; }
.border-b-0 { border-bottom-width: 0px; }
.border-b-2 { border-bottom-width: 2px; }
.border-bgLight { border-color: var(--bgLight); }
.border-black { border-color: var(--black); }
.border-borderGray { border-color: var(--borderGray); }
.border-dashed { border-style: dashed; }
.border-gray-100 { border-color: var(--gray-100); }
.border-gray-50 { border-color: var(--gray-50); }
.border-primary { border-color: var(--primary); }
.border-primary\/20 { border-color: rgba(200, 16, 46, 0.2); }
.border-red-800 { border-color: var(--red-800); }
.border-t { border-top-width: 1px; }
.border-textMain { border-color: var(--textMain); }
.border-white\/20 { border-color: rgba(255, 255, 255, 0.2); }
.bottom-0 { bottom: 0; }
.bottom-24 { bottom: 6rem; }
.bottom-6 { bottom: 1.5rem; }
.bottom-8 { bottom: 2rem; }
.brightness-75 { filter: brightness(0.75); }
.brightness-90 { filter: brightness(0.9); }
.brightness-95 { filter: brightness(0.95); }
.col-span-full { grid-column: 1 / -1; }
.cursor-pointer { cursor: pointer; }
.cursor-zoom-in { cursor: zoom-in; }
.cursor-zoom-out { cursor: zoom-out; }
.drop-shadow-2xl { filter: drop-shadow(0 25px 25px rgba(0,0,0,0.15)); }
.drop-shadow-md { filter: drop-shadow(0 4px 3px rgba(0,0,0,0.07)) drop-shadow(0 2px 2px rgba(0,0,0,0.06)); }
.duration-1000 { transition-duration: 1000ms; }
.duration-200 { transition-duration: 200ms; }
.duration-300 { transition-duration: 300ms; }
.duration-700 { transition-duration: 700ms; }
.ease-in-out { transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); }
.ease-out { transition-timing-function: cubic-bezier(0, 0, 0.2, 1); }
.fill-current { fill: currentColor; }
.fill-primary { fill: var(--primary); }
.fixed { position: fixed; }
.flex { display: flex; }
.flex-1 { flex: 1 1 0%; }
.flex-col { flex-direction: column; }
.flex-grow { flex-grow: 1; }
.flex-grow-0 { flex-grow: 0; }
.flex-row { flex-direction: row; }
.flex-shrink-0 { flex-shrink: 0; }
.flex-wrap { flex-wrap: wrap; }
.font-bold { font-weight: 700; }
.font-medium { font-weight: 500; }
.font-normal { font-weight: 400; }
.font-semibold { font-weight: 600; }
.gap-0 { gap: 0px; }
.gap-0\.5 { gap: 0.125rem; }
.gap-1 { gap: 0.25rem; }
.gap-1\.5 { gap: 0.375rem; }
.gap-10 { gap: 2.5rem; }
.gap-12 { gap: 3rem; }
.gap-14 { gap: 3.5rem; }
.gap-16 { gap: 4rem; }
.gap-2 { gap: 0.5rem; }
.gap-2\.5 { gap: 0.625rem; }
.gap-20 { gap: 5rem; }
.gap-24 { gap: 6rem; }
.gap-3 { gap: 0.75rem; }
.gap-3\.5 { gap: 0.875rem; }
.gap-4 { gap: 1rem; }
.gap-5 { gap: 1.25rem; }
.gap-6 { gap: 1.5rem; }
.gap-64 { gap: 16rem; }
.gap-7 { gap: 1.75rem; }
.gap-8 { gap: 2rem; }
.gap-9 { gap: 2.25rem; }
.grayscale { filter: grayscale(100%); }
.grid { display: grid; }
.grid-cols-1 { grid-template-columns: repeat(1, minmax(0, 1fr)); }
.grid-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.grid-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.grid-cols-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.h-0 { height: 0px; }
.h-0\.5 { height: 0.125rem; }
.h-1 { height: 0.25rem; }
.h-1\.5 { height: 0.375rem; }
.h-10 { height: 2.5rem; }
.h-12 { height: 3rem; }
.h-14 { height: 3.5rem; }
.h-16 { height: 4rem; }
.h-2 { height: 0.5rem; }
.h-2\.5 { height: 0.625rem; }
.h-20 { height: 5rem; }
.h-24 { height: 6rem; }
.h-3 { height: 0.75rem; }
.h-3\.5 { height: 0.875rem; }
.h-4 { height: 1rem; }
.h-5 { height: 1.25rem; }
.h-6 { height: 1.5rem; }
.h-64 { height: 16rem; }
.h-7 { height: 1.75rem; }
.h-8 { height: 2rem; }
.h-9 { height: 2.25rem; }
.h-full { height: 100%; }
.h-px { height: 1px; }
.hidden{display:none!important}
.inline-block { display: inline-block; }
.inline-flex { display: inline-flex; }
.inset-0 { top: 0; right: 0; bottom: 0; left: 0; }
.inset-x-0 { left: 0; right: 0; }
.items-baseline { align-items: baseline; }
.items-center { align-items: center; }
.items-end { align-items: flex-end; }
.items-start { align-items: flex-start; }
.justify-between { justify-content: space-between; }
.justify-center { justify-content: center; }
.justify-end { justify-content: flex-end; }
.leading-none { line-height: 1; }
.leading-relaxed { line-height: 1.625; }
.leading-snug { line-height: 1.375; }
.leading-tight { line-height: 1.25; }
.left-0 { left: 0; }
.left-1\/2 { left: 50%; }
.left-3 { left: 0.75rem; }
.line-clamp-1 { overflow: hidden; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 1; }
.line-clamp-2 { overflow: hidden; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.line-through { text-decoration: line-through; }
.max-h-60 { max-height: 15rem; }
.max-h-64 { max-height: 16rem; }
.max-h-\[480px\] { max-height: 480px; }
.max-h-full { max-height: 100%; }
.max-w-\[1200px\] { max-width: 1200px; }
.max-w-\[700px\] { max-width: 700px; }
.max-w-full { max-width: 100%; }
.max-w-md { max-width: 28rem; }
.max-w-sm { max-width: 24rem; }
.mb-0 { margin-bottom: 0px; }
.mb-0\.5 { margin-bottom: 0.125rem; }
.mb-1 { margin-bottom: 0.25rem; }
.mb-1\.5 { margin-bottom: 0.375rem; }
.mb-10 { margin-bottom: 2.5rem; }
.mb-12 { margin-bottom: 3rem; }
.mb-14 { margin-bottom: 3.5rem; }
.mb-16 { margin-bottom: 4rem; }
.mb-2 { margin-bottom: 0.5rem; }
.mb-2\.5 { margin-bottom: 0.625rem; }
.mb-20 { margin-bottom: 5rem; }
.mb-24 { margin-bottom: 6rem; }
.mb-3 { margin-bottom: 0.75rem; }
.mb-3\.5 { margin-bottom: 0.875rem; }
.mb-4 { margin-bottom: 1rem; }
.mb-5 { margin-bottom: 1.25rem; }
.mb-6 { margin-bottom: 1.5rem; }
.mb-64 { margin-bottom: 16rem; }
.mb-7 { margin-bottom: 1.75rem; }
.mb-8 { margin-bottom: 2rem; }
.mb-9 { margin-bottom: 2.25rem; }
.min-h-\[320px\] { min-height: 320px; }
.min-h-\[560px\] { min-height: 560px; }
.min-h-\[60vh\] { min-height: 60vh; }
.min-h-screen { min-height: 100vh; }
.min-w-\[16px\] { min-width: 16px; }
.ml-0 { margin-left: 0px; }
.ml-0\.5 { margin-left: 0.125rem; }
.ml-1 { margin-left: 0.25rem; }
.ml-1\.5 { margin-left: 0.375rem; }
.ml-10 { margin-left: 2.5rem; }
.ml-12 { margin-left: 3rem; }
.ml-14 { margin-left: 3.5rem; }
.ml-16 { margin-left: 4rem; }
.ml-2 { margin-left: 0.5rem; }
.ml-2\.5 { margin-left: 0.625rem; }
.ml-20 { margin-left: 5rem; }
.ml-24 { margin-left: 6rem; }
.ml-3 { margin-left: 0.75rem; }
.ml-3\.5 { margin-left: 0.875rem; }
.ml-4 { margin-left: 1rem; }
.ml-5 { margin-left: 1.25rem; }
.ml-6 { margin-left: 1.5rem; }
.ml-64 { margin-left: 16rem; }
.ml-7 { margin-left: 1.75rem; }
.ml-8 { margin-left: 2rem; }
.ml-9 { margin-left: 2.25rem; }
.mr-0 { margin-right: 0px; }
.mr-0\.5 { margin-right: 0.125rem; }
.mr-1 { margin-right: 0.25rem; }
.mr-1\.5 { margin-right: 0.375rem; }
.mr-10 { margin-right: 2.5rem; }
.mr-12 { margin-right: 3rem; }
.mr-14 { margin-right: 3.5rem; }
.mr-16 { margin-right: 4rem; }
.mr-2 { margin-right: 0.5rem; }
.mr-2\.5 { margin-right: 0.625rem; }
.mr-20 { margin-right: 5rem; }
.mr-24 { margin-right: 6rem; }
.mr-3 { margin-right: 0.75rem; }
.mr-3\.5 { margin-right: 0.875rem; }
.mr-4 { margin-right: 1rem; }
.mr-5 { margin-right: 1.25rem; }
.mr-6 { margin-right: 1.5rem; }
.mr-64 { margin-right: 16rem; }
.mr-7 { margin-right: 1.75rem; }
.mr-8 { margin-right: 2rem; }
.mr-9 { margin-right: 2.25rem; }
.mt-0 { margin-top: 0px; }
.mt-0\.5 { margin-top: 0.125rem; }
.mt-1 { margin-top: 0.25rem; }
.mt-1\.5 { margin-top: 0.375rem; }
.mt-10 { margin-top: 2.5rem; }
.mt-12 { margin-top: 3rem; }
.mt-14 { margin-top: 3.5rem; }
.mt-16 { margin-top: 4rem; }
.mt-2 { margin-top: 0.5rem; }
.mt-2\.5 { margin-top: 0.625rem; }
.mt-20 { margin-top: 5rem; }
.mt-24 { margin-top: 6rem; }
.mt-3 { margin-top: 0.75rem; }
.mt-3\.5 { margin-top: 0.875rem; }
.mt-4 { margin-top: 1rem; }
.mt-5 { margin-top: 1.25rem; }
.mt-6 { margin-top: 1.5rem; }
.mt-64 { margin-top: 16rem; }
.mt-7 { margin-top: 1.75rem; }
.mt-8 { margin-top: 2rem; }
.mt-9 { margin-top: 2.25rem; }
.mx-auto { margin-left: auto; margin-right: auto; }
.object-center { object-position: center; }
.object-contain { object-fit: contain; }
.object-cover { object-fit: cover; }
.opacity-0 { opacity: 0; }
.opacity-100 { opacity: 1; }
.opacity-20 { opacity: 0.2; }
.opacity-40 { opacity: 0.4; }
.opacity-50 { opacity: 0.5; }
.outline-none { outline: none; }
.overflow-auto { overflow: auto; }
.overflow-hidden { overflow: hidden; }
.overflow-x-hidden { overflow-x: hidden; }
.overflow-y-auto { overflow-y: auto; }
.p-0 { padding: 0px; }
.p-0\.5 { padding: 0.125rem; }
.p-1 { padding: 0.25rem; }
.p-1\.5 { padding: 0.375rem; }
.p-10 { padding: 2.5rem; }
.p-12 { padding: 3rem; }
.p-14 { padding: 3.5rem; }
.p-16 { padding: 4rem; }
.p-2 { padding: 0.5rem; }
.p-2\.5 { padding: 0.625rem; }
.p-20 { padding: 5rem; }
.p-24 { padding: 6rem; }
.p-3 { padding: 0.75rem; }
.p-3\.5 { padding: 0.875rem; }
.p-4 { padding: 1rem; }
.p-5 { padding: 1.25rem; }
.p-6 { padding: 1.5rem; }
.p-64 { padding: 16rem; }
.p-7 { padding: 1.75rem; }
.p-8 { padding: 2rem; }
.p-9 { padding: 2.25rem; }
.pb-0 { padding-bottom: 0px; }
.pb-0\.5 { padding-bottom: 0.125rem; }
.pb-1 { padding-bottom: 0.25rem; }
.pb-1\.5 { padding-bottom: 0.375rem; }
.pb-10 { padding-bottom: 2.5rem; }
.pb-12 { padding-bottom: 3rem; }
.pb-14 { padding-bottom: 3.5rem; }
.pb-16 { padding-bottom: 4rem; }
.pb-2 { padding-bottom: 0.5rem; }
.pb-2\.5 { padding-bottom: 0.625rem; }
.pb-20 { padding-bottom: 5rem; }
.pb-24 { padding-bottom: 6rem; }
.pb-3 { padding-bottom: 0.75rem; }
.pb-3\.5 { padding-bottom: 0.875rem; }
.pb-4 { padding-bottom: 1rem; }
.pb-5 { padding-bottom: 1.25rem; }
.pb-6 { padding-bottom: 1.5rem; }
.pb-64 { padding-bottom: 16rem; }
.pb-7 { padding-bottom: 1.75rem; }
.pb-8 { padding-bottom: 2rem; }
.pb-9 { padding-bottom: 2.25rem; }
.pl-0 { padding-left: 0px; }
.pl-0\.5 { padding-left: 0.125rem; }
.pl-1 { padding-left: 0.25rem; }
.pl-1\.5 { padding-left: 0.375rem; }
.pl-10 { padding-left: 2.5rem; }
.pl-12 { padding-left: 3rem; }
.pl-14 { padding-left: 3.5rem; }
.pl-16 { padding-left: 4rem; }
.pl-2 { padding-left: 0.5rem; }
.pl-2\.5 { padding-left: 0.625rem; }
.pl-20 { padding-left: 5rem; }
.pl-24 { padding-left: 6rem; }
.pl-3 { padding-left: 0.75rem; }
.pl-3\.5 { padding-left: 0.875rem; }
.pl-4 { padding-left: 1rem; }
.pl-5 { padding-left: 1.25rem; }
.pl-6 { padding-left: 1.5rem; }
.pl-64 { padding-left: 16rem; }
.pl-7 { padding-left: 1.75rem; }
.pl-8 { padding-left: 2rem; }
.pl-9 { padding-left: 2.25rem; }
.pointer-events-auto { pointer-events: auto; }
.pointer-events-none { pointer-events: none; }
.pr-0 { padding-right: 0px; }
.pr-0\.5 { padding-right: 0.125rem; }
.pr-1 { padding-right: 0.25rem; }
.pr-1\.5 { padding-right: 0.375rem; }
.pr-10 { padding-right: 2.5rem; }
.pr-12 { padding-right: 3rem; }
.pr-14 { padding-right: 3.5rem; }
.pr-16 { padding-right: 4rem; }
.pr-2 { padding-right: 0.5rem; }
.pr-2\.5 { padding-right: 0.625rem; }
.pr-20 { padding-right: 5rem; }
.pr-24 { padding-right: 6rem; }
.pr-3 { padding-right: 0.75rem; }
.pr-3\.5 { padding-right: 0.875rem; }
.pr-4 { padding-right: 1rem; }
.pr-5 { padding-right: 1.25rem; }
.pr-6 { padding-right: 1.5rem; }
.pr-64 { padding-right: 16rem; }
.pr-7 { padding-right: 1.75rem; }
.pr-8 { padding-right: 2rem; }
.pr-9 { padding-right: 2.25rem; }
.pt-0 { padding-top: 0px; }
.pt-0\.5 { padding-top: 0.125rem; }
.pt-1 { padding-top: 0.25rem; }
.pt-1\.5 { padding-top: 0.375rem; }
.pt-10 { padding-top: 2.5rem; }
.pt-12 { padding-top: 3rem; }
.pt-14 { padding-top: 3.5rem; }
.pt-16 { padding-top: 4rem; }
.pt-2 { padding-top: 0.5rem; }
.pt-2\.5 { padding-top: 0.625rem; }
.pt-20 { padding-top: 5rem; }
.pt-24 { padding-top: 6rem; }
.pt-3 { padding-top: 0.75rem; }
.pt-3\.5 { padding-top: 0.875rem; }
.pt-4 { padding-top: 1rem; }
.pt-5 { padding-top: 1.25rem; }
.pt-6 { padding-top: 1.5rem; }
.pt-64 { padding-top: 16rem; }
.pt-7 { padding-top: 1.75rem; }
.pt-8 { padding-top: 2rem; }
.pt-9 { padding-top: 2.25rem; }
.px-0 { padding-left: 0px; padding-right: 0px; }
.px-0\.5 { padding-left: 0.125rem; padding-right: 0.125rem; }
.px-1 { padding-left: 0.25rem; padding-right: 0.25rem; }
.px-1\.5 { padding-left: 0.375rem; padding-right: 0.375rem; }
.px-10 { padding-left: 2.5rem; padding-right: 2.5rem; }
.px-12 { padding-left: 3rem; padding-right: 3rem; }
.px-14 { padding-left: 3.5rem; padding-right: 3.5rem; }
.px-16 { padding-left: 4rem; padding-right: 4rem; }
.px-2 { padding-left: 0.5rem; padding-right: 0.5rem; }
.px-2\.5 { padding-left: 0.625rem; padding-right: 0.625rem; }
.px-20 { padding-left: 5rem; padding-right: 5rem; }
.px-24 { padding-left: 6rem; padding-right: 6rem; }
.px-3 { padding-left: 0.75rem; padding-right: 0.75rem; }
.px-3\.5 { padding-left: 0.875rem; padding-right: 0.875rem; }
.px-4 { padding-left: 1rem; padding-right: 1rem; }
.px-5 { padding-left: 1.25rem; padding-right: 1.25rem; }
.px-6 { padding-left: 1.5rem; padding-right: 1.5rem; }
.px-64 { padding-left: 16rem; padding-right: 16rem; }
.px-7 { padding-left: 1.75rem; padding-right: 1.75rem; }
.px-8 { padding-left: 2rem; padding-right: 2rem; }
.px-9 { padding-left: 2.25rem; padding-right: 2.25rem; }
.py-0 { padding-top: 0px; padding-bottom: 0px; }
.py-0\.5 { padding-top: 0.125rem; padding-bottom: 0.125rem; }
.py-1 { padding-top: 0.25rem; padding-bottom: 0.25rem; }
.py-1\.5 { padding-top: 0.375rem; padding-bottom: 0.375rem; }
.py-10 { padding-top: 2.5rem; padding-bottom: 2.5rem; }
.py-12 { padding-top: 3rem; padding-bottom: 3rem; }
.py-14 { padding-top: 3.5rem; padding-bottom: 3.5rem; }
.py-16 { padding-top: 4rem; padding-bottom: 4rem; }
.py-2 { padding-top: 0.5rem; padding-bottom: 0.5rem; }
.py-2\.5 { padding-top: 0.625rem; padding-bottom: 0.625rem; }
.py-20 { padding-top: 5rem; padding-bottom: 5rem; }
.py-24 { padding-top: 6rem; padding-bottom: 6rem; }
.py-3 { padding-top: 0.75rem; padding-bottom: 0.75rem; }
.py-3\.5 { padding-top: 0.875rem; padding-bottom: 0.875rem; }
.py-4 { padding-top: 1rem; padding-bottom: 1rem; }
.py-5 { padding-top: 1.25rem; padding-bottom: 1.25rem; }
.py-6 { padding-top: 1.5rem; padding-bottom: 1.5rem; }
.py-64 { padding-top: 16rem; padding-bottom: 16rem; }
.py-7 { padding-top: 1.75rem; padding-bottom: 1.75rem; }
.py-8 { padding-top: 2rem; padding-bottom: 2rem; }
.py-9 { padding-top: 2.25rem; padding-bottom: 2.25rem; }
.relative { position: relative; }
.right-0 { right: 0; }
.right-2 { right: 0.5rem; }
.right-3 { right: 0.75rem; }
.right-4 { right: 1rem; }
.right-6 { right: 1.5rem; }
.rounded-full { border-radius: 9999px; }
.rounded-l-none { border-top-left-radius: 0px; border-bottom-left-radius: 0px; }
.rounded-none { border-radius: 0px; }
.rounded-r-none { border-top-right-radius: 0px; border-bottom-right-radius: 0px; }
.rounded-sm { border-radius: 0.125rem; }
.scale-105 { transform: scale(1.05); }
.scale-110 { transform: scale(1.1); }
.scale-125 { transform: scale(1.25); }
.scale-95 { transform: scale(0.95); }
.select-none { user-select: none; -webkit-user-select: none; }
.shadow-2xl { box-shadow: 0 25px 50px -12px rgba(0,0,0,0.25); }
.shadow-lg { box-shadow: 0 10px 15px -3px rgba(0,0,0,0.1), 0 4px 6px -4px rgba(0,0,0,0.1); }
.shadow-md { box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1), 0 2px 4px -2px rgba(0,0,0,0.1); }
.shadow-none { box-shadow: none; }
.shadow-sm { box-shadow: 0 1px 2px 0 rgba(0,0,0,0.05); }
.shadow-xl { box-shadow: 0 20px 25px -5px rgba(0,0,0,0.1), 0 8px 10px -6px rgba(0,0,0,0.1); }
.sticky { position: sticky; }
.tabular-nums { font-variant-numeric: tabular-nums; }
.text-2xl { font-size: 1.5rem; line-height: 2rem; }
.text-3xl { font-size: 1.875rem; line-height: 2.25rem; }
.text-4xl { font-size: 2.25rem; line-height: 2.5rem; }
.text-5xl { font-size: 3rem; line-height: 1; }
.text-6xl { font-size: 3.75rem; line-height: 1; }
.text-\[\#D4AF37\] { color: var(--gold); }
.text-\[10px\] { font-size: 10px; }
.text-\[11px\] { font-size: 11px; }
.text-\[9px\] { font-size: 9px; }
.text-base { font-size: 1rem; line-height: 1.5rem; }
.text-black { color: var(--black); }
.text-borderGray { color: var(--borderGray); }
.text-center { text-align: center; }
.text-gray-200 { color: var(--gray-200); }
.text-gray-300 { color: var(--gray-300); }
.text-gray-400 { color: var(--gray-400); }
.text-lg { font-size: 1.125rem; line-height: 1.75rem; }
.text-primary { color: var(--primary); }
.text-sm { font-size: 0.875rem; line-height: 1.25rem; }
.text-textMain { color: var(--textMain); }
.text-textMuted { color: var(--textMuted); }
.text-white { color: var(--white); }
.text-white\/80 { color: rgba(255, 255, 255, 0.8); }
.text-xl { font-size: 1.25rem; line-height: 1.75rem; }
.text-xs { font-size: 0.75rem; line-height: 1rem; }
.text-yellow-400 { color: var(--yellow-400); }
.top-0 { top: 0; }
.top-2 { top: 0.5rem; }
.top-28 { top: 7rem; }
.top-3 { top: 0.75rem; }
.top-4 { top: 1rem; }
.top-full { top: 100%; }
.tracking-\[0\.15em\] { letter-spacing: 0.15em; }
.tracking-\[0\.1em\] { letter-spacing: 0.1em; }
.tracking-\[0\.25em\] { letter-spacing: 0.25em; }
.tracking-\[0\.2em\] { letter-spacing: 0.2em; }
.tracking-\[0\.3em\] { letter-spacing: 0.3em; }
.tracking-\[0\.4em\] { letter-spacing: 0.4em; }
.tracking-tighter { letter-spacing: -0.05em; }
.tracking-wide { letter-spacing: 0.025em; }
.tracking-wider { letter-spacing: 0.05em; }
.tracking-widest { letter-spacing: 0.1em; }
.transition-all { transition-property: all; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms; }
.transition-colors { transition-property: color, background-color, border-color, fill, stroke; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms; }
.transition-opacity { transition-property: opacity; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms; }
.transition-transform { transition-property: transform; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms; }
.translate-x-1 { transform: translateX(0.25rem); }
.translate-x-full { transform: translateX(100%); }
.translate-y-0 { transform: translateY(0px); }
.translate-y-4 { transform: translateY(1rem); }
.underline { text-decoration: underline; }
.uppercase { text-transform: uppercase; }
.w-0 { width: 0px; }
.w-0\.5 { width: 0.125rem; }
.w-1 { width: 0.25rem; }
.w-1\.5 { width: 0.375rem; }
.w-10 { width: 2.5rem; }
.w-12 { width: 3rem; }
.w-14 { width: 3.5rem; }
.w-16 { width: 4rem; }
.w-2 { width: 0.5rem; }
.w-2\.5 { width: 0.625rem; }
.w-2\/4 { width: 50%; }
.w-2\/5 { width: 40%; }
.w-20 { width: 5rem; }
.w-24 { width: 6rem; }
.w-3 { width: 0.75rem; }
.w-3\.5 { width: 0.875rem; }
.w-3\/5 { width: 60%; }
.w-4 { width: 1rem; }
.w-4\/5 { width: 80%; }
.w-5 { width: 1.25rem; }
.w-6 { width: 1.5rem; }
.w-64 { width: 16rem; }
.w-7 { width: 1.75rem; }
.w-8 { width: 2rem; }
.w-9 { width: 2.25rem; }
.w-\[300px\] { width: 300px; }
.w-\[350px\] { width: 350px; }
.w-\[380px\] { width: 380px; }
.w-full { width: 100%; }
.whitespace-normal { white-space: normal; }
.whitespace-nowrap { white-space: nowrap; }
.z-10 { z-index: 10; }
.z-20 { z-index: 20; }
.z-40 { z-index: 40; }
.z-50 { z-index: var(--z-navbar); }
.z-\[60\] { z-index: var(--z-drawer); }
.z-\[70\] { z-index: var(--z-modal-checkout); }
.z-\[75\] { z-index: var(--z-modal-login); }
.z-\[80\] { z-index: var(--z-modal-lightbox); }
.space-y-2 > * + * { margin-top: 0.5rem; }
.space-y-3 > * + * { margin-top: 0.75rem; }
.space-y-4 > * + * { margin-top: 1rem; }
.space-y-5 > * + * { margin-top: 1.25rem; }
.bg-black.bg-opacity-50 { background-color: rgba(0, 0, 0, 0.5); }
.bg-gradient-to-t.from-black\/90.to-transparent { background-image: linear-gradient(to top, rgba(0,0,0,0.9), rgba(0,0,0,0)); }
.hover\:bg-\[\#D4AF37\]:hover { background-color: var(--gold); }
.hover\:bg-bgLight:hover { background-color: var(--bgLight); }
.hover\:bg-red-50:hover { background-color: var(--red-50); }
.hover\:bg-red-800:hover { background-color: var(--red-800); }
.hover\:bg-textMain:hover { background-color: var(--textMain); }
.hover\:bg-white:hover { background-color: var(--white); }
.hover\:bg-white\/25:hover { background-color: rgba(255, 255, 255, 0.25); }
.hover\:border-primary:hover { border-color: var(--primary); }
.hover\:scale-110:hover { transform: scale(1.1); }
.hover\:shadow-md:hover { box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1), 0 2px 4px -2px rgba(0,0,0,0.1); }
.hover\:text-black:hover { color: var(--black); }
.hover\:text-primary:hover { color: var(--primary); }
.hover\:text-white:hover { color: var(--white); }
.hover\:underline:hover { text-decoration: underline; }

.focus\:border-primary:focus { border-color: var(--primary); }
.focus\:outline-none:focus { outline: none; }
.group:hover .group-hover\:-translate-x-1 { transform: translateX(-0.25rem); }
.group:hover .group-hover\:brightness-90 { filter: brightness(0.9); }
.group:hover .group-hover\:brightness-95 { filter: brightness(0.95); }
.group:hover .group-hover\:opacity-100 { opacity: 1; }
.group:hover .group-hover\:scale-105 { transform: scale(1.05); }
.group:hover .group-hover\:text-primary { color: var(--primary); }
.group:hover .group-hover\:translate-x-1 { transform: translateX(0.25rem); }
@media (min-width: 640px) {
.sm\:block { display: block; }
.sm\:flex-row { flex-direction: row; }
.sm\:rounded-l-none { border-top-left-radius: 0px; border-bottom-left-radius: 0px; }
.sm\:rounded-r-none { border-top-right-radius: 0px; border-bottom-right-radius: 0px; }
.sm\:w-\[350px\] { width: 350px; }
.sm\:w-\[380px\] { width: 380px; }
}
@media (min-width: 768px) {
.md\:aspect-\[21\/9\] { aspect-ratio: 21 / 9; }
.md\:aspect-auto { aspect-ratio: auto; }
.md\:flex{display:flex!important}
.md\:flex-grow-0 { flex-grow: 0; }
.md\:flex-row { flex-direction: row; }
.md\:gap-4 { gap: 1rem; }
.md\:grid-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.md\:grid-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.md\:h-5 { height: 1.25rem; }
.md\:h-6 { height: 1.5rem; }
.md\:h-64 { height: 16rem; }
.md\:hidden{display:none!important}
.md\:mt-0 { margin-top: 0px; }
.md\:p-12 { padding: 3rem; }
.md\:p-14 { padding: 3.5rem; }
.md\:px-4 { padding-left: 1rem; padding-right: 1rem; }
.md\:py-20 { padding-top: 5rem; padding-bottom: 5rem; }
.md\:text-2xl { font-size: 1.5rem; line-height: 2rem; }
.md\:text-3xl { font-size: 1.875rem; line-height: 2.25rem; }
.md\:text-4xl { font-size: 2.25rem; line-height: 2.5rem; }
.md\:text-5xl { font-size: 3rem; line-height: 1; }
.md\:text-6xl { font-size: 3.75rem; line-height: 1; }
.md\:text-\[10px\] { font-size: 10px; }
.md\:text-base { font-size: 1rem; line-height: 1.5rem; }
.md\:text-lg { font-size: 1.125rem; line-height: 1.75rem; }
.md\:text-sm { font-size: 0.875rem; line-height: 1.25rem; }
.md\:text-xl { font-size: 1.25rem; line-height: 1.75rem; }
.md\:text-xs { font-size: 0.75rem; line-height: 1rem; }
.md\:w-5 { width: 1.25rem; }
.md\:w-6 { width: 1.5rem; }
}
@media (min-width: 1024px) {
.lg\:block { display: block; }
.lg\:flex { display: flex; }
.lg\:flex-row { flex-direction: row; }
.lg\:gap-8 { gap: 2rem; }
.lg\:grid-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.lg\:grid-cols-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.lg\:h-20 { height: 5rem; }
.lg\:hidden{display:none!important}
.lg\:mb-12 { margin-bottom: 3rem; }
.lg\:min-h-\[560px\] { min-height: 560px; }
.lg\:p-12 { padding: 3rem; }
.lg\:sticky { position: sticky; }
.lg\:text-4xl { font-size: 2.25rem; line-height: 2.5rem; }
.lg\:text-xs { font-size: 0.75rem; line-height: 1rem; }
.lg\:top-28 { top: 7rem; }
.lg\:w-2\/5 { width: 40%; }
.lg\:w-20 { width: 5rem; }
.lg\:w-3\/5 { width: 60%; }
.lg\:w-64 { width: 16rem; }
}
@media (min-width: 1280px) {
.xl\:p-16 { padding: 4rem; }
}
.product-hero {
display: flex;
flex-direction: column;
gap: 2rem;
margin-bottom: 2rem;
}
@media (min-width: 1024px) {
.product-hero { flex-direction: row; align-items: flex-start; gap: 3.5rem; }
}
.product-gallery {
display: flex;
flex-direction: column;
gap: 0.75rem;
}
@media (min-width: 1024px) {
.product-gallery { flex-direction: row; gap: 1rem; }
}
.product-gallery-col {
display: flex;
flex-direction: column;
gap: 0.75rem;
}
@media (min-width: 1024px) {
.product-gallery-col {
    flex: 0 0 63%;
    position: sticky;
    top: 100px;
}
}
.product-main-img-wrap {
order: 1;
position: relative;
background-color: var(--bgLight);
border-radius: 14px;
overflow: hidden;
aspect-ratio: 1 / 1;
cursor: zoom-in;
}
@media (min-width: 1024px) {
.product-main-img-wrap { order: 2; flex: 1; }
}
.product-main-img-wrap img {
width: 100%;
height: 100%;
object-fit: contain;
padding: 0.5rem;
transition: transform 0.5s ease;
}
.product-main-img-wrap:hover img { transform: scale(1.04); }

.zoom-badge {
position: absolute;
top: 1rem;
right: 1rem;
width: 2.25rem;
height: 2.25rem;
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
background-color: rgba(255, 255, 255, 0.85);
backdrop-filter: blur(4px);
-webkit-backdrop-filter: blur(4px);
color: var(--textMain);
pointer-events: none;
}
.zoom-badge svg { width: 1rem; height: 1rem; }

.product-thumbs {
order: 2;
display: flex;
flex-direction: row;
gap: 0.6rem;
overflow-x: auto;
}
@media (min-width: 1024px) {
.product-thumbs {
    order: 1;
    flex-direction: column;
    width: 76px;
    flex-shrink: 0;
    overflow-x: visible;
}
}

.thumb {
flex-shrink: 0;
width: 64px;
height: 64px;
border: 1px solid var(--borderGray);
border-radius: 8px;
background-color: var(--bgLight);
padding: 6px;
display: flex;
align-items: center;
justify-content: center;
transition: border-color 0.2s ease;
}
.thumb img { width: 100%; height: 100%; object-fit: contain; }
.thumb:hover { border-color: var(--primary); }
.thumb.active { border-color: var(--primary); border-width: 1.5px; }
.product-main-col {
order: 1;
display: flex;
flex-direction: column;
gap: 10px;
flex: 1;
min-width: 0;
}
.product-video-link {
display: flex;
align-items: center;
gap: 13px;
margin: 16px 0;
padding: 13px 16px;
text-decoration: none;
cursor: pointer;
border: 1px solid var(--borderGray);
border-radius: 12px;
background: #fff;
transition: border-color 0.25s ease, box-shadow 0.25s ease, transform 0.25s ease;
}
.product-video-link:hover {
border-color: var(--primary);
box-shadow: 0 4px 16px rgba(122, 0, 21, 0.12);
transform: translateY(-1px);
}
.product-video-link-icon {
width: 40px; height: 40px; flex-shrink: 0;
border-radius: 10px;
background: var(--bgLight);
display: flex; align-items: center; justify-content: center;
color: var(--primary);
}
.product-video-link-icon svg {
width: 22px; height: 22px; display: block;
fill: none;
stroke: currentColor;
stroke-width: 2;
}
.product-video-link-text { display: flex; flex-direction: column; line-height: 1.25; flex: 1; }
.product-video-link-title {
font-weight: 700;
font-size: 0.8rem;
letter-spacing: 0.06em;
text-transform: uppercase;
color: var(--primary);
}
.product-video-link-sub {
font-size: 0.7rem;
color: var(--textMuted);
margin-top: 2px;
}
.product-video-link-arrow {
flex-shrink: 0;
color: var(--primary);
opacity: 0.45;
transition: transform 0.2s ease, opacity 0.2s ease;
}
.product-video-link:hover .product-video-link-arrow { transform: translateX(3px); opacity: 1; }
.product-info {
display: flex;
flex-direction: column;
gap: 0.95rem;
}
@media (min-width: 1024px) {
.product-info { flex: 1; padding-top: 0.25rem; }
}
.price-qty-row {
display: flex;
align-items: flex-end;
justify-content: space-between;
gap: 1rem;
flex-wrap: wrap;
}

.badge-sale {
align-self: flex-start;
background-color: var(--primary);
color: #FFFFFF;
font-size: 0.65rem;
font-weight: 700;
letter-spacing: 0.15em;
text-transform: uppercase;
padding: 0.35rem 0.85rem;
border-radius: 4px;
}
.product-meta {
font-size: 0.75rem;
letter-spacing: 0.18em;
text-transform: uppercase;
color: var(--textMuted);
}

.product-rating-row {
display: flex;
align-items: center;
gap: 0.5rem;
margin-top: 0.6rem;
flex-wrap: wrap;
}
.product-rating-stars { display: inline-flex; gap: 2px; flex-shrink: 0; }
.product-rating-text {
font-family: 'Manrope', sans-serif;
font-size: 0.78rem;
font-weight: 600;
color: var(--textMain);
letter-spacing: 0.01em;
}
.product-description { font-size: 0.9rem; line-height: 1.6; color: var(--desc-gray); }
.option-group { display: flex; flex-direction: column; }
.option-label {
display: block;
font-size: 0.68rem;
font-weight: 700;
text-transform: uppercase;
letter-spacing: 0.08em;
color: var(--textMain);
margin-bottom: 0.5rem;
}
.qty-selector {
display: inline-flex;
align-items: center;
border: 1px solid var(--borderGray);
border-radius: 8px;
height: 46px;
width: fit-content;
overflow: hidden;
}
.qty-selector button {
width: 42px;
height: 100%;
display: flex;
align-items: center;
justify-content: center;
font-size: 1.1rem;
color: var(--textMain);
background-color: #FFFFFF;
border: none;
outline: none;
padding: 0;
margin: 0;
appearance: none;
-webkit-appearance: none;
cursor: pointer;
transition: background-color 0.15s ease;
}
.qty-selector button:hover { background-color: var(--bgLight); }
.qty-selector span {
width: 40px;
text-align: center;
font-size: 0.95rem;
font-weight: 600;
color: var(--textMain);
}
.product-actions { display: flex; flex-direction: column; gap: 0.7rem; }
.cart-fav-row { display: flex; gap: 0.6rem; }
.cart-fav-row .btn-add-to-bag { flex: 1; width: auto; min-width: 0; }
.btn-fav-icon {
width: 54px;
height: 54px;
flex-shrink: 0;
display: flex;
align-items: center;
justify-content: center;
border: 1px solid var(--borderGray);
border-radius: 2px;
background: #FFFFFF;
cursor: pointer;
transition: border-color 0.2s ease, background-color 0.2s ease;
}
.btn-fav-icon:hover { border-color: var(--primary); background: var(--bgLight); }
.btn-fav-icon svg { width: 19px; height: 19px; color: var(--textMain); stroke-width: 1.75; transition: fill 0.15s ease, stroke 0.15s ease; }
.btn-fav-icon svg.is-fav { fill: var(--primary); stroke: var(--primary); }
.size-guide-link {
display: inline-flex; align-items: center; gap: 6px;
font-size: 0.72rem; font-weight: 700;
text-transform: uppercase; letter-spacing: 0.06em;
color: var(--textMain);
text-decoration: underline; text-underline-offset: 3px;
cursor: pointer; width: fit-content;
transition: color 0.2s ease;
}
.size-guide-link:hover { color: var(--primary); }
.size-guide-link svg { stroke-width: 2; }

.btn-add-to-bag, .btn-buy-now {
width: 100%;
height: 54px;
border-radius: 2px;
display: flex;
align-items: center;
justify-content: center;
gap: 0.6rem;
font-family: 'Manrope', sans-serif;
font-size: 0.78rem;
font-weight: 700;
letter-spacing: 0.14em;
text-transform: uppercase;
cursor: pointer;
transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}
.btn-add-to-bag svg, .btn-buy-now svg,
.btn-add-to-bag i, .btn-buy-now i { width: 15px; height: 15px; flex-shrink: 0; }
.btn-add-to-bag:active, .btn-buy-now:active { transform: scale(0.99); }
.btn-buy-now {
background-color: var(--primary);
color: #FFFFFF;
border: 1px solid var(--primary);
box-shadow: 0 1px 3px rgba(0,0,0,0.12);
}
.btn-buy-now:hover { background-color: var(--primary-dark); border-color: var(--primary-dark); box-shadow: 0 2px 6px rgba(0,0,0,0.16); }
.btn-add-to-bag { background-color: #FFFFFF; color: #111111; border: 1.5px solid #111111; }
.btn-add-to-bag:hover { background-color: #111111; color: #FFFFFF; }
.benefits-bar {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 0.5rem;
margin-top: 1.5rem;
padding-top: 1.5rem;
border-top: 1px solid var(--borderGray);
}
@media (min-width: 640px) {
.benefits-bar { grid-template-columns: repeat(4, 1fr); gap: 0.6rem; }
}
.benefit-item {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
gap: 0.45rem;
text-align: center;
padding: 0.85rem 0.4rem;
background: #FAFAFA;
border: 1px solid var(--borderGray);
border-radius: 2px;
transition: all 0.25s ease;
}
.benefit-item:hover {
background: #FFFFFF;
border-color: var(--primary);
}
.benefit-item svg {
width: 22px;
height: 22px;
color: var(--primary);
stroke-width: 1.5;
}
.benefit-item .benefit-title {
font-size: 0.7rem;
font-weight: 700;
letter-spacing: 0.05em;
text-transform: uppercase;
color: var(--textMain);
line-height: 1.2;
}
.benefit-item .benefit-sub {
font-size: 0.62rem;
color: var(--textMuted);
letter-spacing: 0.02em;
line-height: 1.3;
margin-top: -0.1rem;
}
.nav-ofertas {
color: var(--accent-ofertas) !important;
font-weight: 700;
letter-spacing: 0.01em;
position: relative;
padding-bottom: 2px;
}
.nav-ofertas::after {
content: '';
position: absolute;
left: 0; right: 0; bottom: -3px;
height: 2px;
background: var(--accent-ofertas);
transform: scaleX(0.7);
transform-origin: left;
transition: transform 0.2s cubic-bezier(0.16,1,0.3,1);
}
.nav-ofertas:hover::after { transform: scaleX(1); }
.nav-ofertas--mobile { width: fit-content; }
.nav-ofertas--mobile::after { display: none; }
.float-btn {
position: fixed;
z-index: var(--z-float-btn);
width: 60px;
height: 60px;
border-radius: 9999px;
background-color: #111111;
color: #FFFFFF;
display: flex;
align-items: center;
justify-content: center;
box-shadow: 0 20px 25px -5px rgba(0,0,0,0.2), 0 8px 10px -6px rgba(0,0,0,0.2);
transition: background-color 0.25s ease, color 0.25s ease, transform 0.2s ease;
}
.float-btn svg { width: 26px; height: 26px; }
.float-btn:hover { transform: translateY(-2px); }
.float-btn-whatsapp {
right: 24px;
bottom: 24px;
background-color: var(--whatsapp);
color: #FFFFFF;
animation: whatsappPulse 2.5s ease-in-out infinite;
}
.float-btn-whatsapp svg {
fill: currentColor;
width: 30px;
height: 30px;
}
.float-btn-whatsapp:hover {
background-color: #1ebd5a;
color: #FFFFFF;
animation: none;
transform: translateY(-2px) scale(1.05);
}
@keyframes whatsappPulse {
0%, 100% { box-shadow: 0 8px 24px rgba(37, 211, 102, 0.35); }
50% { box-shadow: 0 12px 32px rgba(37, 211, 102, 0.65); }
}
.float-btn-top { right: 24px; bottom: 100px; }
.float-btn-top:hover { background-color: var(--gold); color: #111111; }

@media (max-width: 768px) {
.float-btn { width: 48px; height: 48px; }
.float-btn svg { width: 20px; height: 20px; }
.float-btn-whatsapp {
    width: 56px;
    height: 56px;
    right: 14px;
    bottom: 14px;
    background-color: var(--whatsapp);
}
.float-btn-whatsapp svg { width: 28px; height: 28px; }
.float-btn-top { right: 14px; bottom: 86px; }
}
.product-badge-slot {
position: absolute;
width: 56px;
height: auto;
z-index: 10;
pointer-events: none;
}
.product-badge-slot img { width: 100%; height: auto; display: block; filter: drop-shadow(0 1px 2px rgba(0,0,0,.18)); }

.product-badge-slot.pos-tl { top: 10px; left: 10px; }
.product-badge-slot.pos-tr { top: 10px; right: 10px; }
.product-badge-slot.pos-bl { bottom: 10px; left: 10px; }
.product-badge-slot.pos-br { bottom: 10px; right: 10px; }

.product-badge-slot.on-detail.pos-tl,
.product-badge-slot.on-detail.pos-tr { top: 16px; }
.product-badge-slot.on-detail.pos-bl,
.product-badge-slot.on-detail.pos-br { bottom: 16px; }
.product-badge-slot.on-detail.pos-tl,
.product-badge-slot.on-detail.pos-bl { left: 16px; }
.product-badge-slot.on-detail.pos-tr,
.product-badge-slot.on-detail.pos-br { right: 16px; }
.auth-input {
width: 100%;
border: 1px solid var(--borderGray);
border-radius: 4px;
padding: 0.85rem 1rem;
font-size: 0.85rem;
color: var(--textMain);
background-color: #FFFFFF;
transition: border-color 0.2s ease;
}
.auth-input:focus { outline: none; border-color: var(--textMain); }
.auth-switch-link { text-align: center; font-size: 0.78rem; color: var(--textMuted); }
.auth-switch-link a, .auth-switch-link span.auth-link {
color: var(--textMain); font-weight: 600; cursor: pointer; text-decoration: underline;
}
.footer-social-link {
display: inline-flex;
align-items: center;
justify-content: center;
width: 40px;
height: 40px;
background-color: #FFFFFF;
border-radius: 50%;
color: var(--primary);
transition: all 0.25s ease;
}
.footer-social-link svg {
fill: var(--primary) !important;
width: 18px !important;
height: 18px !important;
display: block;
}
.footer-social-link:hover {
transform: translateY(-2px);
background-color: #1A1A1A;
}
.footer-social-link:hover svg {
fill: #FFFFFF !important;
}
.review-card {
scroll-snap-align: start;
transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.review-card:hover { transform: translateY(-4px); box-shadow: 0 12px 32px rgba(0,0,0,0.10); }
.rv-section { background: #fff; font-family: 'Manrope', sans-serif; }
.rv-section--product { padding: 48px 0 32px; margin-top: 16px; }
.rv-marquee-wrap { display: none; } /* legacy */

/* ── Reviews Carousel ── */
.rv-carousel-wrap {
position: relative;
width: 100%;
max-width: 1200px;
margin: 0 auto;
padding: 0 56px;
box-sizing: border-box;
}

.rv-scroll {
display: flex;
gap: 20px;
overflow-x: auto;
scroll-snap-type: x mandatory;
-webkit-overflow-scrolling: touch;
scrollbar-width: none;
cursor: grab;
padding: 8px 4px 16px;
-ms-overflow-style: none;
}
.rv-scroll:active { cursor: grabbing; }
.rv-scroll::-webkit-scrollbar { display: none; }
.rv-scroll .rv-card {
scroll-snap-align: start;
flex-shrink: 0;
user-select: none;
-webkit-user-select: none;
}

/* Arrows */
.rv-arrow {
position: absolute;
top: 50%;
transform: translateY(-50%);
width: 42px; height: 42px;
border-radius: 50%;
background: #fff;
border: 1px solid #e0e0e0;
color: #333;
display: flex; align-items: center; justify-content: center;
cursor: pointer;
z-index: 3;
box-shadow: 0 2px 10px rgba(0,0,0,0.10);
transition: opacity 0.25s, box-shadow 0.2s, background 0.15s, transform 0.15s;
}
.rv-arrow:hover {
background: #f5f5f5;
box-shadow: 0 4px 16px rgba(0,0,0,0.14);
transform: translateY(-50%) scale(1.05);
}
.rv-arrow:active { transform: translateY(-50%) scale(0.96); }
.rv-arrow--left { left: 6px; }
.rv-arrow--right { right: 6px; }

@media (max-width: 768px) {
  .rv-carousel-wrap { padding: 0 44px; }
  .rv-arrow { width: 36px; height: 36px; }
  .rv-arrow--left { left: 4px; }
  .rv-arrow--right { right: 4px; }
  .rv-scroll { gap: 14px; }
}
@media (max-width: 480px) {
  .rv-carousel-wrap { padding: 0 36px; }
  .rv-arrow { width: 32px; height: 32px; }
  .rv-arrow svg { width: 16px; height: 16px; }
  .rv-arrow--left { left: 2px; }
  .rv-arrow--right { right: 2px; }
}
.rv-header { text-align: center; padding: 0 20px; margin-bottom: 32px; }
.rv-badge {
display: inline-flex; align-items: center; gap: 6px;
background: var(--primary); color: #fff;
font-size: 10px; font-weight: 700; text-transform: uppercase;
letter-spacing: 0.12em; padding: 6px 16px; border-radius: 40px;
margin-bottom: 16px; font-family: 'Manrope', sans-serif;
}
.rv-badge svg { width: 14px; height: 14px; }
.rv-title {
font-family: 'Manrope', sans-serif; font-weight: 800;
font-size: 28px; color: var(--textMain); margin: 0 0 8px;
letter-spacing: -0.02em;
}
@media (min-width: 768px) { .rv-title { font-size: 36px; } }
.rv-subtitle { font-size: 13px; color: var(--textMuted); margin: 0 0 16px; font-family: 'Manrope', sans-serif; }
.rv-stars-row {
display: inline-flex; align-items: center; gap: 4px; margin-bottom: 12px;
}
.rv-stars-row svg { width: 20px; height: 20px; fill: var(--primary); stroke: none; }
.rv-stars-row span { font-size: 14px; font-weight: 700; color: var(--textMain); margin-left: 6px; font-family: 'Manrope', sans-serif; }
.rv-write-btn {
display: inline-flex; align-items: center; gap: 6px;
font-size: 11px; font-weight: 700; text-transform: uppercase;
letter-spacing: 0.1em; color: var(--primary);
border: 1.5px solid var(--primary); padding: 8px 20px;
border-radius: 40px; transition: all 0.2s; cursor: pointer;
font-family: 'Manrope', sans-serif;
}
.rv-write-btn:hover { background: var(--primary); color: #fff; }
/* rv-marquee-wrap legacy — now hidden, replaced by rv-carousel-wrap */
.rv-card {
width: 280px; flex-shrink: 0; background: #fff;
border: 1px solid var(--borderGray); border-radius: 10px;
overflow: hidden; cursor: default;
transition: transform 0.3s ease, box-shadow 0.3s ease;
font-family: 'Manrope', sans-serif;
}
@media (min-width: 768px) { .rv-card { width: 300px; } }
.rv-card:hover { transform: translateY(-4px); box-shadow: 0 12px 32px rgba(0,0,0,0.10); }
.rv-card__img {
width: 100%; aspect-ratio: 1/1; background: var(--bgLight);
overflow: hidden; position: relative;
}
.rv-card__img img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.4s ease; }
.rv-card:hover .rv-card__img img { transform: scale(1.04); }
.rv-card__verified {
position: absolute; bottom: 8px; left: 8px;
display: flex; align-items: center; gap: 4px;
background: rgba(0,0,0,0.70); color: #fff;
font-size: 9px; font-weight: 700; text-transform: uppercase;
letter-spacing: 0.08em; padding: 4px 10px; border-radius: 40px;
backdrop-filter: blur(4px); -webkit-backdrop-filter: blur(4px);
font-family: 'Manrope', sans-serif;
}
.rv-card__verified svg { width: 12px; height: 12px; }
.rv-card__body { padding: 16px 18px 18px; }
.rv-card__stars { display: flex; gap: 2px; margin-bottom: 10px; }
.rv-card__stars svg { width: 14px; height: 14px; fill: var(--primary); stroke: none; }
.rv-card__text {
font-size: 13px; line-height: 1.55; color: var(--textMain);
margin: 0 0 14px; display: -webkit-box; -webkit-line-clamp: 3;
-webkit-box-orient: vertical; overflow: hidden;
font-style: italic; font-family: 'Manrope', sans-serif;
}
.rv-card__author { display: flex; align-items: center; gap: 10px; }
.rv-card__avatar {
width: 34px; height: 34px; border-radius: 50%;
background: var(--primary); color: #fff;
display: flex; align-items: center; justify-content: center;
font-size: 13px; font-weight: 700; flex-shrink: 0;
font-family: 'Manrope', sans-serif;
}
.rv-card__name { font-size: 13px; font-weight: 700; color: var(--textMain); margin: 0; font-family: 'Manrope', sans-serif; }
.rv-card__city { font-size: 10px; color: var(--textMuted); text-transform: uppercase; letter-spacing: 0.08em; margin: 1px 0 0; font-family: 'Manrope', sans-serif; }

#reviews-scroller::-webkit-scrollbar { height: 6px; }
#reviews-scroller::-webkit-scrollbar-track { background: transparent; }
#reviews-scroller::-webkit-scrollbar-thumb { background: #d8d4cc; border-radius: 999px; }
#reviews-scroller::-webkit-scrollbar-thumb:hover { background: var(--primary); }
.info-modal-overlay {
position: fixed; inset: 0; z-index: var(--z-modal-info);
background: rgba(10, 10, 12, 0.6);
backdrop-filter: blur(4px);
display: none; align-items: center; justify-content: center;
padding: 20px;
overflow-y: auto;
}
.info-modal-overlay.open { display: flex; }
.info-modal-card {
background: #FFFFFF;
width: 100%; max-width: 720px;
border-radius: 4px;
box-shadow: 0 24px 60px rgba(0, 0, 0, 0.4);
max-height: 88vh;
display: flex; flex-direction: column;
overflow: hidden;
animation: infoModalSlideIn 0.3s ease-out;
}
@keyframes infoModalSlideIn {
from { opacity: 0; transform: translateY(20px); }
to { opacity: 1; transform: translateY(0); }
}
.info-modal-head {
display: flex; align-items: center; justify-content: space-between;
padding: 20px 28px;
background: #1A1A1A;
color: #FFFFFF;
flex: none;
}
.info-modal-title {
font-family: 'Manrope', sans-serif;
font-weight: 600;
font-size: 1.5rem;
letter-spacing: 0.04em;
margin: 0;
}
.info-modal-close {
background: transparent; border: none;
color: rgba(255, 255, 255, 0.7);
cursor: pointer; padding: 6px;
border-radius: 4px;
transition: color 0.2s, background 0.2s;
}
.info-modal-close:hover { color: #FFFFFF; background: rgba(255, 255, 255, 0.1); }
.info-modal-body {
padding: 28px 32px;
overflow-y: auto;
color: #1A1A1A;
font-size: 0.92rem;
line-height: 1.7;
}
.info-modal-body h4 {
font-weight: 700;
font-size: 0.85rem;
text-transform: uppercase;
letter-spacing: 0.12em;
color: var(--primary);
margin-top: 1.6rem;
margin-bottom: 0.6rem;
}
.info-modal-body h4:first-child { margin-top: 0; }
.info-modal-body p { margin-bottom: 0.95rem; color: #1A1A1A; }
.info-modal-body ul {
list-style: disc;
padding-left: 1.4rem;
margin: 0.6rem 0 1.1rem;
color: #1A1A1A;
}
.info-modal-body li { margin-bottom: 0.4rem; }
.info-modal-body strong { font-weight: 700; color: #1A1A1A; }
.info-modal-body a {
color: var(--primary);
text-decoration: underline;
text-underline-offset: 2px;
}
@media (max-width: 640px) {
.info-modal-head { padding: 16px 20px; }
.info-modal-title { font-size: 1.3rem; }
.info-modal-body { padding: 22px 22px; font-size: 0.88rem; }
}
.welcome-modal-overlay {
position: fixed; inset: 0; z-index: var(--z-modal-welcome);
background: rgba(17, 15, 15, 0.55);
backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px);
display: none; align-items: center; justify-content: center;
padding: 16px;
}
.welcome-modal-overlay.open { display: flex; }
.welcome-modal-card {
background: var(--primary);
width: 100%; max-width: 404px;
border-radius: 14px;
box-shadow: 0 24px 60px rgba(0, 0, 0, 0.35);
padding: 40px 26px 28px;
text-align: center;
position: relative;
max-height: 92vh;
overflow-y: auto;
animation: welcomeModalIn 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

.welcome-modal-card::before {
content: ''; position: absolute; inset: 10px;
border: 1px solid rgba(255, 255, 255, 0.22);
border-radius: 8px; pointer-events: none;
}
.welcome-modal-card > * { position: relative; z-index: 1; }
@keyframes welcomeModalIn {
from { opacity: 0; transform: translateY(20px) scale(0.97); }
to   { opacity: 1; transform: translateY(0) scale(1); }
}
.welcome-modal-close {
position: absolute; top: 14px; right: 14px; z-index: 2;
background: rgba(255, 255, 255, 0.12); border: none; color: rgba(255, 255, 255, 0.8);
width: 28px; height: 28px; border-radius: 50%;
display: flex; align-items: center; justify-content: center;
cursor: pointer; transition: color 0.2s, background 0.2s;
}
.welcome-modal-close:hover { color: #FFFFFF; background: rgba(255, 255, 255, 0.22); }

.welcome-modal-kicker {
display: inline-block; font-family: 'Manrope', sans-serif;
font-size: 10px; font-weight: 700; letter-spacing: 0.2em; text-transform: uppercase;
color: rgba(255, 255, 255, 0.9);
padding: 8px 0; margin: 0 auto 22px;
border-top: 1px solid rgba(255, 255, 255, 0.32);
border-bottom: 1px solid rgba(255, 255, 255, 0.32);
}
.welcome-modal-hero {
display: flex; align-items: flex-start; justify-content: center; gap: 3px;
margin: 0; line-height: 1;
}
.welcome-modal-hero-currency {
font-family: 'Manrope', sans-serif; font-weight: 700; color: #FFFFFF;
font-size: 1.5rem; margin-top: 10px;
}
.welcome-modal-hero-amount {
font-family: 'Manrope', sans-serif; font-weight: 800; color: #FFFFFF;
font-size: 4.4rem; letter-spacing: -0.02em;
}
.welcome-modal-hero-caption {
font-family: 'Manrope', sans-serif; font-size: 11px; font-weight: 700;
letter-spacing: 0.14em; text-transform: uppercase; color: rgba(255, 255, 255, 0.85);
margin: 6px 0 20px;
}
.welcome-modal-subtitle {
font-family: 'Manrope', sans-serif; color: rgba(255, 255, 255, 0.72);
font-size: 0.84rem; line-height: 1.6; margin: 0 auto 22px; max-width: 280px;
}
.welcome-modal-divider { height: 1px; background: rgba(255, 255, 255, 0.2); margin: 4px 0 20px; }
.welcome-modal-btn {
display: block; width: 100%; font-family: 'Manrope', sans-serif;
font-weight: 700; text-transform: uppercase; letter-spacing: 0.08em;
font-size: 0.76rem; padding: 15px 18px; border-radius: 4px; border: none;
cursor: pointer; transition: background 0.2s, color 0.2s;
}

.welcome-modal-btn-primary { background: #FFFFFF; color: var(--primary); margin-bottom: 12px; }
.welcome-modal-btn-primary:hover { background: rgba(255, 255, 255, 0.88); }
.welcome-modal-btn-primary:disabled { cursor: not-allowed; opacity: 0.7; }

.welcome-modal-btn-ghost {
background: transparent; border: none; padding: 4px 8px;
color: rgba(255, 255, 255, 0.6); font-weight: 600; font-size: 0.72rem;
letter-spacing: 0.03em; text-transform: none;
}
.welcome-modal-btn-ghost:hover { color: #FFFFFF; text-decoration: underline; text-underline-offset: 3px; }
.welcome-modal-input-wrap { position: relative; margin-bottom: 14px; }
.welcome-modal-input-wrap svg {
position: absolute; left: 14px; top: 50%; transform: translateY(-50%);
width: 16px; height: 16px; color: rgba(255, 255, 255, 0.55); pointer-events: none;
}
.welcome-modal-input {
width: 100%; background: rgba(255, 255, 255, 0.1); border: 1px solid rgba(255, 255, 255, 0.28);
color: #FFFFFF; border-radius: 4px; padding: 14px 14px 14px 42px; font-size: 0.9rem;
font-family: 'Manrope', sans-serif; transition: border-color 0.2s, background 0.2s;
}
.welcome-modal-input::placeholder { color: rgba(255, 255, 255, 0.55); }
.welcome-modal-input:focus { outline: none; border-color: #FFFFFF; background: rgba(255, 255, 255, 0.16); }
.welcome-modal-error {
color: #FFFFFF; font-size: 11px; margin: -6px 0 12px; display: none;
font-family: 'Manrope', sans-serif; text-align: left; font-weight: 700;
}
.welcome-modal-error.show { display: block; }
@media (max-width: 480px) {
.welcome-modal-card { padding: 36px 20px 24px; border-radius: 12px; }
.welcome-modal-hero-amount { font-size: 3.6rem; }
.welcome-modal-hero-currency { font-size: 1.25rem; }
}
.promo-top-bar {
display: none;
position: sticky; top: 0; z-index: var(--z-promo-bar, 58);
width: 100%;
background: rgba(255, 255, 255, 0.96);
backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px);
border-bottom: 1px solid var(--borderGray);
}
.promo-top-bar.show { display: block; }
.promo-top-bar-inner {
max-width: 1200px; margin: 0 auto;
display: flex; align-items: center; justify-content: center;
gap: 10px; padding: 9px 16px;
}
.promo-top-bar-icon { width: 15px; height: 15px; flex: none; color: var(--primary); }
.promo-top-bar-text {
display: flex; align-items: baseline; gap: 6px; min-width: 0;
font-family: 'Manrope', sans-serif; white-space: nowrap;
}
.promo-top-bar-label { font-size: 11px; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; color: var(--textMain); }
.promo-top-bar-sep { color: var(--borderGray); }
.promo-top-bar-sub { font-size: 11.5px; color: var(--textMuted); font-weight: 500; }
.promo-top-bar-clock { display: flex; align-items: center; gap: 3px; flex: none; margin-left: 2px; }
.ptbc-unit {
display: inline-flex; align-items: baseline; gap: 1px;
background: var(--bgLight); border: 1px solid var(--borderGray);
border-radius: 4px; padding: 2px 5px; font-variant-numeric: tabular-nums;
}
.ptbc-unit span { font-size: 12px; font-weight: 700; color: var(--primary); }
.ptbc-unit em { font-size: 9px; font-style: normal; color: var(--textMuted); margin-left: 1px; }
.ptbc-colon { color: var(--borderGray); font-weight: 700; font-size: 11px; }
.promo-top-bar-cta {
display: inline-flex; align-items: center; gap: 5px; flex: none;
background: var(--primary); color: #FFFFFF; border: none; border-radius: 999px;
padding: 7px 14px; font-family: 'Manrope', sans-serif; font-size: 10.5px; font-weight: 700;
letter-spacing: 0.05em; text-transform: uppercase; cursor: pointer;
transition: background 0.2s, transform 0.15s; margin-left: 4px;
}
.promo-top-bar-cta:hover { background: var(--primary-dark); }
.promo-top-bar-cta:active { background: var(--primary-dark); }
.promo-top-bar-cta.is-claimed { background: var(--bgLight); color: var(--textMuted); border: 1px solid var(--borderGray); cursor: default; }
.promo-top-bar-cta.is-claimed:hover { background: var(--bgLight); }
.promo-top-bar-cta:disabled { pointer-events: none; }
@media (max-width: 640px) {
.promo-top-bar-inner { padding: 7px 10px; gap: 6px; flex-wrap: nowrap; }
.promo-top-bar-sub, .promo-top-bar-sep { display: none; }
.promo-top-bar-text { flex: 0 1 auto; overflow: hidden; }
.promo-top-bar-label { font-size: 10px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; display: block; }
.promo-top-bar-clock { gap: 2px; margin-left: 0; }
.ptbc-unit { padding: 2px 4px; }
.ptbc-unit span { font-size: 11px; }
.ptbc-unit em { display: none; }
.promo-top-bar-cta { padding: 6px 10px; font-size: 9.5px; margin-left: 2px; }
}
@media (max-width: 380px) {
.promo-top-bar-inner { gap: 5px; }
.promo-top-bar-icon { width: 13px; height: 13px; }
.promo-top-bar-label { max-width: 78px; }
.promo-top-bar-cta { padding: 5px 8px; }
}
@media (max-width: 330px) {

.promo-top-bar-label { display: none; }
}
button.footer-info-link {
background: none; border: none; padding: 0;
font: inherit; text-align: left;
cursor: pointer; color: inherit;
}
.catalog-count-text {
font-family: 'Manrope', sans-serif;
font-size: 13px;
font-weight: 400;
color: #6b7280;
text-transform: none;
letter-spacing: normal;
}
.border-0 { border-width: 0; }
.top-1\/2 { top: 50%; }
.-translate-y-1\/2 { transform: translateY(-50%); }
.appearance-none { -webkit-appearance: none; -moz-appearance: none; appearance: none; }
select.appearance-none::-ms-expand { display: none; }
.-left-2{left:-.5rem}.z-30{z-index:30}.z-\[85\]{z-index:var(--z-modal-auth)}.z-\[88\]{z-index:var(--z-modal-review)}.z-\[89\]{z-index:var(--z-modal-sizeguide)}.mx-2{margin-left:.5rem;margin-right:.5rem}.line-clamp-4{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4}.inline{display:inline}.h-\[18px\]{height:18px}.w-56{width:14rem}.w-\[180px\]{width:180px}.w-\[18px\]{width:18px}.min-w-\[200px\]{min-width:200px}.max-w-4xl{max-width:56rem}.max-w-lg{max-width:32rem}.flex-none{flex:none}.scale-100{--tw-scale-x:1;--tw-scale-y:1}.scale-100,.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.cursor-not-allowed{cursor:not-allowed}.snap-x{scroll-snap-type:x var(--tw-scroll-snap-strictness)}.snap-mandatory{--tw-scroll-snap-strictness:mandatory}.items-stretch{align-items:stretch}.overflow-x-auto{overflow-x:auto}.scroll-smooth{scroll-behavior:smooth}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.border-green-100{--tw-border-opacity:1;border-color:rgb(220 252 231/var(--tw-border-opacity,1))}.border-primary\/15{border-color:rgba(194,0,14,.15)}.border-white\/15{border-color:hsla(0,0%,100%,.15)}.bg-black\/80{background-color:rgba(0,0,0,.8)}.bg-borderGray{--tw-bg-opacity:1;background-color:rgb(229 229 229/var(--tw-bg-opacity,1))}.bg-gray-300{--tw-bg-opacity:1;background-color:rgb(209 213 219/var(--tw-bg-opacity,1))}.bg-gray-800{--tw-bg-opacity:1;background-color:rgb(31 41 55/var(--tw-bg-opacity,1))}.bg-green-50{--tw-bg-opacity:1;background-color:rgb(240 253 244/var(--tw-bg-opacity,1))}.bg-primary\/5{background-color:rgba(194,0,14,.05)}.bg-gradient-to-t{background-image:linear-gradient(to top,var(--tw-gradient-stops))}.from-black\/60{--tw-gradient-from:rgba(0,0,0,.6) var(--tw-gradient-from-position);--tw-gradient-to:transparent var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.via-black\/10{--tw-gradient-to:transparent var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),rgba(0,0,0,.1) var(--tw-gradient-via-position),var(--tw-gradient-to)}.to-transparent{--tw-gradient-to:transparent var(--tw-gradient-to-position)}.text-left{text-align:left}.text-right{text-align:right}.font-serif{font-family:'Manrope',sans-serif}.lowercase{text-transform:lowercase}.italic{font-style:italic}.tracking-tight{letter-spacing:-.025em}.text-gold\/30{color:rgba(194,0,14,.3)}.text-gray-200\/70{color:rgba(229,231,235,.7)}.text-gray-600{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity,1))}.text-green-700{--tw-text-opacity:1;color:rgb(21 128 61/var(--tw-text-opacity,1))}.text-white\/50{color:hsla(0,0%,100%,.5)}.text-white\/90{color:hsla(0,0%,100%,.9)}.opacity-30{opacity:.3}.opacity-40{opacity:.4}.drop-shadow-lg{--tw-drop-shadow:drop-shadow(0 10px 8px rgba(0,0,0,.04)) drop-shadow(0 4px 3px rgba(0,0,0,.1));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.first-letter\:uppercase:first-letter{text-transform:uppercase}.last\:border-0:last-child{border-width:0}.hover\:border-textMain:hover{--tw-border-opacity:1;border-color:rgb(26 26 26/var(--tw-border-opacity,1))}.hover\:bg-black:hover{--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity,1))}.hover\:bg-primary:hover{--tw-bg-opacity:1;background-color:rgb(122 0 21/var(--tw-bg-opacity,1))}.hover\:bg-primary-dark:hover{--tw-bg-opacity:1;background-color:rgb(92 0 16/var(--tw-bg-opacity,1))}.hover\:opacity-70:hover{opacity:.7}.hover\:opacity-80:hover{opacity:.8}.hover\:shadow-xl:hover{--tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.group:hover .group-hover\:scale-\[1\.02\]{--tw-scale-x:1.02;--tw-scale-y:1.02;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:gap-2\.5{gap:.625rem}@media (min-width:640px){.sm\:inline{display:inline!important}.sm\:hidden{display:none!important}.sm\:w-\[200px\]{width:200px}.sm\:text-\[10px\]{font-size:10px}}@media (min-width:768px){.md\:mb-10{margin-bottom:2.5rem}.md\:mb-14{margin-bottom:3.5rem}.md\:block{display:block!important}.md\:inline-flex{display:inline-flex!important}.md\:h-3\.5{height:.875rem}.md\:w-1\/2{width:50%}.md\:w-11{width:2.75rem}.md\:w-3\.5{width:.875rem}.md\:w-\[220px\]{width:220px}.md\:justify-center{justify-content:center}.md\:gap-2{gap:.5rem}.md\:gap-5{gap:1.25rem}.md\:bg-black\/30{background-color:rgba(0,0,0,.3)}.md\:p-4{padding:1rem}.md\:p-5{padding:1.25rem}.md\:px-10{padding-left:2.5rem;padding-right:2.5rem}.md\:py-10{padding-top:2.5rem;padding-bottom:2.5rem}.md\:py-16{padding-top:4rem;padding-bottom:4rem}.md\:py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.md\:py-4{padding-top:1rem;padding-bottom:1rem}.md\:py-5{padding-top:1.25rem;padding-bottom:1.25rem}.md\:text-\[11px\]{font-size:11px}.md\:tracking-\[0\.15em\]{letter-spacing:.15em}.md\:tracking-\[0\.2em\]{letter-spacing:.2em}.md\:text-white\/90{color:hsla(0,0%,100%,.9)}}@media (min-width:1024px){.lg\:w-\[240px\]{width:240px}}
.mb-1\.5{margin-bottom:.375rem}.h-3\.5{height:.875rem}.max-h-\[70vh\]{max-height:70vh}.max-h-\[92vh\]{max-height:92vh}.w-3\.5{width:.875rem}.resize-none{resize:none}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3\.5{padding-top:.875rem;padding-bottom:.875rem}.text-\[11px\]{font-size:11px}@media (min-width:640px){.sm\:col-span-2{grid-column:span 2/span 2}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}

.max-w-5xl{max-width:64rem}@media (min-width:640px){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:768px){.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:py-16{padding-top:4rem;padding-bottom:4rem}}

.store-chip { background:#fff; border-color: var(--borderGray); color: var(--textMuted); cursor:pointer; }
.store-chip:hover { border-color: var(--primary); color: var(--primary); }
.store-chip.is-active { background: var(--primary); border-color: var(--primary); color:#fff; }
.max-w-2xl{max-width:42rem}@media (min-width:640px){.sm\:border-b-0{border-bottom-width:0}.sm\:border-r{border-right-width:1px}}

.ig-reel-card { display: block; background: #1a1a1a; cursor: pointer; }
.ig-reel-card .line-clamp-2 { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.z-\[90\]{z-index:var(--z-modal-welcome)}

.z-\[78\]{z-index:var(--z-modal-quickview)}

@keyframes skeleton-pulse { 0%,100% { opacity: .06; } 50% { opacity: .12; } }
.skeleton-card { background: #fff; border-radius: 2px; overflow: hidden; }
.skeleton-img { width: 100%; aspect-ratio: 3/4; background: var(--borderGray); animation: skeleton-pulse 1.5s ease-in-out infinite; }
.skeleton-line { height: 12px; margin: 12px 10px 0; border-radius: 4px; background: var(--borderGray); animation: skeleton-pulse 1.5s ease-in-out infinite; }
.section-eyebrow {
font-family: 'Manrope', sans-serif;
font-size: 11px; font-weight: 700; letter-spacing: 0.25em;
text-transform: uppercase; color: var(--primary);
display: flex; align-items: center; justify-content: center; gap: 0.5rem; margin-bottom: 0.5rem;
}
.section-headline {
font-family: 'Manrope', sans-serif;
font-size: clamp(1.5rem, 2.8vw, 2.25rem); font-weight: 700; line-height: 1.1;
color: var(--textMain); text-transform: none; letter-spacing: -0.025em;
}
.section-subtext {
font-family: 'Manrope', sans-serif; font-size: 0.875rem;
color: var(--textMuted); line-height: 1.6; max-width: 38rem; margin: 0.75rem auto 0;
}
.home-section { padding: 3.5rem 0; border-top: 1px solid var(--borderGray); }
.home-section:first-of-type { border-top: none; }

.home-section-header {
display: flex; align-items: flex-end; justify-content: space-between;
padding: 0 1rem 1.25rem; margin-bottom: 1.75rem; gap: 1rem;
border-bottom: 1px solid var(--borderGray);
}
@media (min-width: 768px) { .home-section-header { padding: 0 1.5rem 1.25rem; } }

.home-section-title-block { display: flex; flex-direction: column; gap: 0.2rem; }
.home-section-eyebrow {
display: none;
}
.home-section-title {
font-family: 'Manrope', sans-serif;
font-size: clamp(1.5rem, 3vw, 2.35rem); font-weight: 300;
color: var(--textMain); line-height: 1.1; letter-spacing: 0.01em; text-transform: uppercase;
}
.home-section-cta {
font-family: 'Manrope', sans-serif; font-size: 10px; font-weight: 700;
letter-spacing: 0.2em; text-transform: uppercase; color: var(--textMain);
display: inline-flex; align-items: center; gap: 0.4rem; white-space: nowrap;
border-bottom: 1px solid var(--textMain); padding-bottom: 1px;
transition: color 0.2s ease, border-color 0.2s ease; cursor: pointer; flex-shrink: 0;
background: none; border-top: none; border-left: none; border-right: none;
align-self: flex-end; margin-bottom: 0.1rem;
}
.home-section-cta:hover { color: var(--primary); border-bottom-color: var(--primary); }
.home-section-cta svg { width: 12px; height: 12px; stroke: currentColor; stroke-width: 2.5; fill: none; flex-shrink: 0; }
.home-section-scroll {
display: flex; gap: 0.75rem; overflow-x: auto;
scroll-snap-type: x proximity; -webkit-overflow-scrolling: touch;
scroll-padding-left: 1rem;
overscroll-behavior-x: contain;
scrollbar-width: none; padding: 0 1rem 0.5rem;
}
.home-section-scroll::-webkit-scrollbar { display: none; }
@media (min-width: 768px) { .home-section-scroll { gap: 1.25rem; padding: 0 1.5rem 0.5rem; scroll-padding-left: 1.5rem; } }

.home-section-scroll .product-card-wrap {
flex: 0 0 calc(50% - 0.375rem); scroll-snap-align: start;
}
@media (min-width: 640px) { .home-section-scroll .product-card-wrap { flex: 0 0 calc(33.333% - 0.5rem); } }
@media (min-width: 1024px) { .home-section-scroll .product-card-wrap { flex: 0 0 calc(25% - 0.9375rem); } }
.home-section-scroll-wrap { position: relative; }
.home-section-fade {
position: absolute; top: 0; right: 0; bottom: 0.5rem; width: 36px;
background: linear-gradient(to right, rgba(255,255,255,0), rgba(255,255,255,0.95) 70%);
pointer-events: none;
transition: opacity 0.25s ease;
}
.home-section-scroll-wrap.is-end .home-section-fade { opacity: 0; }
@media (min-width: 768px) { .home-section-fade { width: 56px; } }
.home-hero-full-bleed {
--home-gap: clamp(8px, 1.6vw, 28px);
width: 100%;
padding: 0 clamp(12px, 3vw, 64px);
box-sizing: border-box;
}
.home-showcase-grid {
display: grid;
grid-template-columns: 3fr 2fr;
gap: var(--home-gap);
width: 100%;
aspect-ratio: 1.5/1;
}
@media (min-width: 480px)  { .home-showcase-grid { aspect-ratio: 16/10; } }
@media (min-width: 768px)  { .home-showcase-grid { aspect-ratio: 2/1; } }
@media (min-width: 1024px) { .home-showcase-grid { aspect-ratio: 2.6/1; } }
@media (min-width: 1440px) { .home-showcase-grid { aspect-ratio: 3.3/1; } }
.home-showcase-grid--full {
grid-template-columns: 1fr;
aspect-ratio: 2500 / 944;
}
@media (min-width: 480px)  { .home-showcase-grid--full { aspect-ratio: 2500 / 944; } }
@media (min-width: 768px)  { .home-showcase-grid--full { aspect-ratio: 2500 / 944; } }
@media (min-width: 1024px) { .home-showcase-grid--full { aspect-ratio: 2500 / 944; } }
@media (min-width: 1440px) { .home-showcase-grid--full { aspect-ratio: 2500 / 944; } }
@media (max-width: 767px)  { .home-showcase-grid--full { aspect-ratio: 1080 / 1350; } }

.home-showcase-hero { background: var(--bgLight); }
.hero-slide-scrim {
position: absolute; inset: 0;
background: linear-gradient(to top, rgba(0, 0, 0, 0.68) 0%, rgba(0, 0, 0, 0.3) 42%, rgba(0, 0, 0, 0) 74%);
}
.hero-slide-content {
position: absolute; inset: 0;
display: flex; flex-direction: column; align-items: flex-start; justify-content: flex-end;
padding: 28px 28px 32px;
}
.hero-slide-eyebrow {
font-family: 'Manrope', sans-serif; font-size: 11.5px; font-weight: 600;
letter-spacing: 0.28em; text-transform: uppercase; color: rgba(255, 255, 255, 0.85);
margin: 0 0 10px;
}
.hero-slide-title {
font-family: 'Manrope', sans-serif; font-weight: 300; color: #FFFFFF;
font-size: clamp(1.7rem, 4vw, 3.25rem); line-height: 1.1; letter-spacing: 0.01em;
text-transform: uppercase; margin: 0 0 22px; max-width: 720px;
}
.hero-slide-cta {
display: inline-flex; align-items: center;
background: transparent; border: 1px solid rgba(255, 255, 255, 0.8); color: #FFFFFF;
font-family: 'Manrope', sans-serif; font-size: 11px; font-weight: 600;
letter-spacing: 0.14em; text-transform: uppercase;
padding: 13px 24px; cursor: pointer; transition: background 0.2s, color 0.2s, border-color 0.2s;
}
.hero-slide-cta:hover { background: #FFFFFF; color: #111111; }
@media (max-width: 767px) {
.hero-slide-content { padding: 18px 18px 22px; }
.hero-slide-eyebrow { font-size: 9.5px; letter-spacing: 0.22em; margin-bottom: 7px; }
.hero-slide-title { font-size: clamp(1.25rem, 6vw, 1.85rem); margin-bottom: 16px; }
.hero-slide-cta { padding: 10px 18px; font-size: 10px; }
}

.home-showcase-side {
display: flex;
flex-direction: column;
gap: var(--home-gap);
}
.home-showcase-side .collection-card {
aspect-ratio: auto;
flex: 1 1 0;
min-height: 0;
}
@media (max-width: 767px) {
.home-showcase-grid {
display: block;
aspect-ratio: auto;
}
.home-showcase-hero {
width: 100%;
aspect-ratio: 1080 / 1350;
margin-bottom: var(--home-gap);
}
.home-showcase-side {
display: grid;
grid-template-columns: 1fr 1fr;
gap: var(--home-gap);
}
.home-showcase-side .collection-card {
aspect-ratio: 3 / 4;
flex: none;
min-height: 0;
}

.home-showcase-side .collection-card-overlay { padding: 0.85rem; }
.home-showcase-side .collection-card-label { font-size: 0.95rem; }
.home-showcase-side .collection-card-sub { font-size: 9px; letter-spacing: 0.12em; }
.home-showcase-side .collection-card-btn {
margin-top: 0.55rem;
padding: 0.4rem 0.65rem;
font-size: 9px;
letter-spacing: 0.06em;
gap: 0.3rem;
white-space: nowrap;
}
.home-showcase-side .collection-card-btn svg { width: 10px; height: 10px; }
}
.collection-cards-row {
display: grid; grid-template-columns: repeat(2, 1fr); gap: 0.75rem; padding: 0 1rem;
}
@media (min-width: 768px) { .collection-cards-row { grid-template-columns: repeat(3, 1fr); gap: 1.25rem; padding: 0 1.5rem; } }

.collection-card {
position: relative; aspect-ratio: 3/4; overflow: hidden;
cursor: pointer; background: var(--bgLight); border: 1px solid var(--borderGray);
}
.collection-card:hover img { transform: scale(1.05); }
.collection-card img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.6s ease; display: block; }
.collection-card-overlay {
position: absolute; inset: 0;
background: linear-gradient(to top, rgba(0,0,0,0.7) 0%, transparent 55%);
display: flex; flex-direction: column; justify-content: flex-end; padding: 1.25rem;
}
.collection-card-label { font-family: 'Manrope', sans-serif; font-size: 1.125rem; font-weight: 700; color: #fff; line-height: 1.1; letter-spacing: -0.01em; }
.collection-card-sub { font-family: 'Manrope', sans-serif; font-size: 10px; font-weight: 700; letter-spacing: 0.2em; text-transform: uppercase; color: rgba(255,255,255,0.7); margin-top: 0.2rem; }
.collection-card-arrow {
width: 30px; height: 30px; background: #fff; border-radius: 50%;
display: flex; align-items: center; justify-content: center;
margin-top: 0.65rem; color: var(--textMain); flex-shrink: 0;
transition: background 0.2s ease, color 0.2s ease;
}
.collection-card-arrow svg { width: 13px; height: 13px; stroke: currentColor; stroke-width: 2.5; fill: none; }
.collection-card:hover .collection-card-arrow { background: var(--primary); color: #fff; }
.collection-card-btn {
display: inline-flex; align-items: center; gap: 0.5rem;
margin-top: 0.75rem; width: fit-content;
padding: 0.55rem 1.1rem;
background: transparent; border: 1.5px solid #fff; color: #fff;
font-family: 'Manrope', sans-serif; font-size: 10px; font-weight: 700;
letter-spacing: 0.2em; text-transform: uppercase;
cursor: pointer; transition: background 0.25s ease, color 0.25s ease;
}
.collection-card-btn svg { width: 12px; height: 12px; stroke: currentColor; transition: transform 0.25s ease; }
.collection-card-btn:hover { background: #fff; color: var(--textMain); }
.collection-card-btn:hover svg { transform: translateX(3px); }
.value-banner {
background: var(--primary); padding: 2.5rem 1.5rem;
display: flex; flex-direction: column; align-items: center; text-align: center;
gap: 1rem; position: relative; overflow: hidden; margin: 0.5rem 0;
}
@media (min-width: 768px) { .value-banner { flex-direction: row; text-align: left; gap: 2rem; padding: 2.5rem 3rem; } }
.value-banner-headline {
font-family: 'Manrope', sans-serif;
font-size: clamp(1.25rem, 2.5vw, 1.875rem); font-weight: 700; color: #fff; line-height: 1.1; letter-spacing: -0.025em; flex: 1;
}
.value-banner-cta {
font-family: 'Manrope', sans-serif; font-size: 11px; font-weight: 700;
letter-spacing: 0.2em; text-transform: uppercase; background: #fff;
color: var(--primary); padding: 0.85rem 2rem; white-space: nowrap;
transition: background 0.2s ease, color 0.2s ease; cursor: pointer; display: inline-block;
border: none;
}
.value-banner-cta:hover { background: var(--textMain); color: #fff; }
.split-category-banner {
display: grid;
grid-template-columns: 1fr;
width: 100vw;
margin-left: calc(50% - 50vw);
margin-right: calc(50% - 50vw);
}
@media (min-width: 768px) {
.split-category-banner { grid-template-columns: 1fr 1fr; }
}

.split-category-col {
position: relative;
display: flex;
align-items: flex-end;
overflow: hidden;
cursor: pointer;
height: clamp(380px, 82vw, 520px);
background: var(--textMain);
}
@media (min-width: 768px) {
.split-category-col { height: clamp(480px, 46vw, 640px); }
}

.split-category-col img {
position: absolute; inset: 0; width: 100%; height: 100%;
object-fit: cover; object-position: center;
transition: transform 0.7s ease;
}
.split-category-col:hover img { transform: scale(1.045); }
.split-category-col--men::after {
content: '';
position: absolute; inset: 0;
background: linear-gradient(180deg, rgba(10,10,10,0.10) 0%, rgba(8,8,8,0.55) 55%, rgba(5,5,5,0.85) 100%);
}
.split-category-col--women::after {
content: '';
position: absolute; inset: 0;
background: linear-gradient(180deg, rgba(30,15,15,0.05) 0%, rgba(35,18,18,0.45) 55%, rgba(60,25,25,0.78) 100%);
}

.split-category-content {
position: relative; z-index: 2;
width: 100%;
padding: 2rem 1.5rem 2.25rem;
}
@media (min-width: 768px) {
.split-category-content { padding: 3rem 3.25rem; max-width: 460px; }
}

.split-category-eyebrow {
font-family: 'Manrope', sans-serif; font-size: 10px; font-weight: 700;
letter-spacing: 0.3em; text-transform: uppercase; color: rgba(255,255,255,0.85);
display: block; margin-bottom: 0.6rem;
}
.split-category-title {
font-family: 'Manrope', sans-serif;
font-size: clamp(1.75rem, 4vw, 2.5rem); font-weight: 700;
color: #fff; line-height: 1.05; letter-spacing: -0.03em; margin-bottom: 0.55rem;
}
.split-category-sub {
font-family: 'Manrope', sans-serif; font-size: 12.5px; font-weight: 500;
color: rgba(255,255,255,0.82); letter-spacing: 0.02em; line-height: 1.4;
margin-bottom: 1.5rem;
}
.split-category-cta {
font-family: 'Manrope', sans-serif; font-size: 11px; font-weight: 700;
letter-spacing: 0.2em; text-transform: uppercase;
padding: 0.9rem 2.1rem; border: none; cursor: pointer;
display: inline-flex; align-items: center; gap: 0.5rem;
transition: background 0.2s ease, color 0.2s ease, transform 0.2s ease;
}
.split-category-cta svg { width: 12px; height: 12px; stroke: currentColor; stroke-width: 2.5; fill: none; flex-shrink: 0; }
.split-category-cta:hover { transform: translateX(3px); }
.split-category-col--men-cta { background: #fff; color: var(--textMain); }
.split-category-col--men-cta:hover { background: var(--primary); color: #fff; }
.split-category-col--women-cta { background: #C9A17A; color: #2a1a12; }
.split-category-col--women-cta:hover { background: #fff; color: #2a1a12; }
.fcol-grid {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 2px;
background: var(--borderGray);
}
@media (min-width: 1024px) {
.fcol-grid { grid-template-columns: repeat(4, 1fr); }
}

.fcol-tile {
position: relative;
aspect-ratio: 3 / 4;
overflow: hidden;
cursor: pointer;
background: var(--textMain);
display: flex;
align-items: flex-end;
}

.fcol-tile img {
position: absolute; inset: 0; width: 100%; height: 100%;
object-fit: cover; object-position: center;
transition: transform 0.6s ease;
}
.fcol-tile:hover img { transform: scale(1.06); }

.fcol-tile::after {
content: '';
position: absolute; inset: 0;
}

.fcol-tile--men::after {
background: linear-gradient(180deg, rgba(10,10,10,0.05) 0%, rgba(8,8,8,0.55) 60%, rgba(5,5,5,0.9) 100%);
}

.fcol-tile--women::after {
background: linear-gradient(180deg, rgba(35,18,18,0.05) 0%, rgba(40,20,20,0.5) 60%, rgba(60,25,25,0.85) 100%);
}

.fcol-tile--jewelry::after {
background: linear-gradient(180deg, rgba(10,8,4,0.05) 0%, rgba(15,11,4,0.55) 60%, rgba(10,8,3,0.92) 100%);
}

.fcol-tile--offers::after {
background: linear-gradient(180deg, rgba(40,4,4,0.1) 0%, rgba(60,4,4,0.55) 60%, rgba(70,2,2,0.92) 100%);
}

.fcol-tile__content {
position: relative; z-index: 2;
width: 100%;
padding: 1.1rem 1rem 1.3rem;
}
@media (min-width: 1024px) {
.fcol-tile__content { padding: 1.75rem 1.5rem 2rem; }
}

.fcol-tile__eyebrow {
font-family: 'Manrope', sans-serif; font-size: 9px; font-weight: 700;
letter-spacing: 0.24em; text-transform: uppercase; color: rgba(255,255,255,0.75);
display: block; margin-bottom: 0.35rem;
}
.fcol-tile__title {
font-family: 'Manrope', sans-serif;
font-size: clamp(1.15rem, 2.4vw, 1.6rem); font-weight: 300; text-transform: uppercase;
color: #fff; letter-spacing: 0.02em; margin-bottom: 0.8rem; line-height: 1.1;
}
.fcol-tile__cta {
font-family: 'Manrope', sans-serif; font-size: 10px; font-weight: 700;
letter-spacing: 0.16em; text-transform: uppercase;
padding: 0.65rem 1.1rem; border: none; cursor: pointer;
display: inline-flex; align-items: center; gap: 0.4rem;
transition: background 0.2s ease, color 0.2s ease, transform 0.2s ease;
}
.fcol-tile__cta svg { width: 10px; height: 10px; stroke: currentColor; stroke-width: 2.5; fill: none; flex-shrink: 0; }
.fcol-tile__cta:hover { transform: translateX(3px); }

.fcol-tile--men .fcol-tile__cta { background: #fff; color: var(--textMain); }
.fcol-tile--men .fcol-tile__cta:hover { background: var(--primary); color: #fff; }

.fcol-tile--women .fcol-tile__cta { background: #C9A17A; color: #2a1a12; }
.fcol-tile--women .fcol-tile__cta:hover { background: #fff; color: #2a1a12; }

.fcol-tile--jewelry .fcol-tile__cta { background: #C9A84C; color: #241b06; }
.fcol-tile--jewelry .fcol-tile__cta:hover { background: #fff; color: #241b06; }

.fcol-tile--offers .fcol-tile__cta { background: var(--primary); color: #fff; }
.fcol-tile--offers .fcol-tile__cta:hover { background: #fff; color: var(--primary); }

@media (prefers-reduced-motion: reduce) {
.fcol-tile img, .fcol-tile__cta { transition: none !important; }
}
.trust-v2-section {
background: var(--primary); padding: 4rem 0; position: relative; overflow: hidden;
}
.trust-v2-section::before {
content: ''; position: absolute; inset: 0;
background: radial-gradient(ellipse 60% 40% at 50% 0%, rgba(255,255,255,0.07) 0%, transparent 70%),
    radial-gradient(ellipse 40% 50% at 80% 100%, rgba(0,0,0,0.12) 0%, transparent 60%);
pointer-events: none;
}
.trust-v2-header { text-align: center; margin-bottom: 3rem; position: relative; z-index: 1; }
.trust-v2-eyebrow {
font-family: 'Manrope', sans-serif; font-size: 10px; font-weight: 700;
letter-spacing: 0.35em; text-transform: uppercase; color: rgba(255,255,255,0.7);
display: flex; align-items: center; justify-content: center; gap: 0.6rem; margin-bottom: 0.75rem;
}
.trust-v2-eyebrow::before, .trust-v2-eyebrow::after {
content: ''; display: block; width: 2rem; height: 1px; background: rgba(255,255,255,0.4); opacity: 1;
}
.trust-v2-title {
font-family: 'Manrope', sans-serif;
font-size: clamp(1.5rem, 2.5vw, 2rem); font-weight: 700; color: #fff; line-height: 1.15; letter-spacing: -0.025em;
}
.trust-v2-subtitle { font-family: 'Manrope', sans-serif; font-size: 0.8rem; color: rgba(255,255,255,0.5); margin-top: 0.75rem; letter-spacing: 0.04em; }

.trust-v2-grid {
display: grid; grid-template-columns: repeat(2, 1fr); gap: 1px;
border: 1px solid rgba(255,255,255,0.06); position: relative; z-index: 1;
max-width: 1100px; margin: 0 auto;
}
@media (min-width: 768px) { .trust-v2-grid { grid-template-columns: repeat(4, 1fr); } }

.trust-v2-card {
padding: 2rem 1.5rem; background: rgba(255,255,255,0.06);
border: 1px solid rgba(255,255,255,0.1);
display: flex; flex-direction: column; align-items: center; text-align: center; gap: 1rem;
transition: background 0.3s ease, border-color 0.3s ease; position: relative; overflow: hidden;
}
.trust-v2-card::after {
content: ''; position: absolute; bottom: 0; left: 0; right: 0; height: 2px;
background: rgba(255,255,255,0.5); transform: scaleX(0); transition: transform 0.35s ease; transform-origin: center;
}
.trust-v2-card:hover { background: rgba(255,255,255,0.12); border-color: rgba(255,255,255,0.25); }
.trust-v2-card:hover::after { transform: scaleX(1); }

.trust-v2-seal {
width: 60px; height: 60px; border-radius: 50%;
border: 1.5px solid rgba(255,255,255,0.35); background: rgba(255,255,255,0.1);
display: flex; align-items: center; justify-content: center; color: #fff;
flex-shrink: 0; transition: border-color 0.3s ease, box-shadow 0.3s ease;
}
.trust-v2-card:hover .trust-v2-seal { border-color: rgba(255,255,255,0.6); box-shadow: none; }
.trust-v2-seal svg {
width: 26px !important; height: 26px !important;
display: block; flex-shrink: 0;
stroke: currentColor; stroke-width: 1.5;
stroke-linecap: round; stroke-linejoin: round; fill: none;
}

.trust-v2-card-title { font-family: 'Manrope', sans-serif; font-size: 11px; font-weight: 700; letter-spacing: 0.18em; text-transform: uppercase; color: #fff; }
.trust-v2-card-text { font-family: 'Manrope', sans-serif; font-size: 12px; color: rgba(255,255,255,0.45); line-height: 1.55; }

.trust-v2-legal {
max-width: 1100px; margin: 2rem auto 0; padding: 1.25rem 1.5rem;
background: rgba(0,0,0,0.15); border: 1px solid rgba(255,255,255,0.15);
display: flex; flex-direction: column; gap: 0.75rem;
align-items: center; text-align: center; position: relative; z-index: 1;
}
@media (min-width: 768px) { .trust-v2-legal { flex-direction: row; justify-content: space-between; text-align: left; } }
.trust-v2-legal-text { font-family: 'Manrope', sans-serif; font-size: 12px; color: rgba(255,255,255,0.4); line-height: 1.5; }
.trust-v2-legal-text strong { color: rgba(255,255,255,0.7); font-weight: 600; }
.trust-v2-legal-badge {
font-family: 'Manrope', sans-serif; font-size: 10px; font-weight: 700;
letter-spacing: 0.2em; text-transform: uppercase; color: #fff;
border: 1px solid rgba(255,255,255,0.45); padding: 0.5rem 1rem; white-space: nowrap; flex-shrink: 0;
}
.product-main-img-wrap { box-shadow: none !important; }
.product-features-band {
padding: 1.5rem 0;
background: var(--bgLight);
}

.pf-card {
background: #FFFFFF;
border: 1px solid var(--borderGray);
border-radius: 4px;
padding: 2rem 1.75rem;
}
.pf-band-title {
font-size: 0.68rem;
font-weight: 700;
letter-spacing: 0.16em;
text-transform: uppercase;
color: var(--textMain);
padding-bottom: 1rem;
margin-bottom: 1.75rem;
border-bottom: 1px solid var(--borderGray);
}
.pf-grid {
display: grid;
grid-template-columns: 1fr;
gap: 1.5rem 2.5rem;
justify-content: center;
}
@media (min-width: 480px) {
.pf-grid { grid-template-columns: repeat(2, max-content); }
}
@media (min-width: 1024px) {
.pf-grid { grid-template-columns: repeat(4, max-content); }
}

.pf-item {
display: flex;
align-items: center;
gap: 0.85rem;
}
.pf-item-icon {
width: 62px;
height: 62px;
flex-shrink: 0;
transition: transform 0.25s ease;
}
.pf-item:hover .pf-item-icon { transform: scale(1.06); }
.pf-item-icon svg, .pf-item-icon img { width: 100%; height: 100%; object-fit: contain; }
.pf-item-text-wrap {
display: flex;
flex-direction: column;
justify-content: center;
gap: 0.15rem;
white-space: nowrap;
}
.pf-item-title {
font-size: 0.68rem;
font-weight: 700;
letter-spacing: 0.06em;
text-transform: uppercase;
color: var(--textMain);
line-height: 1.3;
}
.pf-item-text {
font-size: 0.78rem;
color: var(--textMuted);
}
.fomo-toast-img { width: 40px; height: 40px; object-fit: contain; background: #fff; border-radius: 6px; padding: 3px; flex-shrink: 0; display: block; }
@media (max-width: 640px) {
.home-section { padding: 2rem 0; }
.home-section-header { padding: 0 1rem; }
.home-section-scroll { padding: 0 1rem 0.5rem; }
.collection-cards-row { padding: 0 0.75rem; gap: 0.5rem; }
.trust-v2-section { padding: 2.5rem 0; }
.trust-v2-card { padding: 1.5rem 1rem; }
}
@media (prefers-reduced-motion: reduce) {
.trust-v2-card, .trust-v2-card::after, .trust-v2-seal,
.collection-card img, .collection-card-arrow { transition: none !important; }
}
.mr-pcard {
display: flex;
flex-direction: column;
cursor: default;
}
.mr-pcard__img {
position: relative;
overflow: hidden;
background: var(--bgLight);
aspect-ratio: 4 / 5;
margin-bottom: 0.875rem;
cursor: pointer;
}
.mr-pcard__img img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
transition: transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.mr-pcard:hover .mr-pcard__img img { transform: scale(1.04); }

.mr-pcard__qv {
position: absolute;
top: 0.625rem;
right: 0.625rem;
width: 2rem;
height: 2rem;
border-radius: 50%;
background: #fff;
border: 1px solid var(--borderGray);
display: flex;
align-items: center;
justify-content: center;
opacity: 0;
transition: opacity 0.2s;
color: var(--textMain);
cursor: pointer;
box-shadow: 0 1px 4px rgba(0,0,0,0.08);
}
.mr-pcard:hover .mr-pcard__qv { opacity: 1; }
.mr-pcard__qv:hover { color: var(--primary); border-color: var(--primary); }

.mr-pcard__body {
flex: 1;
cursor: pointer;
padding-bottom: 0.875rem;
}
.mr-pcard__brand {
font-size: 0.5625rem;
font-weight: 700;
letter-spacing: 0.2em;
text-transform: uppercase;
color: var(--textMuted);
margin-bottom: 0.3rem;
}
.mr-pcard__name {
font-size: 0.8125rem;
font-weight: 600;
color: var(--textMain);
line-height: 1.35;
margin-bottom: 0.25rem;
letter-spacing: 0;

display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
overflow: hidden;
min-height: calc(0.8125rem * 1.35 * 2);
}
.mr-pcard__spec {
font-size: 0.6875rem;
font-weight: 300;
color: var(--textMuted);
line-height: 1.4;
text-transform: lowercase;

white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
min-height: calc(0.6875rem * 1.4);
}
.mr-pcard__spec::first-letter { text-transform: uppercase; }

.mr-pcard__stars {
display: flex;
align-items: center;
gap: 0.3rem;
margin-top: 0.3rem;
min-width: 0;
}
.mr-pcard__stars-row { display: inline-flex; gap: 1px; }
.mr-pcard__stars-count {
font-size: 0.625rem;
color: var(--textMuted);
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
min-width: 0;
}

.mr-pcard__foot {
display: flex;
flex-direction: column;
gap: 0.6rem;
padding-top: 0.75rem;
border-top: 1px solid var(--borderGray);
}
.mr-pcard__row {
display: flex;
align-items: center;
justify-content: space-between;
gap: 0.5rem;
}
.mr-pcard__price {
display: flex;
flex-direction: column;
gap: 0.15rem;
min-width: 0;
}
.mr-price-old {
font-size: 0.6875rem;
font-weight: 400;
color: var(--textMuted);
text-decoration: line-through;
}
.mr-price-now {
font-size: 1rem;
font-weight: 700;
color: var(--primary);
letter-spacing: -0.02em;
}
.mr-price-now--single { color: var(--textMain); }

.mr-pcard__icon-actions {
display: flex;
align-items: center;
gap: 0.4rem;
flex-shrink: 0;
}
.mr-pcard__icon-btn {
width: 2rem;
height: 2rem;
display: flex;
align-items: center;
justify-content: center;
border: 1.5px solid var(--borderGray);
border-radius: 2px;
background: none;
cursor: pointer;
color: var(--textMuted);
transition: border-color 0.15s, color 0.15s, transform 0.2s ease;
flex-shrink: 0;
}
.mr-pcard__icon-btn svg, .mr-pcard__icon-btn i { width: 14px; height: 14px; pointer-events: none; }
.mr-pcard__icon-btn:hover { border-color: var(--primary); color: var(--primary); transform: scale(1.06); }
.mr-pcard__icon-btn.is-fav { border-color: var(--primary); color: var(--primary); }

.mr-pcard__buy {
display: flex;
align-items: center;
justify-content: center;
gap: 0.4rem;
width: 100%;
font-size: 0.6875rem;
font-weight: 700;
letter-spacing: 0.08em;
text-transform: uppercase;
color: #FFFFFF;
background: var(--header-red-dark);
border: none;
padding: 0.65rem 0.5rem;
border-radius: 2px;
cursor: pointer;
white-space: nowrap;
transition: background-color 0.2s ease, transform 0.15s ease;
}
.mr-pcard__buy svg, .mr-pcard__buy i { width: 13px; height: 13px; flex-shrink: 0; pointer-events: none; }
.mr-pcard__buy:hover { background-color: var(--primary-dark); }
.mr-pcard__buy:active { transform: scale(0.97); }

.mr-pcard__stock-oos {
flex: 1;
display: flex;
align-items: center;
font-size: 0.5625rem;
font-weight: 700;
letter-spacing: 0.12em;
text-transform: uppercase;
color: #9ca3af;
}
.mr-cart-list { display: flex; flex-direction: column; }

.mr-cart-item {
display: flex;
gap: 0.875rem;
padding: 1rem 0;
border-bottom: 1px solid var(--borderGray);
}
.mr-cart-item:first-child { padding-top: 0; }

.mr-cart-item__img {
width: 4rem;
height: 5rem;
flex-shrink: 0;
background: var(--bgLight);
overflow: hidden;
}
.mr-cart-item__img img { width: 100%; height: 100%; object-fit: cover; display: block; }

.mr-cart-item__body {
flex: 1;
display: flex;
flex-direction: column;
justify-content: space-between;
min-width: 0;
gap: 0.5rem;
}
.mr-cart-item__top {
display: flex;
justify-content: space-between;
align-items: flex-start;
gap: 0.5rem;
}
.mr-cart-item__brand {
font-size: 0.5625rem;
font-weight: 700;
letter-spacing: 0.18em;
text-transform: uppercase;
color: var(--textMuted);
margin-bottom: 0.2rem;
}
.mr-cart-item__name {
font-size: 0.75rem;
font-weight: 600;
color: var(--textMain);
line-height: 1.3;
overflow: hidden;
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
}
.mr-cart-item__remove {
flex-shrink: 0;
width: 1.5rem;
height: 1.5rem;
display: flex;
align-items: center;
justify-content: center;
background: none;
border: none;
cursor: pointer;
color: var(--textMuted);
transition: color 0.15s;
margin-top: -0.125rem;
}
.mr-cart-item__remove:hover { color: var(--primary); }

.mr-cart-price { display: flex; align-items: baseline; gap: 0.375rem; }

.mr-cart-item__bottom {
display: flex;
align-items: center;
justify-content: space-between;
gap: 0.5rem;
}
.mr-cart-qty {
display: flex;
align-items: center;
border: 1px solid var(--borderGray);
}
.mr-cart-qty button {
width: 1.75rem;
height: 1.75rem;
display: flex;
align-items: center;
justify-content: center;
background: none;
border: none;
cursor: pointer;
font-size: 0.875rem;
font-weight: 500;
color: var(--textMain);
transition: background 0.15s, color 0.15s;
line-height: 1;
}
.mr-cart-qty button:hover { background: var(--bgLight); color: var(--primary); }
.mr-cart-qty span {
font-size: 0.8125rem;
font-weight: 700;
color: var(--textMain);
min-width: 1.75rem;
text-align: center;
padding: 0 0.25rem;
border-left: 1px solid var(--borderGray);
border-right: 1px solid var(--borderGray);
line-height: 1.75rem;
}
.trust-bar-v2 {
border-top: 1px solid var(--borderGray);
border-bottom: 1px solid var(--borderGray);
padding: 1.375rem 0;
background: #fff;
}
.trust-bar-v2-inner {
max-width: 1200px;
margin: 0 auto;
padding: 0 1.75rem;
display: flex;
align-items: center;
justify-content: center;
flex-wrap: wrap;
}
.trust-stat {
display: flex;
align-items: baseline;
gap: 0.5rem;
padding: 0.5rem 2.5rem;
position: relative;
}
.trust-stat + .trust-stat::before {
content: '';
position: absolute;
left: 0;
top: 50%;
transform: translateY(-50%);
width: 1px;
height: 1.75rem;
background: var(--borderGray);
}
.trust-stat__num {
font-family: 'Manrope', sans-serif;
font-size: 1.75rem;
font-weight: 700;
color: var(--textMain);
line-height: 1;
letter-spacing: -0.03em;
}
.trust-stat__lbl {
font-size: 0.5625rem;
font-weight: 700;
letter-spacing: 0.14em;
text-transform: uppercase;
color: var(--textMuted);
max-width: 9ch;
line-height: 1.35;
}
@media (max-width: 640px) {
.trust-stat { padding: 0.5rem 1.25rem; }
.trust-stat__num { font-size: 1.375rem; }
}
@media (max-width: 380px) {
.trust-bar-v2-inner { gap: 0; }
.trust-stat { padding: 0.375rem 0.875rem; }
.trust-stat__num { font-size: 1.25rem; }
}
.price-block {
display: flex;
flex-direction: column;
gap: 0.5rem;
}
.price-row { display: flex; align-items: baseline; gap: 0.75rem; flex-wrap: wrap; }
.price-current {
font-family: 'Manrope', sans-serif;
font-size: 1.85rem;
font-weight: 700;
color: var(--textMain);
letter-spacing: -0.03em;
line-height: 1;
}
.price-old {
font-size: 0.95rem;
font-weight: 500;
color: var(--textMuted);
text-decoration: line-through;
opacity: 0.7;
}
.price-discount-badge {
display: inline-flex;
align-items: center;
gap: 0.25rem;
background: var(--primary);
color: #fff;
font-size: 0.7rem;
font-weight: 700;
letter-spacing: 0.04em;
padding: 0.2rem 0.5rem;
border-radius: 2px;
line-height: 1;
text-transform: uppercase;
vertical-align: middle;
}
.savings-text {
display: inline-flex;
align-items: center;
gap: 0.35rem;
font-size: 0.75rem;
font-weight: 600;
letter-spacing: 0.02em;
color: var(--primary);
background: rgba(194, 0, 14, 0.06);
padding: 0.3rem 0.55rem;
border-radius: 3px;
border-left: 2px solid var(--primary);
}
.product-title {
font-family: 'Manrope', sans-serif;
font-size: clamp(1.65rem, 2.8vw, 2.5rem);
font-weight: 700;
color: var(--textMain);
line-height: 1.15;
letter-spacing: -0.02em;
text-transform: none;
margin-bottom: 0.5rem;
}
footer.bg-footerBg,
footer[style*="background"] {
background-color: var(--footerBg) !important;
}
@media (prefers-reduced-motion: reduce) {
.mr-pcard__img img { transition: none !important; }
.mr-pcard__qv { transition: none !important; }
.mr-pcard__buy, .mr-pcard__icon-btn, .mr-cart-qty button { transition: none !important; }
}
.sps {
padding: 1.6rem 0;
border-bottom: 1px solid var(--borderGray);
opacity: 0;
transform: translateY(8px);
}
.sps.is-in {
animation: spsRise 0.6s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}
@keyframes spsRise {
to { opacity: 1; transform: translateY(0); }
}
.sps__inner {
max-width: 1100px;
margin: 0 auto;
padding: 0 1.5rem;
display: flex;
align-items: center;
justify-content: center;
flex-wrap: wrap;
row-gap: 0.9rem;
column-gap: 2.75rem;
}
.sps__rating {
display: flex;
align-items: center;
gap: 0.65rem;
flex-wrap: wrap;
justify-content: center;
}
.sps__stars {
display: flex;
gap: 3px;
}
.sps__star {
width: 22px;
height: 22px;
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
}
.sps__star svg {
width: 100%;
height: 100%;
fill: var(--primary);
filter: drop-shadow(0 1px 1px rgba(26,26,26,0.12));
}
.sps__score {
font-family: 'Manrope', sans-serif;
font-size: 0.9rem;
font-weight: 700;
color: var(--textMain);
}
.sps__dot {
color: var(--borderGray);
font-size: 0.85rem;
}
.sps__reviews {
font-family: 'Manrope', sans-serif;
font-size: 0.8rem;
font-weight: 500;
color: var(--textMuted);
white-space: nowrap;
}
.sps__customers {
display: flex;
align-items: center;
gap: 0.7rem;
}
.sps__avatars {
display: flex;
flex-shrink: 0;
}
.sps__avatar {
width: 32px;
height: 32px;
border-radius: 50%;
object-fit: cover;
border: 2px solid #fff;
box-shadow: 0 0 0 1px var(--borderGray);
margin-left: -9px;
display: block;
}
.sps__avatar:first-child { margin-left: 0; }
.sps__customers-text {
font-family: 'Manrope', sans-serif;
font-size: 0.84rem;
font-weight: 700;
color: var(--textMain);
white-space: nowrap;
}

@media (max-width: 560px) {
.sps__inner { column-gap: 1.5rem; }
.sps__star { width: 18px; height: 18px; }
.sps__avatar { width: 28px; height: 28px; margin-left: -8px; }
}

@media (prefers-reduced-motion: reduce) {
.sps { opacity: 1 !important; transform: none !important; animation: none !important; }
}
.mr-pcard__scarcity {
height: 20px;
display: flex;
align-items: center;
overflow: hidden;
gap: 5px;
}
.mr-pcard__scarcity--on {
font-size: 10px;
font-weight: 700;
color: #c2000e;
letter-spacing: 0.07em;
text-transform: uppercase;
line-height: 1;
}
.mr-scarcity-dot {
width: 6px;
height: 6px;
min-width: 6px;
background: #c2000e;
border-radius: 50%;
animation: scarcityPulse 1.8s ease-in-out infinite;
}
@keyframes scarcityPulse {
0%, 100% { opacity: 1; transform: scale(1); }
50% { opacity: 0.45; transform: scale(0.85); }
}
@media (prefers-reduced-motion: reduce) {
.mr-scarcity-dot { animation: none; }
}

.scarcity-detail-badge {
display: inline-flex;
align-items: center;
gap: 8px;
font-size: 11px;
font-weight: 700;
color: #c2000e;
letter-spacing: 0.06em;
text-transform: uppercase;
margin-bottom: 14px;
padding: 7px 12px;
background: rgba(194,0,14,0.05);
border-radius: 6px;
border: 1px solid rgba(194,0,14,0.18);
}
.scarcity-detail-dot {
width: 7px;
height: 7px;
min-width: 7px;
background: #c2000e;
border-radius: 50%;
animation: scarcityPulse 1.8s ease-in-out infinite;
}
.live-viewers-badge {
display: inline-flex;
align-items: center;
gap: 7px;
font-size: 12px;
color: var(--textMuted, #6F6F6F);
margin-bottom: 14px;
font-weight: 500;
letter-spacing: 0.01em;
}
.live-viewers-dot {
display: inline-block;
width: 7px;
height: 7px;
background: #16a34a;
border-radius: 50%;
animation: liveViewerPulse 2s ease-in-out infinite;
flex-shrink: 0;
}
@keyframes liveViewerPulse {
0%, 100% { opacity: 1; transform: scale(1); box-shadow: 0 0 0 0 rgba(22,163,74,0.4); }
50%       { opacity: 0.8; transform: scale(1.15); box-shadow: 0 0 0 4px rgba(22,163,74,0); }
}
@media (prefers-reduced-motion: reduce) {
.live-viewers-dot { animation: none; }
}
#sticky-buy-bar {
display: flex;
position: fixed;
bottom: 0;
left: 0;
right: 0;
z-index: 45;
align-items: center;
gap: 12px;
padding: 10px 14px 14px;

padding-bottom: calc(14px + env(safe-area-inset-bottom, 0px));
background: #FFFFFF;
border-top: 1px solid #E5E5E5;
box-shadow: 0 -8px 32px rgba(0, 0, 0, 0.10);

transform: translateY(100%);
transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
will-change: transform;
}
#sticky-buy-bar.sbb-visible {
transform: translateY(0);
}
@media (prefers-reduced-motion: reduce) {
#sticky-buy-bar { transition: none; }
}
@media (min-width: 768px) {
#sticky-buy-bar {
max-width: 1200px;
margin: 0 auto;
left: 0; right: 0;
bottom: 20px;
padding: 16px 28px;
gap: 24px;
border: 1px solid var(--borderGray);
border-radius: 10px;
box-shadow: 0 16px 48px rgba(0,0,0,0.14);
transform: translateY(140%);
}
#sticky-buy-bar.sbb-visible { transform: translateY(0); }
}
.sbb-info {
flex: 1;
min-width: 0;
overflow: hidden;
}
.sbb-name {
font-size: 10px;
font-weight: 700;
letter-spacing: 0.08em;
text-transform: uppercase;
color: var(--textMuted, #6F6F6F);
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
line-height: 1.3;
margin: 0 0 2px 0;
}
.sbb-prices {
display: flex;
align-items: baseline;
gap: 5px;
}
.sbb-price {
font-size: 17px;
font-weight: 700;
color: #950606;
letter-spacing: -0.02em;
line-height: 1;
}
@media (min-width: 768px) {
.sbb-name { font-size: 11px; }
.sbb-price { font-size: 20px; }
}
.sbb-price-old {
font-size: 11px;
font-weight: 400;
color: var(--textMuted, #6F6F6F);
text-decoration: line-through;
}
.sbb-cta {
flex-shrink: 0;
background: #950606;
color: #FFFFFF;
font-family: 'Manrope', sans-serif;
font-size: 11px;
font-weight: 700;
letter-spacing: 0.1em;
text-transform: uppercase;
border: none;
border-radius: 4px;
padding: 12px 18px;
min-height: 44px;
cursor: pointer;
white-space: nowrap;
transition: background 0.2s ease, transform 0.1s ease;
-webkit-tap-highlight-color: transparent;
}
.sbb-cta:active { transform: scale(0.97); background: #7A0015; }
@media (min-width: 768px) {
.sbb-cta { padding: 13px 28px; font-size: 12px; }
}
.product-freeship-nudge-wrap {
min-height: 0;
overflow: hidden;
}
.freeship-nudge {
display: inline-flex;
align-items: center;
gap: 7px;
font-size: 12px;
font-weight: 500;
color: var(--textMuted, #6F6F6F);
background: #F7F7F7;
border-radius: 6px;
padding: 8px 12px;
margin-bottom: 14px;
width: 100%;
box-sizing: border-box;
line-height: 1.35;
}
.freeship-nudge svg {
flex-shrink: 0;
color: var(--textMuted, #6F6F6F);
}

/* ────────────────────────────────────────────
   FLOATING VIDEO PLAYER (PiP)
   ──────────────────────────────────────────── */
.pv-float {
position: fixed;
bottom: 90px; right: 20px;
z-index: 9990;
width: 180px;
border-radius: 14px;
overflow: hidden;
background: #000;
box-shadow: 0 8px 32px rgba(0,0,0,0.28), 0 0 0 1px rgba(255,255,255,0.06);
opacity: 0;
transform: translateY(20px) scale(0.92);
transition: opacity 0.35s ease, transform 0.35s cubic-bezier(0.16, 1, 0.3, 1);
cursor: pointer;
}
.pv-float.is-visible {
opacity: 1;
transform: translateY(0) scale(1);
}

/* Close button */
.pv-float-close {
position: absolute; top: 6px; right: 6px; z-index: 5;
width: 34px; height: 34px;
border-radius: 50%;
background: rgba(0,0,0,0.7);
backdrop-filter: blur(4px);
border: 2px solid rgba(255,255,255,0.3);
color: #fff;
font-size: 20px;
display: flex; align-items: center; justify-content: center;
cursor: pointer;
transition: background 0.15s, border-color 0.15s;
line-height: 1;
}
.pv-float-close:hover { background: rgba(255,255,255,0.3); border-color: rgba(255,255,255,0.5); }

/* Video */
.pv-float-video {
width: 100%;
aspect-ratio: 9 / 16;
object-fit: cover;
display: block;
}

/* Play overlay */
.pv-float-overlay {
position: absolute; inset: 0;
display: flex; align-items: center; justify-content: center;
z-index: 2;
}
.pv-float-play {
width: 48px; height: 48px;
border-radius: 50%;
background: rgba(0,0,0,0.4);
backdrop-filter: blur(4px);
display: flex; align-items: center; justify-content: center;
transition: opacity 0.3s, transform 0.2s;
}
.pv-float-play svg { margin-left: 3px; }
.pv-float:hover .pv-float-play { transform: scale(1.06); }

/* Bottom bar */
.pv-float-bar {
position: absolute; bottom: 0; left: 0; right: 0;
display: flex; justify-content: center; gap: 6px;
padding: 8px;
background: linear-gradient(transparent, rgba(0,0,0,0.6));
z-index: 3;
}
.pv-bar-btn {
width: 30px; height: 30px;
border-radius: 50%;
background: rgba(255,255,255,0.15);
border: none;
color: #fff;
display: flex; align-items: center; justify-content: center;
cursor: pointer;
transition: background 0.15s;
}
.pv-bar-btn:hover { background: rgba(255,255,255,0.3); }

/* Desktop */
@media (min-width: 1024px) {
.pv-float { width: 200px; bottom: 90px; right: 24px; }
}

/* Mobile — wider, not covering WhatsApp btn */
@media (max-width: 640px) {
.pv-float {
width: 140px;
bottom: 80px; right: 12px;
border-radius: 12px;
}
.pv-float-play { width: 40px; height: 40px; }
.pv-float-play svg { width: 28px; height: 28px; }
.pv-bar-btn { width: 26px; height: 26px; }
.pv-float-close { width: 30px; height: 30px; font-size: 18px; top: 4px; right: 4px; }
}

/* ── Fullscreen Modal ── */
.pv-fs-modal {
position: fixed; inset: 0; z-index: 100000;
display: flex; align-items: center; justify-content: center;
opacity: 0; visibility: hidden;
transition: opacity 0.25s, visibility 0.25s;
}
.pv-fs-modal.is-open { opacity: 1; visibility: visible; }
.pv-fs-backdrop {
position: absolute; inset: 0;
background: rgba(0,0,0,0.92);
backdrop-filter: blur(8px);
}
.pv-fs-content {
position: relative;
width: 90vw; max-width: 420px;
max-height: 90vh;
z-index: 1;
border-radius: 14px;
overflow: hidden;
background: #000;
transform: scale(0.92);
transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}
.pv-fs-modal.is-open .pv-fs-content { transform: scale(1); }
.pv-fs-video {
width: 100%;
max-height: 90vh;
display: block;
object-fit: contain;
background: #000;
}
.pv-fs-close {
position: absolute; top: 12px; right: 12px; z-index: 5;
width: 42px; height: 42px;
border-radius: 50%;
background: rgba(0,0,0,0.6);
backdrop-filter: blur(6px);
border: none;
color: #fff;
font-size: 24px;
display: flex; align-items: center; justify-content: center;
cursor: pointer;
transition: background 0.15s;
line-height: 1;
}
.pv-fs-close:hover { background: rgba(255,255,255,0.2); }
@media (max-width: 640px) {
.pv-fs-content { width: 95vw; max-width: none; border-radius: 12px; }
}
.freeship-nudge--close {
background: rgba(149, 6, 6, 0.06);
color: var(--primary);
}
.freeship-nudge--close svg { color: var(--primary); }
.freeship-nudge--done {
background: rgba(149, 6, 6, 0.06);
color: var(--primary);
font-weight: 600;
}
.freeship-nudge--done svg { color: var(--primary); }
.hdr-row {
display: grid;
grid-template-columns: 1fr auto 1fr;
align-items: center;
min-height: 72px;
gap: 12px;
}
.hdr-hamburger { justify-self: start; }
.hdr-logo-center {
justify-self: center;
display: flex;
align-items: center;
cursor: pointer;
}
.hdr-logo-fallback {
font-family: 'Manrope', sans-serif;
font-size: 1.15rem;
font-weight: 300;
letter-spacing: 0.12em;
color: #FFFFFF;
white-space: nowrap;
}
.hdr-logo-fallback span { color: rgba(255, 255, 255, 0.7); font-weight: 300; }
.hdr-actions {
display: flex;
align-items: center;
justify-content: flex-end;
justify-self: end;
gap: 2px;
}
.hdr-btn {
display: flex;
align-items: center;
justify-content: center;
gap: 5px;
min-width: 44px;
min-height: 44px;
padding: 0 6px;
border-radius: 8px;
color: rgba(255, 255, 255, 0.9);
background: none;
border: none;
cursor: pointer;
font-family: inherit;
text-decoration: none;
transition: color 0.15s ease, background 0.15s ease;
-webkit-tap-highlight-color: transparent;
position: relative;
}
.hdr-btn:hover {
color: #FFFFFF;
background: rgba(255, 255, 255, 0.12);
}
.hdr-cart {
display: flex;
align-items: center;
gap: 6px;
min-width: 44px;
min-height: 44px;
padding: 0 8px;
border-radius: 8px;
color: rgba(255, 255, 255, 0.9);
text-decoration: none;
cursor: pointer;
transition: color 0.15s ease, background 0.15s ease;
-webkit-tap-highlight-color: transparent;
position: relative;
}
.hdr-cart:hover { color: #FFFFFF; background: rgba(255, 255, 255, 0.12); }
.hdr-cart span {
font-size: 9px;
font-weight: 700;
color: var(--header-red-dark);
background: #FFFFFF;
border-radius: 100px;
padding: 1px 4px;
min-width: 15px;
text-align: center;
letter-spacing: 0;
line-height: 1.5;
display: inline-block;
transition: transform 0.2s cubic-bezier(0.34,1.56,0.64,1);
position: absolute;
top: 4px;
right: 2px;
}
.hdr-search-panel {
background: #FFFFFF;
box-shadow: 0 16px 34px rgba(0, 0, 0, 0.2);
}
.hdr-search-wrap { transition: transform 0.25s cubic-bezier(0.16,1,0.3,1); }
.hdr-search-input {
border-color: var(--borderGray);
transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.hdr-search-input:focus {
border-color: var(--primary);
box-shadow: 0 0 0 3px rgba(149, 6, 6, 0.08);
}
.hdr-search-wrap:focus-within { transform: translateY(-1px); }
@media (prefers-reduced-motion: reduce) {
.hdr-search-wrap, .hdr-search-wrap:focus-within { transition: none; transform: none; }
}
.skeleton-logo-bar {
width: 110px;
height: 24px;
border-radius: 4px;
background: rgba(255, 255, 255, 0.16);
animation: skeleton-pulse 1.5s ease-in-out infinite;
}
.skeleton-hero-bg {
background: linear-gradient(135deg, #f0f0f0 0%, #e0e0e0 100%);
}

@media (prefers-reduced-motion: reduce) {
.skeleton-logo-bar { animation: none; opacity: 0.08; }
}
:root {
--gold: #C9A84C;
--gold-soft: rgba(201,168,76,0.12);
--ivory: #F5F5F3;
--charcoal: #141414;
--font-editorial: 'Manrope', -apple-system, sans-serif;
--font-body: 'Manrope', -apple-system, sans-serif;
--footerBg: #950606 !important;
--ease-out: cubic-bezier(0.16, 1, 0.3, 1);
--ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);
}
.reveal {
opacity: 0;
transform: translateY(24px);
transition: opacity 0.6s var(--ease-out), transform 0.6s var(--ease-out);
}
.reveal.is-visible {
opacity: 1;
transform: translateY(0);
}
a, button, input, select, textarea, details, summary {
-webkit-tap-highlight-color: transparent;
}
button, a, .mr-pcard, .mr-pcard__buy, .faq-item, .fcol-tile {
transition: all 0.25s ease !important;
}
button:active:not(:disabled),
a.btn--primary:active,
.mr-pcard__buy:active,
.fcol-tile__cta:active,
#ig-follow-btn:active,
.welcome-modal-btn:active {
transform: scale(0.96) !important;
transition-duration: 0.1s !important;
}
.faq-panel {
overflow: hidden;
max-height: 0;
transition: max-height 0.4s var(--ease-out), opacity 0.3s ease;
opacity: 0;
}
.faq-item[open] .faq-panel {
max-height: 500px;
opacity: 1;
}
#marquee-container { display: none !important; }
.promo-top-bar {
background: #FFFFFF !important;
border-bottom: 1px solid #F0F0F0 !important;
min-height: 0 !important;
padding: 0 !important;
}
.promo-top-bar-inner { gap: 0 !important; padding: 9px 20px !important; justify-content: center !important; }
.promo-top-bar-icon { display: none !important; }
.promo-top-bar-label {
font-family: var(--font-editorial) !important;
font-size: 13px !important; font-weight: 600 !important; font-style: italic !important;
letter-spacing: 0.02em !important; text-transform: none !important; color: var(--primary) !important;
}
.promo-top-bar-sub {
font-family: var(--font-editorial) !important;
font-size: 13px !important; font-weight: 400 !important; font-style: italic !important;
color: var(--textMuted) !important; letter-spacing: 0 !important; text-transform: none !important;
}
.promo-top-bar-sep { color: #E0E0E0 !important; }
.promo-top-bar-clock { gap: 0 !important; margin-left: 10px !important; padding-left: 12px !important; border-left: 1px solid #EBEBEB !important; }
.ptbc-unit { background: none !important; border: none !important; border-radius: 0 !important; padding: 0 !important; gap: 1px !important; }
.ptbc-unit span { font-family: var(--font-body) !important; font-size: 12px !important; font-weight: 600 !important; color: var(--gold) !important; }
.ptbc-unit em { font-size: 9px !important; color: rgba(201,168,76,0.5) !important; font-style: normal !important; }
.ptbc-colon { color: rgba(201,168,76,0.3) !important; font-size: 11px !important; }
.promo-top-bar-cta {
background: none !important; border: none !important;
border-bottom: 1px solid var(--gold) !important; border-radius: 0 !important;
color: var(--gold) !important; font-size: 10px !important; font-weight: 700 !important;
padding: 0 0 1px !important; margin-left: 12px !important; letter-spacing: 0.14em !important;
}
.promo-top-bar-cta:hover { color: var(--primary) !important; border-bottom-color: var(--primary) !important; }
.promo-top-bar-cta:active, .promo-top-bar-cta.is-claimed { background: none !important; transform: none !important; }
@media (max-width: 640px) {
.promo-top-bar-inner { padding: 8px 12px !important; }
.promo-top-bar-label { font-size: 11px !important; }
.promo-top-bar-sub, .promo-top-bar-sep { display: none !important; }
}
.glass-header { background: var(--primary) !important; box-shadow: none !important; border-bottom: none !important; }
.hdr-row { min-height: 72px !important; padding-left: 1.5rem !important; padding-right: 1.5rem !important; }
.hdr-actions { gap: 6px !important; }
#header-logo-img { max-height: 40px !important; }
.hdr-search-panel { box-shadow: 0 4px 12px rgba(0,0,0,0.06) !important; border-bottom: 1px solid #EBEBEB !important; background: #FFF !important; }
.sps { display: none !important; }
.font-display { font-family: var(--font-editorial) !important; text-transform: none !important; letter-spacing: -0.01em !important; font-weight: 600 !important; }
.home-section-title {
font-family: var(--font-editorial) !important; font-weight: 600 !important;
text-transform: none !important; letter-spacing: -0.01em !important;
font-size: clamp(1.6rem, 3.2vw, 2.4rem) !important;
position: relative !important; padding-bottom: 12px !important;
}
.home-section-title::after {
content: '' !important; position: absolute !important; bottom: 0 !important; left: 0 !important;
width: 40px !important; height: 2px !important; background: var(--gold) !important;
}
.hero-slide-title { font-family: var(--font-editorial) !important; font-weight: 600 !important; text-transform: none !important; }
.hero-slide-eyebrow { color: var(--gold) !important; }
.product-title { font-family: var(--font-editorial) !important; font-weight: 600 !important; text-transform: none !important; font-size: clamp(1.8rem, 3.2vw, 2.8rem) !important; }
.split-category-title, .fcol-tile__title, .cat-banner-title { font-family: var(--font-editorial) !important; font-weight: 600 !important; text-transform: none !important; }
.split-category-eyebrow, .fcol-tile__eyebrow { color: var(--gold) !important; }
#objections-section .text-primary, #ig-section .text-primary { color: var(--gold) !important; }
.home-section-header { border-bottom: none !important; margin-bottom: 1.25rem !important; padding-bottom: 0.75rem !important; }
.home-section-cta { border-bottom-color: transparent !important; font-size: 10px !important; letter-spacing: 0.14em !important; color: var(--textMuted) !important; font-weight: 600 !important; }
.home-section-cta:hover { color: var(--primary) !important; border-bottom-color: var(--primary) !important; }
.home-section-scroll { gap: 0.75rem !important; }
@media (min-width: 768px) { .home-section-scroll { gap: 1.1rem !important; } }
.mr-pcard {
border: none !important; background: #FFF !important; border-radius: 16px !important;
box-shadow: 0 2px 12px rgba(0,0,0,0.06) !important; position: relative !important;
overflow: hidden !important; text-align: center !important;
}
.mr-pcard:hover { transform: translateY(-4px) !important; box-shadow: 0 8px 30px rgba(0,0,0,0.1) !important; }
.mr-pcard__img { background: #F4F4F2 !important; aspect-ratio: 4/5 !important; margin-bottom: 0 !important; overflow: hidden !important; position: relative !important; border-radius: 16px 16px 0 0 !important; }
.mr-pcard__img img { transition: transform 0.5s var(--ease-out) !important; }
.mr-pcard:hover .mr-pcard__img img { transform: scale(1.04) !important; }
.mr-pcard__discount { position: absolute; top: 12px; left: 12px; z-index: 5; background: var(--primary); color: #FFF; font-size: 0.7rem; font-weight: 800; padding: 5px 10px; border-radius: 0 !important; line-height: 1; }
.mr-pcard__fav-btn { position: absolute !important; top: 12px !important; right: 12px !important; z-index: 5 !important; width: 36px !important; height: 36px !important; border-radius: 50% !important; background: #FFF !important; border: none !important; display: flex !important; align-items: center !important; justify-content: center !important; cursor: pointer !important; box-shadow: 0 1px 6px rgba(0,0,0,0.08) !important; color: #C0C0C0 !important; }
.mr-pcard__fav-btn:hover { color: var(--primary) !important; transform: scale(1.1) !important; }
.mr-pcard__fav-btn.is-fav { color: var(--primary) !important; }
.mr-pcard__icon-actions, .mr-pcard__qv { display: none !important; }
.mr-pcard__sold { display: inline-flex !important; align-items: center !important; gap: 5px !important; background: #FFF !important; padding: 5px 12px !important; border-radius: 0 !important; box-shadow: 0 2px 8px rgba(0,0,0,0.06) !important; margin-top: -14px !important; position: relative !important; z-index: 4 !important; }
.mr-pcard__sold svg { color: var(--primary) !important; stroke: var(--primary) !important; }
.mr-pcard__sold span { font-size: 0.62rem !important; font-weight: 700 !important; color: var(--textMain) !important; }
.mr-pcard__body { padding: 0.6rem 0.9rem 0.5rem !important; text-align: center !important; border-bottom: 1px solid #F0F0F0 !important; }
.mr-pcard__brand { font-size: 0.48rem !important; font-weight: 700 !important; letter-spacing: 0.24em !important; color: var(--primary) !important; margin-bottom: 0.25rem !important; }
.mr-pcard__name { font-family: var(--font-body) !important; font-size: 0.85rem !important; font-weight: 700 !important; color: var(--textMain) !important; min-height: 0 !important; line-height: 1.3 !important; }
.mr-pcard__spec, .mr-pcard__trust, [class*="mr-pcard__trust"], [class*="mr-pcard__spec"] { display: none !important; }
.mr-pcard__foot { border-top: none !important; padding: 0.6rem 0.9rem 0.9rem !important; gap: 0.6rem !important; background: transparent !important; text-align: center !important; display: flex !important; flex-direction: column !important; align-items: center !important; }
.mr-pcard__price-block { display: flex; align-items: baseline; justify-content: center; gap: 8px; }
.mr-price-old { font-size: 0.72rem !important; color: #BBB !important; order: -1; }
.mr-price-now { font-size: 1.7rem !important; font-weight: 800 !important; color: var(--primary) !important; letter-spacing: -0.03em !important; line-height: 1 !important; }
.mr-price-now--single { color: var(--textMain) !important; font-size: 1.4rem !important; }
.mr-pcard__savings { font-size: 0.55rem !important; font-weight: 700 !important; color: var(--primary) !important; background: rgba(149,6,6,0.06) !important; border: 1px solid rgba(149,6,6,0.2) !important; padding: 3px 8px !important; border-radius: 0 !important; }
.mr-pcard__buy, button.mr-pcard__buy { background: var(--primary) !important; color: #FFF !important; border: none !important; border-radius: 0 !important; padding: 0.85rem 1rem !important; font-size: 0.62rem !important; font-weight: 700 !important; letter-spacing: 0.18em !important; width: 100% !important; }
.mr-pcard__buy:hover { background: var(--primary-dark) !important; }
.mr-pcard__scarcity--on { color: var(--primary) !important; background: rgba(149,6,6,0.04) !important; border-color: transparent !important; font-weight: 600 !important; font-size: 0.55rem !important; border-radius: 8px !important; }
.mr-scarcity-dot { background: var(--primary) !important; box-shadow: 0 0 0 2px rgba(149,6,6,0.15) !important; }
.mr-pcard__tag-oos { position: absolute; top: 12px; left: 12px; z-index: 10; background: var(--primary); color: #FFF; font-size: 0.6rem; font-weight: 800; letter-spacing: 0.16em; text-transform: uppercase; padding: 6px 12px; line-height: 1; }
.mr-pcard--oos .mr-pcard__img img { filter: grayscale(100%) !important; opacity: 0.7 !important; }
.mr-pcard--oos:hover .mr-pcard__img img { transform: none !important; }
.mr-pcard--oos:hover { transform: none !important; box-shadow: 0 2px 12px rgba(0,0,0,0.06) !important; }
.split-category-cta, .fcol-tile__cta, .sbb-cta,
.fcol-tile--men .fcol-tile__cta, .fcol-tile--women .fcol-tile__cta,
.fcol-tile--jewelry .fcol-tile__cta, .fcol-tile--offers .fcol-tile__cta {
background: var(--primary) !important; color: #FFF !important;
}
#objections-section { background: var(--ivory) !important; border-top: none !important; }
#objections-section h2 { font-family: var(--font-editorial) !important; text-transform: uppercase !important; font-weight: 600 !important; letter-spacing: 0.08em !important; font-size: clamp(1.4rem, 2.8vw, 2.2rem) !important; }
.faq-question span { font-family: var(--font-body) !important; font-size: 14px !important; font-weight: 700 !important; font-style: normal !important; color: var(--textMain) !important; }
.faq-item { border-color: #E0E0E0 !important; }
.faq-icon { color: var(--textMuted) !important; transition: transform 0.3s var(--ease-out) !important; }
.faq-item[open] .faq-icon { color: var(--primary) !important; transform: rotate(180deg) !important; }
.obj-layout { display: grid; grid-template-columns: 1fr 1.2fr; gap: 40px; align-items: start; }
.obj-image { position: sticky; top: 100px; border-radius: 4px; overflow: hidden; }
.obj-image img { width: 100%; height: auto; display: block; min-height: 400px; object-fit: cover; }
@media (max-width: 768px) {
.obj-layout { grid-template-columns: 1fr; gap: 24px; }
.obj-image { position: static; max-height: 300px; overflow: hidden; }
.obj-image img { min-height: 250px; }
}
.ig-rows { display: flex; flex-direction: column; gap: 6px; overflow: hidden; }
.ig-row { overflow: hidden; }
.ig-row__track { display: flex; gap: 6px; width: max-content; }
.ig-row--left .ig-row__track { animation: igLeft 50s linear infinite; }
.ig-row--right .ig-row__track { animation: igRight 45s linear infinite; }
.ig-row--left-slow .ig-row__track { animation: igLeft 60s linear infinite; }
.ig-row:hover .ig-row__track { animation-play-state: paused; }
@keyframes igLeft { 0% { transform: translateX(0); } 100% { transform: translateX(-33.33%); } }
@keyframes igRight { 0% { transform: translateX(-33.33%); } 100% { transform: translateX(0); } }
.ig-row__item { flex-shrink: 0; width: 280px; aspect-ratio: 1; display: block; overflow: hidden; position: relative; }
.ig-row__item img, .ig-row__item video { width: 100%; height: 100%; object-fit: cover; transition: transform 0.4s ease; }
.ig-row__item:hover img, .ig-row__item:hover video { transform: scale(1.06); }
#ig-section h2 { font-family: var(--font-editorial) !important; text-transform: none !important; font-weight: 600 !important; }
#ig-follow-btn { border-radius: 0 !important; }
@media (max-width: 768px) {
.ig-row__item { width: 150px; }
.ig-rows { gap: 4px; }
.ig-row__track { gap: 4px; }
.ig-row--left .ig-row__track { animation-duration: 35s; }
.ig-row--right .ig-row__track { animation-duration: 30s; }
.ig-row--left-slow .ig-row__track { animation-duration: 40s; }
}
@media (max-width: 480px) { .ig-row__item { width: 120px; } }
footer, footer.bg-footerBg, footer[style*="background"] { background-color: #950606 !important; background: #950606 !important; border-top: none !important; }
footer.bg-footerBg, footer.bg-footerBg *, footer.text-white, footer.text-white *, footer p, footer span, footer li, footer a, footer h3, footer h4, footer button { color: #FFF !important; }
footer #footer-logo-text { color: #FFF !important; }
footer #footer-logo-text span { color: rgba(255,255,255,0.7) !important; }
footer #footer-logo-img { filter: brightness(0) invert(1) !important; }
footer h4 { color: rgba(255,255,255,0.85) !important; }
footer .footer-info-link { color: rgba(255,255,255,0.85) !important; }
footer .footer-info-link:hover { color: #FFF !important; }
footer .footer-social-link { background: rgba(255,255,255,0.15) !important; border: none !important; opacity: 1 !important; }
footer .footer-social-link svg { color: #FFF !important; fill: #FFF !important; }
footer .footer-social-link:hover { background: rgba(255,255,255,0.3) !important; }
footer .border-t, footer [class*="border-white"] { border-color: rgba(255,255,255,0.15) !important; }
footer .border-t p, footer .border-t span { color: rgba(255,255,255,0.5) !important; }
.mobile-menu-item { font-family: var(--font-editorial) !important; font-size: 1.25rem !important; font-weight: 600 !important; text-transform: none !important; }
.welcome-modal-card { background: var(--primary) !important; border-radius: 12px !important; max-width: 420px !important; padding: 44px 32px 32px !important; }
.welcome-modal-card::before { border-color: rgba(255,255,255,0.18) !important; border-radius: 6px !important; inset: 12px !important; }
.welcome-modal-kicker { font-size: 10px !important; letter-spacing: 0.22em !important; color: rgba(255,255,255,0.85) !important; }
.welcome-modal-hero-currency { font-family: var(--font-body) !important; font-weight: 300 !important; font-size: 2rem !important; color: rgba(255,255,255,0.8) !important; margin-top: 12px !important; }
.welcome-modal-hero-amount { font-family: var(--font-body) !important; font-weight: 800 !important; font-size: 5.5rem !important; color: #FFF !important; letter-spacing: -0.04em !important; }
.welcome-modal-btn-primary { background: #F5EDE0 !important; color: var(--primary) !important; border-radius: 6px !important; padding: 16px 20px !important; font-size: 0.78rem !important; }
.welcome-modal-btn-primary:hover { background: #EDE4D5 !important; }
.welcome-modal-btn-ghost { font-style: italic !important; text-decoration: underline !important; color: rgba(255,255,255,0.5) !important; }
.welcome-modal-close { top: 16px !important; right: 16px !important; width: 30px !important; height: 30px !important; }

#cartDrawerContent h2 { font-family: var(--font-editorial) !important; font-weight: 600 !important; text-transform: none !important; }
#auth-logo-text { font-weight: 300 !important; letter-spacing: 0.2em !important; }
#footer-logo-text { font-weight: 300 !important; letter-spacing: 0.25em !important; }
.btn-primary { border-radius: 0 !important; }
.store-chip.is-active { border-color: var(--textMain) !important; background: var(--textMain) !important; color: #FFF !important; }
#checkoutModalContent h2, #recently-viewed h2, #reviewModal h2 { font-family: var(--font-editorial) !important; text-transform: none !important; font-weight: 600 !important; }
.fcol-tile::after, .fcol-tile--men::after, .fcol-tile--women::after, .fcol-tile--jewelry::after, .fcol-tile--offers::after {
background: linear-gradient(180deg, transparent 40%, rgba(0,0,0,0.45) 100%) !important;
}
.float-btn-whatsapp { box-shadow: 0 4px 16px rgba(0,0,0,0.12) !important; }
.toast { border-radius: 4px !important; box-shadow: 0 4px 16px rgba(0,0,0,0.08) !important; }
.fomo-toast { border-radius: 4px !important; }
@media (max-width: 768px) {
.reveal {
transform: none;
transition: opacity 0.4s var(--ease-out);
}
.reveal.is-visible,
.reveal.active {
transform: none;
}
}
@media (prefers-reduced-motion: reduce) {
*, *::before, *::after { animation-duration: 0s !important; transition-duration: 0s !important; }
.reveal { opacity: 1 !important; transform: none !important; }
}
.ck-topbar {
background: #fff; border-bottom: 1px solid var(--borderGray);
position: sticky; top: 0; z-index: 10;
}
.ck-topbar__inner {
max-width: 1100px; margin: 0 auto; padding: 12px 20px;
display: flex; align-items: center; justify-content: space-between; gap: 12px;
}
.ck-topbar__back {
display: flex; align-items: center; gap: 6px;
font-size: 13px; font-weight: 500; color: var(--textMuted);
transition: color .2s;
}
.ck-topbar__back:hover { color: var(--primary); }
.ck-topbar__brand {
font-family: 'Manrope', sans-serif; font-weight: 800; font-size: 18px;
letter-spacing: -0.02em; color: var(--textMain);
}
.ck-topbar__brand span { color: var(--primary); }
.ck-topbar__secure {
display: flex; align-items: center; gap: 5px;
font-size: 11px; font-weight: 600; color: var(--textMuted);
text-transform: uppercase; letter-spacing: 0.06em;
}
.ck-progress { background: #fff; border-bottom: 1px solid var(--borderGray); padding: 16px 20px; }
.ck-progress__inner {
max-width: 420px; margin: 0 auto;
display: flex; align-items: center; justify-content: center; gap: 0;
}
.ck-step {
display: flex; align-items: center; gap: 7px;
opacity: 0.4; transition: opacity .3s;
}
.ck-step.is-active, .ck-step.is-done { opacity: 1; }
.ck-step__num {
width: 28px; height: 28px; border-radius: 50%;
border: 2px solid var(--borderGray);
display: flex; align-items: center; justify-content: center;
font-size: 12px; font-weight: 700; color: var(--textMuted);
transition: all .3s;
}
.ck-step.is-active .ck-step__num {
background: var(--primary); border-color: var(--primary); color: #fff;
}
.ck-step.is-done .ck-step__num {
background: var(--primary); border-color: var(--primary); color: #fff;
}
.ck-step__label { font-size: 12px; font-weight: 600; color: var(--textMain); letter-spacing: 0.03em; }
.ck-step__line {
width: 40px; height: 2px; background: var(--borderGray); margin: 0 10px;
border-radius: 2px; overflow: hidden;
}
.ck-step__line-fill {
height: 100%; width: 0; background: var(--primary);
transition: width .4s ease;
}
.ck-layout {
max-width: 1100px; margin: 0 auto; padding: 28px 20px 40px;
display: grid; grid-template-columns: 1fr 380px; gap: 36px;
align-items: start;
}
@media (max-width: 899px) {
.ck-layout { grid-template-columns: 1fr; gap: 24px; padding: 20px 16px 32px; }
.ck-summary-col { order: -1; }
}
.ck-form-col { min-width: 0; }
.ck-panel { display: none; }
.ck-panel.is-active { display: block; animation: ckFadeIn .35s ease; }
@keyframes ckFadeIn { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }

.ck-section-head {
display: flex; align-items: center; gap: 12px; margin-bottom: 20px;
}
.ck-section-num {
width: 30px; height: 30px; border-radius: 6px;
background: var(--primary); color: #fff;
display: flex; align-items: center; justify-content: center;
font-size: 13px; font-weight: 700; flex-shrink: 0;
}
.ck-section-title {
font-size: 18px; font-weight: 700; color: var(--textMain);
text-transform: uppercase; letter-spacing: 0.06em;
}
.ck-fields { display: flex; flex-direction: column; gap: 16px; }
.ck-row-2 { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
@media (max-width: 500px) { .ck-row-2 { grid-template-columns: 1fr; } }
.ck-field { display: flex; flex-direction: column; }
.ck-label {
font-size: 11px; font-weight: 700; text-transform: uppercase;
letter-spacing: 0.08em; color: var(--textMain); margin-bottom: 6px;
}
.ck-optional { font-weight: 400; color: var(--textMuted); text-transform: none; letter-spacing: 0; }
.ck-input {
width: 100%; border: 1px solid var(--borderGray); border-radius: 4px;
padding: 12px 14px; font-size: 14px; color: var(--textMain);
background: #fff; transition: border-color .2s, box-shadow .2s;
min-height: 46px;
}
.ck-input:focus {
outline: none; border-color: var(--primary);
box-shadow: 0 0 0 3px rgba(149,6,6,0.08);
}
.ck-input::placeholder { color: #aaa; }
.ck-select {
appearance: none; cursor: pointer;
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236F6F6F' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
background-repeat: no-repeat; background-position: right 14px center;
padding-right: 36px;
}
.ck-input-prefix {
display: flex; align-items: stretch; border: 1px solid var(--borderGray);
border-radius: 4px; overflow: hidden; transition: border-color .2s, box-shadow .2s;
}
.ck-input-prefix:focus-within {
border-color: var(--primary); box-shadow: 0 0 0 3px rgba(149,6,6,0.08);
}
.ck-prefix {
display: flex; align-items: center; padding: 0 12px;
background: var(--bgLight); font-size: 13px; font-weight: 600;
color: var(--textMuted); border-right: 1px solid var(--borderGray);
white-space: nowrap; flex-shrink: 0;
}
.ck-input--prefix {
border: none; border-radius: 0; min-height: 46px;
}
.ck-input--prefix:focus { box-shadow: none; }
.checkout-error {
font-size: 11px; color: var(--primary); margin-top: 4px; font-weight: 500;
}
.ck-shipping-options { display: flex; flex-direction: column; gap: 10px; margin-bottom: 20px; }
.ck-ship-option {
display: flex; align-items: center; gap: 14px; padding: 16px 18px;
border: 2px solid var(--borderGray); border-radius: 6px;
cursor: pointer; transition: all .2s; background: #fff;
}
.ck-ship-option:hover { border-color: #ccc; }
.ck-ship-option.is-selected { border-color: var(--primary); background: #fef8f8; }
.ck-ship-radio {
width: 20px; height: 20px; border-radius: 50%;
border: 2px solid var(--borderGray); flex-shrink: 0;
display: flex; align-items: center; justify-content: center;
transition: border-color .2s;
}
.ck-ship-option.is-selected .ck-ship-radio { border-color: var(--primary); }
.ck-ship-radio__dot {
width: 10px; height: 10px; border-radius: 50%;
background: transparent; transition: background .2s;
}
.ck-ship-option.is-selected .ck-ship-radio__dot { background: var(--primary); }
.ck-ship-option__body { flex: 1; }
.ck-ship-option__body strong { display: block; font-size: 14px; font-weight: 600; color: var(--textMain); }
.ck-ship-time { font-size: 12px; color: var(--textMuted); }
.ck-ship-price { font-size: 14px; font-weight: 700; color: var(--textMain); }
.ck-btn-next {
display: flex; align-items: center; justify-content: center; gap: 8px;
width: 100%; margin-top: 24px; padding: 15px 24px;
background: var(--primary); color: #fff; border-radius: 4px;
font-size: 14px; font-weight: 700; text-transform: uppercase;
letter-spacing: 0.08em; transition: background .2s;
}
.ck-btn-next:hover { background: var(--primary-dark); }
.ck-nav-row { display: flex; align-items: center; gap: 12px; margin-top: 20px; }
.ck-btn-back {
display: flex; align-items: center; gap: 6px;
font-size: 13px; font-weight: 500; color: var(--textMuted);
transition: color .2s; padding: 10px 0;
}
.ck-btn-back:hover { color: var(--primary); }
.ck-nav-row .ck-btn-next { flex: 1; margin-top: 0; }
.ck-btn-confirm {
display: flex; align-items: center; justify-content: center; gap: 10px;
width: 100%; padding: 16px 24px; margin-top: 20px;
background: #25D366; color: #fff; border-radius: 4px;
font-size: 15px; font-weight: 700; text-transform: uppercase;
letter-spacing: 0.06em; transition: background .2s;
box-shadow: 0 4px 14px rgba(37,211,102,0.3);
}
.ck-btn-confirm:hover { background: #1fb855; }
.ck-confirm-summary {
background: #fff; border: 1px solid var(--borderGray); border-radius: 6px;
padding: 18px 20px; font-size: 13px; color: var(--textMain);
}
.ck-confirm-summary .ck-cs-row {
display: flex; justify-content: space-between; padding: 6px 0;
border-bottom: 1px solid #f0f0f0;
}
.ck-confirm-summary .ck-cs-row:last-child { border-bottom: none; }
.ck-confirm-summary .ck-cs-label { color: var(--textMuted); font-size: 11px; text-transform: uppercase; letter-spacing: 0.06em; font-weight: 600; }
.ck-confirm-summary .ck-cs-value { font-weight: 600; text-align: right; }
.ck-trust-footer {
display: flex; align-items: flex-start; gap: 8px; margin-top: 16px;
font-size: 12px; color: var(--textMuted); line-height: 1.4;
}
.ck-trust-footer i { flex-shrink: 0; color: var(--primary); margin-top: 1px; }
.ck-summary-col { position: sticky; top: 80px; }
.ck-summary-card {
background: #fff; border: 1px solid var(--borderGray); border-radius: 8px;
padding: 24px;
}
.ck-summary-title {
font-size: 18px; font-weight: 700; color: var(--textMain); margin-bottom: 16px;
font-family: 'Manrope', sans-serif;
}
.ck-summary-items { display: flex; flex-direction: column; gap: 14px; padding-bottom: 16px; border-bottom: 1px solid #f0f0f0; margin-bottom: 14px; }
.ck-sum-item { display: flex; align-items: center; gap: 12px; }
.ck-sum-item__img {
width: 56px; height: 56px; background: var(--bgLight); border: 1px solid var(--borderGray);
border-radius: 6px; overflow: hidden; flex-shrink: 0; position: relative;
}
.ck-sum-item__img img { width: 100%; height: 100%; object-fit: contain; padding: 4px; }
.ck-sum-item__qty {
position: absolute; top: -6px; right: -6px;
width: 20px; height: 20px; border-radius: 50%;
background: var(--textMain); color: #fff;
font-size: 10px; font-weight: 700; display: flex;
align-items: center; justify-content: center;
}
.ck-sum-item__info { flex: 1; min-width: 0; }
.ck-sum-item__name { font-size: 13px; font-weight: 600; color: var(--textMain); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.ck-sum-item__brand { font-size: 11px; color: var(--textMuted); }
.ck-sum-item__price { font-size: 14px; font-weight: 700; color: var(--textMain); white-space: nowrap; flex-shrink: 0; }
.ck-coupon-row {
display: flex; gap: 8px; padding-bottom: 14px;
border-bottom: 1px solid #f0f0f0; margin-bottom: 14px;
}
.ck-coupon-input {
flex: 1; border: 1px solid var(--borderGray); border-radius: 4px;
padding: 10px 12px; font-size: 13px; text-transform: uppercase;
letter-spacing: 0.05em; min-height: 42px;
}
.ck-coupon-input:focus { outline: none; border-color: var(--primary); }
.ck-coupon-btn {
background: var(--primary); color: #fff; padding: 10px 16px;
border-radius: 4px; font-size: 12px; font-weight: 700;
text-transform: uppercase; letter-spacing: 0.08em;
transition: background .2s; white-space: nowrap;
}
.ck-coupon-btn:hover { background: var(--primary-dark); }
.ck-coupon-applied {
display: flex; align-items: center; justify-content: space-between;
background: #fef8f8; border: 1px solid var(--primary);
border-radius: 4px; padding: 10px 14px; margin-bottom: 14px;
font-size: 12px; font-weight: 600; color: var(--primary);
}
.ck-coupon-remove {
font-size: 18px; color: var(--textMuted); transition: color .2s; line-height: 1;
}
.ck-coupon-remove:hover { color: var(--primary); }
.ck-totals { display: flex; flex-direction: column; gap: 10px; }
.ck-totals__row {
display: flex; justify-content: space-between; font-size: 13px; color: var(--textMuted);
}
.ck-totals__row span:last-child { font-weight: 600; color: var(--textMain); }
.ck-free { color: var(--primary) !important; font-weight: 700 !important; }
.ck-totals__total {
display: flex; justify-content: space-between;
font-size: 16px; font-weight: 800; color: var(--textMain);
padding-top: 12px; margin-top: 4px; border-top: 2px solid var(--textMain);
}
.ck-trust-box {
display: flex; align-items: flex-start; gap: 10px;
background: var(--bgLight); border-radius: 6px;
padding: 14px 16px; margin-top: 18px;
}
.ck-trust-box i { flex-shrink: 0; color: var(--primary); margin-top: 2px; }
.ck-trust-box strong { display: block; font-size: 12px; font-weight: 700; color: var(--textMain); margin-bottom: 2px; }
.ck-trust-box p { font-size: 11px; color: var(--textMuted); line-height: 1.4; margin: 0; }
.ck-privacy-note {
text-align: center; font-size: 11px; color: var(--textMuted);
padding: 16px 20px 32px; max-width: 1100px; margin: 0 auto;
}
@media (max-width: 899px) {
.ck-summary-col { position: static; }
.ck-summary-card { border-radius: 6px; }
.ck-topbar__back span { display: none; }
.ck-step__label { font-size: 11px; }
.ck-step__line { width: 28px; margin: 0 6px; }
.ck-section-title { font-size: 16px; }
}
/* ============================================================
   INSTAGRAM REELS — Carrusel horizontal tipo Stories/Reels
   Formato 9:16, auto-scroll + swipe táctil, play al hover/tap
   ============================================================ */
.ig-reels-section {
    padding: 3rem 0 3.5rem;
    background: #fff;
    position: relative;
    overflow: hidden;
}
.ig-reels-header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    margin-bottom: 1.5rem;
    gap: 1rem;
}
.ig-reels-eyebrow {
    font-family: 'Manrope', sans-serif;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    color: rgba(0,0,0,0.45);
    display: flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 6px;
}
.ig-reels-eyebrow svg { stroke: rgba(0,0,0,0.45); }
.ig-reels-title {
    font-family: 'Manrope', sans-serif;
    font-size: clamp(1.4rem, 3vw, 2rem);
    font-weight: 300;
    color: var(--primary);
    text-transform: uppercase;
    letter-spacing: 0.01em;
    line-height: 1.1;
}
.ig-reels-follow-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: transparent;
    border: 1px solid rgba(0,0,0,0.2);
    color: #111;
    font-family: 'Manrope', sans-serif;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    padding: 10px 20px;
    cursor: pointer;
    transition: background 0.2s, border-color 0.2s;
    white-space: nowrap;
    flex-shrink: 0;
    text-decoration: none;
}
.ig-reels-follow-btn:hover {
    background: rgba(0,0,0,0.05);
    border-color: rgba(0,0,0,0.4);
}
.ig-reels-follow-btn svg { stroke: #111; flex-shrink: 0; }

/* Carousel container */
.ig-reels-carousel-wrap {
    position: relative;
    overflow: hidden;
    margin: 0 -16px;
    padding: 0 16px;
}
@media (min-width: 768px) {
    .ig-reels-carousel-wrap { margin: 0 -24px; padding: 0 24px; }
}

.ig-reels-track {
    display: flex;
    gap: 12px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    scroll-padding-left: 16px;
    padding-bottom: 4px;
    cursor: grab;
    user-select: none;
    -webkit-user-select: none;
}
.ig-reels-track::-webkit-scrollbar { display: none; }
.ig-reels-track:active { cursor: grabbing; }
@media (min-width: 768px) {
    .ig-reels-track { gap: 14px; scroll-padding-left: 24px; }
}

/* Individual Reel card */
.ig-reel {
    flex: 0 0 auto;
    width: 180px;
    aspect-ratio: 9 / 16;
    border-radius: 14px;
    overflow: hidden;
    position: relative;
    background: #111;
    scroll-snap-align: start;
    cursor: pointer;
    text-decoration: none;
    display: block;
}
@media (min-width: 640px) { .ig-reel { width: 200px; } }
@media (min-width: 1024px) { .ig-reel { width: 220px; } }

.ig-reel video,
.ig-reel img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.5s ease;
}
.ig-reel:hover video,
.ig-reel:hover img { transform: scale(1.05); }

/* Gradient overlay at bottom */
.ig-reel::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(
        to top,
        rgba(0,0,0,0.7) 0%,
        rgba(0,0,0,0.15) 35%,
        transparent 55%
    );
    pointer-events: none;
    border-radius: 14px;
}

/* Play icon overlay */
.ig-reel-play {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) scale(1);
    width: 44px;
    height: 44px;
    background: rgba(255,255,255,0.2);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 2;
    transition: opacity 0.3s, transform 0.3s;
    pointer-events: none;
}
.ig-reel-play svg {
    fill: #fff;
    stroke: none;
    width: 18px;
    height: 18px;
    margin-left: 3px;
}
.ig-reel.is-playing .ig-reel-play {
    opacity: 0;
    transform: translate(-50%, -50%) scale(0.8);
}

/* Bottom info inside the reel */
.ig-reel-info {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 14px;
    z-index: 3;
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.ig-reel-caption {
    font-family: 'Manrope', sans-serif;
    font-size: 11px;
    font-weight: 600;
    color: #fff;
    line-height: 1.35;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.ig-reel-handle {
    font-family: 'Manrope', sans-serif;
    font-size: 9px;
    font-weight: 500;
    color: rgba(255,255,255,0.55);
    letter-spacing: 0.04em;
}

/* Reel type badge (Reels icon) */
.ig-reel-badge {
    position: absolute;
    top: 10px;
    right: 10px;
    z-index: 3;
    background: rgba(0,0,0,0.35);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    border-radius: 6px;
    padding: 4px 7px;
    display: flex;
    align-items: center;
    gap: 4px;
}
.ig-reel-badge svg {
    width: 12px;
    height: 12px;
    stroke: #fff;
    fill: none;
}
.ig-reel-badge span {
    font-family: 'Manrope', sans-serif;
    font-size: 9px;
    font-weight: 700;
    color: #fff;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

/* Auto-scroll (driven by JS scrollLeft) */
.ig-reels-track--auto {
    scroll-snap-type: none;
    scroll-behavior: auto;
}

/* ════════════════════════════════════════════
   LOOKBOOK — Nuestros Clientes
   ════════════════════════════════════════════ */
.lb-section {
  padding: 5rem 0;
  background: #fafafa;
  overflow: hidden;
}
.lb-layout {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 24px;
  display: flex;
  gap: 4rem;
  align-items: center;
}
.lb-gallery {
  display: flex;
  gap: 12px;
  flex: 0 0 50%;
  max-width: 50%;
  height: 600px;
  overflow: hidden;
}
.lb-col {
  flex: 1;
  overflow: hidden;
  position: relative;
}
.lb-track {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.lb-track--down {
  animation: lb-scroll-down 25s linear infinite;
}
.lb-track--up {
  animation: lb-scroll-up 25s linear infinite;
}
.lb-paused .lb-track--down,
.lb-paused .lb-track--up {
  animation-play-state: paused;
}
@keyframes lb-scroll-down {
  0% { transform: translateY(0); }
  100% { transform: translateY(-50%); }
}
@keyframes lb-scroll-up {
  0% { transform: translateY(-50%); }
  100% { transform: translateY(0); }
}
.lb-photo {
  border-radius: 6px;
  overflow: hidden;
  background: #e8e8e8;
}
.lb-photo img {
  width: 100%;
  display: block;
  aspect-ratio: 3 / 4;
  object-fit: cover;
  transition: transform 0.5s ease;
}
.lb-photo:hover img {
  transform: scale(1.04);
}
.lb-text {
  flex: 1;
  padding: 2rem 0;
}
.lb-eyebrow {
  font-family: 'Manrope', sans-serif;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  color: var(--primary, #950606);
  margin: 0 0 16px;
}
.lb-title {
  font-family: 'Manrope', -apple-system, sans-serif;
  font-size: 36px;
  font-weight: 700;
  color: var(--textMain, #1A1A1A);
  margin: 0 0 12px;
  line-height: 1.15;
  letter-spacing: -0.02em;
}
.lb-subtitle {
  font-family: 'Manrope', sans-serif;
  font-size: 14px;
  font-weight: 600;
  color: var(--textMuted, #6F6F6F);
  margin: 0 0 20px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
.lb-desc {
  font-family: 'Manrope', sans-serif;
  font-size: 15px;
  line-height: 1.7;
  color: var(--textMuted, #6F6F6F);
  margin: 0 0 32px;
  max-width: 420px;
}
.lb-cta {
  display: inline-block;
  padding: 14px 36px;
  border: none;
  border-radius: 0;
  font-family: 'Manrope', sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #fff;
  background: var(--primary, #950606);
  text-decoration: none;
  cursor: pointer;
  transition: background 0.2s, color 0.2s;
}
.lb-cta:hover {
  background: #7a0505;
  color: #fff;
}

/* Provincia — layout invertido (texto izquierda, galería derecha) */
.lb-section--prov {
  background: #fff;
}
.lb-layout--reverse {
  flex-direction: row-reverse;
}

/* Mobile */
@media (max-width: 768px) {
  .lb-section { padding: 3rem 0; }
  .lb-layout {
    flex-direction: column;
    gap: 2.5rem;
    padding: 0 16px;
  }
  .lb-gallery {
    flex: none;
    max-width: 100%;
    width: 100%;
    height: 400px;
  }
  .lb-text {
    text-align: center;
    padding: 0;
  }
  .lb-title { font-size: 28px; }
  .lb-desc {
    margin-left: auto;
    margin-right: auto;
    font-size: 14px;
  }
  .lb-cta { width: 100%; text-align: center; box-sizing: border-box; }
  .lb-layout--reverse { flex-direction: column-reverse; }
}

/* ════════════════════════════════════════════
   FOCUS OUTLINE — solo teclado, no en clicks
   ════════════════════════════════════════════ */
button {
  border: none;
  background: none;
  appearance: none;
  -webkit-appearance: none;
  font-family: inherit;
}
button:focus,
a:focus,
.qty-selector button:focus,
.qty-selector:focus,
[onclick]:focus {
  outline: none;
}
button:focus-visible,
a:focus-visible,
.qty-selector button:focus-visible,
[onclick]:focus-visible {
  outline: 2px solid var(--primary);
  outline-offset: 2px;
}

/* ════════════════════════════════════════════
   LIGHTBOX — estilos propios (no depender de Tailwind CDN)
   ════════════════════════════════════════════ */
#lightbox {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.92);
  z-index: 125;
  align-items: center;
  justify-content: center;
  user-select: none;
  -webkit-user-select: none;
}
#lightbox:not(.hidden) {
  display: flex;
}
#lightbox.hidden {
  display: none !important;
}

/* Backdrops de modales — definidos localmente para no depender del CDN */
#auth-modal      { background: rgba(0, 0, 0, 0.80); }
#sizeGuideModal  { background: rgba(0, 0, 0, 0.70); }
#reviewModal     { background: rgba(0, 0, 0, 0.70); }
#quickviewModal  { background: rgba(0, 0, 0, 0.60); }
#cartDrawer      { background: rgba(0, 0, 0, 0.50); }
#mobileMenu      { background: rgba(0, 0, 0, 0.50); }

/* Contenedor e imagen del lightbox */
#lightbox > div:last-child {
  width: 100%;
  height: 100%;
  overflow: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
}
@media (min-width: 768px) {
  #lightbox > div:last-child { padding: 48px; }
}
#lightbox-img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  cursor: zoom-in;
}

/* Paneles internos de drawers — fondo sólido sin depender del CDN */
#cartDrawerContent {
  position: absolute;
  right: 0;
  top: 0;
  height: 100%;
  width: 100%;
  background: #FFFFFF;
  display: flex;
  flex-direction: column;
  box-shadow: -8px 0 32px rgba(0, 0, 0, 0.18);
}
@media (min-width: 640px) {
  #cartDrawerContent { width: 380px; }
}
#mobileMenuContent {
  background: #FFFFFF;
  box-shadow: 8px 0 32px rgba(0, 0, 0, 0.18);
}
