:root {
    --primary: #0F172A;
    --secondary: #1E293B;
    --accent: #047857;
    --accent-hover: #065F46;
    --success: #22C55E;
    --warning: #F59E0B;
    --danger: #EF4444;
    --bg: #F8FAFC;
    --text: #0F172A;
    --muted: #64748B;
    --card-bg: #FFFFFF;
    --border: #E2E8F0;
    --radius: 16px;
    --shadow-sm: 0 1px 3px rgba(15,23,42,0.06);
    --shadow-md: 0 4px 20px rgba(15,23,42,0.08);
    --shadow-lg: 0 12px 40px rgba(15,23,42,0.12);
    --shadow-xl: 0 25px 60px rgba(15,23,42,0.15);
}
* { box-sizing: border-box; }
html, body { max-width: 100%; overflow-x: hidden; }
body { font-family: 'Inter', sans-serif; background: var(--bg); color: var(--text); overflow-x: hidden; }
body.menu-open { overflow: hidden; }
h1,h2,h3,h4,h5,h6 { font-family: 'Poppins', sans-serif; font-weight: 700; }
a { text-decoration: none; color: inherit; transition: all .3s ease; }
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
[tabindex]:focus-visible {
    outline: 3px solid #F59E0B;
    outline-offset: 3px;
    box-shadow: 0 0 0 5px rgba(245,158,11,.18);
}
img { max-width: 100%; }
.navbar-custom { position: sticky; top: 0; background: rgba(255,255,255,.9); backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); border-bottom: 1px solid var(--border); padding: .75rem 0; z-index: 1050; }
.navbar-custom.scrolled { box-shadow: var(--shadow-md); }
.navbar-brand-text { font-family: 'Poppins', sans-serif; font-weight: 800; font-size: 1.5rem; color: var(--primary); }
.navbar-brand-text span { color: var(--accent); }
.site-logo { max-height: 48px; width: auto; display: block; }
.brand-mark { width: 46px; height: 46px; border-radius: 12px; background: var(--primary); color: #fff; display: inline-flex; align-items: center; justify-content: center; font-size: 1.2rem; }
.nav-link-custom { font-weight: 500; color: var(--secondary) !important; margin: 0 .25rem; padding: .5rem 1rem !important; border-radius: 10px; font-size: .95rem; }
.nav-link-custom:hover,.nav-link-custom.active { color: var(--accent) !important; background: rgba(16,185,129,.08); }
.mobile-nav-actions { display: none; align-items: center; gap: .55rem; margin-left: auto; }
.mobile-cart-btn { min-height: 42px; padding: .5rem .75rem !important; display: inline-flex; align-items: center; gap: .45rem; border-radius: 12px; }
.mobile-menu-overlay { position: fixed; inset: 0; background: rgba(15,23,42,.48); z-index: 1998; opacity: 0; pointer-events: none; transition: opacity .25s ease; }
.mobile-menu-panel { position: fixed; top: 0; right: 0; width: min(310px,86vw); height: 100vh; background: #fff; z-index: 1999; transform: translateX(105%); transition: transform .3s ease; box-shadow: -18px 0 45px rgba(15,23,42,.18); padding: .85rem; display: flex; flex-direction: column; gap: .75rem; }
.mobile-menu-panel.open { transform: translateX(0); }
.mobile-menu-overlay.open { opacity: 1; pointer-events: auto; }
.mobile-menu-head { display: flex; align-items: center; justify-content: space-between; gap: .75rem; padding-bottom: .65rem; border-bottom: 1px solid var(--border); }
.mobile-menu-brand img { max-height: 40px; max-width: 150px; object-fit: contain; }
.mobile-menu-close { width: 36px; height: 36px; border-radius: 10px; border: 1px solid var(--border); background: #F8FAFC; color: var(--primary); display: flex; align-items: center; justify-content: center; }
.mobile-menu-links { display: grid; gap: .38rem; overflow-y: auto; padding-right: .1rem; }
.mobile-menu-links a { display: flex; align-items: center; gap: .65rem; padding: .4rem .5rem; border-radius: 11px; color: var(--primary); font-weight: 800; font-size: .92rem; background: #fff; border: 1px solid transparent; }
.mobile-menu-links a i { width: 29px; height: 29px; border-radius: 9px; background: rgba(16,185,129,.1); color: var(--accent); display: inline-flex; align-items: center; justify-content: center; font-size: .82rem; }
.mobile-menu-links a:hover,.mobile-menu-links a.active { background: #F0FDF4; border-color: rgba(16,185,129,.18); color: var(--accent); }
.mobile-menu-card { margin-top: auto; background: linear-gradient(135deg,#0F172A,#1E293B); color: #fff; border-radius: 15px; padding: .8rem; display: grid; gap: .65rem; box-shadow: var(--shadow-md); }
.mobile-menu-card strong { display: block; font-family: 'Poppins'; font-size: .92rem; margin-bottom: .1rem; }
.mobile-menu-card span { display: block; color: rgba(255,255,255,.72); font-size: .75rem; line-height: 1.4; }
.mobile-menu-cart { display: flex; align-items: center; justify-content: center; gap: .48rem; background: var(--accent); color: #fff; border-radius: 11px; min-height: 38px; font-size: .86rem; font-weight: 900; }
.mobile-menu-cart:hover { background: var(--accent-hover); color: #fff; }
.mobile-menu-cart .cart-count-badge { background: #fff; color: var(--primary); min-width: 24px; min-height: 24px; border-radius: 999px; display: inline-flex; align-items: center; justify-content: center; font-size: .78rem; }
.btn-nav-cta,.btn-primary-custom { background: var(--accent); color: #fff !important; border: 0; border-radius: 12px; font-weight: 600; box-shadow: 0 4px 15px rgba(16,185,129,.3); }
.btn-nav-cta { padding: .55rem 1.25rem !important; font-size: .9rem; }
.btn-primary-custom { padding: .85rem 2rem; display: inline-flex; align-items: center; gap: 8px; }
.btn-nav-cta:hover,.btn-primary-custom:hover { background: var(--accent-hover); transform: translateY(-1px); color: #fff !important; }
.btn-outline-custom { background: transparent; color: var(--primary); border: 2px solid var(--border); padding: .8rem 2rem; border-radius: 14px; font-weight: 600; display: inline-flex; align-items: center; gap: 8px; }
.btn-outline-custom:hover { border-color: var(--accent); color: var(--accent); background: rgba(16,185,129,.05); }
.offer-banner { background: linear-gradient(135deg,var(--primary),var(--secondary)); color: #fff; text-align: center; padding: .6rem 1rem; font-size: .85rem; font-weight: 500; position: relative; overflow: hidden; }
.countdown-badge { display: inline-flex; align-items: center; gap: 4px; background: #DC2626; padding: 2px 10px; border-radius: 6px; font-weight: 700; margin-left: 8px; font-size: .8rem; }
.toast-stack { position: fixed; right: 20px; top: 92px; z-index: 3000; display: grid; gap: .75rem; width: min(360px,calc(100vw - 32px)); pointer-events: none; }
.mini-toast { display: flex; align-items: center; gap: .75rem; background: #fff; border: 1px solid var(--border); border-left: 4px solid var(--accent); border-radius: 14px; box-shadow: var(--shadow-lg); padding: .85rem 1rem; color: var(--primary); font-weight: 700; font-size: .9rem; opacity: 0; transform: translateX(18px); transition: all .25s ease; pointer-events: auto; }
.mini-toast.show { opacity: 1; transform: translateX(0); }
.mini-toast.error { border-left-color: var(--danger); }
.mini-toast-icon { width: 28px; height: 28px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; background: rgba(16,185,129,.12); color: var(--accent); flex: 0 0 auto; font-size: .8rem; }
.mini-toast.error .mini-toast-icon { background: rgba(239,68,68,.12); color: var(--danger); }
.hero-section { padding: 5rem 0 4rem; background: linear-gradient(160deg,#F0FDF4 0%,var(--bg) 40%,#F8FAFC 100%); position: relative; overflow: hidden; }
.home-hero-section { padding: 3.15rem 0 2.65rem; background: radial-gradient(circle at 12% 14%,rgba(16,185,129,.18),transparent 30%),radial-gradient(circle at 92% 20%,rgba(59,130,246,.12),transparent 28%),linear-gradient(135deg,#F8FFFC 0%,#F8FAFC 48%,#ECFDF5 100%); isolation: isolate; }
.home-hero-section::before { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg,rgba(15,23,42,.035) 1px,transparent 1px),linear-gradient(180deg,rgba(15,23,42,.028) 1px,transparent 1px); background-size: 72px 72px; mask-image: linear-gradient(180deg,rgba(0,0,0,.7),transparent 78%); pointer-events: none; }
.hero-bg-shape { position: absolute; border-radius: 999px; filter: blur(42px); opacity: .75; pointer-events: none; z-index: 0; animation: heroGlow 4.8s ease-in-out infinite alternate; }
.home-hero-section .container { z-index: 1; max-width: 1160px; }
.hero-bg-shape-one { width: 280px; height: 280px; left: -80px; top: 70px; background: rgba(16,185,129,.23); }
.hero-bg-shape-two { width: 340px; height: 340px; right: -100px; bottom: -120px; background: rgba(14,165,233,.14); animation-delay: 1.3s; }
.hero-badge,.section-badge { display: inline-flex; align-items: center; gap: 8px; background: rgba(16,185,129,.1); border: 1px solid rgba(16,185,129,.2); color: var(--accent); padding: .4rem 1rem; border-radius: 50px; font-size: .85rem; font-weight: 600; margin-bottom: 1rem; }
.premium-hero-badge { background: rgba(255,255,255,.76); border-color: rgba(16,185,129,.22); box-shadow: 0 12px 32px rgba(15,23,42,.06); backdrop-filter: blur(14px); color: #059669; font-weight: 800; }
.section-badge { text-transform: uppercase; letter-spacing: .5px; font-size: .8rem; }
.hero-title { font-size: clamp(2.2rem,5vw,3.8rem); line-height: 1.15; margin-bottom: 1.5rem; color: var(--primary); }
.home-hero-section .hero-title { max-width: 585px; letter-spacing: -.045em; font-weight: 900; }
.hero-title .highlight { background: linear-gradient(135deg,var(--accent),#059669); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; }
.hero-desc,.section-desc { color: var(--muted); line-height: 1.7; }
.hero-desc { font-size: 1.15rem; margin-bottom: 2rem; max-width: 520px; }
.home-hero-section .hero-desc { color: #475569; max-width: 510px; }
.hero-trust-strip { display: flex; flex-wrap: wrap; gap: .6rem; margin: 0 0 1.35rem; }
.hero-trust-strip span { display: inline-flex; align-items: center; gap: .42rem; border: 1px solid rgba(226,232,240,.9); background: rgba(255,255,255,.72); color: var(--secondary); border-radius: 999px; padding: .48rem .8rem; font-size: .82rem; font-weight: 800; box-shadow: 0 8px 22px rgba(15,23,42,.045); backdrop-filter: blur(12px); }
.hero-trust-strip i { color: var(--accent); }
.hero-actions { display: flex; gap: 1rem; flex-wrap: wrap; margin-bottom: 2rem; }
.hero-primary-cta,.hero-secondary-cta { min-height: 54px; border-radius: 16px; font-weight: 900; letter-spacing: -.01em; }
.hero-primary-cta { padding-inline: 1.65rem; box-shadow: 0 16px 34px rgba(16,185,129,.26); }
.hero-secondary-cta { background: rgba(255,255,255,.72); border-color: rgba(203,213,225,.8); box-shadow: 0 10px 28px rgba(15,23,42,.055); backdrop-filter: blur(14px); }
.hero-stats { display: flex; gap: 2.5rem; flex-wrap: wrap; }
.home-hero-section .hero-stats { padding-top: .25rem; }
.hero-stat-num { font-family: 'Poppins'; font-weight: 800; font-size: 1.6rem; color: var(--primary); }
.hero-stat-label { font-size: .85rem; color: var(--muted); font-weight: 500; }
.hero-image-card { background: var(--card-bg); border-radius: 24px; box-shadow: var(--shadow-xl); padding: 2rem; max-width: 480px; width: 100%; }
.hero-image-card img { border-radius: 16px; width: 100%; aspect-ratio: 4/3; object-fit: cover; }
.hero-product-slider { position: relative; max-width: 540px; margin-left: auto; background: linear-gradient(145deg,rgba(255,255,255,.72),rgba(255,255,255,.42)); border: 1px solid rgba(255,255,255,.82); border-radius: 30px; padding: .85rem; box-shadow: 0 24px 62px rgba(15,23,42,.12), inset 0 1px 0 rgba(255,255,255,.85); overflow: hidden; backdrop-filter: blur(22px); }
.hero-product-slider::before { content: ""; position: absolute; width: 260px; height: 260px; right: -70px; top: -95px; background: radial-gradient(circle, rgba(16,185,129,.24), transparent 68%); pointer-events: none; }
.hero-product-slider::after { content: ""; position: absolute; width: 170px; height: 170px; left: -70px; bottom: -70px; background: radial-gradient(circle, rgba(59,130,246,.14), transparent 70%); pointer-events: none; }
.hero-slider-top { position: relative; z-index: 2; display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-bottom: .75rem; }
.hero-slider-top span { display: inline-flex; align-items: center; gap: .45rem; color: var(--accent); font-weight: 900; font-size: .86rem; text-transform: uppercase; letter-spacing: .04em; }
.hero-slider-controls { display: flex; gap: .45rem; }
.hero-slider-controls button { width: 36px; height: 36px; border: 1px solid rgba(226,232,240,.9); background: rgba(255,255,255,.8); color: var(--primary); border-radius: 999px; display: inline-flex; align-items: center; justify-content: center; transition: .2s ease; box-shadow: 0 8px 20px rgba(15,23,42,.06); }
.hero-slider-controls button:hover { background: var(--accent); color: #fff; border-color: var(--accent); }
.hero-slider-track { position: relative; min-height: 390px; z-index: 1; }
.hero-slide { position: absolute; inset: 0; opacity: 0; visibility: hidden; transform: translateX(20px) scale(.98); transition: opacity .35s ease, transform .35s ease, visibility .35s ease; display: grid; grid-template-columns: minmax(0,1.08fr) minmax(230px,.92fr); gap: 1rem; align-items: stretch; }
.hero-slide.active { position: relative; opacity: 1; visibility: visible; transform: translateX(0) scale(1); }
.hero-slide-visual { position: relative; min-width: 0; }
.hero-slide-image { position: relative; height: 100%; min-height: 350px; background: linear-gradient(180deg,rgba(255,255,255,.95),rgba(248,250,252,.88)); border: 1px solid rgba(226,232,240,.72); border-radius: 24px; display: flex; align-items: center; justify-content: center; overflow: hidden; box-shadow: inset 0 1px 0 rgba(255,255,255,.8); }
.hero-slide-image::before { content: ""; position: absolute; inset: 10%; border-radius: 50%; background: radial-gradient(circle,rgba(16,185,129,.12),transparent 68%); }
.hero-slide-image img { position: relative; z-index: 1; width: 84%; height: 84%; object-fit: contain; filter: drop-shadow(0 22px 28px rgba(15,23,42,.14)); transition: transform .35s ease; }
.hero-slide.active .hero-slide-image img { animation: heroProductFloat 4.8s ease-in-out infinite; }
.hero-slide-sale { position: absolute; left: 18px; top: 18px; z-index: 2; background: linear-gradient(135deg,#EF4444,#F97316); color: #fff; border-radius: 999px; padding: .42rem .78rem; font-weight: 900; font-size: .78rem; box-shadow: 0 14px 28px rgba(239,68,68,.26); }
.hero-slide-content { display: flex; flex-direction: column; justify-content: center; padding: 1.15rem .9rem 1.15rem .25rem; }
.hero-slide-kicker { width: fit-content; background: rgba(16,185,129,.1); color: var(--accent); border: 1px solid rgba(16,185,129,.18); border-radius: 999px; padding: .32rem .75rem; font-size: .75rem; font-weight: 900; text-transform: uppercase; letter-spacing: .03em; margin-bottom: .75rem; }
.hero-slide-content h3 { font-size: 1.65rem; line-height: 1.18; margin-bottom: .75rem; color: var(--primary); letter-spacing: -.03em; }
.hero-slide-price { display: flex; align-items: center; gap: .65rem; margin-bottom: 1rem; flex-wrap: wrap; }
.hero-slide-price strong { font-family: 'Poppins'; font-size: 1.85rem; color: var(--primary); letter-spacing: -.04em; }
.hero-slide-price del { color: var(--muted); font-size: .95rem; }
.hero-slide-actions { display: grid; gap: .65rem; }
.hero-slide-order,.hero-slide-view { min-height: 46px; border-radius: 14px; display: inline-flex; align-items: center; justify-content: center; gap: .45rem; font-weight: 900; }
.hero-slide-order { background: var(--primary); color: #fff; box-shadow: 0 14px 28px rgba(15,23,42,.16); }
.hero-slide-order:hover { background: var(--accent); color: #fff; }
.hero-slide-view { background: rgba(255,255,255,.66); color: var(--accent); border: 1px solid rgba(16,185,129,.18); }
.hero-slide-view:hover { background: var(--accent); color: #fff; }
.hero-slider-dots { position: relative; z-index: 2; display: flex; justify-content: center; gap: .45rem; margin-top: .85rem; }
.hero-slider-dots button { width: 8px; height: 8px; border-radius: 999px; border: 0; background: #CBD5E1; padding: 0; transition: .2s ease; }
.hero-slider-dots button.active { width: 28px; background: var(--accent); }
.hero-empty-slider { min-height: 350px; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; color: var(--muted); }
.hero-empty-icon { width: 70px; height: 70px; border-radius: 22px; background: rgba(16,185,129,.1); color: var(--accent); display: flex; align-items: center; justify-content: center; font-size: 2rem; margin-bottom: 1rem; }
@keyframes heroProductFloat { 0%,100%{transform:translateY(0) scale(1)} 50%{transform:translateY(-8px) scale(1.02)} }
@keyframes heroGlow { from{transform:translate3d(0,0,0) scale(1)} to{transform:translate3d(18px,-14px,0) scale(1.08)} }
.home-hero-section .row { --bs-gutter-y: 1.5rem; }
.home-hero-section .hero-badge { margin-bottom: .75rem; }
.home-hero-section .hero-title { font-size: clamp(1.85rem,4vw,2.85rem); margin-bottom: .85rem; }
.home-hero-section .hero-desc { font-size: 1rem; margin-bottom: 1.15rem; max-width: 560px; }
.home-hero-section .hero-actions { margin-bottom: 1.15rem; }
.home-hero-section .hero-stats { gap: 1.5rem; }
.home-hero-section .hero-stat-num { font-size: 1.25rem; }
.home-hero-section .hero-image-card { max-width: 360px; padding: 1rem; border-radius: 18px; }
.home-hero-section .hero-image-card img { border-radius: 12px; aspect-ratio: 1/1; }
.hero-trust-section { position: relative; margin-top: -1.65rem; padding: 0 0 2.4rem; z-index: 2; }
.premium-trust-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: .9rem; }
.premium-trust-card { background: rgba(255,255,255,.86); border: 1px solid rgba(226,232,240,.86); border-radius: 20px; padding: 1.05rem; display: flex; gap: .85rem; align-items: flex-start; box-shadow: 0 16px 40px rgba(15,23,42,.07); backdrop-filter: blur(16px); transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease; }
.premium-trust-card:hover { transform: translateY(-4px); box-shadow: 0 22px 50px rgba(15,23,42,.1); border-color: rgba(16,185,129,.24); }
.premium-trust-icon { width: 42px; height: 42px; min-width: 42px; border-radius: 14px; background: linear-gradient(135deg,rgba(16,185,129,.14),rgba(16,185,129,.06)); color: var(--accent); display: flex; align-items: center; justify-content: center; }
.premium-trust-card h3 { font-size: .95rem; margin: 0 0 .25rem; letter-spacing: -.01em; }
.premium-trust-card p { color: var(--muted); font-size: .78rem; line-height: 1.55; margin: 0; }
.section-padding { padding: 3.5rem 0; }
.home-products-section { padding-top: 3rem; }
.section-header { text-align: center; margin-bottom: 3.5rem; }
.section-title { font-size: clamp(1.8rem,3.5vw,2.5rem); margin-bottom: .75rem; color: var(--primary); }
.section-desc { font-size: 1.05rem; max-width: 600px; margin: 0 auto; }
.page-header { background: linear-gradient(135deg,var(--primary),var(--secondary)); padding: 1.45rem 0; position: relative; overflow: hidden; border-bottom: 3px solid var(--accent); }
.page-header::before { content: ""; position: absolute; inset: 0; background: radial-gradient(circle at 88% 22%,rgba(16,185,129,.24),transparent 30%),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px); background-size: auto,54px 54px; opacity: .8; pointer-events: none; }
.page-header::after { content: ""; position: absolute; left: 0; bottom: 0; width: 45%; height: 3px; background: linear-gradient(90deg,#34D399,rgba(52,211,153,0)); pointer-events: none; }
.page-header .container { position: relative; z-index: 1; display: flex; align-items: center; justify-content: space-between; gap: 1.25rem; flex-wrap: wrap; }
.page-header h1 { color: #fff; font-size: clamp(1.8rem,3.5vw,2.55rem); line-height: 1.08; margin: 0; letter-spacing: -.01em; position: relative; display: inline-flex; align-items: center; gap: .8rem; }
.page-header h1::after { content: ""; width: 64px; height: 4px; border-radius: 999px; background: linear-gradient(90deg,var(--accent),rgba(16,185,129,.12)); }
.breadcrumb-custom,.breadcrumb-product { display: flex; align-items: center; gap: 8px; list-style: none; padding: 0; margin: 0; flex-wrap: wrap; }
.breadcrumb-custom { display: inline-flex; background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.14); border-radius: 999px; padding: .5rem .9rem; backdrop-filter: blur(10px); }
.breadcrumb-custom a,.breadcrumb-product a { color: rgba(255,255,255,.72); }
.breadcrumb-product a { color: var(--muted); }
.breadcrumb-product .current { color: var(--primary); font-weight: 700; }
.breadcrumb-product .sep { color: var(--accent); font-weight: 800; }
.breadcrumb-custom li { color: rgba(255,255,255,.42); font-size: .9rem; font-weight: 600; }
.breadcrumb-custom a:hover { color: #fff; }
.breadcrumb-custom .current { color: var(--accent); font-weight: 700; }
.product-card { background: var(--card-bg); border-radius: 18px; border: 1px solid var(--border); overflow: hidden; transition: all .28s ease; height: 100%; display: flex; flex-direction: column; box-shadow: 0 8px 24px rgba(15,23,42,.04); }
.product-card:hover { transform: translateY(-4px); box-shadow: 0 18px 42px rgba(15,23,42,.11); border-color: rgba(16,185,129,.28); }
.product-card-img { position: relative; padding: 1.15rem; background: linear-gradient(180deg,#F8FAFC 0%,#F1F5F9 100%); aspect-ratio: 1/1; display: flex; align-items: center; justify-content: center; overflow: hidden; }
.product-card-img::after { content: ""; position: absolute; inset: auto 0 0; height: 1px; background: var(--border); }
.product-image-link { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; padding: 1.15rem; }
.product-card-img img { width: 86%; height: 86%; object-fit: contain; transition: transform .35s ease; filter: drop-shadow(0 8px 16px rgba(15,23,42,.08)); }
.product-card:hover .product-card-img img { transform: scale(1.08); }
.product-badge { position: absolute; top: .75rem; left: .75rem; background: var(--danger); color: #fff; padding: .24rem .72rem; border-radius: 9px; font-size: .72rem; font-weight: 800; letter-spacing: .02em; box-shadow: 0 8px 18px rgba(239,68,68,.22); z-index: 1; }
.product-badge.hot { background: var(--warning); color: var(--primary); }
.product-wishlist { position: absolute; top: .75rem; right: .75rem; width: 36px; height: 36px; border-radius: 10px; background: rgba(255,255,255,.92); border: 1px solid rgba(226,232,240,.9); display: flex; align-items: center; justify-content: center; color: var(--muted); z-index: 2; }
.product-card-body { padding: 1.15rem 1.15rem 1.2rem; flex: 1; display: flex; flex-direction: column; }
.product-category { display: inline-flex; width: fit-content; font-size: .7rem; color: var(--accent); background: rgba(16,185,129,.09); border: 1px solid rgba(16,185,129,.14); border-radius: 999px; font-weight: 800; text-transform: uppercase; letter-spacing: .45px; margin-bottom: .55rem; padding: .22rem .55rem; }
.product-title { font-family: 'Poppins'; font-weight: 800; font-size: 1.02rem; margin-bottom: .8rem; line-height: 1.35; color: var(--primary); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; min-height: 2.7em; }
.product-price-row { display: flex; align-items: baseline; gap: 8px; margin-top: auto; flex-wrap: wrap; }
.product-price { font-family: 'Poppins'; font-weight: 900; font-size: 1.28rem; color: var(--primary); letter-spacing: -.02em; }
.product-price-old { font-size: .86rem; color: var(--muted); text-decoration: line-through; }
.product-stock { font-size: .74rem; color: var(--danger); font-weight: 700; margin-top: .45rem; }
.product-stock.in-stock { color: var(--success); }
.product-stock.stock-out { display: inline-flex; align-items: center; width: fit-content; color: #991B1B; background: #FEF2F2; border: 1px solid rgba(239,68,68,.18); border-radius: 999px; padding: .22rem .62rem; }
.btn-add-cart { width: 100%; background: var(--primary); color: #fff; border: none; padding: .62rem .85rem; border-radius: 11px; font-weight: 800; font-size: .86rem; margin-top: .75rem; display: flex; align-items: center; justify-content: center; gap: 6px; box-shadow: 0 8px 16px rgba(15,23,42,.12); }
.btn-add-cart:hover { background: var(--accent); color: #fff; transform: translateY(-1px); }
.btn-add-cart.disabled,.btn-order-direct.disabled,.hero-slide-order.disabled,.btn-order-now.disabled,.btn-wa-order.disabled { opacity: 1; cursor: not-allowed; pointer-events: none; background: #E5E7EB !important; color: #64748B !important; box-shadow: none !important; border-color: #E2E8F0 !important; transform: none !important; }
.home-product-actions { display: grid; gap: .55rem; margin-top: .85rem; }
.home-product-actions .btn-add-cart { margin-top: 0; }
.btn-order-direct { width: 100%; background: var(--accent); color: #fff; border: none; padding: .62rem .85rem; border-radius: 11px; font-weight: 800; font-size: .86rem; display: flex; align-items: center; justify-content: center; gap: 6px; box-shadow: 0 8px 18px rgba(16,185,129,.2); }
.btn-order-direct:hover { background: var(--accent-hover); color: #fff; transform: translateY(-1px); }
.trust-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(200px,1fr)); gap: 1.5rem; }
.trust-item,.feature-card,.testimonial-card,.contact-info-card,.form-card,.filter-card,.order-summary,.success-card { background: var(--card-bg); border: 1px solid var(--border); border-radius: var(--radius); }
.trust-item { display: flex; align-items: center; gap: 1rem; padding: 1.25rem; }
.trust-icon,.feature-icon-lg,.ci-icon { display: flex; align-items: center; justify-content: center; color: var(--accent); }
.trust-icon { width: 48px; height: 48px; min-width: 48px; border-radius: 12px; background: rgba(16,185,129,.1); }
.trust-title,.feature-title { font-family: 'Poppins'; font-weight: 600; }
.trust-desc,.feature-desc,.testimonial-text,.ci-text { color: var(--muted); }
.feature-card { padding: 2rem; height: 100%; transition: all .4s ease; }
.feature-card:hover,.testimonial-card:hover,.contact-info-card:hover { transform: translateY(-4px); box-shadow: var(--shadow-md); }
.feature-icon-lg { width: 56px; height: 56px; border-radius: 14px; background: linear-gradient(135deg,var(--accent),#059669); color: #fff; margin-bottom: 1.25rem; }
.testimonial-card { padding: 1.75rem; height: 100%; }
.testimonial-stars { color: var(--warning); margin-bottom: .75rem; }
.testimonial-author { display: flex; align-items: center; gap: .75rem; margin-top: 1rem; }
.testimonial-avatar,.review-avatar { width: 44px; height: 44px; border-radius: 12px; object-fit: cover; }
.testimonial-name,.review-name { font-weight: 600; }
.testimonial-verified,.review-verified { font-size: .75rem; color: var(--accent); }
.cta-section { background: linear-gradient(135deg,var(--primary),var(--secondary)); color: #fff; padding: 4rem 0; position: relative; overflow: hidden; }
.cta-title { font-size: clamp(1.8rem,4vw,2.8rem); }
.cta-desc { color: rgba(255,255,255,.72); font-size: 1.05rem; }
.btn-cta-white { background: #fff; color: var(--primary); padding: .85rem 2rem; border-radius: 14px; font-weight: 700; display: inline-flex; align-items: center; gap: 8px; }
.newsletter-section { background: #fff; }
.newsletter-input-group { max-width: 560px; margin: 0 auto; display: flex; gap: .75rem; }
.newsletter-input { flex: 1; border: 1px solid var(--border); border-radius: 14px; padding: .9rem 1rem; outline: none; }
.newsletter-btn { background: var(--accent); color: #fff; border: 0; border-radius: 14px; padding: .9rem 1.5rem; font-weight: 700; }
.filter-section,.contact-section,.checkout-section { padding: 3rem 0 4rem; }
.category-nav-wrap { margin-bottom: 1.5rem; }
.category-nav-label { display: none; align-items: center; gap: 7px; color: var(--muted); font-size: .76rem; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; margin-bottom: .55rem; }
.category-nav { display: flex; gap: .5rem; overflow-x: auto; padding-bottom: .5rem; }
.category-nav::-webkit-scrollbar { height: 0; }
.cat-nav-btn { white-space: nowrap; padding: .5rem 1.25rem; border-radius: 50px; border: 1px solid var(--border); background: var(--card-bg); font-size: .85rem; font-weight: 500; transition: all .25s ease; }
.cat-nav-btn.active,.cat-nav-btn:hover { background: var(--accent); color: #fff; border-color: var(--accent); box-shadow: 0 10px 22px rgba(16,185,129,.18); }
.filter-card { padding: 1.5rem; margin-bottom: 1rem; }
.filter-title { font-family: 'Poppins'; font-weight: 600; font-size: .95rem; margin-bottom: 1rem; }
.filter-option { display: flex; align-items: center; gap: 10px; padding: .4rem 0; }
.filter-option input { accent-color: var(--accent); }
.filter-option span:first-of-type { flex: 1; font-size: .9rem; }
.filter-option .count { color: var(--muted); font-size: .8rem; }
.filter-toggle-btn { display: none; align-items: center; gap: 6px; border: 1px solid var(--border); background: var(--card-bg); border-radius: 12px; padding: .75rem 1rem; font-weight: 600; color: var(--text); }
.btn-filter-apply,.btn-filter-reset { border-radius: 12px; padding: .75rem 1rem; font-weight: 700; display: inline-flex; align-items: center; justify-content: center; gap: 8px; border: 1px solid transparent; width: 100%; }
.btn-filter-apply { background: var(--accent); color: #fff; }
.btn-filter-apply:hover { background: var(--accent-hover); color: #fff; }
.btn-filter-reset { background: #fff; color: var(--muted); border-color: var(--border); margin-top: .65rem; }
.btn-filter-reset:hover { color: var(--accent); border-color: rgba(16,185,129,.35); }
.active-filter-strip { display: flex; align-items: center; justify-content: space-between; gap: 1rem; background: #F0FDF4; border: 1px solid rgba(16,185,129,.18); border-radius: 12px; padding: .75rem 1rem; margin-bottom: 1rem; color: var(--accent); font-size: .88rem; font-weight: 600; }
.active-filter-strip a { color: var(--primary); }
.empty-products { background: var(--card-bg); border: 1px solid var(--border); border-radius: 24px; padding: 3rem 2rem; text-align: center; }
.empty-products p { color: var(--muted); }
.filter-sidebar-mobile { display: none; position: fixed; top: 0; left: -320px; width: 300px; height: 100vh; background: #fff; z-index: 2000; overflow-y: auto; padding: 1.5rem; transition: left .3s ease; box-shadow: var(--shadow-lg); }
.filter-sidebar-mobile.open { left: 0; }
.filter-overlay { display: none; position: fixed; inset: 0; background: rgba(15,23,42,.45); z-index: 1999; }
.filter-overlay.open { display: block; }
.close-filter { background: none; border: none; font-size: 1.2rem; color: var(--text); }
.toolbar { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-bottom: 1.5rem; flex-wrap: wrap; }
.toolbar-count { display: inline-flex; align-items: center; gap: .45rem; color: var(--text); font-weight: 500; }
.toolbar-count i { color: var(--accent); }
.search-box { position: relative; }
.search-box input,.sort-select,.form-control-custom { border: 1px solid var(--border); border-radius: 12px; padding: .75rem 1rem; background: var(--card-bg); font-family: 'Inter'; width: 100%; }
.search-box input { padding-left: 2.5rem; width: 240px; }
.search-box i { position: absolute; left: .9rem; top: 50%; transform: translateY(-50%); color: var(--muted); }
.product-section { padding: 1.5rem 0 3rem; }
.product-detail-head { position: relative; margin-bottom: 1rem; padding: 1.05rem 1.25rem; border: 1px solid rgba(226,232,240,.9); border-radius: 20px; background: radial-gradient(circle at 92% 20%,rgba(16,185,129,.12),transparent 34%),linear-gradient(135deg,rgba(255,255,255,.95),rgba(248,250,252,.86)); box-shadow: 0 14px 36px rgba(15,23,42,.06); overflow: hidden; }
.product-detail-head::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 4px; background: linear-gradient(180deg,var(--accent),rgba(16,185,129,.2)); }
.product-section .breadcrumb-product { position: relative; z-index: 1; background: rgba(255,255,255,.78); border: 1px solid rgba(226,232,240,.95); border-radius: 999px; padding: .65rem 1rem; box-shadow: var(--shadow-sm); width: fit-content; max-width: 100%; backdrop-filter: blur(12px); }
.product-section .breadcrumb-product a { display: inline-flex; align-items: center; gap: 6px; }
.gallery-main { background: linear-gradient(180deg,#fff,#F8FAFC); border: 1px solid var(--border); border-radius: 22px; overflow: hidden; aspect-ratio: 1/1; display: flex; align-items: center; justify-content: center; padding: 2rem; position: relative; box-shadow: var(--shadow-md); }
.gallery-main img { max-width: 88%; max-height: 88%; object-fit: contain; border-radius: 12px; transition: transform .35s ease; filter: drop-shadow(0 18px 26px rgba(15,23,42,.1)); }
.gallery-main:hover img { transform: scale(1.03); }
.gallery-badge { position: absolute; top: 1rem; left: 1rem; background: var(--danger); color: #fff; padding: .35rem .85rem; border-radius: 10px; font-size: .78rem; font-weight: 900; box-shadow: 0 10px 22px rgba(239,68,68,.24); }
.gallery-video-btn { position: absolute; bottom: 1rem; right: 1rem; width: 46px; height: 46px; border-radius: 50%; background: rgba(15,23,42,.82); border: 0; color: #fff; }
.gallery-thumbs { display: flex; gap: .65rem; margin-top: .85rem; overflow-x: auto; padding-bottom: .45rem; }
.gallery-thumb { width: 72px; height: 72px; min-width: 72px; border-radius: 12px; border: 2px solid var(--border); overflow: hidden; cursor: pointer; background: #fff; display: flex; align-items: center; justify-content: center; padding: .45rem; transition: all .2s ease; }
.gallery-thumb.active,.gallery-thumb:hover { border-color: var(--accent); box-shadow: 0 0 0 3px rgba(16,185,129,.15); }
.product-info { background: #fff; border: 1px solid var(--border); border-radius: 22px; padding: 1.5rem; box-shadow: var(--shadow-md); }
.pi-category { display: inline-flex; align-items: center; gap: 7px; font-size: .76rem; color: var(--accent); background: rgba(16,185,129,.09); border: 1px solid rgba(16,185,129,.15); border-radius: 999px; font-weight: 800; text-transform: uppercase; letter-spacing: .6px; margin-bottom: .75rem; padding: .32rem .75rem; }
.pi-title { font-size: clamp(1.45rem,3vw,2.15rem); line-height: 1.22; margin-bottom: .85rem; color: var(--primary); }
.pi-price-row { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin-bottom: .75rem; }
.pi-stars { color: var(--warning); }
.pi-desc { color: var(--muted); }
.pi-price { font-family: 'Poppins'; font-weight: 900; font-size: clamp(1.8rem,4vw,2.35rem); color: var(--primary); letter-spacing: -.03em; }
.pi-price-old { font-size: 1.15rem; color: var(--muted); text-decoration: line-through; }
.pi-discount { background: #FEF2F2; color: var(--danger); padding: .3rem .8rem; border-radius: 8px; font-size: .82rem; font-weight: 700; }
.pi-meta-row { display: flex; gap: .6rem; flex-wrap: wrap; margin-bottom: 1rem; }
.countdown-inline,.pi-stock { display: inline-flex; align-items: center; gap: 6px; font-weight: 800; border-radius: 999px; padding: .42rem .75rem; font-size: .82rem; }
.countdown-inline { background: #FFFBEB; color: var(--warning); border: 1px solid rgba(245,158,11,.18); }
.pi-stock { color: var(--success); background: #F0FDF4; border: 1px solid rgba(34,197,94,.16); margin-bottom: 0; }
.pi-stock.low { color: var(--danger); }
.pi-stock.stock-out { color: #991B1B; background: #FEF2F2; border-color: rgba(239,68,68,.2); }
.product-buy-box { background: #F8FAFC; border: 1px solid var(--border); border-radius: 18px; padding: 1rem; margin-bottom: 1rem; }
.buy-box-top { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-bottom: .9rem; }
.buy-actions { display: grid; grid-template-columns: 1fr 1fr; gap: .75rem; }
.buy-box-note { margin-top: .75rem; color: var(--muted); font-size: .82rem; display: flex; align-items: center; justify-content: center; gap: 7px; text-align: center; }
.buy-box-note i { color: var(--accent); }
.stock-out-panel { border: 1px solid rgba(239,68,68,.18); background: linear-gradient(135deg,#FFF7F7,#FEF2F2); border-radius: 14px; padding: 1rem; text-align: center; display: grid; gap: .35rem; margin-bottom: .85rem; color: #991B1B; }
.stock-out-panel i { font-size: 1.7rem; color: #EF4444; }
.stock-out-panel strong { font-family: 'Poppins'; font-weight: 900; color: var(--primary); }
.stock-out-panel span { color: var(--muted); font-size: .86rem; line-height: 1.5; }
.qty-control { display: flex; align-items: center; border: 1px solid var(--border); border-radius: 12px; overflow: hidden; width: fit-content; background: #fff; }
.qty-btn { width: 42px; height: 42px; border: 0; background: #fff; font-weight: 900; color: var(--primary); }
.qty-btn:hover { background: var(--accent); color: #fff; }
.qty-input { width: 58px; height: 42px; border: 0; border-left: 1px solid var(--border); border-right: 1px solid var(--border); text-align: center; font-weight: 800; }
.btn-order-now,.btn-place-order { width: 100%; background: var(--accent); color: #fff; border: 0; padding: .78rem 1rem; min-height: 52px; border-radius: 13px; font-weight: 700; font-size: .96rem; display: flex; align-items: center; justify-content: center; gap: 8px; box-shadow: 0 4px 20px rgba(16,185,129,.35); }
.btn-order-now:hover,.btn-place-order:hover { background: var(--accent-hover); color: #fff; transform: translateY(-2px); }
.btn-wa-order { width: 100%; background: var(--primary); color: #fff; border: 0; padding: .78rem 1rem; min-height: 52px; border-radius: 13px; font-weight: 800; font-size: .96rem; display: flex; align-items: center; justify-content: center; gap: 8px; }
.btn-wa-order:hover { background: var(--secondary); color: #fff; transform: translateY(-1px); }
.pi-trust { display: grid; grid-template-columns: repeat(2,1fr); gap: .75rem; }
.pi-trust-item { display: flex; align-items: center; gap: 8px; font-size: .82rem; color: var(--muted); font-weight: 500; }
.scarcity-box { background: #FEF2F2; border: 1px solid rgba(239,68,68,.15); border-radius: 14px; padding: .9rem 1rem; margin-bottom: 1rem; }
.bar-track { height: 8px; background: #FECACA; border-radius: 4px; overflow: hidden; margin: .5rem 0; }
.bar-fill { height: 100%; background: var(--danger); border-radius: 4px; width: 82%; }
.product-tabs { margin-top: 1rem; clear: both; }
.nav-tabs-custom { border: 1px solid var(--border); gap: .5rem; background: var(--card-bg); border-radius: 14px; padding: .4rem; display: flex; overflow-x: auto; margin-bottom: 1rem; }
.nav-tabs-custom .nav-link { border: 0 !important; color: var(--muted); font-weight: 600; border-radius: 10px !important; white-space: nowrap; }
.nav-tabs-custom .nav-link.active { background: var(--accent); color: #fff !important; }
.tab-content-custom { background: var(--card-bg); border: 1px solid var(--border); border-radius: var(--radius); padding: 2rem; }
.checkout-header { text-align: center; margin-bottom: 2.5rem; }
.secure-badge { display: inline-flex; align-items: center; gap: 6px; background: #F0FDF4; border: 1px solid rgba(16,185,129,.2); color: var(--accent); padding: .35rem 1rem; border-radius: 50px; font-size: .82rem; font-weight: 600; }
.checkout-grid { display: grid; grid-template-columns: 1fr; gap: 2rem; }
@media(min-width:992px){ .checkout-grid{ grid-template-columns: 1fr 400px; } }
.form-card { padding: 2rem; margin-bottom: 1.5rem; }
.form-card-title { font-family: 'Poppins'; font-weight: 700; font-size: 1.1rem; margin-bottom: 1.5rem; display: flex; align-items: center; gap: 10px; }
.form-card-title .step { width: 32px; height: 32px; border-radius: 8px; background: var(--accent); color: #fff; display: flex; align-items: center; justify-content: center; }
.form-label-custom { font-weight: 600; font-size: .88rem; color: var(--secondary); margin-bottom: .4rem; }
.order-summary { padding: 1.75rem; position: sticky; top: 100px; box-shadow: var(--shadow-md); }
.os-title { font-family: 'Poppins'; font-weight: 700; font-size: 1.1rem; margin-bottom: 1.25rem; padding-bottom: 1rem; border-bottom: 1px solid var(--border); }
.os-product { display: flex; gap: 1rem; margin-bottom: 1rem; padding-bottom: 1rem; border-bottom: 1px solid var(--border); }
.os-product-img { width: 72px; height: 72px; min-width: 72px; border-radius: 12px; overflow: hidden; background: #F1F5F9; display: flex; align-items: center; justify-content: center; padding: .5rem; }
.os-product-img img { max-width: 100%; max-height: 100%; object-fit: contain; }
.os-product-name { font-weight: 600; font-size: .9rem; line-height: 1.4; }
.os-product-qty { font-size: .82rem; color: var(--muted); }
.os-product-price { font-family: 'Poppins'; font-weight: 700; white-space: nowrap; }
.os-row { display: flex; justify-content: space-between; padding: .5rem 0; font-size: .92rem; }
.os-row .label { color: var(--muted); }
.os-row .value { font-weight: 600; }
.os-row.total { border-top: 2px solid var(--border); margin-top: .5rem; padding-top: .75rem; }
.os-row.total .value { font-family: 'Poppins'; font-weight: 800; font-size: 1.25rem; color: var(--primary); }
.os-delivery { background: #F0FDF4; border: 1px solid rgba(16,185,129,.15); border-radius: 10px; padding: .75rem 1rem; margin-top: 1rem; font-size: .85rem; color: var(--accent); font-weight: 600; }
.cart-payment-note { display: flex; gap: .85rem; align-items: center; background: linear-gradient(135deg,#ECFDF5,#F8FAFC); border: 1px solid rgba(16,185,129,.22); border-radius: 14px; padding: .9rem 1rem; margin: 1rem 0; color: var(--primary); }
.cart-payment-icon { width: 42px; height: 42px; min-width: 42px; border-radius: 12px; background: var(--accent); color: #fff; display: flex; align-items: center; justify-content: center; box-shadow: 0 8px 20px rgba(16,185,129,.25); }
.cart-payment-note strong { display: block; font-family: 'Poppins'; font-size: .98rem; margin-bottom: .15rem; color: var(--accent); }
.cart-payment-note span { display: block; color: var(--muted); font-size: .82rem; line-height: 1.45; }
.cod-badge { display: flex; align-items: center; justify-content: center; gap: 8px; margin-top: .85rem; font-size: .85rem; color: var(--muted); }
.cod-badge i { color: var(--success); }
.trust-checkout { display: grid; grid-template-columns: repeat(2,1fr); gap: .6rem; margin-top: 1rem; }
.trust-checkout-item { display: flex; align-items: center; gap: 6px; font-size: .78rem; color: var(--muted); font-weight: 500; }
.trust-checkout-item i { color: var(--accent); font-size: .75rem; }
.cart-grid { align-items: start; }
.cart-items { display: flex; flex-direction: column; gap: 1rem; }
.cart-item { display: grid; grid-template-columns: 92px minmax(0,1fr) 142px 130px 40px; gap: 1rem; align-items: center; border: 1px solid var(--border); border-radius: 14px; padding: 1rem; background: #fff; }
.cart-item-img { width: 92px; height: 92px; border-radius: 14px; background: #F1F5F9; display: flex; align-items: center; justify-content: center; overflow: hidden; padding: .5rem; }
.cart-item-img img { width: 100%; height: 100%; object-fit: contain; }
.cart-item-title { display: block; font-family: 'Poppins'; font-weight: 700; color: var(--primary); line-height: 1.35; margin-bottom: .35rem; }
.cart-item-title:hover { color: var(--accent); }
.cart-item-meta { color: var(--muted); font-size: .86rem; }
.cart-qty-wrap label,.cart-line-total span,.cart-mobile-line span { display: block; font-size: .76rem; color: var(--muted); font-weight: 600; margin-bottom: .25rem; }
.cart-qty-control { display: grid; grid-template-columns: 38px 1fr 38px; border: 1px solid var(--border); border-radius: 13px; overflow: hidden; background: #fff; }
.cart-qty-btn { border: 0; background: #F8FAFC; color: var(--primary); display: flex; align-items: center; justify-content: center; font-size: .82rem; transition: all .2s ease; }
.cart-qty-btn:hover { background: var(--accent); color: #fff; }
.cart-qty-input { width: 100%; border: 0; border-left: 1px solid var(--border); border-right: 1px solid var(--border); padding: .68rem .25rem; font-weight: 800; outline: none; text-align: center; appearance: textfield; -moz-appearance: textfield; }
.cart-qty-input::-webkit-outer-spin-button,.cart-qty-input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.cart-qty-control:focus-within { border-color: var(--accent); box-shadow: 0 0 0 3px rgba(16,185,129,.1); }
.cart-line-total strong,.cart-mobile-line strong { font-family: 'Poppins'; color: var(--primary); white-space: nowrap; }
.cart-mobile-line { display: none; margin-top: .65rem; }
.cart-remove { width: 40px; height: 40px; border-radius: 12px; border: 1px solid rgba(239,68,68,.18); background: #FEF2F2; color: var(--danger); display: flex; align-items: center; justify-content: center; }
.cart-remove:hover { background: var(--danger); color: #fff; }
.cart-actions { display: flex; justify-content: space-between; gap: 1rem; flex-wrap: wrap; }
.btn-cart-secondary,.btn-cart-update,.btn-clear-cart { border-radius: 14px; padding: .85rem 1.25rem; font-weight: 700; display: inline-flex; align-items: center; justify-content: center; gap: 8px; border: 1px solid var(--border); }
.btn-cart-secondary { background: #fff; color: var(--primary); }
.btn-cart-update { background: var(--primary); color: #fff; border-color: var(--primary); }
.btn-cart-secondary:hover,.btn-cart-update:hover { transform: translateY(-1px); color: #fff; background: var(--accent); border-color: var(--accent); }
.cart-save-status { display: inline-flex; align-items: center; justify-content: center; gap: 8px; color: var(--accent); background: #F0FDF4; border: 1px solid rgba(16,185,129,.18); border-radius: 14px; padding: .85rem 1.15rem; font-weight: 700; font-size: .9rem; }
.cart-save-status.saving { color: var(--muted); background: #F8FAFC; border-color: var(--border); }
.cart-save-status.error { color: var(--danger); background: #FEF2F2; border-color: rgba(239,68,68,.18); }
.cart-clear-form { margin-top: 1.1rem; padding-top: 1rem; border-top: 1px solid var(--border); }
.btn-clear-cart { width: 100%; background: #fff; color: var(--danger); border-color: rgba(239,68,68,.2); min-height: 44px; padding: .6rem 1rem; font-size: .9rem; border-radius: 12px; box-shadow: none; }
.btn-clear-cart:hover { background: #FEF2F2; color: var(--danger); border-color: rgba(239,68,68,.35); transform: translateY(-1px); }
.cart-section { padding-top: 2rem; }
.cart-section .checkout-header { margin-bottom: 1.5rem; }
.cart-section .checkout-header h1 { margin-bottom: .35rem; }
.cart-section .checkout-header p { margin-bottom: .6rem; color: var(--muted); }
.cart-section .form-card { padding: 1.25rem; margin-bottom: 1rem; }
.cart-section .form-card-title { margin-bottom: 1rem; font-size: 1rem; }
.cart-section .form-card-title .step { width: 28px; height: 28px; border-radius: 8px; font-size: .85rem; }
.cart-section .checkout-grid { gap: 1.25rem; }
.cart-section .order-summary { padding: 1.25rem; border-radius: 14px; }
.cart-section .os-title { margin-bottom: .85rem; padding-bottom: .75rem; font-size: 1rem; }
.cart-section .os-product { gap: .75rem; margin-bottom: .75rem; padding-bottom: .75rem; }
.cart-section .os-product-img { width: 56px; height: 56px; min-width: 56px; border-radius: 10px; padding: .4rem; }
.cart-section .os-product-name { font-size: .84rem; }
.cart-section .os-product-price { font-size: .85rem; }
.cart-section .os-row { padding: .38rem 0; font-size: .88rem; }
.cart-section .os-row.total { padding-top: .6rem; }
.cart-section .os-row.total .value { font-size: 1.12rem; }
.cart-section .cart-payment-note { margin: .75rem 0; padding: .75rem; border-radius: 12px; }
.cart-section .cart-payment-icon { width: 36px; height: 36px; min-width: 36px; border-radius: 10px; }
.cart-section .cart-payment-note strong { font-size: .9rem; }
.cart-section .cart-payment-note span { font-size: .78rem; }
.cart-section .btn-place-order { padding: .85rem 1rem; border-radius: 12px; font-size: .98rem; }
.cart-section .cod-badge { margin-top: .65rem; font-size: .8rem; }
.cart-section .trust-checkout { gap: .45rem; margin-top: .75rem; }
.cart-section .trust-checkout-item { font-size: .74rem; }
.cart-section .cart-clear-form { margin-top: .8rem; padding-top: .8rem; }
.empty-cart-card { background: var(--card-bg); border: 1px solid var(--border); border-radius: 24px; padding: 3rem 2rem; text-align: center; max-width: 560px; margin: 0 auto; box-shadow: var(--shadow-md); }
.empty-cart-icon { width: 84px; height: 84px; border-radius: 22px; background: rgba(16,185,129,.1); color: var(--accent); display: flex; align-items: center; justify-content: center; font-size: 2rem; margin: 0 auto 1.25rem; }
.empty-cart-card p { color: var(--muted); margin-bottom: 1.5rem; }
.empty-cart-card .btn-place-order { max-width: 240px; margin: 0 auto; }
.checkout-page { padding-top: 2rem; }
.checkout-page .checkout-header { margin-bottom: 1.5rem; }
.checkout-page .checkout-header h1 { margin-bottom: .35rem; }
.checkout-page .checkout-header p { color: var(--muted); margin-bottom: .65rem; }
.checkout-page .checkout-grid { gap: 1.25rem; }
.checkout-page .form-card { padding: 1.25rem; margin-bottom: 1rem; border-radius: 14px; }
.checkout-page .form-card-title { margin-bottom: 1rem; font-size: 1rem; }
.checkout-page .form-card-title .step { width: 28px; height: 28px; border-radius: 8px; font-size: .85rem; }
.checkout-page .row.g-3 { --bs-gutter-x: .85rem; --bs-gutter-y: .85rem; }
.checkout-page .form-label-custom { font-size: .82rem; margin-bottom: .3rem; }
.checkout-page .form-control-custom { min-height: 44px; padding: .68rem .85rem; border-radius: 11px; font-size: .92rem; }
.checkout-page textarea.form-control-custom { min-height: 86px; resize: vertical; }
.checkout-qty-control { display: grid; grid-template-columns: 42px 1fr 42px; border: 1px solid var(--border); border-radius: 12px; overflow: hidden; background: #fff; }
.checkout-qty-control .form-control-custom { border: 0; border-left: 1px solid var(--border); border-right: 1px solid var(--border); border-radius: 0; text-align: center; font-weight: 800; min-height: 42px; padding: .5rem .25rem; appearance: textfield; -moz-appearance: textfield; }
.checkout-qty-control .form-control-custom::-webkit-outer-spin-button,.checkout-qty-control .form-control-custom::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.checkout-qty-control:focus-within { border-color: var(--accent); box-shadow: 0 0 0 3px rgba(16,185,129,.1); }
.checkout-qty-btn { border: 0; background: #F8FAFC; color: var(--primary); display: flex; align-items: center; justify-content: center; transition: all .2s ease; }
.checkout-qty-btn:hover { background: var(--accent); color: #fff; }
.checkout-page .order-summary { padding: 1.25rem; border-radius: 14px; }
.checkout-page .os-title { margin-bottom: .85rem; padding-bottom: .75rem; font-size: 1rem; }
.checkout-page .os-product { gap: .75rem; margin-bottom: .75rem; padding-bottom: .75rem; }
.checkout-page .os-product-img { width: 56px; height: 56px; min-width: 56px; border-radius: 10px; padding: .4rem; }
.checkout-page .os-product-name { font-size: .84rem; }
.checkout-page .os-product-price { font-size: .85rem; }
.checkout-page .os-row { padding: .38rem 0; font-size: .88rem; }
.checkout-page .os-row.total { padding-top: .6rem; }
.checkout-page .os-row.total .value { font-size: 1.12rem; }
.checkout-page .os-delivery { margin: .75rem 0; padding: .7rem .85rem; border-radius: 12px; font-size: .82rem; }
.checkout-page .btn-place-order { padding: .85rem 1rem; border-radius: 12px; font-size: .98rem; }
.checkout-page .cod-badge { margin-top: .65rem !important; font-size: .8rem; }
.success-section { padding: 3rem 0 4rem; display: flex; align-items: center; min-height: 65vh; }
.success-card { padding: 3rem 2rem; max-width: 640px; margin: 0 auto; text-align: center; box-shadow: var(--shadow-lg); width: 100%; border-radius: 24px; }
.success-icon { width: 90px; height: 90px; border-radius: 50%; background: linear-gradient(135deg,var(--accent),#059669); display: flex; align-items: center; justify-content: center; margin: 0 auto 1.5rem; font-size: 2.5rem; color: #fff; }
.success-title { font-size: clamp(1.7rem,4vw,2.25rem); margin-bottom: .5rem; color: var(--primary); }
.success-desc { color: var(--muted); max-width: 460px; margin: 0 auto 1.25rem; line-height: 1.6; }
.order-number-box { background: #F8FAFC; border: 1px solid var(--border); border-radius: 14px; padding: .85rem 1rem; display: inline-grid; grid-template-columns: auto auto 38px; align-items: center; gap: 10px; margin-bottom: 1.4rem; }
.order-number-label { color: var(--muted); font-size: .82rem; font-weight: 700; }
.order-number-value { font-family: 'Poppins'; font-weight: 800; color: var(--primary); }
.copy-order-btn { width: 38px; height: 38px; border: 1px solid var(--border); background: #fff; color: var(--accent); border-radius: 10px; display: inline-flex; align-items: center; justify-content: center; }
.customer-info-grid { display: grid; grid-template-columns: 1fr 1fr; gap: .75rem; text-align: left; margin-bottom: 2rem; background: #F8FAFC; border-radius: 14px; padding: 1.25rem; }
.ci-label { color: var(--muted); font-size: .76rem; font-weight: 700; text-transform: uppercase; letter-spacing: .35px; margin-bottom: .18rem; }
.ci-value { color: var(--primary); font-weight: 800; }
.timeline { display: flex; justify-content: center; gap: 0; margin: 2rem 0; position: relative; }
.timeline-step { text-align: center; flex: 1; position: relative; }
.timeline-dot { width: 36px; height: 36px; border-radius: 50%; background: var(--border); display: flex; align-items: center; justify-content: center; margin: 0 auto .5rem; font-size: .8rem; color: var(--muted); position: relative; z-index: 2; }
.timeline-dot.active,.timeline-dot.done { background: var(--accent); color: #fff; }
.timeline-label { font-size: .75rem; color: var(--muted); font-weight: 500; }
.success-actions { display: grid; gap: .8rem; max-width: 300px; margin: 0 auto; }
.success-actions .btn-primary-custom,.success-actions .btn-wa-order { width: 100%; justify-content: center; margin: 0; }
.contact-cards-row { position: relative; }
.contact-info-card { position: relative; padding: 1.15rem; display: flex; align-items: center; gap: 1rem; height: 100%; min-height: 128px; overflow: hidden; text-decoration: none; border-radius: 18px; background: linear-gradient(135deg,#fff 0%,#fff 62%,rgba(240,253,244,.72) 100%); box-shadow: 0 14px 36px rgba(15,23,42,.045); transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease; }
.contact-info-card::before { content: ""; position: absolute; left: 0; top: 18px; bottom: 18px; width: 3px; border-radius: 99px; background: var(--accent); opacity: .78; transition: opacity .25s ease, height .25s ease; pointer-events: none; }
.contact-info-card::after { content: ""; position: absolute; right: -40px; top: -55px; width: 120px; height: 120px; border-radius: 999px; background: rgba(16,185,129,.1); opacity: 0; transition: opacity .25s ease, transform .25s ease; pointer-events: none; }
.contact-info-card:hover { border-color: rgba(16,185,129,.32); box-shadow: 0 20px 45px rgba(15,23,42,.075); }
.contact-info-card:hover::before { opacity: 1; }
.contact-info-card:hover::after { opacity: 1; transform: translate(-6px,6px); }
.contact-card-body { position: relative; min-width: 0; display: flex; flex-direction: column; gap: .12rem; z-index: 1; }
.ci-icon { position: relative; width: 48px; height: 48px; min-width: 48px; border-radius: 15px; background: linear-gradient(135deg,rgba(16,185,129,.15),rgba(255,255,255,.95)); border: 1px solid rgba(16,185,129,.18); font-size: 1.05rem; box-shadow: 0 12px 24px rgba(16,185,129,.13); z-index: 1; }
.ci-title { color: var(--primary); font-family: 'Poppins'; font-weight: 900; font-size: .98rem; line-height: 1.2; letter-spacing: -.01em; }
.ci-text { font-size: .9rem; line-height: 1.4; overflow-wrap: anywhere; max-width: 230px; }
.ci-text a,.contact-info-card .ci-text { color: #51627A; }
.ci-action { display: inline-flex; align-items: center; gap: .35rem; width: max-content; color: var(--accent); font-size: .73rem; font-weight: 900; margin-top: .42rem; padding: .25rem .55rem; border-radius: 999px; background: rgba(16,185,129,.08); }
.ci-action::after { content: "\f061"; font-family: "Font Awesome 6 Free"; font-weight: 900; font-size: .68rem; transition: transform .2s ease; }
.contact-info-card:hover .ci-action::after { transform: translateX(3px); }
.map-section { background: var(--card-bg); border: 1px solid var(--border); border-radius: var(--radius); overflow: hidden; height: 350px; }
.map-section iframe { width: 100%; height: 100%; border: none; }
.legal-section,.about-section { padding: 4rem 0; }
.legal-card { background: var(--card-bg); border: 1px solid var(--border); border-radius: var(--radius); padding: 2.5rem; max-width: 860px; margin: 0 auto; }
.legal-card h2 { font-size: 1.3rem; margin: 2rem 0 .75rem; color: var(--primary); }
.legal-card h2:first-child { margin-top: 0; }
.legal-card p { color: var(--muted); line-height: 1.8; font-size: .95rem; margin-bottom: 1rem; }
.legal-card ul,.legal-card ol { padding-left: 1.5rem; margin-bottom: 1rem; }
.legal-card li { color: var(--muted); line-height: 2; font-size: .95rem; }
.last-updated { font-size: .85rem; color: var(--muted); font-style: italic; margin-bottom: 2rem; display: flex; align-items: center; gap: 6px; }
.stat-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 1.5rem; margin: 3rem 0; }
.about-logo-card { min-height: 320px; background: linear-gradient(135deg,#fff,#F0FDF4); border: 1px solid rgba(16,185,129,.16); border-radius: 24px; padding: 2.5rem; box-shadow: var(--shadow-lg); display: flex; align-items: center; justify-content: center; position: relative; overflow: hidden; }
.about-logo-card::before { content: ""; position: absolute; right: -70px; top: -80px; width: 220px; height: 220px; border-radius: 50%; background: rgba(16,185,129,.12); }
.about-logo-card::after { content: ""; position: absolute; left: -50px; bottom: -60px; width: 160px; height: 160px; border-radius: 40px; background: rgba(15,23,42,.05); transform: rotate(18deg); }
.about-logo-card img { max-width: min(320px,80%); max-height: 180px; width: auto; height: auto; position: relative; z-index: 1; }
.about-logo-fallback { width: 120px; height: 120px; border-radius: 28px; background: var(--primary); color: #fff; display: flex; align-items: center; justify-content: center; font-size: 3rem; position: relative; z-index: 1; }
.stat-card { background: var(--card-bg); border: 1px solid var(--border); border-radius: var(--radius); padding: 2rem 1rem; text-align: center; transition: all .3s ease; }
.stat-card:hover { transform: translateY(-4px); box-shadow: var(--shadow-md); }
.stat-number { font-family: 'Poppins'; font-weight: 800; font-size: 2.2rem; color: var(--accent); margin-bottom: .25rem; }
.stat-label { font-size: .88rem; color: var(--muted); font-weight: 500; }
.mv-card,.value-card,.team-card { background: var(--card-bg); border: 1px solid var(--border); border-radius: var(--radius); padding: 2rem; height: 100%; transition: all .3s ease; }
.mv-card:hover,.value-card:hover,.team-card:hover { transform: translateY(-3px); box-shadow: var(--shadow-md); }
.mv-icon,.value-icon { width: 56px; height: 56px; border-radius: 14px; background: linear-gradient(135deg,var(--accent),#059669); display: flex; align-items: center; justify-content: center; color: #fff; margin-bottom: 1.25rem; }
.value-icon { width: 48px; height: 48px; background: rgba(16,185,129,.1); color: var(--accent); }
.team-card { text-align: center; }
.team-avatar { width: 100px; height: 100px; border-radius: 50%; object-fit: cover; margin: 0 auto 1rem; border: 3px solid var(--border); }
.team-role { font-size: .85rem; color: var(--accent); font-weight: 600; margin-bottom: .75rem; }
.team-bio,.mv-text,.value-desc { color: var(--muted); line-height: 1.7; font-size: .9rem; }
.footer { background: var(--primary); color: rgba(255,255,255,.8); padding: 4rem 0 0; }
.footer-brand { font-family: 'Poppins'; font-weight: 800; font-size: 1.4rem; color: #fff; margin-bottom: 1rem; }
.footer-brand span { color: var(--accent); }
.footer-logo { max-height: 54px; width: auto; background: #fff; padding: 6px 10px; border-radius: 6px; }
.footer-brand-mark { width: 52px; height: 52px; border-radius: 12px; background: #fff; color: var(--primary); display: inline-flex; align-items: center; justify-content: center; font-size: 1.25rem; margin-bottom: 1rem; }
.footer-desc { font-size: .9rem; line-height: 1.7; margin-bottom: 1.5rem; max-width: 320px; color: rgba(255,255,255,.65); }
.footer-social { display: flex; gap: .75rem; }
.footer-social a { width: 40px; height: 40px; border-radius: 10px; background: rgba(255,255,255,.08); display: flex; align-items: center; justify-content: center; color: rgba(255,255,255,.75); }
.footer-social a:hover { background: var(--accent); color: #fff; }
.footer-title { font-family: 'Poppins'; font-weight: 600; font-size: 1rem; color: #fff; margin-bottom: 1.25rem; }
.footer-links { list-style: none; padding: 0; margin: 0; }
.footer-links li { margin-bottom: .6rem; }
.footer-links a { font-size: .9rem; color: rgba(255,255,255,.65); }
.footer-links a:hover { color: var(--accent); padding-left: 4px; }
.footer-muted { color: rgba(255,255,255,.64); line-height: 1.65; max-width: 360px; }
.footer-contact-actions { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .55rem; max-width: 340px; }
.footer-contact-btn { position: relative; overflow: hidden; min-height: 50px; border-radius: 12px; padding: .55rem .62rem; display: flex; align-items: center; gap: .5rem; color: #fff; border: 1px solid rgba(255,255,255,.1); box-shadow: 0 10px 24px rgba(0,0,0,.14); transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease; }
.footer-contact-btn::before { content: ""; position: absolute; inset: 0; background: linear-gradient(135deg,rgba(255,255,255,.16),rgba(255,255,255,0)); opacity: .8; pointer-events: none; }
.footer-contact-btn.whatsapp { background: linear-gradient(135deg,#16A34A,#10B981); }
.footer-contact-btn.messenger { background: linear-gradient(135deg,#2563EB,#0284C7); }
.footer-contact-btn:hover { color: #fff; transform: translateY(-3px); box-shadow: 0 20px 42px rgba(0,0,0,.22); border-color: rgba(255,255,255,.24); }
.footer-contact-icon { position: relative; z-index: 1; width: 30px; height: 30px; min-width: 30px; border-radius: 9px; background: rgba(255,255,255,.18); display: inline-flex; align-items: center; justify-content: center; font-size: .95rem; }
.footer-contact-btn span:last-child { position: relative; z-index: 1; display: grid; line-height: 1.15; }
.footer-contact-btn strong { font-size: .82rem; font-weight: 900; }
.footer-contact-btn small { color: rgba(255,255,255,.75); font-size: .62rem; margin-top: .12rem; white-space: nowrap; }
.footer-address { max-width: 340px; margin-top: .75rem; padding: .62rem 0 0; display: flex; align-items: flex-start; gap: .62rem; color: rgba(255,255,255,.78); border-top: 1px solid rgba(255,255,255,.08); }
.footer-address-icon { width: 32px; height: 32px; min-width: 32px; border-radius: 999px; background: rgba(16,185,129,.14); color: var(--accent); display: inline-flex; align-items: center; justify-content: center; font-size: .82rem; box-shadow: 0 0 0 5px rgba(16,185,129,.055); margin-top: .15rem; }
.footer-address-text { display: grid; gap: .1rem; min-width: 0; }
.footer-address-text small { color: rgba(255,255,255,.45); font-size: .65rem; font-weight: 900; letter-spacing: .7px; text-transform: uppercase; }
.footer-address-text strong { color: rgba(255,255,255,.82); font-size: .82rem; font-weight: 650; line-height: 1.5; }
.footer-bottom { border-top: 1px solid rgba(255,255,255,.08); padding: 1.5rem 0; margin-top: 3rem; text-align: center; font-size: .85rem; color: rgba(255,255,255,.82); }
.footer-bottom a { color: #fff; text-decoration: underline; text-underline-offset: 3px; }
.whatsapp-float,.messenger-float { position: fixed; right: 24px; z-index: 999; width: 56px; height: 56px; border-radius: 50%; color: #fff; display: flex; align-items: center; justify-content: center; font-size: 1.6rem; box-shadow: 0 4px 20px rgba(15,23,42,.22); }
.whatsapp-float { bottom: 24px; background: #25D366; }
.messenger-float { bottom: 90px; background: #0084FF; }
.reveal,.reveal-left,.reveal-right { opacity: 0; transform: translateY(30px); transition: all .7s cubic-bezier(.4,0,.2,1); }
.reveal-left { transform: translateX(-30px); }
.reveal-right { transform: translateX(30px); }
.reveal.active,.reveal-left.active,.reveal-right.active { opacity: 1; transform: translate(0); }
@media(max-width:991px){
    .desktop-sidebar{display:none!important;}
    .filter-toggle-btn{display:inline-flex;}
    .filter-sidebar-mobile{display:block;}
    .mobile-nav-actions{display:flex;}
    .desktop-cart-btn{display:none!important;}
    .navbar-collapse{display:none!important;}
    .navbar-custom .container{gap:.75rem;}
    .home-hero-section{padding:2.5rem 0 2.25rem;}
    .home-hero-section .hero-title,.home-hero-section .hero-desc{max-width:none;}
    .hero-product-slider{max-width:100%;margin:0 auto;}
    .hero-slide{grid-template-columns:1fr;gap:.8rem;}
    .hero-slider-track{min-height:0;}
    .hero-slide-image{min-height:300px;}
    .hero-slide-content{padding:.35rem .25rem .4rem;text-align:center;align-items:center;}
    .hero-slide-actions{width:100%;grid-template-columns:1fr 1fr;}
    .premium-trust-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:767px){
    .contact-section{padding:2rem 0 3rem;}
    .contact-cards-row{margin-bottom:2rem!important;}
    .contact-info-card{min-height:104px;padding:.95rem 1rem;border-radius:16px;gap:.8rem;}
    .contact-info-card::before{top:14px;bottom:14px;}
    .ci-icon{width:42px;height:42px;min-width:42px;border-radius:13px;font-size:.95rem;}
    .ci-title{font-size:.92rem;}
    .ci-text{font-size:.86rem;line-height:1.35;}
    .ci-action{font-size:.7rem;margin-top:.3rem;padding:.2rem .48rem;}
    .filter-section{padding:1.25rem 0 2.25rem;}
    .category-nav-wrap{position:relative;margin-bottom:.9rem;padding:.85rem .85rem .35rem;border:1px solid rgba(226,232,240,.9);border-radius:18px;background:linear-gradient(135deg,rgba(255,255,255,.94),rgba(240,253,244,.72));box-shadow:0 12px 30px rgba(15,23,42,.05);overflow:hidden;}
    .category-nav-wrap::after{content:"";position:absolute;right:0;top:0;bottom:0;width:42px;background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.96));pointer-events:none;}
    .category-nav-label{display:flex;}
    .category-nav{gap:.48rem;margin:0;padding:.04rem 1.7rem .5rem 0;scroll-snap-type:x proximity;}
    .cat-nav-btn{scroll-snap-align:start;padding:.58rem 1rem;border-radius:999px;font-size:.82rem;font-weight:850;border-color:rgba(203,213,225,.95);background:rgba(255,255,255,.9);box-shadow:0 8px 18px rgba(15,23,42,.04);}
    .cat-nav-btn.active{background:linear-gradient(135deg,var(--accent),#0EA5A4);border-color:transparent;color:#fff;box-shadow:0 12px 24px rgba(16,185,129,.26);}
    .toolbar{display:grid;grid-template-columns:1fr;align-items:stretch;gap:.72rem;margin-bottom:1rem;padding:.85rem;border:1px solid rgba(226,232,240,.95);border-radius:18px;background:rgba(255,255,255,.92);box-shadow:0 14px 34px rgba(15,23,42,.055);}
    .toolbar-count{width:100%;justify-content:flex-start;color:var(--muted);font-size:.9rem;font-weight:750;}
    .toolbar-count i{width:30px;height:30px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;background:rgba(16,185,129,.1);color:var(--accent);}
    .toolbar-count strong{font-size:1.12rem;color:var(--primary);font-weight:900;}
    .toolbar-actions{display:grid!important;grid-template-columns:auto minmax(0,1fr) minmax(112px,.58fr);gap:.55rem!important;width:100%;}
    .filter-toggle-btn{min-height:44px;border-radius:13px;padding:.62rem .78rem;background:#fff;font-weight:850;box-shadow:0 8px 18px rgba(15,23,42,.04);}
    .filter-toggle-btn i{color:var(--accent);}
    .search-box{min-width:0;}
    .search-box input{height:44px;width:100%;border-radius:13px;padding:.64rem .75rem .64rem 2.35rem;font-size:.9rem;font-weight:600;box-shadow:0 8px 18px rgba(15,23,42,.035);}
    .search-box i{left:.82rem;color:#64748B;}
    .sort-select{height:44px;min-width:112px;border-radius:13px;padding:.64rem 2rem .64rem .8rem;font-size:.88rem;font-weight:800;box-shadow:0 8px 18px rgba(15,23,42,.035);}
    .product-section{padding:1rem 0 2rem;}
    .product-detail-head{padding:.7rem;border-radius:15px;margin-bottom:1rem;}
    .product-section .breadcrumb-product{font-size:.8rem;gap:6px;padding:.56rem .7rem;border-radius:12px;width:100%;}
    .gallery-main{border-radius:16px;padding:1rem;box-shadow:var(--shadow-sm);}
    .gallery-badge{top:.75rem;left:.75rem;font-size:.68rem;padding:.24rem .62rem;border-radius:8px;}
    .gallery-video-btn{width:38px;height:38px;bottom:.75rem;right:.75rem;}
    .gallery-thumbs{gap:.45rem;margin-top:.65rem;}
    .gallery-thumb{width:58px;height:58px;min-width:58px;border-radius:10px;padding:.35rem;}
    .product-info{padding:1rem;border-radius:16px;box-shadow:var(--shadow-sm);}
    .pi-category{font-size:.66rem;margin-bottom:.55rem;padding:.25rem .6rem;}
    .pi-title{font-size:1.35rem;margin-bottom:.65rem;}
    .pi-price{font-size:1.65rem;}
    .pi-price-old{font-size:.9rem;}
    .pi-discount{font-size:.72rem;padding:.25rem .6rem;}
    .pi-meta-row{gap:.45rem;margin-bottom:.75rem;}
    .countdown-inline,.pi-stock{font-size:.72rem;padding:.34rem .58rem;}
    .pi-desc{font-size:.9rem;line-height:1.6;margin-bottom:.75rem;}
    .scarcity-box{padding:.75rem;border-radius:12px;margin-bottom:.75rem;}
    .scarcity-text,.scarcity-label{font-size:.78rem;}
    .product-buy-box{padding:.75rem;border-radius:14px;}
    .buy-box-top{margin-bottom:.7rem;}
    .qty-btn{width:38px;height:38px;}
    .qty-input{width:52px;height:38px;}
    .buy-actions{gap:.55rem;}
    .buy-actions .btn-order-now,.buy-actions .btn-wa-order{padding:.72rem .55rem;border-radius:12px;font-size:.84rem;}
    .buy-box-note{font-size:.74rem;}
    .pi-trust{gap:.5rem;}
    .pi-trust-item{font-size:.74rem;background:#F8FAFC;border-radius:10px;padding:.5rem;}
    .product-tabs{margin-top:1.75rem;}
    .nav-tabs-custom{margin-bottom:.85rem;padding:.32rem;border-radius:12px;}
    .nav-tabs-custom .nav-link{font-size:.82rem;padding:.45rem .75rem;}
    .tab-content-custom{padding:1rem;border-radius:14px;font-size:.9rem;}
    .product-card{border-radius:14px;box-shadow:0 6px 18px rgba(15,23,42,.04);}
    .product-card:hover{transform:none;}
    .product-card-img{padding:.75rem;}
    .product-card-body{padding:.8rem .85rem .9rem;}
    .product-category{font-size:.62rem;margin-bottom:.45rem;padding:.18rem .45rem;}
    .product-title{font-size:.88rem;line-height:1.3;margin-bottom:.6rem;min-height:2.6em;}
    .product-price{font-size:1.05rem;}
    .product-price-old{font-size:.76rem;}
    .product-stock{font-size:.68rem;margin-top:.35rem;}
    .home-product-actions{gap:.45rem;margin-top:.65rem;}
    .btn-add-cart,.btn-order-direct{padding:.54rem .42rem;border-radius:10px;font-size:.76rem;}
    .product-badge{top:.55rem;left:.55rem;font-size:.64rem;padding:.18rem .55rem;border-radius:7px;}
    .product-wishlist{top:.55rem;right:.55rem;width:32px;height:32px;border-radius:9px;}
    .success-section{padding:1.25rem 0 2rem;min-height:auto;}
    .success-card{padding:1.4rem 1rem;border-radius:18px;}
    .success-icon{width:64px;height:64px;font-size:1.8rem;margin-bottom:1rem;}
    .success-title{font-size:1.45rem;}
    .success-desc{font-size:.9rem;margin-bottom:1rem;}
    .order-number-box{display:grid;grid-template-columns:1fr 38px;text-align:left;width:100%;margin-bottom:1rem;}
    .order-number-label{grid-column:1/2;}
    .order-number-value{grid-column:1/2;font-size:.92rem;word-break:break-all;}
    .copy-order-btn{grid-column:2/3;grid-row:1/3;align-self:center;}
    .customer-info-grid{grid-template-columns:1fr 1fr;gap:.55rem;margin-bottom:1rem;padding:.8rem;border-radius:12px;}
    .ci-label{font-size:.68rem;}
    .ci-value{font-size:.85rem;}
    .timeline{display:flex;justify-content:space-between;gap:.25rem;margin:1rem 0 1.15rem;text-align:center;overflow-x:auto;padding:.15rem .1rem .35rem;}
    .timeline-step{display:block;min-width:58px;text-align:center;flex:1;}
    .timeline-dot{width:34px;height:34px;margin:0 auto .38rem;font-size:.72rem;}
    .timeline-label{font-size:.68rem;font-weight:700;line-height:1.2;white-space:normal;}
    .success-actions{max-width:none;gap:.65rem;}
    .success-actions .btn-primary-custom,.success-actions .btn-wa-order{min-height:46px;padding:.75rem 1rem;border-radius:12px;font-size:.9rem;}
    .checkout-page{padding-top:1.25rem;padding-bottom:2rem;}
    .checkout-page .checkout-header{text-align:left;margin-bottom:1rem;}
    .checkout-page .checkout-header h1{font-size:1.55rem;}
    .checkout-page .checkout-header p{font-size:.9rem;}
    .checkout-page .secure-badge{font-size:.76rem;padding:.3rem .75rem;}
    .checkout-page .checkout-grid{gap:1rem;}
    .checkout-page .form-card{padding:.85rem;border-radius:14px;margin-bottom:.8rem;}
    .checkout-page .form-card-title{font-size:.95rem;margin-bottom:.75rem;}
    .checkout-page .row.g-3{--bs-gutter-y:.7rem;}
    .checkout-page .form-control-custom{min-height:42px;font-size:.9rem;padding:.62rem .75rem;}
    .checkout-page textarea.form-control-custom{min-height:76px;}
    .checkout-page .order-summary{position:static;padding:1rem;border-radius:14px;}
    .checkout-page .os-product{display:grid;grid-template-columns:46px minmax(0,1fr) auto;gap:.55rem;align-items:center;}
    .checkout-page .os-product-img{width:46px;height:46px;min-width:46px;}
    .checkout-page .os-product-name{font-size:.78rem;line-height:1.25;}
    .checkout-page .os-product-qty{font-size:.72rem;}
    .checkout-page .os-product-price{font-size:.78rem;}
    .checkout-page .btn-place-order{min-height:48px;}
    .cart-section{padding-top:1.25rem;padding-bottom:2rem;}
    .cart-section .checkout-header{margin-bottom:1rem;text-align:left;}
    .cart-section .checkout-header h1{font-size:1.55rem;}
    .cart-section .checkout-header p{font-size:.9rem;}
    .cart-section .secure-badge{font-size:.76rem;padding:.3rem .75rem;}
    .cart-section .checkout-grid{gap:1rem;}
    .cart-section .form-card{padding:.85rem;border-radius:14px;margin-bottom:.8rem;}
    .cart-section .form-card-title{font-size:.95rem;margin-bottom:.75rem;}
    .cart-items{gap:.7rem;}
    .cart-item{grid-template-columns:68px minmax(0,1fr) 36px;gap:.75rem;padding:.75rem;border-radius:13px;align-items:start;}
    .cart-item-img{width:68px;height:68px;border-radius:12px;padding:.4rem;}
    .cart-item-title{font-size:.92rem;margin-bottom:.25rem;line-height:1.25;}
    .cart-item-meta{font-size:.78rem;}
    .cart-qty-wrap{grid-column:2/3;}
    .cart-qty-wrap label{display:none;}
    .cart-qty-control{max-width:132px;grid-template-columns:36px 1fr 36px;border-radius:12px;margin-top:.45rem;}
    .cart-qty-btn{min-height:36px;}
    .cart-qty-input{padding:.5rem .2rem;font-size:.95rem;}
    .cart-line-total{display:none;}
    .cart-mobile-line{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-top:.45rem;background:#F8FAFC;border-radius:10px;padding:.45rem .6rem;}
    .cart-mobile-line span{margin:0;font-size:.7rem;}
    .cart-mobile-line strong{font-size:.86rem;}
    .cart-remove{grid-column:3/4;grid-row:1/2;}
    .cart-remove{width:36px;height:36px;border-radius:10px;}
    .cart-actions{flex-direction:column;}
    .btn-cart-secondary,.btn-cart-update,.cart-save-status{width:100%;min-height:42px;padding:.65rem 1rem;font-size:.86rem;border-radius:12px;}
    .cart-section .order-summary{position:static;padding:1rem;border-radius:14px;}
    .cart-section .os-product{display:grid;grid-template-columns:46px minmax(0,1fr) auto;gap:.55rem;align-items:center;}
    .cart-section .os-product-img{width:46px;height:46px;min-width:46px;}
    .cart-section .os-product-name{font-size:.78rem;line-height:1.25;}
    .cart-section .os-product-qty{font-size:.72rem;}
    .cart-section .os-product-price{font-size:.78rem;}
    .cart-section .cart-payment-note{align-items:flex-start;}
    .cart-section .trust-checkout{grid-template-columns:1fr 1fr;}
}
@media(max-width:575px){
    .category-nav-wrap{margin-left:-2px;margin-right:-2px;padding:.78rem .72rem .3rem;border-radius:16px;}
    .category-nav-label{font-size:.68rem;margin-bottom:.48rem;}
    .cat-nav-btn{padding:.52rem .88rem;font-size:.78rem;}
    .toolbar{padding:.72rem;border-radius:16px;gap:.62rem;}
    .toolbar-actions{grid-template-columns:1fr 1fr;}
    .toolbar-actions .search-box{grid-column:1 / -1;order:-1;}
    .filter-toggle-btn,.sort-select{width:100%;}
    .filter-toggle-btn{justify-content:center;}
    .hero-section{padding:3rem 0;}
    .site-logo{max-height:42px;max-width:155px;}
    .mobile-nav-actions{gap:.4rem;}
    .mobile-cart-btn{min-height:38px;padding:.42rem .62rem!important;font-size:.82rem;}
    .navbar-toggler{padding:.35rem .45rem;}
    .toast-stack{top:auto;right:16px;bottom:16px;width:calc(100vw - 32px);}
    .page-header{padding:1.25rem 0;}
    .page-header .container{align-items:flex-start;gap:.7rem;}
    .page-header h1{font-size:1.7rem;width:100%;}
    .page-header h1::after{width:42px;height:3px;}
    .breadcrumb-custom{padding:.38rem .65rem;gap:6px;}
    .breadcrumb-custom li{font-size:.8rem;}
    .product-section .container{padding-left:10px;padding-right:10px;}
    .page-frontend-product-details{overflow-x:hidden;}
    .page-frontend-product-details .product-section .row{--bs-gutter-x:0;margin-left:0;margin-right:0;}
    .page-frontend-product-details .product-section .row > *{padding-left:0;padding-right:0;max-width:100%;}
    .page-frontend-product-details .gallery-main,
    .page-frontend-product-details .gallery-thumbs,
    .page-frontend-product-details .product-info,
    .page-frontend-product-details .product-tabs{max-width:100%;min-width:0;}
    .gallery-main{padding:.7rem;border-radius:14px;}
    .gallery-main img{max-width:92%;max-height:92%;}
    .gallery-badge{top:.85rem;left:.85rem;font-size:.64rem;padding:.22rem .56rem;border-radius:8px;z-index:3;}
    .page-frontend-product-details .whatsapp-float,
    .page-frontend-product-details .messenger-float{display:none;}
    .product-info{padding:.85rem;}
    .pi-title{font-size:1.2rem;}
    .pi-price{font-size:1.48rem;}
    .pi-meta-row{display:grid;grid-template-columns:1fr;}
    .countdown-inline,.pi-stock{justify-content:center;}
    .buy-box-top{align-items:flex-start;flex-direction:column;gap:.45rem;}
    .qty-control{width:100%;display:grid;grid-template-columns:40px 1fr 40px;}
    .qty-btn{width:100%;}
    .qty-input{width:100%;}
    .buy-actions{grid-template-columns:1fr;}
    .pi-trust{grid-template-columns:1fr 1fr;}
    .pi-trust-item{font-size:.7rem;}
    .home-hero-section{padding:2.05rem 0 2.25rem;}
    .premium-hero-badge{font-size:.72rem;padding:.34rem .72rem;margin-bottom:.7rem;}
    .home-hero-section .hero-title{font-size:2rem;line-height:1.08;margin-bottom:.7rem;}
    .home-hero-section .hero-desc{font-size:.94rem;margin-bottom:.85rem;line-height:1.62;}
    .hero-trust-strip{gap:.4rem;margin-bottom:1rem;}
    .hero-trust-strip span{font-size:.72rem;padding:.35rem .55rem;}
    .home-hero-section .hero-actions{gap:.6rem;margin-bottom:1rem;}
    .home-hero-section .btn-primary-custom,
    .home-hero-section .btn-outline-custom{width:100%;justify-content:center;padding:.72rem 1rem;min-height:46px;border-radius:13px;}
    .home-hero-section .hero-stats{display:none;}
    .home-hero-section .hero-image-card{max-width:240px;padding:.75rem;}
    .hero-product-slider{border-radius:22px;padding:.75rem;box-shadow:0 16px 42px rgba(15,23,42,.1);}
    .hero-slider-top{margin-bottom:.55rem;}
    .hero-slider-controls button{width:30px;height:30px;font-size:.75rem;}
    .hero-slide-image{min-height:230px;border-radius:17px;}
    .hero-slide-image img{width:88%;height:88%;}
    .hero-slide-sale{left:10px;top:10px;font-size:.7rem;padding:.25rem .55rem;}
    .hero-slide-kicker{font-size:.68rem;margin-bottom:.5rem;}
    .hero-slide-content h3{font-size:1.16rem;margin-bottom:.45rem;}
    .hero-slide-price{justify-content:center;margin-bottom:.65rem;}
    .hero-slide-price strong{font-size:1.25rem;}
    .hero-slide-actions{gap:.5rem;}
    .hero-slide-order,.hero-slide-view{min-height:38px;border-radius:10px;font-size:.8rem;}
    .hero-trust-section{margin-top:-1.05rem;padding-bottom:1.7rem;}
    .premium-trust-grid{grid-template-columns:1fr;gap:.65rem;}
    .premium-trust-card{padding:.78rem;border-radius:16px;gap:.7rem;}
    .premium-trust-icon{width:36px;height:36px;min-width:36px;border-radius:12px;}
    .premium-trust-card h3{font-size:.86rem;}
    .premium-trust-card p{font-size:.72rem;}
    .home-products-section{padding-top:2rem;}
    .home-products-section .section-header{margin-bottom:1.5rem;}
    .product-card-img{padding:.6rem;}
    .product-card-img img{width:88%;height:88%;}
    .product-card-body{padding:.72rem .72rem .82rem;}
    .product-title{font-size:.84rem;}
    .product-price-row{gap:5px;}
    .product-price{font-size:.98rem;}
    .btn-add-cart,.btn-order-direct{font-size:.72rem;padding:.5rem .35rem;}
    .btn-add-cart i,.btn-order-direct i{font-size:.72rem;}
    .newsletter-input-group{flex-direction:column;}
    .footer-contact-actions{grid-template-columns:repeat(2,minmax(0,1fr));max-width:none;gap:.45rem;}
    .footer-contact-btn{min-height:46px;padding:.48rem .5rem;gap:.42rem;}
    .footer-contact-icon{width:28px;height:28px;min-width:28px;font-size:.88rem;}
    .footer-contact-btn strong{font-size:.76rem;}
    .footer-address{max-width:none;padding:.65rem 0 0;gap:.55rem;}
    .footer-address-icon{width:30px;height:30px;min-width:30px;}
    .footer-address-text strong{font-size:.78rem;}
    /* .footer-contact-btn small{display:none;} */
    .search-box input{width:100%;}
    .form-card,.order-summary{padding:1rem;}
    .checkout-page .container{padding-left:10px;padding-right:10px;}
    .checkout-page .checkout-header h1{font-size:1.42rem;}
    .checkout-page .checkout-header p{display:none;}
    .checkout-page .form-card{padding:.7rem;}
    .checkout-page .form-card-title .step{width:25px;height:25px;font-size:.78rem;}
    .checkout-page .form-control-custom{min-height:40px;border-radius:10px;}
    .checkout-page textarea.form-control-custom{min-height:70px;}
    .checkout-qty-control{grid-template-columns:38px 1fr 38px;}
    .checkout-qty-control .form-control-custom{min-height:38px;}
    .checkout-page .order-summary{padding:.85rem;}
    .checkout-page .os-product{grid-template-columns:40px minmax(0,1fr);position:relative;padding-right:72px;}
    .checkout-page .os-product-img{width:40px;height:40px;min-width:40px;}
    .checkout-page .os-product-price{position:absolute;right:0;top:.15rem;}
    .checkout-page .os-delivery{font-size:.76rem;}
    .checkout-page .btn-place-order{font-size:.94rem;}
    .cart-section .container{padding-left:10px;padding-right:10px;}
    .cart-section .checkout-header h1{font-size:1.42rem;}
    .cart-section .checkout-header p{display:none;}
    .cart-section .form-card{padding:.7rem;}
    .cart-item{grid-template-columns:62px minmax(0,1fr) 34px;gap:.6rem;padding:.65rem;}
    .cart-item-img{width:62px;height:62px;}
    .cart-item-title{font-size:.86rem;}
    .cart-qty-control{max-width:124px;grid-template-columns:34px 1fr 34px;}
    .cart-qty-btn{min-height:34px;}
    .cart-mobile-line{padding:.38rem .5rem;}
    .cart-section .order-summary{padding:.85rem;}
    .cart-section .os-product{grid-template-columns:40px minmax(0,1fr);position:relative;padding-right:72px;}
    .cart-section .os-product-img{width:40px;height:40px;min-width:40px;}
    .cart-section .os-product-price{position:absolute;right:0;top:.15rem;}
    .cart-section .cart-payment-note span{display:none;}
    .cart-section .cart-payment-icon{width:32px;height:32px;min-width:32px;}
    .cart-section .btn-place-order{min-height:48px;font-size:.94rem;}
    .cart-section .trust-checkout{display:none;}
    .success-card{padding:1.1rem .85rem;}
    .customer-info-grid{grid-template-columns:1fr;}
    .whatsapp-float{right:16px;bottom:16px;}
    .messenger-float{right:16px;bottom:82px;}
    .legal-card{padding:1.5rem;}
    .about-logo-card{min-height:220px;padding:1.5rem;border-radius:18px;}
    .about-logo-card img{max-height:120px;}
    .about-logo-fallback{width:92px;height:92px;font-size:2.2rem;border-radius:22px;}
    .stat-grid{grid-template-columns:repeat(2,1fr);}
}

@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        animation-duration: 0.001ms !important;
        animation-iteration-count: 1 !important;
        scroll-behavior: auto !important;
        transition-duration: 0.001ms !important;
    }

    .reveal,
    .reveal-left,
    .reveal-right,
    .hero-slide,
    .hero-slide-image img,
    .hero-bg-shape {
        transform: none !important;
    }
}
